PRODUKT-VERGLEICHE

PDF aus Byte-Array erstellen C# iTextSharp (vs IronPDF)

Veröffentlicht 30. Mai 2023
Teilen Sie:

1.0 Einführung

Adobe entwickelte das Portable Document Format, um den Austausch von Text- und Bilddokumenten zu erleichtern (PDF). Um eine PDF-Bilddatei anzuzeigen, müssen Sie eine andere Anwendung verwenden. Viele Unternehmen verwenden heutzutage PDF-Dokumente für eine Vielzahl von Aufgaben, einschließlich der Erstellung von Rechnungen und anderen Dokumenten.

Entwickler nutzen das bestehende PDF-Dateiformat auch, um Dokumente oder Bilddateien zu erstellen, die den Kundenspezifikationen entsprechen. Glücklicherweise haben Bibliotheken, die den Prozess vereinfachen, die Erstellung von PDFs einfacher denn je gemacht. Berücksichtigen Sie bei der Auswahl einer Bibliothek für Ihr Projekt Faktoren wie Erstellungs-, Lese- und Konvertierungsfunktionen, um die beste verfügbare Bibliothek auszuwählen.

In diesem Beitrag werden zwei der am häufigsten verwendeten Dot NET PDF-Bibliotheken verglichen. Sie sind:

  • iText PDF
  • IronPDF

    In Ihrer Microsoft.NET-Anwendung oder Ihrem Projekt können Sie PDFs mithilfe der IronPDF- oder iText-PDF-Bibliotheken erstellen, lesen und ändern. Wir werden uns zunächst die Fähigkeiten der beiden Bibliotheken ansehen und nicht direkt auf die Gesamtleistung, die Gebühren für die Konvertierung und den Umgang mit den PDFs eingehen, um festzustellen, welche Bibliothek für Ihre Anwendung besser geeignet ist. Microsoft.NET-Frameworks unterstützen beide Bibliotheken. Außerdem wird die Dauer der einzelnen Bibliotheken zu Referenzzwecken und für spätere Recherchen aufgezeichnet. Um mehr über den Vergleich zu erfahren, klicken Sie auf hier.

2. Merkmale der Bibliothek

2.1 iText PDF-Funktionen

Eine Java-Bibliothek und ein System, das Text in PDF-Dateien umwandeln kann, heißt iText PDF. Der Text unterliegt dem AGPL-Softwarelizenzmodell. Die AGPL-Softwarelizenz ist frei und quelloffen.

  • Eine API für die Erstellung von PDF-Dateien ist über die iText-Bibliothek verfügbar.
  • Sowohl HTML- als auch XML-Strings können mit dem Var-Reader des iText-Programms in PDF geparst werden.
  • Mit der iText-Bibliothek können wir Lesezeichen, Seitenzahlen und Markierungen zu unseren PDF-Dokumenten hinzufügen.
  • Mit der iText-Bibliothek können wir eine PDF-Datei in mehrere PDFs aufteilen oder mehrere PDF-Dateien zu einer einzigen PDF-Datei kombinieren.
  • Wir können Formulare in PDFs mit iText bearbeiten.
  • Mit Bildern im PNG-, JPEG- und anderen Bildformaten kann iText auch PDFs erstellen.
  • Eine Canvas-Klasse wird von der iText-Bibliothek angeboten und kann dazu verwendet werden, verschiedene geometrische Formen auf bereits vorhandene Texte zu zeichnen.
  • In PDF-Dokumenten bietet iText ein Werkzeug, mit dem Sie Schriftarten und Bilder hinzufügen und bearbeiten können.

2.2 IronPDF-Funktionen

Entwickler können mit Hilfe der robusten IronPDF, einer PDF .NET-Bibliothek, schnell PDF-Dateien erstellen, lesen und ändern. IronPDF basiert auf einer Chrome-Engine und bietet eine Fülle praktischer und leistungsstarker Funktionen, darunter die Möglichkeit, HTML5-, JavaScript-, CSS- und Bilddateien in PDF zu konvertieren, einzigartige Kopf- und Fußzeilen hinzuzufügen und PDFs genau so zu erstellen, wie sie in einem Webbrowser angezeigt werden. IronPDF for .NET unterstützt verschiedene Web- und .NET-Formate, darunter HTML, ASPX, Razor View und MVC. Die wichtigsten Eigenschaften von IronPDF sind folgende:

  • Einfaches Erstellen, Lesen und Bearbeiten von PDF-Dateien in einem Dot NET C#-Programm.
  • Erstellung von PDFs aus einem Website-URL-Link, der Einstellungen für Benutzer-Agenten, Proxies, Cookies, HTTP-Header und Formularvariablen enthält, um die Anmeldung mit HTML-Anmeldeformularen zu unterstützen.
  • Entfernen von Fotos aus bereits existierenden PDF-Publikationen.
  • Hinzufügen von Text, Fotos, Lesezeichen, Wasserzeichen und anderen Elementen zu PDF-Dateien.
  • Funktionen, die das Zusammenführen und Aufteilen der Seiten mehrerer PDF-Dokumente vereinfachen.
  • Die Fähigkeit, medienähnliche Inhalte, einschließlich CSS-Dateien, in Dokumente umzuwandeln.

3.0 Bibliothek installieren

3.1 iText7 installieren

Finden Sie iText zunächst mit dem NuGet Package Manager. iText7 und iText.pdfhtml müssen beide installiert werden, da die Funktionen dieser Pakete auf mehrere Pakete verteilt sind.

PDF aus Byte-Array erstellen C# iTextSharp (gegen IronPDF) Abbildung 1 - iText7

Installieren Sie die folgenden Pakete wie unten gezeigt, wenn Sie die Visual Studio Command-Line bevorzugen:

Install-Package itext7 && Install-Package itext7.pdfhtml

Da iText7 die neueste Version ist, verwenden wir sie in unserer Lösung.

3.2 IronPDF-Bibliothek installieren

Wie in der Abbildung unten zu sehen ist, können wir im Paketmanager einfach nach "IronPDF" suchen:

PDF aus Byte-Array erstellen C# iTextSharp (gegen IronPDF) Abbildung 2 - IronPDF

Die Liste der relevanten Suchergebnisse ist in der obigen Grafik dargestellt. Um das Paket auf Ihrem Rechner zu installieren, markieren Sie bitte die erforderlichen Kästchen.

Wenn Sie das Paket über die Kommandozeile installieren möchten, fügen Sie die folgende Zeile in die Registerkarte Terminal des Paketmanagers ein:

:PackageInstall

Das Paket ist nun für die Verwendung vorbereitet und wird heruntergeladen und im aktuellen Projekt installiert.

4.0 PDF-Erstellung

4.1 iTextSharp verwenden

Wir können PDF-Dokumente mit öffentlichen statischen Byte-Arrays erstellen, die aus dem iText-Dokument doc. Nachfolgend finden Sie ein Beispiel, das uns hilft, ein neues Dokument mit Hilfe der iText PDF-Bibliothek zu erstellen.

using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.Layout.Properties;
using System.IO;
using iText.Kernel.Geom;
using iText.Html2pdf;

var html = "<h1>Hello world</h1>";
//byte array
byte [] result;
//create new MemoryStream using var ms
using (var ms = new MemoryStream())
{
    //new document
    var doc = new PdfDocument(new PdfWriter(ms));
    doc.SetDefaultPageSize(PageSize.A4);
    doc.SetTagged();
    HtmlConverter.ConvertToPdf(html, doc, new ConverterProperties());
    result = ms.ToArray();
}
File.WriteAllBytes(@"test.pdf", result);
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;
using iText.Layout.Properties;
using System.IO;
using iText.Kernel.Geom;
using iText.Html2pdf;

var html = "<h1>Hello world</h1>";
//byte array
byte [] result;
//create new MemoryStream using var ms
using (var ms = new MemoryStream())
{
    //new document
    var doc = new PdfDocument(new PdfWriter(ms));
    doc.SetDefaultPageSize(PageSize.A4);
    doc.SetTagged();
    HtmlConverter.ConvertToPdf(html, doc, new ConverterProperties());
    result = ms.ToArray();
}
File.WriteAllBytes(@"test.pdf", result);
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element
Imports iText.Layout.Properties
Imports System.IO
Imports iText.Kernel.Geom
Imports iText.Html2pdf

Private html = "<h1>Hello world</h1>"
'byte array
Private result() As Byte
'create new MemoryStream var ms
Using ms = New MemoryStream()
	'new document
	Dim doc = New PdfDocument(New PdfWriter(ms))
	doc.SetDefaultPageSize(PageSize.A4)
	doc.SetTagged()
	HtmlConverter.ConvertToPdf(html, doc, New ConverterProperties())
	result = ms.ToArray()
End Using
File.WriteAllBytes("test.pdf", result)
VB   C#

Das obige Beispiel zeigt, dass wir ein PDF-Dokument aus der angegebenen HTML-Zeichenkette erstellen. Zunächst erstellen wir einen "MemoryStream", um die Daten zu speichern. Dann erstellen wir PdfWriter und übergeben den MemoryStream als Parameter, um die Daten zu speichern. Dann erstellen wir die PDF-Datei mit Hilfe des HtmlConverter. Danach wurde die gesamte Ausgabe im MemoryStream gespeichert. Dann wandeln wir die Daten in Bytes um und verwenden die Dateiklasse, um den "MemoryStream" ms in einer neuen Datei zu speichern, wie die folgende Ausgabe zeigt.

PDF aus Byte-Array erstellen C# iTextSharp (gegen IronPDF) Abbildung 3 - Ausgabe

4.2 Verwendung von IronPDF

IronPDF macht die Erstellung von PDF-Dateien mit wenigen Zeilen Code sehr einfach. Nachfolgend finden Sie ein Beispiel für die Erstellung einer PDF-Datei mit IronPDF.

var html = "<h1>Hello world</h1>";
var pdf = new IronPdf.ChromePdfRenderer();
var bytedata=pdf.RenderHtmlAsPdf(html).BinaryData;
File.WriteAllBytes(@"test.pdf", bytedata);
var html = "<h1>Hello world</h1>";
var pdf = new IronPdf.ChromePdfRenderer();
var bytedata=pdf.RenderHtmlAsPdf(html).BinaryData;
File.WriteAllBytes(@"test.pdf", bytedata);
Dim html = "<h1>Hello world</h1>"
Dim pdf = New IronPdf.ChromePdfRenderer()
Dim bytedata=pdf.RenderHtmlAsPdf(html).BinaryData
File.WriteAllBytes("test.pdf", bytedata)
VB   C#

Im ersten Schritt erstellen wir ein Objekt für ChromePdfRenderer, das bei der Erstellung von PDF-Dateien hilft. Dann fügen wir die HTML-Daten mit der Methode "RenderHtmlAsPdf" in das PDF-Dokument ein. Dann konvertieren wir die Daten in ein Byte-Array. Der letzte Schritt ist die Verwendung der Datei, die uns hilft, Byte-Array in eine PDF-Datei zu konvertieren. Die Ausgabe wird wie unten aussehen.

PDF aus Byte-Array erstellen C# iTextSharp (gegen IronPDF) Abbildung 4 - IronPDF-Ausgabe

Für weitere Code-Tutorials, klicken Sie hier.

5.0 Schlussfolgerung

iText7 ist eine der am häufigsten verwendeten PDF-Bibliotheken. der iText-Code ist so komplex, dass er für Anfänger nicht geeignet ist. Für die Verwendung in der Benutzeranwendung sind Grundkenntnisse über die Bibliothek erforderlich. iText generiert PDF-Dateien mit großem Speicherplatz, was sich auf den Arbeitsspeicher des Benutzers auswirken kann, wenn er eine Datei mit vielen Seiten erstellt. im Gegensatz zu anderen Paketen hat iText7 die Bibliothek in mehrere Pakete aufgeteilt. iText7 ist von mehreren Paketen abhängig. Wir müssen alle Pakete herunterladen, damit es funktioniert, was die Größe der Anwendung erhöhen kann. Sowohl eine Entwicklungslizenz als auch eine Geschäftslizenz sind bei iText kostenlos. Klicken Sie auf hier um mehr über die iText-Lizenz zu erfahren.

Andererseits ist IronPDF leicht und einfach zu bedienen. Mit den wenigen Codezeilen sind wir in der Lage, PDF-Dateien zu erstellen. Sie ist für Anfänger geeignet und es sind keine Grundkenntnisse erforderlich, um diese Anwendung zu nutzen. IronPDF steht in keiner Abhängigkeit zu anderen Paketen. Es ist ein Solo-Paket, das ganz allein funktioniert. Entwickler können aus einer Vielzahl von Lizenzen wählen, die sie je nach Bedarf erwerben können, zusätzlich zu einer kostenlosen Lizenz, die zur Verfügung gestellt wird. Die $749 Lite-Edition enthält alle Bibliotheksfunktionen, wie z.B. eine permanente Lizenz, eine 30-tägige Geld-zurück-Garantie, ein Jahr Software-Support, Upgrades und Möglichkeiten zur SaaS- und OEM-Weiterverteilung. Außerdem sind wiederkehrende Ausgaben nicht enthalten. Diese Lizenzen sind einmalige Käufe, die für die Entwicklung, das Staging und die Produktion verwendet werden können. Darüber hinaus sind zeitlich begrenzte, nicht verteilbare kostenlose Lizenzen von IronPDF erhältlich. Bitte anklicken hier für eine detaillierte Aufschlüsselung der IronPDF-Preise und Lizenzierungsinformationen.

< PREVIOUS
Ein Vergleich zwischen IronPDF und Foxit PDF SDK
NÄCHSTES >
Ein Vergleich zwischen iTextSharp und IronPDF zur Bearbeitung von PDFs

Sind Sie bereit, loszulegen? Version: 2024.10 gerade veröffentlicht

Gratis NuGet-Download Downloads insgesamt: 11,308,499 Lizenzen anzeigen >