Produktvergleiche mit IronPDF
Dieser Artikel wurde von Jeff Fritz geschrieben, einer anerkannten Autorität in der .NET-Entwicklung.
In diesem Artikel bewertet und vergleicht Jeff die IronPDF-Bibliothek mit drei anderen führenden PDF-Bibliotheken für C#.NET: Aspose, SyncFusion und iTextPdf
Ich untersuche die gesamte Entwicklererfahrung beim Umgang mit drei kommerziellen PDF-Management-Produkten für Entwickler und vergleiche sie mit der IronPDF-Erfahrung. Wir werden jedes Produkt in den folgenden Bereichen vergleichen und bewerten:
- Entdeckungs- und Erwerbserfahrung
- Lizenzklarheit
- Kompatibilität
- Einstiegserfahrung
- Benutzerfreundlichkeit der API für einen C#-Entwickler
- Dokumentationsqualität, einschließlich Codebeispiele und Tutorials
- HTML-zu-PDF-Fähigkeiten
- CSS3-Konformität
- HTML 5-Konformität
- JavaScript-Konformität
- Unterstützung für Formularerstellung
- Wiedergabetreue
- Technischer Unterstützung
- Erscheinungsfrequenz und Feature-Entwicklung
Wir werden mit einem abschließenden Bewertungsbogen für die Werkzeuge schließen.
Entdeckung und Akquisition
Entwickler haben eine Welt von PDF-Produkten zur Auswahl. Wie können sie die Produkte unterscheiden und das richtige für ihr Projekt auswählen? C#-Entwickler suchen an drei Hauptstellen, wenn sie nach Software-Tools recherchieren: Suchmaschinen, GitHub und NuGet. Wir werden nach "PDF Software C#" auf DuckDuckGo, einer privaten Suchmaschine, suchen und diese PDF-Tools sowohl auf GitHub als auch auf NuGet.org suchen. NuGet ist das .NET-Paket-Repository.
| Produkt | DuckDuckGo | GitHub | NuGet |
|---|---|---|---|
| IronPDF | 5 | Nicht gefunden | 5 |
| Aspose | 22 | 37 | 3 |
| SyncFusion | 49 | N/V | 8 |
| iTextPDF | Nicht gefunden | 40 | 7 |
Anmerkungen: Ich habe die Suche auf die ersten 100 Ergebnisse jedes Dienstes beschränkt und konnte weder das GitHub-Repository von IronPDF noch die Website von iText auf DuckDuckGo finden. SyncFusion verfügt nicht über ein GitHub-Repository mit Beispielen für die PDF-Erstellung.
Akquise
Jedes der Produkte hat einen anderen Ansatz zur Produkterwerbung auf ihren Websites.
IronPDF macht es mit einem Download-Button auf der Startseite deutlich
Abbildung 1: IronPDF Download-Ermittlung
Der Download-Button leitet zur NuGet.org und den standardmäßigen .NET-Paketinstallationsanweisungen weiter.
Aspose hat einen Klick-Pfad auf der Startseite, wo man eine Sprache wählen muss, und dann werden Details über diese Produktversion und ein Download-Button angezeigt
Abbildung 2 - Aspose.PDF Sprachauswahl
Abbildung 3 - Aspose.PDF C# Download Entdeckung
Aspose wird Sie dann auffordern, die Tools mit einer Seite herunterzuladen, die NuGet-Anweisungen und mehrere Absätze von Werbematerial enthält
Abbildung 4 - Aspose Download-Seite
SyncFusion hat ihre PDF-Management-Bibliothek unter der Kategorie "Dokumentenverarbeitung - PDF" abgelegt. Ihre Unterseite sieht wie folgt aus:
Abbildung 5 - SyncFusion PDF Entdeckung
Sie müssen dann ein Formular ausfüllen, um ein Konto auf ihrer Website zu erstellen, komplett mit E-Mail-Adresse, Telefonnummer und Firmenname. SyncFusion verifiziert Ihre E-Mail mit einer Textnachricht und erlaubt Ihnen dann, einen Installer für ihre Software herunterzuladen. Sie können auch ein Testpaket von NuGet installieren, aber sie sagen, dass der Installer das "volle Produkt" bietet. In den Tagen nach der Anmeldung auf SyncFusions Website habe ich zwei E-Mails und zwei Telefonanrufe erhalten, die Hilfe beim Einstieg anboten. Die E-Mails und Anrufe waren freundlich im Ton, jedoch fand ich die Anrufe etwas aufdringlich.
iTextPDF macht es deutlich mit einem Produkt und einem Link zu ihrem Produkt:
Abbildung 7 - iTextPDF-Entdeckung
Der Download-Bildschirm bietet drei Optionen zum Herunterladen, mit Anforderungen zur Anmeldung mit Telefonnummer, E-Mail, Berufsbezeichnung und Firmenname.
Abbildung 7 - iText-Download-Bildschirm
Ich fand die Fülle an Auswahlmöglichkeiten von iText überwältigend und war nicht sicher, was ich herunterladen sollte. Ich habe iText 7 ausgewählt und wurde dann zu einem weiteren Bildschirm geführt, um aus neun PDF-bezogenen Produkten zum Herunterladen zu wählen. Wieder einmal fand ich dies verwirrend und unsicher, welche Bibliotheken und Tools ich für mein Projekt benötigte.
Ich erhielt eine Folge-E-Mail von iText mit einem Link zu ihrem Kundenportal und einem generierten Passwort. Ich versuchte, ihr Portal mit den bereitgestellten Anmeldedaten zu nutzen, konnte die Seite jedoch nicht erreichen.
Klarheit bei der Lizenzierung
Bei jeder Bibliothek, die ein Entwickler herunterlädt, entscheidet die Lizenz darüber, ob und wie sie das Produkt mit ihrem Projekt verwenden können. Eine freizügigere Lizenz erlaubt es, das Tool mit einer mobilen oder Desktop-Anwendung auszuliefern, und restriktivere Lizenzen können die Nutzung des Tools darauf beschränken, nur auf einem geschützten Server zu laufen.
IronPDF bietet einen klaren Button auf der Startseite, neben dem 'Kostenloser NuGet-Download'-Button, der zu den Lizenzbedingungen führt. Die resultierende Seite macht sehr deutlich, wie viele Entwickler abgedeckt sind und die Anzahl der Projekte, mit denen das Produkt verwendet werden kann. Es gibt eine Einschränkung bezüglich der Anzahl der Niederlassungen, die eine Organisation hat. Die Weiterverteilung der Software als SaaS-Produkt oder nativer Anwendung erfordert eine zusätzliche Lizenzgebühr.
Aspose hat sechs verschiedene Lizenzmodelle verfügbar, verpackt ohne Unterstützung, mit Unterstützung, oder mit Unterstützung und Beratung. Ich fand ihre Optionen ziemlich verwirrend, da es auch Einschränkungen gibt, mit welchen Projektarten man das Produkt verwenden kann, die Anzahl der lizenzierten Entwickler und die Größe der Organisation.
Öffentlich zugängliche Website-Projekte inklusive Unterstützung:
| Aufnahme | IronPDF | Syncfusion | AsposePDF | iText |
|---|---|---|---|---|
| 1 Website, 1 Entwickler, 1 Standort, Unterstützung | **$999** | **$2.495** | **$5.394** | |
| 10 Websites, 10 Entwickler, 10 Standorte, **Unterstützung** | **$2,999** | **$13.990** | **28.771$** | |
| Unbegrenzte Anzahl von Websites, **Unterstützung** | $5,999 | **N / A** | **$25.785+** (pro Jahr) |
Abbildung 8 - Aspose-Lizenzierungsmodell
SyncFusion hat eine einmalige Gebühr für ihr File Formats-Produkt, das den Unterstützung für alle .NET-Anwendungstypen umfasst. Die Gebühr wird pro Entwickler berechnet, mit einer Preisreduzierung für das zweite Jahr eines Vertrags. Es gibt keine Einschränkungen basierend auf der Größe einer Organisation oder der Anzahl der Projekte, mit denen das Produkt verwendet wird. Sie haben auch eine kostenlose Community-Lizenz für Unternehmen in der Startphase.
Abbildung 9 - SyncFusion-Lizenzierung
iText hat mehrere Produkte zur Verfügung, die Open Source sind, aber sie lassen es so erscheinen, als müssten Sie eine Lizenz kaufen, um das Produkt zu verwenden.
Abbildung 10 - iText Open Source Produkt
Die Option, eine kommerzielle Lizenz zu erwerben, führt zu einem Bildschirm ohne sofort aufgelistete Kaufoptionen. Es gibt ein Konfigurationstool, das Sie mit Informationen zu Ihrem Standort, Sprache, Nutzungsvolumen und den Produkten, die Sie verwenden möchten, ausfüllen müssen. Das Tool gibt dann ein Angebot für die kommerzielle Lizenz.
Abbildung 11 - iText-Lizenzkonfigurationswerkzeug
Wenn das Produkt Open Source verfügbar ist, kann ich das einfach ohne kommerzielle Unterstützung-Optionen verwenden? Es ist nicht klar, bis Sie auf deren iText 7 Community Site klicken und entdecken, dass es unter der AGPL-Lizenz steht, die Sie verpflichtet, den Quellcode der Anwendungen, die Sie mit ihrer Bibliothek schreiben, unter diesem Modell zu veröffentlichen. Es ist eine interessante Option, könnte aber Entwickler verwirren.
Kompatibilität
Mit den verschiedenen Bereitstellungsmodellen, die für jedes Produkt verfügbar sind, gibt es verschiedene Kompatibilitätsstufen, die auf jeder Website versprochen werden. Weitere Recherchen sind notwendig, um die Kompatibilität mit verschiedenen Hosting-Anbietern und Hosting-Tools wie Docker zu bestimmen.
| Umgebung | IronPDF | Aspose | SyncFusion | iText |
|---|---|---|---|---|
| MIT | Ja | |||
| .NET Framework | Ja | Ja | Ja | Ja |
| .NET 5 | Ja | Ja | Ja | |
| .NET 6 | Ja | Ja | Ja | |
| .NET Standard | Ja | Ja | Ja | |
| Xamarin | Ja | Ja | ||
| MAUI | Ja | |||
| Azure | Ja | |||
| AWS | Ja | Ja | ||
| Mac | Ja | |||
| Linux | Ja | |||
| Docker | Ja |
Aspose ist das einzige Produkt, das behauptet, mit MIT-Anwendungen zu funktionieren, typischerweise ein Erfordernis für Legacy-Entwickler. iText listet ihre unterstützten Plattformen nicht auf ihrer Website auf, und ein Scan ihrer NuGet-Pakete zeigt die Unterstützung für die angegebenen Plattformen. SyncFusion gibt an, mehrere Benutzeroberflächen-Frameworks zu unterstützen, jedoch keine spezifischen Laufzeitversionen. iText war das einzige Produkt neben IronPDF, das die Unterstützung für einen Cloud-Dienst beansprucht, mit einem Banner, das die Unterstützung für AWS hervorhebt.
Abbildung 12 - iText-Unterstützung auf AWS
Einführungserfahrung
Ich habe jedes der Produkte und deren 'Einstiegserfahrung', wie sie auf ihren Websites beschrieben sind, überprüft. Das sind die "Bauen Sie Ihre erste App mit dem Produkt"-Anleitungen für jedes dieser Produkte.
IronPDF
Ich konnte eine Probeversion von IronPDF über NuGet installieren und mit einer einzigen Codezeile starten. Sehr praktisch und hat mein System nicht überladen.
Das IronPDF-Beispiel auf der IronPDF-Get Started Seite funktioniert mit einer einfachen Konsole oder einer nativen Anwendung unter Verwendung von .NET 6 und älter. Es erstellt und lädt ein neues PDF mit einem einfachen "Hello World"-Textblock und vervollständigt ein 5-zeiliges Codebeispiel mit dem Schreiben der Datei.
Der Beispielcode ist klar und funktioniert gut mit dem .NET 6 / C# 10-Format. Der Online-Codeblock hat einen "In die Zwischenablage kopieren"-Button, der es einfach macht, ihn auszuführen.
Die Datei wird im Ordner bin/ unter dem Projekt abgelegt, und für ein kurzes Beispiel funktioniert sie. Ich hätte es begrüßt, wenn der Text neben der von mir soeben erstellten Codedatei gestanden hätte, da manche Leute vielleicht nicht wissen, dass sie im Ordner bin/ nach Inhalten suchen müssen.
Aufzeigen
Ich musste einen großen Download von 217 MB installieren, um die Aspose-Bibliotheken auf meinem System verwenden zu können. Dies installierte keine Anwendungen, sondern legte lediglich die Bibliotheken für Aspose auf Festplatte ab.
Das Aspose-Beispiel befindet sich in deren Dokumentation unter einem 'Get Started'-Abschnitt, was es etwas schwerer auffindbar macht. Das Codebeispiel unter Aspose's Hello World Example enthält etwas Prosa, die erklärt, was der Code zu tun versucht, und wirkt etwas wiederholend zu den Kommentaren im Code.
Das Aspose-Beispiel funktioniert nicht wie geschrieben und muss verbessert werden. Bei meiner Überprüfung ihres Produkts stieß ich auf folgende Probleme:
- Die .NET 6-Bibliothek wird als DLL ausgeliefert und auf der Festplatte unter
C:\Program Files (x86)\Aspose\Aspose.PDF for .NET\Bin\net6.0gespeichert. -- So laden .NET -Entwickler im Jahr 2022 keine Bibliotheken mehr, sondern bevorzugen NuGet Pakete. - Es gibt keine Anweisungen, die anzeigen, wie man die Referenz hinzufügt und welche Referenzen hinzuzufügen sind.
- Als ich einen Verweis auf die Datei
Aspose.Pdf.dllhinzufügte, ließ sich der auf der Seite angezeigte Projektcode nicht kompilieren.- Ich fügte die fehlenden using-Anweisungen hinzu und passte den Code an, um ihn zu kompilieren, und er konnte nicht laufen, da andere Referenzen fehlten.
- Das Projekt versucht, in einen 'Samples'-Ordner zu schreiben. In meinem Versuch, dieses Projekt zum Laufen zu bringen, hatte ich diesen Ordner nicht auf Festplatte, und mein Beispielprojekt stürzte ab, weil der Ordner nicht existierte.
- Die generierte Beispiel-PDF-Datei enthält einen 'Hello World'-Textblock und hat ein fuchsiefarbenes Wasserzeichen mit der Angabe, dass es sich um eine Demoversion der Software handelt.
Syncfusion
Ich musste eine große 874MB-Datei herunterladen, um zu beginnen, und die Installation erforderte, dass ich mich auf einem Syncfusion-Server einlogge, um die Bibliotheken zu extrahieren und mit ihnen zu arbeiten. Der Installer erstellte eine 'Control Panel'-Anwendung, die es mir erlaubte, eine Vielzahl von Demos auf Festplatte zu durchsuchen.
Abbildung 13 - SyncFusion's Control Panel Anwendung
Die Demo von SyncFusion befindet sich etwa auf halber Strecke auf ihrer Produktseite unter Syncfusions PDF Framework für .NET mit einem blauen Hintergrund und hellblauem Text darauf. Gemäß Lighthouse ist dies ein niedriger Kontrast und für einige Benutzer nicht zugänglich.
Ich fügte den Syncfusion-Code in Visual Studio ein und konnte nicht Visual Studio dazu bringen, eine passende "using-Anweisung" für die im Democode referenzierten Objekte zu generieren. Tatsächlich verwies mich Visual Studio, als ich versuchte, eine using-Anweisung zu finden und zu generieren, darauf, ein konkurrierendes Paket zu installieren:
Abbildung 14 - Visual Studio schlägt vor, dass ich iTextSharp installieren soll, um SyncFusion zu verwenden
Der Code für SyncFusions Beispiel tat nichts wie auf dem Bildschirm dargestellt. Der Democode schreibt ein PDF in einen MemoryStream, ein Objekt, das Dateiinhalte im Speicher verwaltet. Ich modifizierte den Code, um auf eine Datei auf der Festplatte zu schreiben, und es wurde eine Datei erzeugt, die "Hello World" enthielt.
iText
Die iText-Demo ist in einem klaren Code-Editor in der Mitte ihrer Produkt-Homepage geschrieben. iText 7 Community Im Gegensatz zu den anderen Demos enthielt iText einen Link, um das für diesen Code erzeugte PDF zu sehen.
Ich war verpflichtet, ein Installationspaket von ihrem Kundenportal herunterzuladen und einen Tag nach der Anmeldung erhielt ich um 5 Uhr morgens eine E-Mail mit Anweisungen zur Anmeldung. Die Anmeldedaten funktionierten nicht, und ich lud und installierte stattdessen die auf NuGet verfügbaren Community-Pakete herunter.
Die für iText7 bereitgestellten Beispielcodes funktionieren nicht wie geschrieben. In diesem Code fehlen außerdem einige using-Anweisungen, aber nachdem diese hinzugefügt wurden, generierte die Anwendung eine PDF-Datei und schrieb sie in den Ordner bin/ des Projekts.
Benutzerfreundlichkeit für einen C#-Entwickler
Dieses Bewertungselement untersucht die API und Interaktionen, die Entwickler mit der Bibliothek haben werden. Jedes dieser Tools hat mehrere Möglichkeiten, um mit PDF-Dokumenten zu erstellen und zu interagieren. Sehen wir uns jedes an.
Dokumentation
Die Dokumentation des Produkts ist das, was es langfristig mit Entwicklern ausmachen oder brechen wird. Da sie tiefer eintauchen und fortgeschrittenere Funktionen benötigen, wie schnell können sie dieses Material finden und werden Beispiele bereitgestellt, die helfen, diese Konzepte zu lehren.
Bei jedem dieser Produkte habe ich deren API-Dokumentation nach der Möglichkeit durchsucht, digitale Signaturen zu einem PDF hinzuzufügen.
IronPDF
Die API-Dokumente sind klar und gut organisiert mit einer Tisch-der-Inhalte im linken Bereich mit einem Live-Filter. Das Suchfeld oben rechts enthält ebenfalls einen Live-Filter und lieferte schnell mehrere Artikel über die verschiedenen Komponenten, die Signaturfunktionen bieten. Die API-Website bietet einen hellen und dunklen Modus, eine nette Funktion, die Entwickler bevorzugen.
Abbildung 15 - IronPDF API-Suchergebnisse für Signatur
Das Klassendokument PdfSignature beschreibt das Objekt, enthält aber keine Links zu Beispielcode. Ich habe auf der Webseite IronPDF nach "Signatur" gesucht und Beispielcode gefunden, der auf das Objekt PdfSignature verweist, unter IronPDF Digitally Sign a PDF Example .
Aufzeigen
Die Aspose-API-Dokumente haben mich zu ihrer PdfFileSignature-Klasse geführt, als ich nach Signatur gesucht habe. Diese Seite zeigt, ähnlich wie die von IronPDF, die Details der Klasse PdfFileSignature, enthält aber keine Links zu Demos und beschreibt auch nicht, wie die Klasse verwendet wird.
Ich kehrte zur Aspose-Dokumentationsbasis-Seite unter Aspose PDF für .NET Dokumentation zurück und suchte nach Signatur. Ich wurde dann mit einer Liste relevanter Artikel präsentiert und klickte durch zum Artikel 'Signatur in PDF-Datei hinzufügen" bei Aspose Signatur in PDF hinzufügen.
Syncfusion
SyncFusions Basis-Dokumentationsseite für das PDF-Dateiformate-Produkt befindet sich unter SyncFusion PDF-Dateiformate-Übersicht und brauchte ein paar Klicks durch ihre Website, um es zu finden. Ich musste nicht weit suchen, um das Signaturbeispiel zu finden, da die Startseite der Dokumentation bereits ein Beispiel hatte.
Es gibt keine API-Dokumente, die die Funktion für digitale Signaturen auf der SyncFusion-Website unterstützen.
iText
Die iText-API-Dokumentation ist sehr ausführlich und wird aus jeder veröffentlichten Version generiert. Es ist ein Standard-Look und Gefühl, das Sie bei anderen Bibliotheken im Internet sehen. Eine Suche nach einer Signatur fand einige Klassen mit großartigen Beschreibungen um diese Funktionen herum, aber es gibt wieder keine Links zu Beispielen.
Ich suchte auf der iText-Website nach einem Signaturbeispiel und konnte keines finden, stattdessen wurden mir mehrere Blogartikel präsentiert, die neue Partnerschaften ankündigen.
API
Die API, die von jedem der Tools zur Verfügung gestellt wird, ist sehr beschreibend und jeder folgt einem eigenen Ansatz, um dem Entwickler vollen Zugang zur Erstellung und Verwaltung des Inhalts eines PDF-Dokuments zu geben. Glücklicherweise haben alle Frameworks vollständige Autocomplete-Hinweise, die eine großartige Inline-Dokumentation bieten, während Sie mit ihren Tools in einem modernen Code-Editor wie Visual Studio oder Visual Studio Code arbeiten, der Autocomplete-Fähigkeiten bietet.
IronPDF
Die IronPDF-APIs machen sehr schwierige und komplexe Interaktionen einfach mit vereinfachten Befehlen wie 'RenderHtmlAsPdf', bieten aber immer noch tiefen Zugang zur Erstellung und Platzierung von Inhalten, Sicherheit, Metadaten und Formularen des Dokuments. Als Entwickler "sprechen" diese APIs zu der Art und Weise, wie ich über die Darstellung von Inhalten denke.
Die von den IronPDF-APIs verwendeten Namen und Begriffe machen deutlich, dass Sie ein Dokument rendern oder erstellen. Zeit-Eigenschaften einiger Einstellungen sind Ganzzahlen, die Millisekunden darstellen, wo ich einen nativen TimeSpan-Typ bevorzugt hätte. Schließlich würde ich gerne sehen, dass Einstellungen und Optionen-Typen mit einer modernen fließenden Konfigurations-API wie dieser bereitgestellt werden:
var renderer = new IronPdf.ChromePdfRenderer(options => {
options.RenderDelay = TimeSpan.FromSeconds(1);
});
var renderer = new IronPdf.ChromePdfRenderer(options => {
options.RenderDelay = TimeSpan.FromSeconds(1);
});
Dim renderer = New IronPdf.ChromePdfRenderer(Sub(options)
options.RenderDelay = TimeSpan.FromSeconds(1)
End Sub)
Syncfusion
SyncFusion-APIs sind klar und bieten sehr detaillierte Kontrolle darüber, wie mit ihren Konverter-Tools interagiert wird. Es gibt hier keine Abkürzungen, alles ist erforderlich, und Sie müssen ihm sagen, welche Tools Sie verwenden, ohne dass Standardwerte verfügbar sind. Die Einstellungen sind umfangreich und bieten feingranulare Kontrolle über alles, einschließlich des Speicherorts des WebKit-Renderers auf der Festplatte.
Diese zusätzliche Konfiguration, obwohl in einigen Installationen nicht notwendig, hat in der Vergangenheit zu Problemen für Leute geführt, und in zukünftigen Versionen verspricht SyncFusion, dass dies kein Problem ist.
Aufzeigen
Die Aspose-API ist extrem ausführlich und ich frage mich, ob sie wirklich versuchen, Entwickler produktiver zu machen. Die Menge an Konfiguration, die erforderlich ist, um ein Dokument von einer Website zu laden, ist erstaunlich, zehn Zeilen Code oder doppelt so viele Zeilen wie bei SyncFusion (fünf).
Ein Beispiel dafür ist, dass Aspose keine APIs hat, die es ermöglichen, eine URL anzugeben, um sie abzurufen und zu konvertieren.
iText
iText hat eine ähnliche API wie Aspose, sehr ausführlich und ermöglicht die direkte Interaktion beim Schreiben in das Dokument mit verschiedenen Datentypen, aber es ist nicht klar, wie man Abschnitte im Dokument erstellt. Angesichts der expliziten APIs und der schlechten Dokumentationsqualität ist die Arbeit mit iText bestenfalls schwierig.
HTML zu PDF
Als nächstes wollte ich die Rendering- und Geschwindigkeitsfähigkeiten jedes Tools beim Konvertieren von HTML-Inhalten in ein PDF testen. Ich habe einige Codezeilen geschrieben, die im Jeff's GitHub-Repository für PDF-Vergleiche verfügbar sind, die Sie überprüfen können, um mehr darüber zu erfahren, wie ich jeden dieser Tests durchgeführt habe. Ich habe auch eine Kopie jedes der Ergebnis-PDFs dort abgelegt, damit Sie sie überprüfen können. Ich werde jedes Produkt testen auf:
- Einfachheit beim Konvertieren einer Seite von einer statischen Website, die reines HTML liefert. Wir werden die KlipTok-Website verwenden, die die Suchmaschinen-Nutzung der Twitch-Clip-Website KlipTok.com unterstützt. (Hinweis: Die Website steht ab dem jüngsten Änderungsdatum dieses Artikels nicht mehr zur Verfügung)
- Rendering von ESPN.com, einer Seite mit viel JavaScript und CSS3, die die Homepage der Seite liefert.
- Rendering eines Formulars auf einer lokalen Website, um die Verwendung und Darstellung jedes Feldes im resultierenden PDF zu testen.
Szenario 1: Statische Website-Tests
Die Referenz-Website ist sehr einfach ohne CSS und nur mit Text, Links und Bildern.
Abbildung 16 - Die Referenz-Website für Static Web Tests
IronPDF
Dies war einfach drei Zeilen Code auszuführen, und die Leistung sah mit 835 ms gut aus. Als ich jedoch das PDF öffnete, stellte ich fest, dass keine der Bilder im Rendering enthalten waren, ein enttäuschendes Ergebnis mit der Standardkonfiguration.
Nach ein wenig Erkundung erfuhr ich, dass ich eine Rendering-Verzögerung hinzufügen konnte, und mit dieser Konfiguration konnte ich ein PDF rendern, das die richtigen Bilder auf der Seite enthielt.
Mit der Testversion des Tools gibt es ein Wasserzeichen, das im gerenderten PDF enthalten ist. In der voll lizenzierten Version ist dieses Wasserzeichen nicht vorhanden.
Abbildung 17 - IronPDF-Rendering der statischen Website
Syncfusion
SyncFusion war eine neugierige und verwirrende Reise. Ihre Dokumentation verweist auf mehrere verschiedene Möglichkeiten, HTML und PDF mit unterschiedlichen Versionsnummern und verschiedenen Frameworks zu rendern und zu liefern, die unterschiedliche Code- und Konfigurationen sowie die Installation von Binärtools erfordern, um ordnungsgemäß zu funktionieren.
Wie das IronPDF-Demo rendert SyncFusion nicht die Bilder für die Seite und liefert ein PDF mit sehr kleinen Rändern.
Mit der Testversion des Tools gibt es ein Wasserzeichen, das im gerenderten PDF enthalten ist. In der voll lizenzierten Version ist dieses Wasserzeichen nicht vorhanden.
Abbildung 18 - SyncFusion-Rendering der statischen Website.
Aufzeigen
Aspose hat eine sehr klare Anleitung zur Verwendung ihrer Tools. Basierend auf den Anweisungen auf ihrer Website zur Konvertierung einer Website in ein PDF haben sie jedoch einen erheblichen Fehler, der das Funktionieren dieser Funktion verhindert. Zusätzlich funktioniert ihr Online-Tool, das eine Website in ein PDF konvertiert, nicht mehr.
iText
Die Dokumentation von iText ist nicht so leicht zu finden, und wir mussten ein eBook lesen, um den Beispielcode zu erhalten, den wir für dieses Beispiel benötigt haben. Ohne Codeänderungen, ohne zusätzliche Konfiguration und mit vier Zeilen Code haben wir ein sehr gut aussehendes PDF ohne Wasserzeichen und mit guten Rändern gerendert.
Abbildung 19 - iText-Rendering der statischen Website.
| Verwendetes Tool | Geschwindigkeit in Millisekunden (niedriger ist besser) |
|---|---|
| IronPDF | 835 ms |
| SyncFusion | 1799 ms |
| Aspose | N/V |
| iText | 2975 ms |
Szenario 2: Vollständige Medien-Website - ESPN.com
Für diesen Test verwenden wir ESPN.com, eine Sport-Website, die viele CSS, Bilder und JavaScript auf der Seite hat. Da Aspose für den einfachen Test nicht funktionierte, werden wir sie in Zukunft überspringen. Wir werden denselben Code verwenden, den wir für das letzte Demo verwendet haben, um diese Aufnahmen zu erstellen, und einfach die Website-Adresse austauschen.
Zur Referenz ist hier das Erscheinungsbild von ESPN zum Zeitpunkt dieses Tests:
Abbildung 20 - Vollständiges Rendering von ESPN.com im Browser
Die Punkte oben und die Meldung des Spielstands in der Mitte des Bildschirms werden mit JavaScript gesetzt, und alle Positionierungen und Farben werden mit CSS3 gesteuert.
IronPDF
Das IronPDF-Rendering konnte die dynamischen Inhalte originalgetreu duplizieren und laden, allerdings sieht es so aus, als ob die Seite für ein mobiles Gerät gerendert wurde, wobei Inhaltelemente in separate Segmente aufgeteilt und gekachelt wurden.
Abbildung 21 - IronPDF-Rendering von ESPN
Syncfusion
SyncFusion hat ein ähnliches Rendering im 'mobilen Stil' durchgeführt, wobei der Inhalt vertikal gekachelt wurde. Allerdings haben wir mehrere Bilder verloren, die dynamisch von der ESPN-Website geladen wurden, und einige der Schriftformatierungen sind ebenfalls verloren gegangen:
Abbildung 22 - SyncFusion-Rendering von ESPN
iText
Für diesen Test weigerte sich iText zu laufen und warf eine NullReferenceException, die verhinderte, dass es versuchte, die Website zu rendern.
| Verwendetes Tool | Geschwindigkeit in Millisekunden (niedriger ist besser) |
|---|---|
| IronPDF | 835 ms |
| SyncFusion | 1799 ms |
| Aspose | N/V |
| iText | 2975 ms |
Formularbasierte Website
Der letzte Test besteht darin, ein PDF mit Formulareingabefeldern basierend auf einer Website zu erstellen. Das einfache Newsletter-Anmeldeformular, das ich geschrieben habe, ist im GitHub-Repository verfügbar und wird mit Bootstrap 5 in Firefox wie folgt gerendert:
Abbildung 23 - Formular-Website in Firefox
Hinweis: Das Bundesland ist ein Kombinationsfeld, das Feld Telefon ist ein Telefonfeld, die E-Mail ist ein E-Mail-Feld und die Schuhgröße ist ein Zahlenfeld.
IronPDF
Iron hat in diesem Test wirklich geglänzt, indem es schnell in einem ähnlichen mobilfreundlichen Layout gerendert wurde, wie durch die Hamburger-Menü-Schaltfläche in der oberen rechten Ecke zu sehen ist. Die Wasserzeichen auf der Seite sind ärgerlich in einer Testversion, werden jedoch in der voll lizenzierten Version entfernt.
Alle Textfeldfelder werden als interaktive PDF-Formularfelder gerendert, mit denen ich interagieren kann, mit Ausnahme der Optionsfelder und des Kontrollkästchens am Ende. Die Textfelder haben keine besondere Validierung oder Inhaltsdurchsetzung wie im Browser.
Abbildung 24 - IronPDF-Rendering des Formulars
Syncfusion
SyncFusion rendert offenbar die vollständige Desktop-Version der Website, da keine Hamburger-Menü-Schaltfläche vorhanden ist. Die gerenderten Formularelemente erscheinen als Quadrate, Schaltflächen und Kästchen auf dem Bildschirm, aber keiner von ihnen ist ein standardmäßiges PDF-Dateneingabefeld. Die Links im Header und Footer sind anklickbar, obwohl sie durch das Wasserzeichen verdeckt werden.
Abbildung 25 - Formularseite, gerendert von SyncFusion
iText
iText war mit Abstand das schnellste der drei Frameworks beim Rendern des Inhalts. Allerdings hatte diese Geschwindigkeit ihren Preis. Ihr Rendering lieferte zwar Anker-Tags, die beim Klicken navigierten, jedoch nicht zur ursprünglichen Website. Alle Formatierungen von Bootstrap gingen verloren, und alle Formularfelder wurden als einfache Kästchen gerendert.
Abbildung 26 - Von iText gerenderte Formularseite
| Verwendetes Tool | Geschwindigkeit in Millisekunden (niedriger ist besser) |
|---|---|
| IronPDF | 835 ms |
| SyncFusion | 1799 ms |
| Aspose | N/V |
| iText | 2975 ms |
Technische Unterstützung
Jedes dieser Frameworks bietet separate Unterstützung-Funktionen und Veröffentlichungszyklen. Für ein praktikables, derzeit entwickeltes und wachsendes Framework, das mehr von den PDF-Standards unterstützen wird, möchten wir Online-Unterstützung und regelmäßige Veröffentlichungstermine sehen.
IronPDF
Laut der NuGet-Website scheint IronPDF alle 2-4 Wochen eine Version freizugeben. Es gibt eine Live-Chat- und eine E-Mail-Unterstützungoption. Es wäre schön, ein Online-Forum oder einen Discord / Slack-Server zu haben, um mit dem Unterstützung und anderen Mitgliedern der IronPDF-Community zu chatten.
Syncfusion
Laut NuGet veröffentlichen sie einmal pro Woche ein Update ihrer PDF-Bibliotheken. SyncFusion verfügt über Online-Foren und ein Online-Unterstützung-Ticket-System. Es gibt keine Live-Chat-Unterstützung-Optionen von SyncFusion.
Aufzeigen
Laut NuGet veröffentlicht Aspose.PDF einmal im Monat. Sie bieten einen kostenlosen Helpdesk, einen bezahlten Helpdesk und bezahlte Beratung an. Ich sehe keine Live-Interaktionen oder Community-Interaktionen zur Verfügung.
iText
NuGet berichtet, dass iText ihre Pakete alle 2-3 Monate aktualisiert. Die einzige verfügbare Unterstützung erfolgt über einen Online-JIRA-Issue-Tracker und ein 'Contact Us'-Formular. Es gibt keine Live-Interaktionen oder gehostete Foren.
Abschließende Wertung
Aus jedem Abschnitt dieses Dokuments habe ich die Produkte gegeneinander bewertet, wobei vier die höchste Bewertung ist.
| Kategorie | IronPDF | Aspose | SyncFusion | iText |
|---|---|---|---|---|
| Entdeckung | 3 | 4 | 2 | 1 |
| Akquisition | 4 | 3 | 2 | 1 |
| Lizenzierung | 3 | 2 | 4 | 1 |
| Kompatibilität | 4 | 1 | 2 | 3 |
| Erste Schritte | 4 | 1 | 2 | 3 |
| API | 4 | 2 | 3 | 1 |
| Dokumentation | 4 | 4 | 3 | 2 |
| Websites rendern | 4 | 0 | 3 | 2 |
| Unterstützung | 3 | 4 | 2 | 1 |
| Insgesamt (höher ist besser) | 33 | 21 | 23 | 15 |
Anmerkungen:
- Beim Entdecken hat das Fehlen einer klaren Beispielbibliothek auf GitHub Syncfusion zuletzt platziert, und ich habe die Fähigkeit, das Produkt über die Suchmaschine zu finden, höher priorisiert als die Auffindbarkeit auf GitHub.
- Der Erwerb war bei IronPDF klar mit einer Schaltfläche, die sofort zu einer Download-Seite führte. Die anderen hatten unterschiedliche Anmelde- und Prozessstufen, um die benötigte Bibliothek zu finden. iText hatte den verworrensten Prozess und am Ende zu viele Optionen.
- Lizenzierung war bei Syncfusion sehr klar, während Aspose und IronPDF mehrere Einschränkungen hatten. Die Menge an Auswahlmöglichkeiten bei Aspose brachte es auf den dritten Platz, während die verwirrenden Open-Source-/kommerziellen Optionen mit dem Bedarf an einem Werkzeug, um Ihre Lizenz zu berechnen, iText zuletzt platzierten.
- Kompatibilität ist etwas verwirrend aufgrund der Behauptungen auf den Websites. IronPDF behauptet, auf verschiedenen Clouds zu funktionieren, während die anderen Tools keine solchen Behauptungen aufstellen. Weitere Untersuchungen sind während der Testphase erforderlich, um festzustellen, ob die drei Tools in diesen Umgebungen ausgeführt werden können.
- Das Einsteigen bewertete IronPDF als Erstes, da ihr Code ohne Änderungen funktionierte. iText benötigte einige kleinere Updates, und Aspose funktionierte überhaupt nicht und ich musste das Beispiel komplett neu schreiben.
- Die API-Struktur, die von IronPDF bereitgestellt wird, ist klar und ermöglicht es Entwicklern, in einem sehr produktiven "Gib mir die Standardeinstellungen und du kümmerst dich um den Rest"-Ansatz zu arbeiten. SyncFusion bietet einen ähnlichen Ansatz, wird aber langsam ausführlicher. Aspose und iText sind in ihrer API sehr ausführlich, und das Fehlen guter Dokumentation hat iText am Ende meiner Bewertungen platziert.
- Die Dokumentationsbewertung sieht IronPDF und Aspose im besten Erlebnis gleichauf, da sie die gleichen Funktionen haben, während SyncFusion und iText beide Beispiele oder API-Dokumentation fehlten. SyncFusion bekommt einen leichten Vorteil mit dem umfassenden Inhalt auf ihrer Dokumentationsseite.
- Der Test der Rendering-Websites zeigte, dass, obwohl iText das schnellste war, es nicht in der Lage war, das Aussehen der übergebenen Seite nachzubilden. IronPDF war in der Lage, vollständige CSS- und JavaScript-Funktionalität mit interaktiven Formularfeldern zu liefern, während SyncFusion JavaScript-Rendering und einige CSS-Fähigkeiten, aber keine interaktiven Formularfelder hatte.
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 einige der Hauptvorteile der Verwendung von IronPDF?
IronPDF bietet eine einfache Installation über NuGet, eine intuitive API, schnelle HTML-zu-PDF-Rendergeschwindigkeiten und gut organisierte Dokumentation. Es bietet auch klare Lizenzoptionen und eine robuste Kompatibilität mit .NET-Umgebungen.
Wie verbessert die Dokumentation von IronPDF die Entwicklererfahrung?
IronPDF bietet gut organisierte Dokumentation mit durchsuchbarer API und Beispielen, was es Entwicklern leicht macht, die benötigten Informationen zu finden und Lösungen effizient zu implementieren.
Was sind die Herausforderungen mit der SyncFusion-PDF-Bibliothek?
Die PDF-Bibliothek von SyncFusion erfordert eine umständliche Ersteinrichtung, einschließlich Kontoerstellung und Nachverfolgungskommunikation, die einige Benutzer als aufdringlich empfinden. Außerdem weist sie im Vergleich zu IronPDF eine suboptimale Renderleistung auf.
Wie geht IronPDF während der Konvertierung mit CSS und JavaScript um?
IronPDF glänzt darin, die Treue bei der Wiedergabe von CSS und JavaScript während der HTML-zu-PDF-Konvertierung zu bewahren, wodurch sichergestellt wird, dass das Ergebnis dem Originalinhalt genau entspricht.
Warum ist IronPDF eine bevorzugte Wahl für Entwickler in C#.NET-Umgebungen?
IronPDF wird aufgrund seines schlanken Erwerbs, klarer Lizenzierung, intuitiver API, schneller Konvertierungsgeschwindigkeiten und umfassender Dokumentation bevorzugt. Es bietet eine überlegene Entwicklererfahrung mit erweiterten Funktionen und macht es zu einer zuverlässigen Lösung für PDF in C#.NET-Umgebungen.
Was ist ein häufiges Problem mit der Aspose-PDF-Bibliothek laut dem Artikel?
Die Aspose-PDF-Bibliothek wird für ihr komplexes und verwirrendes Lizenzmodell und die nicht funktionale HTML-Konvertierung kritisiert, die für Benutzer schwierig sein kann, effektiv zu navigieren und zu implementieren.
Wie schneidet iText bei komplexen Webseiten ab?
iText wird für seine Geschwindigkeit bei der Wiedergabe statischer Inhalte geschätzt, hat jedoch Schwierigkeiten mit komplexen Webseiten und bietet begrenzte Unterstützung für Entwickler, die mit komplexen HTML-Strukturen arbeiten.



