Diese Seite kann automatisch übersetzten Text enthalten.
HTML zu PDF für .NET
Sie können HTML mithilfe der Docotic.Pdf-Bibliothek in PDF konvertieren. Das kostenlose Add-on HtmlToPdf ermöglicht die Konvertierung von HTML, SVG, WEBP und anderen Webformaten in PDF.
Diese Anleitung beschreibt die Funktionen des Add-ons zur HTML-zu-PDF-Konvertierung und enthält Links zu Seiten mit weiterführenden Informationen.

Die Grundlagen der HTML-zu-PDF-Konvertierung in C#
Sie benötigen das Add-on HtmlToPdf, einen Konvertierungs-Snippet und einen Lizenzschlüssel. Sie können mit einem kostenlosen Testschlüssel beginnen.
Installieren Sie das Add-on von NuGet.
Install-Package BitMiracle.Docotic.Pdf.HtmlToPdf
Dies ist die empfohlene Methode, da sie Abhängigkeiten und Aktualisierungen automatisch verwaltet. Sie können das Add-on zwar auch manuell aus der ZIP-Datei mit den Docotic.Pdf-Binärdateien installieren, dies ist jedoch komplizierter und fehleranfälliger.
Lizenzschlüssel anfordern
Um die Bibliothek zu testen, laden Sie sich einen kostenlosen, zeitlich begrenzten Lizenzschlüssel von der Docotic.Pdf-Downloadseite herunter. Falls Sie bereits eine Lizenz erworben haben, verwenden Sie den Ihnen nach dem Kauf zugesandten Code.
Alle Docotic.Pdf-Lizenzen beinhalten die HTML-zu-PDF-Funktion. Für die Nutzung des Add-ons ist keine zusätzliche Lizenz erforderlich.
Fügen Sie den Konvertierungscode hinzu
BitMiracle.Docotic.LicenseManager.AddLicenseData("PUT-LICENSE-HERE");
using var converter = await HtmlConverter.CreateAsync();
var html = "<h1>Hello, World<h1>";
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("output.pdf");
Ersetzen Sie im Code den Platzhalterwert im Aufruf der Methode AddLicenseData durch einen
gültigen Lizenzschlüssel.
Führe den Code aus
Der Konvertierungscode erstellt aus dem HTML-Code im String eine PDF-Datei. Mit den Standardoptionen umfasst die Ausgabe eine Seite im A4-Format.
Die Bibliothek bietet zahlreiche Optionen zur Anpassung der Konvertierung. Sie können die Ausgabegröße ändern oder Kopf- und Fußzeilen zu den generierten Seiten hinzufügen. Auch die Konvertierung von Ressourcen, die eine Authentifizierung erfordern, ist möglich.
Lesen Sie mehr über die verschiedenen Methoden zur Konvertierung von HTML in PDF im entsprechenden Artikel. Dort wird jeder Ansatz ausführlich erläutert.
Warum ist Docotic.Pdf der richtige HTML-zu-PDF-Konverter?
Dank der Möglichkeit, Stile und Layouts bei der Konvertierung beizubehalten, ist Docotic.Pdf die ideale Wahl für die PDF-Erstellung aus HTML-Berichten, Rechnungen und anderen Dokumenten. Die Bibliothek erzeugt pixelgenaue PDF-Dokumente aus HTML und anderen Webformaten wie SVG. Die Wiederverwendung vorhandener HTML-Inhalte ist mit der Bibliothek ganz einfach.
Der Konverter nutzt die Rendering-Engine von Google Chrome. Dadurch wird die gleiche hohe Webstandard-Konformität wie bei einem der besten Webbrowser gewährleistet.
Mit Docotic.Pdf können Sie PDFs aus sehr komplexen Layouts mit modernem CSS, JavaScript und Bildern erstellen. Auch responsives Webdesign wird optimal unterstützt.
API-Architekturübersicht
Die HTML-zu-PDF-API ist nur in Verbindung mit Docotic.Pdf und dem kostenlosen Add-on HtmlToPdf verfügbar.
Das Add-on bietet eine ausschließlich asynchrone API. Sie ist für die Verwendung mit asynchronen Ereignisbehandlern und Methoden optimiert. Dadurch lassen sich auch zeitaufwändige Aufgaben problemlos ausführen. Die Medienkonvertierung ist hierfür ein ideales Beispiel.
.NET-Versionen und Plattformunterstützung
Die Bibliothek und das Add-on sind für .NET Standard 2.0 ausgelegt. Das bedeutet, dass beide mit .NET 5 bis .NET 10 kompatibel sind. Zusätzlich werden .NET Core 2.0+ und .NET Framework 4.6.1+ unterstützt.
Sie können die HTML-zu-PDF-Funktionen in Windows Forms-, WPF-, ASP.NET- und Konsolenanwendungen nutzen. Das Add-on kann in Cloud-Umgebungen und Docker-Containern ausgeführt werden.
Was geschieht während einer Konvertierung?
Standardmäßig besteht eine Konvertierung aus folgenden Schritten:
- Ihr Code ruft die Methode
CreateAsyncder KlasseHtmlConverterauf. - Das Add-on prüft, ob eine geeignete Version von Google Chrome im Ordner
.local-chromiumim aktuellen Arbeitsverzeichnis vorhanden ist. - Falls keine geeignete Version vorhanden ist, lädt das Add-on eine herunter und entpackt sie im
Ordner
.local-chromium. - Wenn Ihr Code die Methode
CreatePdfAsyncoderCreatePdfFromStringAsyncaufruft, lädt das Add-on den bereitgestellten HTML-Code mit Google Chrome. - Sobald der Inhalt zur Konvertierung bereit ist, weist das Add-on den Browser an, eine PDF-Datei zu erstellen.
- Google Chrome generiert die PDF-Datei mithilfe der Rendering-Funktionen von Chromium.
- Das Add-on gibt ein PdfDocument zurück, das die erzeugte PDF-Datei enthält und an Ihren Code übergeben wird.
Cloud-Plattformen und Docker-Images
Das HtmlToPdf-Add-on unterstützt die Cloud-Plattformen Azure und AWS, einschließlich serverloser Umgebungen. Sie können die HTML-zu-PDF-API auch in Docker-Containern verwenden. Hier ist die Liste der unterstützten Umgebungen:
- Azure: Azure Functions, Azure App Service, Azure VPS
- Amazon Web Services: AWS ECS, Amazon EC2
- Docker: Windows- und Linux-Container
Die Bibliothek und das Add-on unterstützen dynamische Hardwareänderungen, Autoscaling und weitere Cloud-native Laufzeitfunktionen.
Weitere Informationen finden Sie im Artikel zur Ausführung des Add-ons in Clouds und in Docker-Images.
Welche Lizenztypen werden für Cloud-Anwendungen unterstützt?
In den meisten Fällen benötigen Sie eine ungebundene Lizenz (Ultimate oder Ultimate+). Eine Serverlizenz kann ebenfalls funktionieren, sofern sich die Hardware-ID nicht ändert.
Serverlizenzen sind an die Hardware-ID des Servers gebunden. Ändert sich die Hardware zwischen den Ausführungen oder Neustarts, verliert die Serverlizenz ihre Gültigkeit. Sie funktioniert auch nicht in Umgebungen, in denen sich die Anzahl der Server dynamisch ändert, da jeder Produktionsserver eine eigene Lizenz benötigt.
Um sicherzustellen, dass die Hardware-ID Ihres Servers konsistent bleibt, können Sie den Wert der Eigenschaft LicenseManager.Uid überprüfen. Alternativ können Sie unsere Anwendung UID-Generator verwenden, um dieselbe ID abzurufen.
Wie man aus einer HTML-Vorlage eine PDF-Datei generiert
Folgen Sie diesen einfachen Schritten:
- Laden Sie die Daten für die Vorlage herunter.
- Füllen Sie die Vorlage mit den Daten, um eine vollständige HTML-Datei zu erstellen.
- Konvertieren Sie die HTML-Datei mit Docotic.Pdf in eine PDF-Datei.

Die Vorlagendaten stammen üblicherweise aus einer Datenbank oder einer API-Antwort. Bei einer Datenbank kann es sich um einen einzelnen Datensatz oder eine Gruppe von Datensätzen handeln. Bei einer API ist es häufig ein JSON-Objekt, das eine oder mehrere Entitäten beschreibt.
Für die folgenden Beispiele werde ich diese fiktive Person verwenden:
var person = new
{
Name = "Alice Johnson",
Age = 27,
Email = "alicej@example.com",
Occupation = "Truck driver"
};
Nachdem ich nun die Daten habe, stelle ich drei Möglichkeiten zum Erstellen und Befüllen einer HTML-Vorlage vor. In allen drei Fällen ist der resultierende HTML-Code identisch, obwohl die verwendeten Vorlagen unterschiedlich sind.
Verwenden Sie zum Konvertieren des vollständigen HTML-Codes den bereits bereitgestellten Code.
Benannte Platzhalter
Benannte Platzhalter sind Token, die von doppelten Begrenzern mit nicht-alphanumerischen Symbolen
umschlossen werden. Einer der kollisionsresistentesten Begrenzer ist %%.
Hier ist eine Vorlage mit benannten Platzhaltern sowie der Code, der daraus vollständigen HTML-Code erzeugt:
var template = @"<head><title>%%NAME%%'s Profile</title></head>
<body>
<h1>%%NAME%%</h1>
<p><strong>Age:</strong> %%AGE%%</p>
<p><strong>Email:</strong> %%EMAIL%%</p>
<p><strong>Occupation:</strong> %%OCCUPATION%%</p>
</body></html>";
var completeHtml = template
.Replace("%%NAME%%", person.Name)
.Replace("%%AGE%%", person.Age.ToString())
.Replace("%%EMAIL%%", person.Email)
.Replace("%%OCCUPATION%%", person.Occupation);
Die Verwendung benannter Platzhalter ist in den meisten Fällen empfehlenswert. Denken Sie jedoch daran, alle Werte, die Sie anstelle der Platzhalter einfügen, zu maskieren.
Template-Engines
Wenn Ihre Vorlage sehr komplex ist und/oder wiederverwendbare Teile benötigt, sind benannte Platzhalter möglicherweise nicht optimal. Versuchen Sie stattdessen eine Template-Engine wie Handlebars.NET.
Hier ist ein Beispiel, das eine andere Vorlage und anderen Code verwendet, aber denselben HTML-Code erzeugt:
var template = @"<head><title>{{name}}'s Profile</title></head>
<body>
<h1>{{name}}</h1>
<p><strong>Age:</strong> {{age}}</p>
<p><strong>Email:</strong> {{email}}</p>
<p><strong>Occupation:</strong> {{occupation}}</p>
</body></html>";
var compiledTemplate = Handlebars.Compile(template);
var completeHtml = compiledTemplate(person);
Handlebars.NET-Vorlagen sind logikfrei. Falls Ihnen das zu einschränkend erscheint, probieren Sie Scriban. Es bietet Bedingungen, Schleifen, Ausdrücke, Funktionsaufrufe und vieles mehr.
Positionsplatzhalter
Diese ähneln benannten Platzhaltern, verwenden aber Positionsnummern anstelle von Namen. Sie kennen
sie aus Aufrufen der string.Format-Methode.
var template = @"<head><title>{0}'s Profile</title></head>
<body>
<h1>{1}</h1>
<p><strong>Age:</strong> {2}</p>
<p><strong>Email:</strong> {3}</p>
<p><strong>Occupation:</strong> {4}</p>
</body></html>";
var completeHtml = string.Format(
template, person.Name, person.Name,
person.Age, person.Email, person.Occupation);
Ich empfehle Ihnen, Positionsplatzhalter nur in sehr einfachen Fällen zu verwenden. Hier einige Gründe:
- Wenn ein Wert in der Vorlage mehrfach verwendet wird, muss dieser Wert im Aufruf mehrfach angegeben werden.
- Es ist leicht, die Reihenfolge in der Vorlage zu ändern, aber zu vergessen, den Code entsprechend anzupassen.
ASPX in PDF konvertieren
Verwenden Sie Docotic.Pdf zusammen mit dem kostenlosen Add-on HtmlToPdf, um ASPX-Dateien in PDF zu konvertieren. Der Vorgang ist einfach:
- Implementieren Sie die
Render-Methode, die den generierten HTML-Code sammelt. - Lassen Sie die ASP.NET-Engine den HTML-Code für die ASPX-Seite generieren, indem serverseitiger Code und Steuerelemente ausgeführt werden.
- Konvertieren Sie den gesammelten HTML-Code in PDF und geben Sie die PDF-Datei in der aktualisierten Antwort zurück.
Im Beispielcode sehen Sie, wie Sie in einer ASP.NET Web Forms-Anwendung eine PDF-Datei aus einer ASPX-Seite erstellen. Die Beispielanwendung demonstriert den oben beschriebenen Prozess anhand der Erstellung einer Rechnung im HTML- oder PDF-Format. Sie können denselben Ansatz verwenden, um hochwertige PDF-Versionen Ihrer Berichte, Kontoauszüge und anderer Dokumente zu erstellen.
SVG in PDF konvertieren
SVG-Dateien lassen sich mit dem Add-on HtmlToPdf für die Docotic.Pdf-Bibliothek in Vektor-PDFs
konvertieren. Die Klasse HtmlConverter kann als SVG-zu-PDF-Konverter verwendet werden. Der
folgende C#-Code zeigt eine Möglichkeit zur Durchführung der Konvertierung:
using var converter = await HtmlConverter.CreateAsync();
var uri = new Uri("https://bitmiracle.com/images/team.svg");
using var pdf = await converter.CreatePdfAsync(uri);
pdf.Save("output.pdf");
Das Ergebnis des obigen Codes ist ein hochwertiges Vektor-PDF. Der Konverter des Add-ons HtmlToPdf verwendet die im SVG-Code angegebene Breite und Höhe, um das Seitenverhältnis zu bestimmen. Je nach Größe des SVG-Codes skaliert der Konverter diesen gegebenenfalls proportional, um ihn an die PDF-Seite anzupassen.
Optionen, die die Ausgabegröße beeinflussen
Um eine PDF-Datei in einer anderen Größe zu erstellen, legen Sie die Seitengröße und/oder die Seitenränder fest. Die konvertierte SVG-Datei kann weiterhin proportional skaliert werden.
Alternativ können Sie die Breite und/oder Höhe der SVG-Datei im HTML-Code angeben und diesen HTML-Code konvertieren. In der Ausgabe hat das Bild die angegebene Größe. Ist die Größe größer als die PDF-Seite, sind Teile des Bildes nicht sichtbar.
using var converter = await HtmlConverter.CreateAsync();
var html = $"<img src='https://bitmiracle.com/images/team.svg' width='200' />";
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("output.pdf");
SVG-Datei in PDF konvertieren
Um eine SVG-Datei in PDF zu konvertieren, erstellen Sie eine Datei-URI und übergeben Sie diese an
die Methode CreatePdfAsync. Alternativ können Sie einen HTML-Codeausschnitt mit einem img-Tag
erstellen und diesen mit der Methode CreatePdfFromStringAsync verwenden. Wenn Sie relative Pfade
im HTML-Code verwenden, geben Sie die
Basis-URL in den Konvertierungsoptionen an.
Um mehrere SVG-Dateien in PDF zu konvertieren, erstellen Sie einen HTML-Codeausschnitt mit mehreren
img-Tags und verwenden Sie diesen mit der Methode CreatePdfFromStringAsync. Befinden sich alle
Dateien im selben Ordner, empfiehlt es sich, relative Pfade im HTML-Code zu verwenden und die
Basis-URL anzugeben.
SVG zu PDF hinzufügen
Beginnen Sie damit, die SVG-Datei mithilfe einer der HtmlConverter-Methoden in eine PDF-Datei zu
konvertieren.
using var converter = await HtmlConverter.CreateAsync();
var uri = new Uri("https://bitmiracle.com/images/quote.svg");
using var svgPdf = await converter.CreatePdfAsync(uri);
Anschließend können Sie den Inhalt der erstellten PDF-Datei entweder über ein anderes Dokument legen oder das Dokument mit einer anderen PDF-Datei zusammenführen.
Um eine SVG-Datei über eine PDF-Datei zu legen, erstellen Sie ein XObject aus der ersten Seite des konvertierten Dokuments und zeichnen Sie dieses XObject über eine PDF-Seite in einem anderen Dokument. Zum Beispiel so:
using var pdf = new PdfDocument("some-other.pdf");
var xObj = pdf.CreateXObject(svgPdf.Pages[0]);
pdf.Pages[0].Canvas.DrawXObject(xObj, 0, 0);
pdf.Save("output.pdf");
Um eine SVG-Datei in eine PDF-Datei einzufügen, kombinieren Sie das konvertierte PDF-Dokument mit einer anderen PDF-Datei mithilfe einer der verfügbaren Zusammenführungsmethoden.
WEBP in PDF konvertieren
WebP ist ein Webformat, das Sie mit Docotic.Pdf und dem Add-on HtmlToPdf in PDF konvertieren können. Der folgende C#-Code zeigt, wie Sie WebP in PDF in hoher Qualität konvertieren:
using var converter = await HtmlConverter.CreateAsync();
var html = $"<img src='https://bitmiracle.com/pdf-library/images/edit/reorder-pages.webp'/>";
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("output.pdf");
Der obige Code definiert keine width- oder height-Attribute für das img-Tag. Es empfiehlt
sich jedoch, diese anzugeben. Beachten Sie, dass bei einer Bildgröße, die größer als die PDF-Seite
ist, Teile des Bildes nicht sichtbar sind.
Da WebP ein Rasterformat ist, lässt es sich nicht gut skalieren. Ich empfehle, Bilder in der maximal benötigten Größe und Auflösung zu verwenden.
Um eine WebP-Datei in PDF zu konvertieren, verwenden Sie denselben Code. Wenn Ihr HTML relative Pfade verwendet, geben Sie die Basis-URL über die Ladeoptionen an. Verwenden Sie beim Konvertieren lokaler Bilder eine Datei-URI als Basis-URL.
XML mithilfe von XSLT in PDF konvertieren
Um XML in PDF zu konvertieren, wandeln Sie das XML zunächst mithilfe einer XSLT-Transformation in HTML um. Anschließend konvertieren Sie das resultierende HTML mit Docotic.Pdf und dem Add-on HtmlToPdf in PDF.
Hier ist der C#-Code für die XML-zu-PDF-Konvertierung:
var transform = CreateTransform("invoice.xsl");
var html = TransformToHtml("invoice.xml", transform);
using var converter = await HtmlConverter.CreateAsync();
using var pdf = await converter.CreatePdfFromStringAsync(html);
pdf.Save("invoice.pdf");
Der Code:
- Erstellt in der ersten Zeile ein XSLT-Transformationsobjekt.
- Transformiert in der zweiten Zeile die XML-Datei in ein HTML-Dokument.
- Konvertiert in den verbleibenden Zeilen das Transformationsergebnis (den HTML-String) in PDF.
Betrachten wir die ersten beiden Punkte genauer. Der dritte Punkt wird in diesem Abschnitt ausführlich behandelt.
Erstellen Sie eine XSLT-Transformation
Der erste Schritt im Konvertierungsprozess ist die Erstellung eines XSLT-Transformationsobjekts. Der folgende Code veranschaulicht die Erstellung eines solchen Objekts:
public static XslCompiledTransform CreateTransform(string xsltFileName)
{
var transform = new XslCompiledTransform();
transform.Load(xsltFileName);
return transform;
}
Wie der Name schon sagt, kompiliert XslCompiledTransform das bereitgestellte Stylesheet und
erzeugt daraus IL-Code. Wenn Ihr Code XML-Dateien in großen Mengen in PDF konvertieren muss, können
Sie dasselbe Transformationsobjekt wiederverwenden, um die Leistung zu verbessern.
XML in HTML umwandeln
Im zweiten Schritt wird aus dem XML mithilfe des im vorherigen Schritt erstellten XSLT-Transformationsobjekts HTML generiert.
public static string TransformToHtml(string xmlFileName, XslCompiledTransform transform)
{
using var xmlReader = XmlReader.Create(xmlFileName);
using var sw = new StringWriter();
using var writer = XmlWriter.Create(sw, transform.OutputSettings);
transform.Transform(xmlReader, null, writer);
return sw.ToString();
}
Der Code verwendet XmlReader und XmlWriter, da diese gut für große XML-Dateien geeignet sind
und dazu beitragen, den Speicherverbrauch gering zu halten.
Beispielcode für die XML-zu-PDF-Konvertierung
Unser Beispiel-Repository enthält eine Beispielanwendung in C# und VB.NET, die eine XML-Rechnung in ein PDF konvertiert. Die Beispielanwendung enthält eine XML-Beispielrechnung und das zugehörige XSLT-Stylesheet.
Wenn Sie in einem modernen Browser eine URL aufrufen, die XML zurückgibt, kann der Browser das zugehörige XSLT-Stylesheet (sofern vorhanden) automatisch anwenden, um lesbares HTML zu generieren und anzuzeigen. Dies funktioniert nur, wenn sich sowohl die XML- als auch die XSLT-Datei auf demselben Server befinden. Um ursprungsübergreifende Anfragen zu verhindern, lädt und wendet der Browser das Stylesheet nicht an, wenn Sie die XML-Datei direkt vom lokalen Dateisystem öffnen.
Abwägungen und alternative Wege zur PDF-Erstellung
Die HTML-zu-PDF-API ist nicht die einzige Möglichkeit, mit Docotic.Pdf PDFs zu erstellen, und auch nicht immer die effizienteste. In diesem Abschnitt werden die Alternativen vorgestellt, damit Sie die passende Option für Ihren Anwendungsfall auswählen können.

Wann die Konvertierung von HTML zu PDF die richtige Wahl ist
Wählen Sie die HTML-zu-PDF-Methode, wenn Ihr Team bereits Dokumente mit HTML/CSS erstellt. Dies gilt insbesondere für Dokumente, die Webseiten ähneln: Rechnungen, Bestellungen, Zertifikate, Quittungen usw.
Das HtmlToPdf-Add-on ermöglicht es Teams, bestehende HTML/CSS-Vorlagen wiederzuverwenden und von hochwertigen Layout- und Darstellungsfunktionen zu profitieren. Mit diesem Add-on erhalten Sie schnellstmöglich eine qualitativ hochwertige PDF-Ausgabe.
Zu beachtende Einschränkungen
Die HTML-zu-PDF-API nutzt die HTML-Rendering-Engine von Google Chrome. Diese Engine ist zwar leistungsstark, verursacht aber einen gewissen Mehraufwand. Eine typische HTML-zu-PDF-Konvertierung benötigt beispielsweise mehr CPU und Arbeitsspeicher als das direkte Zeichnen auf einer PDF-Seite. Dieser Mehraufwand kann die Stapelverarbeitung großer Datenmengen verlangsamen.
Die Browser-Engine erhöht zudem den Ressourcenbedarf zur Laufzeit, was in minimalen Docker-Images oder ressourcenbeschränkten Umgebungen unerwünscht sein kann. Beispielsweise funktioniert die API möglicherweise nicht in serverlosen Umgebungen mit sehr strengen Beschränkungen hinsichtlich Speicherverbrauch und Ausführungszeit.
Weitere Möglichkeiten zur PDF-Erstellung in Docotic.Pdf
Die Docotic.Pdf-Bibliothek bietet verschiedene weitere Möglichkeiten zur Dokumentenerstellung, die jeweils auf unterschiedliche Bedürfnisse zugeschnitten sind:
-
Direkte PDF-Generierung über die Canvas-API
Ideal für strukturierte, vorhersehbare Layouts wie Tickets, Etiketten oder Formulare. Bietet maximale Leistung und volle Kontrolle über Koordinaten, Typografie und Inhaltsplatzierung. -
Vorlagenbasierte PDF-Generierung
Oft die beste Wahl bei der Arbeit mit genehmigten, konformitätsgeprüften Vorlagen. Sie beginnen mit einer bestehenden PDF-Datei und füllen Felder aus, ersetzen Platzhalter und fügen bei Bedarf zugehörige Dokumente hinzu. -
PDF-Erstellung mit der Layout-API
Bietet Bausteine wie Seiten, Container, Bilder, Textabschnitte und weitere Layout-Elemente. Sie beschreiben das PDF-Layout vollständig im Code mithilfe einer intuitiven API, und die Bibliothek generiert daraus das PDF. -
Zusammenstellung aus anderen PDFs und Bildern
Bietet eine einfache Möglichkeit, Kontoauszüge, Berichte, Dokumentenpakete und andere Dokumente aus bestehenden PDFs und Bildern zu erstellen. Sie können Bilder in PDF-Seiten umwandeln, mehrere PDFs kombinieren, Seiten anhängen oder Fragmente wiederverwenden.
Vergleich mit anderen HTML-zu-PDF-Lösungen
Um Ihnen die Auswahl der richtigen HTML-zu-PDF-Bibliothek für .NET zu erleichtern, finden Sie hier Informationen darüber, wie Docotic.Pdf mit dem HtmlToPdf-Add-on im Vergleich zu anderen gängigen Lösungen zur Konvertierung von HTML in PDF abschneidet.
Wichtigste Erkenntnisse aus dem Vergleich
Die meisten browserbasierten Lösungen bieten eine hochwertige Darstellung und unterstützen modernes HTML, CSS und JavaScript vollständig. Es gibt jedoch wichtige Unterschiede.
| Lösung | Wann anwenden? | Am besten geeignet für |
|---|---|---|
| Docotic.Pdf mit dem HtmlToPdf-Add-on | Umwandlung von Berichten, Rechnungen und Belegen mit pixelgenauer visueller Wiedergabetreue | Professionelle Software, die sowohl HTML-zu-PDF-Konvertierung als auch PDF-Bearbeitung erfordert, unterstützt durch professionellen Support |
| Puppeteer | Wenn modernes HTML/CSS/JS-Rendering mit Browsergenauigkeit erforderlich ist und nur eine HTML-zu-PDF-Ausgabe benötigt wird | Pixelgenaue HTML-zu-PDF-Generierung mit kostenlosen oder Open-Source-Anforderungen |
| IronPDF | Wenn Ihr Team über eine Iron Suite-Lizenz oder Vorerfahrung mit IronPDF verfügt | Teams, die auf mehrere Iron Software-Komponenten angewiesen sind |
| wkhtmltopdf | Wenn ein relativ geringer Ressourcenverbrauch erforderlich ist und Ihr HTML/CSS einfach ist und keine externen oder nicht vertrauenswürdigen Verweise enthält | Kompatibilität mit Systemen, die bereits wkhtmltopdf verwenden |
Detaillierter Vergleich
Prüfen Sie die Informationen in der Tabelle, um sich ein vollständiges Bild zu machen und Ihre eigenen Schlussfolgerungen zu ziehen.
| Docotic.Pdf mit HtmlToPdf | Puppeteer | IronPDF | wkhtmltopdf | |
|---|---|---|---|---|
| Motor | Headless Chrome | Headless Chrome / Chromium | Headless Chrome | Vermächtnis Qt WebKit |
| Wiedergabetreue | Pixelperfekt | Pixelperfekt | Pixelperfekt | Pixelperfekt mit Eigenheiten und Einschränkungen |
| HTML5-Unterstützung | Voll | Voll | Voll | Teilweise und begrenzt |
| CSS3-Unterstützung | Voll | Voll | Voll | Äußerst begrenzt |
| JavaScript-Unterstützung | Voll | Voll | Voll | Teilweise und veraltet |
| Integration mit .NET-Code | Asynchrone .NET-API | Asynchrone .NET-API bei Verwendung von PuppeteerSharp; ansonsten Node.js-Skripte. | Asynchrone .NET-API | Befehlszeilenprozess oder C#-Wrapperbibliothek (wie z. B. DinkToPdf) |
| PDF-Funktionen, die über die HTML-Konvertierung hinausgehen | Umfangreich | Keiner | Beschränkt | Keiner |
| Unterstützung | Kommerzieller, prioritärer Support wird angeboten | Für PuppeteerSharp wird prioritäre Unterstützung durch die Community und Sponsoren angeboten | Kommerzieller, prioritärer Support wird angeboten | Community ohne formale Unterstützungskanäle |
| Wartungsstatus | Aktiv gepflegt | Aktiv gepflegt | Aktiv gepflegt | Wird nicht mehr gewartet |
| Lizenz | Kommerziell, mit kostenlosen Lizenzen für geeignete Anwendungsfälle | Apache-2.0; MIT für PuppeteerSharp | Kommerziell | LGPL-3.0; MIT für DinkToPdf |
| Weitervertriebsrechte | Lizenzfrei mit allen Lizenzen | Lizenzfrei mit allen Lizenzen | Nicht enthalten; muss separat erworben werden | Lizenzfrei mit allen Lizenzen |
| Entwicklerlizenzierung | Unbegrenzte Entwickler mit allen Lizenzen | Unbegrenzte Entwickler mit allen Lizenzen | Variiert je nach Lizenzstufe; unbegrenzte Nutzung nur in der höchsten Lizenzstufe | Unbegrenzte Entwickler mit allen Lizenzen |
| Online-Lizenzprüfung | Keine Online-Verifizierung erforderlich | Es wurde keine Lizenzprüfung durchgeführt | Für alle Lizenzen außer der Premium-Lizenz erforderlich | Es wurde keine Lizenzprüfung durchgeführt |
Abschluss
Docotic.Pdf mit dem Add-on HtmlToPdf bietet zuverlässige und hochwertige HTML-zu-PDF-Konvertierungen sowie eine umfassende PDF-API. Die Bibliothek eignet sich hervorragend zum Generieren von PDF-Berichten, Rechnungen, Quittungen und anderen Geschäftsdokumenten aus HTML und bewahrt dabei die pixelgenaue Darstellung.
Das Add-on stellt eine asynchrone .NET-API bereit, die vollständig lokal ausgeführt wird. Ihre Daten verlassen niemals Ihre Server, sodass Sie die volle Kontrolle über Sicherheit und Datenschutz haben.
Neben der Konvertierung von HTML in PDF kann Docotic.Pdf die generierten PDFs mit einem Passwort schützen und sie mit digitalen Signaturen signieren, einschließlich LTV-fähiger Signaturen.
Sie können finale Dokumente erstellen, indem Sie mehrere generierte PDFs zusammenführen. Falls ein PDF nach der HTML-Konvertierung oder dem Zusammenführen zu groß wird, kann die Bibliothek doppelte Objekte in der Datei entfernen und weitere Methoden zur Dateigrößenreduzierung anwenden. Um das Leseerlebnis zu verbessern, kann Docotic.Pdf PDFs außerdem für Fast Web View optimieren (das PDF linearisieren).
Nächste Schritte:
- HTML-zu-PDF-Codebeispiele ansehen
- Die umfassende Bibliotheks-API erkunden
- Bei Fragen oder Anregungen kontaktieren Sie uns
Häufig gestellte Fragen
Wie wählt man eine HTML-zu-PDF-Bibliothek für .NET aus?
Bevor Sie eine Bibliothek auswählen, definieren und sammeln Sie Ihre Anforderungen. Sie sparen Zeit bei der Evaluierung, wenn Sie wissen, dass eine infrage kommende Bibliothek konvertierte PDFs nicht zusammenführen kann und diese Funktion für Ihre Lösung erforderlich ist. Im Vergleichsabschnitt finden Sie gängige HTML-zu-PDF-Bibliotheken für .NET im direkten Vergleich.
Warum wird mein HTML-Code in PDF nicht korrekt dargestellt?
Wenn Ihr HTML-Code in Google Chrome korrekt angezeigt wird, aber nicht in der generierten PDF-Datei, überprüfen Sie die Konvertierungsoptionen. Stellen Sie sicher, dass die Breite für den Inhalt ausreicht. Möglicherweise muss vor der Konvertierung auch JavaScript ausgeführt werden.
Warum HTML-Vorlagen anstelle direkter PDF-APIs verwenden?
Durch die Verwendung von HTML-Vorlagen wird Ihre Lösung hinsichtlich des Dokumentlayouts sehr flexibel. Sie können das Erscheinungsbild Ihrer PDFs mithilfe der leistungsstarken Formatierungsfunktionen von HTML und CSS problemlos anpassen. Außerdem ist es nicht nötig, das Design Ihrer Online-Dokumente mit einer PDF-API zu duplizieren.
Wie konvertiert man ASPX in PDF?
Um ASPX in PDF zu konvertieren, lassen Sie die ASP.NET-Engine den HTML-Code für die ASPX-Seite generieren und konvertieren Sie diesen anschließend mithilfe der Docotic.Pdf-Bibliothek in PDF. Weitere Details finden Sie im entsprechenden Abschnitt.
Wie kann man eine SVG-Datei auf eine PDF-Datei legen?
Um eine SVG-Datei über eine PDF-Datei zu legen, erzeugen Sie eine PDF-Datei aus der SVG-Datei und erstellen Sie anschließend ein XObject aus der ersten Seite des generierten Dokuments. Da das XObject einen transparenten Hintergrund hat, können Sie es in einem anderen Dokument über eine PDF-Seite legen.
Wie füge ich dem generierten PDF ein Wasserzeichen hinzu?
Um einem aus HTML erstellten PDF-Dokument ein Wasserzeichen hinzuzufügen, erstellen Sie ein XObject, füllen Sie es mit dem Wasserzeicheninhalt und zeichnen Sie das XObject anschließend über die Dokumentseiten. Sie können Vektorgrafiken, Bilder und Text für das Wasserzeichen verwenden.
Ist Docotic.Pdf besser als wkhtmltopdf?
Docotic.Pdf unterstützt modernes HTML, CSS und JavaScript vollständig, während wkhtmltopdf bei modernen Webdokumenten häufig zu inkonsistenter Darstellung führt. Darüber hinaus bietet Docotic.Pdf APIs, die über die HTML-zu-PDF-Konvertierung hinausgehen. Beispielsweise kann die Bibliothek PDFs mit LTV-fähigen digitalen Signaturen signieren, während wkhtmltopdf lediglich HTML konvertieren kann.