using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Le PDF est un format de document portable créé par Adobe Acrobat Reader, largement utilisé pour le partage numérique d'informations sur l'internet. Il préserve le formatage des données et offre des fonctionnalités telles que la définition d'autorisations de sécurité et la protection par mot de passe. En tant que développeur C#, vous avez peut-être déjà rencontré des scénarios dans lesquels l'intégration d'une fonctionnalité PDF dans votre application logicielle est nécessaire. Le construire à partir de zéro peut être une tâche longue et fastidieuse. Par conséquent, compte tenu des performances, de l'efficacité et de l'efficience de l'application, le choix entre la création d'un nouveau service à partir de zéro et l'utilisation d'une bibliothèque préconstruite est important.
Il existe plusieurs bibliothèques PDF pour C#. Dans cet article, nous allons explorer deux des bibliothèques PDF les plus populaires pour lire des documents PDF en C#.
logiciel iText
iText 7anciennement iText 7 Core, est une bibliothèque PDF permettant de programmer des documents PDF en .NET C# et Java. Il est disponible sous une licence open source(AGPL) et peuvent faire l'objet d'une licence 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 faire bien plus encore sur des fichiers PDF. iText 7 offre uneConvertisseur HTML vers PDF.
IronPDF
En savoir plus sur IronPDF est une API .NET et .NET Framework C# et Java qui est 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 des fichiers PDF existants comme la division, la fusion, l'annotation, la signature numérique, et bien plus encore.
IronPDF est enrichi de plus de 50 fonctionnalités permettant de créer, lire et modifier des fichiers PDF. Elle privilégie la rapidité, la facilité d'utilisation et la précision lorsqu'il s'agit de fournir des fichiers PDF professionnels de haute qualité, au pixel près, avec Adobe Acrobat Reader. L'API est bien documentée et de nombreux exemples de code source peuvent être trouvés sur son site Webpage d'exemples de code.
Créer une application console
Nous allons utiliser l'IDE Visual Studio 2022 pour créer une application dans un premier temps. Visual Studio est l'IDE officiel pour le développement C#, et vous devez l'avoir installé. Vous pouvez le télécharger à partir du siteSite web de Microsoft Visual Studio s'il n'est pas installé.
Les étapes suivantes permettront de créer un nouveau projet appelé "DemoApp".
Ouvrez Visual Studio et cliquez sur "Créer un nouveau projet".
Sélectionnez "Application console" et cliquez sur "Suivant".
Définir le nom du projet.
Sélectionnez la version .NET. Choisissez la version stable .NET 6.0.
Installer la bibliothèque IronPDF
Une fois le projet créé, la bibliothèque IronPDF doit être installée dans le projet pour pouvoir l'utiliser. Suivez les étapes suivantes pour l'installer.
Ouvrez NuGet Package Manager, soit à partir de l'explorateur de solutions, soit à partir des outils.
Recherchez la bibliothèque IronPDF et sélectionnez-la pour le projet en cours. Cliquez sur Installer.
Ajouter 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 être utilisée. Suivez les étapes pour l'installer.
Ouvrir le gestionnaire de paquets NuGet à partir de l'explorateur de solutions ou des outils.
Recherchez la bibliothèque iText 7 et sélectionnez-la pour le projet en cours. Cliquez sur installer.
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;
Nous allons utiliser le fichier PDF suivant pour en extraire le texte. Il s'agit d'un document PDF de deux pages.
Utilisation de la bibliothèque iText
L'ouverture d'un fichier PDF à l'aide de la bibliothèque iText se fait en deux étapes. Tout d'abord, nous créons un objet PdfReader et passons l'emplacement du fichier en paramètre. Nous utilisons ensuite la classe PdfDocument pour créer un nouveau document PDF. Le code est le suivant :
PdfReader pdfReader = new PdfReader("sample.pdf");
PdfDocument pdfDoc = new PdfDocument(pdfReader);
PdfReader pdfReader = new PdfReader("sample.pdf");
PdfDocument pdfDoc = new PdfDocument(pdfReader);
Dim pdfReader As New PdfReader("sample.pdf")
Dim pdfDoc As New PdfDocument(pdfReader)
$vbLabelText $csharpLabel
Utilisation d'IronPDF
L'ouverture de fichiers PDF à l'aide d'IronPDF est facile. Utilisez la méthode FromFile de la classe PdfDocument pour ouvrir des PDF à partir de n'importe quel emplacement de fichier. Le code en une ligne suivant ouvre un fichier PDF pour en lire les données :
var pdf = PdfDocument.FromFile("sample.pdf");
var pdf = PdfDocument.FromFile("sample.pdf");
Dim pdf = PdfDocument.FromFile("sample.pdf")
$vbLabelText $csharpLabel
Lire les données des fichiers PDF
Utilisation de la bibliothèque iText7
La lecture de données PDF n'est pas si simple dans la bibliothèque iText 7. Nous devons parcourir manuellement chaque page du document PDF pour en extraire le texte. Le code source suivant permet d'extraire le texte d'un document PDF page par page :
Dim page As Integer = 1
Do While page <= pdfDoc.GetNumberOfPages()
Dim strategy As ITextExtractionStrategy = New SimpleTextExtractionStrategy()
Dim pageContent As String = PdfTextExtractor.GetTextFromPage(pdfDoc.GetPage(page), strategy)
Console.WriteLine(pageContent)
page += 1
Loop
pdfDoc.Close()
pdfReader.Close()
$vbLabelText $csharpLabel
Il se passe beaucoup de choses dans le code ci-dessus. Tout 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 page en paramètre. La sortie est renvoyée sous la forme d'une chaîne, qui est ensuite affichée sur l'écran de sortie de la console. Enfin, les objets PDFReader et PdfDocument sont fermés. Regardez également l'exemple de code suivant surextraire du texte d'un PDF à l'aide d'iText7.
Sortie
Utilisation d'IronPDF
Tout comme l'ouverture du fichier PDF était une ligne de code, la lecture du texte d'un fichier PDF est également un processus d'une seule ligne. La classe PDFDocument fournit la méthode ExtractAllText pourlire l'intégralité du contenu du PDF. la commande Console.WriteLine est utilisée pour imprimer le texte à l'écran. Le code est le suivant :
string text = pdf.ExtractAllText();
Console.WriteLine(text);
string text = pdf.ExtractAllText();
Console.WriteLine(text);
Dim text As String = pdf.ExtractAllText()
Console.WriteLine(text)
$vbLabelText $csharpLabel
Sortie
Le résultat est précis et ne comporte aucune erreur. Cependant, pour utiliser la méthode ExtractAllText, vous devez avoir une licence car elle ne fonctionne qu'en mode production. Vous pouvez obtenir votre clé de licence d'essai pour 30 jours à partir de l'adresse suivantePage de licence d'essai d'IronPDF.
Comparaison
En comparaison, les deux bibliothèques donnent des résultats 100% exacts lors de l'extraction de texte à partir d'un document PDF. Ils sont identiques en termes de précision. Cependant, IronPDF est plus efficace en termes de performances et de lisibilité du code.
IronPDF ne nécessite 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 doive être mise en œuvre. le code iText est un peu délicat, et il faut fermer les deux instances créées lors de l'ouverture d'un document PDF. En revanche, IronPDF efface automatiquement la mémoire une fois la tâche effectuée.
Résumé
Dans cet article, nous avons examiné comment lire des documents PDF à l'aide de la bibliothèque iText en C#, puis nous l'avons comparée à IronPDF. Les deux bibliothèques donnent des résultats précis et proposent de nombreuses méthodes de manipulation des PDF. Ces deux bibliothèques permettent de créer, d'éditer et de lire des données dans des fichiers PDF.
Regan est diplômé de l'université de Reading, où il a obtenu une licence en ingénierie électronique. Avant de rejoindre Iron Software, il s'était concentré sur une seule tâche. Ce qu'il apprécie le plus chez Iron Software, c'est la diversité des tâches qu'il peut accomplir, qu'il s'agisse d'apporter une valeur ajoutée aux ventes, à l'assistance technique, au développement de produits ou à la commercialisation. Il aime comprendre comment les développeurs utilisent la bibliothèque d'Iron Software et utiliser ces connaissances pour améliorer continuellement la documentation et développer les produits.
< PRÉCÉDENT Comment convertir un PDF en image à l'aide d'Itextsharp
SUIVANT > Comparaison entre IronPDF et Foxit PDF SDK
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier