IRONSOFTWAREHOME

Fehlausrichtung von Kopfzeile und Inhalt

Curtis Chau
Curtis Chau
Updated: 29. Juni 2026

Beim Rendern von HTML zu PDF können Header und Footer bündig mit dem Seitenrand laufen, während der Hauptinhalt nach innen gedrängt wird, am sichtbarsten entlang der linken und rechten Ränder. Dies passiert auch, wenn MarginLeft = 0 gesetzt und UseMarginsOnHeaderAndFooter aktiviert ist.

Die Ursache ist das Standardstil von Chrome. Sein Rendering-Engine wendet an jedem Seiten-<body>-Element einen Rand von 8 Pixel an. Dieser Standard ist für normale Webinhalte in Ordnung, aber er lässt einen sichtbaren Abstand von 8px zwischen Ihrem Inhalt und dem Rand des PDFs, unabhängig von dem MarginLeft = 0, das Sie an ChromePdfRenderer.RenderingOptions übergeben. Der Kopf- und Fußbereich sind unverändert: mit Rändern, die auf 0 gesetzt sind, passen sie sich direkt an den Seitenrand an, wie erwartet, sodass sich nur der Hauptteil aus der Linie bewegt.

Dieser Ausschnitt reproduziert die Diskrepanz:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<h1>This is header</h1>"
};
renderer.RenderingOptions.MarginLeft = 0;
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.Left;
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
C#

PDF zeigt den Header links bündig an, aber der Hauptinhalt ist nach innen fehlplatziert

Lösung

Überschreiben Sie den Standardrand <body> von Chrome, damit der Inhalt mit dem Kopf- und Fußbereich über die gesamte Seitenbreite übereinstimmt. Wenden Sie negative Ränder an, um die integrierte 8px-Versatz zu neutralisieren:

body {
margin-left: -8px;
margin-right: -8px;
}
Text

Die negativen Werte neutralisieren das Standard-Padding von Chrome, sodass Header, Hauptinhalt und Footer alle an der gleichen Linie ausgerichtet sind. Inline angewendet sieht das korrigierte Rendering so aus:

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<h1>This is header</h1>"
};
renderer.RenderingOptions.MarginLeft = 0;
renderer.RenderingOptions.UseMarginsOnHeaderAndFooter = UseMargins.Left;
var pdf = renderer.RenderHtmlAsPdf("<h1 style=\"margin-left: -8;\">Hello World</h1>");  //adjust margin left to -8 px to cancel out default Chrome margin
C#

Das PDF zeigt Kopf- und Hauptinhalt, die nach der Korrektur am selben linken Rand ausgerichtet sind

Debug-Tipps

  • Eine saubere Ausgangsbasis bevorzugen: anstatt negativer Ränder wenden Sie einen CSS-Reset an oder setzen Sie margin: 0 explizit auf dem <body>-Element, um den Standardversatz an der Quelle zu entfernen.
  • Geltungsbereich des Verhaltens: Der 8px Abstand tritt auf, wann immer HTML über Headless Chrome gerendert wird, einschließlich IronPDF, Puppeteer und dem Chrome DevTools Protokoll, daher gilt die gleiche Korrektur für diese Werkzeuge.
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 Handbücher.

...
Weiterlesen

Bereit anzufangen?

Nuget Downloads 21,105,021Version:2026.9gerade veröffentlicht

Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

OR
bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $