Wie man PDFs in .NET mit IronPDF und C# anzeigt

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

IronPDF zeigt PDFs in .NET-Anwendungen über die IronPdf.Viewer.Maui-Steuerung für MAUI an, indem Seiten mit RasterizeToImageFiles in Bilder für jedes UI-Framework gerastert werden, und über Host-Steuerelemente wie WebView2 in WPF und Windows Forms. Die richtige Wahl hängt davon ab, welche Art von App Sie erstellen und wie viel Viewer-Chrome Sie benötigen.

"Anzeigen" bedeutet in diesen Pfaden verschiedene Dinge. Der MAUI-Viewer ist ein vollständiges interaktives Element mit einer Werkzeugleiste. Der Rasterpfad verwandelt jede Seite in ein Bild, das Sie in jeder Steuerung anzeigen können. Die WebView2- und Standard-Viewer-Routen übergeben die Datei an einen Browsermotor oder den installierten PDF-Reader des Benutzers. Dieser Artikel zeigt jeden einzelnen und ist ehrlich darüber, was er bietet und was nicht.

Quickstart: Ein PDF in MAUI mit IronPDF anzeigen

Fügen Sie das IronPdf.Viewer.Maui NuGet-Paket hinzu, rufen Sie ConfigureIronPdfView() in MauiProgram.cs auf, und binden Sie dann ein PDF an ein IronPdfView. Die einzelne Zeile unten lädt eine Datei in die Steuerung des Viewers.

  1. Installieren Sie IronPDF mit NuGet Package Manager

    PM > Install-Package IronPdf
  2. Kopieren Sie diesen Codeausschnitt und führen Sie ihn aus.

    new IronPdf.Viewer.Maui.IronPdfView { Source = IronPdf.Viewer.Maui.IronPdfViewSource.FromFile("document.pdf") };
  3. Bereitstellen zum Testen in Ihrer Live-Umgebung

    Beginnen Sie noch heute, IronPDF in Ihrem Projekt zu verwenden, mit einer kostenlosen Testversion

    arrow pointer

Installieren Sie das Paket zuerst mit Install-Package IronPdf.Viewer.Maui und fügen Sie Ihren IronPDF-Lizenzschlüssel in ConfigureIronPdfView hinzu, um das Testbanner zu entfernen. Das MAUI Viewer Tutorial führt durch die vollständige Projekteinstellung.


Wie kann ich PDFs in ASP.NET & MVC anzeigen?

Servieren Sie das PDF von einer Controller-Aktion und betten Sie es mit einem HTML-iframe ein. Der integrierte PDF-Viewer des Browsers übernimmt das Rendering, sodass das Dokument inline erscheint, während Ihr Seitenlayout intakt bleibt. Wenn das PDF im laufenden Betrieb erzeugt wird, führt die HTML-zu-PDF-Konvertierung von IronPDF die Datei, die die Aktion zurückgibt.

// Controller action to serve PDF
public ActionResult ViewPdf()
{
    var pdfPath = Server.MapPath("~/Content/sample.pdf");
    return File(pdfPath, "application/pdf");
}

// In your Razor view
<iframe src="@Url.Action("ViewPdf")" width="100%" height="600px"></iframe>
// Controller action to serve PDF
public ActionResult ViewPdf()
{
    var pdfPath = Server.MapPath("~/Content/sample.pdf");
    return File(pdfPath, "application/pdf");
}

// In your Razor view
<iframe src="@Url.Action("ViewPdf")" width="100%" height="600px"></iframe>
Imports System.Web.Mvc

' Controller action to serve PDF
Public Function ViewPdf() As ActionResult
    Dim pdfPath = Server.MapPath("~/Content/sample.pdf")
    Return File(pdfPath, "application/pdf")
End Function

' In your Razor view
<iframe src="@Url.Action("ViewPdf")" width="100%" height="600px"></iframe>
$vbLabelText   $csharpLabel

Wenn Sie Textauswahl, Zoom und Seitennavigation benötigen, die Sie kontrollieren, anstatt des Standardbrowsers, rendern Sie die PDF-Seiten zu Bildern (unten gezeigt) und zeigen Sie sie an, oder verbinden Sie einen JavaScript-Viewer Ihrer Wahl.


Wie zeige ich PDF-Seiten als Bilder in WPF, WinForms oder Blazor an?

Rufen Sie RasterizeToImageFiles auf, um jede PDF-Seite in eine PNG zu verwandeln, und zeigen Sie diese Bilder dann in jedem Steuerelement an: ein WPF-Image, ein WinForms-PictureBox oder ein <img> in einer Blazor-Komponente. Dies ist der IronPDF-native Anzeigepfad. Es funktioniert auf jedem UI-Framework und auf jedem Betriebssystem, das IronPDF unterstützt, da es einfache Bilddateien erzeugt, anstatt sich auf ein Host-Browser-Steuerelement zu verlassen.

Eingabe

:path=/static-assets/pdf/content-code-examples/how-to/net-pdf-viewer-rasterize.cs
using IronPdf;

// Load the PDF you want to display.
PdfDocument pdf = PdfDocument.FromFile("sample-report.pdf");

// Render every page to a PNG. The asterisk in the path is replaced with the page number,
// producing viewer-page-1.png, viewer-page-2.png, and so on. The last argument (100) is the DPI.
pdf.RasterizeToImageFiles("viewer-page-*.png", IronPdf.Imaging.ImageType.Png, 100);

// To show a page inside a GUI control without writing to disk, get in-memory bitmaps instead.
// ToBitmap returns one AnyBitmap per page; bind bitmaps[0] to a WPF Image or a WinForms PictureBox.
var bitmaps = pdf.ToBitmap();
bitmaps[0].SaveAs("viewer-firstpage.png");
Imports IronPdf

' Load the PDF you want to display.
Dim pdf As PdfDocument = PdfDocument.FromFile("sample-report.pdf")

' Render every page to a PNG. The asterisk in the path is replaced with the page number,
' producing viewer-page-1.png, viewer-page-2.png, and so on. The last argument (100) is the DPI.
pdf.RasterizeToImageFiles("viewer-page-*.png", IronPdf.Imaging.ImageType.Png, 100)

' To show a page inside a GUI control without writing to disk, get in-memory bitmaps instead.
' ToBitmap returns one AnyBitmap per page; bind bitmaps(0) to a WPF Image or a WinForms PictureBox.
Dim bitmaps = pdf.ToBitmap()
bitmaps(0).SaveAs("viewer-firstpage.png")
$vbLabelText   $csharpLabel

Ausgabe

Erste Seite des Beispielbericht-PDFs, zu einem PNG-Bild rasterisiert, zur Anzeige in einem .NET-UI-Steuerelement

Für eine In-Memory-Option gibt ToBitmap ein Bild pro Seite zurück, das Sie an ein Steuerelement binden können, ohne die Festplatte zu berühren. Passen Sie das DPI-Argument an, um Dateigröße gegen Schärfe auszutauschen, dieselbe Kontrolle, die Sie über IronPDFs Renderoptionen haben, wenn Sie das Dokument produzieren.


Wie kann ich PDFs in WPF-Anwendungen anzeigen?

Hosten Sie das PDF in einem WebView2-Steuerelement, das die Chromium-Engine von Microsoft Edge verwendet und mit einem eigenen PDF-Viewer ausgestattet ist (Werkzeugleiste, Zoom und Druck sind enthalten). Speichern Sie das Dokument auf der Festplatte, und navigieren Sie dann die Steuerung zur Dateierungs-URI. WebView2 ist der aktuelle Ersatz für die ältere WebBrowser-Steuerung, die auf der veralteten Internet Explorer-Engine beruhte.

:path=/static-assets/pdf/content-code-examples/how-to/net-pdf-viewer-wpf-viewer.cs
// WPF: display a PDF using the WebView2 control (Microsoft Edge / Chromium).
// Install the NuGet package Microsoft.Web.WebView2 and add a <wv2:WebView2 x:Name="pdfWebView" />
// element to your XAML (xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf").
// WebView2 renders PDFs with the same built-in viewer as the Edge browser (toolbar, zoom, print).
using System;
using System.IO;

// Save the IronPDF-generated document to disk first, then point WebView2 at it.
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
string pdfPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "document.pdf");
pdf.SaveAs(pdfPath);

// pdfWebView is the WebView2 control declared in your XAML.
// EnsureCoreWebView2Async must complete before navigating.
await pdfWebView.EnsureCoreWebView2Async();
pdfWebView.CoreWebView2.Navigate(new Uri(pdfPath).AbsoluteUri);

// Legacy alternative: the older System.Windows.Controls.WebBrowser control still works on
// Windows machines that have a PDF handler installed, but it relies on the deprecated Internet
// Explorer engine and is not recommended for new applications. Prefer WebView2 above.
Imports System
Imports System.IO
Imports IronPdf

' WPF: display a PDF using the WebView2 control (Microsoft Edge / Chromium).
' Install the NuGet package Microsoft.Web.WebView2 and add a <wv2:WebView2 x:Name="pdfWebView" />
' element to your XAML (xmlns:wv2="clr-namespace:Microsoft.Web.WebView2.Wpf;assembly=Microsoft.Web.WebView2.Wpf").
' WebView2 renders PDFs with the same built-in viewer as the Edge browser (toolbar, zoom, print).

' Save the IronPDF-generated document to disk first, then point WebView2 at it.
Dim pdf = New ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello IronPDF</h1>")
Dim pdfPath As String = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "document.pdf")
pdf.SaveAs(pdfPath)

' pdfWebView is the WebView2 control declared in your XAML.
' EnsureCoreWebView2Async must complete before navigating.
Await pdfWebView.EnsureCoreWebView2Async()
pdfWebView.CoreWebView2.Navigate(New Uri(pdfPath).AbsoluteUri)

' Legacy alternative: the older System.Windows.Controls.WebBrowser control still works on
' Windows machines that have a PDF handler installed, but it relies on the deprecated Internet
' Explorer engine and is not recommended for new applications. Prefer WebView2 above.
$vbLabelText   $csharpLabel

WarnungWebView2 erfordert die Microsoft Edge WebView2 Runtime auf der Zielmaschine. Es ist auf aktuellen Windows 11 Builds vorinstalliert; für ältere Systeme verschicken Sie den Evergreen-Bootstrapper mit Ihrem Installer.


Icon Quote related to Wie kann ich PDFs in WPF-Anwendungen anzeigen?

Meine Lieblingsbibliothek dieser Art ist IronPDF. Es ermöglicht eine schnelle und effiziente Bearbeitung von PDF-Dateien. Es verfügt auch über viele wertvolle Funktionen, wie das Exportieren in das PDF/A-Format und das digitale Signieren von PDF-Dokumenten.

Milan Jovanovic related to Wie kann ich PDFs in WPF-Anwendungen anzeigen?

Milan Jovanovic

Microsoft MVP

Fallstudie ansehen
Icon Quote related to Wie kann ich PDFs in WPF-Anwendungen anzeigen?

IronOCR bedeutet, dass wir jährlich 40.000 $ durch manuelle Verarbeitung einsparen können, während die Produktivität gesteigert wird und Ressourcen für wichtige Aufgaben freigesetzt werden. Ich würde es sehr empfehlen.

Brent Matzelle related to Wie kann ich PDFs in WPF-Anwendungen anzeigen?

Brent Matzelle

Technischer Leiter, OPYN

Fallstudie ansehen
Icon Quote related to Wie kann ich PDFs in WPF-Anwendungen anzeigen?

Die Iron Suite spielt eine entscheidende Rolle in unseren Operationen. Diese Werkzeuge erhöhen die Effizienz im gesamten Unternehmen, einschließlich der Erstellung von Grundrissen und der Verbesserung des Bestandsmanagements.

David Jones related to Wie kann ich PDFs in WPF-Anwendungen anzeigen?

David Jones

Leitender Software-Ingenieur, Agorus Build

Fallstudie ansehen

Wie kann ich PDFs in Windows Forms anzeigen?

Lassen Sie ein WebView2-Steuerelement auf Ihr Formular fallen und richten Sie es auf das gespeicherte PDF, genau wie in WPF. Das Steuerelement initialisiert sich asynchron, daher warten Sie auf EnsureCoreWebView2Async, bevor Sie Navigate aufrufen. Dies gibt WinForms-Apps denselben Chromium-basierten Viewer, ohne eine Drittanbieter-Komponente zu bündeln.

:path=/static-assets/pdf/content-code-examples/how-to/net-pdf-viewer-winforms-viewer.cs
// Windows Forms: display a PDF using the WebView2 control (Microsoft Edge / Chromium).
// Install the NuGet package Microsoft.Web.WebView2, then drag a WebView2 control onto your form
// (or add it in code) and name it pdfWebView.
using System;
using System.IO;

// Generate or load the PDF with IronPDF, then save it so WebView2 can open the file.
var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
string pdfPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "document.pdf");
pdf.SaveAs(pdfPath);

// pdfWebView is the WebView2 control on your form.
// Initialize the runtime, then navigate to the local file URI.
await pdfWebView.EnsureCoreWebView2Async();
pdfWebView.CoreWebView2.Navigate(new Uri(pdfPath).AbsoluteUri);

// Legacy alternative: the System.Windows.Forms.WebBrowser control can host a PDF when a system
// PDF handler is registered, but it uses the deprecated Internet Explorer engine. Use WebView2
// for new projects so the viewer works consistently across modern Windows installs.
Imports System
Imports System.IO
Imports IronPdf

' Generate or load the PDF with IronPDF, then save it so WebView2 can open the file.
Dim pdf = New ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello IronPDF</h1>")
Dim pdfPath As String = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "document.pdf")
pdf.SaveAs(pdfPath)

' pdfWebView is the WebView2 control on your form.
' Initialize the runtime, then navigate to the local file URI.
Await pdfWebView.EnsureCoreWebView2Async()
pdfWebView.CoreWebView2.Navigate(New Uri(pdfPath).AbsoluteUri)

' Legacy alternative: the System.Windows.Forms.WebBrowser control can host a PDF when a system
' PDF handler is registered, but it uses the deprecated Internet Explorer engine. Use WebView2
' for new projects so the viewer works consistently across modern Windows installs.
$vbLabelText   $csharpLabel

Wenn Sie überhaupt kein Browser-Steuerelement hosten möchten, passt der bildbasierte Ansatz aus dem obigen Abschnitt direkt in ein PictureBox und vermeidet vollständig die WebView2-Laufzeitabhängigkeit.


Wie kann ich PDFs mit dem Standard-PDF-Viewer des Systems anzeigen?

Übergeben Sie den Dateipfad an System.Diagnostics.Process.Start, um das PDF in dem Reader zu öffnen, den der Benutzer als Standard festgelegt hat, z. B. ein Browser oder Adobe Acrobat. Dies übergibt das Rendern einer externen Anwendung anstatt es einzubetten, was sich für Dienstprogramme und Batch-Tools eignet, die nur die fertige Datei anzeigen müssen.

:path=/static-assets/pdf/content-code-examples/how-to/net-pdf-viewer-default-pdf-viewer.cs
using IronPdf;

// Render any HTML fragment or document to HTML
ChromePdfRenderer renderer = new ChromePdfRenderer();
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>");

var outputPath = "ChromePdfRenderer.pdf";

// Export PDF document
pdf.SaveAs(outputPath);

// This neat trick opens our PDF file so we can see the result in our default PDF viewer
System.Diagnostics.Process.Start(outputPath);
Imports IronPdf

' Render any HTML fragment or document to HTML
Private renderer As New ChromePdfRenderer()
Private pdf As PdfDocument = renderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1>")

Private outputPath = "ChromePdfRenderer.pdf"

' Export PDF document
pdf.SaveAs(outputPath)

' This neat trick opens our PDF file so we can see the result in our default PDF viewer
System.Diagnostics.Process.Start(outputPath)
$vbLabelText   $csharpLabel

In der Produktion wickeln Sie den Aufruf ein, damit ein fehlender PDF-Handler die App nicht abstürzt:

try
{
    var psi = new System.Diagnostics.ProcessStartInfo
    {
        FileName = outputPath,
        UseShellExecute = true
    };
    System.Diagnostics.Process.Start(psi);
}
catch (Exception ex)
{
    // Handle the case where no PDF viewer is installed
    MessageBox.Show($"Unable to open PDF: {ex.Message}");
}
try
{
    var psi = new System.Diagnostics.ProcessStartInfo
    {
        FileName = outputPath,
        UseShellExecute = true
    };
    System.Diagnostics.Process.Start(psi);
}
catch (Exception ex)
{
    // Handle the case where no PDF viewer is installed
    MessageBox.Show($"Unable to open PDF: {ex.Message}");
}
Imports System.Diagnostics
Imports System.Windows.Forms

Try
    Dim psi As New ProcessStartInfo With {
        .FileName = outputPath,
        .UseShellExecute = True
    }
    Process.Start(psi)
Catch ex As Exception
    ' Handle the case where no PDF viewer is installed
    MessageBox.Show($"Unable to open PDF: {ex.Message}")
End Try
$vbLabelText   $csharpLabel

Abschluss

Jeder hier dargestellte Betrachtungsweg tauscht Interaktivität gegen Portabilität: Der MAUI-Viewer bietet eine vollständige Symbolleiste, das Rasterisieren zu Bildern funktioniert in jeder Benutzeroberfläche auf jeder Plattform, WebView2 verwendet die Edge-Engine wieder, und Process.Start verlässt sich auf den Reader des Benutzers. Wählen Sie denjenigen, der zu Ihrer App passt, anstatt eine einzige Antwort zu erzwingen.

Da die meisten Anzeigefunktionen mit einem Dokument beginnen, das Sie generiert haben, kombinieren Sie diese Techniken mit dem vollständigen MAUI-Viewer-Tutorial, wenn Sie eine interaktive Werkzeugleistenkomponente benötigen.

Häufig gestellte Fragen

Wie kann ich PDFs in einer .NET MAUI-Anwendung anzeigen?

IronPDF liefert eine interaktive PDF-Viewer-Komponente für MAUI-Projekte im IronPdf.Viewer.Maui NuGet-Paket. Nach der Installation des Pakets und dem Aufruf von ConfigureIronPdfView() können Sie ein PDF an eine IronPdfView-Steuerung binden, die es aus einer Datei mit IronPdfViewSource.FromFile oder aus einem Stream lädt. Diese MAUI-Komponente ist der einzige Weg, der eine integrierte Symbolleiste bietet; auf Desktop und Web sehen Sie PDFs, indem Sie WebView2 hosten, ein iframe einbetten oder Seiten zu Bildern rasterisieren.

Wie lassen sich PDFs in ASP.NET-Webanwendungen am einfachsten anzeigen?

Für ASP.NET-Anwendungen unterstützt IronPDF die Anzeige von PDFs über Browserfenster oder Iframes. Der Iframe-Ansatz ist besonders effektiv, da er das Layout Ihrer Anwendung beibehält, während der PDF-Inhalt inline angezeigt wird. Sie können auch die HTML-zu-PDF-Konvertierungsfunktionen von IronPDF nutzen, um dynamische PDFs für die Anzeige zu generieren.

Kann ich die PDF-Anzeige in WPF- und WinForms-Anwendungen integrieren?

Ja. Für WPF und WinForms hosten Sie eine WebView2-Steuerung und navigieren Sie zu einem gespeicherten PDF; WebView2 verwendet die Chromium-Engine von Microsoft Edge und umfasst eine eigene Symbolleiste, Zoom und Drucken. WebView2 ersetzt die ältere WebBrowser-Steuerung, die auf die veraltete Internet Explorer-Engine angewiesen ist. Wenn Sie lieber keine Browser-Steuerung hosten möchten, rasterisieren Sie jede Seite zu einem Bild mit RasterizeToImageFiles und zeigen Sie es in einem Image oder PictureBox an. IronPDF verarbeitet auch digitale Signaturen, das Ausfüllen von Formularen und die PDF-Komprimierung auf denselben Dokumenten.

Ist es möglich, den Standard-PDF-Viewer des Systems mit .NET-Anwendungen zu verwenden?

Unbedingt. IronPDF unterstützt die Integration mit dem Standard-PDF-Viewer des Systems unter Verwendung von System.Diagnostics.Process. Auf diese Weise können Sie PDFs in der bevorzugten PDF-Anwendung des Benutzers öffnen, während Sie IronPDF weiterhin zum Erzeugen, Bearbeiten oder Vorbereiten der PDF-Dokumente verwenden.

Welche zusätzlichen PDF-Funktionen gibt es über die reine Anzeige hinaus?

IronPDF bietet eine breite Palette von PDF-Funktionen, darunter digitale Signaturen für die Dokumentensicherheit, Formularfüllfunktionen für interaktive PDFs, PDF-Komprimierung zur Reduzierung der Dateigrößen, HTML-zu-PDF-Konvertierung für die Generierung von dynamischen Inhalten und das Speichern/Exportieren von PDFs in verschiedenen Formaten.

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 20,296,129 | Version: 2026.7 gerade veröffentlicht
Still Scrolling Icon

Scrollst du immer noch?

Sie brauchen schnell einen Beweis? PM > Install-Package IronPdf
Führen Sie eine Probe aus Sehen Sie zu, wie Ihr HTML-Code in eine PDF-Datei umgewandelt wird.