Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

iText7 Lire PDF en C# Alternatives (VS IronPDF)

Le PDF est un format de document portable créé par Adobe Acrobat Reader, largement utilisé pour partager des informations numériquement sur Internet. Il préserve la mise en forme des données et offre des fonctionnalités comme le paramétrage des autorisations de sécurité et de protection par mot de passe. En tant que développeur C#, vous avez peut-être rencontré des situations où il est nécessaire d'intégrer des fonctionnalités PDF dans votre application logicielle. Le construire à partir de zéro peut être une tâche longue et fastidieuse. Par conséquent, en considérant la performance, l'efficacité et l'efficience de l'application, le compromis entre créer un nouveau service de zéro ou utiliser une bibliothèque préconstruite est significatif.

Il existe plusieurs bibliothèques PDF disponibles pour C#. Dans cet article, nous explorerons deux des bibliothèques PDF les plus populaires pour lire les documents PDF en C#.

Logiciel iText

iText 7, anciennement connu sous le nom de iText 7 Core, est une bibliothèque PDF pour programmer des documents PDF en .NET C# et Java. Il est disponible sous licence open source (AGPL) et peut être licencié pour des applications commerciales.

iText Core est une API de haut niveau qui fournit des méthodes simples pour générer et éditer des PDF de toutes les manières possibles. Avec iText 7 Core, vous pouvez diviser, fusionner, annoter, remplir des formulaires, signer numériquement, et bien plus encore sur les fichiers PDF. iText 7 fournit un convertisseur HTML en PDF.

IronPDF

En savoir plus sur IronPDF est une API C# .NET et .NET Framework utilisée pour générer des documents PDF à partir de HTML, CSS et JavaScript, soit à partir d'une URL, de fichiers HTML ou de chaînes HTML. IronPDF vous permet de manipuler les fichiers PDF existants comme diviser, fusionner, annoter, signer numériquement, et bien plus encore.

IronPDF est enrichi de plus de 50 fonctionnalités pour créer, lire et éditer des fichiers PDF. Il privilégie la vitesse, la facilité d'utilisation et la précision lorsque vous devez livrer des fichiers PDF professionnels de haute qualité et pixel parfaits avec Adobe Acrobat Reader. L'API est bien documentée, et beaucoup d'exemples de code source peuvent être trouvés sur sa page d'exemples de code.

Créer une application console

Nous allons utiliser l'IDE Visual Studio 2022 pour créer une application pour commencer. Visual Studio est l'IDE officiel pour le développement en C#, et vous devez l'avoir installé. Vous pouvez le télécharger depuis le site Web de Microsoft Visual Studio si ce n'est pas déjà fait.

Les étapes suivantes créeront un nouveau projet nommé "DemoApp".

  1. Ouvrez Visual Studio et cliquez sur "Créer un nouveau projet".

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 1 - Nouveau projet

  1. Sélectionnez "Application Console" et cliquez sur "Suivant".

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 2

  1. Définissez le nom du projet.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 3

  1. Sélectionnez la version .NET. Choisissez la version stable .NET 6.0.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 4

Installer la bibliothèque IronPDF

Une fois le projet créé, la bibliothèque IronPDF doit être installée dans le projet pour l'utiliser. Suivez ces étapes pour l'installer.

  1. Ouvrez le Gestionnaire de packages NuGet, soit depuis l'explorateur de solutions, soit depuis Outils.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 5

  1. Recherchez la bibliothèque IronPDF et sélectionnez-la pour le projet en cours. Cliquez sur Installer.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 6

Ajoutez l'espace de noms suivant en haut du fichier Program.cs :

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Installer la bibliothèque iText 7

Une fois le projet créé, la bibliothèque iText 7 doit être installée dans le projet pour l'utiliser. Suivez les étapes pour l'installer.

  1. Ouvrez le Gestionnaire de packages NuGet soit depuis l'explorateur de solutions, soit depuis Outils.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 7

  1. Recherchez la bibliothèque iText 7 et sélectionnez-la pour le projet en cours. Cliquez sur installer.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 8

Ajoutez les espaces de noms suivants en haut du fichier Program.cs :

using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Canvas.Parser.Listener;
using iText.Kernel.Pdf.Canvas.Parser;
using iText.Kernel.Pdf;
Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Imports iText.Kernel.Pdf
$vbLabelText   $csharpLabel

Ouvrir des fichiers PDF

Nous allons utiliser le fichier PDF suivant pour en extraire le texte. Il s'agit d'un document PDF de deux pages.

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 9

Utilisation de la bibliothèque iText

Pour ouvrir un fichier PDF à l'aide de la bibliothèque iText, cela se fait en deux étapes. Tout d'abord, nous créons un objet PdfReader et passons l'emplacement du fichier en tant que paramètre. Puis nous utilisons la classe PdfDocument pour créer un nouveau document PDF. Le code est le suivant :

// Initialize a reader instance by specifying the path of the PDF file
PdfReader pdfReader = new PdfReader("sample.pdf");

// Initialize a document instance using the PdfReader
PdfDocument pdfDoc = new PdfDocument(pdfReader);
// Initialize a reader instance by specifying the path of the PDF file
PdfReader pdfReader = new PdfReader("sample.pdf");

// Initialize a document instance using the PdfReader
PdfDocument pdfDoc = new PdfDocument(pdfReader);
' Initialize a reader instance by specifying the path of the PDF file
Dim pdfReader As New PdfReader("sample.pdf")

' Initialize a document instance using the PdfReader
Dim pdfDoc As New PdfDocument(pdfReader)
$vbLabelText   $csharpLabel

Utilisation de IronPDF

Ouvrir des fichiers PDF avec IronPDF est facile. Utilisez la méthode FromFile de la classe PdfDocument pour ouvrir des fichiers PDF à partir de n'importe quel emplacement de fichier. Le code d'une ligne suivant ouvre un fichier PDF pour lire les données :

// Open a PDF file using IronPDF and create a PdfDocument instance
var pdf = PdfDocument.FromFile("sample.pdf");
// Open a PDF file using IronPDF and create a PdfDocument instance
var pdf = PdfDocument.FromFile("sample.pdf");
' Open a PDF file using IronPDF and create a PdfDocument instance
Dim pdf = PdfDocument.FromFile("sample.pdf")
$vbLabelText   $csharpLabel

Lire les données des fichiers PDF

Utilisation de la bibliothèque iText7

Pour lire les données d'un PDF, ce n'est pas si simple avec la bibliothèque iText 7. Nous devons parcourir manuellement chaque page du document PDF pour extraire le texte de chaque page. Le code source suivant aide à extraire le texte du document PDF page par page :

// Iterate through each page and extract text
for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++)
{
    // Define the text extraction strategy
    ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();

    // Extract text from the current page using the strategy
    string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy);

    // Output the extracted text to the console
    Console.WriteLine(pageContent);
}

// Close document and reader to release resources
pdfDoc.Close();
pdfReader.Close();
// Iterate through each page and extract text
for (int page = 1; page <= pdfDoc.GetNumberOfPages(); page++)
{
    // Define the text extraction strategy
    ITextExtractionStrategy strategy = new SimpleTextExtractionStrategy();

    // Extract text from the current page using the strategy
    string pageContent = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy);

    // Output the extracted text to the console
    Console.WriteLine(pageContent);
}

// Close document and reader to release resources
pdfDoc.Close();
pdfReader.Close();
' Iterate through each page and extract text
Dim page As Integer = 1
Do While page <= pdfDoc.GetNumberOfPages()
	' Define the text extraction strategy
	Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()

	' Extract text from the current page using the strategy
	Dim pageContent As String = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy)

	' Output the extracted text to the console
	Console.WriteLine(pageContent)
	page += 1
Loop

' Close document and reader to release resources
pdfDoc.Close()
pdfReader.Close()
$vbLabelText   $csharpLabel

Il y a beaucoup de choses dans le code ci-dessus. D'abord, nous déclarons la stratégie d'extraction de texte, puis nous utilisons la méthode GetTextFromPage de la classe PdfExtractor pour lire le texte. Cette méthode accepte deux paramètres : le premier est la page du document PDF, et le second est la stratégie. Pour obtenir la page du document PDF, utilisez l'instance de PdfDocument pour appeler la méthode GetPage et passez le numéro de la page en tant que paramètre. La sortie est renvoyée sous forme de chaîne, qui est ensuite affichée sur l'écran de sortie de la console. Enfin, les objets PDFReader et PdfDocument sont fermés. Voir également l'exemple de code suivant sur l'extraction de texte à partir d'un PDF à l'aide de iText7.

Sortie

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 10

Utilisation de IronPDF

Tout comme ouvrir le fichier PDF était une ligne de code, de même, lire le texte d'un fichier PDF est également un processus en une ligne. La classe PDFDocument fournit la méthode ExtractAllText pour lire l'intégralité du contenu du PDF. Console.WriteLine est utilisé pour imprimer le texte à l'écran. Le code est le suivant :

// Extract all text from the PDF document
string text = pdf.ExtractAllText();

// Display the extracted text
Console.WriteLine(text);
// Extract all text from the PDF document
string text = pdf.ExtractAllText();

// Display the extracted text
Console.WriteLine(text);
' Extract all text from the PDF document
Dim text As String = pdf.ExtractAllText()

' Display the extracted text
Console.WriteLine(text)
$vbLabelText   $csharpLabel

Sortie

Itext7 Lire PDF en C# Alternatives (VS IronPDF) Figure 11

La sortie est précise et sans erreurs. Cependant, pour utiliser la méthode ExtractAllText, vous devez avoir une licence car elle fonctionne uniquement en mode production. Vous pouvez obtenir votre clé de licence d'essai pour 30 jours depuis la page de licence d'essai IronPDF.

Comparaison

En comparaison, les deux bibliothèques donnent des résultats à 100 % précis lors de l'extraction de texte d'un document PDF. Elles sont identiques en termes de précision. Cependant, IronPDF est plus efficace en termes de performance et de lisibilité du code.

IronPDF ne prend que deux lignes de code pour réaliser la même tâche qu'iText. Il fournit des méthodes d'extraction de texte prêtes à l'emploi sans qu'aucune logique supplémentaire ne soit nécessaire. Le code iText est un peu compliqué et vous devez fermer les deux instances créées lors de l'ouverture d'un document PDF. Alors qu'IronPDF libère automatiquement la mémoire une fois la tâche effectuée.

Résumé

Dans cet article, nous avons examiné comment lire les documents PDF à l'aide de la bibliothèque iText en C#, puis comparé avec IronPDF. Les deux bibliothèques donnent des résultats précis et offrent de nombreuses méthodes de manipulation de PDF. Vous pouvez créer, éditer et lire des données à partir de fichiers PDF à l'aide de ces deux bibliothèques.

iText est open source et gratuit à utiliser mais avec des restrictions. Il peut être licencié pour une utilisation commerciale. IronPDF is also free to use and can be licensed for commercial activities with a 30-day free trial available.

Téléchargez IronPDF et essayez-le.

Veuillez noteriText 7 est une marque déposée de son propriétaire respectif. Ce site n'est pas affilié, approuvé ou sponsorisé par iText 7. 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

Qu'est-ce que IronPDF et comment se compare-t-il à iText 7 ?

IronPDF est une bibliothèque .NET conçue pour générer et manipuler des documents PDF à partir de HTML, CSS et JavaScript. Comparé à iText 7, IronPDF met l'accent sur la vitesse, la facilité d'utilisation et la précision, nécessitant moins de lignes de code pour accomplir des tâches PDF.

Comment puis-je convertir HTML en PDF en C# ?

Vous pouvez utiliser la méthode RenderHtmlAsPdf de IronPDF pour convertir des chaînes HTML en PDF. De plus, vous pouvez convertir des fichiers HTML en PDF à l'aide de RenderHtmlFileAsPdf.

Quelles sont les étapes d'installation d'IronPDF dans un projet C# ?

Pour installer IronPDF dans un projet C#, ouvrez le gestionnaire de packages NuGet dans Visual Studio, recherchez IronPDF, sélectionnez-le pour votre projet, puis cliquez sur Installer. Incluez using IronPdf; en haut de votre fichier C#.

Comment puis-je extraire du texte d'un PDF en utilisant IronPDF ?

Pour extraire du texte d'un PDF en utilisant IronPDF, utilisez la méthode FromFile de la classe PdfDocument pour charger le PDF, suivie de la méthode ExtractAllText pour récupérer le texte.

Quelles sont quelques astuces de dépannage pour utiliser IronPDF ?

Assurez-vous qu'IronPDF est correctement installé via NuGet et que les espaces de noms appropriés sont inclus dans votre fichier C#. Vérifiez les chemins des fichiers et assurez-vous que le contenu HTML est bien formé si vous convertissez du HTML en PDF.

IronPDF peut-il gérer les formulaires et annotations PDF ?

Oui, IronPDF prend en charge des fonctionnalités telles que le remplissage de formulaires et l'ajout d'annotations aux PDF, vous permettant de créer des documents PDF interactifs et dynamiques.

IronPDF est-il gratuit ?

IronPDF offre une version gratuite avec des fonctionnalités limitées et un essai gratuit de 30 jours pour sa version commerciale, qui fournit une gamme complète de fonctionnalités.

Quelles sont les limitations de l'utilisation d'iText 7 pour la manipulation PDF ?

Bien qu'iText 7 soit une bibliothèque PDF robuste, elle nécessite une logique supplémentaire pour certaines tâches comme l'extraction de texte, ce qui peut entraîner un code plus complexe et long par rapport à IronPDF.

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