Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE

PDFsharp Seitenzahlen zu PDF hinzufügen VS IronPDF (Beispiel)

Viele Organisationen betreiben noch ASP.NET Web Forms hinter Bankportalen, Buchhaltungssystemen und internen Dashboards. Die Apps sind stabil, bieten aber selten eine saubere Möglichkeit, einem Benutzer ein herunterladbares Dokument bereitzustellen. Das Hinzufügen des PDF-Exports wird als Grund angesehen, um auf MVC oder Blazor umzusteigen, was für ansonsten gut laufende Software teuer ist. IronPDF geht den günstigeren Weg: Es verwandelt die ASPX-Seite, die ein Benutzer bereits ansieht, mit einer einzigen Codezeile in ein PDF.

Wo die Lücke sichtbar wird

Eine Web Forms-Seite rendert ihre Rechnung, Erklärung oder ihren Bericht normalerweise schon als gestyltes HTML. Mitarbeiter und Kunden möchten dann diese Ansicht als tragbare Datei, die sie speichern, per E-Mail versenden oder drucken können. Eine separate PDF-Vorlage bedeutet ein zweites Layout, das sich vom ersten entfernt. Der Druckdialog des Browsers liefert auf jedem Gerät unterschiedliche Ergebnisse. Teams benötigen ein serverseitiges PDF, das die Seite auf dem Bildschirm wiedergibt.

Rendering der Seite am Ort

IronPDF konvertiert die Live-ASPX-Seite aus dem Page_Load-Ereignis. Die AspxToPdf.RenderThisPageAsPdf-Methode verwendet die bereits für die Webansicht erstellte Seite wieder, sodass Styling, Links und Formularfelder übernommen werden.

using IronPdf;

public partial class Invoice : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf");
    }
}
using IronPdf;

public partial class Invoice : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf");
    }
}
Imports IronPdf

Public Partial Class Invoice
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(sender As Object, e As EventArgs)
        AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf")
    End Sub
End Class
$vbLabelText   $csharpLabel

FileBehavior.Attachment löst einen Download mit einem gewählten Dateinamen aus. FileBehavior.InBrowser zeigt das Dokument stattdessen inline an.

Steuerung der Ausgabe

Render-Optionen umfassen die Details, die die Ausgabe für die Verteilung geeignet machen: Kopf- und Fußzeilen, Seitenzahlen und ein Druck-Stylesheet, das nur für den Bildschirm bestimmte Navigationselemente entfernt.

var options = new ChromePdfRenderOptions
{
    CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print,
    TextFooter = new TextHeaderFooter
    {
        LeftText = "{date} - {time}",
        RightText = "Page {page} of {total-pages}"
    }
};
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", options);
var options = new ChromePdfRenderOptions
{
    CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print,
    TextFooter = new TextHeaderFooter
    {
        LeftText = "{date} - {time}",
        RightText = "Page {page} of {total-pages}"
    }
};
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", options);
Imports IronPdf.Rendering

Dim options As New ChromePdfRenderOptions With {
    .CssMediaType = PdfCssMediaType.Print,
    .TextFooter = New TextHeaderFooter With {
        .LeftText = "{date} - {time}",
        .RightText = "Page {page} of {total-pages}"
    }
}
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", options)
$vbLabelText   $csharpLabel

Einstellungen, die eine saubere Konvertierung bestimmen

Eine Handvoll Entscheidungen bestimmen, ob die Konvertierung unter Last standhält:

  • Dynamische Inhalte: Seiten, die Ajax oder clientseitige Diagramme verwenden, benötigen EnableJavaScript zusammen mit einer WaitFor-Regel, damit das Rendering die fertige Seite erfasst. See the WaitFor guide.
  • Druckstil: Das Setzen von CssMediaType auf Print wendet ein spezielles Stylesheet an, das Schaltflächen und Menüs aus dem Dokument heraushält.
  • Durchsatz: Da die Chromium-Darstellung ressourcenintensiv ist, sorgt asynchrone Verarbeitung dafür, dass hochfrequentierte Endpunkte reaktionsfähig bleiben.

Eine Zeile, kein Rewrite

Dieser einzelne Aufruf innerhalb einer bestehenden Seite ermöglicht es einer Web Forms-Anwendung, Rechnungen herunterzuladen, druckbare Auszüge und exportierbare Berichte anzubieten, ohne dass eine Migration erforderlich ist. Die vollständige Methodenreferenz und die Konfigurationsoptionen finden Sie im ASPX zu PDF-Leitfaden.

Häufig gestellte Fragen

Kann ich PDF-Export zu ASP.NET Web Forms hinzufügen, ohne zu MVC oder Blazor migrieren zu müssen?

Ja. Die Methode AspxToPdf.RenderThisPageAsPdf von IronPDF konvertiert die ASPX-Seite im Page_Load-Ereignis in PDF und wiederverwendet das bestehende Seitenlayout ohne Framework-Migration.

Wie kann IronPDF dynamische Inhalte wie Ajax-Diagramme in Web Forms behandeln?

Aktivieren Sie EnableJavaScript in den Rendering-Optionen und fügen Sie eine WaitFor-Regel hinzu, sodass IronPDF wartet, bis JavaScript die Ausführung abgeschlossen hat, bevor die Seite erfasst wird.

Was ist der Unterschied zwischen FileBehavior.Attachment und FileBehavior.InBrowser?

FileBehavior.Attachment sendet das PDF als Dateidownload mit einem gewählten Dateinamen. FileBehavior.InBrowser zeigt das PDF stattdessen inline im Browser-Tab an.

Wie füge ich Kopfzeilen, Fußzeilen und Seitenzahlen zu einem ASPX-PDF-Export hinzu?

Verwenden Sie ChromePdfRenderOptions mit einem TextFooter (oder TextHeader), der die Platzhalter {page} und {total-pages} referenziert. Setzen Sie CssMediaType auf 'Print', um Ihr Druck-CSS anzuwenden.

Funktioniert IronPDF mit ASP.NET Web Forms auf dem .NET Framework?

Ja. IronPDF unterstützt das .NET Framework 4.6.2 und höher sowie .NET Core, .NET 5 und alle modernen .NET-Versionen. Es funktioniert in Web Forms-Anwendungen, die auf jede dieser Laufzeiten abzielen.

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