IRONSOFTWAREHOME

Wie exportiere und speichere ich PDFs in IronPDF C#

Curtis Chau
Curtis Chau
Updated: 29. Juni 2026

IronPDF exportiert ein gerendertes PdfDocument in PDF in C# durch SaveAs für die Festplatte, die Stream- und BinaryData-Eigenschaften für den Speicher und SaveAsPdfA, SaveAsPdfUA und SaveAsRevision für archivierte, zugängliche und versionierte Ausgaben. Jede Methode nimmt ein bereits gerendertes Dokument und schreibt es an das Ziel, das Ihre Anwendung benötigt, sei es ein Dateipfad, ein In-Memory-Puffer oder eine HTTP-Antwort.

Dieses Handbuch führt durch jedes Exportziel, von einem Ein-Zeilen-Dateispeichern bis hin zur Bereitstellung eines PDF direkt an einen Browser, und die Methoden, die normenkonformes Ausgabe erzeugen.

Schnellstart: Exportieren Sie HTML zu PDF in C#

Rendern Sie HTML und schreiben Sie das Ergebnis in einer einzigen Anweisung auf die Festplatte. Der RenderHtmlAsPdf-Aufruf gibt ein PdfDocument zurück, und SaveAs speichert es.

  1. 1Install IronPDF with NuGet Package Manager

    PM > Install-Package IronPdf

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

    new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>HelloPDF</h1>").SaveAs("myExportedFile.pdf");
    C#
  3. 3Bereitstellen zum Testen in Ihrer Live-Umgebung

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

Welche Optionen gibt es zum Speichern von PDFs?

IronPDF speichert ein PdfDocument an vier Arten von Zielen: eine Datei auf der Festplatte, ein im Speicher befindliches MemoryStream, ein rohes byte[] und eine konform-gekennzeichnete Datei zum Archivieren, für die Zugänglichkeit oder für inkrementelle Revisionen. Die folgenden Abschnitte behandeln jedes Ziel mit einem getesteten Beispiel, beginnend mit dem einfachsten Dateispeichern und endend mit den spezialisierten Exportmethoden.

Wie speichere ich ein PDF auf dem Laufwerk?

Verwenden Sie die SaveAs-Methode, um ein PdfDocument an einem Dateipfad zu schreiben. Dies ist der direkte Weg für Desktop-Anwendungen oder jeden Serverprozess, der PDFs auf dem Dateisystem aufbewahrt.

// Complete example for saving PDF to disk
using IronPdf;

// Initialize the Chrome PDF renderer
var renderer = new ChromePdfRenderer();

// Create HTML content with styling
string htmlContent = @"
<html>
<head>
    <style>
        body { font-family: Arial, sans-serif; margin: 40px; }
        h1 { color: #333; }
        .content { line-height: 1.6; }
    </style>
</head>
<body>
    <h1>Invoice #12345</h1>
    <div class='content'>
        <p>Date: " + DateTime.Now.ToString("yyyy-MM-dd") + @"</p>
        <p>Thank you for your business!</p>
    </div>
</body>
</html>";

// Render HTML to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

// Save to disk with standard method
pdf.SaveAs("invoice_12345.pdf");

// Save with password protection for sensitive documents
pdf.Password = "secure123";
pdf.SaveAs("protected_invoice_12345.pdf");

Das gleiche Beispiel setzt auch die Password-Eigenschaft, bevor ein zweites Speichern erfolgt, wodurch die Datei verschlüsselt wird und ohne dieses Passwort nicht geöffnet werden kann. Für eine feinere Kontrolle darüber, was ein Empfänger mit der Datei tun kann, lesen Sie die Anleitung zu PDF-Berechtigungen und -Passwörter.

Ausgabe

Wie speichere ich ein PDF in einem MemoryStream?

Die Stream-Eigenschaft gibt das Dokument als System.IO.MemoryStream zurück. Greifen Sie darauf zu, wenn Sie das PDF an eine andere Methode übergeben oder es hochladen oder per E-Mail versenden müssen, ohne zunächst eine temporäre Datei zu schreiben. Lesen Sie mehr über die Arbeit mit PDF-Memory-Streams.

// Example: Save PDF to MemoryStream
using IronPdf;
using System.IO;

var renderer = new ChromePdfRenderer();

// Render HTML content
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Monthly Report</h1><p>Sales figures...</p>");

// Get the PDF as a MemoryStream
MemoryStream stream = pdf.Stream;

// Example: Upload to cloud storage or database
// UploadToCloudStorage(stream);

// Example: Email as attachment without saving to disk
// EmailService.SendWithAttachment(stream, "report.pdf");

// Remember to dispose of the stream when done
stream.Dispose();

Ausgabe

Wie man als Binärdaten speichert

Die BinaryData-Eigenschaft gibt das Dokument als byte[] zurück. Ein Byte-Array passt zu Datenbankspalten, Cache-Einträgen und APIs, die rohe Bytes statt eines Streams akzeptieren.

// Example: Convert PDF to binary data
using IronPdf;

var renderer = new ChromePdfRenderer();

// Configure rendering options for better quality
renderer.RenderingOptions = new ChromePdfRenderOptions()
{
    MarginTop = 20,
    MarginBottom = 20,
    MarginLeft = 10,
    MarginRight = 10,
    PaperSize = IronPdf.Rendering.PdfPaperSize.A4
};

// Render content to PDF
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Contract Document</h1>");

// Get binary data
byte[] binaryData = pdf.BinaryData;

// Example: Store in database
// database.StorePdfDocument(documentId, binaryData);

// Example: Send via API
// apiClient.UploadDocument(binaryData);

Wenn Sie die umgekehrte Richtung benötigen und Bytes wieder in ein bearbeitbares Dokument laden möchten, behandelt die Anleitung zu Konvertierung von PDFs in einen MemoryStream dies.

Ausgabe

Wie stelle ich ein PDF von einem Webserver an den Browser bereit?

Um ein PDF über HTTP zurückzugeben, senden Sie die Bytes als Dateiantwort, nicht als HTML. Sowohl Stream als auch BinaryData fügen sich nahtlos in die von ASP.NET bereitgestellten Dateiergebnistypen ein, sodass der Controller ein Dokument rendert und zurückgibt, ohne die Festplatte berühren zu müssen.

Wie exportiere ich ein PDF in MVC?

In ASP.NET Core MVC, umwickeln Sie das Stream in ein FileStreamResult, um einen Download zu veranlassen, oder übergeben Sie BinaryData an File, um das PDF inline anzuzeigen. Die beiden unten stehenden Aktionen zeigen beides. Dies passt natürlich dazu, CSHTML-Ansichten zu PDF zu rendern.

// MVC controller methods for PDF export
public IActionResult DownloadInvoice(int invoiceId)
{
    // Generate your HTML content
    string htmlContent = GenerateInvoiceHtml(invoiceId);

    // Render the PDF with IronPDF
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(htmlContent);

    // Take the PDF stream and rewind it
    MemoryStream stream = pdf.Stream;
    stream.Position = 0;

    // Returning a FileStreamResult prompts a download in the browser
    return new FileStreamResult(stream, "application/pdf")
    {
        FileDownloadName = $"invoice_{invoiceId}.pdf"
    };
}

public IActionResult ViewInvoice(int invoiceId)
{
    var renderer = new ChromePdfRenderer();
    PdfDocument pdf = renderer.RenderHtmlAsPdf(GenerateInvoiceHtml(invoiceId));

    // Returning BinaryData with no filename displays the PDF inline
    return File(pdf.BinaryData, "application/pdf");
}
C#

Wie exportiere ich ein PDF in ASP.NET WebForms?

Traditionelle ASP.NET WebForms-Anwendungen schreiben die Bytes stattdessen über das Response-Objekt. Konfigurieren Sie die Rendering-Optionen einmal, ziehen Sie BinaryData und streamen Sie es an den Client.

// ASP.NET WebForms PDF export
protected void ExportButton_Click(object sender, EventArgs e)
{
    var renderer = new ChromePdfRenderer();

    // Configure rendering options
    renderer.RenderingOptions = new ChromePdfRenderOptions()
    {
        PaperSize = IronPdf.Rendering.PdfPaperSize.Letter,
        PrintHtmlBackgrounds = true,
        CreatePdfFormsFromHtml = true
    };

    // Render from custom HTML
    PdfDocument MyPdfDocument = renderer.RenderHtmlAsPdf(GetReportHtml());

    // Retrieve the PDF bytes
    byte[] Binary = MyPdfDocument.BinaryData;

    // Write the bytes to the response as a download
    Response.Clear();
    Response.ContentType = "application/octet-stream";
    Response.AddHeader("Content-Disposition",
        "attachment; filename=report_" + DateTime.Now.ToString("yyyyMMdd") + ".pdf");
    Context.Response.OutputStream.Write(Binary, 0, Binary.Length);
    Response.Flush();
    Response.End();
}
C#

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

Microsoft MVP

Fallstudie ansehen

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

Technischer Leiter, OPYN

Fallstudie ansehen

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

Leitender Software-Ingenieur, Agorus Build

Fallstudie ansehen

Wie exportiere ich PDF/A, PDF/UA und Revisionen?

Über die allgemeinen Speicherziele hinaus schreibt IronPDF drei konformitätsspezifische Formate. SaveAsPdfA erzeugt eine Archivdatei, SaveAsPdfUA erzeugt eine getaggte zugängliche Datei, und SaveAsRevision fügt eine inkrementelle Revision an ein bestehendes Dokument an.

Wie speichere ich ein PDF/A-Archiv

SaveAsPdfA schreibt eine eigenständige Datei, die den ISO PDF/A-Standard für die Langzeitarchivierung erfüllt und die Schriftarten und Farbdaten einbettet, die ein Leser in Jahren benötigen wird. Das PdfAVersions-Argument wählt das Konformitätslevel aus, z.B. PdfA3b.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render the document you want to archive
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Archived Document</h1>");

// Save as a PDF/A-3b file for long-term archiving.
// PdfAVersions controls the conformance level (PdfA1b, PdfA2b, PdfA3b, PdfA4, and others).
pdf.SaveAsPdfA("archive-pdfa.pdf", IronPdf.PdfAVersions.PdfA3b);
C#

Ausgabe

Wie speichere ich eine zugängliche PDF/UA-Datei

SaveAsPdfUA schreibt ein getaggtes PDF, das den PDF/UA-Zugänglichkeitsstandard erfüllt, auf den Bildschirmleser angewiesen sind, um das Dokument zu navigieren. Das dritte Argument legt die Dokumentsprache fest, sodass unterstützende Technologie es mit der richtigen Stimme liest.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Render content that should be tagged for assistive technology
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Accessible Document</h1><p>Tagged for screen readers.</p>");

// Save as a PDF/UA-1 file. The last argument sets the document's primary
// language, which screen readers use to choose the correct voice.
pdf.SaveAsPdfUA("accessible-pdfua.pdf", IronPdf.PdfUAVersions.PdfUA1, IronPdf.NaturalLanguages.English_UnitedKingdom);
C#

Ausgabe

Wie speichere ich eine inkrementelle Revision

SaveAsRevision fügt einer Datei Änderungen hinzu, anstatt sie neu zu schreiben, sodass frühere Revisionen, einschließlich digitaler Signaturen, intakt bleiben. Das Dokument muss mit ChangeTrackingModes.EnableChangeTracking geöffnet werden, damit das inkrementelle Speichern funktioniert.

using IronPdf;
using IronPdf.Rendering;

var renderer = new ChromePdfRenderer();

// Create and save the original revision of the document
PdfDocument pdf = renderer.RenderHtmlAsPdf("<h1>Versioned Document</h1>");
pdf.SaveAs("revision-base.pdf");

// Re-open with change tracking enabled so the next save appends a revision
// instead of rewriting the file. This preserves earlier signed revisions.
PdfDocument loaded = PdfDocument.FromFile("revision-base.pdf", null, null, ChangeTrackingModes.EnableChangeTracking);

// Write an incremental revision on top of the existing bytes
loaded.SaveAsRevision("revision-v2.pdf");
C#

Ausgabe

Wie exportiere ich ein PDF asynchron?

Beim Rendering wird der aufrufende Thread blockiert, bis die Chromium-Engine fertig ist. In einer Webanfrage oder einer Desktop-UI, rufen Sie stattdessen RenderHtmlAsPdfAsync auf und warten Sie darauf, dann speichern Sie das zurückgegebene Dokument mit der gleichen SaveAs-Methode. Dies hält den Thread frei, während das Rendering läuft.

using IronPdf;
using System.Threading.Tasks;

var renderer = new ChromePdfRenderer();

// Render off the calling thread so a web request or UI stays responsive
PdfDocument pdf = await renderer.RenderHtmlAsPdfAsync("<h1>Async Generated PDF</h1>");

// SaveAs writes the finished document to disk once the render completes
pdf.SaveAs("async-render.pdf");
C#

Ausgabe

Abschluss

IronPDF exportiert ein gerendertes PdfDocument auf Festplatte, Speicher, eine HTTP-Antwort oder eine konform-gekennzeichnete Datei, jeweils durch eine einzige Methode auf dem bereits erstellten Dokument. Wählen Sie das Ziel, das dem Speicherort entspricht, an den die Bytes gesendet werden müssen, und wenden Sie SaveAsPdfA, SaveAsPdfUA oder SaveAsRevision an, wenn die Ausgabe einem Archivierungs-, Zugänglichkeits- oder Versionierungsstandard entsprechen muss.

Von hier aus halten Sie die Bytes vollständig von der Festplatte mit dem PDF-Speicher-Stream Workflow fern oder sichern Sie eine gespeicherte Datei mit PDF-Berechtigungen und Passwörtern.

Häufig gestellte Fragen

Wie exportiere ich in C# HTML-Inhalte in PDF?

Mit der ChromePdfRenderer-Klasse von IronPDF können Sie in C# HTML in PDF exportieren. Erstellen Sie einfach eine Renderer-Instanz, verwenden Sie die Methode RenderHtmlAsPdf(), um Ihren HTML-Inhalt zu konvertieren, und speichern Sie ihn dann mit der Methode SaveAs(). IronPDF macht es einfach, HTML-Strings, Dateien oder URLs direkt in PDF-Dokumente zu konvertieren.

Welche verschiedenen Methoden gibt es, um eine PDF-Datei mit C# zu speichern?

IronPDF bietet mehrere Methoden zum Speichern von PDFs: SaveAs() für das Speichern auf der Festplatte, Stream für das Ausliefern von PDFs in Webanwendungen, ohne temporäre Dateien zu erstellen, und BinaryData, um das PDF als Byte-Array zu erhalten. Jede Methode in IronPDF dient unterschiedlichen Anwendungsfällen, von der einfachen Dateispeicherung bis hin zur dynamischen Bereitstellung im Web.

Kann ich eine PDF-Datei im Speicher statt auf der Festplatte speichern?

Ja, IronPDF ermöglicht das Speichern von PDFs im Speicher mit System.IO.MemoryStream. Dies ist nützlich für Webanwendungen, bei denen Sie PDFs direkt an Benutzer ausgeben möchten, ohne temporäre Dateien auf dem Server zu erstellen. Sie können die Stream-Eigenschaft verwenden oder die PDF-Datei in Binärdaten umwandeln.

Wie kann ich beim Speichern einer PDF-Datei einen Passwortschutz hinzufügen?

IronPDF ermöglicht den Kennwortschutz, indem es die Kennworteigenschaft des PdfDocument-Objekts vor dem Speichern festlegt. Weisen Sie pdf.Password einfach einen Passwort-String zu und verwenden Sie dann SaveAs(), um eine geschützte PDF-Datei zu erstellen, die zum Öffnen das Passwort erfordert.

Kann ich eine PDF-Datei direkt an Webbrowser weitergeben, ohne sie auf der Festplatte zu speichern?

Ja, IronPDF ermöglicht es Ihnen, PDFs direkt als Binärdaten an Webbrowser zu übermitteln. Sie können die BinaryData-Eigenschaft verwenden, um die PDF-Datei als Byte-Array abzurufen und über den Response-Stream Ihrer Webanwendung bereitzustellen, so dass keine temporären Dateien gespeichert werden müssen.

Wie kann ich am einfachsten HTML in einer Zeile in PDF konvertieren und speichern?

IronPDF bietet eine Ein-Zeilen-Lösung: new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("Ihr HTML").SaveAs("output.pdf"). Dies erstellt einen Renderer, wandelt HTML in PDF um und speichert es auf der Festplatte in einer einzigen Anweisung.

Can I password-protect a PDF using IronPDF?

Yes, IronPDF allows you to set a password on a `PdfDocument` via the `Password` property before saving it. This ensures that a PDF cannot be opened without the correct password.

What should I do if I need an accessible PDF conforming to PDF/UA standards?

You can create a PDF that conforms to PDF/UA standards using IronPDF by calling the `SaveAsPdfUA` method. This ensures that the document includes tags to aid navigation by screen readers.

How can I keep different versions of a PDF document?

IronPDF supports incremental saves with the `SaveAsRevision` method, which appends changes to an existing PDF file while preserving previous revisions, ideal for maintaining version history.

Why should I consider exporting PDFs using the PDF/A format?

Exporting PDFs in PDF/A format ensures that the document is self-contained and suitable for long-term archiving, as it includes all necessary components like fonts and color data to ensure fidelity over time.

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 Handbücher.

...
Weiterlesen

Bereit anzufangen?

Nuget Downloads 21,105,021Version:2026.9gerade veröffentlicht

Holen Sie sich Ihre KOSTENLOSE

30-Tage-Testlizenz sofort.

bullet_checkedKeine Kreditkarte oder Kontoerstellung erforderlich
bullet_testTesten Sie in der Produktion
ohne Wasserzeichen
bullet_calendar30 Tage voll
funktionsfähiges Produkt
bullet_support24/5 technischer
Support während der Testphase
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

OR
bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried Iron Suite
Buchen Sie Ihre kostenlose Live-Demo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Kundenlogos von Iron Software
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Kundenlogos von Iron Software
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.
C# NuGet-Bibliothek für PDF
Installation mit NuGet

Version: 2026.9

PM > Install-Package IronPdf
nuget.org/packages/IronPdf/
  1. Rechtsklick auf Referenzen, NuGet-Pakete verwalten
  2. Wählen Sie Durchsuchen und suchen Sie nach 'IronPDF'
  3. Paket auswählen und installieren
C# PDF DLL
Download DLL

Version: 2026.9

oder laden Sie den Windows-Installer hier herunter.

  1. Laden Sie IronPDF herunter und entpacken Sie es in ein Verzeichnis wie ~/Libs innerhalb Ihres Lösungsverzeichnisses
  2. Im Visual Studio-Projektmappen-Explorer klicken Sie mit der rechten Maustaste auf Referenzen. Wählen Sie Durchsuchen, "IronPDF.dll"

Lizenzen ab 749 $