Rendering-Optionen in IronPDF mit C# verwenden
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
- IronPDF über NuGet Package Manager installieren
- Erstellen Sie eine
ChromePdfRendererInstanz - Konfigurieren Sie die Rendering-Optionen über die Eigenschaft
RenderingOptions - Rendering Ihrer Inhalte (HTML, Markdown, etc.) in PDF
- Speichern Sie das resultierende PDF-Dokument
-
Installieren Sie IronPDF mit NuGet Package Manager
PM > Install-Package IronPdf -
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"); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
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.
Minimaler Arbeitsablauf (5 Schritte)
- Herunterladen der C#-Bibliothek zur Verwendung von Rendering-Optionen
- Bereiten Sie die HTML-Assets oder die Datei für die PDF-Konvertierung vor
- Instanziierung der Klasse **`ChromePdfRenderer`**
- Zugriff auf die **`RenderingOptions`**-Eigenschaft, um Einstellungen zu konfigurieren
- Rendern Sie das PDF im gewünschten Format
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");
Imports IronPdf
' Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser
' to render HTML/CSS as a PDF document.
Private renderer As 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 With {.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.
Dim md As String = "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.
Dim pdf As PdfDocument = renderer.RenderMarkdownStringAsPdf(md)
' Save the generated PDF to a file named "renderingOptions.pdf."
pdf.SaveAs("renderingOptions.pdf")
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");
Imports IronPdf
Imports IronPdf.Rendering
' Create renderer with advanced options
Dim 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 With {
.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 With {
.Height = 20,
.HtmlFragment = "<div style='text-align: center; font-size: 10px;'>
Generated on {date} at {time}
</div>"
}
' Render HTML content
Dim htmlContent As String = "
<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>"
Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("professional-document.pdf")
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");
Imports IronPdf
Dim renderer = New ChromePdfRenderer()
' Enable PDF form creation from HTML forms
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
' HTML with form elements
Dim formHtml As String = "
<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>"
Dim pdfWithForms As PdfDocument = renderer.RenderHtmlAsPdf(formHtml)
pdfWithForms.SaveAs("interactive-form.pdf")
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. |
Bereit, mehr 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.

