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");
Ständig verbesserte Technologien bedeuten intelligentere, zeitsparende Lösungen für alle, insbesondere für Entwickler. Die Automatisierung ist heute der Schlüssel zu den Softwareentwicklungsprozessen. Die Arbeit mit PDF-Dateien in C# hat sich für Entwickler über viele Jahre hinweg als schwierig erwiesen. Bei der Wiedergabe von Inhalten aus PDF-Dateien und erst recht bei der Konvertierung von Inhalten aus anderen Formaten in PDF ist eine Vielzahl von Faktoren zu berücksichtigen. Diese Probleme wurden nun mit der Fertigstellung zahlreicher Bibliotheken gelöst, die zum Lesen, Schreiben, Erstellen und Konvertieren in PDF aus verschiedenen Formaten entwickelt wurden.
In diesem Artikel werden zwei der beliebtesten PDF-Bibliotheken für .NET- und .NET Core-Entwickler verglichen. Diese beiden Bibliotheken sind:
IronPDF
PDFCrowd
IronPDF und PDFCrowd sind beide Bibliotheken, die Methoden zum Erstellen, Bearbeiten und Drucken von PDFs in .NET und .NET Core bereitstellen. Die nächste Frage ist, welche C# PDF Library am besten für Ihr .NET-Projekt geeignet ist? Sie können Ihre Entscheidung abwägen, wenn Sie den folgenden Vergleich zwischen den beiden Bibliotheken und ihren jeweiligen herausragenden Funktionen für die Konvertierung und Bearbeitung von PDF-Dateien lesen.
Schauen wir uns zunächst an, was beide Bibliotheken zu bieten haben, und gehen wir dann zum eigentlichen Vergleich über.
IronPDF und seine Hauptfunktionen
IronPDF for .NET PDF Library ist ein Traum für Entwickler, insbesondere für Softwareingenieure, die C# verwenden. Mit diesem hervorragenden Tool können Sie ganz einfach eine PDF-Kernbibliothek für .NET erstellen.
IronPDF verwendet eine .NET Chromium-Engine, um HTML-Seiten in PDF-Dateien umzuwandeln. Mit HTML to PDF müssen Sie keine komplexen APIs verwenden, um PDFs zu positionieren oder zu gestalten. IronPDF unterstützt Standard-Webdokumente: HTML, ASPX, JS, CSS und Bilder.
Außerdem können Sie damit eine .NET-PDF-Bibliothek mit HTML5, CSS, JavaScript und Bildern erstellen. Sie können eine PDF-Datei mühelos bearbeiten, stempeln und Kopf- und Fußzeilen hinzufügen. Außerdem erleichtert es das Lesen von PDF-Text und das Extrahieren von Bildern.
Die IronPDF C# Bibliothek - Herausragende Eigenschaften
Einige der wichtigsten Merkmale sind:
PDFs erstellen (Html zu Pdf)
PDF-Dokumente aus HTML 4 und 5, CSS und JavaScript erstellen
PDF-Dokumente aus URL generieren
URL mit benutzerdefinierten Netzwerk-Anmeldedaten, User-Agents, Proxies, Cookies, HTTP-Header, Formularvariablen laden, die eine Anmeldung hinter HTML-Anmeldeformularen ermöglichen
Bearbeiten Sie bestehende PDF-Dokumente ohne Adobe Acrobat
Daten aus Formularfeldern lesen und ausfüllen
Bilder und Texte aus PDF extrahieren
Stempeln Sie neue HTML-Inhalte auf jede bestehende PDF-Seite
Logische oder HTML-Kopf- und Fußzeilen hinzufügen
Bestehende PDF-Dokumente bearbeiten
Laden und Parsen vorhandener PDF-Dokumente
Zusammenführen und Aufteilen von Inhalten in PDF-Dokumenten
Hinzufügen von Kopf- und Fußzeilen, Anmerkungen, Lesezeichen, Wasserzeichen, Text- und Bildelementen
Konvertieren aus mehreren Formaten
ASPX WebForms - konvertiert mit 3 Zeilen Code ASP.NET Webformulare in herunterladbare PDFs, die im Browser angezeigt werden können
HTML-Dokument - HTML in PDF konvertieren
Benutzerdefinierte "Basis-URL" für den Zugriff auf Asset-Dateien im Web
Responsive Layouts über virtuellen Viewport (Breite und Höhe)
Akzeptiert HTML in jeder gängigen Dateikodierung (Standard ist UTF-8)
Speichern und Drucken
Speichern und Laden von Dateien, Binärdaten oder MemoryStreams
Bildschirm- oder Druck-CSS-Medientypen
Umwandlung von PDF-Dateien in ein PrintDocument-Objekt und Drucken ohne Adobe (mit minimalem Code)
Exportieren Sie offizielle Protokolldateien mit Details über API-Erfolg und Debug-Fehler im Quellcode
Die PDFCrowd-Bibliothek - Herausragende Eigenschaften
Die Pdfcrowd.com API ist eine professionelle Lösung zur Erstellung von PDF- und Screenshot-Bildern aus Webseiten und HTML-Dokumenten. Es ist ein Online-Webdienst, mit dem Sie jede beliebige Webseite in PDF umwandeln können. Die API ist ein Webservice, bei dem Ihre Eingaben auf PDFCrowd-Servern konvertiert werden.
Es ist qualitativ hochwertig und schnell und spart Ihnen dadurch Zeit. Es ist sicher und hat die Fähigkeit, Dateien zu komprimieren.
PDFCrowd API-Funktionen
Hier sind einige der wichtigsten Funktionen von PDFCrowd:
HTML zu PDF API
Einfach zu verwendende API-Client-SDK-Bibliotheken
Unterstützung für die neuesten Webstandards
Die Einrichtung der Integration dauert nur wenige Minuten, es werden keine Bibliotheken von Drittanbietern benötigt
Zuverlässig, weithin verfügbar und mit Unterstützung für die neuesten HTML5-, CSS3- und JavaScript-Spezifikationen
API-Spielplatz
Interaktives Erkunden der API-Einstellungen
PDF-Vorschau, automatische Codegenerierung
Webseiten, HTML-Dateien oder HTML-Code konvertieren
Hinweis: PDFCrowd bietet kein eigenständiges SDK an, das offline verwendet werden kann.
Im weiteren Verlauf dieses Artikels werden die folgenden Themen behandelt:
Ein Projekt erstellen
IronPDF C# Bibliothek Installation
PDFCrowd API-Installation
Erstellen einer PDF-Datei aus einer vorhandenen URL
PDF aus HTML-Input-String erstellen
ASPX-Seiten in PDF konvertieren
XML in PDF konvertieren
Bilder in PDF konvertieren
Lizenzvergabe
Zusammenfassung und Schlussfolgerung
1. Erstellen eines ASP.NET-Projekts
Gehen Sie wie folgt vor, um eine ASP.NET-Website zu erstellen:
Visual Studio 2019 öffnen
Klicken Sie im Menü auf Datei und dann auf "Neues Projekt", um ein neues Projekt zu erstellen
Wählen Sie im Listenfeld Projekttyp unter Visual C# die Option Web
Wählen Sie ASP.NET-Webanwendung (.NET Framework) aus und klicken Sie auf OK, wie im unten stehenden Screenshot gezeigt.
Abbildung 1 – Dialogfeld Neues Projekt
Wählen Sie auf dem nächsten Bildschirm "Webformulare", wie in der Abbildung unten gezeigt.
Abbildung 2 – Webformulare
Wenn Sie alles ausgewählt haben, klicken Sie auf Ok.
Jetzt ist das Projekt erstellt und wir sind fast bereit, die Bibliotheken zu testen. Wir müssen sie jedoch noch installieren und in unser Projekt integrieren. Installieren wir zunächst IronPDF.
2. IronPDF C# Installation der Bibliothek
Es gibt vier Möglichkeiten, die IronPDF-Bibliothek herunterzuladen und zu installieren. Sie lauten wie folgt:
Verwendung von Visual Studio
Die Eingabeaufforderung für Entwickler
Laden Sie das NuGet-Paket direkt herunter
Die IronPDF .DLL-Bibliothek herunterladen
Schauen wir uns jede einzelne davon genauer an.
2.1 Visual Studio verwenden
Visual Studio bietet den NuGet Package Manager, um NuGet-Pakete in Ihren Projekten zu installieren. Sie können über das Projektmenü darauf zugreifen, oder indem Sie mit der rechten Maustaste auf Ihr Projekt im Projektmappen-Explorer klicken. Diese beiden Optionen sind in den Abbildungen 3 und 4 dargestellt.
Figure 3 – Project Menu > Manage NuGet Packages
Abbildung 4 – Rechtsklick auf den Lösungsexplorer
Nach der Auswahl suchen Sie nach dem IronPDF-Paket und installieren es, wie in der folgenden Abbildung gezeigt.
Abbildung 5 – Installation von IronPDF aus dem NuGet-Paket
2.2 Verwenden der Eingabeaufforderung für Entwickler
Eine weitere Möglichkeit, die IronPDF C#-Bibliothek herunterzuladen und zu installieren, besteht darin, die folgenden Schritte zu nutzen, um das IronPDF NuGet-Paket über die Developer Command Prompt zu installieren.
Öffnen Sie die Developer Command Prompt – normalerweise im Visual Studio-Ordner zu finden
Geben Sie den folgenden Befehl ein:
:ProductInstall
Eingabe drücken
Dadurch wird das Paket heruntergeladen und installiert
Laden Sie Ihr Visual Studio-Projekt neu und verwenden Sie es
2.3. Direktes Herunterladen des NuGet-Pakets
Die dritte Möglichkeit, IronPDF herunterzuladen und zu installieren, ist, den folgenden Schritten zu folgen. Dazu können Sie direkt die NuGet-Website besuchen und das Paket herunterladen. Die Schritte sind:
Laden Sie Ihr Visual Studio-Projekt neu und verwenden Sie es
2.4. Installieren Sie IronPDF, indem Sie die Bibliothek herunterladen
Sie können die IronPDF .DLL-Datei direkt von der Website herunterladen. Sie kann direkt von der IronPDF DLL-Download-Seite heruntergeladen werden.
Abbildung 6 – Direkter Download der IronPDF C#-Bibliothek
Verweisen Sie auf die Bibliothek in Ihrem Projekt, indem Sie die folgenden Schritte ausführen:
Klicken Sie mit der rechten Maustaste auf die Lösung im Projektmappen-Explorer
Referenzen auswählen
Suchen Sie nach der IronPDF.dll-Bibliothek
OK anklicken
Fertig! IronPDF ist heruntergeladen, installiert und einsatzbereit. Zuvor sollten wir jedoch die PDFCrowd API installieren.
3.PDFCrowd API-Installation
Authentifizierung
Für die Nutzung des Pdfcrowd API-Clients ist eine Authentifizierung erforderlich. Die Anmeldedaten für den Zugriff auf die API sind Ihr Pdfcrowd-Benutzername und der API-Schlüssel.
Pdfcrowd API-Client-Bibliothek für .NET
Mit der Pdfcrowd-API-Client-Bibliothek können Sie Konvertierungen zwischen HTML, PDF und verschiedenen Bildformaten durchführen. Die .NET-API-Clientbibliothek ermöglicht eine einfache Implementierung der Pdfcrowd-API in Ihren .NET-Anwendungen.
Es gibt drei Möglichkeiten, die PDFCrowd API Client Library für .NET zu installieren:
Direkter Download des Pdfcrowd-Clients als Zip
Über den NuGet-Paket-Manager für das offizielle Pdfcrowd-Clientpaket
Das Pdfcrowd-GitHub-Repository
Schauen wir uns jede einzelne davon genauer an.
3.1 Direkter Download
Laden Sie pdfcrowd-5.2.0-dotnet.zip herunter, entpacken Sie es und fügen Sie eine Referenz zu pdfcrowd.dll zu Ihrem Projekt hinzu.
Verweisen Sie auf die Bibliothek in Ihrem Projekt, indem Sie die folgenden Schritte ausführen:
Klicken Sie mit der rechten Maustaste auf die Lösung im Projektmappen-Explorer
Referenzen auswählen
Suchen Sie nach der pdfcrowd.dll-Bibliothek
OK anklicken
3.2 Der NuGet-Paketmanager über die Entwickler-Eingabeaufforderung
Eine weitere Möglichkeit, die PDFCrowd API herunterzuladen und zu installieren, besteht darin, die folgenden Schritte zu nutzen, um das PDFCrowd API Client NuGet-Paket über die Developer Command Prompt zu installieren.
Öffnen Sie Developer Command Prompt – normalerweise im Visual Studio-Ordner zu finden
Geben Sie den folgenden Befehl ein: PM > Install-Package Pdfcrowd.official -Version 5.2.0
Eingabe drücken
Dadurch wird das Paket heruntergeladen und installiert
Laden Sie Ihr Visual Studio-Projekt neu und verwenden Sie es
3.3 GitHub-Repository
Um PDFCrowd zu installieren, können Sie pdfcrowd-dotnet von GitHub klonen und die Bibliothek erstellen. Diese Client-Bibliothek ist unter der MIT-Lizenz lizenziert.
Verwenden Sie die folgenden Befehle, um die PDFCrowd API Client-Bibliothek zu erstellen:
Nachdem wir nun das Projekt erstellt und die erforderlichen Bibliotheken installiert haben, wollen wir die IronPDF- und PDFCrowd-Bibliotheken im Hinblick auf den Code vergleichen.
4. Erstellen einer PDF-Datei aus einer vorhandenen URL
Beide Bibliotheken bieten die Möglichkeit, eine HTML-Webseite in PDF zu konvertieren. Schauen wir uns den Code für jede Bibliothek einzeln an.
4.1. Vorhandene URL mit IronPDF in PDF umwandeln
IronPDF macht es sehr einfach, HTML aus bestehenden URLs als PDF-Dokumente zu rendern. Es gibt ein sehr hohes Maß an Unterstützung für JavaScript, Bilder, Formulare und CSS.
Der folgende Code verwendet IronPDF, um ein PDF-Dokument direkt von einer Website-Adresse zu erstellen.
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")
$vbLabelText $csharpLabel
4.2 Vorhandene URL in PDF mit PDFCrowd
Mit PDFCrowd ist es auch sehr einfach, URLs in PDF-Dokumente zu konvertieren. Der folgende Code verwendet PDFCrowd, um ein PDF-Dokument direkt von einer Website-Adresse zu erzeugen.
// 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")
$vbLabelText $csharpLabel
5. PDF aus HTML-Input-String erstellen
IronPDF und PDFCrowd bieten beide die Möglichkeit, PDFs aus einer Zeichenkette mit HTML zu erzeugen. Beide verwenden nur zwei Codezeilen, um diese Aufgabe zu erfüllen.
5.1. HTML-Eingabezeichenfolge mit IronPDF
Der folgende Code zeigt, dass ein PDF-Dokument mithilfe einer HTML-Eingabezeichenfolge gerendert werden kann. Sie können einfaches HTML wählen oder auch CSS, Bilder und JavaScript einbinden.
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")
$vbLabelText $csharpLabel
5.2. HTML-Eingabe-String mit PDFCrowd
Der folgende Code zeigt, dass ein PDF-Dokument mit Hilfe einer Zeichenkette, die HTML enthält, erzeugt werden kann. Die HTML-Eingabezeichenfolge kann auch zur Konvertierung in speicherinterne PDF-Dateien und zum Schreiben der resultierenden PDF-Datei in einen Ausgabestrom verwendet werden.
// 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()
$vbLabelText $csharpLabel
ASPX-Seiten in PDF konvertieren
Der folgende Code für IronPDF und PDFCrowd erstellt ein PDF-Dokument aus einer ASP.NET-Webseite.
6.1. ASPX Seite zu PDF mit IronPDF
Der folgende Code rendert die ASPX-Webseitendatei mit IronPDF in PDF. Dies ist ein einzeiliger Code und sehr einfach zu verwenden. Während des Renderns können den PDF-Einstellungen weitere Optionen hinzugefügt werden.
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
$vbLabelText $csharpLabel
6.2. ASPX-Seite zu PDF mit PDFCrowd
Der folgende Code rendert die ASPX-Webseitendatei mithilfe von PDFCrowd in PDF. Damit können Sie vollständige HTTP-Antwort-Header festlegen und das Ergebnis in der HTTP-Antwort zur Anzeige im Webbrowser als PDF senden.
// 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()
$vbLabelText $csharpLabel
7. XML in PDF konvertieren
Der folgende Code wandelt XML in PDF für IronPDF und PDFCrowd API um.
7.1. Konvertieren von XML in PDF mit IronPDF
Die direkte Umwandlung von C# XML in PDF kann eine komplexe Herausforderung sein. Wir haben festgestellt, dass es bei der Konvertierung von XML in PDF in C# am besten ist, mit XSLT zu beginnen. XML kann über HTML(5) mittels XLST-Transformationen in PDF gerendert werden.
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
Der PDFCrowd API Client ermöglicht das Rendern von HTML-Templates. Die Template-Syntax basiert auf der Jinja Template Rendering Engine. Das XML-Format wird auch von PDFCrowd API Client unterstützt und kann mit dieser Syntax verwendet werden.
// 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")
$vbLabelText $csharpLabel
8. Bilder in PDF konvertieren
8.1. Bilder mit IronPDF in PDF konvertieren
In der IronPDF-Bibliothek können PDF-Dokumente mit Hilfe der Klasse IronPdf.ImageToPdfConverter einfach aus einer oder mehreren Bilddateien erstellt werden.
// 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
$vbLabelText $csharpLabel
8.2. Bilder in PDF konvertieren mit PDFCrowd
PDFCrowd bietet auch die Möglichkeit, Bilder mit einer Vielzahl von Optionen in PDF zu konvertieren. Es bietet auch eine Option zur Konvertierung eines Bildes von einer URL. Der folgende Code zeigt, wie ein Bild aus dem lokalen Speicher in das PDF-Format konvertiert werden kann.
// 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")
$vbLabelText $csharpLabel
9. Lizenzvergabe
PDFCrowd ist ein Webdienst, der PDF-Dateien aus anderen Formaten online erstellt. Es gibt verschiedene Preisstrukturen, die niedrigste ist $11/Monat für ein Limit von 200 Credits, wobei 1 Credit 0,5 MB Ausgabedaten entspricht. Sie können sich auch für eine kostenlose Testversion anmelden. Die detaillierte Preisgestaltung kann auf der Preisgestaltungsseite von PDFCrowd eingesehen werden.
IronPDF hingegen ist eine C# PDF-Bibliothek. Es ist kostenlos für die Entwicklung und kann jederzeit für den kommerziellen Einsatz lizenziert werden. Lizenzen für IronPDF sind verfügbar für den Einsatz in Einzelprojekten, für einzelne Entwickler, Agenturen und globale Unternehmen sowie für SaaS- und OEM-Weiterverteilung. Alle Lizenzen beinhalten: eine 30-tägige Geld-zurück-Garantie, ein Jahr Produktunterstützung & Updates, Gültigkeit für Entwicklung/Staging/Produktion sowie eine permanente Lizenz (Einmalkauf). Das Lite-Paket beginnt ab $749. IronPDF-Pakete sind dauerhaft und es fallen keine laufenden Kosten an, während bei PDFCrowd im Vergleich dazu laufende Kosten anfallen.
10. Zusammenfassung und Schlussfolgerung
Zusammenfassung
IronPDF rendert kein HTML in PDF von einem entfernten Server. Es startet tatsächlich im Hintergrund eine Instanz eines echten, standardkonformen Webbrowsers (ohne dass zusätzliche Software installiert werden muss). Das HTML wird mit absoluter Genauigkeit gerendert - und zwar in einem Vektorformat, das für die höchsten Standards im kommerziellen Druck geeignet ist. Die Ausgabe ist eine saubere und hochwertige PDF-Datei. Es handelt sich um ein offenes kommerzielles Projekt, dessen Lizenzierung und Preise auf der Website veröffentlicht werden.
PDFCrowd konvertiert auch HTML in jedem beliebigen Format in PDF mit höchster Genauigkeit und absolut ohne Ausfallzeiten, da es auf Cloud-Servern an mehreren Standorten läuft. PDFCrowd ist eine webbasierte API, die einen Online-Dienst zur Konvertierung in PDF anbietet. Serverseitige API-Client-Bibliotheken machen es Ihnen leicht, die Pdfcrowd HTML to PDF API zu nutzen. Diese Bibliotheken sind in einer Reihe von gängigen serverseitigen Programmiersprachen verfügbar. Einzelheiten zu den Preisen sind auf der Website aufgeführt.
Schlussfolgerung
IronPDF hat einen leichten Vorteil gegenüber PDFCrowd, da es nach der Installation offline arbeiten kann. IronPDF ist sehr empfehlenswert für pragmatische Programmierer, die effektiv und effizient arbeiten wollen. Vor allem aber ist es zeitsparend. PDFCrowd kann beim Umgang mit PDFs in verschiedenen serverseitigen Sprachen nützlich sein. Außerdem bietet IronPDF eine lebenslange Lizenz und es fallen keine laufenden Kosten an, während bei PDFCrowd laufende Kosten anfallen.
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.
< PREVIOUS Accusoft Prizmdoc PDF Viewer Anleitung und Vergleich
NÄCHSTES > IronPDF und Docraptor - ein umfassender Vergleich