Wie man Rendering-Optionen in IronPDF mit C# verwendet

This article was translated from English: Does it need improvement?
Translated
View the article in English

Die Rendering-Optionen in IronPDF passen die PDF-Generierung über die Klasse ChromePdfRenderer an und steuern Einstellungen wie Ränder, Kopf- und Fußzeilen, Papierformat, JavaScript Ausführung und CSS-Medientypen, um präzise formatierte PDF-Dokumente aus HTML, CSS und anderen Inhaltsquellen zu erstellen.

Schnellstart: Rendering-Optionen in C# anwenden

  1. IronPDF über NuGet Package Manager installieren
  2. Erstellen Sie eine ChromePdfRenderer Instanz
  3. Konfigurieren Sie die Rendering-Optionen über die Eigenschaft RenderingOptions
  4. Rendering Ihrer Inhalte (HTML, Markdown, etc.) in PDF
  5. Speichern Sie das resultierende PDF-Dokument
  1. Installieren Sie IronPDF mit NuGet Package Manager

    PM > Install-Package IronPdf
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    new IronPdf.ChromePdfRenderer { RenderingOptions = { PrintHtmlBackgrounds = true, MarginTop = 0, MarginBottom = 0, CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print, HtmlHeader = new IronPdf.HtmlHeaderFooter { HtmlFragment = "<div>My Header</div>" }, Language = "en-US", Timeout = 120000 } }
        .RenderHtmlStringAsPdf("<h1>Hello Options</h1>")
        .SaveAs("renderingOptions.pdf");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer

Rendering-Optionen bei der PDF-Generierung sind Einstellungen, die bestimmen, wie ein PDF-Dokument erstellt, angezeigt und gedruckt wird. Zu diesen Optionen gehören das Rendern von Formularelementen, das Aktivieren von JavaScript, das Erstellen von Inhaltsverzeichnissen, das Hinzufügen von Kopf- und Fußzeilen, das Anpassen von Rändern, das Einstellen von Papiergrößen und vieles mehr.

Die Klasse ChromePdfRenderer in IronPDF bietet verschiedene Rendering-Optionen zur Anpassung der PDF-Erzeugung. Es beinhaltet PaperFit, einen Manager, der das Inhaltslayout auf PDF-Seiten steuert und verschiedene Stile wie responsive CSS3-Layouts oder Endlos-Feed bietet. Bei der Arbeit mit komplexen Dokumenten kann es erforderlich sein, PDFs nach Anwendung von Rendering-Optionen zusammenzuführen oder zu teilen.


Wie verwende ich Rendering-Optionen in IronPDF?

Viele Eigenschaften der Rendering-Optionen sind zwar für die HTML-zu-PDF-Konvertierung konzipiert, funktionieren aber auch mit anderen PDF-Konvertierungsarten. Lassen Sie uns Markdown in PDF rendern und die Ausgabe mithilfe von Rendering-Optionen konfigurieren. Speziell für HTML-Konvertierungen erfahren Sie mehr über die Konvertierung von HTML-Dateien in PDF oder die Konvertierung von HTML-Strings in PDF.

Warum sollte ich die Rendering-Optionen konfigurieren?

Die Konfiguration von Rendering-Optionen stellt sicher, dass PDFs mit exakten Spezifikationen generiert werden: benutzerdefinierte Papiergrößen, spezifische Ränder, Kopf- und Fußzeilen oder aktiviertes JavaScript für dynamische Inhalte. Diese Kontrolle ist entscheidend für die Erstellung neuer PDFs für professionelle Dokumente oder Berichte.

Was passiert, wenn ich mehrere Rendering-Optionen anwende?

Mehrere Rendering-Optionen arbeiten zusammen, um die endgültige PDF-Ausgabe zu erstellen. Jede Option verändert einen bestimmten Rendering-Aspekt, und IronPDF wendet sie während der Konvertierung nacheinander an. Wenn beispielsweise sowohl Ränder als auch Kopfzeilen festgelegt werden, berücksichtigt der Inhalt der Kopfzeile die Randeinstellungen, sofern diese nicht mit der Eigenschaft UseMarginsOnHeaderAndFooter überschrieben werden.

:path=/static-assets/pdf/content-code-examples/how-to/rendering-options-render.cs
using IronPdf;

// Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser
// to render HTML/CSS as a PDF document.
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Configure rendering options
// Enable printing of HTML backgrounds to ensure all styles are visible.
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

// Set HTML header content using HtmlHeaderFooter.
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    // HTML fragment to add a header at the top of every page in the PDF.
    HtmlFragment = "<h1>Header Content</h1>"
};

// Set a custom paper size for the PDF in millimeters (width and height).
renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150);

// Set the top margin to zero to start the content from the very top of the page.
renderer.RenderingOptions.MarginTop = 0;

// Define a Markdown string that will be rendered as a PDF.
// Markdown text allows basic formatting like bold and italic styles.
string md = "This is some **bold** and *italic* text.";

// Render the Markdown string to a PDF document.
// The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.
PdfDocument pdf = renderer.RenderMarkdownStringAsPdf(md);

// Save the generated PDF to a file named "renderingOptions.pdf."
pdf.SaveAs("renderingOptions.pdf");
$vbLabelText   $csharpLabel

Beispiel für erweiterte Rendering-Optionen

Dieses umfassende Beispiel demonstriert die Kombination mehrerer Rendering-Optionen für eine professionelle Dokumentenerstellung. Dieser Ansatz ist hilfreich, wenn Sie Kopf- und Fußzeilen hinzufügen oder mit angepassten Papiergrößen arbeiten müssen:

using IronPdf;
using IronPdf.Rendering;

// Create renderer with advanced options
var renderer = new ChromePdfRenderer();

// Configure paper and layout settings
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

// Set margins for professional layout
renderer.RenderingOptions.MarginTop = 40;    // mm
renderer.RenderingOptions.MarginBottom = 40; // mm
renderer.RenderingOptions.MarginLeft = 20;   // mm
renderer.RenderingOptions.MarginRight = 20;  // mm

// Enable JavaScript for dynamic content
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.RenderDelay = 2000; // Wait 2 seconds for JS to execute

// Add professional header with page numbers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    Height = 25,
    HtmlFragment = @"<div style='text-align: center; padding: 10px;'>
                     <span>Document Title</span> - Page {page} of {total-pages}
                     </div>",
    DrawDividerLine = true
};

// Add footer with timestamp
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    Height = 20,
    HtmlFragment = @"<div style='text-align: center; font-size: 10px;'>
                     Generated on {date} at {time}
                     </div>"
};

// Render HTML content
string htmlContent = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; }
        .content { padding: 20px; }
    </style>
</head>
<body>
    <div class='content'>
        <h1>Professional Document</h1>
        <p>This document demonstrates advanced rendering options.</p>
    </div>
</body>
</html>";

PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("professional-document.pdf");
using IronPdf;
using IronPdf.Rendering;

// Create renderer with advanced options
var renderer = new ChromePdfRenderer();

// Configure paper and layout settings
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Portrait;
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

// Set margins for professional layout
renderer.RenderingOptions.MarginTop = 40;    // mm
renderer.RenderingOptions.MarginBottom = 40; // mm
renderer.RenderingOptions.MarginLeft = 20;   // mm
renderer.RenderingOptions.MarginRight = 20;  // mm

// Enable JavaScript for dynamic content
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.RenderDelay = 2000; // Wait 2 seconds for JS to execute

// Add professional header with page numbers
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    Height = 25,
    HtmlFragment = @"<div style='text-align: center; padding: 10px;'>
                     <span>Document Title</span> - Page {page} of {total-pages}
                     </div>",
    DrawDividerLine = true
};

// Add footer with timestamp
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter
{
    Height = 20,
    HtmlFragment = @"<div style='text-align: center; font-size: 10px;'>
                     Generated on {date} at {time}
                     </div>"
};

// Render HTML content
string htmlContent = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; }
        .content { padding: 20px; }
    </style>
</head>
<body>
    <div class='content'>
        <h1>Professional Document</h1>
        <p>This document demonstrates advanced rendering options.</p>
    </div>
</body>
</html>";

PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("professional-document.pdf");
$vbLabelText   $csharpLabel

Was sind die verfügbaren Rendering-Optionen?

Erweiterte Optionen definieren PDF-Rendering-Einstellungen wie Ränder, Papierausrichtung, Papiergröße und mehr. Das Verständnis dieser Optionen ist hilfreich, wenn Sie benutzerdefinierte Ränder einstellen oder mit verschiedenen Ansichtseinstellungen und Zoomstufen arbeiten müssen.

Welche Rendering-Optionen werden am häufigsten verwendet?

Zu den am häufigsten verwendeten Rendering-Optionen gehören Randeinstellungen, die Konfiguration der Papiergröße, die Einrichtung von Kopf- und Fußzeilen sowie die Aktivierung von JavaScript. Diese Optionen decken die meisten Anforderungen an die PDF-Anpassung ab. Bei webbasierten Inhalten sorgen JavaScript-Rendering-Optionen für die korrekte Darstellung dynamischer Elemente.

Wie wähle ich die richtigen Rendering-Optionen?

Wählen Sie die Rendering-Optionen entsprechend Ihren Anforderungen: Verwenden Sie Randeinstellungen für Drucklayouts, aktivieren Sie JavaScript für dynamische Webinhalte, konfigurieren Sie Kopf- und Fußzeilen für professionelle Dokumente und passen Sie die Papiergröße für bestimmte Ausgabeformate an. Bei der Arbeit mit Webinhalten sollten Sie CSS-Medientypen für eine optimale Darstellung berücksichtigen.

Wann sollte ich erweiterte Rendering-Optionen verwenden?

Verwenden Sie erweiterte Rendering-Optionen für spezielle Funktionen wie benutzerdefinierte CSS-Injektion, mathematisches LaTeX-Rendering, Graustufenausgabe oder bei der Arbeit mit komplexen Webanwendungen, die ein spezielles JavaScript-Ausführungs-Timing erfordern. Die WaitFor-Klasse bietet eine präzise Kontrolle über Rendering-Verzögerungen für komplexe Szenarien.

Arbeiten mit Formularelementen

Wenn HTML Formularelemente enthält, werden diese von IronPDF automatisch in interaktive PDF-Formulare umgewandelt:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Enable PDF form creation from HTML forms
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// HTML with form elements
string formHtml = @"
<html>
<body>
    <form>
        <label>Name: <input type='text' name='name' /></label><br>
        <label>Email: <input type='email' name='email' /></label><br>
        <label>Subscribe: <input type='checkbox' name='subscribe' /></label><br>
        <button type='submit'>Submit</button>
    </form>
</body>
</html>";

PdfDocument pdfWithForms = renderer.RenderHtmlAsPdf(formHtml);
pdfWithForms.SaveAs("interactive-form.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

// Enable PDF form creation from HTML forms
renderer.RenderingOptions.CreatePdfFormsFromHtml = true;

// HTML with form elements
string formHtml = @"
<html>
<body>
    <form>
        <label>Name: <input type='text' name='name' /></label><br>
        <label>Email: <input type='email' name='email' /></label><br>
        <label>Subscribe: <input type='checkbox' name='subscribe' /></label><br>
        <button type='submit'>Submit</button>
    </form>
</body>
</html>";

PdfDocument pdfWithForms = renderer.RenderHtmlAsPdf(formHtml);
pdfWithForms.SaveAs("interactive-form.pdf");
$vbLabelText   $csharpLabel

Nachstehend finden Sie eine Tabelle, die die verschiedenen verfügbaren Optionen veranschaulicht.

Class ChromePdfRenderer
Description Used to define PDF printout options, like paper size, DPI, headers, and footers
Properties / functions Type Description
CustomCookies Dictionar Custom cookies for the HTML render. Cookies do not persist between renders and must be set each time.
PaperFit VirtualPaperLayoutManager A manager for setting up virtual paper layouts, controlling how content will be laid out on PDF "paper" pages. Includes options for Default Chrome Behavior, Zoomed, Responsive CSS3 Layouts, Scale-To-Page & Continuous Feed style PDF page setups.
UseMarginsOnHeaderAndFooter UseMargins Use margin values from the main document when rendering headers and footers.
CreatePdfFormsFromHtml bool Turns all HTML form elements into editable PDF forms. Default value is true.
CssMediaType PdfCssMediaType Enables Media="screen" CSS Styles and StyleSheets. Default value is PdfCssMediaType.Screen.
CustomCssUrl string Allows a custom CSS style-sheet to be applied to HTML before rendering. May be a local file path or a remote URL. Only applicable when rendering HTML to PDF.
EnableJavaScript bool Enables JavaScript and JSON to be executed before the page is rendered. Ideal for printing from Ajax / Angular Applications. Default value is false.
EnableMathematicalLaTex bool Enables rendering of Mathematical LaTeX Elements.
Javascript string A custom JavaScript string to be executed after all HTML has loaded but before PDF rendering.
JavascriptMessageListener StringDelegate A method callback to be invoked whenever a browser JavaScript console message becomes available.
FirstPageNumber int First page number to be used in PDF Headers and Footers. Default value is 1.
TableOfContents TableOfContentsTypes Generates a table of contents at the location in the HTML document where an element is found with id "ironpdf-toc".
GrayScale bool Outputs a black-and-white PDF. Default value is false.
TextHeader ITextHeaderFooter Sets the footer content for every PDF page as text, supporting 'mail-merge' and automatically turning URLs into hyperlinks.
TextFooter
HtmlHeader HtmlHeaderFooter Sets the header content for every PDF page as HTML. Supports 'mail-merge'.
HtmlFooter
InputEncoding Encoding The input character encoding as a string. Default value is Encoding.UTF8.
MarginTop double Top PDF "paper" margin in millimeters. Set to zero for border-less and commercial printing applications. Default value is 25.
MarginRight double Right PDF "paper" margin in millimeters. Set to zero for border-less and commercial printing applications. Default value is 25.
MarginBottom double Bottom PDF "paper" margin in millimeters. Set to zero for border-less and commercial printing applications. Default value is 25.
MarginLeft double Left PDF "paper" margin in millimeters. Set to zero for border-less and commercial printing applications. Default value is 25.
PaperOrientation PdfPaperOrientation The PDF paper orientation, such as Portrait or Landscape. Default value is Portrait.
PaperSize PdfPaperSize Sets the paper size
SetCustomPaperSizeinCentimeters double Sets the paper size in centimeters.
SetCustomPaperSizeInInches Sets the paper size in inches.
SetCustomPaperSizeinMilimeters Sets the paper size in millimeters.
SetCustomPaperSizeinPixelsOrPoints Sets the paper size in screen pixels or printer points.
PrintHtmlBackgrounds Boolean Indicates whether to print background colors and images from HTML. Default value is true.
RequestContext RequestContexts Request context for this render, determining isolation of certain resources such as cookies.
Timeout Integer Render timeout in seconds. Default value is 60.
Title String PDF Document Name and Title metadata, useful for mail-merge and automatic file naming in the IronPdf MVC and Razor extensions.
ForcePaperSize Boolean Force page sizes to be exactly what is specified via IronPdf.ChromePdfRenderOptions.PaperSize by resizing the page after generating a PDF from HTML. Helps correct small errors in page size when rendering HTML to PDF.
WaitFor WaitFor A wrapper object that holds configuration for wait-for mechanism for users to wait for certain events before rendering. By default, it will wait for nothing.

Sind Sie bereit, mehr Möglichkeiten zu entdecken? Besuchen Sie unsere Tutorial-Seite: PDFs konvertieren

Häufig gestellte Fragen

Was sind die Rendering-Optionen bei der PDF-Erstellung?

Rendering-Optionen in IronPDF sind Einstellungen, die steuern, wie PDF-Dokumente über die ChromePdfRenderer-Klasse erstellt, angezeigt und gedruckt werden. Sie umfassen Konfigurationen für Ränder, Kopf- und Fußzeilen, Papiergröße, JavaScript-Ausführung, CSS-Medientypen, Formularelemente und Inhaltsverzeichnisse und ermöglichen eine präzise Anpassung der PDF-Ausgabe von HTML-, CSS- und anderen Inhaltsquellen.

Wie wende ich Rendering-Optionen auf eine PDF-Datei an?

So wenden Sie Rendering-Optionen in IronPDF an: 1) Installieren Sie IronPDF über NuGet, 2) Erstellen Sie eine ChromePdfRenderer-Instanz, 3) Konfigurieren Sie die Einstellungen über die RenderingOptions-Eigenschaft, 4) Rendern Sie Ihre Inhalte (HTML, Markdown usw.) in PDF, und 5) Speichern Sie das resultierende PDF. Sie können mehrere Optionen in einer einzigen Zeile festlegen, z. B. Ränder, CSS-Medientyp, Kopfzeilen und Timeout-Werte.

Kann ich Rendering-Optionen mit Nicht-HTML-Inhalten verwenden?

Ja, viele Eigenschaften der Rendering-Optionen sind zwar für die HTML-zu-PDF-Konvertierung konzipiert, funktionieren aber auch mit anderen PDF-Konvertierungstypen in IronPDF. Sie können Rendering-Optionen bei der Konvertierung von Markdown in PDF oder in andere unterstützte Formate anwenden, so dass Sie unabhängig vom Typ des Quellinhalts die gleiche Kontrolle über die endgültige PDF-Ausgabe haben.

Was ist PaperFit und wie funktioniert es?

PaperFit ist ein Manager innerhalb der ChromePdfRenderer-Klasse von IronPDF, der das Inhaltslayout von PDF-Seiten steuert. Er bietet verschiedene Stile für das Rendering, darunter responsive CSS3-Layouts oder Optionen für den kontinuierlichen Einzug, die sicherstellen, dass Ihre Inhalte entsprechend Ihren spezifischen Anforderungen richtig auf die PDF-Seiten passen.

Warum sollte ich Rendering-Optionen für meine PDFs konfigurieren?

Durch die Konfiguration von Rendering-Optionen in IronPDF wird sichergestellt, dass Ihre PDFs mit den genauen Spezifikationen erstellt werden, die für professionelle Dokumente erforderlich sind. Dazu gehören benutzerdefinierte Papiergrößen, spezifische Ränder, Kopf- und Fußzeilen oder aktiviertes JavaScript für dynamische Inhalte. Dieses Maß an Kontrolle ist entscheidend für die Erstellung von Berichten, Rechnungen oder anderen Dokumenten, die eine präzise Formatierung erfordern.

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
Bereit anzufangen?
Nuget Downloads 17,803,474 | Version: 2026.3 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronPdf
Führen Sie eine Probe aus Sehen Sie zu, wie Ihr HTML-Code in eine PDF-Datei umgewandelt wird.