Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE

PDF in ASP.NET erstellen: iTextSharp vs IronPDF

Full Comparison

Looking for a detailed feature-by-feature breakdown? See how IronPDF stacks up against Itext on pricing, HTML support, and licensing.

View Full Comparison

Frage: Kann man mit iTextSharp in ASP.NET PDFs erstellen, und gibt es eine bessere Alternative? Ja – iTextSharp ist eine etablierte .NET PDF-Bibliothek, aber IronPDF bietet einen modernen HTML-zu-PDF-Ansatz, der das Erlernen von detaillierten PDF-Dokumentstrukturen überflüssig macht. Dieser Leitfaden vergleicht beide Bibliotheken anhand von funktionierenden Codebeispielen, damit Sie das richtige Werkzeug für Ihr Projekt auswählen können.

Was sind die Hauptunterschiede zwischen iTextSharp und IronPDF?

iTextSharp ist eine .NET-Portierung der Java iText-Bibliothek und bietet programmatische PDF-Erstellung durch seine Dokumentenklasse und Low-Level-PDF-Inhaltsmanipulation. Die Verwendung von iTextSharp ist zwar leistungsstark, erfordert aber ein Verständnis der Struktur von PDF-Dokumenten, die Arbeit mit Dokumentobjekten und die manuelle Positionierung von Elementen anhand von Koordinaten und Seitengrößenangaben. Die API ist zwangsläufig ausführlich – die Bibliothek legt die volle Komplexität der PDF-Spezifikation offen, was bedeutet, dass man viel lernen muss, bevor man einwandfreie Ergebnisse erzielen kann.

IronPDF verfolgt einen anderen Ansatz und konzentriert sich auf die HTML-zu-PDF-Konvertierung mithilfe einer Chrome-Rendering-Engine. Entwickler können PDF-Dateien mit vertrautem HTML und CSS generieren, wodurch die PDF-Erstellung so einfach wird wie das Design einer Webseite. IronPDF übernimmt die Logik der PDF-Generierung im Hintergrund und ermöglicht Ihnen so die Erstellung von Dokumenten mit modernem Styling und JavaScript Unterstützung. Da die Rendering-Pipeline auf Chromium basiert, wird jedes Layout, das in einem modernen Browser funktioniert, originalgetreu in die PDF-Ausgabe übertragen – einschließlich Flexbox, Grid, Webfonts und JavaScript-generierter Inhalte.

Die praktische Konsequenz dieses architektonischen Unterschieds ist, dass iTextSharp Entwickler belohnt, die eine detaillierte Kontrolle auf Koordinatenebene über jedes Byte in einer PDF-Datei wünschen, während IronPDF Entwickler belohnt, die schnell visuell ansprechende Dokumente mit ihren bereits vorhandenen Fähigkeiten erstellen möchten. Für die meisten Anwendungsfälle von Webanwendungen – Rechnungen, Berichte, Auftragsbestätigungen und Datenexporte – ist der HTML-Ansatz schneller zu erstellen und einfacher zu warten.

iTextSharp vs. IronPDF: Funktionsvergleich
Merkmal iTextSharp IronPDF
HTML zu PDF Eingeschränkt (über das XMLWorker-Add-on) Vollständiges Chrome-Engine-Rendering
CSS-Unterstützung Teilweise Vollständige CSS3-Unterstützung
JavaScript-Unterstützung Keine Ja (über die Chrome-Engine)
Lizenzierung AGPL (kommerzielle Lizenz erforderlich) Kommerziell, lizenzfrei
Lernkurve Steil (PDF-API-Kenntnisse erforderlich) Niedrig (HTML/CSS ausreichend)
NuGet-Installation `Install-Package iTextSharp` `Install-Package IronPdf`
.NET Kompatibilität .NET Framework, .NET Core .NET 8, .NET 9, .NET 10, Framework

Wie installiert man diese Bibliotheken in einem .NET -Projekt?

Die Installation beider Bibliotheken beginnt mit dem NuGet -Paketmanager . Beachten Sie bei iTextSharp, dass neuere iText-Versionen unter der AGPL-Lizenz stehen, die entweder die Veröffentlichung Ihrer Anwendung als Open Source oder den Erwerb einer kommerziellen Lizenz erfordert:

# Install iTextSharp via Package Manager Console
Install-Package iTextSharp
# Install iTextSharp via Package Manager Console
Install-Package iTextSharp
SHELL

IronPDF kann über die NuGet -Paket-Manager-Konsole, die .NET -Befehlszeilenschnittstelle oder durch direkte Suche in der NuGet Benutzeroberfläche von Visual Studio installiert werden:

Install-Package IronPdf

Nach der Installation ist IronPDF mit einer einzigen using-Anweisung sofort einsatzbereit. Für die grundlegende PDF-Erstellung ist keine zusätzliche Konfiguration erforderlich. Für fortgeschrittene Szenarien – wie das Festlegen eines Lizenzschlüssels , das Konfigurieren von Rendering-Optionen oder das Generieren von PDFs in einer Cloud-Umgebung – siehe die IronPDF Dokumentation . IronPDF unterstützt Bereitstellungen unter Linux, macOS und Windows, einschließlich containerisierter Umgebungen, die in Docker oder Kubernetes laufen, wodurch es sich hervorragend für moderne Cloud-native ASP.NET Anwendungen eignet.

Wie erstellt man ein einfaches PDF-Dokument mit jeder Bibliothek?

Am besten lässt sich der Unterschied zwischen den APIs verstehen, indem man ein einfaches "Hello World"-PDF erstellt, in dem beide Bibliotheken nebeneinander verwendet werden.

Erstellen einer PDF-Datei mit iTextSharp

Mit iTextSharp arbeiten Sie direkt mit der Klasse Document und der Klasse PdfWriter:

using iTextSharp.text;
using iTextSharp.text.pdf;

var memoryStream = new MemoryStream();
Document pdfDoc = new Document(PageSize.A4, 25, 25, 25, 15);
PdfWriter writer = PdfWriter.GetInstance(pdfDoc, memoryStream);
pdfDoc.Open();

var paragraph = new Paragraph("Hello World - PDF Document");
paragraph.Font = FontFactory.GetFont(FontFactory.HELVETICA, 16);
pdfDoc.Add(paragraph);
pdfDoc.Add(new Paragraph("Creating PDF documents with iTextSharp"));

pdfDoc.Close();

// Return as a downloadable file
var pdfBytes = memoryStream.ToArray();
using iTextSharp.text;
using iTextSharp.text.pdf;

var memoryStream = new MemoryStream();
Document pdfDoc = new Document(PageSize.A4, 25, 25, 25, 15);
PdfWriter writer = PdfWriter.GetInstance(pdfDoc, memoryStream);
pdfDoc.Open();

var paragraph = new Paragraph("Hello World - PDF Document");
paragraph.Font = FontFactory.GetFont(FontFactory.HELVETICA, 16);
pdfDoc.Add(paragraph);
pdfDoc.Add(new Paragraph("Creating PDF documents with iTextSharp"));

pdfDoc.Close();

// Return as a downloadable file
var pdfBytes = memoryStream.ToArray();
Imports iTextSharp.text
Imports iTextSharp.text.pdf

Dim memoryStream As New MemoryStream()
Dim pdfDoc As New Document(PageSize.A4, 25, 25, 25, 15)
Dim writer As PdfWriter = PdfWriter.GetInstance(pdfDoc, memoryStream)
pdfDoc.Open()

Dim paragraph As New Paragraph("Hello World - PDF Document")
paragraph.Font = FontFactory.GetFont(FontFactory.HELVETICA, 16)
pdfDoc.Add(paragraph)
pdfDoc.Add(New Paragraph("Creating PDF documents with iTextSharp"))

pdfDoc.Close()

' Return as a downloadable file
Dim pdfBytes As Byte() = memoryStream.ToArray()
$vbLabelText   $csharpLabel

Dies erfordert Kenntnisse über die Interaktion von Document, PdfWriter, Paragraph und FontFactory - eine nicht unerhebliche Lerninvestition für Entwickler, die neu in der PDF-Generierung sind.

Erzeugen einer PDF-Datei mit IronPDF

Mit IronPDF lässt sich die entsprechende Aufgabe mit dem bekannten HTML-Code lösen:

using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(@"
    <h1>Hello World - PDF Document</h1>
    <p>Creating PDFs with IronPDF is straightforward!</p>
");

var pdfBytes = pdf.BinaryData;
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf(@"
    <h1>Hello World - PDF Document</h1>
    <p>Creating PDFs with IronPDF is straightforward!</p>
");

var pdfBytes = pdf.BinaryData;
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("
    <h1>Hello World - PDF Document</h1>
    <p>Creating PDFs with IronPDF is straightforward!</p>
")

Dim pdfBytes = pdf.BinaryData
$vbLabelText   $csharpLabel

Der Ansatz von IronPDF ermöglicht es Ihnen, HTML direkt zu schreiben, wodurch die Notwendigkeit entfällt, mit niedrigstufigen PDF-Elementen zu arbeiten. Die Klasse ChromePdfRenderer übernimmt das gesamte Rendering intern mithilfe einer Chromium-basierten Engine und gewährleistet so eine pixelgenaue Ausgabe.

Wie erstellt man formatierte PDFs mit Bildern und CSS?

Die formatierten Dokumente offenbaren den größten Unterschied zwischen den beiden Bibliotheken. Bei der Erstellung von Rechnungen, Berichten oder Dokumenten im Corporate Design reduziert die CSS-basierte Formatierung in IronPDF den erforderlichen Codeaufwand drastisch.

Rechnungserstellung mit IronPDF

using IronPdf;

var html = @"
    <style>
        body { font-family: Arial, sans-serif; margin: 0; }
        .invoice-header { background: #4CAF50; color: white; padding: 20px; }
        .invoice-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
        .invoice-table th, .invoice-table td {
            border: 1px solid #ddd; padding: 8px; text-align: left;
        }
        .invoice-table th { background-color: #f2f2f2; }
        .total { font-size: 18px; font-weight: bold; margin-top: 16px; }
    </style>
    <div class='invoice-header'>
        <h1>Invoice #2024-001</h1>
        <p>Due: March 15, 2024</p>
    </div>
    <table class='invoice-table'>
        <tr><th>Item</th><th>Quantity</th><th>Unit Price</th><th>Total</th></tr>
        <tr><td>PDF License</td><td>1</td><td>$599</td><td>$599</td></tr>
        <tr><td>Support Package</td><td>1</td><td>$199</td><td>$199</td></tr>
    </table>
    <p class='total'>Grand Total: $798</p>
";

var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(html);
var pdfBytes = pdfDocument.BinaryData;
using IronPdf;

var html = @"
    <style>
        body { font-family: Arial, sans-serif; margin: 0; }
        .invoice-header { background: #4CAF50; color: white; padding: 20px; }
        .invoice-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
        .invoice-table th, .invoice-table td {
            border: 1px solid #ddd; padding: 8px; text-align: left;
        }
        .invoice-table th { background-color: #f2f2f2; }
        .total { font-size: 18px; font-weight: bold; margin-top: 16px; }
    </style>
    <div class='invoice-header'>
        <h1>Invoice #2024-001</h1>
        <p>Due: March 15, 2024</p>
    </div>
    <table class='invoice-table'>
        <tr><th>Item</th><th>Quantity</th><th>Unit Price</th><th>Total</th></tr>
        <tr><td>PDF License</td><td>1</td><td>$599</td><td>$599</td></tr>
        <tr><td>Support Package</td><td>1</td><td>$199</td><td>$199</td></tr>
    </table>
    <p class='total'>Grand Total: $798</p>
";

var renderer = new ChromePdfRenderer();
var pdfDocument = renderer.RenderHtmlAsPdf(html);
var pdfBytes = pdfDocument.BinaryData;
Imports IronPdf

Dim html As String = "
    <style>
        body { font-family: Arial, sans-serif; margin: 0; }
        .invoice-header { background: #4CAF50; color: white; padding: 20px; }
        .invoice-table { width: 100%; border-collapse: collapse; margin-top: 20px; }
        .invoice-table th, .invoice-table td {
            border: 1px solid #ddd; padding: 8px; text-align: left;
        }
        .invoice-table th { background-color: #f2f2f2; }
        .total { font-size: 18px; font-weight: bold; margin-top: 16px; }
    </style>
    <div class='invoice-header'>
        <h1>Invoice #2024-001</h1>
        <p>Due: March 15, 2024</p>
    </div>
    <table class='invoice-table'>
        <tr><th>Item</th><th>Quantity</th><th>Unit Price</th><th>Total</th></tr>
        <tr><td>PDF License</td><td>1</td><td>$599</td><td>$599</td></tr>
        <tr><td>Support Package</td><td>1</td><td>$199</td><td>$199</td></tr>
    </table>
    <p class='total'>Grand Total: $798</p>
"

Dim renderer As New ChromePdfRenderer()
Dim pdfDocument = renderer.RenderHtmlAsPdf(html)
Dim pdfBytes = pdfDocument.BinaryData
$vbLabelText   $csharpLabel

Rechnungserstellung mit iTextSharp

Um mit iTextSharp eine ähnliche Ausgabe zu erzielen, muss jedes visuelle Element programmatisch erstellt werden:

using iTextSharp.text;
using iTextSharp.text.pdf;

var output = new MemoryStream();
var document = new Document(PageSize.A4);
PdfWriter.GetInstance(document, output);
document.Open();

// Header -- manual font and color setup
var titleFont = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 20,
    new BaseColor(255, 255, 255));
var headerParagraph = new Paragraph("Invoice #2024-001", titleFont);
document.Add(headerParagraph);

// Table -- each cell must be created individually
PdfPTable table = new PdfPTable(4);
table.WidthPercentage = 100;

string[] headers = { "Item", "Quantity", "Unit Price", "Total" };
foreach (var h in headers)
{
    var cell = new PdfPCell(new Phrase(h,
        FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 10)));
    cell.BackgroundColor = new BaseColor(242, 242, 242);
    table.AddCell(cell);
}

table.AddCell("PDF License");
table.AddCell("1");
table.AddCell("$599");
table.AddCell("$599");
document.Add(table);

var totalFont = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 14);
document.Add(new Paragraph("Grand Total: $798", totalFont));
document.Close();
using iTextSharp.text;
using iTextSharp.text.pdf;

var output = new MemoryStream();
var document = new Document(PageSize.A4);
PdfWriter.GetInstance(document, output);
document.Open();

// Header -- manual font and color setup
var titleFont = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 20,
    new BaseColor(255, 255, 255));
var headerParagraph = new Paragraph("Invoice #2024-001", titleFont);
document.Add(headerParagraph);

// Table -- each cell must be created individually
PdfPTable table = new PdfPTable(4);
table.WidthPercentage = 100;

string[] headers = { "Item", "Quantity", "Unit Price", "Total" };
foreach (var h in headers)
{
    var cell = new PdfPCell(new Phrase(h,
        FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 10)));
    cell.BackgroundColor = new BaseColor(242, 242, 242);
    table.AddCell(cell);
}

table.AddCell("PDF License");
table.AddCell("1");
table.AddCell("$599");
table.AddCell("$599");
document.Add(table);

var totalFont = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 14);
document.Add(new Paragraph("Grand Total: $798", totalFont));
document.Close();
Imports iTextSharp.text
Imports iTextSharp.text.pdf

Dim output As New MemoryStream()
Dim document As New Document(PageSize.A4)
PdfWriter.GetInstance(document, output)
document.Open()

' Header -- manual font and color setup
Dim titleFont As Font = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 20, New BaseColor(255, 255, 255))
Dim headerParagraph As New Paragraph("Invoice #2024-001", titleFont)
document.Add(headerParagraph)

' Table -- each cell must be created individually
Dim table As New PdfPTable(4)
table.WidthPercentage = 100

Dim headers As String() = {"Item", "Quantity", "Unit Price", "Total"}
For Each h As String In headers
    Dim cell As New PdfPCell(New Phrase(h, FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 10)))
    cell.BackgroundColor = New BaseColor(242, 242, 242)
    table.AddCell(cell)
Next

table.AddCell("PDF License")
table.AddCell("1")
table.AddCell("$599")
table.AddCell("$599")
document.Add(table)

Dim totalFont As Font = FontFactory.GetFont(FontFactory.HELVETICA_BOLD, 14)
document.Add(New Paragraph("Grand Total: $798", totalFont))
document.Close()
$vbLabelText   $csharpLabel

Der Unterschied ist deutlich: IronPDF verarbeitet CSS, modernes HTML und JavaScript, während iTextSharp die manuelle Erstellung jedes Elements, die Angabe der Schriftart und den Aufbau der Tabelle Zelle für Zelle erfordert. Bei dokumentenintensiven Anwendungen, die Dutzende unterschiedlicher Vorlagen generieren, verstärkt sich dieser Unterschied im Codeumfang im Laufe der Zeit erheblich.

Wie handhabt man die serverseitige PDF-Generierung in ASP.NET?

Beide Bibliotheken unterstützen die serverseitige PDF-Generierung für ASP.NET -Anwendungen. Das Muster für die Rückgabe einer PDF-Datei als herunterladbare Antwort ist unabhängig davon, welche Bibliothek die Bytes generiert. Die wichtigsten Aspekte für den Produktiveinsatz sind Speichermanagement, Thread-Sicherheit und Antwortkonfiguration. Beide Bibliotheken verwenden In-Memory-Streams, daher sollten Sie sicherstellen, dass große PDFs nicht länger als nötig im Speicher gehalten werden. IronPDF's ChromePdfRenderer ist so konzipiert, dass es pro Anfrage instanziiert wird, sodass es keinen gemeinsamen Zustand gibt, über den man sich zwischen gleichzeitigen Anfragen Sorgen machen müsste.

ASP.NET Core Controller Action mit IronPDF

using IronPdf;
using Microsoft.AspNetCore.Mvc;

[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
    [HttpGet("invoice/{id}")]
    public IActionResult GenerateInvoice(int id)
    {
        var html = BuildInvoiceHtml(id); // your HTML template

        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;

        var pdf = renderer.RenderHtmlAsPdf(html);

        return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf");
    }

    private static string BuildInvoiceHtml(int id)
    {
        return $"<h1>Invoice #{id}</h1><p>Generated on {DateTime.UtcNow:yyyy-MM-dd}</p>";
    }
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;

[ApiController]
[Route("api/[controller]")]
public class PdfController : ControllerBase
{
    [HttpGet("invoice/{id}")]
    public IActionResult GenerateInvoice(int id)
    {
        var html = BuildInvoiceHtml(id); // your HTML template

        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
        renderer.RenderingOptions.MarginTop = 20;
        renderer.RenderingOptions.MarginBottom = 20;

        var pdf = renderer.RenderHtmlAsPdf(html);

        return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf");
    }

    private static string BuildInvoiceHtml(int id)
    {
        return $"<h1>Invoice #{id}</h1><p>Generated on {DateTime.UtcNow:yyyy-MM-dd}</p>";
    }
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc

<ApiController>
<Route("api/[controller]")>
Public Class PdfController
    Inherits ControllerBase

    <HttpGet("invoice/{id}")>
    Public Function GenerateInvoice(id As Integer) As IActionResult
        Dim html As String = BuildInvoiceHtml(id) ' your HTML template

        Dim renderer As New ChromePdfRenderer()
        renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4
        renderer.RenderingOptions.MarginTop = 20
        renderer.RenderingOptions.MarginBottom = 20

        Dim pdf = renderer.RenderHtmlAsPdf(html)

        Return File(pdf.BinaryData, "application/pdf", $"invoice-{id}.pdf")
    End Function

    Private Shared Function BuildInvoiceHtml(id As Integer) As String
        Return $"<h1>Invoice #{id}</h1><p>Generated on {DateTime.UtcNow:yyyy-MM-dd}</p>"
    End Function
End Class
$vbLabelText   $csharpLabel

Bei ASP.NET MVC (Nicht-Core)-Projekten geben Sie FileResult auf die gleiche Weise zurück. IronPDF unterstützt auch die Generierung von PDFs aus URLs , was hilfreich ist, wenn bestehende Webseiten konvertiert werden sollen, anstatt HTML-Zeichenketten zu erstellen.

Sie können außerdem Kopf- und Fußzeilen hinzufügen , digitale Signaturen anwenden, einen Passwortschutz festlegen oder mehrere PDFs mithilfe der Dokumentbearbeitungs-APIs von IronPDF zusammenführen – alles aus demselben Paket.

Wie migriert man von iTextSharp zu IronPDF?

Die Migration eines bestehenden iTextSharp-Projekts zu IronPDF folgt einem einfachen Muster:

  1. Ersetzen Sie den Dokumentmodellcode durch HTML-Vorlagen. Anstatt Paragraph, PdfPTable und PdfPCell Objekte zu erstellen, generieren Sie einen HTML-String oder laden Sie eine HTML-Datei. Ihre vorhandenen CSS-Stylesheets und Razor Teilweise-Views können direkt wiederverwendet werden.
  2. Tauschen Sie den Rendering-Aufruf. Ersetzen Sie PdfWriter.GetInstance(doc, stream) durch new ChromePdfRenderer().RenderHtmlAsPdf(html).
  3. Aktualisieren Sie die Byte-Extraktion. Ersetzen Sie memoryStream.ToArray() durch pdf.BinaryData.
  4. Erweiterte Einstellungen übertragen. iTextSharp-Funktionen wie Seitenränder, Verschlüsselung und Dokumentmetadaten haben direkte Entsprechungen in den IronPDF-APIs RenderingOptions und PdfDocument.
  5. Überprüfen Sie die Ausgabegenauigkeit. Führen Sie beide Ausgaben parallel an repräsentativen Dokumenten aus. IronPDF liefert in der Regel bessere visuelle Ergebnisse, da es eine vollständige Browser-Rendering-Engine anstelle einer PDF-nativen Layout-Engine verwendet.

Für Teams, die bereits HTML-Vorlagen verwenden (z. B. von E-Mail-Generatoren, Razor Ansichten oder Berichtsgeneratoren), kann die Migration oft innerhalb von Stunden statt Tagen abgeschlossen werden. IronPDF kann Razor-Ansichten direkt innerhalb von ASP.NET Core in PDF rendern, was die Migration zusätzlich beschleunigt. Teams, die in CSS-basiertes Dokumentendesign investiert haben – beispielsweise in die Verwendung von Druck-Stylesheets zur Steuerung von Seitenumbrüchen und Rändern – werden feststellen, dass sich diese Fähigkeiten direkt auf IronPDF übertragen lassen.

Im IronPDF Migrationsleitfaden finden Sie detaillierte Muster für Verschlüsselung, Stempelung und andere fortgeschrittene iTextSharp-Funktionen.

Welche Bibliothek sollten Sie wählen?

Für Entwickler, die neue Projekte starten oder von iTextSharp migrieren, gelten folgende Faktoren:

Lizenzierung: iTextSharp verwendet für seine neueren Versionen die AGPL-Lizenz. Dies erfordert entweder die Veröffentlichung Ihrer Anwendung als Open Source oder den Erwerb einer kommerziellen Lizenz von der iText Group. IronPDF bietet eine unkomplizierte kommerzielle Lizenz ohne Open-Source-Verpflichtungen. Wenn es sich bei Ihrem Projekt um Closed-Source-Software oder kommerzielle Software handelt, kann allein diese Unterscheidung Ihre Entscheidung bestimmen.

Lernkurve: Dank des HTML-basierten Ansatzes von IronPDF entfällt das Erlernen PDF-spezifischer APIs. Wenn Ihr Team HTML- und CSS-Kenntnisse besitzt, kann die PDF-Erstellung mit IronPDF sofort beginnen. Sie müssen sich nicht mit PDF-Koordinatensystemen, Glyphenkodierung oder Schriftarteinbettung auseinandersetzen – IronPDF erledigt das alles transparent.

Funktionsumfang: IronPDF unterstützt PDF/A-Konformität , Formularausfüllung , Wasserzeichen und mehr – alles aus einem einzigen NuGet Paket. Erweiterte Funktionen wie digitale Signaturen und PDF-Zusammenführung sind ebenfalls ohne zusätzliche Abhängigkeiten enthalten.

Migrationspfad: Der Wechsel von iTextSharp zu IronPDF beinhaltet das Ersetzen des Dokumentmanipulationscodes durch HTML-Vorlagen und die Aktualisierung des Rendering-Aufrufs. Die Ausgabequalität ist in der Regel höher, da IronPDF eine vollständige Browser-Engine verwendet, und der resultierende Code ist deutlich kürzer und einfacher zu warten.

Für Hintergrundinformationen zur Funktionsweise von PDF-Rendering-Engines und deren Unterschieden bieten die Dokumentation von Mozilla zu PDFs und die PDF-Spezifikationsressourcen von Adobe einen nützlichen Kontext. Die offizielle Website der iText Group beschreibt die AGPL-Bedingungen im Detail.

Was sind Ihre nächsten Schritte?

So starten Sie mit IronPDF in Ihrem ASP.NET -Projekt:

  1. Installieren Sie das NuGet Paket: Install-Package IronPdf
  2. Fügen Sie using IronPdf; zu Ihrer Datei hinzu
  3. Erstellen Sie ein ChromePdfRenderer und rufen Sie RenderHtmlAsPdf() mit Ihrem HTML auf.
  4. Geben Sie pdf.BinaryData als FileResult von Ihrem Controller zurück.

Nutzen Sie diese Ressourcen, um weitere Informationen zu erhalten:

Hinweis:iTextSharp ist eine eingetragene Marke ihres jeweiligen Eigentümers. Diese Seite ist nicht mit iTextSharp verbunden, genehmigt oder gesponsert. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Inhaber. Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich zugängliche Informationen zum Zeitpunkt des Schreibens wider.

Häufig gestellte Fragen

Was sind die Hauptunterschiede zwischen iTextSharp und IronPDF for ASP.NET PDF generation?

Die Hauptunterschiede umfassen die Benutzerfreundlichkeit, Lizenzmodelle und den Rendering-Ansatz. IronPDF verwendet ein HTML-zu-PDF-Modell, das von einer Chrome-Engine angetrieben wird, wodurch es einfach ist, stilisierte Dokumente zu erzeugen. iTextSharp verwendet eine Low-Level-PDF-Dokumenten-API, die das Erlernen PDF-spezifischer Konstrukte erfordert. IronPDF verwendet außerdem kommerzielle Lizenzen ohne Open-Source-Verpflichtungen, während neuere Versionen von iTextSharp AGPL verwenden.

Kann IronPDF in ASP.NET-Anwendungen HTML in PDF konvertieren?

Ja, IronPDF kann HTML in ASP.NET-Anwendungen in PDFs umwandeln. Es ermöglicht Entwicklern, Webseiten, HTML-Zeichenfolgen oder HTML-Dateien direkt in PDF mit hoher Wiedergabetreue unter Verwendung einer Chromium-basierten Rendering-Engine zu rendern.

Ist es möglich, von iTextSharp zu IronPDF zu wechseln?

Ja, der Wechsel von iTextSharp zu IronPDF ist einfach. Die Migration beinhaltet das Ersetzen von Dokumentmodell-Code durch HTML-Vorlagen und das Aktualisieren des Rendering-Aufrufs. Teams mit bestehenden HTML- oder Razor-Vorlagen können oft in wenigen Stunden migrieren.

Unterstützt IronPDF die Erzeugung von PDFs aus ASP.NET-Webanwendungen?

IronPDF unterstützt vollumfänglich die Generierung von PDFs aus ASP.NET- und ASP.NET Core-Webanwendungen. Es integriert sich über NuGet in bestehende Projekte und unterstützt Controller-Aktionsmuster zur Rückgabe von PDF-Dateien.

Welche Arten von Dokumenten können mit IronPDF erstellt werden?

Mit IronPDF können Sie Rechnungen, Berichte, Datenexporte und jedes Dokument erstellen, das als HTML darstellbar ist. Es unterstützt die PDF/A-Konformität, das Ausfüllen von Formularen, digitale Signaturen, Wasserzeichen und Barcode-Generierung.

Wie handhabt IronPDF die Lizenzierung im Vergleich zu iTextSharp?

IronPDF bietet kommerzielle Lizenzen ohne AGPL-Verpflichtungen, was es für Closed-Source-Anwendungen geeignet macht. Neuere Versionen von iTextSharp verwenden AGPL, was kommerzielle Lizenzen für proprietäre Software erfordert.

Gibt es Code-Beispiele für die Verwendung von IronPDF in ASP.NET?

Ja, IronPDF bietet umfangreiche Codebeispiele und Dokumentation, die die HTML-zu-PDF-Konvertierung, URL-Rendering, ASP.NET Core-Controller-Muster und erweiterte Funktionen wie Kopf- und Fußzeilen sowie digitale Signaturen abdecken.

Warum sollten Sie in Erwägung ziehen, IronPDF gegenüber iTextSharp zu verwenden?

Sie sollten IronPDF in Erwägung ziehen, wenn Sie stilisierte Dokumente mit HTML und CSS erstellen möchten, die AGPL-Lizenzanforderungen neuerer iTextSharp-Versionen vermeiden oder den Umfang an PDF-spezifischem Code reduzieren möchten, den Ihr Team pflegen muss.

Funktioniert IronPDF in Cloud- und containerisierten Umgebungen?

Ja, IronPDF unterstützt die Bereitstellung in Linux-, macOS- und Windows-Umgebungen, einschließlich containerisierter Umgebungen wie Docker und Kubernetes, was es für moderne cloud-native ASP.NET-Anwendungen geeignet macht.

Ist IronPDF für ASP.NET-Projekte auf Unternehmensebene geeignet?

Ja, IronPDF ist für Unternehmensprojekte mit ASP.NET geeignet. Es bietet zuverlässige Leistung, PDF/A-Konformität, digitalen Signaturensupport und Skalierbarkeit für Szenarien mit hohem Dokumentvolumen.

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