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");
itext7 Extraire du texte d'un PDF vs IronPDF (Tutoriel d'exemple de code)
Chaknith Bin
avril 24, 2025
Partager:
Que vous développiez une solution d'entreprise riche en documents, génériez des factures dans une application SaaS ou exportiez des rapports à partir d'un tableau de bord .NET, une question se pose toujours :
"Quelle bibliothèque PDF C# dois-je utiliser ?"
Dans l'écosystème .NET, trois bibliothèques se distinguent : PDFsharp, iTextSharp, et IronPDF. Chacun a ses forces, ses particularités et ses cas d'utilisation optimaux. Mais lequel est véritablement le meilleur choix pour les développeurs modernes travaillant avec des fichiers PDF au sein de .NET 6+, .NET Core, ou même du traditionnel .NET Framework ?
Ce guide complet plonge en profondeur dans chaque bibliothèque, comparant les fonctionnalités, l'installation, l'ergonomie et la qualité de sortie. Nous examinerons des exemples de code fonctionnels, les avantages et les inconvénients de chaque bibliothèque, et offrirons des recommandations pratiques basées sur les besoins de développement réels.
Commençons.
Aperçu de PDFsharp
Qu'est-ce que PDFsharp ?
PDFsharp est une bibliothèque open-source qui permet aux développeurs de créer et de traiter des documents PDF à la volée en utilisant C#. Il prend en charge la création de PDF à partir de zéro et la capacité de modifier des fichiers PDF existants. Son API propre et orientée objet est idéale pour les développeurs à la recherche d'une solution légère et facile à intégrer.
Bien que piloté par la communauté, il bénéficie d'une base d'utilisateurs fidèle et reste un choix privilégié pour les tâches PDF simples qui ne nécessitent pas de rendu avancé ou de contenu dynamique à partir de HTML.
Installation de PDFsharp
L'installation est simple via NuGet :
Install-Package PDFsharp
Install-Package PDFsharp
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package PDFsharp
$vbLabelText $csharpLabel
Il est également compatible avec PdfSharpCore pour les environnements .NET Core.
Exemple de code : Création d'un PDF simple
using PdfSharp.Pdf;
using PdfSharp.Drawing;
// Create a new PDF document
var document = new PdfSharp.Pdf.PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyleEx.Bold);
// Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("HelloWorld.pdf");
using PdfSharp.Pdf;
using PdfSharp.Drawing;
// Create a new PDF document
var document = new PdfSharp.Pdf.PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyleEx.Bold);
// Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("HelloWorld.pdf");
Imports PdfSharp.Pdf
Imports PdfSharp.Drawing
' Create a new PDF document
Private document = New PdfSharp.Pdf.PdfDocument()
document.Info.Title = "Created with PDFsharp"
' Create an empty page
Dim page As PdfPage = document.AddPage()
' Get an XGraphics object for drawing
Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
' Create a font
Dim font As New XFont("Verdana", 20, XFontStyleEx.Bold)
' Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
' Save the document
document.Save("HelloWorld.pdf")
$vbLabelText $csharpLabel
Sortie
📝 Remarque : PDFsharp ne prend pas en charge le rendu HTML ou l'analyse CSS par défaut, il est donc préférable de l'utiliser pour la génération de documents basée sur le dessin. Pour le rendu HTML en PDF, vous avez besoin de HtmlRenderer pour PDFsharp.
Avantages et inconvénients de PDFsharp
Avantages :
Bibliothèque PDF gratuite et open source (licence MIT)
Idéal pour les dessins de bas niveau et les documents PDF basés sur du texte simple
Léger et facile à installer
Inconvénients :
Pas de prise en charge native de la conversion HTML en PDF
Les capacités de rendu sont limitées
Pas activement maintenu pour les cas d'utilisation avancés
Analyse détaillée d'iTextSharp
Qu'est-ce que iTextSharp ?
iTextSharp est le portage .NET d'iText, une bibliothèque PDF robuste basée sur Java. Il offre des fonctionnalités avancées, y compris des signatures numériques, des champs de formulaire, des codes-barres, et plus encore. iTextSharp est hautement personnalisable et convient mieux aux entreprises ayant des besoins en documentation légale ou réglementaire.
Cependant, cela vient avec une condition—la licence. iTextSharp est sous licence AGPL, ce qui signifie que vous devez open source votre projet à moins d'acheter une licence commerciale.
Installation de iTextSharp
Install-Package itext
Install-Package itext
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package itext
$vbLabelText $csharpLabel
Les versions plus récentes utilisent l'espace de noms iText Core. Assurez-vous de revoir les termes de la licence avant l'intégration.
Exemple de code : Génération de PDF basique
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
PdfWriter writer = new PdfWriter("iTextHello.pdf");
var pdf = new iText.Kernel.Pdf.PdfDocument(writer);
Document document = new Document(pdf);
document.Add(new Paragraph("Hello, iTextSharp!"));
document.Close();
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
PdfWriter writer = new PdfWriter("iTextHello.pdf");
var pdf = new iText.Kernel.Pdf.PdfDocument(writer);
Document document = new Document(pdf);
document.Add(new Paragraph("Hello, iTextSharp!"));
document.Close();
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
Private writer As New PdfWriter("iTextHello.pdf")
Private pdf = New iText.Kernel.Pdf.PdfDocument(writer)
Private document As New Document(pdf)
document.Add(New Paragraph("Hello, iTextSharp!"))
document.Close()
$vbLabelText $csharpLabel
Sortie
📌 Astuce : la version iText 9 d’iTextSharp est modulaire. Pour la conversion HTML ou la génération de codes-barres, installez des packages NuGet supplémentaires, tels que l'extension payante pdfHTML.
Forces et faiblesses d'iTextSharp
Forces :
Puissant et de qualité professionnelle
Prend en charge PDF/A, le chiffrement, le remplissage de formulaires et les signatures numériques
Architecture modulaire avec plugins
Faiblesses :
Licence AGPL ou licence commerciale coûteuse
Courbe d'apprentissage plus raide
Syntaxe verbeuse par rapport aux concurrents
IronPDF : Le choix complet pour C
Pourquoi IronPDF se démarque-t-il ?
IronPDF est une bibliothèque .NET de qualité commerciale qui met l'accent sur la simplicité, la précision de rendu et la richesse des fonctionnalités. Il est particulièrement puissant si vous souhaitez convertir du HTML en PDF avec un support complet pour le CSS, JavaScript et les polices web, le rendant idéal pour la génération de documents PDF modernes et réactifs. Que vous cherchiez à créer des documents PDF à partir de zéro, à générer des documents PDF à partir de HTML, ou que vous ayez simplement besoin d'un outil excellent pour manipuler les fichiers PDF, IronPDF est à votre disposition.
Avec la prise en charge de .NET Core, .NET Framework, Azure et Docker, IronPDF est bien adapté aux startups ainsi qu'aux applications de niveau entreprise. Avec ses fonctionnalités puissantes, sa bonne documentation et sa capacité à fonctionner sur diverses plateformes, IronPDF est un choix solide pour générer des PDF.
Installation d'IronPDF
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
$vbLabelText $csharpLabel
Ou utilisez l'interface utilisateur NuGet de Visual Studio. IronPDF propose un essai gratuit et des licences flexibles pour une utilisation commerciale sans les restrictions de l'AGPL.
Exemple de code IronPDF : HTML en PDF en 5 lignes
using IronPdf;
var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>");
pdf.SaveAs("IronPdfHello.pdf");
using IronPdf;
var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>");
pdf.SaveAs("IronPdfHello.pdf");
Imports IronPdf
Private Renderer = New ChromePdfRenderer()
Private pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>")
pdf.SaveAs("IronPdfHello.pdf")
$vbLabelText $csharpLabel
Sortie
🔍 Cet exemple simple utilise toute la puissance d'un moteur Chromium sans tête pour rendre le HTML/CSS exactement comme un navigateur le ferait—ce qui est difficile pour PDFsharp et iTextSharp.
Performance et expérience du développeur
IronPDF est largement reconnu pour ses :
Précision : Rendu au pixel près utilisant un moteur Chromium pour générer des PDFs
Facilité d'utilisation : Pas besoin de gérer manuellement les tailles de page, les marges ou les polices
Vitesse : Génération rapide avec prise en charge du multithreading
Support : Documentation active, exemples et support client
Les benchmarks montrent qu'IronPDF peut générer une facture HTML complexe avec des images, du CSS et du JavaScript en moins de 2 secondes sur une machine standard, surpassant de loin les modules complémentaires HTML d'iTextSharp ou les méthodes de dessin manuel de PDFsharp.
Pourquoi choisir IronPDF ?
IronPDF offre une expérience de développement moderne, complète avec des fonctionnalités clés telles que :
Prise en charge complète de HTML5, CSS3, JS, Bootstrap et du design responsive pour la conversion PDF avec un rendu précis
Ayez accès à des fonctionnalités avancées telles que PDF/A, les signatures numériques, l'ajout de filigranes, la fusion et la division
Licences adaptées aux produits commerciaux—sans souci d'AGPL
Une documentation supérieure et un support riche en exemples
Extraire des données à partir de documents PDF avec un minimum d'effort
IronPDF ne se limite pas seulement au langage de programmation C#, il propose également des versions pour Java, Node.js et Python
Que vous développiez un générateur de factures, un moteur de rapports ou un système de documentation basé sur un navigateur, IronPDF rend cela simple et professionnel.
Réflexions finales : Quelle bibliothèque PDF C# devriez-vous choisir ?
Le monde des bibliothèques PDF pour C# est diversifié, et chaque outil que nous avons exploré—PDFsharp, iTextSharp, et IronPDF—apporte ses propres points forts, faiblesses et cas d'utilisation idéaux. Alors lequel devriez-vous choisir pour vos applications .NET ?
🧩 PDFsharp : Léger et DIY
Si vous développez une application à petite échelle, avez des besoins de rendu de documents basiques et préférez un contrôle total sur les opérations de dessin de PDF, PDFsharp est un point de départ fiable. Sa nature open-source et sa faible surcharge en font un choix idéal pour les projets où la licence et la simplicité sont essentielles. Cependant, le compromis est l'effort manuel : pas de support HTML, pas de rendu web moderne et développement actif limité.
Utilisez PDFsharp si :
Vous cherchez à créer des fichiers PDF de manière programmée avec des lignes, du texte et une mise en page simple.
Votre application n'a pas besoin de HTML en PDF, de stylisation CSS ou de JavaScript.
La compatibilité open-source (licence MIT) est essentielle.
🏛 iTextSharp : Puissant mais complexe
iTextSharp se situe à l'extrémité entreprise du spectre. C'est puissant, sécurisé, et bien adapté pour la manipulation complexe de PDF telle que :
Remplir des formulaires
Génération de codes-barres
Sécurisation des fichiers avec des signatures numériques
Conformité avec des formats tels que PDF/A et PDF/UA
Toutefois, sa licence AGPL peut être restrictive à moins que vous ne soyez prêt à soit rendre votre code open source, soit payer pour une licence commerciale—qui n'est pas bon marché. De plus, la courbe d'apprentissage est plus raide, et le rendu HTML est un ajout plutôt qu'une fonctionnalité de base.
Utilisez iTextSharp si :
Vous développez des systèmes gouvernementaux ou réglementaires avec remplissage de formulaires ou PDFs sécurisés.
Vous avez besoin d'un contrôle granulaire sur les opérations PDF de bas niveau.
Vous avez le budget pour les licences commerciales.
🚀 IronPDF : Moderne, intuitif et riche en fonctionnalités
En revanche, IronPDF est conçu pour résoudre des problèmes réels avec élégance et rapidité. Il combine la familiarité des technologies web (HTML, CSS, JavaScript) avec la puissance du rendu Chromium, permettant aux développeurs de convertir des mises en page complexes en magnifiques PDF sans effort.
Il gère :
Rendu HTML en PDF avec précision pixel par pixel
Exécution JavaScript (idéal pour les graphiques et les données dynamiques)
Fusion, fractionnement, filigranage, signature de PDF et autres options variées pour la manipulation de documents PDF
Intégration avec .NET 6, 7 et au-delà
Déploiement facile sur Azure, Docker et pipelines CI/CD
Le plus important, IronPDF se concentre sur l'expérience des développeurs : syntaxe claire, rendu rapide, documentation riche et support réactif.
Choisissez IronPDF si :
Vous souhaitez un outil précieux pour la conversion HTML en PDF qui ressemble à un aperçu avant impression d'un navigateur.
Vos documents dépendent du style web (Bootstrap, Flexbox, Google Fonts).
Vous avez besoin d'une licence commerciale avec flexibilité, support et mises à jour.
Vous accordez de l'importance au temps de mise sur le marché et à la productivité des développeurs.
Verdict : IronPDF l'emporte pour la plupart des développeurs .NET
Bien que PDFsharp soit une excellente option pour une utilisation basique, et que iTextSharp serve des industries de niche où la conformité est essentielle, IronPDF se distingue comme la solution PDF tout-en-un pour les développeurs C# modernes. Il trouve un équilibre parfait entre puissance, simplicité et utilisabilité dans le monde réel.
Que vous génériez des rapports dynamiques, créiez des factures clients à partir de modèles web ou exportiez une documentation riche, IronPDF vous permet de vous concentrer sur votre application—et non sur les subtilités du rendu PDF.
📎 Prêt à l'essayer ?
Ne vous fiez pas seulement à notre parole—explorez IronPDF par vous-même :
Avec IronPDF, vous ne faites pas que générer des PDF—vous créez des documents finis, professionnels et prêts pour la production, qui ont exactement l'aspect que vous leur avez donné. Réduisez le temps de développement, éliminez les problèmes de rendu et livrez plus rapidement.
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
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