Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE

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");
using IronPdf;
using IronPdf.Rendering;

ChromePdfRenderer renderer = new ChromePdfRenderer();
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape;

PdfDocument pdf = renderer.RenderHtmlAsPdf(reportHtml);
pdf.SaveAs("report-landscape.pdf");
Imports IronPdf
Imports IronPdf.Rendering

Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.PaperOrientation = PdfPaperOrientation.Landscape

Dim pdf As PdfDocument = renderer.RenderHtmlAsPdf(reportHtml)
pdf.SaveAs("report-landscape.pdf")
$vbLabelText   $csharpLabel

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");
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");
Imports System.Collections.Generic

Dim pdf As PdfDocument = 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(Of Integer) From {0, 3}, PdfPageRotation.Clockwise270)

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

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);
PdfPageRotation rotation = pdf.GetPageRotation(1);
Dim rotation As PdfPageRotation = pdf.GetPageRotation(1)
$vbLabelText   $csharpLabel

Punkte, die zu planen sind

  • Renderzeit versus vorhandene Dateien: PaperOrientation gilt 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 SetPageRotations fü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.

Häufig gestellte Fragen

Wie kann ich die Ausrichtung eines PDFs mithilfe von IronPDF auf Querformat setzen?

Sie können die Ausrichtung eines PDFs auf Querformat während des Renderprozesses setzen, indem Sie die `PaperOrientation`-Eigenschaft der `ChromePdfRenderer`-Klasse verwenden. Setzen Sie einfach `renderer.RenderingOptions.PaperOrientation` vor dem Rendern des Dokuments auf `PdfPaperOrientation.Landscape`.

Welche häufigen Probleme gibt es mit der PDF-Ausrichtung in Dokumenten-Workflows?

Häufige Probleme sind breiter Inhalt wie finanzielle Tabellen, die im Hochformat abgeschnitten oder umbrochen werden, und gescannte oder importierte Seiten, die seitlich oder auf dem Kopf stehend ankommen. IronPDF kann diese Probleme lösen, indem es die richtige Ausrichtung während des Renderns setzt und Seiten in bestehenden Dokumenten dreht.

Kann IronPDF Seiten in einem bereits bestehenden PDF-Dokument drehen?

Ja, IronPDF kann Seiten in bestehenden PDF-Dokumenten drehen. Es bietet Methoden, um eine Seite, eine ausgewählte Menge oder alle Seiten mit dem `PdfPageRotation`-Enum zu drehen, das feste Winkel wie Clockwise90, Clockwise180 und Clockwise270 enthält.

Was ist der Zweck der `SetAllPageRotations`-Methode in IronPDF?

Die `SetAllPageRotations`-Methode wird verwendet, um jedem Seite in einem PDF-Dokument einen einheitlichen Drehwinkel zu geben. Dies ist besonders nützlich, um eine Reihe von Seiten zu korrigieren, die auf die gleiche Weise falsch ausgerichtet sind.

Wie stellt man sicher, dass die Original-PDF-Dateien erhalten bleiben, wenn man IronPDF verwendet?

Um die Original-PDF-Dateien zu erhalten, speichern Sie die gedrehte Ausgabe unter einem neuen Dateinamen mit der `SaveAs`-Methode. Dies verhindert das Überschreiben des Originaldokuments.

Was ist die Bedeutung der nullbasierten Indizierung in IronPDF?

IronPDF verwendet eine nullbasierte Indizierung für Seitennummern, was bedeutet, dass die erste Seite als 0 indiziert ist. Zum Beispiel, `SetPageRotation(1, ...)` zielt auf die zweite Seite im Dokument ab.

Wie behandelt IronPDF die Drehung von ganzen Seiten?

IronPDF dreht ganze Seiten, einschließlich Text, Bilder und Anmerkungen zusammen. Dieser Ansatz unterscheidet sich vom Drehen einzelner Elemente und stellt sicher, dass der gesamte Seiteninhalt seine relative Position beibehält.

Welche Methode bietet IronPDF, um den aktuellen Seitendrehwinkel zu lesen?

IronPDF bietet die `GetPageRotation`-Methode, um den aktuellen Drehewinkel einer beliebigen Seite in einem PDF-Dokument zu lesen, was nützlich ist, um Dokumente zu normalisieren, die aus mehreren Quellen zusammengeführt wurden.

Warum ist es wichtig, zwischen Renderzeitausrichtung und Drehung in IronPDF zu unterscheiden?

Es ist wichtig, zwischen Renderzeitausrichtung und Drehung zu unterscheiden, weil `PaperOrientation` nur beim Generieren eines PDFs aus einem anderen Format angewendet wird, während die Drehung auf bestehende PDFs angewendet wird. Diese Konzepte getrennt zu halten, vermeidet häufige Fehler in der Dokumentenverarbeitung.

Welches Problem löst das Setzen der PDF-Ausrichtung zur Renderzeit?

Das Setzen der PDF-Ausrichtung zur Renderzeit löst das Problem des abgeschnittenen oder umbrochenen breiten Inhalts, wenn er ins Hochformat gezwängt wird. Durch die Auswahl der Querformat-Ausrichtung haben Inhalte wie finanzielle Tabellen und Dashboards den horizontalen Raum, den sie für eine ordnungsgemäße Darstellung benötigen.

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

Iron-Support-Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an