Wie man PDF in ASP.NET MVC generiert: IronPDF vs iTextSharp?
Zwei Layoutprobleme treten ständig in Dokumenten-Workflows auf. Breite Inhalte wie Finanztabellen, Dashboards und Projektzeitpläne werden abgeschnitten oder umbrochen, wenn sie ins Hochformat gezwungen werden. Und gescannte oder importierte Seiten kommen oft seitlich oder auf dem Kopf an. IronPDF löst beide in C#, indem es die Orientierung beim Rendern eines PDFs festlegt und Seiten in bereits vorhandenen Dokumenten dreht.
Das geschäftliche Problem
Ein Berichtssystem gibt eine tabellenartige Tabelle aus, die eine Hochformatseite überläuft. Ein Dokument-Eingabeprozess erhält Scans, die falsch herum gedreht sind. Ein Abschlussbericht, der aus mehreren Quellen zusammengestellt wird, hat Seiten in inkonsistenten Winkeln. Jeder Fall lässt Benutzer die Augen zusammenkneifen, seitwärts scrollen oder Seiten manuell in einem Viewer drehen. Das Ziel ist ein korrektes, konsistentes Layout, das automatisch erstellt wird.
Festlegen der Ausrichtung zur Renderzeit
Die Ausrichtung wird beim Erstellen eines PDFs aus einem anderen Format über die PaperOrientation-Eigenschaft ausgewählt. Querformat gibt breiten Inhalten den benötigten horizontalen Raum.
using IronPdf;
using IronPdf.Rendering;
ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;
PdfDocument pdf = renderer.RenderHtmlAsPdf(reportHtml);
pdf.SaveAs("report-landscape.pdf");
Drehen von Seiten in vorhandenen Dokumenten
Die Drehung funktioniert auf bereits erstellten Dokumenten, was sie zum Werkzeug für die Korrektur von Scans oder die Normalisierung zusammengeführter Dateien macht. IronPDF bietet vier feste Winkel durch das PdfPageRotation-Enum und Methoden für eine Seite, einen ausgewählten Satz oder alle Seiten.
PdfDocument pdf = PdfDocument.FromFile("scanned.pdf");
// Correct every page in a uniformly misrotated batch
pdf.SetAllPageRotations(PdfPageRotation.Clockwise90);
// Fix a single page
pdf.SetPageRotation(1, PdfPageRotation.Clockwise180);
// Fix a selected set of pages
pdf.SetPageRotations(new List<int> { 0, 3 }, PdfPageRotation.Clockwise270);
pdf.SaveAs("corrected.pdf");
GetPageRotation liest den aktuellen Winkel jeder Seite aus, was hilft, wenn Dokumente normalisiert werden, die aus mehreren Quellen zusammengeführt wurden.
PdfPageRotation rotation = pdf.GetPageRotation(1);
Punkte, die zu planen sind
- Renderzeit versus vorhandene Dateien:
PaperOrientationgilt nur beim Erstellen eines PDFs aus einem anderen Format. Drehung gilt für PDFs, die bereits existieren. Das Aufteilen der beiden vermeidet den häufigsten Fehler. - Ganzseitige Drehung: Die Drehung bewegt Text, Bilder und Anmerkungen zusammen, was sich vom Drehen einzelner Textelemente unterscheidet.
- Nullbasierte Indizierung:
SetPageRotation(1, ...)zielt auf die zweite Seite ab. - Originale bewahren: Speichern Sie die gedrehte Ausgabe unter einem neuen Dateinamen und verwenden Sie
SetPageRotationsfür mehrere Seiten für eine bessere Leistung.
Ergebnis
Mit der während des Renderns eingestellten Ausrichtung und der danach angewandten Drehung erstellen Teams Berichte, die ihren Inhalten entsprechen und Eingabepipelines, die korrekt ausgerichtete Dokumente speichern, ohne manuelle Nachbearbeitung. Vollständige Methodeninformationen finden Sie im Leitfaden für Seitenorientierung und -drehung.

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.