Remplacer du texte dans des documents commerciaux est une tâche courante. Cet article explique comment trouver et remplacer du contenu dans des documents PDF en utilisant l’IA et C#. Vous apprendrez comment appliquer des réductions personnalisées et intégrer l’IA pour modifier le contenu des PDF.
Les sujets suivants sont couverts dans cet article :
- Méthode régulière pour remplacer du texte
- Étapes pour réduire un PDF en utilisant des outils IA via C#
- Code C# commun pour utiliser la fonctionnalité GroupDocs.Redaction
- Code de réduction personnalisée C#
- Exemple de prompt IA
Fonctionnalité GroupDocs.Redaction pour le remplacement de texte
GroupDocs.Redaction vous permet de remplacer du texte dans divers formats de fichiers pris en charge. Cette méthode repose sur des expressions régulières pour identifier le texte à remplacer. Cependant, travailler avec des expressions régulières peut nécessiter un effort supplémentaire, surtout dans des scénarios plus complexes. Pour plus d’informations, consultez notre documentation.
Étapes pour réduire un PDF en utilisant des outils IA via C#
Vous pouvez utiliser cette fonctionnalité pour cacher des informations sensibles ou pour générer un document personnalisé à partir d’un modèle. Les étapes suivantes montrent comment utiliser l’IA pour remplacer un texte spécifique dans un document PDF au sein d’une application .NET.
- Charger le fichier PDF en utilisant la classe Redactor.
- Fournir un gestionnaire de réduction personnalisé en mettant en œuvre votre logique d’IA via l’interface ICustomRedactionHandler.
- Traiter le texte du document, en utilisant PageAreaRedaction ainsi que ReplacementOptions.
- Appliquer la réduction en utilisant la méthode Apply().
- Enregistrer le document traité à un nouvel emplacement en utilisant la méthode Save().
Code C# commun pour utiliser la fonctionnalité GroupDocs.Redaction
Le code suivant utilise l’IA pour trouver et remplacer des numéros de carte de crédit dans un document. Cet extrait de code inclut la méthode principale qui initialise le Redactor et applique des réductions en appelant la méthode Apply().
public async Task Redaction_Custom_AI()
{
// Habituellement, cette regex est utilisée pour trouver du texte à remplacer
// Pour fournir tous les textes possibles pour une réduction personnalisée, utilisez une regex comme dans l'exemple
Regex regex = new Regex(".*");
// Définir les pages cibles et le texte de remplacement pour les réductions
ReplacementOptions optionsText = new ReplacementOptions("[replaced]");
optionsText.Filters = new RedactionFilter[] {
new PageRangeFilter(PageSeekOrigin.Begin, 0, 2)
};
// Fournir une implémentation de gestionnaire de réduction personnalisée
optionsText.CustomRedaction = new TextRedactor() { Test = this };
var textRedaction = new PageAreaRedaction(regex, optionsText);
var redactions = new Redaction[] { textRedaction };
// Traiter le document
using (var redactor = new Redactor("source.pdf"))
{
// Appliquer des réductions au document
RedactorChangeLog result = redactor.Apply(redactions);
if (result.Status != RedactionStatus.Failed)
{
redactor.Save(new GroupDocs.Redaction.Options.SaveOptions(false, "Result"));
}
}
}
Code de réduction personnalisée C#
L’implémentation de ICustomRedactionHandler permet aux utilisateurs de définir leur propre logique pour réduire des paragraphes de texte dans des fichiers PDF. Utiliser de telles classes permet des algorithmes flexibles adaptés à des besoins commerciaux spécifiques.
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;
}
}
Exemple de prompt IA
La dernière partie est le code d’intégration de l’IA. Le prompt fourni est assez sophistiqué, car tous les outils d’IA ne peuvent pas traiter des données sensibles, comme des numéros de carte de crédit.
public async Task<OpenAIResult> Process_AI(string text, string replacement)
{
string prompt =
"Hey, j'ai ici un extrait de document. " +
"Pouvez-vous m'aider à remplacer les parties qui ressemblent à des blocs numériques, comme 'XXXX-'? " +
"Ces blocs sont juste des chiffres et des traits d'union. " +
"Chaque entrée que je veux remplacer peut avoir entre un et quatre de ces blocs. " +
$"Veuillez remplacer l'ensemble du bloc par '{replacement}' dans le texte. " +
"Je n'ai pas besoin de vos commentaires. " +
"Renvoie comme résultat uniquement le texte avec les entrées remplacées ou juste le mot 'none' s'il n'y avait rien à remplacer " +
$"Voici le texte à travailler \n\n {text}";
// Code d'intégration IA utilisateur, qui dépend de l'outil d'IA utilisé
return await RequestToAI(prompt);
}
La sortie du code ci-dessus est la suivante :

Conclusion
Dans cet article, nous avons appris à utiliser des réductions personnalisées et des intégrations IA pour traiter des PDF. Les outils d’IA peuvent grandement simplifier le traitement du texte mais peuvent prendre plus de temps et être moins prévisibles par rapport aux outils réguliers.
Pour plus d’informations sur notre produit, visitez la documentation. Si vous avez des questions, n’hésitez pas à nous contacter via le forum.
Essayez notre application web gratuite
Découvrez les capacités de GroupDocs.Redaction en utilisant notre application web en ligne. Testez les fonctionnalités principales directement dans votre navigateur sans rien installer.