Zum Fußzeileninhalt springen
IRONPDF NUTZEN
Wie man ein PDF in C# erstellt

PDF-Dateien in C# generieren

Bürodokumente und Berichte müssen oft aus einer Vielzahl von Formaten, einschließlich HTML, in PDF-Dokumente konvertiert werden. Wir müssen möglicherweise auch PDF-Dateien aus Webseiten oder URLs generieren. Zu diesem Zweck benötigen wir einen vielseitigen Generator, der PDF-Dateien generieren kann, die exakt denselben Inhalt wie die ursprünglichen HTML-Dateien enthalten. In diesem Tutorial lernen wir, wie man PDF-Dateien in C# generiert.

Was ist IronPDF?

Die IronPDF for .NET PDF-Bibliothek wird von vielen Designern anerkannt, insbesondere von Computerprogrammierern, die C# verwenden. Mit diesem außergewöhnlichen Werkzeug können Sie zweifellos eine Kern-PDF-Bibliothek für .NET erstellen.

IronPDF nutzt eine .NET Chromium-Engine, um HTML-Seiten in PDF-Dokumente zu konvertieren. Mit HTML zu PDF gibt es keinen Grund, komplexe APIs zu verwenden, um PDFs zu positionieren oder zu planen. IronPDF unterstützt standardmäßige Webdokumente: HTML, ASPX, JS, CSS und Bilder.

Es ermöglicht Ihnen außerdem, eine .NET-PDF-Bibliothek mit HTML5, CSS, JavaScript und Bildern zu erstellen. Sie können leicht ein PDF bearbeiten, stempeln und Kopf- und Fußzeilen hinzufügen. Darüber hinaus macht es IronPDF extrem einfach, PDF-Inhalte effizient zu lesen und die Bilder zu extrahieren.

IronPDF bietet eine einzigartige Lösung für alle PDF-bezogenen Probleme. Wann immer Sie IronPDF kaufen, erhalten Sie alle Konvertierungen in einer einzigen Bibliothek, zusätzlich zu Aufgaben, die mit PDF-Dokumenten verbunden sind, ohne zusätzliche Bedingungen. IronPDF ist ein vollständiges Paket und ein großartiges Werkzeug für Designer und C#-Programmierer gleichermaßen.

IronPDF hilft uns bei der Erzeugung von PDF-Dateien aus den folgenden:

  • HTML-Strings und -Vorlagen
  • ASPX-WebForms
  • MVC Views
  • HTML-Dokumente
  • jede URL

IronPDF Funktionen

IronPDF unterstützt Sie bei der Erstellung von PDF-Dokumenten aus HTML 4 und 5, CSS und JavaScript und erstellt PDF-Dateien aus URLs. Es hilft auch beim Laden von URLs mit benutzerdefinierten Netzwerkanmeldeinformationen, User-Agents, Proxies, Cookies, HTTP-Headern und Formulardaten, sodass Anmeldungen hinter HTML-Anmeldeformularen möglich sind. Sie können ohne großen Aufwand Bilder und Texte aus PDF extrahieren und neuen HTML-Inhalt auf jede bestehende PDF-Seite stempeln, was Ihnen außerdem ermöglicht, logische oder HTML-Kopf- und Fußzeilen hinzuzufügen. Es kann vorhandene PDF-Dateien leicht laden und extrahieren sowie Inhalte in PDF-Dokumenten zusammenführen und aufteilen. Es hat eine benutzerdefinierte 'Basis-URL', um zugängliche Ressourcendateien im gesamten Internet zu ermöglichen und HTML zu akzeptieren, das in jeder wesentlichen Dokumentencodierung kodiert ist (standardmäßig UTF-8). Sie können einfach von Dokument, Binärdaten oder MemoryStreams speichern und laden und PDF-Dokumente in ein PrintDocument-Objekt verwandeln, um ohne Adobe zu drucken (mit minimalem Code) und offizielle Log-Dokumente zu exportieren, die Details über API-Erfolge und Debug-Fehler im Quellcode enthalten.

Kompatibilität

Es unterstützt .NET-Sprachen wie C#, VB.NET und F#. Es ist kompatibel mit .NET-Plattformen wie .NET 6, 5, Core 2x und 3x, Standard 2 und Framework 4x. Es funktioniert auf Anwendungen wie Konsole, Web und Desktop und wird von Microsoft Windows, Linux, macOS, Docker und Azure OS unterstützt. IronPDF IDES umfassen Microsoft Visual Studio, JetBrains ReSharper und Rider.

Schritte zur Erstellung von PDF-Dokumenten

Zuerst müssen wir ein neues Visual Studio-Projekt erstellen. Ich werde die Vorlage für Konsolenanwendungen für diese Demonstration verwenden. Sie können jede beliebige Verwendung entsprechend Ihren Anforderungen und Wünschen.

Sie können auch Ihr bestehendes Projekt verwenden, in das Sie ein Tool zur Erzeugung von PDF-Dateien einfügen möchten.

Visuelles Studio-Projekt erstellen

Öffnen Sie Microsoft Visual Studio 2019 oder eine andere Version. Die neueste Version wird empfohlen. Klicken Sie auf "Neues Projekt erstellen". Wählen Sie die C#-Konsolenanwendung für die Anwendungsvorlage aus. Klicken Sie "Weiter".

Weisen Sie Ihrem Projekt einen Namen zu. Ich habe es "C Sharp Generate PDF" genannt. Sie können es nach Belieben benennen. Klicken Sie auf die Schaltfläche "Weiter" und legen Sie das Ziel .NET-Framework fest. Ich habe mein Ziel .NET-Framework auf ".NET 5.0" festgelegt, die neueste stabile Version. Klicken Sie auf die Schaltfläche "Erstellen". Ein neues Projekt wird für Sie erstellt.

Installieren Sie das NuGet-Paket in Visual Studio

Bevor wir beginnen, müssen wir die IronPDF-Bibliothek installieren. Sie können es auf eine der folgenden drei Arten installieren:

Package Manager Konsole

Schreiben Sie den folgenden Befehl in die Paket-Manager-Konsole. Es lädt das Paket herunter und installiert es für Sie.

Install-Package IronPdf

Image 1

Die NuGet-Paketmanager-Lösung

Sie können auch die Barcode-Bibliothek mit der NuGet-Pakete-Lösung installieren. Folgen Sie einfach diesen Schritten:

Klicken Sie auf Extras > NuGet-Paketmanager > NuGet-Paketlösung verwalten.

Image 2

Dies öffnet den NuGet-Paketmanager für Sie. Klicken Sie auf "Durchsuchen" und suchen Sie nach IronPDF, wie unten gezeigt.

Image 3

Klicken Sie auf IronPDF und dann auf die Schaltfläche "Installieren". Dies wird IronPDF in Ihrem Projekt installieren. Jetzt können Sie jede seiner Funktionen in Ihrem Projekt frei nutzen.

Direkt IronPDF ZIP herunterladen

Alternativ können Sie das IronPDF ZIP-Paket für die Integration herunterladen.

Denken Sie daran, diese Anweisung an den Anfang jeder .cs-Klassendatei hinzuzufügen, in der IronPDF verwendet wird:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Schauen Sie sich IronPDF auf NuGet für Installation und Updates für weitere Informationen zu Versionsaktualisierungen und Installation an.

Es gibt andere IronPDF NuGet-Pakete für spezifische Bereitstellungen auf Linux-, Mac-, Azure- und AWS-Zielen, die im IronPDF erweiterte NuGet-Installationshandbuch dokumentiert sind.

Die IronPDF-Bibliothek ist jetzt installiert, also lassen Sie uns zum nächsten Schritt übergehen.

PDF-Dateien aus HTML-String generieren

IronPDF kann einfach PDF-Dateien aus HTML-Text generieren. Das folgende Beispiel illustriert diese Fähigkeit. Verwenden Sie diese Option, wenn Sie nur einfachen Text zu Ihrer PDF-Datei hinzufügen müssen.

Fügen Sie den folgenden Namensraum hinzu:

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Verwenden Sie das folgende Codebeispiel:

var Renderer = new ChromePdfRenderer();
// Render HTML as PDF and save the result
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF<h1>")
        .SaveAs("GeneratePDF.pdf");
var Renderer = new ChromePdfRenderer();
// Render HTML as PDF and save the result
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF<h1>")
        .SaveAs("GeneratePDF.pdf");
Dim Renderer = New ChromePdfRenderer()
' Render HTML as PDF and save the result
Renderer.RenderHtmlAsPdf("<h1>This is the Tutorial for C# Generate PDF<h1>").SaveAs("GeneratePDF.pdf")
$vbLabelText   $csharpLabel

Im obigen Code habe ich einen neuen ChromePdfRenderer erstellt. Dann habe ich RenderHtmlAsPdf und SaveAs für das Ergebnis aufgerufen.

Ausgabe

Führen Sie das Programm aus. Es wird ein PDF-Dokument im bin-Ordner des Projekts generieren, da wir den Pfad nicht angegeben haben.

Image 4

Erstellen Sie Ihre ersten PDF-Dateien

Nachdem die IronPDF-Bibliothek installiert ist, können wir mühelos eine PDF-Datei und eine PDF-Seite mit nur wenigen Codezeilen erstellen. Jetzt werden wir Ihnen helfen, Ihr erstes PDF-Dokument in C# zu erstellen. Kopieren Sie den folgenden Code, fügen Sie ihn in Ihr Visual Studio ein und führen Sie das Programm aus.

var pdf = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
doc.SaveAs("FirstPDFDocument.pdf");
var pdf = new ChromePdfRenderer();
PdfDocument doc = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>");
doc.SaveAs("FirstPDFDocument.pdf");
Dim pdf = New ChromePdfRenderer()
Dim doc As PdfDocument = pdf.RenderHtmlAsPdf("<h1>This is a heading</h1>")
doc.SaveAs("FirstPDFDocument.pdf")
$vbLabelText   $csharpLabel

Nach der Ausführung Ihres C#-Projekts wird im bin-Ordner Ihres Projekts eine Datei mit dem Namen "FirstPDFDocument.pdf" vorhanden sein. Doppelklicken Sie auf die besagte Datei, und die PDF-Datei wird im Browser-Tab geöffnet.

Image 9

Das Erstellen von PDF-Dateien in C# oder das Konvertieren von HTML zu PDF ist mit IronPDF nur wenige Codezeilen.

PDF-Dokument aus URL generieren

Das Erstellen einer PDF-Datei in C# mithilfe einer URL ist ebenso einfach wie das obige Beispiel mit nur diesen drei Zeilen Code. Der folgende Code zeigt, wie man ein PDF aus einer URL mit IronPDF erstellt.

using IronPdf;

var Renderer = new ChromePdfRenderer();
// Create a PDF from a URL or local file path
using var pdf = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
using IronPdf;

var Renderer = new ChromePdfRenderer();
// Create a PDF from a URL or local file path
using var pdf = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
// Export to a file or Stream
pdf.SaveAs("url.pdf");
Imports IronPdf

Private Renderer = New ChromePdfRenderer()
' Create a PDF from a URL or local file path
Private pdf = Renderer.RenderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20")
' Export to a file or Stream
pdf.SaveAs("url.pdf")
$vbLabelText   $csharpLabel

Hier ist die Ausgabe des obigen Codes.

Image 10

Weitere Beispiele zur Konvertierung beliebter komplexer Websites in PDF.

Image 11

PDF-Dateierzeugung aus einer HTML-Datei

Wir können ein PDF-Dokument aus HTML-Dateien mit Bildern, CSS, Formularen, Hyperlinks und JavaScript generieren. Verwenden Sie diese Methode für Szenarien, in denen Sie lokalen Zugriff auf das Quelldokument haben.

Dieses Beispiel verwendet RenderHtmlFileAsPdf und gibt eine Variable namens PDF zurück.

Rufen Sie SaveAs auf, um die Ausgabe in einer PDF-Datei zu speichern.

Das folgende Codebeispiel geht davon aus, dass sich im bin-Verzeichnis des Projekts eine HTML-Datei befindet.

var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderHtmlFileAsPdf("AccountPage.html");
pdf.SaveAs("AccountPdf.pdf");
var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderHtmlFileAsPdf("AccountPage.html");
pdf.SaveAs("AccountPdf.pdf");
Dim Renderer = New ChromePdfRenderer()
Dim pdf = Renderer.RenderHtmlFileAsPdf("AccountPage.html")
pdf.SaveAs("AccountPdf.pdf")
$vbLabelText   $csharpLabel

Input HTML:

Image 5

Generierte PDF-Dateiausgabe:

Image 6

PDF-Dateien aus URLs generieren

Wir können PDF-Dateien aus bestehenden Webseiten mit wenigen Zeilen C# oder VB.NET-Code erzeugen. Verwenden Sie diese Option, wenn Sie ein PDF-Dokument von einer Webseite generieren müssen, die bereits ein gut formatiertes Dokument hat.

Rufen Sie RenderUrlAsPdf auf, um Inhalte von Webseiten herunterzuladen, damit Sie SaveAs aufrufen können, um die PDF-Datei lokal zu speichern.

var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
pdf.SaveAs("wikipedia.pdf");
var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format");
pdf.SaveAs("wikipedia.pdf");
Dim Renderer = New ChromePdfRenderer()
Dim pdf = Renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Portable_Document_Format")
pdf.SaveAs("wikipedia.pdf")
$vbLabelText   $csharpLabel

PDF-Dateiausgabe:

Image 7

Erzeugen eines PDF-Dokuments aus ASP.NET Web Forms

Wir können ein PDF-Dokument aus ASP.NET-Webformularen anstelle von HTML mit nur einer Codezeile generieren. Platzieren Sie die Codezeile in der Page_Load-Methode des Code-Behind der Seite.

  • Erstellen Sie eine neue ASP.NET-Webforms-Anwendung oder öffnen Sie eine bestehende.
  • Installieren Sie das NuGet-Paket für die IronPDF-Bibliothek.
  • Importieren Sie den IronPDF-Namespace mit dem entsprechenden Schlüsselwort.
  • Öffnen Sie das Code-Behind für die Seite, die Sie in PDF rendern möchten. Zum Beispiel Default.aspx.cs
  • Schreiben Sie den folgenden Code in die Page Load Function.
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser);
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.InBrowser)
$vbLabelText   $csharpLabel

PDF-Dateiausgabe:

Image 8

PDF-Dateien aus ASP MVC-Ansicht generieren

Wir können PDF-Dokumente aus dem ASP MVC-Framework generieren.

Starten Sie den neuen Projektassistenten in Visual Studio und wählen Sie ASP.NET-Webanwendung (.NET Framework) > MVC. Alternativ öffnen Sie ein bestehendes MVC-Projekt. Öffnen Sie die Datei HomeController im Controllers-Ordner und ersetzen Sie die Index-Methode, oder fügen Sie einen neuen Controller hinzu.

Dies ist ein Beispiel dafür, wie der Code aussehen sollte:

public ActionResult Index()
{
    var pdf = IronPdf.ChromePdfRenderer.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
    return File(pdf.BinaryData, "application/pdf", "Wiki.Pdf");
}

public ActionResult About()
{
    ViewBag.Message = "Your application description page.";
    return View();
}

public ActionResult Contact()
{
    ViewBag.Message = "Your contact page.";
    return View();
}
public ActionResult Index()
{
    var pdf = IronPdf.ChromePdfRenderer.StaticRenderUrlAsPdf(new Uri("https://en.wikipedia.org"));
    return File(pdf.BinaryData, "application/pdf", "Wiki.Pdf");
}

public ActionResult About()
{
    ViewBag.Message = "Your application description page.";
    return View();
}

public ActionResult Contact()
{
    ViewBag.Message = "Your contact page.";
    return View();
}
Public Function Index() As ActionResult
	Dim pdf = IronPdf.ChromePdfRenderer.StaticRenderUrlAsPdf(New Uri("https://en.wikipedia.org"))
	Return File(pdf.BinaryData, "application/pdf", "Wiki.Pdf")
End Function

Public Function About() As ActionResult
	ViewBag.Message = "Your application description page."
	Return View()
End Function

Public Function Contact() As ActionResult
	ViewBag.Message = "Your contact page."
	Return View()
End Function
$vbLabelText   $csharpLabel

PDF-Dateiausgabe:

Image 9

Kopf- und Fußzeilen einfügen

Die Eigenschaft Druckoptionen ermöglicht es Ihnen, Kopf- und Fußzeilen für jede Seite der PDF-Datei zu gestalten. Greifen Sie auf diese Optionen im ChromePdfRenderer-Objekt zu. Dieses Beispiel funktioniert in einer .NET-Core-Konsolenanwendung.

  • Verwenden Sie diese Vorlageneigenschaften, um den Inhalt zu erstellen.
  • {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}

Schreiben Sie den folgenden Code:

var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1;
// Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}";
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12;
// Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial";
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10;
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial<h1>")
                 .SaveAs("GeneratePDF.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1;
// Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}";
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial";
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12;
// Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = true;
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial";
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10;
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}";
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";

ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial<h1>")
                 .SaveAs("GeneratePDF.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
ChromePdfRenderer.RenderingOptions.FirstPageNumber = 1
' Header options
ChromePdfRenderer.RenderingOptions.TextHeader.DrawDividerLine = True
ChromePdfRenderer.RenderingOptions.TextHeader.CenterText = "This is Header {date} {time}"
ChromePdfRenderer.RenderingOptions.TextHeader.FontFamily = "Helvetica,Arial"
ChromePdfRenderer.RenderingOptions.TextHeader.FontSize = 12
' Footer options
ChromePdfRenderer.RenderingOptions.TextFooter.DrawDividerLine = True
ChromePdfRenderer.RenderingOptions.TextFooter.FontFamily = "Arial"
ChromePdfRenderer.RenderingOptions.TextFooter.FontSize = 10
ChromePdfRenderer.RenderingOptions.TextFooter.LeftText = "{date} {time}"
ChromePdfRenderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"

ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is my Sample Page for Generate PDF Tutorial<h1>").SaveAs("GeneratePDF.pdf")
$vbLabelText   $csharpLabel

PDF-Dateiausgabe mit Kopf- und Fußzeile

Image 10

Kopf- und Fußzeilen mit HTML einfügen

Wir können Text, Datum, Uhrzeit und Seitennummern in den Kopf- und Fußzeilen unseres PDF-Dokuments hinzufügen.

var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    Height = 15,
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
    DrawDividerLine = true
};
ChromePdfRenderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    Height = 20,
    HtmlFragment = "This is Footer {date}",
};

ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.<h1>")
                 .SaveAs("GeneratePDF.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    Height = 15,
    HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
    DrawDividerLine = true
};
ChromePdfRenderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    Height = 20,
    HtmlFragment = "This is Footer {date}",
};

ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.<h1>")
                 .SaveAs("GeneratePDF.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
ChromePdfRenderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
	.Height = 15,
	.HtmlFragment = "<center><i>{page} of {total-pages}<i></center>",
	.DrawDividerLine = True
}
ChromePdfRenderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
	.Height = 20,
	.HtmlFragment = "This is Footer {date}"
}

ChromePdfRenderer.RenderHtmlAsPdf("<h1>This is sample page for Tutorial.<h1>").SaveAs("GeneratePDF.pdf")
$vbLabelText   $csharpLabel

Wie oben funktioniert dieses Beispiel in einer .NET Core-Konsolenanwendung. Spezifizieren Sie HTML mit der HtmlFragment-Eigenschaft.

Image 11

PDF-Dokumente mit einem Passwort verschlüsseln

Wir können PDF-Dokumente mit Passwörtern generieren. Legen Sie die Eigenschaft "Password" eines PDF-Dokuments fest, um es zu verschlüsseln, und zwingen Sie den Benutzer, das richtige Passwort einzugeben, um das Dokument anzuzeigen. Dieses Beispiel funktioniert in einer .NET Core-Konsolenanwendung.

var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world<h1>");
pdfDocument.Password = "Password@1234";
pdfDocument.SaveAs("secured.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world<h1>");
pdfDocument.Password = "Password@1234";
pdfDocument.SaveAs("secured.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
Dim pdfDocument = ChromePdfRenderer.RenderHtmlAsPdf("<h1>Hello world<h1>")
pdfDocument.Password = "Password@1234"
pdfDocument.SaveAs("secured.pdf")
$vbLabelText   $csharpLabel

PDF-Dateiausgabe:

Image 12

PDF-Dokumente zusammenführen und teilen

Wir können mehrere PDF-Dokumente in ein einziges neues PDF-Dokument zusammenführen. Verwenden Sie diesen Code zum Zusammenführen und Aufteilen.

var ChromePdfRenderer = new ChromePdfRenderer();
// Join Multiple Existing PDFs into a single document
var pdfDocuments = new List<PdfDocument>
{
    PdfDocument.FromFile("AccountPdf.pdf"),
    PdfDocument.FromFile("GeneratePDF.pdf"),
    PdfDocument.FromFile("wikipedia.pdf")
};

var mergedPdfDocument = PdfDocument.Merge(pdfDocuments);
mergedPdfDocument.SaveAs("merged.pdf");
// Add a cover page
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));
// Remove the last page from the PDF and save again
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1);
mergedPdfDocument.SaveAs("merged.pdf");
// Copy pages 1,2 and save them as a new document
mergedPdfDocument.CopyPages(1, 2).SaveAs("excerpt.pdf");
var ChromePdfRenderer = new ChromePdfRenderer();
// Join Multiple Existing PDFs into a single document
var pdfDocuments = new List<PdfDocument>
{
    PdfDocument.FromFile("AccountPdf.pdf"),
    PdfDocument.FromFile("GeneratePDF.pdf"),
    PdfDocument.FromFile("wikipedia.pdf")
};

var mergedPdfDocument = PdfDocument.Merge(pdfDocuments);
mergedPdfDocument.SaveAs("merged.pdf");
// Add a cover page
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"));
// Remove the last page from the PDF and save again
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1);
mergedPdfDocument.SaveAs("merged.pdf");
// Copy pages 1,2 and save them as a new document
mergedPdfDocument.CopyPages(1, 2).SaveAs("excerpt.pdf");
Dim ChromePdfRenderer As New ChromePdfRenderer()
' Join Multiple Existing PDFs into a single document
Dim pdfDocuments = New List(Of PdfDocument) From {PdfDocument.FromFile("AccountPdf.pdf"), PdfDocument.FromFile("GeneratePDF.pdf"), PdfDocument.FromFile("wikipedia.pdf")}

Dim mergedPdfDocument = PdfDocument.Merge(pdfDocuments)
mergedPdfDocument.SaveAs("merged.pdf")
' Add a cover page
mergedPdfDocument.PrependPdf(ChromePdfRenderer.RenderHtmlAsPdf("<h1>Cover Page</h1><hr>"))
' Remove the last page from the PDF and save again
mergedPdfDocument.RemovePage(mergedPdfDocument.PageCount - 1)
mergedPdfDocument.SaveAs("merged.pdf")
' Copy pages 1,2 and save them as a new document
mergedPdfDocument.CopyPages(1, 2).SaveAs("excerpt.pdf")
$vbLabelText   $csharpLabel

Verwenden Sie die Funktion "Merge", um mehrere PDF-Dateien zusammenzuführen, oder "CopyPages", um eine Anzahl von Seiten aus einem bestehenden Dokument aufzuteilen. Fügen Sie PDFs in Ihr Projekt als "Content" ein, um auf sie über den Dateinamen zugreifen zu können.

Image 13

Bilder aus PDF-Dokumenten extrahieren

Diese Funktion erfordert ein zusätzliches NuGet-Paket. Installieren Sie System.Drawing.Common. Verwenden Sie ExtractAllText, um Text zu erhalten und ExtractAllImages, um Bilder zu erhalten.

var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = PdfDocument.FromFile("wikipedia.pdf");
// Get all text
var allText = pdfDocument.ExtractAllText();
// Get all Images
var allImages = pdfDocument.ExtractAllImages();

// Or even find the images and text by page
for (var index = 0; index < pdfDocument.PageCount; index++)
{
    var pageNumber = index + 1;
    var pageText = pdfDocument.ExtractTextFromPage(index);
    var pageImages = pdfDocument.ExtractImagesFromPage(index);
}
var ChromePdfRenderer = new ChromePdfRenderer();
var pdfDocument = PdfDocument.FromFile("wikipedia.pdf");
// Get all text
var allText = pdfDocument.ExtractAllText();
// Get all Images
var allImages = pdfDocument.ExtractAllImages();

// Or even find the images and text by page
for (var index = 0; index < pdfDocument.PageCount; index++)
{
    var pageNumber = index + 1;
    var pageText = pdfDocument.ExtractTextFromPage(index);
    var pageImages = pdfDocument.ExtractImagesFromPage(index);
}
Dim ChromePdfRenderer As New ChromePdfRenderer()
Dim pdfDocument = PdfDocument.FromFile("wikipedia.pdf")
' Get all text
Dim allText = pdfDocument.ExtractAllText()
' Get all Images
Dim allImages = pdfDocument.ExtractAllImages()

' Or even find the images and text by page
For index = 0 To pdfDocument.PageCount - 1
	Dim pageNumber = index + 1
	Dim pageText = pdfDocument.ExtractTextFromPage(index)
	Dim pageImages = pdfDocument.ExtractImagesFromPage(index)
Next index
$vbLabelText   $csharpLabel

Sie müssen System.Drawing hinzufügen, um Bilder als Bitmaps zu speichern.

JavaScript einschalten

Wir können JavaScript in unserem Browser mithilfe von IronPDF aktivieren. Das folgende Codebeispiel zeigt, wie wir JavaScript in unserem Webbrowser aktivieren.

var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions = new ChromePdfRenderer()
{
    EnableJavaScript = true,
    RenderDelay = 100
};
var ChromePdfRenderer = new ChromePdfRenderer();
ChromePdfRenderer.RenderingOptions = new ChromePdfRenderer()
{
    EnableJavaScript = true,
    RenderDelay = 100
};
Dim ChromePdfRenderer As New ChromePdfRenderer()
ChromePdfRenderer.RenderingOptions = New ChromePdfRenderer() With {
	.EnableJavaScript = True,
	.RenderDelay = 100
}
$vbLabelText   $csharpLabel

PDF OCR und Textextraktion

In vielen Fällen können Sie eingebetteten Text direkt aus PDF-Dokumenten extrahieren. Schreiben Sie den folgenden Code:

PdfDocument PDF = PdfDocument.FromFile("GeneratePDF.pdf");
// Get all text 
string Text = PDF.ExtractAllText();
PdfDocument PDF = PdfDocument.FromFile("GeneratePDF.pdf");
// Get all text 
string Text = PDF.ExtractAllText();
Dim PDF As PdfDocument = PdfDocument.FromFile("GeneratePDF.pdf")
' Get all text 
Dim Text As String = PDF.ExtractAllText()
$vbLabelText   $csharpLabel

Wenn dies nicht funktioniert, liegt es wahrscheinlich daran, dass Ihr Text tatsächlich in einem Bild eingebettet ist.

Verwenden Sie die IronOCR-Bibliothek, um Dokumente nach visuellem Text zu durchsuchen, der kein Klartext ist.

Zusammenfassung

Sie können PDF-Dokumente generieren, manipulieren und nach Belieben formatieren, und das mit nur wenigen Codezeilen. Geben Sie einfach die Operationen an, und IronPDF übernimmt diese. Es gibt auch eine kostenlose Version für die Entwicklung und eine kostenlose Testversion vor dem Kauf. Es gibt andere PDF-generierende Bibliotheken auf dem Markt, aber viele von ihnen sind entweder in Bezug auf die Leistung langsam oder erfordern, dass Sie für die Entwicklung bezahlen.

Die IronPDF for .NET-Bibliothek ist jetzt mit Iron Suite for .NET verfügbar. Iron Suite enthält andere .NET-Bibliotheken wie IronXL, IronOCR, IronBarcode usw. Diese anderen Bibliotheken sind sehr nützlich für Entwickler, daher wird empfohlen, sie auszuprobieren. Wenn Sie die komplette Iron Suite kaufen, können Sie alle fünf Produkte zum Preis von nur zwei erhalten. Für weitere Details klicken Sie hier: IronPDF Suite Information.

Sie können eine Projektdatei von diesem IronPDF C# PDF-Generierung Tutorial-Projekt herunterladen.

Häufig gestellte Fragen

Wie kann ich ein PDF aus einem HTML-String in C# erstellen?

Sie können ein PDF aus einem HTML-String mit der RenderHtmlAsPdf-Methode des ChromePdfRenderers von IronPDF erstellen. Diese Methode konvertiert HTML-Inhalte in ein PDF-Format, das dann mit der SaveAs-Methode gespeichert werden kann.

Kann ich PDF-Dokumente aus Webseiten-URLs erstellen?

Ja, Sie können PDFs aus Webseiten-URLs mit IronPDF erstellen. Verwenden Sie die RenderUrlAsPdf-Methode des ChromePdfRenderers, um Webseiteninhalte in ein PDF-Dokument zu konvertieren.

Wie füge ich Kopf- und Fußzeilen zu einem PDF in C# hinzu?

Um Kopf- und Fußzeilen zu einem PDF in C# hinzuzufügen, verwenden Sie den ChromePdfRenderer von IronPDF, indem Sie die Eigenschaften TextHeader und TextFooter in den RenderingOptions festlegen. Sie können dynamische Elemente wie Seitennummern und Daten einfügen.

Ist es möglich, PDF-Dokumente in C# zu verschlüsseln?

Ja, Sie können PDF-Dokumente in C# verschlüsseln, indem Sie in IronPDF die Password-Eigenschaft des PdfDocument-Objekts auf das gewünschte Passwort festlegen.

Wie kann ich PDF-Dateien in C# zusammenführen oder teilen?

Mit IronPDF können Sie mit der Merge-Methode mehrere PDFs zu einem einzigen Dokument zusammenfügen. Um Dokumente zu teilen, können Sie die CopyPages-Methode verwenden, um bestimmte Seiten zu extrahieren.

Was sind die Systemanforderungen für die Verwendung von IronPDF?

IronPDF unterstützt .NET-Sprachen wie C#, VB.NET und F#. Es ist kompatibel mit .NET 6, 5, Core 2.x und 3.x, Standard 2 und Framework 4.x. Es läuft auf Windows, Linux, macOS, Docker und Azure OS.

Kann ich Bilder aus PDF-Dateien in C# extrahieren?

Ja, Sie können mit der ExtractAllImages-Methode von IronPDF Bilder aus PDF-Dateien extrahieren. Stellen Sie sicher, dass das System.Drawing.Common NuGet-Paket für die Bildbearbeitung enthalten ist.

Wie installiere ich IronPDF in meinem C#-Projekt?

Installieren Sie IronPDF in Ihrem Projekt über den NuGet-Paket-Manager in Visual Studio, indem Sie nach IronPDF suchen oder die Package Manager Console mit dem Befehl Install-Package IronPdf verwenden.

Welche zusätzlichen Funktionen bietet IronPDF?

IronPDF bietet Funktionen wie das Erstellen von PDFs aus mehreren Quellen, das Hinzufügen von Kopf- und Fußzeilen, das Verschlüsseln von Dokumenten, das Extrahieren von Text und Bildern und das Konvertieren von HTML-Inhalten. Es unterstützt auch die Ausführung von JavaScript und OCR-Fähigkeiten zur Textextraktion aus bildverankerten PDFs.

Ist IronPDF mit .NET 10 kompatibel und welche Vorteile ergeben sich daraus?

Ja, IronPDF ist vollständig mit .NET 10 kompatibel. Es funktioniert sofort in .NET 10-Projekten, genau wie in früheren .NET-Versionen, unter Windows, Linux, in Containern und macOS. Zu den Vorteilen gehören eine verbesserte Laufzeitleistung, die Vermeidung von Konfigurationsproblemen und der Zugriff auf neue C#-Sprachfunktionen sowie asynchrone APIs.

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