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");
L'amélioration constante de la technologie se traduit par des solutions plus intelligentes qui font gagner du temps à tout le monde, en particulier aux développeurs. L'automatisation est désormais la clé des processus de développement de logiciels. Travailler avec des fichiers PDF en C# s'est avéré difficile pour les développeurs pendant de nombreuses années. Il existe une grande variété de facteurs à prendre en compte lors du rendu de contenu à partir de fichiers PDF, et plus encore lors de la conversion de contenu de différents formats en PDF. Ces problèmes ont été résolus grâce à la création de nombreuses bibliothèques conçues pour lire, écrire, créer et convertir en PDF à partir de différents formats.
Cet article va comparer deux des bibliothèques PDF les plus populaires pour les développeurs .NET et .NET Core. Ces deux bibliothèques sont :
IronPDF
PDFCrowd
IronPDF et PDFCrowd sont deux bibliothèques qui fournissent des méthodes pour créer, manipuler etimprimer des PDF dans .NET et .NET Core. Il s'agit maintenant de déterminer quels sont lesLa bibliothèque PDF C# est la mieux adaptée à votre projet .NET? Vous pouvez peser votre décision en lisant la comparaison suivante entre les deux bibliothèques et leurs caractéristiques respectives pour la conversion et la manipulation des PDF.
Voyons d'abord ce que les deux bibliothèques ont à offrir, puis passons à la comparaison proprement dite.
IronPDF et ses principales caractéristiques
La solution IronPDF .NET PDF Library est un rêve pour les développeurs, en particulier les ingénieurs logiciels qui utilisent C#. Vous pouvez facilement créer une bibliothèque PDF de base pour .NET avec cet excellent outil.
IronPDF utilise un moteur .NET Chromium pour convertir les pages HTML en fichiers PDF. Avec HTML to PDF, il n'est pas nécessaire d'utiliser des API complexes pour positionner ou concevoir des PDF. IronPDF prend en charge les documents Web standard : HTML, ASPX, JS, CSS et images.
Il vous permet également de créer une bibliothèque PDF .NET à l'aide de HTML5, CSS, JavaScript et d'images. Vous pouvez modifier, estampiller et ajouter des en-têtes et des pieds de page à un PDF sans effort. En outre, il est très facile delire du texte PDF et extraire des images.
La bibliothèque IronPDF C# - Caractéristiques principales
Voici quelques-unes de ses principales caractéristiques :
Créer des PDF(html à Pdf)
Créer des documents PDF à partir de HTML 4 et 5, CSS et JavaScript
Générer des documents PDF à partir d'une URL
Chargement d'URL avec des identifiants de connexion personnalisés, User-Agents, Proxies, Cookies, en-têtes HTTP, variables de formulaire permettant la connexion derrière des formulaires de connexion HTML
Éditer des documents PDF existants sans Adobe Acrobat
Lire et remplir les données des champs de formulaire
Extraction d'images et de textes à partir de PDF
Ajouter un nouveau contenu HTML à n'importe quelle page PDF existante
Ajouter des en-têtes et pieds de page logiques ou HTML
Manipuler des documents PDF existants
Chargement et analyse de documents PDF existants
Fusionner et diviser le contenu des documents PDF
Ajouter des en-têtes, des pieds de page, des annotations, des signets, des filigranes, du texte et des images
Convertir à partir de plusieurs formats
ASPX WebForms - convertir, avec 3 lignes de code, des formulaires web ASP.NET en PDF téléchargeables et visualisables dans le navigateur
Document HTML - convertir HTML en PDF
URL de base personnalisée pour permettre l'accès aux fichiers d'actifs sur le web
Mises en page réactives grâce à Virtual Viewport(largeur et hauteur)
Accepter le HTML encodé dans n'importe quel encodage de fichier majeur(La valeur par défaut est UTF-8)
Enregistrer et imprimer
Sauvegarde et chargement à partir d'un fichier, de données binaires ou de flux de mémoire
Types de médias CSS pour l'écran ou l'impression
Transformez les fichiers PDF en objet PrintDocument et imprimez sans Adobe(avec un minimum de code)
Exporter les fichiers journaux officiels avec des détails sur les succès de l'API et les erreurs de débogage dans le code source
La bibliothèque PDFCrowd - Caractéristiques principales
L'API de Pdfcrowd.com est une solution professionnelle pour créer des PDF et des images de capture d'écran à partir de pages Web et de documents HTML. Il s'agit d'un service web en ligne qui vous permet de convertir n'importe quelle page web en PDF. L'API est un service web où vos données sont converties sur les serveurs de PDFCrowd.
Il est de haute qualité et rapide, ce qui vous permet de gagner du temps. Il est sûr et a la capacité de compresser les fichiers.
Fonctionnalités de l'API PDFCrowd
Voici quelques-unes des fonctionnalités les plus importantes de PDFCrowd :
HTML to PDF API
Bibliothèques SDK client API faciles à utiliser
Prise en charge des normes web les plus récentes
L'intégration ne prend que quelques minutes, aucune bibliothèque tierce n'est nécessaire
Disponible pratiquement sur toutes les plateformes - Windows, Linux, macOS, BSD, systèmes de type Unix, etc.
Fiables, largement disponibles et prenant en charge les dernières spécifications HTML5, CSS3 et JavaScript
API Playground
Explorer de manière interactive les paramètres de l'API
Prévisualisation PDF, génération automatique de codes
Convertir des pages web, des fichiers HTML ou du code HTML
Note: PDFCrowd ne fournit pas de SDK autonome pouvant être utilisé hors ligne.
La suite de cet article aborde les sujets suivants :
Création d'un projet
Installation de la bibliothèque C# d'IronPDF
Installation de l'API PDFCrowd
Créer un PDF à partir d'une URL existante
Créer un PDF à partir d'une chaîne de caractères HTML
Convertir des pages ASPX en PDF
Convertir XML en PDF
Convertir des images en PDF
Licences
Résumé et conclusion
1. Création d'un projet ASP.NET
Suivez les étapes suivantes pour créer un site Web ASP.NET :
Ouvrir Visual Studio 2019
Cliquez sur Fichier dans le menu, puis sur "Nouveau projet" pour créer un nouveau projet
Sélectionnez Web sous Visual C# dans la liste déroulante du type de projet
Sélectionnez l'application Web ASP.NET(framework .NET) et cliquez sur OK comme indiqué dans la capture d'écran ci-dessous
Figure 1 - Boîte de dialogue Nouveau projet
Dans l'écran suivant, choisissez "Formulaires Web" comme indiqué dans la capture d'écran ci-dessous.
Figure 2 - Formulaires Web
Une fois que tout est sélectionné, cliquez sur Ok.
Le projet est maintenant créé et nous sommes presque prêts à tester les bibliothèques. Cependant, nous devons encore les installer et les intégrer dans notre projet. Commençons par installer IronPDF.
2. Installation de la bibliothèque C# d'IronPDF
Il existe quatre façons de télécharger et d'installer la bibliothèque IronPDF. Elles sont les suivantes :
Utilisation de Visual Studio
L'invite de commande du développeur
Télécharger directement le paquet NuGet
Télécharger la bibliothèque .DLL d'IronPDF
Examinons chacun d'entre eux de plus près.
2.1 Utilisation de Visual Studio
Visual Studio propose le gestionnaire de paquets NuGet pour installer les paquets NuGet dans vos projets. Vous pouvez y accéder par le menu Projet ou en cliquant avec le bouton droit de la souris sur votre projet dans l'explorateur de solutions. Ces deux options sont illustrées ci-dessous dans les captures d'écran des figures 3 et 4.
Figure 3 - Menu Projet > Gérer les paquets NuGet
Figure 4 - Cliquer avec le bouton droit de la souris sur l'explorateur de solutions
Une fois sélectionné, recherchez le paquet IronPDF et installez-le, comme le montre la capture d'écran ci-dessous.
Figure 5 - Installer IronPDF à partir d'un paquet NuGet
2.2 Utilisation de l'invite de commande Developer
Une autre façon de télécharger et d'installer la bibliothèque IronPDF C# est de suivre les étapes suivantes pour installer le paquet IronPDF NuGet via l'Invite de commande Developer.
Ouvrez l'invite de commande Developer - qui se trouve généralement dans le dossier Visual Studio
Tapez la commande suivante :
:ProductInstall
Appuyer sur Entrée
Cette opération permet de télécharger et d'installer le paquet
Rechargez votre projet Visual Studio et commencez à l'utiliser
2.3. Télécharger directement le paquet NuGet
La troisième façon de télécharger et d'installer IronPDF est de suivre les étapes ci-dessous. Pour ce faire, il suffit de se rendre directement sur le site de NuGet et de télécharger le paquetage. Les étapes sont les suivantes :
Rechargez votre projet Visual Studio et commencez à l'utiliser
2.4. Installez IronPDF en téléchargeant la bibliothèque
Vous pouvez télécharger directement le fichier .DLL d'IronPDF à partir du site web. Il peut être téléchargé directement à partir du sitePage de téléchargement de la DLL IronPDF.
Figure 6 - Téléchargement direct de la bibliothèque C# d'IronPDF
Faites référence à la bibliothèque dans votre projet en suivant les étapes suivantes :
Cliquez avec le bouton droit de la souris sur la solution dans l'explorateur de solutions
Sélectionner les références
Recherchez la bibliothèque IronPDF.dll
Cliquez sur OK
Tout est fait! IronPDF est téléchargé, installé et prêt à l'emploi. Cependant, avant cela, nous devons installer l'API PDFCrowd.
3.Installation de l'API PDFCrowd
Authentication
L'authentification est nécessaire pour utiliser le client API de Pdfcrowd. Les informations d'identification utilisées pour accéder à l'API sont votre nom d'utilisateur Pdfcrowd et la clé API.
Bibliothèque client API de pdfcrowd pour .NET
La bibliothèque client Pdfcrowd API vous permet d'exécuter des conversions entre HTML, PDF et divers formats d'image. La bibliothèque client .NET API permet une mise en œuvre facile de l'API .NETL'API Pdfcrowd dans vos applications .NET.
Il y a trois façons d'installer la bibliothèque client API de PDFCrowd pour .NET :
Téléchargement direct du client Pdfcrowd au format Zip
Via le NuGet Package Manager pour le package client officiel Pdfcrowd
Le dépôt Pdfcrowd GitHub
Examinons chacun d'entre eux de plus près.
3.1 Téléchargement direct
Téléchargerpdfcrowd-5.2.0-dotnet.zipdécompressez-le et ajoutez une référence à pdfcrowd.dll dans votre projet.
Faites référence à la bibliothèque dans votre projet en suivant les étapes suivantes :
Cliquez avec le bouton droit de la souris sur la solution dans l'explorateur de solutions
Sélectionner les références
Rechercher la bibliothèque pdfcrowd.dll
Cliquez sur OK
3.2 Le gestionnaire de paquets NuGet via l'invite de commande du développeur
Une autre façon de télécharger et d'installer l'API PDFCrowd est d'utiliser les étapes suivantes pour installer le PDFCrowd API Client NuGet package à l'aide de l'Invite de commande du développeur.
Ouvrez l'invite de commande Developer - qui se trouve généralement dans le dossier Visual Studio
Cette opération permet de télécharger et d'installer le paquet
Rechargez votre projet Visual Studio et commencez à l'utiliser
3.3 Dépôt GitHub
Pour installer PDFCrowd, vous pouvez clonerpdfcrowd-dotnet vous pouvez télécharger la bibliothèque à partir de GitHub et la créer. Cette bibliothèque client est placée sous la licence MIT.
Utilisez les commandes suivantes pour créer la bibliothèque PDFCrowd API Client :
Maintenant que nous avons créé le projet et installé les bibliothèques nécessaires, commençons à comparer les bibliothèques IronPDF et PDFCrowd en termes de code.
4. Créer un PDF à partir d'une URL existante
Les deux bibliothèques permettent de convertir une page web HTML en PDF. Examinons le code de chaque bibliothèque, une par une.
4.1. Conversion d'une URL existante en PDF à l'aide d'IronPDF
IronPDF rend très simple le rendu de HTML à partir d'URL existants en tant que documents PDF. Le niveau de prise en charge de JavaScript, des images, des formulaires et de CSS est très élevé.
Le code suivant utilise IronPDF pour créer un document PDF directement à partir de l'adresse d'un site web.
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
using var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
Dim Renderer As New IronPdf.ChromePdfRenderer()
Dim Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
Pdf.SaveAs("url.pdf")
4.2 URL existante transformée en PDF à l'aide de PDFCrowd
Avec PDFCrowd, il est également très facile de convertir des URL en documents PDF. Le code suivant utilise PDFCrowd pour générer un document PDF directement à partir de l'adresse d'un site web.
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");
// run the conversion and write the result to a file
client.convertUrlToFile("http://www.pdfcrowd.com", "example.pdf");
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");
// run the conversion and write the result to a file
client.convertUrlToFile("http://www.pdfcrowd.com", "example.pdf");
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d")
' run the conversion and write the result to a file
client.convertUrlToFile("http://www.pdfcrowd.com", "example.pdf")
5. Créer un PDF à partir d'une chaîne de caractères HTML
IronPDF et PDFCrowd permettent tous deux de générer des PDF à partir d'une chaîne de caractères contenant du HTML. Tous deux n'utilisent que deux lignes de code pour accomplir cette tâche.
5.1. Chaîne d'entrée HTML à l'aide d'IronPDF
Le code suivant montre qu'un document PDF peut être rendu à l'aide d'une chaîne d'entrée HTML. Vous pouvez opter pour du simple HTML ou incorporer du CSS, des images et du JavaScript.
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");
// Load external html assets: images, css, and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
var Renderer = new IronPdf.ChromePdfRenderer();
using var PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>");
PDF.SaveAs("pixel-perfect.pdf");
// Load external html assets: images, css, and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
using var AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
AdvancedPDF.SaveAs("html-with-assets.pdf");
Dim Renderer = New IronPdf.ChromePdfRenderer()
Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>")
PDF.SaveAs("pixel-perfect.pdf")
' Load external html assets: images, css, and javascript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Dim AdvancedPDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
AdvancedPDF.SaveAs("html-with-assets.pdf")
5.2. Chaîne d'entrée HTML avec PDFCrowd
Le code suivant montre qu'un document PDF peut être généré à partir d'une chaîne de caractères contenant du HTML. La chaîne d'entrée HTML peut également être utilisée pour convertir un fichier PDF en mémoire et écrire le fichier PDF résultant dans un flux de sortie.
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");
// run the conversion and write the result to a file
client.convertStringToFile("<html><body><h1>Hello World!</h1></body></html>", "HelloWorld.pdf");
// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertString("<html><body><h1>Hello World!</h1></body></html>");
// at this point the "pdf" variable contains PDF raw data and
// can be sent in an HTTP response, saved to a file, etc.
// create an output stream for the conversion result
FileStream outputStream = new FileStream("HelloWorld.pdf", FileMode.CreateNew);
// run the conversion and write the result into the output stream
client.convertStringToStream("<html><body><h1>Hello World!</h1></body></html>", outputStream);
// close the output stream
outputStream.Close();
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");
// run the conversion and write the result to a file
client.convertStringToFile("<html><body><h1>Hello World!</h1></body></html>", "HelloWorld.pdf");
// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertString("<html><body><h1>Hello World!</h1></body></html>");
// at this point the "pdf" variable contains PDF raw data and
// can be sent in an HTTP response, saved to a file, etc.
// create an output stream for the conversion result
FileStream outputStream = new FileStream("HelloWorld.pdf", FileMode.CreateNew);
// run the conversion and write the result into the output stream
client.convertStringToStream("<html><body><h1>Hello World!</h1></body></html>", outputStream);
// close the output stream
outputStream.Close();
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d")
' run the conversion and write the result to a file
client.convertStringToFile("<html><body><h1>Hello World!</h1></body></html>", "HelloWorld.pdf")
' run the conversion and store the result into the "pdf" variable
Dim pdf() As Byte = client.convertString("<html><body><h1>Hello World!</h1></body></html>")
' at this point the "pdf" variable contains PDF raw data and
' can be sent in an HTTP response, saved to a file, etc.
' create an output stream for the conversion result
Dim outputStream As New FileStream("HelloWorld.pdf", FileMode.CreateNew)
' run the conversion and write the result into the output stream
client.convertStringToStream("<html><body><h1>Hello World!</h1></body></html>", outputStream)
' close the output stream
outputStream.Close()
Convertir des pages ASPX en PDF
Le code suivant pour IronPDF et PDFCrowd crée un document PDF à partir d'une page web ASP.NET.
6.1. Conversion d'une page ASPX en PDF à l'aide d'IronPDF
Le code suivant rend le fichier de la page web ASPX au format PDF à l'aide d'IronPDF. Il s'agit d'un code d'une seule ligne, très facile à utiliser. D'autres options peuvent être ajoutées aux paramètres du PDF lors du rendu.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
6.2. Conversion d'une page ASPX en PDF à l'aide de PDFCrowd
Le code suivant rend le fichier de la page web ASPX au format PDF à l'aide de PDFCrowd. Cela vous permet de définir des en-têtes de réponse HTTP complets et d'envoyer le résultat dans la réponse HTTP pour qu'il soit visualisé dans le navigateur web au format PDF.
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");
// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertUrl("https://en.wikipedia.org");
// set HTTP response headers
Response.ContentType = "application/pdf";
Response.Headers.Add("Cache-Control", "max-age=0");
Response.Headers.Add("Accept-Ranges", "none");
Response.Headers.Add("Content-Disposition", "attachment; filename*=UTF-8''" + Uri.EscapeUriString("result.pdf"));
// send the result in the HTTP response
Response.OutputStream.Write(pdf, 0, pdf.Length);
Response.Flush();
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d");
// run the conversion and store the result into the "pdf" variable
byte [] pdf = client.convertUrl("https://en.wikipedia.org");
// set HTTP response headers
Response.ContentType = "application/pdf";
Response.Headers.Add("Cache-Control", "max-age=0");
Response.Headers.Add("Accept-Ranges", "none");
Response.Headers.Add("Content-Disposition", "attachment; filename*=UTF-8''" + Uri.EscapeUriString("result.pdf"));
// send the result in the HTTP response
Response.OutputStream.Write(pdf, 0, pdf.Length);
Response.Flush();
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("demo", "ce544b6ea52a5621fb9d55f8b542d14d")
' run the conversion and store the result into the "pdf" variable
Dim pdf() As Byte = client.convertUrl("https://en.wikipedia.org")
' set HTTP response headers
Response.ContentType = "application/pdf"
Response.Headers.Add("Cache-Control", "max-age=0")
Response.Headers.Add("Accept-Ranges", "none")
Response.Headers.Add("Content-Disposition", "attachment; filename*=UTF-8''" & Uri.EscapeUriString("result.pdf"))
' send the result in the HTTP response
Response.OutputStream.Write(pdf, 0, pdf.Length)
Response.Flush()
7. Convertir XML en PDF
Le code suivant prend le XML et le convertit en PDF pour IronPDF et PDFCrowd API.
7.1. Convertir XML en PDF à l'aide d'IronPDF
C# XML vers PDF directement peut être un défi complexe. Nous avons constaté que pour convertir du XML en PDF en C#, il est préférable de commencer par XSLT. XML peut être converti en PDF via HTML(5) à l'aide de transformations XLST.
private void XMLtoPDF(string XSLT, string XML)
{
XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(XSLT)))
{
transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(XML)))
{
transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
// options, headers, and footers may be set there
// Render our XML as a PDF via XSLT
using var PDF = Renderer.RenderHtmlAsPdf(results.ToString());
PDF.SaveAs("XMLtoPDF.pdf");
}
private void XMLtoPDF(string XSLT, string XML)
{
XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(XSLT)))
{
transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(XML)))
{
transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
// options, headers, and footers may be set there
// Render our XML as a PDF via XSLT
using var PDF = Renderer.RenderHtmlAsPdf(results.ToString());
PDF.SaveAs("XMLtoPDF.pdf");
}
Private Sub XMLtoPDF(ByVal XSLT As String, ByVal XML As String)
Dim transform As New XslCompiledTransform()
Using reader As XmlReader = XmlReader.Create(New StringReader(XSLT))
transform.Load(reader)
End Using
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(XML))
transform.Transform(reader, Nothing, results)
End Using
Dim Renderer As New IronPdf.ChromePdfRenderer()
' options, headers, and footers may be set there
' Render our XML as a PDF via XSLT
Dim PDF = Renderer.RenderHtmlAsPdf(results.ToString())
PDF.SaveAs("XMLtoPDF.pdf")
End Sub
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:template match="/"> <html> <body> <h2> My CD Collection</h2> <p> Titles: <xsl:for-@each @select="catalog/cd"> <xsl:value-@of @select="title"/> <xsl:if test="position() < last()-1"> <xsl:text>, </xsl:text> </xsl:if> <xsl:if test="position()=last()-1"> <xsl:text>, @and </xsl:text> </xsl:if> <xsl:if test="position()=last()"> <xsl:text>!</xsl:text> </xsl:if> </xsl:for-@each> </p> </body> </html> </xsl:template> </xsl:stylesheet>
7.2. Convertir XML en PDF avec PDFCrowd
Le client API de PDFCrowd permet le rendu des modèles HTML. La syntaxe des modèles est basée sur le moteur de rendu des modèles de Jinja. Le format XML est également pris en charge par le client API de PDFCrowd et peut être utilisé avec cette syntaxe.
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("{{ user_name }}", "{{ api_key }}");
// configure the conversion
client.setDataString(@"<?xml version=""1.0"" encoding=""UTF-8""?>
<data>
<name>World</name>
<product>Pdfcrowd API</product>
</data>");
// run the conversion and write the result to a file
client.convertStringToFile("Hello {{ data.name }} from {{ data.product }}", "output.pdf");
// create the API client instance
pdfcrowd.HtmlToPdfClient client = new pdfcrowd.HtmlToPdfClient("{{ user_name }}", "{{ api_key }}");
// configure the conversion
client.setDataString(@"<?xml version=""1.0"" encoding=""UTF-8""?>
<data>
<name>World</name>
<product>Pdfcrowd API</product>
</data>");
// run the conversion and write the result to a file
client.convertStringToFile("Hello {{ data.name }} from {{ data.product }}", "output.pdf");
' create the API client instance
Dim client As New pdfcrowd.HtmlToPdfClient("{{ user_name }}", "{{ api_key }}")
' configure the conversion
client.setDataString("<?xml version=""1.0"" encoding=""UTF-8""?>
<data>
<name>World</name>
<product>Pdfcrowd API</product>
</data>")
' run the conversion and write the result to a file
client.convertStringToFile("Hello {{ data.name }} from {{ data.product }}", "output.pdf")
8. Convertir des images en PDF
8.1. Convertir des images en PDF à l'aide d'IronPDF
Dans la bibliothèque IronPDF, les documents PDF peuvent être facilement construits à partir d'un ou plusieurs fichiers d'images en utilisant la classe IronPdf.ImageToPdfConverter.
// One or more images as IEnumerable. This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg")
f.EndsWith(".jpeg"));
// Convert the images to a PDF and save it.
using var PDF = ImageToPdfConverter.ImageToPdf(ImageFiles);
PDF.SaveAs(@"C:\project\composite.pdf");
//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
// One or more images as IEnumerable. This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg")
f.EndsWith(".jpeg"));
// Convert the images to a PDF and save it.
using var PDF = ImageToPdfConverter.ImageToPdf(ImageFiles);
PDF.SaveAs(@"C:\project\composite.pdf");
//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
IRON VB CONVERTER ERROR developers@ironsoftware.com
8.2. Convertir des images en PDF à l'aide de PDFCrowd
PDFCrowd permet également de convertir des images en PDF grâce à diverses options. Il offre également la possibilité de convertir une image à partir d'une URL. Le code suivant montre comment convertir une image en PDF à partir d'un stockage local.
// create the API client instance
pdfcrowd.ImageToPdfClient client = new pdfcrowd.ImageToPdfClient("your_username", "your_apikey");
// run the conversion and write the result to a file
client.convertFileToFile("/path/to/logo.png", "logo.pdf");
// create the API client instance
pdfcrowd.ImageToPdfClient client = new pdfcrowd.ImageToPdfClient("your_username", "your_apikey");
// run the conversion and write the result to a file
client.convertFileToFile("/path/to/logo.png", "logo.pdf");
' create the API client instance
Dim client As New pdfcrowd.ImageToPdfClient("your_username", "your_apikey")
' run the conversion and write the result to a file
client.convertFileToFile("/path/to/logo.png", "logo.pdf")
9. Licences
PDFCrowd est un service web qui permet de créer en ligne des fichiers PDF à partir d'autres formats. Il propose différentes structures de prix, la plus basse étant de 11 $/mois pour une limite de 200 crédits, où 1 crédit équivaut à 0,5 Mo de données de sortie. Vous pouvez également vous inscrire pour un essai gratuit. Les tarifs détaillés peuvent être consultés sur le sitepage de tarification de PDFCrowd.
IronPDF, quant à lui, est une bibliothèque PDF C#. Il est gratuit pour le développement et peut toujours faire l'objet d'une licence pour un déploiement commercial. Les licences pour IronPDF sont disponibles la traduction est destinée à l'utilisation de projets uniques, aux développeurs individuels, aux agences et aux entreprises internationales, ainsi qu'à la redistribution SaaS et OEM. Toutes les licences comprennent : une garantie de remboursement de 30 jours, un an d'assistance et de mises à jour du produit, la validité pour le développement, la mise en place et la production, ainsi qu'une licence permanente(achat unique). Le paquet Lite commence à partir de $749. Les forfaits IronPDF sont permanents et il n'y a pas de coûts permanents, alors qu'en comparaison, PDFCrowd a des coûts permanents.
10. Résumé et conclusion
Résumé
IronPDF ne convertit pas le HTML en PDF à partir d'un serveur distant. Il lance en fait une instance d'un véritable navigateur web conforme aux normes dans les coulisses(sans qu'il soit nécessaire d'installer un logiciel supplémentaire). Le HTML est rendu avec une précision totale - et dans un format vectoriel adapté aux normes les plus élevées de l'impression commerciale. Le résultat est un PDF propre et de haute qualité. Il s'agit d'un produit ouvertement commercial, dont les détails concernant les licences et les prix sont publiés sur le site web.
PDFCrowd convertit également le HTML de n'importe quel format donné en PDF avec la plus grande précision et sans aucun temps d'arrêt, puisqu'il fonctionne sur des serveurs en nuage à plusieurs endroits. PDFCrowd est une API basée sur le web qui offre un service en ligne de conversion au format PDF. Les bibliothèques client API côté serveur facilitent l'utilisation de l'API HTML to PDF de Pdfcrowd. Ces bibliothèques sont disponibles dans un grand nombre de langages de programmation côté serveur. Les tarifs sont indiqués sur le site web.
Conclusion
IronPDF a un léger avantage sur PDFCrowd car il peut fonctionner hors ligne une fois installé. IronPDF est fortement recommandé aux codeurs pragmatiques qui cherchent à travailler de manière efficace et efficiente. Plus important encore, il permet de gagner du temps. PDFCrowd peut s'avérer utile lorsqu'il s'agit de traiter des PDF dans différents langages côté serveur. De plus, les packages IronPDF fournissent une licence à vie, et il n'y a pas de coûts permanents, alors que PDFCrowd a des coûts permanents.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT Accusoft Prizmdoc PDF Viewer Tutoriel et comparaison
SUIVANT > IronPDF et Docraptor - Une comparaison complète
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