How to Convert HTML String to PDF in C
IronPDF konvertiert HTML-Strings in PDF-Dokumente in C# unter Verwendung einer Chrome-Rendering-Engine und unterstützt alle HTML5-, CSS3- und JavaScript-Inhalte mit einer einzigen Codezeile für grundlegende Konvertierungen. Die Bibliothek bietet leistungsstarke Funktionen für die Erstellung von PDFs unter Beibehaltung einer perfekten Rendering-Treue.
IronPDF ermöglicht Entwicklern, PDF-Dokumente einfach in C#, F# und VB.NET for .NET Core und .NET Framework zu erstellen. IronPDF unterstützt die Umwandlung jeder HTML-Zeichenkette in eine PDF-Datei, und der Rendering-Prozess verwendet eine voll funktionsfähige Version der Google Chromium-Engine. Dadurch wird sichergestellt, dass HTML-Inhalte genau so angezeigt werden, wie sie in einem modernen Webbrowser erscheinen würden, was die Anwendung ideal für die Erstellung von Berichten, Rechnungen und Dokumenten aus dynamischen HTML-Inhalten macht.
Schnellstart: HTML-String in Sekundenschnelle in PDF konvertieren
Umwandlung von HTML-Strings in PDF-Dateien mit IronPDF. Dieser Leitfaden zeigt, wie ein HTML-String in C# mit minimalem Code in ein PDF-Dokument konvertiert werden kann. Perfekt für Entwickler, die PDF-Rendering-Funktionen in ihre Projekte integrieren müssen.
-
Installieren Sie IronPDF mit NuGet Package Manager
PM > Install-Package IronPdf -
Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("<p>Hello World</p>").SaveAs("string-to-pdf.pdf"); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- IronPDF C# Library von NuGet herunterladen
- Initialisieren Sie den PDF Renderer und übergeben Sie den HTML-String
- Konfigurieren Sie den BasePath für externe Ressourcen im PDF
- Konfigurieren Sie die RenderingOptions zur Feinabstimmung der PDF-Ausgabe
- Speichern und laden Sie das generierte PDF herunter
Wie konvertiere ich einen einfachen HTML-String in PDF?
Hier ist ein Beispiel dafür, wie IronPDF einen HTML-String mithilfe der Methode RenderHtmlAsPdf in ein PDF umwandelt. Der Parameter ist ein HTML-String, der als PDF gerendert werden soll. Diese Methode ist Teil der Klasse ChromePdfRenderer, die umfassende Kontrolle über die Rendering-Optionen für Ihre PDF-Generierungsanforderungen bietet.
:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf.cs
using IronPdf;
// 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");
Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' Create a PDF from a HTML string using C#
Private pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")
' Export to a file or Stream
pdf.SaveAs("output.pdf")
Die Methode RenderHtmlAsPdf gibt ein PdfDocument-Objekt zurück, das PDF-Informationen enthält und Methoden zur Bearbeitung des PDFs bereitstellt, darunter das Zusammenführen von PDFs , das Hinzufügen von Wasserzeichen und das Festlegen von Sicherheitsoptionen .
using-Block eingeschlossen werden. ChromePdfRenderer ist threadsicher und kann einmalig instanziiert und für eine bessere Leistung über mehrere Anfragen hinweg wiederverwendet werden.Wenn eine HTML-Zeichenkette aus einer externen Quelle abgerufen wird und Sie den Zugriff auf die lokale Festplatte oder Cross-Origin-Anfragen deaktivieren müssen, setzen Sie IronPdf.Installation.EnableWebSecurity vor dem Rendern auf true. Dies ist eine statische globale Einstellung, keine Instanzeigenschaft des Renderers.
// Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = true;
// Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = true;
' Enable web security before rendering untrusted HTML
IronPdf.Installation.EnableWebSecurity = True
Für komplexe HTML-Inhalte, die CSS-Styling enthalten, können Sie Ihre HTML-Strings mit Inline-Styles ergänzen oder mit der Funktion Basis-URLs & Asset Encoding auf externe Stylesheets verweisen:
// Example with inline CSS
var styledHtml = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; border-bottom: 2px solid #0066cc; }
p { line-height: 1.6; }
</style>
</head>
<body>
<h1>Professional Report</h1>
<p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>";
using var styledPdf = renderer.RenderHtmlAsPdf(styledHtml);
styledPdf.SaveAs("styled-output.pdf");
// Example with inline CSS
var styledHtml = @"
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; border-bottom: 2px solid #0066cc; }
p { line-height: 1.6; }
</style>
</head>
<body>
<h1>Professional Report</h1>
<p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>";
using var styledPdf = renderer.RenderHtmlAsPdf(styledHtml);
styledPdf.SaveAs("styled-output.pdf");
Dim styledHtml As String = "
<html>
<head>
<style>
body { font-family: Arial, sans-serif; margin: 40px; }
h1 { color: #333; border-bottom: 2px solid #0066cc; }
p { line-height: 1.6; }
</style>
</head>
<body>
<h1>Professional Report</h1>
<p>This PDF was generated from HTML with custom styling.</p>
</body>
</html>"
Using styledPdf = renderer.RenderHtmlAsPdf(styledHtml)
styledPdf.SaveAs("styled-output.pdf")
End Using
Wie sieht die generierte PDF-Datei aus?
Dies ist die Datei, die der Code erzeugt hat:
Die generierte PDF-Datei behält die exakte Formatierung und das Styling aus Ihrem HTML-Code bei und eignet sich daher perfekt für die Erstellung von PDF-Berichten oder die Umwandlung von Webinhalten in druckfertige Dokumente.
Wie kann ich externe Assets bei der Konvertierung von HTML in PDF einbeziehen?
Dieses Beispiel zeigt, wie IronPDF ein externes Bild-Asset aus einem optionalen BasePath lädt. Die Eigenschaft BaseUrlOrPath festzulegen, gibt den relativen Dateipfad oder URL-Kontext für Hyperlinks, Bilder, CSS und JavaScript-Dateien an. Dies ist unerlässlich, wenn Sie mit Bildern in PDFs arbeiten oder auf externe Quellen verweisen müssen.
:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf-2.cs
using IronPdf;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// 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");
Imports IronPdf
' Instantiate Renderer
Private renderer = New ChromePdfRenderer()
' 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
Private myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
myAdvancedPdf.SaveAs("html-with-assets.pdf")
Für fortgeschrittene Szenarien mit komplexen Layouts oder dynamischen Inhalten sollten Sie die Unterstützung von IronPDF für JavaScript-Rendering nutzen:
// Example with JavaScript-generated content
var jsHtml = @"
<html>
<head>
<script>
window.onload = function() {
document.getElementById('dynamic').innerHTML =
'Generated on: ' + new Date().toLocaleString();
};
</script>
</head>
<body>
<h1>Dynamic Content Example</h1>
<div id='dynamic'></div>
</body>
</html>";
// Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500); // milliseconds
using var dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, @"C:\site\");
dynamicPdf.SaveAs("dynamic-content.pdf");
// Example with JavaScript-generated content
var jsHtml = @"
<html>
<head>
<script>
window.onload = function() {
document.getElementById('dynamic').innerHTML =
'Generated on: ' + new Date().toLocaleString();
};
</script>
</head>
<body>
<h1>Dynamic Content Example</h1>
<div id='dynamic'></div>
</body>
</html>";
// Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500); // milliseconds
using var dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, @"C:\site\");
dynamicPdf.SaveAs("dynamic-content.pdf");
Imports System
' Example with JavaScript-generated content
Dim jsHtml As String = "
<html>
<head>
<script>
window.onload = function() {
document.getElementById('dynamic').innerHTML =
'Generated on: ' + new Date().toLocaleString();
};
</script>
</head>
<body>
<h1>Dynamic Content Example</h1>
<div id='dynamic'></div>
</body>
</html>"
' Configure rendering to wait for JavaScript execution
renderer.RenderingOptions.WaitFor.RenderDelay(500) ' milliseconds
Using dynamicPdf = renderer.RenderHtmlAsPdf(jsHtml, "C:\site\")
dynamicPdf.SaveAs("dynamic-content.pdf")
End Using
Wenn Sie mit externen Assets arbeiten, müssen Sie möglicherweise mit Authentifizierung oder speziellen Headern umgehen. IronPDF unterstützt dies durch die HTTP Request Header-Funktionalität, die es Ihnen ermöglicht, beim Abrufen von Ressourcen Autorisierungs-Token oder benutzerdefinierte Header einzubinden.
Warum ist die Einstellung von BasePath für externe Ressourcen wichtig?
Dies ist die Datei, die der Code erzeugt hat:
Durch die korrekte Einstellung des BasePaths wird sichergestellt, dass alle relativen Verweise in Ihrem HTML korrekt aufgelöst werden. Ohne sie kann IronPDF keine externen Ressourcen wie Bilder, Stylesheets oder Skripte auffinden. Dies ist besonders wichtig, wenn:
- Konvertierung von HTML, das auf lokale Dateisystemressourcen verweist
- Arbeiten mit Content-Management-Systemen, die relative URLs verwenden
- Migration bestehender Webinhalte in das PDF-Format
- Erstellen von Vorlagen, die gemeinsame Assets verwenden
Verwenden Sie für webbasierte Ressourcen eine vollständige URL als Basispfad:
// Using a web URL as base path
var webBasedPdf = renderer.RenderHtmlAsPdf(
"<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>",
"https://mywebsite.com"
);
// Using a web URL as base path
var webBasedPdf = renderer.RenderHtmlAsPdf(
"<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>",
"https://mywebsite.com"
);
' Using a web URL as base path
Dim webBasedPdf = renderer.RenderHtmlAsPdf(
"<link rel='stylesheet' href='/styles/main.css'><h1>Web Content</h1>",
"https://mywebsite.com"
)
Für zusätzliche Kontrolle über den PDF-Erzeugungsprozess können Sie die umfangreiche Dokumentation von IronPDF zu Anpassbare Ränder, Seitenausrichtung und PDF-Komprimierung nutzen, um Ihre Ausgabedateien für verschiedene Anwendungsfälle zu optimieren.
Häufig gestellte Fragen
Wie konvertiere ich einen einfachen HTML-String in C# in eine PDF-Datei?
Mit der ChromePdfRenderer-Klasse von IronPDF und der RenderHtmlAsPdf-Methode können Sie eine HTML-Zeichenkette in PDF umwandeln. Instanzieren Sie einfach den Renderer, übergeben Sie die HTML-Zeichenkette an die Methode und speichern Sie das resultierende PdfDocument-Objekt. IronPDF verwendet eine Chrome-Rendering-Engine, um perfekte Wiedergabetreue zu gewährleisten.
Welche Rendering-Engine wird bei der Konvertierung von HTML in PDF verwendet?
IronPDF verwendet eine voll funktionsfähige Version der Google Chromium-Engine für das Rendering von HTML in PDF. Dadurch wird sichergestellt, dass Ihre HTML-Inhalte, einschließlich HTML5, CSS3 und JavaScript, genau so angezeigt werden, wie sie in einem modernen Webbrowser erscheinen würden.
Kann ich HTML mit CSS-Styling in PDF konvertieren?
Ja, IronPDF unterstützt die Konvertierung von HTML mit CSS-Styling in PDF. Sie können Inline-Stile direkt in Ihrem HTML-String verwenden oder externe Stylesheets mit der Funktion Base URLs & Asset Encoding referenzieren, um die korrekte Darstellung der gestalteten Inhalte zu gewährleisten.
Wie kann man HTML am schnellsten in PDF konvertieren?
Am schnellsten geht das mit der statischen Methode von IronPDF: IronPdf.ChromePdfRenderer.StaticRenderHtmlAsPdf("Ihr HTML").SaveAs("output.pdf"). Diese einzige Codezeile konvertiert Ihren HTML-String und speichert ihn als PDF-Datei.
Wie behandle ich externe Assets bei der Konvertierung von HTML-Strings?
IronPDF ermöglicht es Ihnen, den BasePath für externe Assets in Ihrer PDF-Datei zu konfigurieren. Dadurch wird sichergestellt, dass Bilder, Stylesheets und andere Ressourcen, auf die in Ihrem HTML-Code verwiesen wird, während des Konvertierungsprozesses korrekt geladen werden.
Kann ich die PDF-Ausgabe bei der Konvertierung von HTML anpassen?
Ja, IronPDF bietet umfangreiche RenderingOptions zur Feinabstimmung Ihrer PDF-Ausgabe. Sie können Seitengröße, Ränder, Kopf- und Fußzeilen und viele andere Aspekte der generierten PDF-Datei über die ChromePdfRenderer-Klasse steuern.
Was kann ich mit der generierten PDF-Datei nach der Konvertierung machen?
Das PdfDocument-Objekt von IronPDF bietet zahlreiche Methoden zur PDF-Bearbeitung, darunter das Zusammenführen von PDFs, das Hinzufügen von Wasserzeichen, das Festlegen von Sicherheitsoptionen und vieles mehr. Die konvertierte PDF-Datei kann auf der Festplatte gespeichert, gestreamt oder nach Bedarf weiterverarbeitet werden.
Wie gehe ich mit der Sicherheit bei der Konvertierung von HTML aus externen Quellen um?
Bei der Konvertierung von HTML aus externen Quellen ermöglicht IronPDF die Einstellung der Eigenschaft EnableWebSecurity auf true für den ChromePdfRenderer. Dadurch werden der lokale Festplattenzugriff und herkunftsübergreifende Anfragen deaktiviert und die Sicherheit erhöht.

