Substituir texto em documentos empresariais é uma tarefa comum. Este artigo explica como encontrar e substituir conteúdo em documentos PDF usando IA e C#. Você aprenderá como aplicar redacções personalizadas e integrar IA para modificar conteúdo PDF.
Os seguintes tópicos são abordados neste artigo:
- Forma regular de substituir texto
- Passos para redigir PDF usando ferramentas de IA via C#
- Código C# comum para usar a funcionalidade GroupDocs.Redaction
- Código de redacção personalizada em C#
- Exemplo de solicitação de IA
Funcionalidade do GroupDocs.Redaction para Substituir Texto
O GroupDocs.Redaction permite substituir texto em vários formatos de arquivo suportados. Este método baseia-se em expressões regulares para identificar o texto que precisa ser substituído. No entanto, trabalhar com expressões regulares pode exigir um esforço adicional, especialmente em cenários mais complexos. Para mais informações, consulte a nossa documentação.
Passos para redigir PDF usando ferramentas de IA via C#
Você pode usar esta funcionalidade para ocultar informações sensíveis ou gerar um documento personalizado a partir de um modelo. Os seguintes passos mostram como usar IA para substituir texto específico em um documento PDF dentro de uma aplicação .NET.
- Carregue o arquivo PDF usando a classe Redactor.
- Forneça um manipulador de redacção personalizado implementando sua lógica de IA através da interface ICustomRedactionHandler.
- Processar o texto do documento, utilizando PageAreaRedaction juntamente com ReplacementOptions.
- Aplique a redacção usando o método Apply().
- Salve o documento processado em um novo local usando o método Save().
Código C# comum para usar a funcionalidade GroupDocs.Redaction
O seguinte código usa IA para encontrar e substituir números de cartões de crédito em um documento. Este trecho de código inclui o método principal que inicializa o Redactor e aplica redacções chamando o método Apply().
public async Task Redaction_Custom_AI()
{
// Normalmente, essa regex é usada para encontrar texto para substituição
// Para fornecer todos os textos possíveis para redacção personalizada, use uma regex como no exemplo
Regex regex = new Regex(".*");
//Defina as páginas de destino e o texto de substituição para redacções
ReplacementOptions optionsText = new ReplacementOptions("[replaced]");
optionsText.Filters = new RedactionFilter[] {
new PageRangeFilter(PageSeekOrigin.Begin, 0, 2)
};
//Forneça uma implementação de manipulador de redacção personalizado
optionsText.CustomRedaction = new TextRedactor() { Test = this };
var textRedaction = new PageAreaRedaction(regex, optionsText);
var redactions = new Redaction[] { textRedaction };
//Processar o documento
using (var redactor = new Redactor("source.pdf"))
{
//Aplicar redacções ao documento
RedactorChangeLog result = redactor.Apply(redactions);
if (result.Status != RedactionStatus.Failed)
{
redactor.Save(new GroupDocs.Redaction.Options.SaveOptions(false, "Result"));
}
}
}
Código de redacção personalizada em C#
A implementação de ICustomRedactionHandler permite que os usuários definam sua própria lógica para redigir parágrafos de texto em arquivos PDF. O uso de tais classes permite algoritmos flexíveis adaptados a necessidades empresariais específicas.
public class TextRedactor : ICustomRedactionHandler
{
public Redaction_Custom Test { get; set; }
public CustomRedactionResult Redact(CustomRedactionContext context)
{
CustomRedactionResult result = new CustomRedactionResult();
if (!String.IsNullOrEmpty(context.Text))
{
var response = Process_AI(context.Text, "[redacted-custom]").GetAwaiter().GetResult();
if (response.Result != "none")
{
result.Apply = true;
result.Text = response.Result;
}
}
return result;
}
}
Exemplo de solicitação de IA
A parte final é o código de integração da IA. A solicitação fornecida é bastante sofisticada, pois nem todas as ferramentas de IA podem processar dados sensíveis, como números de cartões de crédito.
public async Task<OpenAIResult> Process_AI(string text, string replacement)
{
string prompt =
"Oi, eu tenho um pedaço de documento aqui. " +
"Você poderia me ajudar a trocar qualquer parte que pareça blocos digitais, como 'XXXX-'? " +
"Esses blocos são apenas números e traços. " +
"Cada entrada que quero substituir pode ter de um a quatro desses blocos. " +
$"Por favor, substitua todo o bloco por '{replacement}' no texto. " +
"Não preciso de nenhum dos seus comentários. " +
"Retorne como resultado apenas o texto com as entradas substituídas ou simplesmente a palavra 'none' se não havia nada para substituir " +
$"Aqui está o texto para trabalhar \n\n {text}";
// Código de integração de IA do usuário, que depende da ferramenta de IA utilizada
return await RequestToAI(prompt);
}
A saída do código acima é a seguinte:

Conclusão
Neste artigo, aprendemos como usar redacções personalizadas e integrações de IA para processar PDFs. As ferramentas de IA podem simplificar muito o processamento de texto, mas podem levar mais tempo e ser menos previsíveis em comparação com ferramentas regulares.
Para mais informações sobre nosso produto, visite a documentação. Se você tiver alguma dúvida, sinta-se à vontade para entrar em contato conosco via o fórum.
Experimente nossa aplicação web gratuita
Explore as capacidades do GroupDocs.Redaction usando nossa aplicação web online. Teste os recursos principais diretamente no seu navegador sem instalar nada.