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");
Créer un PDF à partir d'un tableau d'octets C# iTextSharp
COMPARAISON DES PRODUITS
Créer un PDF à partir d'un tableau d'octets C# iTextSharp (vs IronPDF)
Chaknith Bin
mai 30, 2023
Partager:
1.0 Introduction
Adobe a développé le format de document portable pour faciliter le partage de documents basés sur du texte et des images (PDF). Pour visualiser un fichier image PDF, vous devez utiliser une autre application. Dans la culture actuelle, de nombreuses entreprises utilisent des documents PDF pour diverses tâches, notamment la préparation de factures et d'autres documents administratifs.
Les développeurs utilisent également le format de fichier PDF existant pour produire des documents ou des fichiers images conformes aux spécifications du client. Heureusement, les bibliothèques qui simplifient le processus ont rendu la production de PDF plus simple que jamais. Tenez compte de facteurs tels que les capacités de construction, de lecture et de conversion lorsque vous choisissez une bibliothèque pour votre projet, afin de sélectionner la meilleure bibliothèque disponible.
Dans ce billet, nous allons comparer deux des bibliothèques PDF Dot NET les plus utilisées. Il s'agit de
Dans votre application ou projet Microsoft .NET, vous pouvez créer, lire et modifier des PDF à l'aide des bibliothèques IronPDF ou iText PDF. Nous examinerons d'abord les capacités des deux bibliothèques avant de passer directement aux performances globales, aux frais de conversion et de traitement des PDF afin de déterminer quelle bibliothèque convient le mieux à votre application. Les Framework .NET de Microsoft prennent en charge les deux bibliothèques. En outre, la durée de chaque bibliothèque sera enregistrée à des fins de référence et de recherche ultérieure. Pour en savoir plus sur la comparaison, cliquez ici.
2. Caractéristiques de la bibliothèque
2.1 Fonctionnalités d'iText PDF
IText PDF est une bibliothèque et un système Java qui permet de convertir du texte en fichiers PDF. Le texte adhère au modèle de licence de logiciel AGPL. La licence AGPL est une licence de logiciel libre et open-source.
Une API pour la production de fichiers PDF est disponible via la bibliothèque iText.
Les chaînes HTML et XML peuvent être analysées en PDF à l'aide du lecteur var du programme iText.
Nous pouvons ajouter des signets, des numéros de page et des repères à nos documents PDF à l'aide de la bibliothèque iText.
Il est possible de diviser un fichier PDF en plusieurs PDF ou de combiner plusieurs fichiers PDF en un seul PDF à l'aide de la bibliothèque iText.
Nous pouvons éditer des formulaires dans les PDF à l'aide d'iText.
En utilisant des images PNG, JPEG et d'autres formats d'image, iText peut également créer des PDF.
Une classe Canvas est proposée par la bibliothèque iText et peut être utilisée pour dessiner différentes formes géométriques sur des textes préexistants.
Dans les documents PDF, iText fournit un outil qui vous permet d'ajouter et de modifier des polices et des images.
2.2 Caractéristiques d'IronPDF
Les développeurs peuvent rapidement produire, lire et modifier des fichiers PDF à l'aide de la robuste IronPDF, une bibliothèque PDF .NET. IronPDF a un moteur Chrome à son cœur et offre une multitude de capacités pratiques et puissantes, notamment la possibilité de convertir des fichiers HTML5, JavaScript, CSS et images en PDF, d'ajouter des en-têtes et des pieds de page uniques et de produire des PDF exactement tels qu'ils apparaissent dans un navigateur web. IronPDF prend en charge divers formats Web et .NET, notamment HTML, ASPX, Razor View et MVC. Les principales caractéristiques d'IronPDF sont les suivantes :
Créez, lisez et modifiez facilement des fichiers PDF dans un programme C# Dot NET.
Création de PDF à partir d'un lien URL de site web qui comporte des paramètres pour les agents utilisateurs, les serveurs mandataires, les cookies, les en-têtes HTTP et les variables de formulaire afin de prendre en charge la connexion à l'aide de formulaires de connexion HTML.
Suppression des photos dans les publications PDF déjà existantes.
Ajout de texte, de photos, de signets, de filigranes et d'autres éléments aux fichiers PDF.
Des fonctionnalités qui facilitent la fusion et la division des pages de plusieurs documents PDF.
La capacité de transformer les actifs de type média, y compris les fichiers CSS, en documents.
3.0 Installer la bibliothèque
3.1 Installer iText7
Trouvez d'abord iText en utilisant le gestionnaire de paquets NuGet. iText7 et iText.pdfhtml doivent être installés tous les deux car les fonctionnalités de ces paquets sont réparties entre plusieurs paquets.
Installez les paquets suivants comme indiqué ci-dessous si vous préférez utiliser la ligne de commande de Visual Studio :
IText7 étant la version la plus récente, nous l'utilisons dans notre solution.
3.2 Installer la bibliothèque IronPDF
Comme le montre la capture d'écran ci-dessous, nous pouvons facilement rechercher "IronPDF" dans le gestionnaire de paquets :
La liste des résultats de recherche pertinents est affichée dans le graphique ci-dessus. Pour installer le paquet sur votre machine, veuillez cocher les cases nécessaires.
Si vous souhaitez installer le paquet à l'aide de la ligne de commande, ajoutez la ligne suivante dans l'onglet terminal du gestionnaire de paquets :
:PackageInstall
Le paquet est maintenant prêt à être utilisé et sera téléchargé et installé dans le projet actuel.
4.0 Création de PDF
4.1 Utilisation de iTextSharp
Nous pouvons créer des documents PDF avec des tableaux d'octets statiques publics générés à partir du document iText. Voici un exemple qui nous aide à créer un nouveau document à l'aide de la bibliothèque iText PDF.
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.Layout.Properties;
using System.IO;
using iText.Kernel.Geom;
using iText.Html2pdf;
var html = "<h1>Hello world</h1>";
//byte array
byte [] result;
//create new MemoryStream using var ms
using (var ms = new MemoryStream())
{
//new document
var doc = new PdfDocument(new PdfWriter(ms));
doc.SetDefaultPageSize(PageSize.A4);
doc.SetTagged();
HtmlConverter.ConvertToPdf(html, doc, new ConverterProperties());
result = ms.ToArray();
}
File.WriteAllBytes(@"test.pdf", result);
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.Layout.Properties;
using System.IO;
using iText.Kernel.Geom;
using iText.Html2pdf;
var html = "<h1>Hello world</h1>";
//byte array
byte [] result;
//create new MemoryStream using var ms
using (var ms = new MemoryStream())
{
//new document
var doc = new PdfDocument(new PdfWriter(ms));
doc.SetDefaultPageSize(PageSize.A4);
doc.SetTagged();
HtmlConverter.ConvertToPdf(html, doc, new ConverterProperties());
result = ms.ToArray();
}
File.WriteAllBytes(@"test.pdf", result);
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
Imports iText.Layout.Properties
Imports System.IO
Imports iText.Kernel.Geom
Imports iText.Html2pdf
Private html = "<h1>Hello world</h1>"
'byte array
Private result() As Byte
'create new MemoryStream var ms
Using ms = New MemoryStream()
'new document
Dim doc = New PdfDocument(New PdfWriter(ms))
doc.SetDefaultPageSize(PageSize.A4)
doc.SetTagged()
HtmlConverter.ConvertToPdf(html, doc, New ConverterProperties())
result = ms.ToArray()
End Using
File.WriteAllBytes("test.pdf", result)
$vbLabelText $csharpLabel
L'exemple ci-dessus montre que nous créons un document PDF à partir de la chaîne HTML donnée. Tout d'abord, nous créons un MemoryStream pour contenir les données. Ensuite, nous créons PdfWriter et passons le MemoryStream en paramètre pour contenir les données. Ensuite, nous créons le fichier PDF à l'aide de HtmlConverter. Après cela, toutes les sorties ont été enregistrées dans le MemoryStream. Ensuite, nous convertissons les données en octets, puis nous utilisons la classe File pour enregistrer le MemoryStream ms dans un nouveau fichier comme dans l'exemple de sortie ci-dessous.
4.2 Utilisation d'IronPDF
IronPDF rend la création de fichiers PDF très simple avec quelques lignes de code. Vous trouverez ci-dessous un exemple de code permettant de créer un fichier PDF à l'aide d'IronPDF.
var html = "<h1>Hello world</h1>";
var pdf = new IronPdf.ChromePdfRenderer();
var bytedata=pdf.RenderHtmlAsPdf(html).BinaryData;
File.WriteAllBytes(@"test.pdf", bytedata);
var html = "<h1>Hello world</h1>";
var pdf = new IronPdf.ChromePdfRenderer();
var bytedata=pdf.RenderHtmlAsPdf(html).BinaryData;
File.WriteAllBytes(@"test.pdf", bytedata);
Dim html = "<h1>Hello world</h1>"
Dim pdf = New IronPdf.ChromePdfRenderer()
Dim bytedata=pdf.RenderHtmlAsPdf(html).BinaryData
File.WriteAllBytes("test.pdf", bytedata)
$vbLabelText $csharpLabel
Dans la première étape, nous créons un objet pour ChromePdfRenderer qui aide à créer un fichier PDF. Ensuite, nous ajoutons les données HTML dans le document PDF en utilisant la méthode RenderHtmlAsPdf. Nous convertissons ensuite les données en tableau d'octets. La dernière étape consiste à utiliser le fichier qui nous aide à convertir un tableau d'octets en fichier PDF. Le résultat sera le suivant.
iText7 est l'une des bibliothèques PDF les plus utilisées. le code d'iText est très complexe et ne convient pas aux débutants. Nous avons besoin d'une connaissance de base de la bibliothèque pour l'utiliser sur l'application de l'utilisateur. iText génère des fichiers PDF de grande taille, ce qui peut avoir un impact sur la mémoire de l'utilisateur lorsqu'il génère un fichier contenant de nombreuses pages. contrairement aux autres logiciels, iText7 a divisé la bibliothèque en plusieurs paquets. iText7 a des dépendances avec plusieurs paquets. Nous devons télécharger tous les paquets pour que cela fonctionne, ce qui peut augmenter la taille de l'application. Une licence de développement et une licence d'entreprise sont gratuites avec iText. Cliquez ici pour en savoir plus sur la licence iText.
En revanche, IronPDF est facile et simple à utiliser. Quelques lignes de code suffisent pour créer des fichiers PDF. Elle convient aux débutants et aucune connaissance de base n'est nécessaire pour l'utiliser. IronPDF ne dépend d'aucun autre paquetage. Il s'agit d'un paquet solo qui fonctionne tout seul. Les développeurs peuvent choisir parmi une variété de licences à acheter pour répondre à leurs besoins, en plus de la licence gratuite qui est fournie. L'édition Lite $749 inclut bien toutes les fonctionnalités de la bibliothèque, telles qu'une licence permanente, une garantie de remboursement de 30 jours, un an de support logiciel, des mises à niveau et des possibilités de redistribution SaaS et OEM. En outre, il exclut les dépenses récurrentes. Ces licences sont des achats uniques qui peuvent être appliqués au développement, à la mise en scène et à la production. En outre, des licences gratuites limitées dans le temps et non distribuables sont disponibles auprès d'IronPDF. Veuillez cliquer ici pour un détail des prix et des informations sur les licences d'IronPDF.
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.
< PRÉCÉDENT Comparaison entre IronPDF et Foxit PDF SDK
SUIVANT > Comparaison entre iTextSharp et IronPDF pour l'édition des PDF
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