
Comment séparer des pages de PDF
IronPDF vs iText / iText
Comparaison exhaustive des bibliothèques PDF .NET — analyse détaillée des fonctionnalités avec contexte étayé par des preuves
| Caractéristique | iText / iText | IronPDF ✦ |
|---|---|---|
| Création et conversion de PDF | ||
| Conversion HTML/CSS en PDF | $ Paid Add-on HTML→PDF via l'extension pdfHTML (package séparé ; modèle AGPL/commercial). | ✓ Yes Moteur basé sur Chromium avec rendu CSS3, Flexbox et Grid intégré, d'une précision pixel parfaite. |
| Exécution de JavaScript | ? Unknown pdfHTML décrit la conversion HTML/CSS→PDF, mais la prise en charge de l'exécution JS n'est pas mentionnée dans la documentation. | ✓ Yes Exécute intégralement le JS lors du rendu — graphiques dynamiques, SPA et contenu interactif. |
| Génération programmatique | ✓ Yes Conçu comme un kit de développement logiciel (SDK) PDF programmable pour .NET — créez, modifiez et améliorez. | ✓ Yes Générez à partir de modèles HTML, de chaînes de caractères, de vues ASPX ou d'images. Chromium gère la mise en page. |
| URL en PDF | $ Paid Add-on Possible via l'extension pdfHTML avec récupération d'URL, mais ce n'est pas une fonctionnalité de base. | ✓ YesRenderUrlAsPdf() Capture n'importe quelle URL en direct avec rendu CSS/JS complet. |
| DOCX en PDF | ✕ No Aucune conversion Word native — iText est un SDK natif PDF. | ✓ YesDocxToPdfRenderer Convertit les documents Word en préservant la structure et la mise en forme. |
| Lecture et extraction | ||
| Extraction de texte | ✓ YesPdfTextExtractor.GetTextFromPage() avec de multiples stratégies d'extraction. | ✓ Yes Extrait le texte en tenant compte de la mise en page. Compatible avec IronOCR pour les documents numérisés. |
| Convertir les pages en images | ? Unknown Les flux de travail OCR mentionnent le rendu, mais aucun module " PDF→rendu d'image " à partir de la source principale n'est mentionné dans les documents iText cités. | ✓ Built-in Rasterisation native vers PNG, JPEG, BMP avec DPI configurable. |
| OCR intégré | $ Paid Add-on Module complémentaire pdfOCR disponible ; les notes d'installation mentionnent les dépendances spécifiques à la plateforme/natives (par exemple, les exigences d'exécution Linux/macOS). | ✓ Via IronOCR Intégration native avec IronOCR pour la reconnaissance optique de caractères (OCR) dans plus de 127 langues sur les PDF numérisés. |
| Édition et manipulation | ||
| Fusion et scission | ✓ YesPdfMerger classe dans l'API .NET ; les exemples officiels traitent de la fusion via PdfMerger. | ✓ Yes Fusion, division, ajout, préfixe et réorganisation des pages en une seule ligne grâce à une API intuitive. |
| En-têtes, pieds de page et numéros de page | ✓ Yes L'inscription à la PDF Association confirme la possibilité d'ajouter des numéros de page et des fonctionnalités similaires aux fichiers PDF existants. | ✓ Yes En-têtes/pieds de page HTML avec numéros de page automatiques, dates et contenu personnalisé. |
| Filigranes | ✓ Yes L'inscription à la PDF Association inclut explicitement les " filigranes… sur les documents PDF existants ". | ✓ YesApplyWatermark() Accepte HTML/CSS — contrôle total de l'opacité, de la rotation et de la position. |
| Tamponner Texte et Images | ✓ Yes Placement de contenu programmatique disponible via les API canvas et layout d'iText. | ✓ YesTextStamper ImageStamper avec Google Fonts, positionnement, contrôle par page. |
| Masquer le contenu | ✓ Yes iText offre une prise en charge des annotations de rédaction via le module de nettoyage. | ✓ YesRedactTextOnAllPages() Supprime définitivement les textes sensibles sur une seule ligne. |
| Sécurité et conformité | ||
| Chiffrement et mots de passe | ✓ Yes Chiffrement complet et contrôle des autorisations via l'API de sécurité d'iText. | ✓ Yes Chiffrement AES, mots de passe propriétaire/utilisateur, permissions granulaires (impression, copie, annotation). |
| Signatures numériques | ✓ Yes Documentation dédiée à la signature numérique et API de signature ( PdfSigner ). | ✓ YesPdfSignature avec prise en charge des certificats X509/PFX. |
| Conformité aux normes PDF/A et PDF/UA | ✓ Yes La documentation traite de la création de fichiers PDF/A et explique les contraintes (la conversion à partir de fichiers existants n'est pas automatique). | ✓ Yes Conformité native aux normes d'archivage PDF/A et d'accessibilité PDF/UA pour une utilisation en Enterprise . |
| Plateforme et déploiement | ||
| Support multiplateforme | ✓ Yes .NET Standard 2.0 / .NET Framework 4.6.1 — fonctionne sur .NET 6+ sur tous les systèmes d'exploitation. | ✓ Yes Windows, Linux, macOS, x64, x86, ARM. .NET 6-10, Core, Standard 2.0+, Framework 4.6.2+. |
| Serveur / Docker / Cloud | ~ Complex L'installation de base nécessite plusieurs paquets (iText + adaptateur Bouncy Castle) ; les modules complémentaires (pdfHTML/pdfOCR) ajoutent des étapes de dépendance/conformité supplémentaires. | ✓ Yes Docker, Azure, AWS, IIS. Images Docker officielles et guides de déploiement. |
| Facilité d'installation | ~ Complex L'installation de base nécessite plusieurs paquets (adaptateur Bouncy Castle) ; HTML/OCR nécessitent des modules complémentaires supplémentaires et parfois des dépendances natives. | ✓ Simple Commande NuGet Install-Package IronPdf . Prêt en quelques minutes. |
| Licences et assistance | ||
| Modèle de licence | ~ Complex Double licence : AGPLv3 (obligation de divulgation du code source pour une utilisation en réseau) ou commerciale. L'AGPL peut être restrictive pour les applications propriétaires. | ✓ Commercial Licences perpétuelles. Essai gratuit de 30 jours avec toutes les fonctionnalités, sans filigrane. |
| Assistance commerciale et SLA | ✓ Yes Le site iText inclut des accords de licence commerciale et de support dans son modèle de licence. | ✓ 24/5 Support Assistance technique dédiée avec SLA garanti — e-mail, chat en direct, téléphone. |
| Documentation | ✓ Yes Guides d'installation, articles de la base de connaissances et références API disponibles (noyau + modules complémentaires). | ✓ Extensive Référence API complète, plus de 100 guides pratiques, tutoriels, exemples de code, dépannage, vidéos. |
Données provenant de la documentation officielle d'iText, de la liste de l'association PDF et des références de package NuGet.
iText est puissant mais comporte la complexité de la licence AGPL et le fardeau de l'installation multi-packages.
IronPDF offre une couverture complète avec une installation simplifiée — essayez gratuitement pendant 30 jours.
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, anciennement connu sous le nom de iText 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 Core, vous pouvez diviser, fusionner, annoter, remplir des formulaires, signer numériquement, et faire beaucoup plus sur des fichiers PDF. iText 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".
-
Ouvrez Visual Studio et cliquez sur "Créer un nouveau projet".

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

-
Définissez 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 l'utiliser. Suivez ces étapes pour l'installer.
-
Ouvrez le Gestionnaire de packages NuGet, soit depuis l'explorateur de solutions, soit depuis Outils.

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

Ajoutez l'espace de noms suivant en haut du fichier Program.cs :
using IronPdf;Imports IronPdfInstaller la bibliothèque iText
Une fois le projet créé, la bibliothèque iText doit être installée dans le projet pour l'utiliser. Suivez les étapes pour l'installer.
-
Ouvrez le Gestionnaire de packages NuGet soit depuis l'explorateur de solutions, soit depuis Outils.

-
Recherchez la bibliothèque iText 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;Imports iText.Kernel.Pdf.Canvas.Parser.Listener
Imports iText.Kernel.Pdf.Canvas.Parser
Imports iText.Kernel.PdfOuvrir 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.

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. Ensuite, nous utilisons la classe PdfDocument pour créer un nouveau document PDF. Le code se présente comme suit :
// 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)Utilisation de IronPDF
Ouvrir des fichiers PDF avec IronPDF est facile. Utilisez la méthode FromFile de la classe PdfDocument pour ouvrir des PDF depuis 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
Dim pdf = PdfDocument.FromFile("sample.pdf")Lire les données des fichiers PDF
Utilisation de la bibliothèque iText
L'accès aux données PDF n'est pas si simple dans la bibliothèque iText. 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 page As Integer = 1 To 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)
Next
' Close document and reader to release resources
pdfDoc.Close()
pdfReader.Close()Il y a 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 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. Consultez également l'exemple de code suivant sur l'extraction de texte à partir d'un PDF en utilisant iText.
Sortie

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 tout le 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
Dim text As String = pdf.ExtractAllText()
' Display the extracted text
Console.WriteLine(text)Sortie

La sortie est précise et sans erreurs. 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 depuis la page de licence d'essai IronPDF.
Comparaison
En comparaison, les deux bibliothèques produisent des résultats précis lors de l'extraction de texte d'un document PDF. Ils sont comparables en termes de précision d'extraction de texte. Cependant, IronPDF est plus efficace en termes de lisibilité du code et d'ergonomie pour le développeur.
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 est également gratuit à utiliser et peut être licencié pour des activités commerciales avec un essai gratuit de 30 jours disponible.
Téléchargez IronPDF et essayez-le.

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 et créer des manuels bien structurés et visuellement attrayants.
Articles connexes


