IRONPDF VERWENDEN

C# PDF erstellen (Code-Beispiel-Tutorial)

Die Generierung von PDF-Dokumenten ist eine häufige und entscheidende Anforderung in der modernen C# .NET-Entwicklung, sei es für die Rechnungsstellung, die Erstellung detaillierter Berichte, die Archivierung von Webinhalten oder die Sicherstellung eines sicheren Dokumentenaustauschs. Entwickler erkunden häufig verschiedene Methoden, um PDFs in .NET-Anwendungen zu erstellen, einschließlich der Nutzung bekannter Bibliotheken wie iTextSharp (jetzt iText 7), PdfSharp, QuestPDF oder sogar der Nutzung eingebauter .NET-Funktionalitäten für einfachere Aufgaben. Einige ziehen auch in Betracht, Cloud-basierte APIs von Drittanbietern oder Befehlszeilentools wie wkhtmltopdf zu integrieren.

Obwohl es diese vielfältigen Optionen gibt, ist es entscheidend für eine effiziente Entwicklung, eine C#-PDF-Bibliothek zu finden, die Benutzerfreundlichkeit, umfassende Funktionen, fortschrittliche Rendering-Fähigkeiten und robuste Leistung perfekt ausbalanciert. Genau hier zeichnet sich IronPDF aus und bietet eine leistungsstarke und dennoch bemerkenswert intuitive Lösung, die speziell für C#-Entwickler entwickelt wurde. Dieses Tutorial führt Sie durch den einfachen Prozess zur Erstellung von PDF-Dokumenten in C# .NET mit IronPDF und behandelt alles von der grundlegenden HTML-String-Konvertierung bis hin zur Darstellung komplexer Webseiten. Wenn Sie PDF-Dateien effizient erstellen möchten, sind Sie hier genau richtig.

IronPDF ist eine voll ausgestattete PDF-Bibliothek für Java. Es ist eine von mehreren verfügbaren Drittanbieterbibliotheken, die effizient bei der Erstellung, Bearbeitung und Verarbeitung von PDF-Dokumenten arbeiten sowie bearbeitbare PDF-Dateien aus dem Inhalt anderer Dateitypen (HTML, PNG, RTF usw.) ausgeben. Erfahren Sie mehr über IronPDF und ähnliche PDF-Bibliotheken aus dem wachsenden Katalog von Vergleichsartikeln zu Drittanbieter-Bibliotheken.

Die Wahl der richtigen C# PDF-Bibliothek: Kostenlose vs. kommerzielle Optionen

Wenn Entwickler ein Projekt in Angriff nehmen, das die PDF-Erstellung in C# erfordert, wägen sie oft die Vor- und Nachteile von kostenlosen im Vergleich zu kommerziellen Bibliotheken ab. Kostenlose Bibliotheken wie PDFSharp oder QuestPDF können ausgezeichnete Ausgangspunkte für grundlegende PDF-Erstellung sein oder wenn man unter strengen Budgetbeschränkungen arbeitet. Jedoch könnten sie Einschränkungen in Bezug auf ihre Funktionssets aufweisen, die Komplexität bei der Implementierung fortschrittlicher Funktionen (wie das pixelgenaue HTML-zu-PDF-Rendering) oder die unmittelbare Verfügbarkeit von professionellem Support darstellen.

Kaufbibliotheken wie IronPDF, die eine Lizenz für Produktionsumgebungen erfordern, bieten in der Regel eine optimiertere und effizientere Entwicklungserfahrung. Sie bieten oft reichhaltigere Funktionen, darunter hochgenaue HTML-, CSS- und JavaScript-zu-PDF-Wiedergabe, umfassende Dokumentensicherheitsoptionen und leistungsstarke PDF-Manipulationswerkzeuge. Außerdem sind sie in der Regel mit der Zusicherung professionellen Supports und regelmäßiger Updates ausgestattet. IronPDF fördert einen entwicklerfreundlichen Ansatz. Obwohl es sich um eine kommerzielle Bibliothek handelt, die für den professionellen Einsatz konzipiert ist, bietet sie eine völlig kostenlose Lizenz für die Entwicklung und Testung sowie eine Testphase zur Produktionsevaluierung. Dies ermöglicht Ihnen, die Fähigkeiten vollständig zu erkunden, bevor Sie entscheiden, ob es die beste Lösung für Ihr Projekt ist, das PDF-Dokumente mit erweiterten Funktionen erstellen muss.

Get started creating PDFs now!

IronPdf.ChromePdfRenderer
       .StaticRenderHtmlAsPdf("<p>Hello Word</p>")
       .SaveAs("pixelperfect.pdf");
Installation mit NuGet
green arrow pointer

PM >  Install-Package IronPdf

Da HTML eine Auszeichnungssprache ist, kann es schwierig sein, den Inhalt von HTML ohne die HTML-Tags in ein PDF zu konvertieren. IronPDF bietet Funktionen wie Erstellen von PDF in C# aus HTML, aufgrund seiner Benutzerfreundlichkeit und zusätzlichen Funktionen wie der Verwendung von JavaScript, CSS und Bildern.

In diesem Artikel wird die HTML-zu-PDF-Konvertierung in C#, die von IronPDF bereitgestellt wird, im Detail behandelt.

Sehen Sie sich das Tutorial-Video an


Häufige Szenarien für die PDF-Erstellung in C#-Anwendungen

Bevor wir in den Code eintauchen, lassen Sie uns überlegen, warum Sie möglicherweise PDF in C# erstellen müssen:

  • Generieren von Rechnungen und Quittungen: Programmatisch C# erstellen von PDF-Rechnungen. IronPDF erleichtert es, HTML-Vorlagen für professionelle Layouts zu verwenden.
  • Erstellung dynamischer Berichte: Wenn Ihre C#-Anwendung komplexe PDF-Berichte mit Daten generieren muss, ermöglicht IronPDFs HTML-zu-PDF-Rendering eine reichhaltige Gestaltung und dynamische Inhalte.
  • Archivierung von Webinhalten: Konvertieren Sie dynamische Webseiten oder HTML-Inhalte in ein standardisiertes PDF-Format für eine zuverlässige Langzeitspeicherung oder die Einhaltung von Vorschriften mit der genauen URL- und HTML-Darstellung von IronPDF.
  • Sichere Dokumentenfreigabe: Erstellen Sie PDFs mit Passwortschutz, Verschlüsselung und spezifischen Benutzerberechtigungen, Funktionen, die in IronPDF leicht verfügbar sind.
  • Erstellen von Tickets, Gutscheinen oder Zertifikaten: Erstellen Sie druckbare Dokumente mit einzigartigem, dynamisch generiertem Inhalt. Die Fähigkeit von IronPDF, HTML in PDF umzuwandeln, ist perfekt zum Erstellen solcher Dokumentvorlagen.

    IronPDF bietet effektive Lösungen für all diese Anwendungsfälle und mehr.

1. Ein neues Projekt in Visual Studio erstellen

Öffnen Sie Visual Studio und wählen Sie das Menü Datei. Wählen Sie Neues Projekt und dann Konsolenanwendung aus. In diesem Artikel wird eine Konsolenanwendung zur Erstellung von PDF-Dokumenten verwendet.

C# PDF erstellen (Code-Beispiel-Tutorial), Abbildung 01: Erstellen Sie ein neues Projekt in Visual Studio

Erstellen Sie ein neues Projekt in Visual Studio

Geben Sie den Projektnamen ein und wählen Sie den Pfad in der entsprechenden Textbox. Dann klicken Sie auf die Schaltfläche Weiter.

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 02: Dieses Projekt konfigurieren

Konfigurieren Sie dieses Projekt

Wählen Sie das benötigte .NET Framework aus und klicken Sie dann auf die Schaltfläche Erstellen, wie unten gezeigt:

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 03: .NET Framework-Auswahl

Auswahl des .NET Frameworks

Das Visual Studio-Projekt erstellt nun die Struktur für die ausgewählte Anwendung. Wenn Sie die Konsole, Windows und Webanwendung ausgewählt haben, wird die Datei program.cs geöffnet, in der Sie den Code eingeben und die Anwendung erstellen/ausführen können.

Der nächste Schritt besteht darin, die Bibliothek hinzuzufügen und das Programm zu testen.

Verwendung des Visual Studio NuGet-Paketmanagers

Die Visual Studio-Software bietet die Option NuGet Package Manager, um das Paket direkt in der Lösung zu installieren. Der folgende Screenshot zeigt, wie Sie den NuGet Package Manager öffnen.

Wie erwähnt, bietet IronPDF eine kostenlose Lizenz für Entwicklung und Tests an.

C# Erstellen PDF (Code-Beispiel-Tutorial), Abbildung 04: Navigieren Sie zum NuGet-Paket-Manager

Zu NuGet-Paket-Manager navigieren

Das Suchfeld zeigt die Liste der verfügbaren Paketbibliotheken auf der NuGet-Website an. Suchen Sie im Paketmanager nach dem Schlüsselwort "IronPDF", wie im folgenden Screenshot gezeigt:

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 05: Installieren Sie das IronPdf-Paket aus dem NuGet-Paket-Manager

Installieren Sie das IronPdf-Paket über den NuGet-Paket-Manager

Wählen Sie in der obigen Abbildung die IronPDF-Option aus der Liste der zugehörigen NuGet-Pakete aus und installieren Sie das Paket für die Lösung.

Verwendung der Visual Studio-Befehlszeile

NuGet Installation mit NuGet

PM >  Install-Package IronPdf

Schauen Sie sich IronPDF auf NuGet für eine schnelle Installation an. Mit über 10 Millionen Downloads revolutioniert es die PDF-Entwicklung mit C#. Sie können auch die DLL oder den Windows-Installer herunterladen.

Im Visual Studio-Menü gehen Sie zu Tools > NuGet-Paket-Manager > Paket-Manager-Konsole

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 06: Zum Paket-Manager-Konsole navigieren

Navigieren Sie zur Paket-Manager-Konsole

Geben Sie auf der Registerkarte Paketmanager-Konsole die folgende Zeile ein:

Install-Package IronPdf
Install-Package IronPdf
SHELL

2. Erstellen Sie ein PDF aus HTML mit RenderHtmlAsPdf()

Mit installiertem IronPDF besteht eine der grundlegendsten Aufgaben darin, in C# ein PDF aus einem HTML-String zu erstellen. Dies ist äußerst nützlich, um dynamische PDF-Inhalte direkt innerhalb Ihrer Anwendung zu erstellen. Sie können die Methode RenderHtmlAsPdf() von IronPDF dafür verwenden. Dieser Ansatz ist ideal, wenn Sie schnell PDFs für Dinge wie einfache Benachrichtigungen, Bestätigungen oder kleine, dynamisch generierte Ausschnitte erstellen müssen.

using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
PdfDocument doc = renderer.RenderHtmlAsPdf("<h1>This is a heading</h1>");
doc.SaveAs("FirstPDFDocument.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
PdfDocument doc = renderer.RenderHtmlAsPdf("<h1>This is a heading</h1>");
doc.SaveAs("FirstPDFDocument.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New ChromePdfRenderer()
Dim doc As PdfDocument = renderer.RenderHtmlAsPdf("<h1>This is a heading</h1>")
doc.SaveAs("FirstPDFDocument.pdf")
$vbLabelText   $csharpLabel

In diesem Codeausschnitt instanziieren wir zunächst ChromePdfRenderer. Dann rufen wir RenderHtmlAsPdf() mit einem einfachen HTML-String auf. Schließlich speichert doc.SaveAs() das erzeugte PDF in 'FirstPDFDocument.pdf'. Diese Datei wird das gerenderte H1-Tag enthalten. Nach der Ausführung Ihres C#-Projekts finden Sie im Bin-Ordner Ihres Projekts eine Datei mit dem Namen "FirstPDFDocument.pdf". Doppelklicken Sie auf diese Datei, und die PDF-Datei wird in der Browser-Registerkarte geöffnet. Die Erstellung von PDF-Dateien in C# oder die Konvertierung von HTML in PDF ist mit IronPDF in wenigen Zeilen Code möglich.

3. Erstellen Sie ein PDF-Dokument aus einer URL

Wenn Ihr Ziel darin besteht, mit C# ein PDF aus einer vorhandenen Webseite zu erstellen, ist die RenderUrlAsPdf()-Methode von IronPDF genau das, was Sie benötigen. Dies ist nützlich zum Archivieren von Webinhalten, zum Erstellen von PDFs von Artikeln oder zum Erfassen des Zustands einer Live-Site.

using IronPdf;
using System;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
pdf.SaveAs("url.pdf");
using IronPdf;
using System;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
pdf.SaveAs("url.pdf");
Imports IronPdf
Imports System

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20")
pdf.SaveAs("url.pdf")
$vbLabelText   $csharpLabel

Hier nimmt RenderUrlAsPdf() eine URL-Zeichenkette, ruft den Inhalt ab, rendert ihn und erstellt ein PdfDocument. Die using-Anweisung stellt sicher, dass das PdfDocument ordnungsgemäß entsorgt wird. Die resultierende 'url.pdf' wird eine PDF-Version der angegebenen Webseite sein. Hier ist die Ausgabe des obigen Codes.

C# PDF erstellen (Code-Beispieltutorial), Abbildung 10: PDF-Dateiausgabe, gerendert von einer URL

PDF-Dateiausgabe, aus einer URL gerendert

Weitere Beispiele für die Konvertierung beliebter komplexer Websites in PDF.

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 11: Ein weiteres Beispiel für das Rendern einer komplexen Website

Ein weiteres Beispiel für das Rendern einer komplexen Website

4. ASP.NET MVC in PDF rendern

Um in C# PDF-Dokumente innerhalb einer ASP.NET MVC-Anwendung (unter Verwendung des .NET Frameworks) zu erstellen, können Sie eine HTML-Datei oder einen HTML-String rendern und sie dann als FileResult zurückgeben. Dies ist nützlich, um PDFs basierend auf serverseitiger Logik und Daten zu generieren und sie dann direkt an den Browser des Benutzers zu liefern.

using IronPdf;
using System.Web;
using System.Web.Mvc; // Required for ActionResult and EmptyResult

public class PdfController : Controller
{
    public ActionResult DownloadPdfFromHtmlFile()
    {
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
        var renderer = new IronPdf.ChromePdfRenderer();
        string htmlFilePath = HttpContext.Current.Server.MapPath("~/Project/MyHtmlDocument.html");
        using var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);

        var currentResponse = HttpContext.Current.Response;
        currentResponse.Clear();
        currentResponse.ContentType = "application/pdf";
        currentResponse.AddHeader("Content-Disposition", "attachment;filename=\"FileName.pdf\"");
        currentResponse.BinaryWrite(pdf.BinaryData);
        currentResponse.Flush();
        currentResponse.End();
        return new EmptyResult();
    }
}
using IronPdf;
using System.Web;
using System.Web.Mvc; // Required for ActionResult and EmptyResult

public class PdfController : Controller
{
    public ActionResult DownloadPdfFromHtmlFile()
    {
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
        var renderer = new IronPdf.ChromePdfRenderer();
        string htmlFilePath = HttpContext.Current.Server.MapPath("~/Project/MyHtmlDocument.html");
        using var pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath);

        var currentResponse = HttpContext.Current.Response;
        currentResponse.Clear();
        currentResponse.ContentType = "application/pdf";
        currentResponse.AddHeader("Content-Disposition", "attachment;filename=\"FileName.pdf\"");
        currentResponse.BinaryWrite(pdf.BinaryData);
        currentResponse.Flush();
        currentResponse.End();
        return new EmptyResult();
    }
}
Imports IronPdf
Imports System.Web
Imports System.Web.Mvc ' Required for ActionResult and EmptyResult

Public Class PdfController
	Inherits Controller

	Public Function DownloadPdfFromHtmlFile() As ActionResult
		IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
		Dim renderer = New IronPdf.ChromePdfRenderer()
		Dim htmlFilePath As String = HttpContext.Current.Server.MapPath("~/Project/MyHtmlDocument.html")
		Dim pdf = renderer.RenderHtmlFileAsPdf(htmlFilePath)

		Dim currentResponse = HttpContext.Current.Response
		currentResponse.Clear()
		currentResponse.ContentType = "application/pdf"
		currentResponse.AddHeader("Content-Disposition", "attachment;filename=""FileName.pdf""")
		currentResponse.BinaryWrite(pdf.BinaryData)
		currentResponse.Flush()
		currentResponse.End()
		Return New EmptyResult()
	End Function
End Class
$vbLabelText   $csharpLabel

In dieser MVC-Controller-Aktion konvertiert RenderHtmlFileAsPdf eine angegebene HTML-Datei. Das Response-Objekt wird dann verwendet, um das PDF als Download an den Client zu senden. Das EmptyResult wird zurückgegeben, weil die Antwort direkt verarbeitet wird.

5. Razor-Ansichten in PDF umwandeln

Für ASP.NET MVC-Anwendungen besteht eine häufige Aufgabe darin, mit C# ein PDF aus einer Razor-Ansicht zu erstellen. Dies ermöglicht es Ihnen, Ihre bestehende View-Logik und Modelle zu verwenden, um dynamisches HTML zu erzeugen, das IronPDF dann in PDF umwandelt. Die folgende Hilfsmethode rendert eine Razor-Ansicht in eine HTML-Zeichenfolge.

using IronPdf;
using System.IO;
using System.Web.Mvc; // Required for ControllerContext, ViewEngines, etc.

public string RenderRazorViewToString(ControllerContext controllerContext, string viewName, object model)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    controllerContext.Controller.ViewData.Model = model;
    using (var sw = new StringWriter())
    {
        var viewResult = ViewEngines.Engines.FindPartialView(controllerContext, viewName);
        var viewContext = new ViewContext(controllerContext, viewResult.View, controllerContext.Controller.ViewData, controllerContext.Controller.TempData, sw);
        viewResult.View.Render(viewContext, sw);
        viewResult.ViewEngine.ReleaseView(controllerContext, viewResult.View);
        return sw.GetStringBuilder().ToString();
    }
}
using IronPdf;
using System.IO;
using System.Web.Mvc; // Required for ControllerContext, ViewEngines, etc.

public string RenderRazorViewToString(ControllerContext controllerContext, string viewName, object model)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    controllerContext.Controller.ViewData.Model = model;
    using (var sw = new StringWriter())
    {
        var viewResult = ViewEngines.Engines.FindPartialView(controllerContext, viewName);
        var viewContext = new ViewContext(controllerContext, viewResult.View, controllerContext.Controller.ViewData, controllerContext.Controller.TempData, sw);
        viewResult.View.Render(viewContext, sw);
        viewResult.ViewEngine.ReleaseView(controllerContext, viewResult.View);
        return sw.GetStringBuilder().ToString();
    }
}
Imports IronPdf
Imports System.IO
Imports System.Web.Mvc ' Required for ControllerContext, ViewEngines, etc.

Public Function RenderRazorViewToString(ByVal controllerContext As ControllerContext, ByVal viewName As String, ByVal model As Object) As String
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	controllerContext.Controller.ViewData.Model = model
	Using sw = New StringWriter()
		Dim viewResult = ViewEngines.Engines.FindPartialView(controllerContext, viewName)
		Dim viewContext As New ViewContext(controllerContext, viewResult.View, controllerContext.Controller.ViewData, controllerContext.Controller.TempData, sw)
		viewResult.View.Render(viewContext, sw)
		viewResult.ViewEngine.ReleaseView(controllerContext, viewResult.View)
		Return sw.GetStringBuilder().ToString()
	End Using
End Function
$vbLabelText   $csharpLabel

Diese Methode nimmt den ControllerContext, den Ansichtsname und das Modell, um die Razor-Ansicht in eine HTML-Zeichenkette zu rendern. Dieser String kann dann an die RenderHtmlAsPdf()-Methode von IronPDF übergeben werden, wobei daran zu denken ist, dass ein BaseUri festgelegt werden muss, wenn Ihre Razor-Ansicht relative Pfade für Assets verwendet. Bitte lesen Sie die .NET MVC PDF Guide-Dokumentation, um zu erfahren, wie Sie eine MVC-Ansicht als binäre PDF-Datei rendern können.

6. XML in PDF umwandeln

Wenn Sie in C# aus XML-Daten ein PDF erstellen müssen, ist ein robuster Ansatz, zuerst das XML mithilfe von XSLT (Extensible Stylesheet Language Transformations) in HTML umzuwandeln. IronPDF kann dann das resultierende HTML in ein PDF konvertieren. Dies ist nützlich, um strukturierte XML-Daten in einem für Menschen lesbaren Format darzustellen.

using IronPdf;
using System.Xml;
using System.Xml.Xsl;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
string xsltContent = @"<xsl:stylesheet version='1.0' xmlns:xsl='[http://www.w3.org/1999/XSL/Transform](http://www.w3.org/1999/XSL/Transform)'>
                            <xsl:template match='/root'>
                                <html><body><h1>Items:</h1><ul><xsl:for-each select='item'><li><xsl:value-of select='.'/></li></xsl:for-each></ul></body></html>
                            </xsl:template>
                        </xsl:stylesheet>";
string xmlContent = "<root><item>Hello</item><item>World</item></root>";

XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(xsltContent))) {
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(xmlContent))) {
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
using IronPdf;
using System.Xml;
using System.Xml.Xsl;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
string xsltContent = @"<xsl:stylesheet version='1.0' xmlns:xsl='[http://www.w3.org/1999/XSL/Transform](http://www.w3.org/1999/XSL/Transform)'>
                            <xsl:template match='/root'>
                                <html><body><h1>Items:</h1><ul><xsl:for-each select='item'><li><xsl:value-of select='.'/></li></xsl:for-each></ul></body></html>
                            </xsl:template>
                        </xsl:stylesheet>";
string xmlContent = "<root><item>Hello</item><item>World</item></root>";

XslCompiledTransform transform = new XslCompiledTransform();
using(XmlReader reader = XmlReader.Create(new StringReader(xsltContent))) {
    transform.Load(reader);
}
StringWriter results = new StringWriter();
using(XmlReader reader = XmlReader.Create(new StringReader(xmlContent))) {
    transform.Transform(reader, null, results);
}
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
Imports IronPdf
Imports System.Xml
Imports System.Xml.Xsl
Imports System.IO

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim xsltContent As String = "<xsl:stylesheet version='1.0' xmlns:xsl='[http://www.w3.org/1999/XSL/Transform](http://www.w3.org/1999/XSL/Transform)'>
                            <xsl:template match='/root'>
                                <html><body><h1>Items:</h1><ul><xsl:for-each select='item'><li><xsl:value-of select='.'/></li></xsl:for-each></ul></body></html>
                            </xsl:template>
                        </xsl:stylesheet>"
Dim xmlContent As String = "<root><item>Hello</item><item>World</item></root>"

Dim transform As New XslCompiledTransform()
Using reader As XmlReader = XmlReader.Create(New StringReader(xsltContent))
	transform.Load(reader)
End Using
Dim results As New StringWriter()
Using reader As XmlReader = XmlReader.Create(New StringReader(xmlContent))
	transform.Transform(reader, Nothing, results)
End Using
Dim Renderer As New IronPdf.ChromePdfRenderer()
Renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf")
$vbLabelText   $csharpLabel

Diese Code-Snippet definiert ein XSLT, um XML in eine einfache HTML-Liste zu transformieren. XslCompiledTransform führt die Transformation durch, und der resultierende HTML-String wird dann von IronPDF in 'Final.pdf' gerendert.

7. PDF-Berichte erstellen

Für die Erstellung von PDF-Berichten in C#, insbesondere solchen mit benutzerdefinierten Kopf- und Fußzeilen sowie Seitennummerierungen, ist IronPDF äußerst effektiv. Der typische Arbeitsablauf besteht darin, Ihre Berichtsdatei als HTML-Dokument zu generieren und dann IronPDF zu verwenden, um dieses HTML in ein gut formatiertes PDF zu konvertieren.

using IronPdf;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.FontFamily = "Arial";
Renderer.RenderingOptions.TextHeader.FontSize = 12;
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.FontFamily = "Helvetica";
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
File.WriteAllText("Report.html", "<html><body><h1>Sample Report Content</h1><p>This is a test report.</p></body></html>");
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf");
using IronPdf;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
Renderer.RenderingOptions.FirstPageNumber = 1;
Renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
Renderer.RenderingOptions.TextHeader.CenterText = "{url}";
Renderer.RenderingOptions.TextHeader.FontFamily = "Arial";
Renderer.RenderingOptions.TextHeader.FontSize = 12;
Renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
Renderer.RenderingOptions.TextFooter.FontFamily = "Helvetica";
Renderer.RenderingOptions.TextFooter.FontSize = 10;
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
File.WriteAllText("Report.html", "<html><body><h1>Sample Report Content</h1><p>This is a test report.</p></body></html>");
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf");
Imports IronPdf
Imports System.IO

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim Renderer As New IronPdf.ChromePdfRenderer()
Renderer.RenderingOptions.FirstPageNumber = 1
Renderer.RenderingOptions.TextHeader.DrawDividerLine = True
Renderer.RenderingOptions.TextHeader.CenterText = "{url}"
Renderer.RenderingOptions.TextHeader.FontFamily = "Arial"
Renderer.RenderingOptions.TextHeader.FontSize = 12
Renderer.RenderingOptions.TextFooter.DrawDividerLine = True
Renderer.RenderingOptions.TextFooter.FontFamily = "Helvetica"
Renderer.RenderingOptions.TextFooter.FontSize = 10
Renderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
Renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
File.WriteAllText("Report.html", "<html><body><h1>Sample Report Content</h1><p>This is a test report.</p></body></html>")
Renderer.RenderHtmlFileAsPdf("Report.html").SaveAs("Report.pdf")
$vbLabelText   $csharpLabel

Dieses Beispiel konfiguriert verschiedene RenderingOptions für Kopfzeilen (Anzeige der Quell-URL) und Fußzeilen (mit Datum, Uhrzeit und Seitenzahlen). Es wird dann eine HTML-Datei namens 'Report.html' in 'Report.pdf' gerendert, komplett mit diesen Einstellungen.

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 12: CSharp PDF erstellen

Beispielausgabe für CSharp PDF-Erstellung

8. Arbeiten Sie mit PDF-Bildern und CSS

Wenn Sie in C# PDF-Dokumente aus HTML erstellen, das Bilder und externe CSS-Dateien enthält, ist es wichtig, dass IronPDF diese Ressourcen finden kann. Dies wird erreicht, indem eine BaseUri an die Rendering-Methoden übergeben wird, die IronPDF den Stammpfad für relative URLs in Ihrem HTML angibt.

using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'><h1>Image Test</h1>",@"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");

using var advancedPDF = renderer.RenderHtmlFileAsPdf("C:\\Assets\\TestInvoice1.html");
advancedPDF.SaveAs("Invoice.pdf");
using IronPdf;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new IronPdf.ChromePdfRenderer();
using var pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'><h1>Image Test</h1>",@"C:\site\assets\");
pdf.SaveAs("html-with-assets.pdf");

using var advancedPDF = renderer.RenderHtmlFileAsPdf("C:\\Assets\\TestInvoice1.html");
advancedPDF.SaveAs("Invoice.pdf");
Imports IronPdf

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New IronPdf.ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'><h1>Image Test</h1>","C:\site\assets\")
pdf.SaveAs("html-with-assets.pdf")

Dim advancedPDF = renderer.RenderHtmlFileAsPdf("C:\Assets\TestInvoice1.html")
advancedPDF.SaveAs("Invoice.pdf")
$vbLabelText   $csharpLabel

Der erste Teil zeigt das Rendern eines HTML-Strings mit einem Bild; Der BaseUri (C:\site\assets) teilt IronPDF mit, wo icons/iron.png zu finden ist. Der zweite Teil rendert eine HTML-Datei; wenn TestInvoice1.html relative Pfade für seine Ressourcen verwendet, werden diese relativ zu C:\Assets aufgelöst.

9. Konvertieren Sie ASPX-Dateien in PDF

Für Legacy-ASP.NET-Webforms-Anwendungen bietet IronPDF eine Möglichkeit, von .aspx-Seiten direkt C#-PDFs zu erstellen. Dies erfordert das IronPdf.Extensions.ASPX NuGet-Paket und ist spezifisch für .NET Framework-Projekte.

using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class SiteMaster : MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class SiteMaster : MasterPage
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
Imports System
Imports System.Web.UI
Imports IronPdf

Namespace aspxtopdf
	Partial Public Class SiteMaster
		Inherits MasterPage

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			IronPdf.AspxToPdf.RenderThisPageAsPdf()
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

In diesem Page_Load-Ereignis einer ASP.NET-Masterseite (oder einer beliebigen .aspx-Seite) wandelt AspxToPdf.RenderThisPageAsPdf() die gerenderte Ausgabe der aktuellen Seite in ein PDF um. Dies wird oft besser in einem Button-Klick-Ereignis platziert, um Probleme mit Postbacks zu vermeiden.

C# PDF erstellen (Code-Beispiel-Tutorial), Abbildung 13: CSharp PDF erstellen

Beispielausgabe für CSharp PDF-Erstellung

10. Beispieldatei HTML zu PDF anzeigen

Dieses Beispiel behandelt erneut die Umwandlung einer Live-URL in ein PDF, eine häufige Anforderung, wenn Sie mit C# PDF-Archive von Webinhalten erstellen oder Schnappschüsse von Online-Informationen teilen müssen.

using IronPdf;
using System;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
using IronPdf;
using System;
using System.IO;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var uri = new Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/");
var pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri);
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"));
Imports IronPdf
Imports System
Imports System.IO

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim uri As New Uri("https://www.c-sharpcorner.com/article/how-to-create-pdf-file-in-c-sharp-using-ironpdf/")
Dim pdf = ChromePdfRenderer.StaticRenderUrlAsPdf(uri)
pdf.SaveAs(Path.Combine(Directory.GetCurrentDirectory(), "UrlToPdf.Pdf"))
$vbLabelText   $csharpLabel

Hier bietet ChromePdfRenderer.StaticRenderUrlAsPdf() eine schnelle, statische Methode, um den Inhalt der angegebenen Uri direkt in ein PdfDocument zu konvertieren, das dann gespeichert wird. Die PDF-Datei wird im Ordner "Debug" erstellt. Hier ist die Ausgabe:

C# PDF erstellen (Codebeispiel-Tutorial), Abbildung 14: CSharp PDF erstellen

Beispielausgabe für CSharp PDF-Erstellung

Der Leitfaden zum Einstieg erklärt, wie man IronPDF über NuGet installiert (für diejenigen, die mit dem NuGet-Paket-Manager nicht vertraut sind).

11. PDF-Datei in .NET generieren

Dieses Beispiel veranschaulicht die Verwendung von IronPDF in einem ASP.NET Web Forms-Kontext zur Erstellung von PDF-Dateien, insbesondere durch das Rendern der aktuellen Seite als PDF als Reaktion auf einen Button-Klick. Dies ist ein typisches Szenario für die Erstellung von herunterladbaren PDF-Versionen von Webformularen oder Berichten.

using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
using System;
using System.Web.UI;
using IronPdf;

namespace aspxtopdf
{
    public partial class _Default : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            IronPdf.AspxToPdf.RenderThisPageAsPdf();
        }
    }
}
Imports System
Imports System.Web.UI
Imports IronPdf

Namespace aspxtopdf
	Partial Public Class _Default
		Inherits Page

		Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
		End Sub

		Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs)
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			IronPdf.AspxToPdf.RenderThisPageAsPdf()
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Wenn Button1 geklickt wird, erfasst AspxToPdf.RenderThisPageAsPdf() die gerenderte Ausgabe der aktuellen ASP.NET-Seite und streamt sie als PDF an den Browser. Denken Sie daran, dass hierfür das IronPdf.Extensions.ASPX NuGet-Paket erforderlich ist.

C# Erstellen von PDF (Codebeispiel-Tutorial), Abbildung 15: CSharp Erstellen von PDF

Beispielausgabe für CSharp PDF-Erstellung

Dies erfordert die Installation von IronPdf.Extensions.ASPX von der offiziellen NuGet-Seite. Es ist in .NET Core nicht verfügbar, da ASPX durch das MVC-Modell abgelöst wurde.

12. PDF-Dokument erstellen (Weitere einfache Beispiele)

Hier ist ein weiteres schnelles Beispiel, um ein PDF aus einem HTML-String zu erstellen. Dies ist nützlich für sehr einfache PDF-Erstellung, bei der der HTML-Inhalt minimal ist oder spontan erstellt wird.

using IronPdf;

private void HTMLString()
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    var renderer = new IronPdf.ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    var outputPath = "ChromePdfRenderer.pdf";
    pdf.SaveAs(outputPath);
}
using IronPdf;

private void HTMLString()
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    var renderer = new IronPdf.ChromePdfRenderer();
    using var pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    var outputPath = "ChromePdfRenderer.pdf";
    pdf.SaveAs(outputPath);
}
Imports IronPdf

Private Sub HTMLString()
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	Dim renderer = New IronPdf.ChromePdfRenderer()
	Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>")
	Dim outputPath = "ChromePdfRenderer.pdf"
	pdf.SaveAs(outputPath)
End Sub
$vbLabelText   $csharpLabel

Diese private Methode zeigt, wie man ein PDF aus einem einfachen H1-Tag erstellt und speichert.

Der folgende Code zeigt, wie man ein PDF direkt aus einer ASPX-Seite im Page_Load-Ereignis erstellt. Obwohl möglich, sollte dieser Ansatz vorsichtig verwendet werden, aufgrund potenzieller Probleme mit Seitenlebenszyklus-Ereignissen und Postbacks. Häufig ist es zuverlässiger, die PDF-Erstellung durch eine bestimmte Benutzeraktion (wie einen Button-Klick) auszulösen.

using System;
using System.Web.UI;
using IronPdf;

protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
using System;
using System.Web.UI;
using IronPdf;

protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
Imports System
Imports System.Web.UI
Imports IronPdf

Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
$vbLabelText   $csharpLabel

IronPDF unterstützt JavaScript sehr gut über die Chromium-Rendering-Engine. Eine Bedingung ist allerdings, dass Sie eine Verzögerung beim Rendern einer Seite hinzufügen müssen, damit JavaScript Zeit hat, während der PDF-Erzeugung ausgeführt zu werden.

13. PDF-Bibliothek für .NET (WinForms-Beispiel)

IronPDF kann einfach integriert werden, um in einer Windows Forms (WinForms) Desktop-Anwendung ein PDF zu erstellen. Dieses Beispiel zeigt, wie man Benutzereingaben aus einem TextBox entnimmt und ein PDF generiert, wenn auf einen Button geklickt wird.

using IronPdf;
using System.Windows.Forms;
using System;
using System.ComponentModel;
using System.Drawing;

namespace ReadPdf
{
    public partial class Form1 : Form
    {
        private TextBox textBox1;
        private Button button1;
        private IContainer components = null;

        public Form1()
        {
            InitializeComponent();
        }

        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        private void InitializeComponent()
       {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.button1 = new System.Windows.Forms.Button();
           this.SuspendLayout();

            this.textBox1.Location = new System.Drawing.Point(12, 12);
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(260, 20);
            this.textBox1.TabIndex = 0;

            this.button1.Location = new System.Drawing.Point(12, 38);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(100, 23);
            this.button1.TabIndex = 1;
            this.button1.Text = "Create PDF";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(284, 73);
            this.Controls.Add(this.button1);
            this.Controls.Add(this.textBox1);
            this.Name = "Form1";
            this.Text = "PDF Creator";
            this.ResumeLayout(false);
            this.PerformLayout();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            var renderer = new ChromePdfRenderer();
            string text = textBox1.Text;
            renderer.RenderHtmlAsPdf("<h1>"+ System.Net.WebUtility.HtmlEncode(text) +"</h1>").SaveAs("custom.pdf");
            MessageBox.Show("Done !");
        }
    }
}
using IronPdf;
using System.Windows.Forms;
using System;
using System.ComponentModel;
using System.Drawing;

namespace ReadPdf
{
    public partial class Form1 : Form
    {
        private TextBox textBox1;
        private Button button1;
        private IContainer components = null;

        public Form1()
        {
            InitializeComponent();
        }

        protected override void Dispose(bool disposing)
        {
            if (disposing && (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        private void InitializeComponent()
       {
            this.textBox1 = new System.Windows.Forms.TextBox();
            this.button1 = new System.Windows.Forms.Button();
           this.SuspendLayout();

            this.textBox1.Location = new System.Drawing.Point(12, 12);
            this.textBox1.Name = "textBox1";
            this.textBox1.Size = new System.Drawing.Size(260, 20);
            this.textBox1.TabIndex = 0;

            this.button1.Location = new System.Drawing.Point(12, 38);
            this.button1.Name = "button1";
            this.button1.Size = new System.Drawing.Size(100, 23);
            this.button1.TabIndex = 1;
            this.button1.Text = "Create PDF";
            this.button1.UseVisualStyleBackColor = true;
            this.button1.Click += new System.EventHandler(this.button1_Click);

            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(284, 73);
            this.Controls.Add(this.button1);
            this.Controls.Add(this.textBox1);
            this.Name = "Form1";
            this.Text = "PDF Creator";
            this.ResumeLayout(false);
            this.PerformLayout();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
            var renderer = new ChromePdfRenderer();
            string text = textBox1.Text;
            renderer.RenderHtmlAsPdf("<h1>"+ System.Net.WebUtility.HtmlEncode(text) +"</h1>").SaveAs("custom.pdf");
            MessageBox.Show("Done !");
        }
    }
}
Imports IronPdf
Imports System.Windows.Forms
Imports System
Imports System.ComponentModel
Imports System.Drawing

Namespace ReadPdf
	Partial Public Class Form1
		Inherits Form

		Private textBox1 As TextBox
		Private WithEvents button1 As Button
		Private components As IContainer = Nothing

		Public Sub New()
			InitializeComponent()
		End Sub

		Protected Overrides Sub Dispose(ByVal disposing As Boolean)
			If disposing AndAlso (components IsNot Nothing) Then
				components.Dispose()
			End If
			MyBase.Dispose(disposing)
		End Sub

		Private Sub InitializeComponent()
			Me.textBox1 = New System.Windows.Forms.TextBox()
			Me.button1 = New System.Windows.Forms.Button()
		   Me.SuspendLayout()

			Me.textBox1.Location = New System.Drawing.Point(12, 12)
			Me.textBox1.Name = "textBox1"
			Me.textBox1.Size = New System.Drawing.Size(260, 20)
			Me.textBox1.TabIndex = 0

			Me.button1.Location = New System.Drawing.Point(12, 38)
			Me.button1.Name = "button1"
			Me.button1.Size = New System.Drawing.Size(100, 23)
			Me.button1.TabIndex = 1
			Me.button1.Text = "Create PDF"
			Me.button1.UseVisualStyleBackColor = True
'INSTANT VB NOTE: The following InitializeComponent event wireup was converted to a 'Handles' clause:
'ORIGINAL LINE: this.button1.Click += new System.EventHandler(this.button1_Click);

			Me.AutoScaleDimensions = New System.Drawing.SizeF(6F, 13F)
			Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
			Me.ClientSize = New System.Drawing.Size(284, 73)
			Me.Controls.Add(Me.button1)
			Me.Controls.Add(Me.textBox1)
			Me.Name = "Form1"
			Me.Text = "PDF Creator"
			Me.ResumeLayout(False)
			Me.PerformLayout()
		End Sub

		Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles button1.Click
			IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
			Dim renderer = New ChromePdfRenderer()
'INSTANT VB NOTE: The variable text was renamed since Visual Basic does not handle local variables named the same as class members well:
			Dim text_Conflict As String = textBox1.Text
			renderer.RenderHtmlAsPdf("<h1>" & System.Net.WebUtility.HtmlEncode(text_Conflict) &"</h1>").SaveAs("custom.pdf")
			MessageBox.Show("Done !")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

Dieser WinForms-Code initialisiert eine einfache Benutzeroberfläche mit einem TextBox und einem Button. Beim Klicken des Buttons nimmt es den Text aus textBox1, umschließt ihn mit einem H1-HTML-Tag (wobei der Benutzereingang zur Sicherheit in HTML-codiert wird) und rendert ihn in 'custom.pdf'.

14. Chrome PDF-Rendering-Engine

Der Chrome PDF-Rendering-Engine von IronPDF garantiert eine "Chrome Identical" PDF-Darstellung Ihrer PDF-Dokumente aus der ursprünglichen HTML-Quelle.

Einige der Funktionen von Chrome PDF Rendering Feature sind:

  • 20% Schnellere Renderzeiten: Bietet müheloses Multithreading und Async, wobei so viele CPU-Kerne verwendet werden können, wie gewünscht. Für SAAS- und Hochlastanwendungen kann dies 5- bis 20-mal schneller sein und die direkte Browsernutzung und Web-Treiber übertreffen.
  • Vollständiger Web-Support: Voller Support für JavaScript, responsives Layout und CSS3.
  • Streng getestet: Die Version bestand mit 1156 grünen Einheiten- und Integrationstests (und keinen roten), was eine Stabilität ähnlich der Hauptversion gewährleistet, die täglich kontinuierlich und aktiv verbessert wird.
  • Section-508-Konformität für Barrierefreiheit: Erstellt zugängliche PDFs unter Verwendung des PDF(UA)-getaggten PDF-Standards.
  • Azure als erstklassiger Bürger: Es funktioniert einfach.
  • Fortgesetzte Wartung und verbesserte vollständige Unterstützung für .NET 6, 5, Core und Framework 4.0+.

    Erkunden Sie die Multithreading- und Async-Unterstützungsfunktionen für die Chrome-Rendering-Engine.

    Hier ist ein Beispiel:

using IronPdf;
using IronPdf.Rendering;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
using var doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>");
doc.SaveAs("google_chrome.pdf");
using IronPdf;
using IronPdf.Rendering;

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;
using var doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>");
doc.SaveAs("google_chrome.pdf");
Imports IronPdf
Imports IronPdf.Rendering

IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01"
Dim renderer = New ChromePdfRenderer()
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen
renderer.RenderingOptions.PrintHtmlBackgrounds = True
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Dim doc = renderer.RenderHtmlAsPdf("<h1>Hello world! This is sample for IronPdf</h1>")
doc.SaveAs("google_chrome.pdf")
$vbLabelText   $csharpLabel

Warum IronPDF für Ihre PDF-Anforderungen wählen?

Während andere PDF-Bibliotheken verfügbar sind, bietet IronPDF mehrere überzeugende Vorteile für Entwickler, die sich auf eine effiziente und hochwertige PDF-Erstellung konzentrieren:

  • Pixelgenaue HTML-zu-PDF-Konvertierung: Durch die Nutzung einer Chrome-Engine stellt IronPDF sicher, dass beim Erstellen von PDFs aus HTML das Ergebnis nahezu identisch ist mit der Darstellung in einem modernen Webbrowser, wobei komplexes CSS und JavaScript beibehalten werden.
  • Benutzerfreundlichkeit: Beginnen Sie schnell mit einer intuitiven API und umfassender Dokumentation, wie in diesem Tutorial gezeigt. Gewöhnliche Aufgaben wie das Konvertieren von HTML-Strings oder URLs in PDF erfordern minimalen Code.
  • Schnelle Einrichtung & Integration: Beginnen Sie innerhalb von Minuten mit der Erstellung von PDFs in Ihrem Projekt durch einfache NuGet-Installation und eine intuitive API, im Gegensatz zu einigen Bibliotheken, die eine komplexere Konfiguration erfordern.
  • Umfassendes Funktionsset: Über die grundlegende PDF-Erstellung aus HTML hinaus unterstützt IronPDF eine Vielzahl von Funktionen, einschließlich Kopf- und Fußzeilen, Formularausfüllung, digitale Signaturen, Passwortschutz, PDF-Zusammenführung und vieles mehr.
  • Leistung und Skalierbarkeit: Entwickelt für moderne multithreaded Anwendungen, kann IronPDF anspruchsvolle PDF-Generierungsaufgaben bewältigen und skaliert gut in Serverumgebungen.
  • Hervorragender Support und regelmäßige Updates: Profitieren Sie von professionellem Support und einer Bibliothek, die aktiv gepflegt und verbessert wird.

Häufig gestellte Fragen (FAQ)

F: Was ist der einfachste Weg, um ein PDF aus HTML zu erstellen?

Viele Entwickler finden IronPDF eine der einfachsten Lösungen, da es mit der einfachen RenderHtmlAsPdf-Methode und der umfassenden Unterstützung für HTML-Standards überzeugt. Sie können PDF-Dateien aus HTML-Strings oder URLs mit nur wenigen Codezeilen erstellen.

F: Ist IronPDF eine kostenlose PDF-Bibliothek?

A: IronPDF bietet eine kostenlose Lizenz für Entwicklung und Tests an. Für den Produktionsbetrieb ist eine kommerzielle Lizenz erforderlich. Sie bieten eine Testphase an, um alle Funktionen zu bewerten.

F: Kann IronPDF komplexe Webseiten mit JavaScript und CSS3 konvertieren?

A: Ja, IronPDF verwendet eine moderne Chromium-Engine, die hervorragende Unterstützung für HTML5, CSS3, JavaScript, responsive Layouts und andere Webtechnologien bietet, um eine genaue Darstellung beim Erstellen von PDF-Dateien zu gewährleisten.

F: Kann IronPDF große PDF-Generationen bewältigen?

A: Ja, IronPDF ist für Leistung ausgelegt und kann effizient PDF-Dokumente von beträchtlicher Größe erstellen. Sein Rendering-Engine und die Optionen für asynchrone Operationen machen es für anspruchsvolle Anwendungen geeignet.

15. Zusammenfassung

Danke fürs Lesen! Dieses umfassende Tutorial hat Ihnen mehrere leistungsstarke Möglichkeiten gezeigt, PDF-Dokumente mit IronPDF in .NET zu erstellen. Ob Sie HTML in PDF konvertieren, URLs rendern oder komplexe Berichte erstellen müssen, IronPDF bietet eine intuitive und robuste Lösung. Seine Benutzerfreundlichkeit, zusammen mit fortschrittlichen Funktionen wie JavaScript-, CSS- und Bildunterstützung, macht es zu einer idealen Wahl für Entwickler, die effizient hochwertige PDF-Dokumente erstellen möchten.

Bereit, Ihre PDF-Erstellung zu vereinfachen und die Kontrolle über Ihre Dokumenten-Workflows zu übernehmen?

Chipego
Software-Ingenieur
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
.NET Core PDF-Bibliothek
NÄCHSTES >
x509certificate2 Programmatisch digitale Signatur zu PDF hinzufügen