using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
PDFsharp vs. iTextSharp (C# PDF Library Vergleich)
Chipego Kalinda
24. April 2025
Teilen Sie:
Ob Sie eine dokumentschwere Unternehmenslösung entwickeln, Rechnungen in einer SaaS-Anwendung generieren oder Berichte aus einem .NET-Dashboard exportieren, eine Frage taucht immer auf:
"Welche C# PDF-Bibliothek sollte ich verwenden?"
Im .NET-Ökosystem stechen drei Bibliotheken hervor: PDFsharp, iTextSharp und IronPDF. Jede hat ihre Stärken, Eigenheiten und beste Anwendungsfälle. Aber welches ist wirklich die beste Wahl für moderne Entwickler, die mit PDF-Dateien innerhalb von .NET 6+, .NET Core oder sogar dem traditionellen .NET Framework arbeiten?
Dieser umfassende Leitfaden geht detailliert auf jede Bibliothek ein und vergleicht Funktionen, Installation, Benutzerfreundlichkeit und Ausgabequalität. Wir werden funktionierende Code-Beispiele durchgehen, die Vor- und Nachteile jeder Bibliothek erörtern und praktische Empfehlungen basierend auf den tatsächlichen Entwicklungsanforderungen anbieten.
Los geht's.
PDFsharp Übersicht
Was ist PDFsharp?
PDFsharp ist eine Open-Source-Bibliothek, die Entwicklern ermöglicht, PDF-Dokumente in Echtzeit mit C# zu erstellen und zu verarbeiten. Es unterstützt die Erstellung von PDF-Dokumenten von Grund auf und die Möglichkeit, bestehende PDF-Dateien zu bearbeiten. Die saubere, objektorientierte API ist ideal für Entwickler, die nach einer leichten und einfach zu integrierenden Lösung suchen.
Trotz der gemeinschaftsgetriebenen Natur genießt es eine treue Benutzerbasis und bleibt eine beliebte Wahl für einfache PDF-Aufgaben, die keine erweiterte Wiedergabe oder dynamischen Inhalte aus HTML erfordern.
PDFsharp installieren
Die Installation erfolgt unkompliziert über NuGet:
Install-Package PDFsharp
Install-Package PDFsharp
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package PDFsharp
$vbLabelText $csharpLabel
Es ist auch mit PdfSharpCore für .NET Core-Umgebungen kompatibel.
Beispielcode: Erstellen eines einfachen PDF
using PdfSharp.Pdf;
using PdfSharp.Drawing;
// Create a new PDF document
var document = new PdfSharp.Pdf.PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyleEx.Bold);
// Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("HelloWorld.pdf");
using PdfSharp.Pdf;
using PdfSharp.Drawing;
// Create a new PDF document
var document = new PdfSharp.Pdf.PdfDocument();
document.Info.Title = "Created with PDFsharp";
// Create an empty page
PdfPage page = document.AddPage();
// Get an XGraphics object for drawing
XGraphics gfx = XGraphics.FromPdfPage(page);
// Create a font
XFont font = new XFont("Verdana", 20, XFontStyleEx.Bold);
// Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, new XRect(0, 0, page.Width, page.Height), XStringFormats.Center);
// Save the document
document.Save("HelloWorld.pdf");
Imports PdfSharp.Pdf
Imports PdfSharp.Drawing
' Create a new PDF document
Private document = New PdfSharp.Pdf.PdfDocument()
document.Info.Title = "Created with PDFsharp"
' Create an empty page
Dim page As PdfPage = document.AddPage()
' Get an XGraphics object for drawing
Dim gfx As XGraphics = XGraphics.FromPdfPage(page)
' Create a font
Dim font As New XFont("Verdana", 20, XFontStyleEx.Bold)
' Draw the text
gfx.DrawString("Hello, PDFsharp!", font, XBrushes.Black, New XRect(0, 0, page.Width, page.Height), XStringFormats.Center)
' Save the document
document.Save("HelloWorld.pdf")
$vbLabelText $csharpLabel
Ausgabe
📝 Hinweis: PDFsharp unterstützt nicht die HTML-Rendering oder CSS-Parsing von Haus aus, daher eignet es sich am besten für zeichnungsbasierte Dokumentenerstellung. Für die HTML-zu-PDF-Wiedergabe benötigen Sie den HtmlRenderer für PDFsharp.
Vor- und Nachteile von PDFsharp
Vorteile:
Freie und Open-Source-PDF-Bibliothek (MIT-Lizenz)
Ideal für einfaches Zeichnen auf niedriger Ebene und einfache textbasierte PDF-Dokumente
Leicht und einfach zu installieren
Nachteile:
Keine native HTML-zu-PDF-Unterstützung
Die Renderfähigkeiten sind begrenzt
Für fortgeschrittene Anwendungsfälle nicht aktiv gepflegt
iTextSharp Detaillierte Analyse
Was ist iTextSharp?
iTextSharp ist der .NET-Port von iText, einer robusten, Java-basierten PDF-Bibliothek. Es bietet erweiterte Funktionalitäten, einschließlich digitaler Signaturen, Formularfelder, Barcodes und mehr. iTextSharp ist hochgradig anpassbar und eignet sich am besten für Unternehmen mit rechtlichen oder regulatorischen Dokumentationsanforderungen.
Allerdings gibt es einen Haken—die Lizenzierung. iTextSharp ist AGPL-lizenziert, was bedeutet, dass Sie Ihr Projekt als Open Source veröffentlichen müssen, es sei denn, Sie erwerben eine kommerzielle Lizenz.
Installation von iTextSharp
Install-Package itext
Install-Package itext
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package itext
$vbLabelText $csharpLabel
Die neueren Versionen verwenden den iText Core-Namespace. Bitte überprüfen Sie die Lizenzbedingungen vor der Integration.
Beispielcode: Grundlegende PDF-Erstellung
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
PdfWriter writer = new PdfWriter("iTextHello.pdf");
var pdf = new iText.Kernel.Pdf.PdfDocument(writer);
Document document = new Document(pdf);
document.Add(new Paragraph("Hello, iTextSharp!"));
document.Close();
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
PdfWriter writer = new PdfWriter("iTextHello.pdf");
var pdf = new iText.Kernel.Pdf.PdfDocument(writer);
Document document = new Document(pdf);
document.Add(new Paragraph("Hello, iTextSharp!"));
document.Close();
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
Private writer As New PdfWriter("iTextHello.pdf")
Private pdf = New iText.Kernel.Pdf.PdfDocument(writer)
Private document As New Document(pdf)
document.Add(New Paragraph("Hello, iTextSharp!"))
document.Close()
$vbLabelText $csharpLabel
Ausgabe
📌 *Tipp: Die iText 9-Version von iTextSharp ist modular. Für die HTML-Konvertierung oder Barcode-Generierung installieren Sie zusätzliche NuGet-Pakete, wie beispielsweise das kostenpflichtige Add-On pdfHTML.
Stärken und Schwächen von iTextSharp
Stärken:
Leistungsstark und unternehmensweit einsetzbar
Unterstützt PDF/A, Verschlüsselung, Formularfüllung und digitale Signaturen
Modulare Architektur mit Plugins
Schwächen:
AGPL-Lizenz oder teure kommerzielle Lizenz
Steilere Lernkurve
Ausführliche Syntax im Vergleich zu Wettbewerbern
IronPDF: Die umfassende Wahl für C
Warum IronPDF sich abhebt
IronPDF ist eine kommerzielle .NET-Bibliothek, die Einfachheit, Genauigkeit beim Rendering und Funktionsreichtum betont. Es ist besonders leistungsstark, wenn Sie HTML in PDF mit vollständiger Unterstützung für CSS, JavaScript und Webfonts konvertieren möchten—was es ideal für die moderne, reaktionsfähige PDF-Dokumentenerstellung macht. Ob Sie PDF-Dokumente von Grund auf neu erstellen möchten, PDF-Dokumente aus HTML generieren oder einfach nur ein Tool benötigen, das sich hervorragend zum Bearbeiten von PDF-Dateien eignet, IronPDF bietet Ihnen die Lösung.
Mit Unterstützung für .NET Core, .NET Framework, Azure und Docker ist IronPDF sowohl für Startups als auch für Unternehmensanwendungen geeignet. Mit leistungsstarken Funktionen, guter Dokumentation und der Fähigkeit, auf verschiedenen Plattformen zu arbeiten, ist IronPDF eine solide Wahl für die Erstellung von PDFs.
Installation von IronPDF
Install-Package IronPdf
Install-Package IronPdf
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package IronPdf
$vbLabelText $csharpLabel
Oder verwenden Sie die Visual Studio NuGet-Benutzeroberfläche. IronPDF bietet eine kostenlose Testversion und flexible Lizenzierung für die kommerzielle Nutzung ohne AGPL-Beschränkungen.
IronPDF-Beispielcode: HTML zu PDF in 5 Zeilen
using IronPdf;
var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>");
pdf.SaveAs("IronPdfHello.pdf");
using IronPdf;
var Renderer = new ChromePdfRenderer();
var pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>");
pdf.SaveAs("IronPdfHello.pdf");
Imports IronPdf
Private Renderer = New ChromePdfRenderer()
Private pdf = Renderer.RenderHtmlAsPdf("<h1>Hello from IronPDF!</h1><p>This was rendered using Chrome.</p>")
pdf.SaveAs("IronPdfHello.pdf")
$vbLabelText $csharpLabel
Ausgabe
🔍 Dieses einfache Beispiel nutzt die volle Leistungsfähigkeit einer Headless-Chromium-Engine, um HTML/CSS genau so darzustellen, wie es ein Browser tun würde—etwas, womit PDFsharp und iTextSharp Schwierigkeiten haben.
Leistung und Entwicklererfahrung
IronPDF wird allgemein geschätzt für seine:
Genauigkeit: Pixelgenaue Wiedergabe mithilfe einer Chromium-Engine zur Erstellung von PDFs
Benutzerfreundlichkeit: Keine Notwendigkeit, Seitengrößen, Ränder oder Schriftarten manuell zu verwalten
Geschwindigkeit: Schnelle Erstellung mit Unterstützung für Multithreading
Support: Aktive Dokumentation, Beispiele und Kundensupport
Benchmarks zeigen, dass IronPDF in der Lage ist, eine komplexe HTML-Rechnung mit Bildern, CSS und JavaScript in unter 2 Sekunden auf einem Standardrechner zu erstellen, und damit die HTML-Zusatzmodule von iTextSharp oder die manuellen Zeichnungsmethoden von PDFsharp bei weitem übertrifft.
Warum IronPDF wählen?
IronPDF bietet ein modernes Entwicklungserlebnis, komplett mit wichtigen Funktionen wie:
Vollständiger HTML5-, CSS3-, JS-, Bootstrap- und responsives Design-Support für die PDF-Konvertierung mit genauer Darstellung
Nutzen Sie erweiterte Funktionen wie PDF/A, digitale Signaturen, Wasserzeichen, Zusammenfügen und Aufteilen
Lizenzierung, die für kommerzielle Produkte geeignet ist – keine AGPL-Sorgen
Hervorragende Dokumentation und unterstützender Beispiele
Daten aus PDF-Dokumenten mit minimalem Aufwand extrahieren
Ist nicht nur auf die Programmiersprache C# beschränkt, IronPDF bietet auch Java-, Node.js- und Python-Versionen an.
Ob Sie einen Rechnungs-Generator, eine Bericht-Engine oder ein browserbasiertes Dokumentationssystem erstellen, IronPDF macht es einfach und professionell.
Abschließende Überlegungen: Welche C# PDF-Bibliothek sollten Sie wählen?
Die Welt der C#-PDF-Bibliotheken ist vielfältig, und jedes Werkzeug, das wir untersucht haben—PDFsharp, iTextSharp und IronPDF—bringt seine eigenen Stärken, Schwächen und idealen Anwendungsfälle mit. Welches sollten Sie also für Ihre .NET-Anwendungen wählen?
🧩 PDFsharp: Leichtgewichtig und Eigenbau
Wenn Sie eine kleine Anwendung entwickeln, grundlegende Anforderungen an die Dokumentenwiedergabe haben und volle Kontrolle über die PDF-Zeichenoperationen bevorzugen, ist PDFsharp ein zuverlässiger Ausgangspunkt. Seine Open-Source-Natur und der geringe Aufwand machen es ideal für Projekte, bei denen Lizenzierung und Einfachheit entscheidend sind. Der Kompromiss besteht jedoch in manuellem Aufwand: keine HTML-Unterstützung, keine moderne Web-Darstellung und begrenzte aktive Entwicklung.
Verwenden Sie PDFsharp, wenn:
Sie möchten programmatisch PDF-Dateien mit Linien, Text und einfachem Layout erstellen.
Ihre App benötigt kein HTML zu PDF, keine CSS-Stilgestaltung oder JavaScript.
Open-Source-Kompatibilität (MIT-Lizenz) ist entscheidend.
🏛 iTextSharp: Leistungsstark, aber komplex
iTextSharp befindet sich am Unternehmensende des Spektrums. Es ist leistungsfähig, sicher und gut geeignet für komplexe PDF-Manipulationen wie:
Formulare ausfüllen
Barcodes erzeugen
Absichern von Dateien mit digitalen Signaturen
Einhaltung von Formaten wie PDF/A und PDF/UA
Allerdings kann seine AGPL-Lizenz einschränkend sein, es sei denn, Sie sind bereit, entweder Ihren Code als Open Source zu veröffentlichen oder für eine kommerzielle Lizenz zu bezahlen – was nicht billig ist. Außerdem ist die Lernkurve steiler und das HTML-Rendering ist eher ein Zusatz als eine Kernfunktion.
Verwenden Sie iTextSharp, wenn:
Sie entwickeln Regierungs- oder Regulierungssysteme mit Formularausfüllung oder sicheren PDFs.
Sie benötigen eine granulare Kontrolle über niedrigstufige PDF-Operationen.
Sie haben das Budget für kommerzielle Lizenzen.
🚀 IronPDF: Modern, intuitiv und funktionsreich
Im Gegensatz dazu ist IronPDF darauf ausgelegt, reale Probleme mit Eleganz und Geschwindigkeit zu lösen. Es kombiniert die Vertrautheit von Webtechnologien (HTML, CSS, JavaScript) mit der Leistungsfähigkeit des Chromium-Renderings und ermöglicht es Entwicklern, komplexe Layouts mühelos in wunderschöne PDFs zu konvertieren.
Es verarbeitet:
Pixelexakte HTML-zu-PDF-Umwandlung
JavaScript-Ausführung (ideal für Diagramme und dynamische Daten)
PDF-Zusammenführung, -Aufteilung, -Wasserzeichen, -Signierung und andere verschiedene Optionen zur Manipulation von PDF-Dokumenten
Integration mit .NET 6, 7 und darüber hinaus
Einfache Bereitstellung auf Azure, Docker und CI/CD-Pipelines
Am wichtigsten ist, dass IronPDF den Schwerpunkt auf die Entwicklererfahrung legt: eine klare Syntax, schnelles Rendering, umfassende Dokumentation und reaktionsschneller Support.
Wählen Sie IronPDF, wenn:
Sie möchten ein wertvolles Tool für HTML-zu-PDF-Rendering, das wie eine Druckvorschau im Browser aussieht.
Ihre Dokumente basieren auf Web-Styling (Bootstrap, Flexbox, Google Fonts).
Sie benötigen eine kommerzielle Lizenz mit Flexibilität, Support und Aktualisierungen.
Sie schätzen die Markteinführungszeit und die Produktivität der Entwickler.
Urteil: IronPDF gewinnt für die meisten .NET-Entwickler
Während PDFsharp eine großartige Option für grundlegende Anwendungen ist und iTextSharp auf Compliance-intensive Branchen spezialisiert ist, hervorhebt sich IronPDF als die All-in-One-PDF-Lösung für moderne C#-Entwickler. Es stellt das perfekte Gleichgewicht zwischen Kraft, Einfachheit und praktischer Anwendbarkeit dar.
Ob Sie dynamische Berichte rendern, Kundenrechnungen aus Webvorlagen generieren oder umfangreiche Dokumentationen exportieren, mit IronPDF können Sie sich auf Ihre Anwendung konzentrieren—nicht auf die Feinheiten der PDF-Darstellung.
📎 Bereit, es auszuprobieren?
Glauben Sie uns nicht einfach – entdecken Sie IronPDF selbst:
Mit IronPDF erstellen Sie nicht nur PDFs – Sie entwickeln ausgefeilte, professionelle, einsatzbereite Dokumente, die genau so aussehen, wie Sie sie entworfen haben. Verkürzen Sie die Entwicklungszeit, beseitigen Sie Rendering-Probleme und liefern Sie schneller aus.
Chipego hat eine natürliche Fähigkeit zum Zuhören, die ihm hilft, Kundenprobleme zu verstehen und intelligente Lösungen anzubieten. Er trat dem Iron Software-Team 2023 bei, nachdem er einen Bachelor of Science in Informationstechnologie erworben hatte. IronPDF und IronOCR sind die beiden Produkte, auf die sich Chipego konzentriert hat, aber sein Wissen über alle Produkte wächst täglich, da er neue Wege findet, Kunden zu unterstützen. Er genießt die Zusammenarbeit bei Iron Software, da Teammitglieder aus dem gesamten Unternehmen ihre unterschiedlichen Erfahrungen einbringen und so zu effektiven, innovativen Lösungen beitragen. Wenn Chipego nicht an seinem Schreibtisch sitzt, kann man ihn oft bei einem guten Buch oder beim Fußballspielen antreffen.