Wie man HTML mit responsivem CSS in PDF konvertiert mit C#

Wie man CSS mit HTML in C#35; für responsive PDFs verwendet

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

IronPDF ermöglicht es C#-Entwicklern, HTML mit CSS in PDF zu konvertieren und dabei das responsive Design beizubehalten, indem es sowohl die Medientypen "Bildschirm" als auch "Druck" unterstützt. Der Druckmodus optimiert Layouts für die PDF-Ausgabe und ermöglicht Funktionen wie die Wiederholung von Tabellenüberschriften auf mehreren Seiten.

Der CSS-Medientyp "screen" ist in erster Linie für die Anzeige auf Computerbildschirmen und ähnlichen Geräten gedacht. Wenn Stile für den Medientyp "screen" definiert werden, wirken sie sich darauf aus, wie Webinhalte auf Bildschirmen erscheinen, und betonen visuelles Design und Interaktivität. Dazu gehören Elemente wie Hover-Effekte, Animationen und Hintergrundbilder, die das Benutzererlebnis auf digitalen Displays verbessern.

Der CSS-Medientyp "print" ist für den Druck vorgesehen. Sie bestimmt, wie die Webseite in gedruckter Form erscheint, wobei der Schwerpunkt auf der Optimierung des Inhalts für die gedruckte Seite liegt. Diese Optimierung kann die Anpassung von Schriftgrößen, Rändern und das Entfernen von Elementen umfassen, die beim Ausdrucken unnötig sind. Bei Druckvorlagen werden häufig Navigationsmenüs, Seitenleisten und dekorative Elemente entfernt, um sich auf den Kerninhalt zu konzentrieren, was die Lesbarkeit der Dokumente verbessert und Tinte spart.

Bei der Arbeit mit der Chrome PDF Rendering Engine von IronPDF haben Entwickler die volle Kontrolle über den zu verwendenden Medientyp und können so sicherstellen, dass aus HTML generierte PDFs das beabsichtigte Design und die Funktionalität beibehalten. Diese Flexibilität ist bei der Erstellung von Dokumenten, die sowohl für den digitalen Vertrieb als auch für den physischen Druck verwendet werden sollen, von großem Wert.

Schnellstart: PDFs mit responsivem HTML und CSS erstellen

Konvertieren Sie Ihr HTML mit responsivem CSS in PDF mit IronPDF. Mit nur wenigen Codezeilen können Sie sicherstellen, dass Ihre PDF-Dateien auf allen Geräten perfekt wiedergegeben werden und die Integrität von Bildschirm- und Druckstilen erhalten bleibt. Diese Kurzanleitung zeigt, wie man mit IronPDF aus vorhandenen HTML-Inhalten eine professionelle PDF-Ausgabe erstellen kann.

Nuget IconLegen Sie jetzt mit NuGet los, um PDFs zu erstellen:

  1. Installieren Sie IronPDF mit dem NuGet-Paketmanager.

    PM > Install-Package IronPdf

  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    new IronPdf.ChromePdfRenderer { RenderingOptions = { CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print } }
        .RenderUrlAsPdf("https://example.com")
        .SaveAs("responsive.pdf");
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute mit der Nutzung von IronPDF in Ihrem Projekt – mit einer kostenlosen Testversion.
    arrow pointer


Wie funktionieren die CSS-Typen für Bildschirm und Druck in CSS3?

Warum ist es wichtig, den richtigen CSS-Medientyp zu wählen?

IronPDF generiert PDFs aus HTML in C# und kann standardmäßig ein Bildschirm-Stylesheet in PDF umwandeln. Dies ist praktisch, da Druck-Stylesheets oft weniger gut dokumentiert, verwendet oder entwickelt werden im Vergleich zu ihren Bildschirm-Gegenstücken. Die Kenntnis des Unterschieds zwischen diesen Medientypen ist jedoch entscheidend für die Erstellung professioneller PDFs.

Bei der Arbeit mit CSS (Screen & Print) in IronPDF hat die Wahl zwischen Bildschirm- und Druckmedientyp erhebliche Auswirkungen auf die endgültige PDF-Ausgabe. Bei Bildschirmmedien werden interaktive Elemente und ein reichhaltiges visuelles Design beibehalten, während bei Druckmedien der Inhalt für die Lesbarkeit und den Konsum auf Papier optimiert wird.

CSS3 erlaubt es, bestimmte CSS-Stile ausschließlich in gedruckten Dokumenten zu rendern, während andere für Webbrowser gedacht sind. IronPDF kann mit beiden arbeiten und gibt Ihnen die vollständige Kontrolle darüber, wie Ihr HTML-Inhalt in PDF gerendert wird. Durch diese Flexibilität wird sichergestellt, dass Ihre PDF-Dateien die spezifischen Anforderungen des jeweiligen Anwendungsfalls erfüllen, unabhängig davon, ob Sie digitale Berichte, druckbare Rechnungen oder Hybriddokumente erstellen.

Wann sollte ich den CSS-Medientyp Print vs. Screen verwenden?

Erstellen und wenden Sie ein Druck-Stylesheet auf Ihr HTML an: Erfahren Sie, wie man ein perfektes Druck-Stylesheet erstellt und anwendet..

Jeder CSS-Medientyp zielt auf unterschiedliche Anwendungsfälle ab. Probieren Sie alle aus, um zu sehen, welche Ihren Anforderungen entspricht. Beachten Sie diese Richtlinien:

Verwenden Sie den CSS-Medientyp Print, wenn:

  • Erstellen von Dokumenten für den physischen Druck
  • Erstellung von Rechnungen, Berichten oder formellen Dokumenten
  • Sie benötigen seitenübergreifend wiederholte Tabellenüberschriften
  • Sparen von Tinte ist eine Priorität
  • Arbeiten mit Benutzerdefinierte Papiergröße Anforderungen

Verwenden Sie Screen CSS Media Type wenn:

  • Erstellung interaktiver PDFs mit reichhaltigen visuellen Elementen
  • Wahrung der Ästhetik des Webdesigns in der PDF-Datei
  • Einschließlich Hintergrundbilder und Farben
  • Die PDF-Datei wird hauptsächlich auf Bildschirmen angezeigt
  • Arbeiten mit responsiven HTML-zu-PDF-Konvertierungen

Was sind die visuellen Unterschiede zwischen Bildschirm- und Druckmodi?

CSS-Vergleich von Druck- und Bildschirm-Medientypen, der eine Apple Mac-Seite zeigt, bei der die Bilder in der Druckversion ausgeblendet sind Vergleich der CSS-Medientypen: Drucklayout ohne Symbole, Bildschirmlayout mit Symbolen für MacBook-Spezifikationen

Die obigen Beispiele zeigen, wie derselbe HTML-Inhalt je nach Auswahl des CSS-Medientyps unterschiedlich dargestellt wird. Beachten Sie, dass in der Druckversion dekorative Bilder und Symbole entfernt wurden, um ein übersichtlicheres, besser druckbares Dokument zu erstellen, während in der Bildschirmversion alle visuellen Elemente für die digitale Anzeige beibehalten wurden.


Wie wiederhole ich Tabellenüberschriften auf mehreren PDF-Seiten?

Warum werden Tabellenüberschriften im Bildschirmmodus nur einmal angezeigt?

Wenn Sie mit HTML-Tabellen arbeiten, die sich über mehrere Seiten erstrecken, setzen Sie die Eigenschaft CssMediaType auf PdfCssMediaType.Print. Dadurch wird sichergestellt, dass die Tabellenüberschrift oben auf jeder erweiterten Seite wiederholt wird. Im Gegensatz dazu weist PdfCssMediaType.Screen Chrome an, die Kopfzeilen nur einmal zu drucken. Dieses Verhalten ist besonders wichtig bei der Erstellung von PDF-Berichten mit langen Datentabellen.

Der Medientyp print aktiviert bestimmte CSS-Regeln, die von Browsern für den Seitenumbruch verwendet werden, darunter die Eigenschaft thead {display: table-header-group;}, die eine Wiederholung der Kopfzeile ermöglicht. Diese Funktion ist wichtig, um den Kontext zu erhalten, wenn die Leser durch mehrseitige Dokumente blättern.

Welche HTML-Struktur ist für sich wiederholende Kopfzeilen erforderlich?

Um sicherzustellen, dass Chrome den Tabellenkopf erkennt, schließen Sie ihn in einen <thead>-Tag ein. Let's render the 'tableHeader.html example of repeating table headers' HTML file to PDF to see the effect.

Hier ist die empfohlene HTML-Struktur:

<table>
    <thead>
        <tr>
            <th>Column 1</th>
            <th>Column 2</th>
            <th>Column 3</th>
        </tr>
    </thead>
    <tbody>
        <!-- Your table data rows here -->
    </tbody>
</table>
<table>
    <thead>
        <tr>
            <th>Column 1</th>
            <th>Column 2</th>
            <th>Column 3</th>
        </tr>
    </thead>
    <tbody>
        <!-- Your table data rows here -->
    </tbody>
</table>
HTML

Wie implementiere ich die Wiederholung von Tabellenköpfen in C#35?

:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-responsive-css-table-header.cs
using IronPdf;
using IronPdf.Rendering;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Change the paper size to small
renderer.RenderingOptions.SetCustomPaperSizeinPixelsOrPoints(600, 400);

// Choose screen or print CSS media
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;

// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableHeader.html");

pdf.SaveAs("tableHeader.pdf");
Imports IronPdf
Imports IronPdf.Rendering

Private renderer As New ChromePdfRenderer()

' Change the paper size to small
renderer.RenderingOptions.SetCustomPaperSizeinPixelsOrPoints(600, 400)

' Choose screen or print CSS media
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print

' Render HTML to PDF
Dim pdf As PdfDocument = renderer.RenderHtmlFileAsPdf("tableHeader.html")

pdf.SaveAs("tableHeader.pdf")
$vbLabelText   $csharpLabel

Für erweiterte Optionen zur Tabellenformatierung können Sie Benutzerdefinierte Ränder verwenden, um die Abstände um Ihre Tabellen herum zu steuern, oder Seitenumbrüche implementieren, um sicherzustellen, dass Tabellen bei Bedarf auf neuen Seiten beginnen.

Wie sieht die endgültige PDF-Ausgabe aus?

Erweiterte CSS-Medientyp-Konfiguration

Bei der Arbeit mit komplexen Layouts sollten Sie CSS-Medientypen mit anderen IronPDF-Funktionen kombinieren. Bei der Verwendung von Betrachtung & Zoom-Einstellungen wirkt sich beispielsweise der gewählte CSS-Medientyp darauf aus, wie responsive Designs in der endgültigen PDF-Datei skaliert werden.

Hier ist ein Beispiel, das die erweiterte Konfiguration zeigt:

using IronPdf;
using IronPdf.Rendering;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Configure for print media type with custom settings
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = true; // Override print defaults
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;

// Add custom CSS for print media
string customCss = @"
    @media print {
        .no-print { display: none; }
        body { font-size: 12pt; }
        h1 { page-break-after: avoid; }
    }
";

// Render with custom CSS injection
string htmlWithCss = $"<style>{customCss}</style>{yourHtmlContent}";
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlWithCss);

pdf.SaveAs("advanced-print-layout.pdf");
using IronPdf;
using IronPdf.Rendering;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Configure for print media type with custom settings
renderer.RenderingOptions.CssMediaType = PdfCssMediaType.Print;
renderer.RenderingOptions.PrintHtmlBackgrounds = true; // Override print defaults
renderer.RenderingOptions.MarginTop = 25;
renderer.RenderingOptions.MarginBottom = 25;

// Add custom CSS for print media
string customCss = @"
    @media print {
        .no-print { display: none; }
        body { font-size: 12pt; }
        h1 { page-break-after: avoid; }
    }
";

// Render with custom CSS injection
string htmlWithCss = $"<style>{customCss}</style>{yourHtmlContent}";
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlWithCss);

pdf.SaveAs("advanced-print-layout.pdf");
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

Für Projekte, die pixelgenaue Genauigkeit erfordern, sollten Sie die Funktion HTML mit Chrome debuggen verwenden, um vor der Erstellung der endgültigen PDF-Datei genau zu prüfen, wie Ihre CSS-Medientypen dargestellt werden.

Best Practices für CSS-Medientypen in IronPDF

  1. Testen Sie beide Medientypen: Testen Sie Ihr HTML immer mit beiden Medientypen (Bildschirm und Druck), um festzustellen, welcher die besten Ergebnisse für Ihren speziellen Anwendungsfall liefert.

  2. Drucken von Dokumenten verwenden: Bei der Erstellung von formellen Dokumenten, Rechnungen oder Berichten liefert der Medientyp Print in der Regel sauberere, professionellere Ergebnisse.

  3. Media Queries nutzen: Nutzen Sie CSS Media Queries, um Ihre Layouts für verschiedene Ausgabeszenarien zu optimieren.

  4. Berücksichtigen Sie die Leistung: Print-Stylesheets werden oft schneller gerendert, weil sie unnötige visuelle Elemente ausschließen.

  5. Validieren Sie Ihr CSS: Verwenden Sie die HTML-Rendering-Einstellungen, um sicherzustellen, dass Ihr CSS bei der PDF-Generierung korrekt angewendet wird.

Durch die Beherrschung der CSS-Medientypen in IronPDF können Sie PDFs erstellen, die perfekt auf Ihre Anforderungen abgestimmt sind, unabhängig davon, ob sie für die digitale Verbreitung oder den physischen Druck bestimmt sind.

Häufig gestellte Fragen

Wie kann ich HTML mit responsivem CSS in C# in PDF konvertieren?

IronPDF bietet eine einfache Möglichkeit, HTML mit responsivem CSS in C# in PDF zu konvertieren. Sie können die ChromePdfRenderer-Klasse verwenden und den CSS-Medientyp (Bildschirm oder Druck) über die Eigenschaft RenderingOptions angeben. Mit nur wenigen Codezeilen bewahrt IronPDF Ihr responsives Design und sorgt für eine perfekte Darstellung auf verschiedenen Geräten.

Was ist der Unterschied zwischen den CSS-Medientypen "Bildschirm" und "Druck" bei der Erstellung von PDFs?

IronPDF unterstützt beide CSS-Medientypen. Der Medientyp "Bildschirm" zeigt den Inhalt so an, wie er auf digitalen Bildschirmen erscheint, mit Hover-Effekten und Animationen, während der Medientyp "Druck" den Inhalt für gedruckte Seiten optimiert, indem Schriftarten und Ränder angepasst und unnötige Elemente wie Navigationsmenüs entfernt werden. Die Chrome PDF Rendering Engine von IronPDF gibt Ihnen die volle Kontrolle darüber, welcher Medientyp verwendet werden soll.

Wie aktiviere ich wiederholte Tabellenüberschriften auf mehreren PDF-Seiten?

Um die Wiederholung von Tabellenüberschriften über mehrere Seiten in Ihrer PDF-Datei zu ermöglichen, setzen Sie den CSS-Medientyp in IronPDF auf "Print". Dazu setzen Sie in den RenderingOptions CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print. Der Medientyp "Print" umfasst Optimierungen wie wiederholte Kopfzeilen, die die Lesbarkeit mehrseitiger Dokumente verbessern.

Kann ich eine Live-Website-URL direkt in eine PDF-Datei mit Responsive Design konvertieren?

Ja, IronPDF ermöglicht die direkte Konvertierung von Live-Websites in PDF unter Beibehaltung des responsiven Designs. Verwenden Sie die Methode RenderUrlAsPdf mit der Klasse ChromePdfRenderer. Sie können angeben, ob die CSS-Medientypen Bildschirm oder Druck verwendet werden sollen, um sicherzustellen, dass die PDF-Datei entsprechend Ihren Anforderungen gerendert wird.

Welche Rendering-Engine verwendet die Bibliothek für die Konvertierung von HTML in PDF?

IronPDF verwendet die Chrome PDF Rendering Engine, die eine präzise HTML-zu-PDF-Konvertierung mit voller Unterstützung für moderne CSS3-Funktionen, JavaScript und Responsive Design bietet. Diese Engine stellt sicher, dass Ihre PDFs das beabsichtigte Design und die Funktionalität des ursprünglichen HTML-Inhalts beibehalten.

Wie konfiguriere ich die Abmessungen des Ansichtsfensters für das responsive PDF-Design?

IronPDF ermöglicht es Ihnen, die Abmessungen des Ansichtsfensters über die Eigenschaft RenderingOptions des ChromePdfRenderers zu konfigurieren. Dadurch wird sichergestellt, dass Ihre responsiven CSS-Media-Queries bei der Konvertierung von HTML in PDF korrekt funktionieren, und Sie können steuern, wie der Inhalt bei verschiedenen Viewport-Größen angezeigt wird.

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 16,685,821 | Version: 2025.12 gerade veröffentlicht