Passer au contenu du pied de page
COMPARAISONS DE PRODUITS

Comparaisons de produits avec IronPDF

Cet article a été écrit par Jeff Fritz, une autorité bien reconnue dans le développement .NET.

Dans cet article, Jeff passe en revue et compare la bibliothèque IronPDF avec trois autres bibliothèques PDF leaders pour C#.NET : Aspose, SyncFusion et iTextPdf


Je suis en train d'examiner l'expérience complète des développeurs dans l'interaction avec trois produits de gestion PDF commerciaux pour développeurs et de les comparer à l'expérience IronPDF. Nous comparerons et évaluerons chaque produit dans les domaines suivants :

  1. Expérience de découverte et d'acquisition
  2. Clarté des licences
  3. Compatibilité
  4. Expérience de prise en main
  5. Facilité d'utilisation de l'API pour un développeur C#
  6. Qualité de la documentation, y compris des exemples de code et des tutoriels
  7. Capacités HTML vers PDF
    1. Conformité CSS3
    2. Conformité HTML 5
    3. Conformité JavaScript
    4. Prise en charge des formulaires de génération
    5. Fidélité du rendu
  8. Support technique
  9. Cadence des versions et développement des fonctionnalités

Nous conclurons avec une fiche d'évaluation finale pour les outils.

Découverte et Acquisition

Les développeurs ont un monde de produits PDF parmi lesquels choisir. Comment peuvent-ils séparer les produits et choisir celui qui convient à leur projet ? Les développeurs C# regardent dans trois endroits principaux lorsqu'ils recherchent des outils logiciels : les moteurs de recherche, GitHub et NuGet. Nous allons rechercher " Logiciel PDF C# " sur DuckDuckGo, un moteur de recherche privé, et rechercher ces outils PDF sur GitHub ainsi que sur NuGet.org. NuGet est le dépôt de paquets .NET.

Tableau 1. Acquisition de moteurs de découverte typiques
Produit DuckDuckGo GitHub NuGet
IronPDF 5 Pas trouvé 5
Aspose 22 37 3
SyncFusion 49 N/A 8
iTextPDF Pas trouvé 40 7

Notes : J'ai limité la recherche aux 100 premiers résultats sur chaque service et je n'ai pas réussi à localiser le dépôt GitHub d'IronPDF ainsi que le site web d'iText sur DuckDuckGo. SyncFusion n'a pas de dépôt GitHub avec des exemples de création de PDF.

Acquisition

Chacun des produits a une approche différente de l'acquisition de produit depuis leurs sites Web.

IronPDF le rend clair avec un bouton de téléchargement sur la page d'accueil

Produit Comparisons with IronPDF, Figure 1: IronPDF Download Découverte

Figure 1- Découverte du téléchargement d'IronPDF

Le bouton de téléchargement redirige vers NuGet.org et les instructions standard d'installation de package .NET.

Aspose propose un clic sur la page d'accueil où vous devez choisir une langue, puis vous êtes présenté avec des détails sur cette version du produit et un bouton de téléchargement

Produit Comparisons with IronPDF, Figure 2: Aspose.PDF Language Selector

Figure 2 - Sélecteur de langue Aspose.PDF

Produit Comparisons with IronPDF, Figure 3: Aspose.PDF Download Découverte

Figure 3 - Découverte du téléchargement d'Aspose.PDF C#

Aspose vous invite ensuite à télécharger les outils avec une page contenant des instructions NuGet et plusieurs paragraphes de matériel promotionnel

Produit Comparisons with IronPDF, Figure 4: Aspose Download Page

Figure 4 - Page de téléchargement d'Aspose

SyncFusion a sa bibliothèque de gestion des PDF classée sous "Traitement des documents - PDF". Leur sous-site ressemble à ceci :

Produit Comparisons with IronPDF, Figure 5: SyncFusion PDF Découverte

Figure 5 - SyncFusion PDF Découverte

Vous devez ensuite remplir un formulaire pour créer un compte sur leur site Web, avec une adresse e-mail, un numéro de téléphone et le nom de l'entreprise. SyncFusion vérifie votre email avec un message texte puis vous permet de télécharger un installateur pour leur logiciel. Vous pouvez également installer un package d'essai depuis NuGet, mais ils disent que l'installateur fournit le "produit complet". Dans les jours suivant l'inscription sur le site Web de SyncFusion, j'ai reçu deux e-mails et deux appels téléphoniques proposant de m'aider à démarrer. Les e-mails et les appels téléphoniques étaient amicaux en ton, mais j'ai trouvé les appels téléphoniques un peu envahissants.

iTextPDF le rend clair avec un produit et un lien vers leur produit :

Produit Comparisons with IronPDF, Figure 6: iTextPDF Découverte

Figure 7 - Découverte d'iTextPDF

L'écran de téléchargement propose trois options pour télécharger, avec l'exigence de s'inscrire avec numéro de téléphone, e-mail, titre du poste et nom de l'entreprise.

Produit Comparisons with IronPDF, Figure 7: iText Download Screen

Figure 7 - Écran de téléchargement d'iText

J'ai trouvé la quantité de choix de iText accablante et je ne savais pas quoi télécharger. J'ai choisi iText 7 puis j'ai été dirigé vers un autre écran pour choisir parmi neuf produits liés au PDF à télécharger. Encore une fois, j'ai trouvé cela déroutant et cela m'a laissé incertain des bibliothèques et outils dont j'avais besoin pour mon projet.

J'ai reçu un e-mail de suivi de iText avec un lien vers leur portail client et un mot de passe généré. J'ai essayé de me connecter à leur site portail avec les identifiants fournis mais je n'ai pas pu accéder au site.

Clarté des licences

Avec toute bibliothèque qu'un développeur télécharge, la licence déterminera si et comment il peut utiliser le produit avec son projet. Une licence plus permissive permettra à l'outil d'être expédié avec une application mobile ou de bureau, et des licences plus restrictives peuvent limiter l'utilisation de l'outil à une exécution uniquement sur un serveur protégé.

IronPDF propose un bouton clair sur la page d'accueil, à côté du bouton 'Téléchargement gratuit NuGet', qui lie aux termes de la licence. La page résultante précise clairement combien de développeurs sont couverts et combien de projets le produit peut être utilisé avec. Il y a une restriction sur le nombre de bureaux qu'une organisation a. La redistribution du logiciel en tant que produit SaaS ou application native nécessite un coût de licence supplémentaire.

Aspose a six modèles de licence différents disponibles, emballés sans support, avec support, ou avec support et conseil. J'ai trouvé leurs options assez déroutantes, car il y a aussi des limitations sur les types de projets avec lesquels vous pouvez utiliser le produit, le nombre de développeurs sous licences et la taille de l'organisation.

Projets de sites Web publics avec support :

Tableau 2 - Comparaison des prix
Inclusion IronPDF Syncfusion AsposePDF iText
1 site web, 1 développeur, 1 lieu, Support $799 $2,495 $5,394
10 sites web, 10 développeurs, 10 lieux, Support $2,399 $13,990 $28,771
Nombre de sites illimité, Support $4,799 N/A <25 785$+ (par an)
Produit Comparisons with IronPDF, Figure 8: Aspose Licence Model

Figure 8 - Modèle de licence Aspose

SyncFusion propose un tarif unique pour leur produit Formats de fichier qui inclut le support pour tous les types d'applications .NET. La redevance est facturée par développeur, avec une réduction du tarif pour la deuxième année d'un contrat. Il n'y a pas de limitations basées sur la taille d'une organisation, ou le nombre de projets auxquels le produit est utilisé. Ils ont aussi une licence communautaire gratuite disponible pour les entreprises en phase de démarrage.

Produit Comparisons with IronPDF, Figure 9: SyncFusion Licence

Figure 9 - Licence SyncFusion

iText propose plusieurs produits en open source, mais ils font apparaître qu'il est nécessaire d'acheter une licence pour utiliser le produit.

Produit Comparisons with IronPDF, Figure 10: iText Open Source Produit

Figure 10 - Produit Open Source iText

L'option d'acheter une licence commerciale conduit à un écran sans options d'achat immédiatement listées. Il existe un outil de configuration que vous devez compléter avec des informations sur votre emplacement, langue, volume d'utilisation et les produits que vous souhaitez utiliser. L'outil donne ensuite un devis pour la licence commerciale.

Produit Comparisons with IronPDF, Figure 11: iText License Configuration Tool

Figure 11 - Outil de configuration de la licence iText

Si le produit est disponible en open source, puis-je l'utiliser sans aucune option de support commercial ? Ce n'est pas clair jusqu'à ce que vous cliquiez sur leur site communautaire iText 7 et découvriez qu'il est couvert par la licence AGPL, qui vous oblige à publier le code source des applications que vous écrivez qui utilisent leur bibliothèque dans ce modèle. C'est une option intéressante, mais pourrait embrouiller les développeurs.

Compatibilité

Avec les différents modèles de déploiement disponibles pour chaque produit, il existe différents niveaux de compatibilité qui sont promis sur chaque site web. Une recherche plus approfondie est nécessaire pour déterminer la compatibilité avec différents fournisseurs d'hébergement et outils d'hébergement comme Docker.

Tableau 3 - Compatibilité promise sur le site web
Environnement IronPDF Aspose SyncFusion iText
AVEC Oui
.NET Framework Oui Oui Oui Oui
.NET 5 Oui Oui Oui
.NET 6 Oui Oui Oui
.NET Standard Oui Oui Oui
Xamarin Oui Oui
MAUI Oui
Azure Oui
AWS Oui Oui
Mac Oui
Linux Oui
Docker Oui

Aspose est le seul produit qui prétend fonctionner avec les applications AVEC, typiquement un besoin hérité pour les développeurs. iText ne répertorie pas leurs plateformes supportées sur leur site web, et un examen rapide de leurs paquets NuGet indique un support pour les plateformes indiquées. SyncFusion liste le support pour plusieurs frameworks d'interface utilisateur mais pas de versions spécifiques d'exécution. iText était le seul produit en plus d'IronPDF à prétendre prendre en charge un service cloud, avec une bannière mettant en avant le support pour AWS.

Produit Comparisons with IronPDF, Figure 12: iText Support on AWS

Figure 12 - Prise en charge d'iText sur AWS

Expérience de prise en main

J'ai passé en revue chacun des produits et leur expérience 'Prise en main' telle que décrite sur leurs sites web. Ce sont les instructions " construisez votre première application avec le produit " pour chacun de ces produits.

IronPDF

J'ai pu installer et commencer avec une version d'essai de IronPDF en utilisant NuGet, et une ligne de code. Très pratique, et n'encombrait pas mon système.

L'exemple IronPDF sur la page Prise en main de IronPDF fonctionne avec une simple application console ou native en utilisant .NET 6 et les versions antérieures. Il crée et charge un nouveau PDF avec un simple bloc de texte " Hello World ", complétant un exemple de code en 5 lignes avec l'écriture du fichier.

Le code exemple est clair et fonctionne bien avec le formatage .NET 6 / C# 10. Le bloc de code en ligne a un bouton " copier dans le presse-papier " qui le rend rapide à exécuter.

Le fichier est écrit dans le dossier bin/ sous le projet, et pour un exemple rapide, cela fonctionne. J'aurais aimé qu'il soit écrit à côté du fichier de code que je viens d'écrire, car certaines personnes pourraient ne pas savoir chercher dans le dossier bin/ pour le contenu.

Aspose

J'ai dû installer un téléchargement volumineux, de 217 Mo, pour commencer à utiliser les bibliothèques Aspose sur mon système. Cela n'a pas installé d'applications, mais n'a fait que placer les bibliothèques pour Aspose sur le disque.

L'exemple Aspose se trouve dans leur documentation sous une section 'Prise en main', ce qui le rend un peu plus difficile à localiser. L'exemple de code à L'Exemple Hello World d'Aspose inclut un peu de prose autour qui explique ce que le code tente de faire et semble un peu répétitif avec les commentaires dans le code.

L'exemple Aspose ne fonctionne pas tel quel et nécessite d'être amélioré. Dans ma revue de leur produit, j'ai rencontré les problèmes suivants :

  • La bibliothèque .NET 6 est livrée sous forme de DLL et stockée sur disque dans C:\Program Files (x86)\Aspose\Aspose.PDF for .NET\Bin\net6.0 -- Ce n'est pas la façon dont les développeurs .NET chargent les bibliothèques en 2022, préférant à la place les paquets NuGet.
  • Il n'y a pas d'indications expliquant comment ajouter la référence, et quelles références ajouter.
  • Lorsque j'ai ajouté une référence au fichier unique Aspose.PDF.dll, le code du projet présenté sur la page ne compilait pas.
    • J'ai ajouté les instructions using manquantes et ajusté le code pour qu'il se compile et il ne pouvait pas s'exécuter en raison d'autres références manquantes.
  • Le projet tente d'écrire dans un dossier 'Samples'. Dans ma tentative de faire fonctionner ce projet, je n'avais pas ce dossier sur le disque, et mon projet d'exemple s'est arrêté à cause de l'absence du dossier.
  • Le PDF généré de démonstration contient un bloc de texte 'Hello World' et a un filigrane fuchsia indiquant qu'il s'agit d'une version de démonstration du logiciel.

SyncFusion

J'ai dû télécharger un fichier volumineux de 874 Mo pour commencer, et l'installation m'a nécessité de me connecter à un serveur Syncfusion pour extraire et travailler avec les bibliothèques. L'installateur a créé une application 'Tableau de bord' qui m'a permis de naviguer autour de plusieurs démonstrations sur disque.

Produit Comparisons with IronPDF, Figure 13: SyncFusion's Control Panel Application

Figure 13 - Application du panneau de contrôle de SyncFusion

La démonstration de SyncFusion se trouve environ à mi-hauteur de leur page produit à Le Framework PDF de Syncfusion pour .NET avec un fond bleu et un texte bleu clair dessus. Selon Lighthouse, c'est un faible contraste et n'est pas accessible à certains utilisateurs.

J'ai collé le code Syncfusion dans Visual Studio et n'ai pas pu avoir Visual Studio générer une instruction "using" appropriée pour les objets référencés dans le code de démonstration. En fait, quand j'ai demandé à Visual Studio de tenter de localiser et de générer une instruction using, il m'a référé pour installer un paquet concurrent :

Produit Comparisons with IronPDF, Figure 14: Visual Studio Suggesting that I Install iTextSharp to use SyncFusion

Figure 14 - Visual Studio me suggère d'installer iTextSharp pour utiliser SyncFusion

Le code pour l'exemple de SyncFusion ne fait rien tel qu'il est présenté à l'écran. Le code de démonstration écrit un PDF dans un MemoryStream, un objet qui gère les contenus de fichiers en mémoire. J'ai modifié le code pour écrire dans un fichier sur disque et cela a généré correctement un fichier contenant " Hello World ".

iText

La démonstration iText est écrite dans un éditeur de code clair au milieu de leur page d'accueil produit. iText 7 Community Contrairement aux autres démonstrations, iText a inclus un lien pour voir le PDF généré pour ce code.

J'ai dû télécharger un paquet d'installation depuis leur portail client, et un jour après l'inscription, j'ai reçu un e-mail à 5h du matin avec des instructions pour s'inscrire. Les informations d'identification n'ont pas fonctionné, et j'ai plutôt téléchargé et installé les paquets communautaires disponibles sur NuGet.

Le code exemple fourni pour iText7 ne fonctionne pas tel quel. Ce code manque également à quelques instructions using, mais une fois ajoutées, l'application a pu générer un fichier PDF et l'écrire dans le dossier bin/ du projet.

Facilité d'utilisation pour un développeur C

Cet élément de revue examine l'API et les interactions que les développeurs auront avec la bibliothèque. Chacun de ces outils a plusieurs façons de créer et d'interagir avec les documents PDF. Examinons chacun d'eux.

Documentation

La documentation pour le produit est ce qui fera ou défera à long terme chez les développeurs. Au fur et à mesure qu'ils plongent plus en profondeur et ont besoin de fonctionnalités avancées, à quelle vitesse peuvent-ils trouver ce matériel et y a-t-il des exemples fournis qui aident à enseigner ces concepts.

Dans chacun de ces produits, j'ai cherché leur documentation API pour la capacité d'ajouter des signatures numériques à un PDF.

IronPDF

Les documents API sont clairs et bien organisés avec un panneau gauche sommaire avec un filtre vivant. La boîte de recherche en haut à droite comprend également un filtre en direct et a rapidement retourné plusieurs articles sur les différents composants qui fournissent des fonctionnalités de signature. Le site API a un mode clair et sombre, une fonctionnalité agréable que les développeurs préfèrent.

Produit Comparisons with IronPDF, Figure 15: IronPDF API Search Results for Signature

Figure 15 - Résultats de la recherche de l'API IronPDF pour la signature

Le document de la classe PdfSignature décrit l'objet mais n'inclut aucun lien vers un exemple de code. J'ai recherché sur le site ironpdf.com "signature" et trouvé un code d'exemple qui fait référence à l'objet PdfSignature à Exemple IronPDF de signature numérique d'un PDF.

Aspose

Les docs API d'Aspose m'ont dirigé vers leur classe PdfFileSignature lorsque j'ai cherché Signature. Cette page, comme celle de IronPDF, montre les détails de la classe PdfFileSignature, mais n'inclut aucun lien vers des démonstrations ou décrit comment utiliser la classe.

Je suis retourné à la page de base de la documentation Aspose à Documentation Aspose PDF pour .NET et j'ai cherché signature. J'ai consulté une liste d'articles et cliqué sur 'Ajouter une signature dans le fichier PDF' à Aspose.

SyncFusion

La page de documentation de base de SyncFusion pour le produit de formats de fichiers PDF se trouve à Aperçu des formats de fichiers PDF Syncfusion et il a fallu quelques clics sur leur site pour la trouver. Je n'ai pas eu besoin de chercher loin pour trouver l'exemple de signature car la page d'accueil de la documentation.

Il n'y a pas de documents API qui prennent en charge la fonctionnalité de signature numérique disponible sur le site de SyncFusion.

iText

La documentation API pour iText est très complète et générée à partir de chaque version publiée. C'est un aparence et une sensation standards que vous verrez d'autres bibliothèques sur Internet. La recherche d'une signature a trouvé quelques classes avec quelques excellentes descriptions sur ces fonctionnalités, mais encore une fois aucun lien vers des exemples.

J'ai recherché sur le site iText un exemple de signature sans être capable d'en localiser un, et j'ai plutôt été présenté avec plusieurs articles de blog annonçant de nouveaux partenariats.

API

L'API mise à disposition par chacun des outils est très descriptive et chacun prend son propre style d'approche pour donner au développeur un accès complet à la création et à la gestion du contenu d'un document PDF. Tous les frameworks disposent de suggestions d'autocomplétion complètes qui fournissent une excellente documentation en ligne dans un éditeur comme Visual Studio.

IronPDF

Les API IronPDF rendent les interactions très difficiles et complexes faciles à réaliser avec des commandes simplifiées comme "RenderHtmlAsPdf", mais offrent toujours un accès approfondi à la création et au placement de contenu, à la sécurité, aux métadonnées et aux formulaires du document. En tant que développeur, ces APIs " parlent de la manière dont je pense " au rendu du contenu.

Les noms et termes utilisés par les APIs IronPDF clarifient que vous rendez un document ou bâtissez un document. Les propriétés de temps sur certains des paramètres sont des entiers représentant des millisecondes où j'aurais préféré un type TimeSpan natif. Enfin, j'aimerais voir des types Paramètres et Options fournis avec une API de configuration fluide moderne comme celle-ci :

var renderer = new IronPdf.ChromePdfRenderer(options => {
    options.RenderDelay = TimeSpan.FromSeconds(1);
});
var renderer = new IronPdf.ChromePdfRenderer(options => {
    options.RenderDelay = TimeSpan.FromSeconds(1);
});
$vbLabelText   $csharpLabel

SyncFusion

Les API SyncFusion sont claires et offrent un contrôle très descriptif sur la façon d'interagir avec leurs outils de conversion. Aucun raccourci ici, tout est requis, et vous devez leur indiquer quels outils vous utilisez sans valeurs par défaut disponibles. Les Paramètres sont étendus avec un contrôle finement granulé sur tout, y compris l'emplacement du rendu WebKit sur le disque.

Cette configuration supplémentaire, bien que non nécessaire dans certaines installations, a causé des problèmes pour certains dans le passé et dans les futures versions SyncFusion promet qu'il n'y a pas de problème.

Aspose

L'API Aspose est extrêmement verbeuse et je me demande si elle essaie vraiment de rendre les développeurs plus productifs. La quantité de configuration nécessaire pour charger un document à partir d'un site Web est stupéfiante, dix lignes de code ou deux fois plus de lignes que SyncFusion (cinq).

Un exemple de cela est qu'Aspose n'a pas d'API vous permettant de spécifier une URL à récupérer et à convertir.

iText

iText a une API similaire à celle d'Aspose, très verbeuse et permettant une interaction directe avec l'écriture dans le document avec différents types de données, mais il n'est pas clair comment créer des sections du document. Avec la nature explicite des API et la faible qualité de la documentation, travailler avec iText est difficile au mieux.

HTML en PDF

Je voulais ensuite tester les capacités de rendu et de vitesse de chaque outil pour convertir du contenu HTML en PDF. J'ai écrit du code disponible à partir du dépôt GitHub de Jeff pour les Comparaisons PDF que vous pouvez consulter pour en savoir plus sur la façon dont j'ai effectué chacun de ces tests. J'ai aussi mis de côté une copie de chacun des résultats PDF là-bas pour vous permettre de les examiner. Je vais tester chaque produit pour :

  • Facilité de conversion d'une page d'un site Web statique qui livre du HTML brut. Nous utiliserons le site statique KlipTok utilisé pour alimenter la consommation du moteur de recherche du site de clips Twitch KlipTok.com. (Note : Le site Web est indisponible à la date de la modification la plus récente de cet article)
  • Rendu de ESPN.com, un site avec beaucoup de JavaScript et de CSS3 qui livre la page d'accueil du site.
  • Rendu d'un formulaire sur un site local pour tester l'utilisation et la présentation de chacun des champs dans le PDF résultant.

Scénario 1 : Tests de sites Web statiques

Le site de référence est très simple sans CSS et juste du texte avec des liens et des images.

Produit Comparisons with IronPDF, Figure 16: The reference website for Static Web Tests

Figure 16 - Le site web de référence pour les tests statiques du web

IronPDF

Cela était une simple exécution de trois lignes de code, et la performance semblait bonne à 835 ms. Cependant, lorsque j'ai ouvert le PDF, j'ai constaté qu'aucune des images n'était incluse dans le rendu, un résultat décevant avec la configuration par défaut.

Après un peu d'exploration, j'ai appris que je pouvais ajouter un retard de rendu, et avec cette configuration, j'ai pu rendre un PDF qui incluait les images appropriées sur la page.

Avec la version de test de l'outil, il y a un filigrane inclus dans le PDF rendu. Dans la version entièrement licenciée, ce filigrane n'est pas présent.

Produit Comparisons with IronPDF, Figure 16: The reference website for Static Web Tests

Figure 17 - Rendu IronPDF du site statique

SyncFusion

SyncFusion a été un voyage curieux et confus. Leur documentation fait référence à plusieurs façons de rendre et fournir du HTML et du PDF avec différents numéros de version et différents frameworks nécessitant différents codes et configurations ainsi que des installations d'outils binaires pour fonctionner correctement.

Comme la démo d'IronPDF, SyncFusion n'a pas rendu les images pour la page et a livré un PDF avec des marges très petites.

Avec la version de test de l'outil, il y a un filigrane inclus dans le PDF rendu. Dans la version entièrement licenciée, ce filigrane n'est pas présent.

Produit Comparisons with IronPDF, Figure 18: SyncFusion Rendering of the Static Site

Figure 18 - Rendu SyncFusion du site statique.

Aspose

Aspose a un ensemble de directions très claires concernant l'utilisation de leurs outils. Cependant, d'après les instructions sur leur site web pour convertir un site web en PDF, ils ont un bug significatif qui empêche la fonctionnalité de fonctionner. De plus, leur outil en ligne qui convertit un site web en PDF ne fonctionne plus.

iText

La documentation d'iText n'est pas aussi facile à trouver, et nous avons dû lire un eBook pour obtenir le code exemple que nous recherchions pour exécuter cet exemple. Sans changements de code, sans configuration supplémentaire et quatre lignes de code, nous avons rendu un PDF d'apparence très plaisante sans filigranes et avec de bonnes marges.

Produit Comparisons with IronPDF, Figure 19: iText Rendering of the Static Site

Figure 19 - Rendu iText du site statique.

Tableau 4 - Comparaison des performances entre HTML et PDF pour un site statique
Outil utilisé Vitesse en millisecondes (plus elle est faible, mieux c'est)
IronPDF 835ms
SyncFusion 1799ms
Aspose N/A
iText 2975ms

Scénario 2 : Site Web complet multimédia – ESPN.com

Pour ce test, nous utilisons ESPN.com, un site internet sportif qui contient beaucoup de CSS, d'images et de JavaScript sur la page. Étant donné qu'Aspose n'a pas fonctionné pour le test simple, nous les sauterons à l'avenir. Nous utiliserons le même code que nous avons utilisé pour la dernière démo pour créer ces captures, en remplaçant simplement l'adresse du site web.

Pour référence, voici l'apparence d'ESPN au moment de ce test :

Produit Comparisons with IronPDF, Figure 20: SyncFusion Rendering of the Static Site

Figure 20 - Rendu complet d'ESPN.com dans le navigateur

Les scores en haut et le rapport de l'état du jeu au milieu de l'écran sont placés avec JavaScript, et toute la disposition et les couleurs sont traitées avec CSS3.

IronPDF

Le rendu IronPDF a pu fidèlement dupliquer et charger le contenu dynamique, cependant, il semble que la page ait été rendue pour un appareil mobile avec des éléments de contenu divisés en segments séparés et carrelés.

Produit Comparisons with IronPDF, Figure 21: IronPDF Rendering of ESPN

Figure 21 - Rendu IronPDF de ESPN

SyncFusion

SyncFusion a réalisé un rendu similaire de 'style mobile' avec un contenu carrelé verticalement. Cependant, nous avons perdu plusieurs images qui ont été chargées dynamiquement par le site ESPN et une partie du formatage des polices est également perdue :

Produit Comparisons with IronPDF, Figure 22: SyncFusion Rendering of ESPN

Figure 22 - Rendu SyncFusion de ESPN

iText

Pour ce test, iText a refusé de fonctionner et a levé une NullReferenceException, l'empêchant d'essayer de rendre le site web.

Tableau 4 - Comparaison des performances entre HTML et PDF pour un site complexe
Outil utilisé Vitesse en millisecondes (plus elle est faible, mieux c'est)
IronPDF 835ms
SyncFusion 1799ms
Aspose N/A
iText 2975ms

Site Web basé sur des formulaires

Le test final consiste à générer un PDF avec des champs de saisie de formulaire basés sur un site Web. Le simple formulaire d'inscription à la newsletter que j'ai écrit est disponible dans le dépôt GitHub et se rend avec Bootstrap 5 dans Firefox comme suit :

Produit Comparisons with IronPDF, Figure 23: Form Website in Firefox

Figure 23 - Site web de formulaire dans Firefox

Note : l'État est une boîte combinée, le champ Téléphone est un champ téléphone, l'Email est un champ email et la Taille de la chaussure est un champ numérique.

IronPDF

Iron brille vraiment dans ce test, rendant rapidement dans une disposition conviviale semblable à celle de l'interface mobile comme en témoigne le bouton de menu hamburger en haut à droite. Les filigranes à travers la page sont gênants dans une version de test, mais supprimés dans la version entièrement licenciée.

Tous les champs de texte sont rendus en tant que champs de formulaire PDF avec lesquels je peux interagir, à l'exception des boutons radio et de la case à cocher à la fin. Les boîtes de texte n'ont pas de validation particulière ou de contrainte de contenu comme elles le font dans le navigateur.

Produit Comparisons with IronPDF, Figure 24: IronPDF Rendering of the Form

Figure 24 - Rendu IronPDF du formulaire

SyncFusion

SyncFusion a rendu ce qui semble être la version complète du site Web sur le bureau, car il n'y a pas de bouton de menu hamburger présent. Les éléments de formulaire rendus apparaissent sous forme de carrés, de boutons et de boîtes à l'écran mais aucun d'entre eux n'est un champ standard de saisie de données PDF. Les liens dans l'en-tête et le pied de page, bien que masqués par le filigrane, sont cliquables.

Form Site Rendered by SyncFusion, Figure 25: Form Site Rendered by SyncFusion

Figure 25 - Site de formulaire rendu par SyncFusion

iText

iText était de loin le plus rapide des trois frameworks pour rendre le contenu. Cependant, cette rapidité a eu un prix. Leur rendu a livré des balises d'ancre qui naviguaient lorsqu'elles étaient cliquées, mais n'atteignaient pas le site Web d'origine. Tout le formatage de bootstrap était perdu, et tous les champs de formulaire ont été rendus comme des boîtes simples.

Form Site Rendered by SyncFusion, Figure 26: Form Site Rendered by iText

Figure 26 - Site de formulaire rendu par iText

Outil utilisé Vitesse en millisecondes (plus elle est faible, mieux c'est)
IronPDF 835ms
SyncFusion 1799ms
Aspose N/A
iText 2975ms

Assistance technique

Chacun de ces frameworks a des capacités de support distinctes disponibles et un rythme de mise à jour. Pour un framework viable, actuellement développé et en croissance qui prendra en charge davantage de la norme PDF, nous aimerions voir une assistance en ligne disponible et des plannings de publication réguliers.

IronPDF

D'après le site web NuGet, il semble qu'IronPDF publie une version toutes les 2-4 semaines. Support disponible par chat en direct et email. Ce serait bien de voir un forum en ligne ou un serveur Discord / Slack pour discuter avec le support et d'autres membres de la communauté IronPDF.

SyncFusion

Selon NuGet, ils publient une mise à jour de leurs bibliothèques PDF une fois par semaine. SyncFusion a des forums en ligne, et un système de billetterie d'assistance en ligne. Il n'y a pas d'options de support de chat en direct avec SyncFusion.

Aspose

Selon NuGet, Aspose.PDF publie une version une fois par mois. Ils offrent un helpdesk gratuit, un helpdesk payant et du conseil payant. Je ne vois aucune interaction en direct ou interaction communautaire disponible.

iText

NuGet rapporte qu'iText met à jour ses packages tous les 2-3 mois. Leur seul support disponible se fait par le biais d'un tracker de problèmes JIRA en ligne et d'un formulaire " contactez-nous ". Il n'y a pas d'interactions en direct ou de forums hébergés disponibles.

Tableau de bord final

Dans chaque section de ce document, j'ai classé les produits les uns par rapport aux autres, quatre étant le rang le plus élevé.

Catégorie IronPDF Aspose SyncFusion iText
Découverte 3 4 2 1
Acquisition 4 3 2 1
Licence 3 2 4 1
Compatibilité 4 1 2 3
Pour commencer 4 1 2 3
API 4 2 3 1
Documentation 4 4 3 2
Rendre des sites web 4 0 3 2
Support 3 4 2 1
Total (plus il est élevé, mieux c'est) 33 21 23 15

Notes :

  • Dans la découverte, le manque d'une bibliothèque d'exemples claire sur GitHub a mis Syncfusion à la dernière place, et j'ai priorisé la capacité à trouver le produit sur le moteur de recherche au-dessus de le trouver sur GitHub.
  • L'acquisition était claire de la part de IronPDF avec un bouton qui conduisait immédiatement à une page de téléchargement. Les autres avaient divers niveaux d'inscription et de processus pour trouver la bibliothèque dont vous aviez besoin. iText avait le processus le plus déroutant et trop d'options à la fin.
  • La licence était très claire pour Syncfusion tandis que Aspose et IronPDF avaient plusieurs limitations. Le volume de choix pour Aspose l'a mis en troisième place tandis que les options open source / commerciales déroutantes avec le besoin d'un outil pour calculer votre licence ont mis iText en dernière position.
  • La compatibilité est un peu déroutante en fonction des affirmations sur les sites Web. IronPDF prétend fonctionner sur les différents clouds, et les autres outils ne font pas de telles affirmations. Une enquête plus approfondie est nécessaire pendant le processus de test pour déterminer si les trois outils peuvent être exécutés dans ces environnements.
  • La prise en main a placé IronPDF en premier, car leur code a fonctionné tel quel sans modifications. iText a nécessité quelques mises à jour mineures, et Aspose n'a pas du tout fonctionné et j'ai dû complètement réécrire l'exemple.
  • La structure de l'API fournie par IronPDF est claire et permet aux développeurs de travailler avec un approche de type "donnez-moi les paramètres par défaut et vous choisissez le reste" très productive. SyncFusion propose une approche similaire, mais commence à devenir verbeux. Aspose et iText sont très verboses dans leur API, et le manque de bonne documentation a poussé iText à la fin de mes classements.
  • Les scores de documentation sont marqués comme IronPDF et Aspose ayant égalé pour la meilleure expérience car ils avaient les mêmes fonctionnalités, tandis que SyncFusion et iText manquaient tous les deux d'exemples ou de documentation API. SyncFusion obtient un léger avantage grâce au contenu exhaustif de leur site de documentation.
  • Le test de rendu des sites Web a révélé que bien qu'iText ait été le plus rapide, il n'a pas pu reproduire l'apparence du site qui lui a été soumis. IronPDF a pu offrir une fidélité complète en CSS et JavaScript avec des champs de formulaire interactifs tandis que SyncFusion avait un rendu JavaScript, certaines capacités CSS mais aucun champ de formulaire interactif.

Veuillez noterAspose, iText et SyncFusion sont des marques déposées de leurs propriétaires respectifs. Ce site n'est pas affilié, soutenu ou sponsorisé par Aspose, iText ou SyncFusion. Tous les noms de produits, logos et marques sont la propriété de leurs propriétaires respectifs. Les comparaisons sont fournies à titre d'information uniquement et sont basées sur des informations publiquement disponibles au moment de la rédaction.

Questions Fréquemment Posées

Comment puis-je convertir HTML en PDF en C# ?

Vous pouvez utiliser la méthode RenderHtmlAsPdf d'IronPDF pour convertir des chaînes HTML en PDFs. Vous pouvez également convertir des fichiers HTML en PDFs en utilisant RenderHtmlFileAsPdf.

Quels sont les principaux avantages d'utiliser IronPDF ?

IronPDF offre une installation simple via NuGet, une API intuitive, des vitesses de rendu HTML en PDF rapides et une documentation bien organisée. Il propose également des options de licence claires et une compatibilité robuste avec les environnements .NET.

Comment la documentation d'IronPDF améliore-t-elle l'expérience des développeurs ?

IronPDF fournit une documentation bien organisée avec une API consultable et des exemples, permettant aux développeurs de trouver facilement les informations dont ils ont besoin et de mettre en œuvre des solutions efficacement.

Quels sont les défis de la bibliothèque PDF de SyncFusion ?

La bibliothèque PDF de SyncFusion nécessite une configuration initiale lourde, y compris la création de compte et des communications de suivi, que certains utilisateurs trouvent envahissants. Elle a également des performances de rendu sous-optimales par rapport à IronPDF.

Comment IronPDF gère-t-il CSS et JavaScript lors de la conversion ?

IronPDF excelle à maintenir la fidélité lors du rendu de CSS et JavaScript pendant la conversion HTML en PDF, garantissant que le résultat coïncide étroitement avec le contenu original.

Qu'est-ce qui fait d'IronPDF un choix privilégié pour les développeurs dans les environnements C# .NET ?

IronPDF est préféré pour son acquisition simplifiée, sa clarté de licence, son API intuitive, sa vitesse de conversion rapide et sa documentation complète. Il offre une expérience développeur supérieure avec des fonctionnalités avancées, le rendant fiable pour des solutions PDF dans les environnements C# .NET.

Quel est un problème courant avec la bibliothèque PDF d'Aspose selon l'article ?

La bibliothèque PDF d'Aspose est critiquée pour son modèle de licence complexe et déroutant et sa conversion HTML non fonctionnelle, ce qui peut être difficile pour les utilisateurs à naviguer et à mettre en œuvre efficacement.

Comment iText se comporte-t-il avec des pages Web complexes ?

iText est remarqué pour sa vitesse lors du rendu de contenu statique ; cependant, il a des difficultés avec des pages Web complexes, offrant un support limité pour les développeurs traitant des structures HTML complexes.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite