Zum Fußzeileninhalt springen
IRONPDF NUTZEN

Konvertierung von HTML in PDF in .NET mit IronPDF

IronPDF ist ein .NET HTML-zu-PDF-Konverter, der die Rendering-Engine von Chrome nutzt, um HTML-Strings, Dateien und Webseiten in hochwertige PDF-Dokumente mit präziser CSS-Darstellung und JavaScript-Ausführungsunterstützung umzuwandeln.

Die Konvertierung von HTML in PDF stellt eine komplexe Herausforderung in der .NET-Entwicklung dar. Sie benötigen einen PDF-Konverter, der moderne CSS-Layouts unterstützt, JavaScript korrekt ausführt und qualitativ hochwertige Dokumente erzeugt – und dabei gleichzeitig einfach zu implementieren ist. IronPDF begegnet diesen Herausforderungen mit Chrome-basiertem Rendering, wodurch Sie HTML-Dateien, Zeichenketten und Webseiten in Browserqualität konvertieren können.

Dieser Artikel zeigt Ihnen, wie Sie die professionelle PDF-Generierung in Ihrer .NET-Anwendung implementieren können – von einfachen Konvertierungen bis hin zu erweiterten Funktionen wie digitalen Signaturen und PDF-Manipulation unter Windows, Linux und Azure . Sie lernen, asynchrone Operationen zur Leistungsoptimierung und benutzerdefinierte Protokollierung zur Fehlersuche einzusetzen.

IronPDF C# PDF-Bibliothek: Homepage-Banner mit den wichtigsten Funktionen wie HTML-zu-PDF-Konvertierung, PDF-Bearbeitungsfunktionen, flexible Bereitstellungsoptionen und kostenlosem Testangebot

Warum IronPDF für die HTML-zu-PDF-Konvertierung in .NET wählen?

Warum ist Chrome Rendering bei der PDF-Erstellung überlegen?

Die Chrome-Rendering-Engine von IronPDF liefert außergewöhnliche Ergebnisse. Im Gegensatz zu Bibliotheken, die veraltete WebKit Snapshots verwenden, nutzt IronPDF dieselbe Blink-Technologie wie Google Chrome. Ihre PDFs werden exakt so gerendert, wie sie in der Druckvorschau von Chrome erscheinen – ohne fehlende Formatvorlagen oder fehlerhafte Layouts. Erfahren Sie mehr über die Rendering-Funktionen von Chrome und vergleichen Sie diese mit Konkurrenzlösungen .

Wie kommt IronPDF mit modernen Webtechnologien zurecht?

Moderne Webanwendungen nutzen ausgefeiltes CSS und JavaScript. IronPDF bietet native Unterstützung für CSS3, einschließlich Flexbox, Rastersysteme, Transformationen und Animationen. Die Engine verarbeitet JavaScript vor dem Rendern, um sicherzustellen, dass dynamisch generierte Inhalte korrekt angezeigt werden. Ob beim Konvertieren von Dateien oder beim Rendern von Seiten – IronPDF erfasst den Endzustand. Die Bibliothek unterstützt Bootstrap-Layouts , responsive Designs und WebGL-Inhalte .

Warum ist das API-Design entwicklerfreundlich?

Die Bibliothek legt Wert auf eine benutzerfreundliche Entwicklererfahrung durch ein unkompliziertes API-Design. Sie arbeiten mit vertrautem HTML und CSS, während IronPDF die Komplexität übernimmt. Die ChromePdfRenderer-Klasse bietet intelligente Standardeinstellungen und ermöglicht bei Bedarf eine detaillierte Steuerung. IronPDF bietet im Vergleich zu QuestPDF oder Syncfusion einen deutlich höheren Bedienkomfort.

Das Dashboard mit Funktionsübersicht zeigt die vier Hauptfunktionen für PDFs: PDFs erstellen, PDFs konvertieren, PDFs bearbeiten sowie PDFs signieren und sichern. Unter jeder Kategorie finden Sie eine detaillierte Funktionsliste.

Wie installiere ich IronPDF in meinem .NET 8-Projekt?

Wie installiere ich am schnellsten über den Paketmanager?

Die Einrichtung von IronPDF dauert nur wenige Minuten. Verwenden der Paket-Manager-Konsole in Visual Studio:

Install-Package IronPdf

Die Paket-Manager-Konsole zeigt den Installationsprozess des IronPDF-NuGet-Pakets mit mehreren heruntergeladenen Abhängigkeiten an.

Dadurch werden das Paket und seine Abhängigkeiten heruntergeladen und die Projektverweise automatisch konfiguriert. Das Paket enthält plattformspezifische Binärdateien, die zur Laufzeit aufgelöst werden. Für fortgeschrittene Szenarien empfiehlt sich die Bereitstellung mit Docker oder die Verwendung von Remote-Containern .

Wie installiere ich das Ganze über die .NET-Befehlszeilenschnittstelle?

Für die Installation über die Kommandozeile:

dotnet add package IronPdf

Dies funktioniert gut für VS Code, Rider oder automatisierte Pipelines. In der Dokumentation finden Sie plattformspezifische Anweisungen, einschließlich der Unterstützung für F# .

Wie sieht es mit GUI-basierten Installationsmethoden aus?

Der NuGet-Paketmanager von Visual Studio bietet eine durchsuchbare Oberfläche. Klicken Sie mit der rechten Maustaste auf Ihr Projekt, wählen Sie "NuGet-Pakete verwalten", suchen Sie nach "IronPdf" und installieren Sie es. Erfahren Sie mehr über die erweiterte Konfiguration für Unternehmenseinsätze.

Wie konfiguriere ich IronPDF nach der Installation?

Fügen Sie den Namespace hinzu:

using IronPdf;
using IronPdf.Rendering; // For rendering options
using IronPdf.Editing; // For PDF editing features
using IronPdf;
using IronPdf.Rendering; // For rendering options
using IronPdf.Editing; // For PDF editing features
Imports IronPdf
Imports IronPdf.Rendering ' For rendering options
Imports IronPdf.Editing ' For PDF editing features
$vbLabelText   $csharpLabel

Aktivieren Sie Ihre Lizenz für die Produktion:

IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

// Optional: Configure global settings
IronPdf.Installation.TempFolderPath = @"C:\Temp\IronPdf";
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

// Optional: Configure global settings
IronPdf.Installation.TempFolderPath = @"C:\Temp\IronPdf";
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = true;
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY"

' Optional: Configure global settings
IronPdf.Installation.TempFolderPath = "C:\Temp\IronPdf"
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled
IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig = True
$vbLabelText   $csharpLabel

Die 30-tägige kostenlose Testversion bietet vollen Funktionsumfang zum Ausprobieren. Informationen zu den Konfigurationsoptionen finden Sie in der Lizenzdokumentation .

Wie konvertiert man HTML-Strings mit IronPDF in PDF?

Wie geht man grundsätzlich bei der HTML-String-Konvertierung vor?

Die Konvertierung von HTML-Zeichenketten stellt den häufigsten Anwendungsfall dar. Beginnen Sie mit der grundlegenden Konvertierung mithilfe von RenderHtmlAsPdf :

using IronPdf;

// Create the renderer
var renderer = new ChromePdfRenderer();

// Configure options
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;

// Convert HTML to PDF
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #12345</h1><p>Total: $99.99</p>");

// Save the PDF
pdf.SaveAs("invoice.pdf");

// Get bytes for web response
byte[] pdfBytes = pdf.BinaryData;
using IronPdf;

// Create the renderer
var renderer = new ChromePdfRenderer();

// Configure options
renderer.RenderingOptions.MarginTop = 50;
renderer.RenderingOptions.MarginBottom = 50;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;

// Convert HTML to PDF
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #12345</h1><p>Total: $99.99</p>");

// Save the PDF
pdf.SaveAs("invoice.pdf");

// Get bytes for web response
byte[] pdfBytes = pdf.BinaryData;
Imports IronPdf

' Create the renderer
Dim renderer As New ChromePdfRenderer()

' Configure options
renderer.RenderingOptions.MarginTop = 50
renderer.RenderingOptions.MarginBottom = 50
renderer.RenderingOptions.MarginLeft = 20
renderer.RenderingOptions.MarginRight = 20

' Convert HTML to PDF
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Invoice #12345</h1><p>Total: $99.99</p>")

' Save the PDF
pdf.SaveAs("invoice.pdf")

' Get bytes for web response
Dim pdfBytes As Byte() = pdf.BinaryData
$vbLabelText   $csharpLabel

Dadurch wird eine PDF-Datei mit korrekter Textauswahl für die Barrierefreiheit erstellt. Entdecken Sie die Optionen für individuelle Ränder und Papierformate .

Ausgabe

Ein PDF-Viewer zeigt eine einfache Rechnung mit der Nummer 12345 und dem Gesamtbetrag von 99,99 $ in 100%iger Vergrößerung.

Wie kann ich PDFs mit CSS gestalten?

Binden Sie CSS direkt in Ihren HTML-Code ein:

var styledHtml = @"
    <style>
        @import url('___PROTECTED_URL_73___

        body { 
            font-family: 'Roboto', Arial, sans-serif; 
            margin: 40px;
            line-height: 1.6;
        }
        .header { 
            color: #2563eb; 
            border-bottom: 2px solid #e5e7eb; 
            padding-bottom: 10px;
        }
        .amount { 
            font-size: 24px; 
            font-weight: bold; 
            color: #059669;
        }
    </style>
    <div class='header'>
        <h1>Professional Invoice</h1>
        <p>Invoice Date: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
    </div>
    <p class='amount'>$1,234.56</p>";

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(500); // Wait for fonts

var pdf = renderer.RenderHtmlAsPdf(styledHtml);
pdf.SaveAs("styled-invoice.pdf");
var styledHtml = @"
    <style>
        @import url('___PROTECTED_URL_73___

        body { 
            font-family: 'Roboto', Arial, sans-serif; 
            margin: 40px;
            line-height: 1.6;
        }
        .header { 
            color: #2563eb; 
            border-bottom: 2px solid #e5e7eb; 
            padding-bottom: 10px;
        }
        .amount { 
            font-size: 24px; 
            font-weight: bold; 
            color: #059669;
        }
    </style>
    <div class='header'>
        <h1>Professional Invoice</h1>
        <p>Invoice Date: " + DateTime.Now.ToString("MMMM dd, yyyy") + @"</p>
    </div>
    <p class='amount'>$1,234.56</p>";

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(500); // Wait for fonts

var pdf = renderer.RenderHtmlAsPdf(styledHtml);
pdf.SaveAs("styled-invoice.pdf");
Imports System
Imports IronPdf

Dim styledHtml As String = "
    <style>
        @import url('___PROTECTED_URL_73___

        body { 
            font-family: 'Roboto', Arial, sans-serif; 
            margin: 40px;
            line-height: 1.6;
        }
        .header { 
            color: #2563eb; 
            border-bottom: 2px solid #e5e7eb; 
            padding-bottom: 10px;
        }
        .amount { 
            font-size: 24px; 
            font-weight: bold; 
            color: #059669;
        }
    </style>
    <div class='header'>
        <h1>Professional Invoice</h1>
        <p>Invoice Date: " & DateTime.Now.ToString("MMMM dd, yyyy") & "</p>
    </div>
    <p class='amount'>$1,234.56</p>"

Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.RenderDelay(500) ' Wait for fonts

Dim pdf = renderer.RenderHtmlAsPdf(styledHtml)
pdf.SaveAs("styled-invoice.pdf")
$vbLabelText   $csharpLabel

Das CSS wird genau wie in Chrome gerendert. Erkunden Sie Rendering-Optionen und Webfonts .

Wie gehe ich mit externen Ressourcen wie Bildern um?

Externe Ressourcen benötigen einen Basispfad:

var htmlWithImage = @"
    <html>
    <head>
        <link rel='stylesheet' href='styles.css' />
    </head>
    <body>
        <img src='logo.png' alt='Company Logo' />
        <h1>Document Title</h1>
    </body>
    </html>";

var renderer = new ChromePdfRenderer();

// Set base path for relative URLs
var pdf = renderer.RenderHtmlAsPdf(htmlWithImage, @"C:\assets\");

// Alternative: Use web resources
var webHtml = "<img src='/images/logo.png' />";
var pdfFromWeb = renderer.RenderHtmlAsPdf(webHtml, new Uri("___PROTECTED_URL_74___"));

pdf.SaveAs("document-with-assets.pdf");
var htmlWithImage = @"
    <html>
    <head>
        <link rel='stylesheet' href='styles.css' />
    </head>
    <body>
        <img src='logo.png' alt='Company Logo' />
        <h1>Document Title</h1>
    </body>
    </html>";

var renderer = new ChromePdfRenderer();

// Set base path for relative URLs
var pdf = renderer.RenderHtmlAsPdf(htmlWithImage, @"C:\assets\");

// Alternative: Use web resources
var webHtml = "<img src='/images/logo.png' />";
var pdfFromWeb = renderer.RenderHtmlAsPdf(webHtml, new Uri("___PROTECTED_URL_74___"));

pdf.SaveAs("document-with-assets.pdf");
Dim htmlWithImage As String = "
    <html>
    <head>
        <link rel='stylesheet' href='styles.css' />
    </head>
    <body>
        <img src='logo.png' alt='Company Logo' />
        <h1>Document Title</h1>
    </body>
    </html>"

Dim renderer As New ChromePdfRenderer()

' Set base path for relative URLs
Dim pdf = renderer.RenderHtmlAsPdf(htmlWithImage, "C:\assets\")

' Alternative: Use web resources
Dim webHtml As String = "<img src='/images/logo.png' />"
Dim pdfFromWeb = renderer.RenderHtmlAsPdf(webHtml, New Uri("___PROTECTED_URL_74___"))

pdf.SaveAs("document-with-assets.pdf")
$vbLabelText   $csharpLabel

Erfahren Sie mehr über die Verwaltung von Assets und Azure Blob Storage .

Ausgabe

PDF-Viewer mit IronPDF für .NET-Logo auf weißem Hintergrund, Seite 1 von 1 bei 100 % Zoom.

Wie konvertiert man HTML-Dateien und URLs in PDF?

Wie konvertiere ich lokale HTML-Dateien?

Zum Konvertieren lokaler HTML-Dateien wird RenderHtmlFileAsPdf verwendet:

// Simple conversion
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlFileAsPdf("report-template.html");
pdf.SaveAs("report-output.pdf");

// Advanced conversion
var advancedRenderer = new ChromePdfRenderer();
advancedRenderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
advancedRenderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Environment;
advancedRenderer.RenderingOptions.PrintHtmlBackgrounds = true;

var advancedPdf = advancedRenderer.RenderHtmlFileAsPdf("complex-report.html");
advancedPdf.MetaData.Title = "Monthly Sales Report";
advancedPdf.SaveAs("advanced-report.pdf");
// Simple conversion
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlFileAsPdf("report-template.html");
pdf.SaveAs("report-output.pdf");

// Advanced conversion
var advancedRenderer = new ChromePdfRenderer();
advancedRenderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
advancedRenderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Environment;
advancedRenderer.RenderingOptions.PrintHtmlBackgrounds = true;

var advancedPdf = advancedRenderer.RenderHtmlFileAsPdf("complex-report.html");
advancedPdf.MetaData.Title = "Monthly Sales Report";
advancedPdf.SaveAs("advanced-report.pdf");
' Simple conversion
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlFileAsPdf("report-template.html")
pdf.SaveAs("report-output.pdf")

' Advanced conversion
Dim advancedRenderer = New ChromePdfRenderer()
advancedRenderer.RenderingOptions.PaperSize = PdfPaperSize.A4
advancedRenderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Environment
advancedRenderer.RenderingOptions.PrintHtmlBackgrounds = True

Dim advancedPdf = advancedRenderer.RenderHtmlFileAsPdf("complex-report.html")
advancedPdf.MetaData.Title = "Monthly Sales Report"
advancedPdf.SaveAs("advanced-report.pdf")
$vbLabelText   $csharpLabel

Die Methode übernimmt das Lesen von Dateien intern und die Verarbeitung verknüpfter Ressourcen. Informationen zu ZIP-Dateien finden Sie unter HTML aus Archiven .

Wie läuft die Konvertierung von Live-Webseiten ab?

Verwenden Sie RenderUrlAsPdf für Webseiten:

// Basic URL conversion
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_75___");
pdf.SaveAs("website-snapshot.pdf");

// Advanced conversion with authentication
var secureRenderer = new ChromePdfRenderer();
secureRenderer.LoginCredentials = new ChromeHttpLoginCredentials
{
    Username = "user@example.com",
    Password = "secure-password"
};

secureRenderer.RenderingOptions.WaitFor.NetworkIdle(500);
var securePdf = secureRenderer.RenderUrlAsPdf("___PROTECTED_URL_76___");
securePdf.SaveAs("secure-dashboard.pdf");
// Basic URL conversion
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_75___");
pdf.SaveAs("website-snapshot.pdf");

// Advanced conversion with authentication
var secureRenderer = new ChromePdfRenderer();
secureRenderer.LoginCredentials = new ChromeHttpLoginCredentials
{
    Username = "user@example.com",
    Password = "secure-password"
};

secureRenderer.RenderingOptions.WaitFor.NetworkIdle(500);
var securePdf = secureRenderer.RenderUrlAsPdf("___PROTECTED_URL_76___");
securePdf.SaveAs("secure-dashboard.pdf");
' Basic URL conversion
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_75___")
pdf.SaveAs("website-snapshot.pdf")

' Advanced conversion with authentication
Dim secureRenderer As New ChromePdfRenderer()
secureRenderer.LoginCredentials = New ChromeHttpLoginCredentials With {
    .Username = "user@example.com",
    .Password = "secure-password"
}

secureRenderer.RenderingOptions.WaitFor.NetworkIdle(500)
Dim securePdf = secureRenderer.RenderUrlAsPdf("___PROTECTED_URL_76___")
securePdf.SaveAs("secure-dashboard.pdf")
$vbLabelText   $csharpLabel

IronPDF führt JavaScript aus und wartet auf Inhalte, bevor PDFs generiert werden. Erfahren Sie mehr über Authentifizierung und Cookies .

Wie gehe ich mit responsiven Designs in PDFs um?

Viewport für responsive Websites konfigurieren:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1280);
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.ViewPortWidth = 1920;

var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_77___");
pdf.SaveAs("responsive-output.pdf");
var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1280);
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen;
renderer.RenderingOptions.ViewPortWidth = 1920;

var pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_77___");
pdf.SaveAs("responsive-output.pdf");
Dim renderer = New ChromePdfRenderer()
renderer.RenderingOptions.PaperFit.UseResponsiveCssRendering(1280)
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Screen
renderer.RenderingOptions.ViewPortWidth = 1920

Dim pdf = renderer.RenderUrlAsPdf("___PROTECTED_URL_77___")
pdf.SaveAs("responsive-output.pdf")
$vbLabelText   $csharpLabel

Siehe die Dokumentation zum Viewport und den Leitfaden für responsives CSS .

Welche erweiterten PDF-Funktionen bietet IronPDF?

Wie füge ich professionelle Kopf- und Fußzeilen hinzu?

Kopf- und Fußzeilen verbessern mehrseitige Dokumente:

var renderer = new ChromePdfRenderer();

// Configure header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    MaxHeight = 50,
    HtmlFragment = @"
        <div style='text-align: center; font-size: 12px;'>
            Annual Report 2024 - Confidential
        </div>",
    BaseUrl = new Uri(@"file:///C:/assets/")
};

// Configure footer with page numbers
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    MaxHeight = 30,
    HtmlFragment = @"
        <div style='text-align: center; font-size: 10px;'>
            Page {page} of {total-pages}
        </div>",
    DrawDividerLine = true
};

renderer.RenderingOptions.MarginTop = 60;
renderer.RenderingOptions.MarginBottom = 40;

var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1>");
pdf.SaveAs("report-with-headers.pdf");
var renderer = new ChromePdfRenderer();

// Configure header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    MaxHeight = 50,
    HtmlFragment = @"
        <div style='text-align: center; font-size: 12px;'>
            Annual Report 2024 - Confidential
        </div>",
    BaseUrl = new Uri(@"file:///C:/assets/")
};

// Configure footer with page numbers
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    MaxHeight = 30,
    HtmlFragment = @"
        <div style='text-align: center; font-size: 10px;'>
            Page {page} of {total-pages}
        </div>",
    DrawDividerLine = true
};

renderer.RenderingOptions.MarginTop = 60;
renderer.RenderingOptions.MarginBottom = 40;

var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1>");
pdf.SaveAs("report-with-headers.pdf");
Dim renderer = New ChromePdfRenderer()

' Configure header
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter With {
    .MaxHeight = 50,
    .HtmlFragment = "
        <div style='text-align: center; font-size: 12px;'>
            Annual Report 2024 - Confidential
        </div>",
    .BaseUrl = New Uri("file:///C:/assets/")
}

' Configure footer with page numbers
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter With {
    .MaxHeight = 30,
    .HtmlFragment = "
        <div style='text-align: center; font-size: 10px;'>
            Page {page} of {total-pages}
        </div>",
    .DrawDividerLine = True
}

renderer.RenderingOptions.MarginTop = 60
renderer.RenderingOptions.MarginBottom = 40

Dim pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1>")
pdf.SaveAs("report-with-headers.pdf")
$vbLabelText   $csharpLabel

Spezielle Platzhalter wie {page} und {total-pages} werden automatisch ersetzt. Schauen Sie sich das Tutorial zu Kopfzeilen an.

Wie kann ich Wasserzeichen auf PDFs anwenden?

Dokumente mit Wasserzeichen schützen:

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Confidential Document</h1>");

// Apply text watermark
pdf.ApplyWatermark(
    "<div style='font-size: 72px; color: red; opacity: 0.3;'>DRAFT</div>",
    rotation: 45,
    opacity: 30
);

pdf.SaveAs("watermarked-document.pdf");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Confidential Document</h1>");

// Apply text watermark
pdf.ApplyWatermark(
    "<div style='font-size: 72px; color: red; opacity: 0.3;'>DRAFT</div>",
    rotation: 45,
    opacity: 30
);

pdf.SaveAs("watermarked-document.pdf");
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Confidential Document</h1>")

' Apply text watermark
pdf.ApplyWatermark(
    "<div style='font-size: 72px; color: red; opacity: 0.3;'>DRAFT</div>",
    rotation:=45,
    opacity:=30
)

pdf.SaveAs("watermarked-document.pdf")
$vbLabelText   $csharpLabel

Erfahren Sie mehr über Wasserzeichentechniken und Stempeloptionen .

Was ist für digitale Signaturen erforderlich?

Unterschriften zur Authentizität hinzufügen:

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Contract Agreement</h1>");

// Load certificate
var cert = X509CertificateLoader.LoadPkcs12FromFile("certificate.pfx", "password");

// Create signature
var signature = new PdfSignature(cert)
{
    SigningContact = "John Smith",
    SigningLocation = "New York, NY",
    SigningReason = "Contract Approval"
};

// Sign the PDF
pdf.Sign(signature);
pdf.SaveAsRevision("signed-contract.pdf");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Contract Agreement</h1>");

// Load certificate
var cert = X509CertificateLoader.LoadPkcs12FromFile("certificate.pfx", "password");

// Create signature
var signature = new PdfSignature(cert)
{
    SigningContact = "John Smith",
    SigningLocation = "New York, NY",
    SigningReason = "Contract Approval"
};

// Sign the PDF
pdf.Sign(signature);
pdf.SaveAsRevision("signed-contract.pdf");
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Contract Agreement</h1>")

' Load certificate
Dim cert = X509CertificateLoader.LoadPkcs12FromFile("certificate.pfx", "password")

' Create signature
Dim signature = New PdfSignature(cert) With {
    .SigningContact = "John Smith",
    .SigningLocation = "New York, NY",
    .SigningReason = "Contract Approval"
}

' Sign the PDF
pdf.Sign(signature)
pdf.SaveAsRevision("signed-contract.pdf")
$vbLabelText   $csharpLabel

Erkunden Sie die zertifikatsbasierte Signierung und die HSM-Integration .

Wie implementiere ich PDF-Sicherheitsfunktionen?

Schützen Sie sensible Informationen:

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Set metadata
pdf.MetaData.Author = "Corporate Security";
pdf.MetaData.Title = "Confidential Report";

// Apply encryption
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.OwnerPassword = "owner456";
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.NoPrint;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;

pdf.SaveAs("secure-document.pdf");
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Set metadata
pdf.MetaData.Author = "Corporate Security";
pdf.MetaData.Title = "Confidential Report";

// Apply encryption
pdf.SecuritySettings.UserPassword = "user123";
pdf.SecuritySettings.OwnerPassword = "owner456";
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.NoPrint;
pdf.SecuritySettings.AllowUserCopyPasteContent = false;

pdf.SaveAs("secure-document.pdf");
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)

' Set metadata
pdf.MetaData.Author = "Corporate Security"
pdf.MetaData.Title = "Confidential Report"

' Apply encryption
pdf.SecuritySettings.UserPassword = "user123"
pdf.SecuritySettings.OwnerPassword = "owner456"
pdf.SecuritySettings.AllowUserPrinting = IronPdf.Security.PdfPrintSecurity.NoPrint
pdf.SecuritySettings.AllowUserCopyPasteContent = False

pdf.SaveAs("secure-document.pdf")
$vbLabelText   $csharpLabel

Überprüfung der PDF-Sicherheitsdokumentation und der Datenbereinigung .

Wie kann IronPDF in der Produktion eingesetzt werden?

Was wird für die Bereitstellung von Windows Server benötigt?

IronPDF beim Start konfigurieren:

var builder = WebApplication.CreateBuilder(args);

// Configure license
IronPdf.License.LicenseKey = builder.Configuration["IronPdf:LicenseKey"];

// Configure for Windows Server
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.TempFolderPath = @"D:\IronPdfTemp";

// Configure logging
IronPdf.Logging.LoggingMode = IronPdf.Logging.PdfLoggingModes.All;
IronPdf.Logging.LogFilePath = @"D:\Logs\IronPdf.log";

var app = builder.Build();
var builder = WebApplication.CreateBuilder(args);

// Configure license
IronPdf.License.LicenseKey = builder.Configuration["IronPdf:LicenseKey"];

// Configure for Windows Server
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled;
IronPdf.Installation.TempFolderPath = @"D:\IronPdfTemp";

// Configure logging
IronPdf.Logging.LoggingMode = IronPdf.Logging.PdfLoggingModes.All;
IronPdf.Logging.LogFilePath = @"D:\Logs\IronPdf.log";

var app = builder.Build();
Dim builder = WebApplication.CreateBuilder(args)

' Configure license
IronPdf.License.LicenseKey = builder.Configuration("IronPdf:LicenseKey")

' Configure for Windows Server
IronPdf.Installation.ChromeGpuMode = IronPdf.Engines.Chrome.ChromeGpuModes.Disabled
IronPdf.Installation.TempFolderPath = "D:\IronPdfTemp"

' Configure logging
IronPdf.Logging.LoggingMode = IronPdf.Logging.PdfLoggingModes.All
IronPdf.Logging.LogFilePath = "D:\Logs\IronPdf.log"

Dim app = builder.Build()
$vbLabelText   $csharpLabel

Siehe Windows-Installation und IIS-Bereitstellung .

Wie führe ich die Bereitstellung in Linux-Umgebungen durch?

Linux benötigt zusätzliche Abhängigkeiten:

FROM mcr.microsoft.com/dotnet/aspnet:8.0
RUN apt-get update && apt-get install -y \
    libgdiplus \
    libnss3 \
    libatk1.0-0 \
    libatk-bridge2.0-0 \
    libcups2 \
    && apt-get clean

WORKDIR /app
COPY . .
ENTRYPOINT ["dotnet", "MyApp.dll"]

Siehe Linux-Bereitstellung und Docker-Integration .

Welche Azure App Service-Konfiguration ist erforderlich?

Für Azure konfigurieren:

{
  "IronPdf": {
    "LicenseKey": "your-license-key",
    "TempFolderPath": "D:\\home\\IronPdfTemp",
    "ChromeGpuMode": "Disabled"
  }
}

Erfahren Sie mehr über Azure-Bereitstellung und Azure Functions .

Welche Stärken hat IronPDF in der .NET PDF-Bibliotheksumgebung?

Warum stellt das Chrome-basierte Rendering einen bedeutenden Fortschritt dar?

Die Chrome-Engine bietet grundlegende Vorteile. Während andere auf ältere Engines setzen, nutzt IronPDF die Technologie, die auch Chrome antreibt. Wenn Chrome CSS-Eigenschaften oder JavaScript-APIs hinzufügt, erhält IronPDF diese Funktionen automatisch. Dies ermöglicht eine pixelgenaue Darstellung, die herkömmlichen Lösungen überlegen ist.

Wie funktioniert plattformübergreifende Unterstützung wirklich?

IronPDF bietet konsistentes Rendering unter Windows, Linux und macOS mithilfe plattformoptimierter Binärdateien. Unabhängig davon, ob die Entwicklung unter Windows erfolgt und die Bereitstellung in Linux-Containern, bleibt das Ergebnis identisch. Informieren Sie sich über Plattformüberlegungen und Engine-Optionen .

Welche fortschrittlichen Funktionen zeichnen IronPDF aus?

Über die grundlegende Konvertierung hinaus unterstützt IronPDF Folgendes:

Was sind die nächsten Schritte für den Einstieg?

IronPDF macht die Konvertierung von HTML zu PDF zu einer unkomplizierten Angelegenheit. Die Chrome-Engine gewährleistet Genauigkeit, während das API-Design die Integration vereinfacht. Von einfachen Konvertierungen bis hin zu erweiterten Funktionen deckt IronPDF das gesamte Spektrum der PDF-Anforderungen ab.

Für den Einstieg sind drei Schritte erforderlich: Installieren Sie das NuGet-Paket , schreiben Sie Ihren ersten Code und veröffentlichen Sie ihn mit Zuversicht. Die kostenlose 30-Tage-Testversion bietet vollen Zugriff zur Evaluierung.

Die IronPDF-Lizenzseite zeigt vier unbefristete Lizenzstufen (Lite, Plus, Professional und Unlimited) mit Preisen und Funktionen für verschiedene Teamgrößen.

Entdecken Sie Codebeispiele , Tutorials und die API-Dokumentation . Die flexible Lizenzierung von IronPDF ist skalierbar und eignet sich für einzelne Entwickler bis hin zu Teams in großen Unternehmen. Im Änderungsprotokoll finden Sie Aktualisierungen.

Häufig gestellte Fragen

Wozu wird IronPDF verwendet?

IronPDF wird in .NET-Anwendungen zur Konvertierung von HTML in PDF verwendet. Es unterstützt modernes CSS und JavaScript und erzeugt qualitativ hochwertige PDF-Dokumente.

Wie geht IronPDF mit komplexen HTML-Layouts um?

IronPDF verwendet eine auf Chrome basierende Rendering-Engine, um komplexe HTML-Layouts präzise zu verarbeiten und so sicherzustellen, dass die PDF-Ausgabe dem entspricht, was Sie in Ihrem Browser sehen.

Kann IronPDF während der PDF-Konvertierung JavaScript ausführen?

Ja, IronPDF kann JavaScript ausführen, was für die korrekte Darstellung dynamischer Inhalte in der PDF-Ausgabe unerlässlich ist.

Lässt sich IronPDF einfach in .NET-Anwendungen implementieren?

IronPDF ist so konzipiert, dass es einfach zu implementieren und bereitzustellen ist und sich daher für Entwickler eignet, die mit .NET arbeiten.

Welche Arten von HTML-Quellen kann IronPDF in PDF konvertieren?

IronPDF kann HTML-Dateien, HTML-Zeichenketten und ganze Webseiten in das PDF-Format konvertieren.

Bleibt die Qualität des ursprünglichen HTML-Codes in der PDF-Datei durch IronPDF erhalten?

Ja, IronPDF erzeugt qualitativ hochwertige PDF-Dokumente mit der gleichen Genauigkeit wie der ursprüngliche HTML-Inhalt.

Was unterscheidet IronPDF von anderen PDF-Konvertern?

IronPDF bietet dank seiner Chrome-basierten Rendering-Engine ein nahtloses Konvertierungserlebnis und gewährleistet so die Kompatibilität mit modernen Webstandards.

Curtis Chau
Technischer Autor

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender ...

Weiterlesen