Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

Alternatives iTextSharp pour lire les PDF (Tutoriel développeur)

PDF (Portable Document Format) est un format de fichier largement utilisé pour partager des documents de manière cohérente et sécurisée. Lire et manipuler de tels fichiers en C# est une exigence courante dans diverses applications, telles que les systèmes de gestion de documents, les outils de rapport, et plus encore. Dans cet article, nous comparerons deux bibliothèques populaires pour lire des fichiers PDF en C#: IronPDF et iTextSharp (la dernière bibliothèque .NET iText).

IronPDF is a comprehensive C# library from Iron Software qui offre une vaste gamme de fonctionnalités pour travailler avec des fichiers PDF. Elle permet aux développeurs de créer, modifier et manipuler des documents PDF de manière transparente. IronPDF est connu pour sa simplicité et sa facilité d'utilisation, ce qui en fait un excellent choix pour les développeurs qui doivent intégrer rapidement des fonctionnalités PDF dans leurs applications.

iTextSharp est une autre bibliothèque populaire pour travailler avec des fichiers PDF en C#. Elle existe depuis un certain temps et est largement utilisée dans l'industrie. iText offre un ensemble riche de fonctionnalités pour créer et manipuler des documents PDF. Elle est connue pour sa flexibilité et son extensibilité, ce qui la rend adaptée aux tâches complexes liées aux PDF.

Comment utiliser IronPDF et iTextSharp pour lire des PDF en C#

  1. Créez un nouveau projet C# dans Visual Studio pour comparer IronPDF et iTextSharp pour la lecture de fichiers PDF.
  2. Installez les bibliothèques IronPDF et iTextSharp dans le projet.
  3. Lisez des fichiers PDF en utilisant IronPDF.
  4. Lisez des fichiers PDF en utilisant iTextSharp.

Prérequis

  1. Visual Studio: Assurez-vous d'avoir installé Visual Studio ou tout autre environnement de développement C#.
  2. Gestionnaire de packages NuGet : Assurez-vous de pouvoir utiliser NuGet pour gérer les packages dans votre projet.

Étape 1 : Créer un nouveau projet C# dans Visual Studio pour comparer IronPDF et iTextSharp pour lire les fichiers PDF

Commencez par configurer une application console C#. Ouvrez Visual Studio et sélectionnez Créer un nouveau projet. Sélectionnez le type d'application console.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 1 - Application Console

Indiquez le nom du projet comme indiqué ci-dessous.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 2 - Configuration du Projet

Sélectionnez la version .NET requise pour le projet.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 3 - Framework

Une fois cela fait, Visual Studio générera un nouveau projet.

Étape 2 : Installez les bibliothèques IronPDF et iTextSharp dans le projet

iTextSharp peut être installé depuis le Gestionnaire de Packages NuGet pour iText. La dernière version est disponible en tant que package iText.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 4 - iText

Ou depuis le gestionnaire de packages de Visual Studio comme indiqué ci-dessous. Recherchez iText dans le gestionnaire de packages et cliquez sur Installer.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 5 - Gestionnaire de Packages NuGet

IronPDF can be installed from the Gestionnaire de Packages NuGet pour IronPDF comme indiqué ci-dessous.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 6 - IronPDF

Ou depuis le gestionnaire de packages de Visual Studio comme indiqué ci-dessous. Recherchez IronPDF: C# PDF Library dans le gestionnaire de packages et cliquez sur Installer.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 7 - Installer IronPDF

Étape 3 : Lire du texte à partir d'un fichier PDF à l'aide d'IronPDF

Ajoutez le code ci-dessous au fichier Program.cs et fournissez un document PDF d'exemple contenant le contenu spécifié.

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 8 - Entrée PDF

using IronPdf;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Read PDF using IronPDF
ReadUsingIronPDF.Read();

public class ReadUsingIronPDF
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance to read the PDF
        var pdfReader = PdfDocument.FromFile(filename);

        // Extract all text from the PDF
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");

        // Extract all images from the PDF
        var allImages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images = {allImages.Count()}");
        Console.WriteLine("------------------Image Count From PDF-----------------");

        // Iterate through each page to extract text from them
        Console.WriteLine("------------------One Page Text From PDF-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine(text);
        }
    }
}
using IronPdf;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Read PDF using IronPDF
ReadUsingIronPDF.Read();

public class ReadUsingIronPDF
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string filename = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance to read the PDF
        var pdfReader = PdfDocument.FromFile(filename);

        // Extract all text from the PDF
        var allText = pdfReader.ExtractAllText();
        Console.WriteLine("------------------Text From PDF-----------------");
        Console.WriteLine(allText);
        Console.WriteLine("------------------Text From PDF-----------------");

        // Extract all images from the PDF
        var allImages = pdfReader.ExtractAllImages();
        Console.WriteLine("------------------Image Count From PDF-----------------");
        Console.WriteLine($"Total Images = {allImages.Count()}");
        Console.WriteLine("------------------Image Count From PDF-----------------");

        // Iterate through each page to extract text from them
        Console.WriteLine("------------------One Page Text From PDF-----------------");
        var pageCount = pdfReader.PageCount;
        for (int page = 0; page < pageCount; page++)
        {
            string text = pdfReader.ExtractTextFromPage(page);
            Console.WriteLine(text);
        }
    }
}
Imports IronPdf

' Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#")

' Read PDF using IronPDF
ReadUsingIronPDF.Read()

'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public class ReadUsingIronPDF
'{
'	public static void Read()
'	{
'		' Specify the path to the PDF document
'		string filename = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf";
'
'		' Create a PDF Reader instance to read the PDF
'		var pdfReader = PdfDocument.FromFile(filename);
'
'		' Extract all text from the PDF
'		var allText = pdfReader.ExtractAllText();
'		Console.WriteLine("------------------Text From PDF-----------------");
'		Console.WriteLine(allText);
'		Console.WriteLine("------------------Text From PDF-----------------");
'
'		' Extract all images from the PDF
'		var allImages = pdfReader.ExtractAllImages();
'		Console.WriteLine("------------------Image Count From PDF-----------------");
'		Console.WriteLine(string.Format("Total Images = {0}", allImages.Count()));
'		Console.WriteLine("------------------Image Count From PDF-----------------");
'
'		' Iterate through each page to extract text from them
'		Console.WriteLine("------------------One Page Text From PDF-----------------");
'		var pageCount = pdfReader.PageCount;
'		for (int page = 0; page < pageCount; page++)
'		{
'			string text = pdfReader.ExtractTextFromPage(page);
'			Console.WriteLine(text);
'		}
'	}
'}
$vbLabelText   $csharpLabel

Explication du code

  1. Créer un document Word : Commencez par créer un document Word avec le contenu texte désiré et enregistrez-le au format PDF nommé Example.pdf.
  2. Instance PDFReader : Le code crée un objet PdfDocument en utilisant le chemin du fichier PDF pour extraire le texte et les images.
  3. Extraire texte et images : La méthode ExtractAllText est utilisée pour capturer tout le texte du document, tandis que ExtractAllImages extrait les images.
  4. Extraire le texte par page : Le texte de chaque page est extrait en utilisant la méthode ExtractTextFromPage.

Sortie

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 9 - Lire le PDF en utilisant IronPDF Output

Étape 3 : Lire du texte à partir d'un fichier PDF à l'aide d'iTextSharp

Maintenant, pour comparer le texte lu depuis iTextSharp, ajoutez le code ci-dessous au même fichier Program.cs. Pour simplifier, nous n'avons pas séparé les classes dans différents fichiers.

using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Call method to read PDF using iTextSharp library
ReadUsingITextSharp.Read();

public class ReadUsingITextSharp
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance
        PdfReader pdfReader = new PdfReader(pdfFile);

        // Initialize a new PDF Document
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);

        // Use a text extraction strategy to extract plain text from the PDF
        LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
        string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);

        // Display the extracted text
        Console.WriteLine(pdfText);
    }
}
using IronPdf;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;

// Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#");

// Call method to read PDF using iTextSharp library
ReadUsingITextSharp.Read();

public class ReadUsingITextSharp
{
    public static void Read()
    {
        // Specify the path to the PDF document
        string pdfFile = "C:\\code\\articles\\ITextSharp\\ITextSharpIronPdfDemo\\Example.pdf";

        // Create a PDF Reader instance
        PdfReader pdfReader = new PdfReader(pdfFile);

        // Initialize a new PDF Document
        iText.Kernel.Pdf.PdfDocument pdfDocument = new iText.Kernel.Pdf.PdfDocument(pdfReader);

        // Use a text extraction strategy to extract plain text from the PDF
        LocationTextExtractionStrategy strategy = new LocationTextExtractionStrategy();
        string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);

        // Display the extracted text
        Console.WriteLine(pdfText);
    }
}
Imports IronPdf
Imports iText.Kernel.Pdf
Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser

' Begin the comparison of IronPDF and iTextSharp for reading PDFs in C#
Console.WriteLine("Comparison of IronPDF And iTextSharp Read PDF Files in C#")

' Call method to read PDF using iTextSharp library
ReadUsingITextSharp.Read()

'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public class ReadUsingITextSharp
'{
'	public static void Read()
'	{
'		' Specify the path to the PDF document
'		string pdfFile = "C:\code\articles\ITextSharp\ITextSharpIronPdfDemo\Example.pdf";
'
'		' Create a PDF Reader instance
'		PdfReader pdfReader = New PdfReader(pdfFile);
'
'		' Initialize a new PDF Document
'		iText.Kernel.Pdf.PdfDocument pdfDocument = New iText.Kernel.Pdf.PdfDocument(pdfReader);
'
'		' Use a text extraction strategy to extract plain text from the PDF
'		LocationTextExtractionStrategy strategy = New LocationTextExtractionStrategy();
'		string pdfText = PdfTextExtractor.GetTextFromPage(pdfDocument.GetPage(1), strategy);
'
'		' Display the extracted text
'		Console.WriteLine(pdfText);
'	}
'}
$vbLabelText   $csharpLabel

Sortie

iTextSharp Read PDF Alternatives (Tutoriel pour développeurs) : Figure 10 - Lire le PDF en utilisant iTextSharp Output

Limitations d'iTextSharp

  1. d'apprentissage : iTextSharp a une courbe d'apprentissage plus raide, surtout pour les débutants.
  2. Licence : Le modèle de licence d'iTextSharp peut ne pas convenir à tous les projets, notamment ceux ayant des contraintes budgétaires.

Avantages d'IronPDF

  1. Facilité d'utilisation : IronPDF est connu pour son API simple, ce qui facilite la prise en main pour les développeurs.
  2. Rendu des documents : IronPDF offre un rendu précis des documents PDF, garantissant que le texte extrait est fidèle à l'original.

Licence (essai gratuit disponible)

Insérez votre clé de licence IronPDF dans le fichier appsettings.json.

"IronPdf.LicenseKey": "your license key"

Pour recevoir une licence d'essai, veuillez fournir votre email.

Conclusion

Choisir entre IronPDF et iTextSharp dépend des exigences spécifiques de votre projet. Si vous avez besoin d'une bibliothèque simple et facile à utiliser pour des opérations PDF courantes, IronPDF pourrait être le meilleur choix. Considérez des facteurs tels que la complexité de votre application, le budget, et la courbe d'apprentissage lors de votre prise de décision. IronPDF est conçu pour intégrer en toute transparence la génération de PDF dans votre application, gérant facilement la conversion de documents formatés en PDF. Cet outil polyvalent vous permet de convertir des formulaires web, des pages HTML locales et d'autres contenus web en PDF en utilisant .NET. Les utilisateurs peuvent facilement télécharger, envoyer par email ou stocker des documents dans le cloud. Que vous ayez besoin de produire des factures, des devis, des rapports, des contrats ou d'autres documents professionnels, les capacités de génération de PDF d'IronPDF vous couvrent. Améliorez votre application avec les capacités de génération de PDF intuitives et efficaces d'IronPDF.

Veuillez noteriText et iTextSharp sont des marques déposées de leurs propriétaires respectifs. Ce site n'est pas affilié, approuvé, ni parrainé par iText ou iTextSharp. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont à des fins d'information uniquement et reflètent les informations disponibles publiquement au moment de la rédaction.

Questions Fréquemment Posées

Comment puis-je lire des fichiers PDF en C#?

Vous pouvez lire des fichiers PDF en utilisant la bibliothèque IronPDF en créant une instance de PdfDocument et en utilisant des méthodes comme ExtractAllText et ExtractAllImages pour extraire le contenu du PDF.

Que dois-je prendre en compte lors du choix d'une bibliothèque PDF pour C#?

Considérez des facteurs tels que la facilité d'utilisation, la licence, la courbe d'apprentissage et les exigences spécifiques du projet lors du choix entre des bibliothèques comme IronPDF et iTextSharp pour la manipulation de PDF en C#.

Comment puis-je installer une bibliothèque PDF dans mon projet C#?

Vous pouvez installer IronPDF via le gestionnaire de packages NuGet dans Visual Studio en recherchant 'IronPDF: C# PDF Library' et en cliquant sur le bouton 'Installer'.

Quels sont les avantages de l'utilisation d'IronPDF pour la manipulation de PDF ?

IronPDF offre une facilité d'utilisation, une API simple et un rendu de document précis, ce qui le rend idéal pour les développeurs qui ont besoin d'intégrer rapidement des fonctionnalités PDF dans leurs applications.

Y a-t-il une différence dans la complexité d'utilisation d'IronPDF et d'iTextSharp?

Oui, IronPDF est connu pour sa simplicité, tandis qu'iTextSharp offre plus de flexibilité et d'extensibilité, ce qui peut impliquer une courbe d'apprentissage plus raide.

IronPDF peut-il convertir du contenu HTML en PDF?

Oui, IronPDF peut convertir de manière transparente du contenu HTML, comme des formulaires et des pages web, en documents PDF, facilitant des tâches comme le téléchargement et l'envoi par email des PDFs.

Quelles sont les limitations de l'utilisation d'iTextSharp pour les tâches PDF ?

iTextSharp peut impliquer une courbe d'apprentissage plus raide et son modèle de licence peut ne pas convenir à tous les budgets de projet, surtout si vous recherchez une solution simple.

Comment IronPDF améliore-t-il la fonctionnalité de l'application?

IronPDF permet l'intégration de fonctionnalités de génération et de manipulation de PDF dans les applications, permettant ainsi la conversion de contenu web en PDFs et la gestion de documents professionnels comme des factures et des rapports.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite