Comment rechercher et remplacer du texte dans un PDF à l'aide de C#

Ce guide rapide décrit comment rechercher et remplacer du texte dans un PDF à l’aide de C# à l’aide d’étapes détaillées et d’un code exécutable. Il aide à configurer l’environnement, puis fournit un processus étape par étape pour ** remplacer le texte dans un PDF à l’aide de C# **. Une fois le fichier mis à jour, vous pouvez le sauvegarder sur le disque dans son format d’origine, c’est-à-dire PDF ou sous forme de DOCX, Excel, HTML, etc. pour n’en nommer que quelques-uns.

Étapes pour rechercher et remplacer du texte dans un PDF à l’aide de C#

  1. Configurez le projet pour utiliser Aspose.PDF for .NET à l’aide du gestionnaire de packages NuGet
  2. Créez ou chargez un fichier PDF contenant un exemple de texte à l’aide de l’objet de classe Document
  3. À l’aide de l’objet de classe TextFragmentAbsorber, définissez le texte à rechercher
  4. Pour toutes les pages du fichier PDF d’entrée, acceptez l’absorbeur de texte
  5. Obtenez la collection de fragments où le texte est extrait du fichier PDF chargé
  6. Analyser tous les fragments et définir un nouveau texte
  7. Enregistrez le fichier PDF mis à jour

Ces étapes décrivent comment, dans un PDF, rechercher et remplacer du texte à l’aide de C#. Un nouveau fichier avec un exemple de texte est créé, mais vous pouvez charger un fichier PDF existant dont le texte doit être remplacé. Il existe une variété d’options disponibles pour rechercher du texte dans le PDF, comme ignorer le texte fantôme, limiter la recherche aux liens de page, etc.

Code pour remplacer le texte dans un PDF à l’aide de C#

using Aspose.Pdf;
using Aspose.Pdf.Text;
namespace FindAndReplaceTextInPdfUsingCSharp
{
class Program
{
static void Main(string[] args) // Main function to create 7z archive in CSharp
{
// Instantiate a license to avoid watermark in output PDF
Aspose.Pdf.License licForPdf= new Aspose.Pdf.License();
licForPdf.SetLicense("Aspose.Pdf.lic");
// Create an empty PDF document
Document newPDFFile = new Document();
// Add an empty page in the newly created PDF
Page page = newPDFFile.Pages.Add();
// Add sample text in the PDF file
for(int iTxtCounter = 0 ; iTxtCounter < 15; iTxtCounter++)
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment($"my_data\nanother data"));
// Save the newly created PDF file containing the test data in it
newPDFFile.Save("InputPDFToReplaceText.pdf");
// Open PDF document to replace text in it
Document inputPDFFile = new Document("InputPDFToReplaceText.pdf");
// Set the text that is to be searched in the TextAbsorber object
TextFragmentAbsorber txtAbsorber = new TextFragmentAbsorber("my_data");
// Apply the text absorber for all the pages in the input PDF file
inputPDFFile.Pages.Accept(txtAbsorber);
// Get the collection of fragments containing extracted text from the PDF
TextFragmentCollection textFragmentCollection = txtAbsorber.TextFragments;
// Parse all the fragments and replace text using particular font, size and foreground/background color
foreach (TextFragment txtFragment in textFragmentCollection)
txtFragment.Text = "MY_DATA";
// Save resulting PDF document.
inputPDFFile.Save("OutputPDFAfterReplacingText.pdf");
System.Console.WriteLine("Done");
}
}
}

Ce code utilise TextFragmentAbsorber et TextFragment pour que le texte recherche et remplace dans un PDF à l’aide de C#. Vous pouvez non seulement remplacer le texte, mais également modifier sa famille de polices, sa taille, sa couleur de premier plan et sa couleur d’arrière-plan dans le fichier PDF résultant. Des options sont également disponibles pour remplacer le texte dans l’ensemble du PDF en une seule fois ou remplacer le texte en fonction de l’expression régulière.

Dans cette rubrique, nous avons appris à rechercher et à remplacer du texte dans un PDF. Toutefois, si vous souhaitez apprendre à diviser des fichiers PDF par pages, reportez-vous à l’article sur comment diviser un fichier PDF par pages en C#.

 Français