Zum Fußzeileninhalt springen
PRODUKTVERGLEICHE
Vergleich von IronPDF mit iTextSharp in C#

iTextSharp C# HTML zu PDF Alternative for .NET Core

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
## IronPDF vs iTextSharp / iText7

Umfassender Vergleich von .NET PDF-Bibliotheken – detaillierte Funktionsanalyse mit fundiertem Kontext

iTextSharp / iText7
13
von 20 Funktionen
10 Ja 7 Komplex 3 Nein
IronPDF ✦
20
von 20 Funktionen
20 Ja 0 Komplex 0 Nein
Merkmal iTextSharp / iText7 IronPDF ✦
PDF Creation & Conversion
HTML/CSS zu PDF $ Paid Add-on
HTML→PDF über `pdfHTML` -Add-on (separates Paket; AGPL/kommerzielles Modell).
✓ Yes
Chromium-basierte Engine mit integrierter pixelgenauer CSS3-, Flexbox- und Grid-Darstellung.
JavaScript-Ausführung ? Unknown
pdfHTML beschreibt die HTML/CSS→PDF-Konvertierung, die Unterstützung für die JS-Ausführung wird in der Dokumentation jedoch nicht erwähnt.
✓ Yes
Führt JavaScript vollständig während des Renderings aus – dynamische Diagramme, Single-Page-Anwendungen und interaktive Inhalte.
Programmatische Generierung ✓ Yes
Positioniert als programmierbares PDF SDK für .NET – erstellen, bearbeiten und erweitern.
✓ Yes
Generiert aus HTML-Vorlagen, Zeichenketten, ASPX-Ansichten oder Bildern. Chromium kümmert sich um das Layout.
URL-zu-PDF $ Paid Add-on
Möglich über das pdfHTML-Add-on mit URL-Abruf, aber keine Kernfunktion.
✓ Yes
`RenderUrlAsPdf()` Erfasst jede beliebige Live-URL mit vollständiger CSS/JS-Darstellung.
DOCX to PDF ✕ No
Keine native Word-Konvertierung – iText ist ein PDF-natives SDK.
✓ Yes
`DocxToPdfRenderer` Konvertiert Word-Dokumente unter Beibehaltung von Struktur und Formatierung.
Reading & Extraction
Textextraktion ✓ Yes
`PdfTextExtractor.GetTextFromPage()` mit mehreren Extraktionsstrategien.
✓ Yes
Extrahiert Text unter Berücksichtigung des Layouts. Kombiniert sich mit IronOCR für gescannte Dokumente.
Seiten in Bilder umwandeln ? Unknown
In den OCR-Workflows wird das Rendern erwähnt, aber ein Modul namens "PDF→Bildrenderer" aus dem Primärquellcode ist in den zitierten iText-Dokumenten nicht nachweisbar.
✓ Built-in
Native Rasterisierung zu PNG, JPEG, BMP mit konfigurierbarer DPI.
Eingebaute OCR $ Paid Add-on
pdfOCR-Add-on verfügbar; Installationshinweise erwähnen plattformspezifische/native Abhängigkeiten (z. B. Laufzeitvoraussetzungen für Linux/macOS).
✓ Via IronOCR
Native Integration mit IronOCR für OCR in über 127 Sprachen auf gescannten PDFs.
Editing & Manipulation
Merging & Splitting ✓ Yes
`PdfMerger` Klasse in der .NET -API; offizielle Beispiele behandeln das Zusammenführen mit PdfMerger.
✓ Yes
Einzeiliges Zusammenführen, Aufteilen, Anhängen, Voranstellen und Neuanordnen von Seiten mit intuitiver API.
Headers, Footers & Page Numbers ✓ Yes
Der Eintrag in der PDF Association bestätigt die Möglichkeit, bestehenden PDFs "Seitenzahlen" und ähnliche Funktionen hinzuzufügen.
✓ Yes
HTML-basierte Kopf- und Fußzeilen mit automatischer Seitenzählung, Datumsangaben und benutzerdefinierten Inhalten.
Wasserzeichen ✓ Yes
Die PDF Association listet ausdrücklich auch "Wasserzeichen … für bestehende PDF-Dokumente" auf.
✓ Yes
`ApplyWatermark()` Akzeptiert HTML/CSS – volle Kontrolle über Deckkraft, Drehung und Position.
Stamp Text & Images ✓ Yes
Programmatische Inhaltsplatzierung ist über die Canvas- und Layout-APIs von iText möglich.
✓ Yes
`TextStamper` & `ImageStamper` mit Google Fonts, Positionierung, seitenweise Steuerung.
Inhalt schwärzen ✓ Yes
iText bietet Unterstützung für Schwärzungsanmerkungen über das Bereinigungsmodul.
✓ Yes
`RedactTextOnAllPages()` Entfernt sensible Texte dauerhaft in einer einzigen Zeile.
Security & Compliance
Encryption & Passwords ✓ Yes
Vollständige Verschlüsselung und Berechtigungskontrolle über die Sicherheits-API von iText.
✓ Yes
AES-Verschlüsselung, Besitzer-/Benutzerpasswörter, differenzierte Berechtigungen (Drucken, Kopieren, Kommentieren).
Digitale Signaturen ✓ Yes
Spezielle Dokumentation zur digitalen Signatur und Signatur-API ( `PdfSigner` ).
✓ Yes
`PdfSignature` mit Unterstützung für X509/PFX-Zertifikate.
PDF/A & PDF/UA Compliance ✓ Yes
Die Dokumentation beschreibt die Erstellung von PDF/A-Dateien und erläutert die Einschränkungen (die Konvertierung von bestehenden Dateien erfolgt nicht automatisch).
✓ Yes
Native PDF/A-Archivierung und PDF/UA-Barrierefreiheitskonformität für den Unternehmenseinsatz.
Platform & Deployment
Plattformübergreifende Unterstützung ✓ Yes
.NET Standard 2.0 / .NET Framework 4.6.1 — läuft auf .NET 6+ auf verschiedenen Betriebssystemen.
✓ Yes
Windows, Linux, macOS, x64, x86, ARM. .NET 6–10, Core, Standard 2.0+, Framework 4.6.2+.
Server / Docker / Cloud ~ Complex
Für die Core-Installation werden mehrere Pakete benötigt (iText + Bouncy Castle Adapter); die Add-ons (pdfHTML/pdfOCR) erfordern zusätzliche Abhängigkeits-/Konformitätsschritte.
✓ Yes
Docker, Azure, AWS, IIS. Offizielle Docker-Images und Bereitstellungsleitfäden.
Einfache Einrichtung ~ Complex
Für die Core-Installation werden mehrere Pakete benötigt (Bouncy Castle-Adapter); für HTML/OCR werden zusätzliche Add-ons und manchmal native Abhängigkeiten benötigt.
✓ Simple
Einzelner IronPdf- NuGet Befehl `Install-Package IronPdf` . In wenigen Minuten einsatzbereit.
Licensing & Support
Lizenzmodell ~ Complex
Doppellizenz: AGPLv3 (Offenlegungspflichten für die Netzwerknutzung) oder kommerzielle Lizenz. Die AGPL kann für proprietäre Anwendungen einschränkend wirken.
✓ Commercial
Dauerlizenzen. 30 Tage voll funktionsfähige, kostenlose Testversion, keine Wasserzeichen.
Commercial Support & SLA ✓ Yes
Die iText-Website beinhaltet kommerzielle Lizenz- und Supportvereinbarungen als Teil ihres Lizenzmodells.
✓ 24/5 Support
Engagierter technischer Support mit garantierter Service-Level-Vereinbarung (SLA) – E-Mail, Live-Chat, Telefon.
Dokumentation ✓ Yes
Installationsanleitungen, Wissensdatenbankartikel und API-Referenzen sind verfügbar (Kern + Add-ons).
✓ Extensive
Vollständige API-Referenz, über 100 Anleitungen, Tutorials, Codebeispiele, Fehlerbehebung, Videos.

Die Daten stammen aus der offiziellen iText-Dokumentation, der PDF-Assoziationsliste und NuGet -Paketreferenzen.
iText7 ist leistungsstark, bringt aber aufgrund der AGPL-Lizenzierung Komplexität und einen hohen Aufwand für die Einrichtung mehrerer Pakete mit sich.
IronPDF bietet umfassenden Schutz bei einfacherer Einrichtung – 30 Tage kostenlos testen .

Für Entwickler, die mit PDFs arbeiten, ist es unerlässlich, über eine zuverlässige Bibliothek für die PDF-Erstellung und -Bearbeitung zu verfügen. Im .NET-Ökosystem kann es Dutzende von C#-PDF-Bibliotheken zur Auswahl geben, also wie wählen Sie diejenige aus, die am besten zu Ihren Anforderungen passt?

Die Auswahl der passenden Bibliothek ist entscheidend für eine effiziente Entwicklung bei der Arbeit mit PDF-Funktionen in .NET-Anwendungen. Dieser Artikel bietet einen detaillierten Vergleich zwischen zwei führenden C#-PDF-Bibliotheken: IronPDF und iText 7 (ehemals bekannt als iTextSharp). Wir werden ihre Funktionen, Leistung, Lizenzierung und Eignung für verschiedene Projektanforderungen untersuchen, um Ihnen zu helfen, eine fundierte Entscheidung zu treffen.

Warum eine .NET PDF-Bibliothek wählen?

PDFs werden weit verbreitet in Berichten, Rechnungen und juristischen Dokumenten eingesetzt, was die PDF-Erstellung und -Manipulation für viele Anwendungen unerlässlich macht. Bei der Auswahl einer Bibliothek sind folgende Schlüsselfaktoren zu berücksichtigen:

  • Einfachheit der Integration – Wie schnell können Sie PDF-Funktionen implementieren?
  • Unterstützung für HTML-zu-PDF – Ermöglicht es eine einfache Konvertierung von Webinhalten?
  • Lizenzierung und Kosten – Ist es kostenlos oder erfordert es eine kommerzielle Lizenz?
  • Funktionsumfang – Unterstützt es Textextraktion, Signierung oder Bearbeitung?
  • Leistung – Wie schnell generiert oder verarbeitet es PDFs?

Ein Überblick über IronPDF und iText7

Einführung in IronPDF

IronPDF ist eine kommerzielle PDF-Bibliothek, die speziell für .NET-Entwickler entwickelt wurde. Es vereinfacht die PDF-Erstellung, -Manipulation und -Konvertierung, was es zu einer der am einfachsten zu verwendenden Bibliotheken in C#-Anwendungen macht.

IronPDF unterstützt .NET Core, .NET Framework und .NET Standard und gewährleistet dadurch Kompatibilität über verschiedene .NET-Umgebungen hinweg. Seine hohe plattformübergreifende Kompatibilität macht es zu einer idealen Wahl für Teams, die in verschiedenen App-Umgebungen arbeiten, und es integriert sich nahtlos in IDEs wie Visual Studio. Neben seiner .NET-Version ist IronPDF auch in Java, Python und Node.js verfügbar.

Wichtige Funktionen:

  • Integrierte HTML-zu-PDF-Unterstützung – Konvertiert Webseiten, HTML, CSS und JavaScript in PDFs ohne zusätzliche Add-ons.
  • PDF-Bearbeitung – Bearbeiten Sie vorhandene PDFs durch Hinzufügen von Text, Bildern, Kopf- und Fußzeilen.
  • PDF-Sicherheit – Verschlüsseln Sie PDFs, setzen Sie Passwortschutz, und verwalten Sie Berechtigungen für Ansicht, Druck oder Bearbeitung.
  • Wasserzeichen und Anmerkungen – Wenden Sie ganz einfach Text- und Bild-Wasserzeichen, Stempel oder Kommentare auf Dokumente an.
  • Formularausfüllung und Datenerfassung – Füllen Sie interaktive PDF-Formulare programmatisch aus und extrahieren Sie Formulardaten.

Am besten für: Entwickler, die eine unkomplizierte, All-in-One-Lösung ohne zusätzlichen Aufwand für Add-ons oder komplizierte Lizenzierung suchen.

Einführung in iText7

iText 7 ist eine leistungsstarke und flexible PDF-Bibliothek, die umfangreiche PDF-Manipulationsmöglichkeiten bietet, darunter Dokumentenerstellung, Verschlüsselung und Signierung. Allerdings unterstützt die Kernbibliothek die HTML-zu-PDF-Konvertierung nicht nativ.

Hauptmerkmale

  • Niedrigstufige PDF-Anpassung – Bietet detaillierte Kontrolle über die PDF-Struktur, Metadaten und das Rendering.
  • Zugänglichkeit & Konformität: Generiert PDF/A, PDF/UA und PDF/X für die Langzeitarchivierung und Zugänglichkeitskonformität.
  • HTML-zu-PDF-Konvertierung: Das kostenpflichtige pdfHTML-Add-on ermöglicht die Konvertierung von HTML-Inhalten in PDFs.
  • Java- & .NET-Unterstützung: Primär for Java entwickelt, mit C#-Unterstützung über iText 7 for .NET.
  • PDF-Formularverwaltung: Erstellen und Bearbeiten von AcroForms und XFA-Formularen für interaktive PDF-Formulare.

Am besten für: Entwickler, die eine hochgradig anpassbare PDF-Lösung benötigen und bereit sind, zusätzliche Add-ons für erweiterte Funktionen zu erwerben.

Merkmale und Vorteile

Bevor wir uns die Funktionen und die dazugehörigen Codebeispiele ansehen, werfen wir zunächst einen Blick auf einen der größten funktionalen Unterschiede zwischen IronPDF und iText 7, die HTML-zu-PDF-Konvertierung.

  • IronPDF unterstützt nativ die HTML-, CSS- und JavaScript-Darstellung, ohne dass zusätzliche Komponenten erforderlich sind.
  • iText 7 benötigt hingegen das pdfHTML-Add-on, das eine kostenpflichtige Funktion unter kommerzieller Lizenzierung ist. Dies erhöht die Kosten für Entwickler, die Webbasiertes-zu-PDF-Funktionalität benötigen.

HTML zu PDF Vergleichs-Flussdiagramm

Fazit: Wenn Sie HTML-zu-PDF-Konvertierung benötigen, ist IronPDF die kostengünstigere Lösung, da dieses Merkmal out of the box enthalten ist.

IronPDF Hauptmerkmale (mit Codebeispielen)

IronPDF bietet eine Vielzahl von Funktionen zur Arbeit mit PDF-Dokumenten. Diese reichen von der PDF-Erstellung bis zur PDF-Manipulation und -Sicherheit. Um eine klarere Vorstellung von der umfangreichen Funktionsvielfalt dieser Bibliothek zu bekommen, werden wir uns einige ausgewählte Hauptfunktionen ansehen.

HTML zu PDF Konvertierung

Konvertieren Sie HTML-Inhalte in qualitativ hochwertige PDF-Dokumente mit dem leistungsstarken Rendering-Engine von IronPDF. Der Renderer von IronPDF konvertiert nicht einfach nur HTML-Inhalte; damit können Sie alle ursprünglichen CSS-Stile und JavaScript-Interaktivität beibehalten.

using IronPdf;

public class Program
{
    static void Main(string[] args)
    {
        // Create a new ChromePdfRenderer instance for rendering HTML to PDF
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the specified HTML file as a PDF document
        PdfDocument pdf = renderer.RenderHtmlFileAsPdf("example.html");

        // Save the rendered PDF to the specified file path
        pdf.SaveAs("HtmlToPdf.pdf");
    }
}
using IronPdf;

public class Program
{
    static void Main(string[] args)
    {
        // Create a new ChromePdfRenderer instance for rendering HTML to PDF
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the specified HTML file as a PDF document
        PdfDocument pdf = renderer.RenderHtmlFileAsPdf("example.html");

        // Save the rendered PDF to the specified file path
        pdf.SaveAs("HtmlToPdf.pdf");
    }
}
$vbLabelText   $csharpLabel

Eingabe-HTML
HTML-Inhalt eingeben

Ausgabe-PDF
HTML zu PDF Ausgabe mit IronPDF

In diesem Codebeispiel haben wir zunächst eine neue ChromePdfRenderer-Instanz erstellt, die uns Zugriff auf die leistungsstarke Rendering-Engine von IronPDF ermöglicht, mit der HTML in PDF umgewandelt wird. Dann übergeben wir eine HTML-Datei an die Methode RenderHtmlFileAsPdf(), die wiederum das HTML in ein PDF rendert, das im Objekt PdfDocument gespeichert wird. Schließlich speichern wir das PDF am angegebenen Dateispeicherort.

URL zu PDF

Für Entwickler, die URL-Inhalte in PDFs konvertieren möchten, ist IronPDF die beste Wahl. Mit dieser Bibliothek können Sie pixelgenaue PDF-Dokumente mithilfe des ChromePdfRenderer-Rendering-Engines erstellen, das alle ursprünglichen Stile und Layouts beibehält, wenn es die URL in PDF rendert. Für dieses Beispiel verwenden wir diese URL, um zu demonstrieren, wie IronPDF komplexere CSS-Stilierungen verarbeiten kann.

using IronPdf;

public class Program
{
    static void Main(string[] args)
    {
        // Create a new ChromePdfRenderer instance
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the specified URL as a PDF document
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");

        // Save the rendered PDF to the specified file path
        pdf.SaveAs("UrlToPdf.pdf");
    }
}
using IronPdf;

public class Program
{
    static void Main(string[] args)
    {
        // Create a new ChromePdfRenderer instance
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render the specified URL as a PDF document
        PdfDocument pdf = renderer.RenderUrlAsPdf("https://www.apple.com");

        // Save the rendered PDF to the specified file path
        pdf.SaveAs("UrlToPdf.pdf");
    }
}
$vbLabelText   $csharpLabel

PDF-Ausgabe:
URL zur PDF-Ausgabe mit IronPDF

Ähnlich wie in unserem Beispiel von HTML zu PDF besteht der erste Schritt bei der Konvertierung einer beliebigen URL in PDF mit IronPDF darin, zunächst eine neue ChromePdfRenderer-Instanz zu erstellen. Sobald die Methode den URL-Inhalt mithilfe von RenderUrlAsPdf in ein PDF-Format gerendert hat, speichert sie das resultierende PDF in einem neuen PdfDocument-Objekt, bevor wir die Methode SaveAs verwenden, um das PDF zu speichern.

PDF-Signaturen

Stellen Sie die Authentizität Ihres PDF-Dokuments sicher, indem Sie eine digitale Signatur auf Ihre PDF-Dokumente anwenden. Es gibt verschiedene Methoden, mittels derer Entwickler digitale Signaturen anwenden könnten, wie zum Beispiel das digitale Signieren des PDFs mit einem sicheren Zertifikat, das Hinzufügen eines Bildes einer handschriftlichen Unterschrift zu einem PDF oder das Stempeln eines Bilds des Zertifikats auf das PDF selbst.

using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
using IronSoftware.Drawing;

public class Program
{
    static void Main(string[] args)
    {
        // Load the certificate used for signing the PDF
        X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "your-password", X509KeyStorageFlags.Exportable);

        // Create a PdfSignature instance and set the signature image
        var sig = new PdfSignature(cert);
        sig.SignatureImage = new PdfSignatureImage("IronPdf.png", 0, new Rectangle(150, 100, 350, 250));

        // Sign the existing PDF file and save the signed version
        sig.SignPdfFile("product_report.pdf");
    }
}
using IronPdf;
using IronPdf.Signing;
using System.Security.Cryptography.X509Certificates;
using IronSoftware.Drawing;

public class Program
{
    static void Main(string[] args)
    {
        // Load the certificate used for signing the PDF
        X509Certificate2 cert = new X509Certificate2("IronSoftware.pfx", "your-password", X509KeyStorageFlags.Exportable);

        // Create a PdfSignature instance and set the signature image
        var sig = new PdfSignature(cert);
        sig.SignatureImage = new PdfSignatureImage("IronPdf.png", 0, new Rectangle(150, 100, 350, 250));

        // Sign the existing PDF file and save the signed version
        sig.SignPdfFile("product_report.pdf");
    }
}
$vbLabelText   $csharpLabel

Ausgabe-PDF
Digitale Signaturausgabe mit IronPDF

Für dieses Beispiel haben wir unser Zertifikatsobjekt geladen, eine visuelle Darstellung der Signatur erstellt, in unserem Fall das IronPDF Bild, und ein neues PdfSignature-Objekt erstellt, das die Signierung des PDF-Dokuments selbst übernimmt. Zum Schluss haben wir den Code SignPdfFile verwendet, um unser PDF-Dokument zu signieren und zu speichern.

Wenn Sie mehr über die Funktionen erfahren möchten, die IronPDF zu bieten hat, besuchen Sie die informative Funktionsseite oder die How-to Guides, die detaillierte Codebeispiele für jede Funktion enthalten.

iText7 Hauptfunktionen (mit Codebeispielen)

iText7 bietet eine breite Palette an Funktionen zur Anpassung und Verbesserung Ihrer PDF-Dokumente. Mit umfassender Formatunterstützung für verschiedene PDF-Standards und fortgeschrittener PDF-Manipulation ist viel in dieser PDF-Bibliothek verpackt. Wie bereits erwähnt, kann es notwendig sein, zusätzliche Pakete zu erwerben, um bestimmte PDF-bezogene Aufgaben wie HTML in PDF durchzuführen.

HTML zu PDF Konvertierung

Obwohl iText7 von sich aus keine HTML-zu-PDF-Konvertierung durchführen kann, können wir den pdfHTML, ein kostenpflichtiges Add-on unter iText7's kommerzieller Lizenzierung, nutzen, um die HTML-Datei, die wir in unserem IronPDF-Beispiel verwendet haben, in ein PDF-Dokument zu konvertieren.

using iText.Html2pdf;
using System.IO;

public class Program
{
    static void Main(string[] args)
    {
        // Open the HTML file stream
        using (FileStream htmlSource = File.Open("example.html", FileMode.Open))
        // Create the output PDF file stream
        using (FileStream pdf = File.Open("HtmlToPdfOutput.pdf", FileMode.Create))
        {
            // Initialize ConverterProperties for HTML to PDF conversion
            ConverterProperties converterProperties = new ConverterProperties();

            // Convert the HTML source to a PDF document
            HtmlConverter.ConvertToPdf(htmlSource, pdf, converterProperties);

            // Close the PDF file
            pdf.Close();
        }
    }
}
using iText.Html2pdf;
using System.IO;

public class Program
{
    static void Main(string[] args)
    {
        // Open the HTML file stream
        using (FileStream htmlSource = File.Open("example.html", FileMode.Open))
        // Create the output PDF file stream
        using (FileStream pdf = File.Open("HtmlToPdfOutput.pdf", FileMode.Create))
        {
            // Initialize ConverterProperties for HTML to PDF conversion
            ConverterProperties converterProperties = new ConverterProperties();

            // Convert the HTML source to a PDF document
            HtmlConverter.ConvertToPdf(htmlSource, pdf, converterProperties);

            // Close the PDF file
            pdf.Close();
        }
    }
}
$vbLabelText   $csharpLabel

Ausgabe-PDF
iText7 HTML zu PDF Ausgabe

In diesem Beispiel haben wir die HTML-Datei geladen und den Dateispeicherort angegeben, um das gerenderte PDF zu speichern. Anschließend können wir mithilfe der ConvertToPdf-Methode die HTML-Datei ganz einfach in ein PDF-Dokument konvertieren.

URL zu PDF

Jetzt ist es an der Zeit zu vergleichen, wie iText7 sich im Vergleich zu IronPDF schlägt, wenn es um die Umwandlung von URLs in PDF geht. Dafür verwenden wir die exakt gleiche URL wie zuvor, um einen fairen Vergleich zu gewährleisten.

using System;
using System.Net.Http;
using System.IO;
using iText.Html2pdf;

public class Program
{
    public static async System.Threading.Tasks.Task Main(string[] args)
    {
        string url = "https://www.apple.com";  // Replace with your target URL
        string outputPdfPath = "output.pdf";

        try
        {
            // Download HTML content from the URL
            using (HttpClient client = new HttpClient())
            {
                string htmlContent = await client.GetStringAsync(url);

                // Convert HTML to PDF
                using (FileStream pdfStream = new FileStream(outputPdfPath, FileMode.Create))
                {
                    ConverterProperties properties = new ConverterProperties();
                    HtmlConverter.ConvertToPdf(htmlContent, pdfStream, properties);
                }
            }

            Console.WriteLine("PDF created successfully: " + outputPdfPath);
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
using System;
using System.Net.Http;
using System.IO;
using iText.Html2pdf;

public class Program
{
    public static async System.Threading.Tasks.Task Main(string[] args)
    {
        string url = "https://www.apple.com";  // Replace with your target URL
        string outputPdfPath = "output.pdf";

        try
        {
            // Download HTML content from the URL
            using (HttpClient client = new HttpClient())
            {
                string htmlContent = await client.GetStringAsync(url);

                // Convert HTML to PDF
                using (FileStream pdfStream = new FileStream(outputPdfPath, FileMode.Create))
                {
                    ConverterProperties properties = new ConverterProperties();
                    HtmlConverter.ConvertToPdf(htmlContent, pdfStream, properties);
                }
            }

            Console.WriteLine("PDF created successfully: " + outputPdfPath);
        }
        catch (Exception ex)
        {
            Console.WriteLine("Error: " + ex.Message);
        }
    }
}
$vbLabelText   $csharpLabel

Ausgabe-PDF
iText7 URL zur PDF-Ausgabe

Wie hier zu sehen ist, ist der Ansatz von iText7 zur URL-zu-PDF-Konvertierung manueller und komplexer. Zunächst müssen wir den HTML-Inhalt von der URL herunterladen, bevor wir ähnliche Schritte wie im HTML-zu-PDF-Beispiel befolgen, um unseren URL-Inhalt in ein PDF-Dokument zu rendern und zu speichern. Wie Sie im Ausgabebild sehen können, war iText7 nicht in der Lage, viele der ursprünglichen Stile und Layouts beizubehalten, im Gegensatz zu IronPDF.

PDF-Signaturen

using System.Security.Cryptography.X509Certificates;
using iText.Kernel.Pdf;
using iText.Signatures;
using iText.Bouncycastle.Crypto;
using iText.Commons.Bouncycastle.Cert;
using iText.Commons.Bouncycastle.Crypto;
using Org.BouncyCastle.Pkcs;
using Org.BouncyCastle.Crypto;
using iText.Bouncycastle.X509;
using iText.Kernel.Crypto;
using System.IO;

public class Program
{
    static void Main(string[] args)
    {
        string inputPdf = "input.pdf";       // PDF to be signed
        string outputPdf = "signed_output.pdf";  // Signed PDF output
        string pfxFile = "IronSoftware.pfx";  // Path to your PFX certificate
        string password = "Passw0rd";   // Password for PFX file

        try
        {
            // Load your certificate
            Pkcs12Store ks = new Pkcs12StoreBuilder().Build();
            using (FileStream fs = new FileStream(pfxFile, FileMode.Open, FileAccess.Read))
            {
                ks.Load(fs, password.ToCharArray());
            }

            string alias = null;
            foreach (string al in ks.Aliases)
            {
                if (ks.IsKeyEntry(al))
                {
                    alias = al;
                    break;
                }
            }

            if (alias == null)
            {
                throw new Exception("Alias not found in the PFX file.");
            }

            ICipherParameters pk = ks.GetKey(alias).Key;
            X509CertificateEntry[] chain = ks.GetCertificateChain(alias);

            // Convert BouncyCastle certificates to iText certificates
            var itextCertChain = new IX509Certificate[chain.Length];
            for (int i = 0; i < chain.Length; i++)
            {
                itextCertChain[i] = new X509CertificateBC(chain[i].Certificate);
            }

            // Create output PDF with signed content
            using (PdfReader reader = new PdfReader(inputPdf))
            using (FileStream os = new FileStream(outputPdf, FileMode.Create, FileAccess.Write))
            {
                PdfSigner signer = new PdfSigner(reader, os, new StampingProperties().UseAppendMode());

                // Set up the external signature (private key + digest algorithm)
                IPrivateKey iTextPrivateKey = new PrivateKeyBC(pk);
                IExternalSignature pks = new PrivateKeySignature(iTextPrivateKey, DigestAlgorithms.SHA256);
                IExternalDigest digest = new BouncyCastleDigest();

                // Perform the signing (detached signature)
                signer.SignDetached(digest, pks, itextCertChain, null, null, null, 0, PdfSigner.CryptoStandard.CMS);
            }

            Console.WriteLine($"PDF digitally signed successfully: {outputPdf}");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error signing PDF: {ex.Message}");
        }
    }
}
using System.Security.Cryptography.X509Certificates;
using iText.Kernel.Pdf;
using iText.Signatures;
using iText.Bouncycastle.Crypto;
using iText.Commons.Bouncycastle.Cert;
using iText.Commons.Bouncycastle.Crypto;
using Org.BouncyCastle.Pkcs;
using Org.BouncyCastle.Crypto;
using iText.Bouncycastle.X509;
using iText.Kernel.Crypto;
using System.IO;

public class Program
{
    static void Main(string[] args)
    {
        string inputPdf = "input.pdf";       // PDF to be signed
        string outputPdf = "signed_output.pdf";  // Signed PDF output
        string pfxFile = "IronSoftware.pfx";  // Path to your PFX certificate
        string password = "Passw0rd";   // Password for PFX file

        try
        {
            // Load your certificate
            Pkcs12Store ks = new Pkcs12StoreBuilder().Build();
            using (FileStream fs = new FileStream(pfxFile, FileMode.Open, FileAccess.Read))
            {
                ks.Load(fs, password.ToCharArray());
            }

            string alias = null;
            foreach (string al in ks.Aliases)
            {
                if (ks.IsKeyEntry(al))
                {
                    alias = al;
                    break;
                }
            }

            if (alias == null)
            {
                throw new Exception("Alias not found in the PFX file.");
            }

            ICipherParameters pk = ks.GetKey(alias).Key;
            X509CertificateEntry[] chain = ks.GetCertificateChain(alias);

            // Convert BouncyCastle certificates to iText certificates
            var itextCertChain = new IX509Certificate[chain.Length];
            for (int i = 0; i < chain.Length; i++)
            {
                itextCertChain[i] = new X509CertificateBC(chain[i].Certificate);
            }

            // Create output PDF with signed content
            using (PdfReader reader = new PdfReader(inputPdf))
            using (FileStream os = new FileStream(outputPdf, FileMode.Create, FileAccess.Write))
            {
                PdfSigner signer = new PdfSigner(reader, os, new StampingProperties().UseAppendMode());

                // Set up the external signature (private key + digest algorithm)
                IPrivateKey iTextPrivateKey = new PrivateKeyBC(pk);
                IExternalSignature pks = new PrivateKeySignature(iTextPrivateKey, DigestAlgorithms.SHA256);
                IExternalDigest digest = new BouncyCastleDigest();

                // Perform the signing (detached signature)
                signer.SignDetached(digest, pks, itextCertChain, null, null, null, 0, PdfSigner.CryptoStandard.CMS);
            }

            Console.WriteLine($"PDF digitally signed successfully: {outputPdf}");
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Error signing PDF: {ex.Message}");
        }
    }
}
$vbLabelText   $csharpLabel

Ausgabe-PDF
iText7 Digital Signature Output

Wie zu sehen ist, kann iText7 zwar PDF-Dokumente digital signieren, aber der Prozess ist meist um einiges komplexer als mit IronPDF. Dieser Code lädt ein PFX-Zertifikat und verwendet es, um ein PDF digital zu signieren. Er extrahiert den privaten Schlüssel und das Zertifikat, richtet den Signierer ein und fügt dem PDF eine abgelöste Signatur hinzu, um das signierte Dokument dann zu speichern.

Wettbewerbsanalyse

Leistung und Benutzerfreundlichkeit

Schlüsselvorteile von IronPDF

IronPDF ist bekannt für seine Benutzerfreundlichkeit und Optimierung für hohe Leistung und bietet eine einfachere API, die häufige Aufgaben wie HTML-zu-PDF-Konvertierung vereinfacht. Es bietet hochrangige Methoden, die komplexe PDF-Verarbeitungsaufgaben abstrahieren und Entwicklern ermöglichen, PDFs mit minimalem Code zu erstellen, zu bearbeiten und zu manipulieren. Für Multithreading- oder großangelegte Dokumentenverarbeitung unterstützt IronPDF parallele Ausführung.

  • Einfach zu verwendende API – Hochrangige Methoden vereinfachen häufige Aufgaben wie HTML-zu-PDF-Konvertierung.
  • Minimal erforderliche Einrichtung – Lässt sich einfach in .NET-Projekte integrieren.
  • Integrierte parallele Ausführung – Optimiert für die Verarbeitung von Massen-PDF-Erstellung und -Konvertierung.
  • Vereinfachte API – Benötigt weniger Codezeilen, um Ergebnisse zu erzielen.

iText 7 - Leistungsstark aber komplex

iText 7 hingegen bietet eine detailliertere und granularere Kontrolle, was für Entwickler vorteilhaft sein kann, die umfangreiche Anpassungen benötigen. Es bietet eine robuste API für die Arbeit mit niedrigstufigen PDF-Operationen. Aufgrund seiner Komplexität erfordert iText 7 jedoch häufig mehr Code, um ähnliche Ergebnisse zu erzielen, verglichen mit IronPDF.

  • Granulare PDF-Steuerung – Ideal für Unternehmensanwendungen, die strikte Konformität erfordern (z. B. PDF/A, PDF/UA, digitale Signaturen).
  • Hochgradig anpassbar – Bietet niedrigstufige PDF-Manipulation für fortgeschrittene Anwendungsfälle.
  • Steilere Lernkurve – Erfordert mehr Einrichtung und Konfiguration im Vergleich zu IronPDF.
  • Codeintensiver – Häufige Aufgaben erfordern oft längere Implementierungen.

Lizenzen und Kosten

Bei der Auswahl einer PDF-Bibliothek für ein .NET-Projekt sind Überlegungen zu Lizenzierung und Kosten von entscheidender Bedeutung. Sowohl IronPDF als auch iText 7 folgen unterschiedlichen Lizenzierungsmodellen, und die richtige Wahl hängt von den Anforderungen Ihres Projekts, Ihrem Budget und Ihren Compliance-Anforderungen ab.

IronPDF-Lizenzierung und Kosten

IronPDF folgt einem kommerziellen Lizenzierungsmodell, was bedeutet, dass es zwar eine kostenlose Testversion für kommerzielle Lizenzierung bietet und für Entwicklung und Bewertung kostenlos ist, jedoch eine kostenpflichtige Lizenz für die volle Produktionsnutzung erforderlich ist. Die Preisgestaltung ist transparent und hängt von Faktoren wie Nutzungsumfang, Anzahl der Entwickler und Projekttyp ab.

IronPDF-Lizenzierung:

  • Kommerzielle Lizenzierungsmodell (Keine Open-Source-Beschränkungen).
  • Einfache Preisgestaltung auf Basis von Entwickler- oder Teamlizenzen.
  • Keine zusätzlichen Kosten für HTML-zu-PDF, PDF-Sicherheit oder andere Hauptfunktionen.
  • Am besten für Unternehmen, die eine einfache, kostengünstige PDF-Lösung benötigen.

Fazit: IronPDF beinhaltet alle wichtigen Funktionen in einer einzigen Lizenz, was es zu einer kostengünstigen Wahl für Teams und Unternehmen macht.

iText7-Lizenzierung und Kosten

iText7 operiert unter einem Dual-Lizenzierungsmodell, das Folgendes umfasst:

  1. AGPL (GNU Affero General Public License) – Kostenlos für Open-Source-Projekte, erfordert jedoch, dass das gesamte Projekt, das iText7 verwendet, Open Source und AGPL-konform ist. Das bedeutet, dass alle Modifikationen oder Ergänzungen des Projekts ebenfalls öffentlich geteilt werden müssen.
  2. Kommerzielle Lizenz – Erforderlich für jede proprietäre Software oder kommerzielle Anwendungen, die ihren Quellcode nicht offenlegen möchten. Die Preisgestaltung variiert je nach Nutzung, Unterstützungsniveau und Einsatzmaßstab.

Für Unternehmen, die iText 7 in proprietäre Software integrieren möchten, ist eine kommerzielle Lizenz zwingend erforderlich. Die Kosten können erheblich sein, insbesondere für Lösungen auf Unternehmensebene, da sie auf einer Pro-Entwickler-Basis berechnet wird, aber sie bietet Zugang zu professioneller Unterstützung und sichert die rechtliche Konformität.

Warum iText 7 teurer sein kann:

  • Preisgestaltung pro Entwickler – Jeder Entwickler benötigt eine separate Lizenz, was die Gesamtkosten für Teams erhöht.
  • Wesentliche Funktionen erfordern teure Zusatzmodule:
    • pdfHTML (Bezahlt) – Erforderlich für HTML-zu-PDF-Konvertierung.
    • pdfOCR (Bezahlt) – Wird benötigt für Texterkennung aus Bildern.
    • pdfCalligraph (Bezahlt) – Verbessert die Textrenderung und Schriftunterstützung.
    • pdfRender (Bezahlt) – Fügt PDF-zu-Bild-Konvertierung hinzu.
    • pdf2Data (Bezahlt) – Extrahiert strukturierte Daten aus PDFs.
  • Unternehmenskosten können schnell steigen, wenn mehrere Funktionen und Entwickler benötigt werden.

Fazit: Wenn Ihr Team mehrere Entwickler und wesentliche Funktionen wie HTML-zu-PDF und OCR benötigt, kann iText 7 erheblich teurer sein als IronPDF, das diese Funktionen ohne zusätzliche Kosten bietet.

Benutzungsfall-Szenarien

Kleine vs. große Projekte

Für kleine bis mittelgroße Projekte, die eine schnelle Implementierung von PDF-Funktionen mit minimaler Konfiguration erfordern, ist IronPDF eine überzeugende Wahl aufgrund seiner benutzerfreundlichen API und umfassenden Funktionsvielfalt. Projekte auf Unternehmensebene, die umfangreiche Anpassungen und die Einhaltung spezifischer PDF-Standards erfordern, können von den erweiterten Fähigkeiten von iText7 profitieren, jedoch stellt auch IronPDF für dieses Arbeitslevel eine starke Kandidatur aufgrund seiner hohen Leistung, Lizenzierungsoptionen und Benutzerfreundlichkeit dar.

Akademische und kommerzielle Nutzung

In akademischen Umgebungen oder Open-Source-Projekten erlaubt die AGPL-Lizenz von iText7 die kostenlose Nutzung, sofern die Lizenz des Projekts kompatibel ist. Für kommerzielle Anwendungen erfordern sowohl IronPDF als auch iText7 den Kauf einer kommerziellen Lizenz. Es wird empfohlen, die Lizenzbedingungen jeder Bibliothek zu überprüfen, um sicherzustellen, dass sie mit den Zielen Ihres Projekts übereinstimmen.

Abschluss

Die Wahl der richtigen PDF-Bibliothek für Ihr .NET-Projekt ist eine entscheidende Entscheidung, die von Faktoren wie Benutzerfreundlichkeit, Funktionsvielfalt und Lizenzierungsbedarf abhängt. Sowohl IronPDF als auch iText 7 bieten leistungsstarke PDF-Funktionen, aber sie richten sich an unterschiedliche Anforderungen. Über diese beiden Bibliotheken hinaus bieten Wettbewerber wie Aspose, Syncfusion und PDFSharp alle wettbewerbsfähige .NET PDF-Bibliotheken an. IronPDF führt jedoch kontinuierlich in der PDF-Industrie mit seiner einfach zu verwendenden API, dem umfassenden Funktionsumfang und der Kosteneffizienz.

Im Folgenden haben wir ein überzeugendes Argument zusammengefasst, warum IronPDF eine großartige Wahl für alle Ihre .NET-PDF-Bibliotheksbedürfnisse ist.

 IronPDF vs. iText7 Vergleichsübersicht

Vorteile von IronPDF

  • Einfachheit: IronPDF ist auf Einfachheit ausgelegt und damit eine ideale Wahl für Entwickler, die schnell PDF-Funktionen in ihre .NET-Anwendungen integrieren müssen. Seine intuitive API verringert die Lernkurve und beschleunigt die Entwicklungszeiten.
  • Umfassende Dokumentation und Unterstützung: IronPDF bietet detaillierte Dokumentation und reaktionsschnellen Kundensupport, um sicherzustellen, dass Entwickler sich schnell zurechtfinden und Probleme effektiv beheben können.
  • Naflose HTML-zu-PDF-Konvertierung: IronPDF zeichnet sich durch die Konvertierung von HTML, einschließlich CSS und JavaScript, in qualitativ hochwertige PDFs aus. Dies ist besonders vorteilhaft für Projekte, die dynamisch PDFs aus webbasierenden Inhalten erzeugen müssen.
  • Kommerzielle Lizenzierung: Für kommerzielle Anwendungen bietet IronPDF flexible Lizenzierungsoptionen, die die Einhaltung der Vorschriften ohne die Einschränkungen, die mit Open-Source-Lizenzen einhergehen können, gewährleisten.

iText Beschränkungen

  • Komplexität: Während iText 7 fortschrittliche Funktionen und Anpassungsmöglichkeiten bietet, kann seine API für Entwickler, die neu in der PDF-Manipulation sind, komplex sein. Dies kann zu längeren Entwicklungszeiten für häufige Aufgaben führen, verglichen mit dem einfacheren Ansatz von IronPDF.
  • Lizenzierungskosten für kommerzielle Nutzung: Die AGPL-Lizenz von iText 7 verlangt, dass jegliche abgeleitete Werke Open Source sein müssen, es sei denn, Sie erwerben eine kommerzielle Lizenz. Dies könnte eine Einschränkung für proprietäre Anwendungen sein, die nicht den AGPL-Bedingungen entsprechen können.
  • Java-zentrierte Funktionen: Während iText 7 for .NET verfügbar ist, fühlt es sich aufgrund seiner Wurzeln im Java-Ökosystem manchmal weniger nativ für C#-Entwickler an, insbesondere wenn es um plattformübergreifende Probleme oder die Integration mit auf Java basierenden Werkzeugen geht.

Abschließende Überlegungen

Wenn Ihr Projekt eine schnelle PDF-Erstellung, insbesondere aus Web-Inhalten, erfordert und Sie nach einer einfach zu verwendenden Lösung suchen, ist IronPDF wahrscheinlich die bessere Wahl. Wenn Ihre Anwendung jedoch fortgeschrittene PDF-Manipulation oder strikte Einhaltung von PDF-Standards erfordert und Sie erheblichen Anpassungsbedarf haben, könnte iText7 besser geeignet sein. Berücksichtigen Sie die spezifischen Anforderungen und Lizenzierungsbeschränkungen Ihres Projekts, um die beste Bibliothek für Ihre Bedürfnisse zu bestimmen.

Testen Sie IronPDF heute: Laden Sie die kostenlose Testversion herunter, um die leistungsstarken Funktionen von IronPDF selbst zu erkunden!

Hinweis:iText 7 ist ein eingetragenes Warenzeichen seines jeweiligen Eigentümers. Diese Seite ist nicht verbunden mit, wird nicht unterstützt von oder gesponsert von iText 7. Alle Produktnamen, Logos und Marken sind das Eigentum ihrer jeweiligen Inhaber. Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich zugängliche Informationen zum Zeitpunkt des Schreibens wider.

Häufig gestellte Fragen

Wie kann ich HTML in PDF in C# konvertieren?

Sie können die RenderHtmlAsPdf-Methode von IronPDF verwenden, um HTML-Strings in PDFs zu konvertieren. Sie können auch HTML-Dateien mit RenderHtmlFileAsPdf in PDFs konvertieren.

Was sind die wesentlichen Unterschiede zwischen IronPDF und iText 7?

IronPDF bietet nahtlose HTML-zu-PDF-Konvertierung und ein einfaches kommerzielles Lizenzmodell, während iText 7 ein kostenpflichtiges Add-on für HTML-zu-PDF-Konvertierung erfordert und einem dualen Lizenzmodell folgt. IronPDF ist für seine Benutzerfreundlichkeit bekannt, während iText 7 erweiterte PDF-Manipulation bietet, aber eine steilere Lernkurve aufweist.

Warum sollte ich mich für IronPDF für meine .NET-Projekte entscheiden?

IronPDF ist ideal für schnelle und kosteneffektive PDF-Implementierungen, bietet Benutzerfreundlichkeit, umfassende Dokumentation und integrierte HTML-zu-PDF-Konvertierung ohne zusätzliche Kosten. Es unterstützt mehrere .NET-Versionen und bietet umfangreiche Funktionen wie PDF-Bearbeitung und Sicherheit.

Ist IronPDF geeignet, um komplexe PDF-Dokumente zu erzeugen?

Ja, IronPDF unterstützt die Erzeugung komplexer PDF-Dokumente mit Funktionen wie Formularfüllung, Anmerkungen und Datenauszug. Seine umfangreichen Fähigkeiten machen es geeignet für eine Vielzahl von professionellen PDF-Anwendungen.

Welche Lizenzoptionen gibt es für IronPDF?

IronPDF folgt einem kommerziellen Lizenzmodell, das eine kostenpflichtige Lizenz für den Produktionseinsatz erfordert. Dieses einfache Modell eliminiert die Komplexität, die mit dualen Lizenzsystemen wie denen von iText 7 verbunden ist.

Kann IronPDF in .NET Core-Projekte integriert werden?

Ja, IronPDF kann in .NET Core-Projekte integriert werden. Es unterstützt .NET Core, .NET Framework und .NET Standard und ist damit vielseitig für verschiedene Entwicklungsumgebungen.

Wie handhabt IronPDF PDF-Sicherheitsfunktionen?

IronPDF bietet robuste PDF-Sicherheitsfunktionen, einschließlich Verschlüsselung, Passwortschutz und digitale Signaturen, die helfen, sensible Dokumentinformationen zu sichern.

Was macht IronPDF benutzerfreundlich im Vergleich zu anderen Bibliotheken?

IronPDF gilt als benutzerfreundlich aufgrund seiner einfachen API, minimaler Einrichtungsanforderungen und umfassender Dokumentation, was es einfach macht, auch für Entwickler mit begrenzter Erfahrung in der PDF-Erstellung zu implementieren.

Gibt es zusätzliche Kosten für die Verwendung der HTML-zu-PDF-Konvertierung in IronPDF?

Nein, IronPDF enthält integrierte HTML-zu-PDF-Konvertierungsfähigkeiten, die keine zusätzlichen Komponenten oder Kosten erfordern, im Gegensatz zu einigen anderen PDF-Bibliotheken, die kostenpflichtige Add-ons erfordern.

Wie vergleicht sich IronPDF in Bezug auf Leistung und Geschwindigkeit?

IronPDF ist optimiert für Leistung und Geschwindigkeit, bietet schnelle und zuverlässige PDF-Erzeugung und -Manipulation, was entscheidend für Anwendungen ist, die große Mengen an PDF-Verarbeitung handhaben.

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

We're online 24 hours, 5 days a week.
Chat
Email
Call Me