Seitenumbrüche in HTML-PDFs mit C#35 hinzufügen oder vermeiden;
Seitenumbrüche in PDF-Dokumenten kontrollieren, indem Sie page-break-after: always; zu HTML-Elementen hinzufügen oder Umbrüche mit page-break-inside: avoid; verhindern, wenn Sie HTML mit IronPDF in C# in PDF umwandeln.
IronPDF unterstützt Seitenumbrüche innerhalb von PDF-Dokumenten. Ein wesentlicher Unterschied zwischen PDF-Dokumenten und HTML besteht darin, dass HTML-Dokumente tendenziell scrollen, während PDFs mehrseitig sind und gedruckt werden können. Bei der Konvertierung von HTML-Strings in PDF müssen Entwickler oft genau steuern, wo Seiten umbrochen werden, um ein professionelles Aussehen der Dokumente zu gewährleisten.
Schnellstart: Implementieren von Seitenumbrüchen bei der HTML-zu-PDF-Konvertierung
Konvertieren Sie HTML in PDF mit Seitenumbrüchen mit IronPDF. Dieses Beispiel zeigt, wie ein Seitenumbruch nach bestimmten HTML-Inhalten eingefügt wird, um einen korrekten Seitenumbruch zu gewährleisten. Indem Entwickler den page-break-after: always; Stil hinzufügen, kontrollieren sie, wo Seitenumbrüche auftreten, was die Lesbarkeit und Organisation des resultierenden PDF-Dokuments verbessert. <div> <section> <article> <div> page-break-inside DIV page-break-inside: avoid page-break-inside: avoid DIV <thead> page-break-inside: avoid page-break-after: always page-break-before: always orphans widows break-inside break-after break-before
-
Installieren Sie IronPDF mit NuGet Package Manager
-
Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.
new IronPdf.ChromePdfRenderer() .RenderHtmlAsPdf("<html><body><h1>Hello World!</h1><div style='page-break-after: always;'></div></body></html>") .SaveAs("pageWithBreaks.pdf"); -
Bereitstellen zum Testen in Ihrer Live-Umgebung
Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion
Minimaler Arbeitsablauf (5 Schritte)
- Herunterladen einer C#-Bibliothek zur Verwendung von Seitenumbrüchen in PDF
- Wenden Sie Seitenumbrüche auf den HTML-String an und konvertieren Sie ihn in PDF
- Setzen Sie vermeiden auf das
page-break-insideAttribut, um Seitenumbrüche in Bildern zu vermeiden - Das Gleiche gilt für Tabellen, um Seitenumbrüche in Tabellen zu vermeiden
- Stil auf CSS-Ebene festlegen
Wie kann ich einen Seitenumbruch in HTML zu PDF hinzufügen?
Um einen Seitenumbruch in HTML zu erzeugen, verwenden Sie dies in Ihrem HTML-Code:
<div style="page-break-after: always;"></div>
<div style="page-break-after: always;"></div>
Die CSS-Eigenschaft page-break-after ist die zuverlässigste Methode zur Steuerung der Paginierung bei der Umwandlung von HTML in PDF. Diese Eigenschaft weist den PDF-Renderer an, unmittelbar nach dem Element, das diesen Stil enthält, einen Seitenumbruch einzufügen. Bei der Arbeit mit Benutzerdefinierten Rändern oder spezifischen Seitenlayouts sorgen Seitenumbrüche dafür, dass der Inhalt genau an der vorgesehenen Stelle erscheint.
Warum funktioniert page-break-after besser als andere Methoden?
In diesem Beispiel habe ich folgendermaßen table und img in meinem HTML und möchte sie auf zwei separaten Seiten, indem ich nach dem table einen Seitenumbruch einfüge. Die Eigenschaft page-break-after liefert konsistentere Ergebnisse über verschiedene Rendering-Engines im Vergleich zu Alternativen wie page-break-before oder manuellen Abständen. Bei der Erstellung von neuen PDFs mit komplexen Layouts gewährleistet dieser Ansatz eine vorhersehbare Paginierung.
Welche Elemente sollte ich für Seitenumbrüche verwenden?
Seitenumbrüche funktionieren effektiv mit Blockelementen wie div, section und article. Während Sie Seitenumbruchstile auf verschiedene HTML-Elemente anwenden können, liefert das Einwickeln von Inhalten in ein dediziertes div die zuverlässigsten Ergebnisse. Dies ist besonders wichtig bei der Arbeit mit Kopf- und Fußzeilen, die auf allen Seiten gleich aussehen müssen.
Tabelle
<table style="border: 1px solid #000000">
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<table style="border: 1px solid #000000">
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
Bild
<img src="/static-assets/pdf/how-to/html-to-pdf-page-breaks/ironpdf-logo-text-dotnet.svg" style="border:5px solid #000000; padding:3px; margin:5px" />
<img src="/static-assets/pdf/how-to/html-to-pdf-page-breaks/ironpdf-logo-text-dotnet.svg" style="border:5px solid #000000; padding:3px; margin:5px" />
Wie implementiere ich Seitenumbrüche in C# Code?
:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-page-breaks-page-break.cs
using IronPdf;
const string html = @"
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div>
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("Page_Break.pdf");
Imports IronPdf
Private Const html As String = "
<table style='border: 1px solid #000000'>
<tr>
<th>Company</th>
<th>Product</th>
</tr>
<tr>
<td>Iron Software</td>
<td>IronPDF</td>
</tr>
<tr>
<td>Iron Software</td>
<td>IronOCR</td>
</tr>
</table>
<div style='page-break-after: always;'> </div>
<img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>"
Private renderer = New ChromePdfRenderer()
Private pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("Page_Break.pdf")
Der obige Code erzeugt ein PDF mit 2 Seiten: table auf der ersten Seite und img auf der zweiten:
Wie verhindere ich Seitenumbrüche in Bildern?
Um einen Seitenumbruch innerhalb eines Bildes oder table zu vermeiden, verwenden Sie die CSS-Eigenschaft avoid, angewendet auf ein einwickelndes div Element. Diese Technik ist unerlässlich für die Wahrung der visuellen Integrität beim Debugging von HTML mit Chrome, um sicherzustellen, dass Ihre PDFs genau wie vorgesehen dargestellt werden.
<div style="page-break-inside: avoid">
<img src="no-break-me.png" />
</div>
<div style="page-break-inside: avoid">
<img src="no-break-me.png" />
</div>
Warum sollte ich Bilder in DIV-Elemente einbetten?
Bilder in div Elemente einzuwickeln, bietet eine bessere Kontrolle über das Verhalten von Seitenumbrüchen. Die Eigenschaft page-break-inside funktioniert am zuverlässigsten bei Blockelementen. Bilder sind standardmäßig Inline-Elemente, so dass durch den Umbruch sichergestellt wird, dass der Stil korrekt angewendet wird. Dieser Ansatz ist besonders nützlich bei der Arbeit mit responsive CSS-Layouts, die ihre Struktur im PDF-Format beibehalten müssen.
Was sind häufige Probleme mit Bildseitenumbrüchen?
Zu den häufigen Problemen gehören die Aufteilung von Bildern auf mehrere Seiten, die teilweise Wiedergabe an Seitengrenzen und der Verlust von Beschriftungen oder zugehörigem Text. Diese Probleme treten häufig auf, wenn sich Bilder am unteren Rand einer Seite befinden. Die Verwendung des page-break-inside: avoid Wrappers verhindert diese Probleme, indem sichergestellt wird, dass das gesamte Bild und seine Hülle als Einheit zur nächsten Seite wechseln.
:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-page-breaks-7.cs
using IronPdf;
// Example showing how to prevent image breaks in a more complex layout
const string htmlWithProtectedImage = @"
<html>
<head>
<style>
.no-break { page-break-inside: avoid; }
.image-container {
border: 2px solid #333;
padding: 10px;
margin: 20px 0;
}
</style>
</head>
<body>
<h1>Product Gallery</h1>
<p>Our featured products are displayed below:</p>
<div class='no-break image-container'>
<img src='product1.jpg' alt='Product 1' />
<p>Product 1 Description</p>
</div>
<div class='no-break image-container'>
<img src='product2.jpg' alt='Product 2' />
<p>Product 2 Description</p>
</div>
</body>
</html>";
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(htmlWithProtectedImage);
pdf.SaveAs("ProductGallery.pdf");
Imports IronPdf
' Example showing how to prevent image breaks in a more complex layout
Const htmlWithProtectedImage As String = "
<html>
<head>
<style>
.no-break { page-break-inside: avoid; }
.image-container {
border: 2px solid #333;
padding: 10px;
margin: 20px 0;
}
</style>
</head>
<body>
<h1>Product Gallery</h1>
<p>Our featured products are displayed below:</p>
<div class='no-break image-container'>
<img src='product1.jpg' alt='Product 1' />
<p>Product 1 Description</p>
</div>
<div class='no-break image-container'>
<img src='product2.jpg' alt='Product 2' />
<p>Product 2 Description</p>
</div>
</body>
</html>"
Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf(htmlWithProtectedImage)
pdf.SaveAs("ProductGallery.pdf")
Die Iron Suite spielt eine entscheidende Rolle in unseren Operationen. Diese Werkzeuge erhöhen die Effizienz im gesamten Unternehmen, einschließlich der Erstellung von Grundrissen und der Verbesserung des Bestandsmanagements.
Wie kann ich Seitenumbrüche in Tabellen vermeiden?
Wie oben gezeigt, können Seitenumbrüche innerhalb von Tabellen vermieden werden, indem die CSS-Eigenschaft avoid verwendet wird. Es ist besser, dies auf ein einwickelndes div anzuwenden als auf die Tabelle selbst, um sicherzustellen, dass der Stil auf einen Blockniveau-HTML-Knoten angewendet wird. Bei der Erstellung umfassender HTML-zu-PDF-Tutorials ist die richtige Tabellenformatierung für die Lesbarkeit entscheidend.
Wann sollte ich thead für Tabellenüberschriften verwenden?
Um Tabellenköpfe und Fußzeilen über jede Seite einer großen HTML-Tabelle, die mehrere PDF-Seiten überspannt, zu duplizieren, verwenden Sie eine thead Gruppe innerhalb der Tabelle:
<thead>
<tr>
<th>C Sharp</th><th>VB</th>
</tr>
</thead>
<thead>
<tr>
<th>C Sharp</th><th>VB</th>
</tr>
</thead>
Das Element <thead> sorgt dafür, dass Tabellenköpfe auf jeder Seite wiederholt werden, wenn eine Tabelle mehrere Seiten umfasst. Dies ist besonders nützlich für Finanzberichte, Datenlisten und alle Dokumente, bei denen der Kontext auf jeder Seite benötigt wird. Für die Ersteinrichtung und die Installationsübersicht verarbeitet IronPDF diese HTML-Standards automatisch.
Warum ist die Einbettung von Tabellen in DIVs wichtig?
Das Einwickeln von Tabellen in div Elemente mit Seitenumbruchkontrollen bietet verschiedene Vorteile:
- Sicherstellen, dass die gesamte Tabelle bei Bedarf als Einheit auf die nächste Seite verschoben wird
- Verhindert, dass Kopfzeilen von Datenzeilen getrennt werden
- Ermöglicht zusätzliche Gestaltung und Abstandskontrolle
- Erleichtert das Hinzufügen von Beschriftungen oder Beschreibungen, die bei der Tabelle bleiben
Welche erweiterten CSS3-Einstellungen steuern Seitenumbrüche?
Um mehr Kontrolle zu erhalten, verwenden Sie CSS3 zusätzlich zu Ihrer thead Gruppe:
<style type="text/css">
table { page-break-inside:auto }
tr { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
</style>
<style type="text/css">
table { page-break-inside:auto }
tr { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
</style>
Welche CSS-Eigenschaften eignen sich am besten für komplexe Layouts?
Für komplexe Layouts sollten Sie mehrere CSS-Eigenschaften kombinieren:
page-break-inside- Verhindert, dass Elemente geteilt werdenpage-break-after- Erzwingt einen Umbruch nach einem Elementpage-break-before- Erzwingt einen Umbruch vor einem Elementorphansundwidows- Steuert die Mindestanzahl an Zeilen bei Seitenumbrüchenbreak-inside,break-after,break-before- Modern CSS3 alternatives
Diese Eigenschaften wirken zusammen, um professionell aussehende PDFs mit korrektem Fluss und guter Lesbarkeit zu erstellen.
Wie behebe ich Probleme mit Seitenumbrüchen?
Wenn der Seitenumbruch nicht wie erwartet funktioniert:
- Prüfen Sie, ob Ihre HTML-Struktur gültig ist
- Prüfen, ob Stile auf Elemente auf Blockebene angewendet werden
- Testen Sie zuerst mit einfachen Beispielen, dann fügen Sie Komplexität hinzu
- Browser-Entwickler-Tools verwenden, um berechnete Stile zu überprüfen
- Ziehen Sie die Verwendung der Rendering-Optionen von IronPDF für zusätzliche Kontrolle in Betracht
Denken Sie daran, dass verschiedene PDF-Renderer Seitenumbrüche leicht unterschiedlich handhaben können. Daher ist es wichtig, mit Ihrem spezifischen Anwendungsfall zu testen, um in allen Szenarien konsistente Ergebnisse zu erzielen.
Häufig gestellte Fragen
Wie kann ich bei der Konvertierung von HTML in PDF in C# einen Seitenumbruch hinzufügen?
Um einen Seitenumbruch bei der Verwendung von IronPDF einzufügen, fügen Sie <div style="page-break-after: always;"></div> in Ihren HTML-Code ein, wo der Umbruch stattfinden soll. IronPDF's ChromePdfRenderer erkennt diese CSS-Eigenschaft und erzeugt an dieser Stelle im PDF-Dokument eine neue Seite.
Welche CSS-Eigenschaft ist am zuverlässigsten für die Steuerung von Seitenumbrüchen bei der PDF-Konvertierung?
Die CSS-Eigenschaft page-break-after: always; ist die zuverlässigste Methode bei der Verwendung von IronPDF. Diese Eigenschaft liefert konsistente Ergebnisse über verschiedene Rendering-Engines hinweg und stellt eine vorhersehbare Paginierung in Ihren konvertierten PDF-Dokumenten sicher.
Wie kann ich Seitenumbrüche innerhalb von Tabellen oder Bildern verhindern?
Um unerwünschte Seitenumbrüche innerhalb von Tabellen oder Bildern zu verhindern, verwenden Sie die CSS-Eigenschaft page-break-inside: avoid;. Beim Konvertieren von HTML zu PDF mit IronPDF stellt dieser Stil sicher, dass Ihre Tabellen und Bilder auf einer einzigen Seite intakt bleiben, anstatt auf mehrere Seiten verteilt zu werden.
Welche HTML-Elemente funktionieren am besten mit Seitenumbruchstilen?
Seitenumbrüche funktionieren am effektivsten mit Blockelementen wie <div>, <table> und <section>. IronPDF empfiehlt, Inhalte in ein eigenes
Kann ich Seitenumbrüche auf CSS-Ebene anstelle von Inline-Stilen steuern?
Ja, Sie können Seitenumbruchstile auf CSS-Ebene festlegen, anstatt Inline-Stile zu verwenden. Die Rendering-Engine von IronPDF unterstützt CSS-Stylesheets in vollem Umfang, so dass Sie die Regeln für den Seitenumbruch in Ihrer CSS-Datei definieren und einen saubereren, besser wartbaren HTML-Code erhalten können.
Warum sollte ich page-break-after anstelle von page-break-before verwenden?
Die page-break-after-Eigenschaft liefert im Vergleich zu page-break-before konsistentere Ergebnisse über verschiedene Rendering-Engines hinweg. Beim Erstellen von PDFs mit komplexen Layouts mit IronPDF sorgt page-break-after für ein vorhersehbareres und zuverlässigeres Paginierungsverhalten.

