COMPARAISON DES PRODUITS

Comparaison des produits avec IronPDF

Chaknith Bin
Chaknith Bin
février 21, 2023
Partager:

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

Dans cet article, Jeff analyse et compare la bibliothèque IronPDF avec trois autres bibliothèques PDF de premier plan pour C#.NET : Aspose, SyncFusion et iTextPdf


Introduction

J'étudie l'ensemble de l'expérience du développeur qui interagit avec trois produits commerciaux de gestion de PDF pour les développeurs et je les compare à l'expérience d'IronPDF. Nous comparerons et évaluerons chaque produit dans les domaines suivants :

  1. Expérience en matière de découverte et d'acquisition

  2. Clarté des licences

  3. Compatibilité

  4. L'expérience de la mise en route

  5. Facilité d'utilisation de l'API pour un développeur C#

  6. Qualité de la documentation, y compris les échantillons de code et les tutoriels

  7. Capacités de conversion de HTML en PDF

    1. Conformité CSS3

    2. Conformité à HTML 5

    3. Conformité JavaScript

    4. Soutien au formulaire de génération

    5. Fidélité du rendu
  8. Support technique

  9. Cadence de publication et développement des fonctionnalités

    Nous conclurons par une fiche d'évaluation finale des outils.

Découverte et acquisition

Les développeurs ont le choix entre un grand nombre de produits PDF. Comment peuvent-ils distinguer les produits et choisir celui qui convient à leur projet ? Les développeurs C# recherchent des outils logiciels à trois endroits principaux : les moteurs de recherche, GitHub et NuGet. Nous rechercherons "PDF Software C#" sur DuckDuckGo, un moteur de recherche privé, et chercherons ces outils PDF sur GitHub ainsi que sur NuGet.org. NuGet est le référentiel de paquets .NET.

Non trouvé
Tableau 1. Acquisition à partir de moteurs de recherche typiques

Product

DuckDuckGo

GitHub

NuGet

Remarques : J'ai limité la recherche aux 100 premiers résultats pour chaque service et n'ai pas pu trouver le dépôt GitHub de IronPDF ainsi que le site web 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 produits à partir de leurs sites web.

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

Comparaison des produits avec IronPDF, Figure 1 : Découverte des téléchargements IronPDF

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

Le bouton de téléchargement renvoie à NuGet.org et aux instructions standard d'installation des paquets .NET.

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

Comparaison des produits avec IronPDF, Figure 2 : Sélecteur de langage Aspose.PDF

Figure 2 - Sélecteur de langue Aspose.PDF

Comparaison des produits avec IronPDF, Figure 3 : Aspose.PDF Download Discovery

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

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

Comparaison des produits avec IronPDF, Figure 4 : Page de téléchargement d'Aspose

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

SyncFusion a classé sa bibliothèque de gestion PDF sous "Traitement de documents - PDF". Leur sous-site ressemble à ce qui suit :

Comparaison des produits avec IronPDF, Figure 5 : SyncFusion PDF Discovery

Figure 5 - SyncFusion PDF Discovery

Vous devez ensuite remplir un formulaire pour créer un compte sur leur site web, en indiquant une adresse électronique, un numéro de téléphone et le nom de votre 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 à partir de NuGet, mais ils disent que le programme d'installation 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 offrant de l'aide pour démarrer. Le ton des courriels et des appels téléphoniques était amical, 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 :

Comparaison des produits avec IronPDF, Figure 6 : Découverte d'iTextPDF

Figure 7 - Découverte d'iTextPDF

L'écran de téléchargement propose trois options de téléchargement, avec l'obligation de s'inscrire avec le numéro de téléphone, l'adresse électronique, l'intitulé du poste et le nom de l'entreprise.

Comparaison des produits avec IronPDF, Figure 7 : Écran de téléchargement d'iText

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

J'ai trouvé le nombre de choix proposés par iText écrasant et je ne savais pas quoi télécharger. J'ai choisi iText 7 et j'ai été dirigé vers un autre écran pour choisir parmi neuf produits PDF à télécharger. Une fois de plus, j'ai trouvé cela déroutant et j'ai hésité sur les bibliothèques et les 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é d'utiliser leur site portail avec les informations d'identification fournies, mais je n'ai pas pu accéder au site.

Clarté des licences

Pour toute bibliothèque téléchargée par un développeur, la licence détermine si et comment il peut utiliser le produit dans le cadre de son projet. Une licence plus permissive permettra à l'outil d'être livré avec une application mobile ou de bureau, et des licences plus restrictives peuvent limiter l'utilisation de l'outil à un serveur protégé.

IronPDF fournit un bouton clair sur la page d'accueil, à côté du bouton 'Téléchargement gratuit de NuGet' qui renvoie aux conditions de licence. La page qui en résulte indique clairement le nombre de développeurs couverts et le nombre de projets pour lesquels le produit peut être utilisé. Le nombre de bureaux d'une organisation est limité. La redistribution du logiciel en tant que produit SaaS ou application native nécessite un droit de licence supplémentaire.

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

Projets de sites web destinés au public, y compris l'assistance :

Table 2 - Pricing Comparison

Inclusion

IronPDF

Syncfusion

AsposePDF

iText

1 website, 1 developer, 1 location, Support

$749

$2,495

$5,394

10 websites, 10 developers, 10 locations, Support

$1,999$13,990$28,771

Unlimited websites, Support

$3,999

N/A

$25,785+ (per year)

Comparaison des produits avec IronPDF, Figure 8 : Modèle de licence d'Aspose

Figure 8 - Modèle de licence Aspose

SyncFusion propose un tarif unique pour leur produit File Formats qui inclut le support pour tous les types d'applications .NET. Les frais sont facturés par développeur, avec une réduction de tarif pour la deuxième année d'un contrat. Il n'y a pas de limites liées à la taille de l'organisation ou au nombre de projets pour lesquels le produit est utilisé. Ils proposent également une licence communautaire gratuite pour les entreprises en phase de démarrage.

Comparaison des produits avec IronPDF, Figure 9 : Licences de SyncFusion

Figure 9 - Licence SyncFusion

iText propose plusieurs produits disponibles en open source, mais ils donnent l'impression que vous devez acheter une licence pour utiliser le produit.

Comparaison des produits avec IronPDF, Figure 10 : Produit Open Source iText

Figure 10 - Produit iText Open Source

L'option d'achat d'une licence commerciale conduit à un écran où aucune option d'achat n'est immédiatement listée. Il existe un outil de configuration que vous devez compléter avec des informations sur votre localisation, votre langue, votre volume d'utilisation et les produits que vous souhaitez utiliser. L'outil propose ensuite un devis pour la licence commerciale.

Comparaison des produits avec IronPDF, Figure 11 : Outil de configuration de la licence iText

Figure 11 - Outil de configuration de la licence iText

Si le produit est disponible en code source libre, 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 en utilisant leur bibliothèque dans ce modèle. Il s'agit d'une option intéressante, mais qui risque d'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é promis sur chaque site web. Des recherches supplémentaires sont nécessaires pour déterminer la compatibilité avec les différents fournisseurs d'hébergement et les outils d'hébergement tels que Docker.

Oui
Tableau 3 - Compatibilité promise sur le site web

Environment

IronPDF

Aspose

SyncFusion

iText

Aspose est le seul produit qui prétend fonctionner avec des applications COM, généralement un besoin hérité pour les développeurs. iText ne répertorie pas les plateformes prises en charge sur son site web, et une analyse de leurs packages NuGet indique la prise en charge des plateformes indiquées. SyncFusion mentionne la prise en charge de plusieurs frameworks d'interface utilisateur, mais pas de versions spécifiques d'exécution. iText était le seul produit en dehors d'IronPDF à prétendre prendre en charge un service cloud, avec une bannière mettant en avant la prise en charge d'AWS.

Comparaison des produits avec IronPDF, Figure 12 : Prise en charge d'iText sur AWS

Figure 12 - Support iText sur AWS

Expérience de démarrage

J'ai examiné chacun des produits et leur expérience de démarrage, telle qu'elle est décrite sur leur site web. Il s'agit des instructions "créez votre première application avec le produit" pour chacun de ces produits.

IronPDF

J'ai pu installer et démarrer avec une version d'exemple d'IronPDF en utilisant NuGet et une ligne de code. Très pratique, il n'a pas encombré mon système.

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

Le code d'exemple est clair et fonctionne bien avec le formatage .NET 6 / C# 10. Le bloc de code en ligne est doté d'un bouton "copier dans le presse-papiers" qui permet de l'exécuter en un clin d'œil.

Le fichier est écrit dans le dossier bin/ sous le projet, et pour un échantillon rapide, il fonctionne. J'aurais aimé qu'elle soit écrite à côté du fichier de code que je viens d'écrire, car certaines personnes ne savent peut-être pas qu'il faut chercher le contenu dans le dossier bin/.

Aspose

J'ai dû installer un gros téléchargement, d'une taille de 217 Mo, pour commencer à utiliser les bibliothèques Aspose sur mon système. Cette opération n'installe aucune application, mais place simplement les bibliothèques pour Aspose sur le disque.

L'exemple Aspose se trouve dans leur documentation, dans la section "Get Started", ce qui le rend un peu plus difficile à trouver. L'exemple de code sur Aspose's Hello World Example inclut du texte descriptif qui explique ce que le code essaie de faire et semble un peu répétitif avec les commentaires dans le code.

L'exemple Aspose ne fonctionne pas comme prévu et doit être amélioré. Lors de l'examen 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 le disque dans C:\Program Files (x86)\Aspose\Aspose.PDF for .NET\Bin\net6.0 -- Ce n'est pas la méthode utilisée par les développeurs .NET pour charger des bibliothèques en 2022, préférant plutôt les packages NuGet.
  • Il n'y a pas d'instructions indiquant comment ajouter la référence et quelles références ajouter.
  • Lorsque j'ai ajouté une référence au seul fichier Aspose.Pdf.dll, le code du projet présenté sur la page ne s'est pas compilé.
  • J'ai ajouté les instructions using manquantes et modifié le code pour le compiler, mais il n'a pas pu s'exécuter en raison d'autres références manquantes.
  • Le projet tente d'écrire dans un dossier "Samples". Lorsque j'ai essayé de faire fonctionner ce projet, je n'avais pas ce dossier sur le disque, et mon projet d'exemple a échoué parce que le dossier n'existait pas.
  • L'exemple de PDF généré contient un bloc de texte "Hello World" et un filigrane fuchsia indiquant qu'il s'agit d'une version de démonstration du logiciel.

SyncFusion

J'ai dû télécharger un gros fichier de 874 Mo pour commencer, et l'installation m'a obligé à me connecter à un serveur Syncfusion pour extraire et travailler avec les bibliothèques. Le programme d'installation a créé une application "Panneau de contrôle" qui m'a permis de naviguer dans un certain nombre de démos sur le disque.

Comparaison des produits avec IronPDF, Figure 13 : SyncFusion's Control Panel Application

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

La démo de SyncFusion se trouve à peu près à mi-chemin de leur page produit sur Syncfusion's PDF Framework for .NET avec un fond bleu et un texte bleu clair dessus. Selon Lighthouse, le contraste est faible et n'est pas accessible à certains utilisateurs.

J'ai collé le code de Syncfusion dans Visual Studio et je n'ai pas pu faire en sorte que Visual Studio génère une "déclaration d'utilisation" appropriée pour les objets auxquels il est fait référence dans le code de démonstration. En fait, lorsque j'ai demandé à Visual Studio d'essayer de localiser et de générer une instruction d'utilisation, il m'a renvoyé à l'installation d'un paquet concurrent :

Comparaison des produits avec IronPDF, Figure 14 : Visual Studio me suggère d'installer iTextSharp pour utiliser SyncFusion

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

Le code de l'échantillon 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 le contenu des fichiers en mémoire. J'ai modifié le code pour qu'il écrive dans un fichier sur le disque, et il a correctement généré un fichier contenant "Hello World".

iText

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

Il m'a été demandé de télécharger un paquet d'installation à partir de leur portail client, et un jour après m'être inscrit, j'ai reçu un courriel à 5 heures du matin avec des instructions pour m'inscrire. Les identifiants n'ont pas fonctionné, et j'ai à la place téléchargé et installé les paquets communautaires disponibles sur NuGet.

L'exemple de code fourni pour iText7 ne fonctionne pas comme prévu. Il manque également à ce code une poignée d'instructions d'utilisation, mais une fois qu'elles ont été ajoutées, l'application a généré un fichier PDF et l'a écrit dans le dossier bin/ du projet.

Facilité d'utilisation pour un développeur C

Cet élément d'évaluation porte sur l'API et les interactions que les développeurs auront avec la bibliothèque. Chacun de ces outils propose plusieurs façons de créer et d'interagir avec les documents PDF. Jetons un coup d'œil à chacun d'entre eux.

Documentation

La documentation relative au produit est ce qui fera la différence à long terme avec les développeurs. Au fur et à mesure qu'ils se plongent dans la matière et qu'ils ont besoin de fonctions plus avancées, quelle est la rapidité avec laquelle ils peuvent trouver ce matériel et y a-t-il des exemples fournis qui permettent d'enseigner ces concepts.

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

IronPDF

Les documents de l'API sont clairs et bien organisés, avec une table des matières sur le panneau de gauche et un filtre en temps réel. Le champ de recherche en haut à droite comprend également un filtre en direct et renvoie rapidement plusieurs articles sur les différents composants qui fournissent les fonctionnalités de Signature. Le site de l'API dispose d'un mode clair et d'un mode foncé, une fonctionnalité appréciée des développeurs.

Comparaison des produits avec IronPDF, Figure 15 : Résultats de la recherche de signature dans l'API IronPDF

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

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

Aspose

La documentation de l'API Aspose m'a renvoyé à la classe PdfFileSignature lorsque j'ai cherché Signature. Cette page, à l'instar de celle d'IronPDF, montre les détails de la classe PdfFileSignature, mais n'inclut pas de liens vers des démonstrations ni ne décrit comment utiliser la classe.

Je suis retourné à la page de base de la documentation Aspose à Documentation Aspose PDF for .NET et j'ai recherché "signature". J'ai ensuite reçu une liste d'articles pertinents et j'ai cliqué sur l'article 'Ajouter une signature dans un fichier PDF' à Aspose Add Signature in PDF.

SyncFusion

La page de documentation de base de SyncFusion pour le produit des formats de fichiers PDF se trouve à Aperçu des formats de fichiers PDF de Syncfusion et a nécessité quelques clics sur leur site pour la trouver. Je n'ai pas eu à chercher bien loin pour trouver l'échantillon de signature en première page de la documentation.

Il n'y a pas de documents API qui supportent la fonction de signature digitale disponible sur le site de SyncFusion.

iText

La documentation de l'API pour iText est très complète et générée à partir de chaque version publiée. Il s'agit d'une présentation standard que l'on retrouve dans d'autres bibliothèques sur l'internet. En cherchant une signature, j'ai trouvé quelques classes avec de très bonnes descriptions de ces fonctionnalités, mais là encore, pas de liens vers des exemples.

J'ai cherché un exemple de signature sur le site web d'iText, mais je n'ai pas pu en trouver. J'ai plutôt eu accès à plusieurs articles de blog annonçant de nouveaux partenariats.

API

L'API mise à disposition par chacun des outils est très descriptive et chacun adopte sa propre approche pour donner au développeur un accès complet à la création et à la gestion du contenu d'un document PDF. Heureusement, tous les frameworks disposent d'astuces de saisie automatique complètes qui fournissent une excellente documentation en ligne lorsque vous travaillez avec leurs outils dans un éditeur de code moderne tel que Visual Studio ou Visual Studio Code, qui offre des capacités de saisie automatique.

IronPDF

Les API d'IronPDF facilitent les interactions très difficiles et complexes grâce à des commandes simplifiées telles que "RenderHtmlAsPdf", tout en offrant un accès profond à la création et au placement du contenu, à la sécurité, aux métadonnées et aux formes du document. En tant que développeur, ces API "correspondent à ma façon de penser" en ce qui concerne le rendu du contenu.

Les noms et les termes utilisés par les API d'IronPDF indiquent clairement qu'il s'agit du rendu d'un document ou de la construction d'un document. Les propriétés de temps de certains paramètres sont des entiers représentant des millisecondes, alors que j'aurais préféré un type TimeSpan natif. Enfin, j'aimerais que les types Settings et Options soient dotés d'une API de configuration moderne et fluide comme celle-ci :

var Renderer = new IronPdf.ChromePdfRenderer(options => {
  RenderDelay = TimeSpan.FromSeconds(1)
});
var Renderer = new IronPdf.ChromePdfRenderer(options => {
  RenderDelay = TimeSpan.FromSeconds(1)
});
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

SyncFusion

Les API de SyncFusion sont claires et donnent un contrôle très descriptif sur la façon d'interagir avec leurs outils de conversion. Il n'y a pas de raccourcis ici, tout est nécessaire, et vous devez lui indiquer les outils que vous utilisez, aucune valeur par défaut n'étant disponible. Les paramètres sont très étendus et permettent de contrôler finement tous les éléments, y compris l'emplacement du moteur de rendu WebKit sur le disque.

Cette configuration supplémentaire, bien qu'elle ne soit pas nécessaire dans certaines installations, a causé des problèmes à certaines personnes dans le passé et dans les versions futures, SyncFusion promet qu'il n'y aura pas de problème.

Aspose

L'API d'Aspose est extrêmement verbeuse et je me demande s'ils essaient de rendre les développeurs plus productifs. La quantité de configuration nécessaire pour charger un document depuis un site web est stupéfiante, dix lignes de code, soit deux fois plus que SyncFusion (cinq).

Par exemple, Aspose ne dispose pas d'API 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 la façon de créer des sections du document n'est pas claire. Compte tenu du caractère explicite des API et de la faible qualité de la documentation, il est au mieux difficile de travailler avec iText.

HTML vers PDF

J'ai ensuite voulu 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 dans le dépôt GitHub de Jeff pour les comparaisons PDF que vous pouvez consulter pour en savoir plus sur la manière dont j'ai effectué chacun de ces tests. J'ai également mis de côté une copie de chacun des PDF résultants là-bas pour que vous puissiez les examiner. Je testerai chaque produit pour :

  • Facilité de conversion d'une page d'un site web statique qui fournit du HTML pur. Nous utiliserons le site web statique de KlipTok pour alimenter le moteur de recherche du site web de clips Twitch KlipTok.com. Ce site web ciblé se trouve à l'adresse suivante : KlipTok Static Site et ne nécessite pas de rendu nécessitant un navigateur.
  • Rendu de ESPN.com, un site avec beaucoup de JavaScript et de CSS3 qui fournit 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 web de référence est très simple, sans CSS, et ne contient que du texte avec des liens et des images.

Comparaisons de produits avec IronPDF, Figure 16 : Le site web de référence pour les tests statiques sur le web

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

IronPDF

Il s'agissait d'un simple code de trois lignes à exécuter, 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 délai de rendu, et avec cette configuration, j'ai pu rendre un PDF qui incluait les images appropriées sur la page.

Avec la version test de l'outil, un filigrane est inclus dans le PDF rendu. Dans la version sous licence complète, ce filigrane n'est pas présent.

Comparaisons de produits avec IronPDF, Figure 16 : Le site web de référence pour les tests statiques sur le web

Figure 17 - Rendu IronPDF du site statique

SyncFusion

SyncFusion a été un voyage curieux et déroutant. Leur documentation fait référence à plusieurs manières différentes de rendre et de délivrer du HTML et du PDF avec différents numéros de version et différents cadres nécessitant différents codes et configurations ainsi que l'installation d'outils binaires afin de fonctionner correctement.

Comme dans la démonstration d'IronPDF, SyncFusion n'a pas rendu les images de la page et a fourni un PDF avec de très petites marges.

Avec la version test de l'outil, un filigrane est inclus dans le PDF rendu. Dans la version sous licence complète, ce filigrane n'est pas présent.

Comparaison des produits avec IronPDF, Figure 18 : Rendu du site statique par SyncFusion

Figure 18 - Rendu SyncFusion du site statique.

Aspose

Aspose propose des instructions très claires sur la manière d'utiliser ses outils. Cependant, d'après les instructions sur leur site Web pour convertir un site Web en PDF, ils ont un bug important 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 livre électronique pour obtenir l'exemple de code que nous recherchions pour exécuter cet exemple. Sans modification du code, sans configuration supplémentaire et avec quatre lignes de code, nous avons obtenu un PDF de très bonne qualité, sans filigrane et avec de bonnes marges.

Comparaison des produits avec IronPDF, Figure 19 : Rendu iText du site statique

Figure 19 - Rendu iText du site statique.

Tableau 4 - Comparaison des performances entre HTML et PDF pour un site statique

Tool Used

Speed in milliseconds (lower is better)

IronPDF

835ms

SyncFusion

1799ms

Aspose

N/A

iText

2975ms

Scénario 2 : Site web complet pour les médias - ESPN.com

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

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

Comparaison des produits avec IronPDF, Figure 20 : Rendu du site statique par SyncFusion

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

Les scores en haut et le rapport sur l'état du jeu au milieu de l'écran sont placés avec JavaScript, et tous les positionnements et couleurs sont gérés avec CSS3.

IronPDF

Le rendu IronPDF a été en mesure de dupliquer et de charger fidèlement le contenu dynamique, mais il semble que la page ait été rendue pour un appareil mobile avec des éléments de contenu divisés en segments distincts et en mosaïques.

Comparaison des produits avec IronPDF, Figure 21 : Rendu d'ESPN par IronPDF

Figure 21 - Rendu IronPDF de ESPN

SyncFusion

SyncFusion a effectué un rendu similaire de type "mobile" avec un contenu empilé verticalement. Cependant, nous avons perdu plusieurs images qui étaient chargées dynamiquement par le site ESPN et une partie du formatage des polices est également perdue :

Comparaison des produits avec IronPDF, Figure 22 : SyncFusion Rendering of ESPN

Figure 22 - Rendu SyncFusion de ESPN

iText

Pour ce test, iText a refusé de s'exécuter et a provoqué une exception de type NullReferenceException, ce qui l'a empêché d'essayer d'afficher le site web.

Tableau 4 - Comparaison des performances entre HTML et PDF pour un site complexe

Tool Used

Speed in milliseconds (lower is better)

IronPDF

835ms

SyncFusion

1799ms

Aspose

N/A

iText

2975ms

Site web à base de 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 s'affiche avec Bootstrap 5 dans Firefox de la manière suivante :

Comparaison des produits avec IronPDF, Figure 23 : Site Web des formulaires dans Firefox

Figure 23 - Site web du 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, avec un rendu rapide dans une mise en page similaire adaptée aux mobiles, comme en témoigne le bouton de menu hamburger en haut à droite. Les filigranes en travers de la page sont gênants dans une version de test, mais ils sont supprimés dans la version sous licence complète.

Tous les champs de la zone de texte sont rendus sous forme de champs de formulaire PDF avec lesquels je peux interagir, à l'exception des boutons radio et de la case à cocher à la fin. Les zones de texte ne font l'objet d'aucune validation particulière ni d'aucun contrôle du contenu, comme c'est le cas dans le navigateur.

Comparaison des produits avec IronPDF, Figure 24 : Rendu du formulaire par IronPDF

Figure 24 - Rendu IronPDF du formulaire

SyncFusion

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

Site du formulaire rendu par SyncFusion, Figure 25 : Site du formulaire rendu par SyncFusion

Figure 25 - Site du formulaire rendu par SyncFusion

iText

iText a été le plus rapide des trois frameworks pour le rendu du contenu. Toutefois, cette rapidité a un prix. Leur rendu a fourni des balises d'ancrage qui naviguaient lorsqu'on cliquait dessus, mais qui n'atteignaient pas le site web d'origine. Toutes les mises en forme de bootstrap ont été perdues, et tous les champs de formulaire ont été rendus sous forme de simples boîtes.

Site du formulaire rendu par SyncFusion, Figure 26 : Site de formulaire rendu par iText

Figure 26 - Site du formulaire rendu par iText

Tool Used

Speed in milliseconds (lower is better)

IronPDF

835ms

SyncFusion

1799ms

Aspose

N/A

iText

2975ms

Support technique

Chacun de ces cadres dispose de capacités d'assistance et d'une cadence de publication distinctes. Pour un cadre viable, actuellement développé et en pleine croissance, qui prendra en charge une plus grande partie de la norme PDF, nous aimerions qu'une assistance en ligne soit disponible et que des calendriers de publication réguliers soient mis en place.

IronPDF

D'après le site NuGet, il semble qu'IronPDF ait une version toutes les 2 à 4 semaines. Des options d'assistance par chat en direct et par courrier électronique sont disponibles. Il serait bien de voir un forum en ligne ou un serveur Discord / Slack pour discuter avec le support et les autres membres de la communauté IronPDF.

SyncFusion

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

Aspose

Selon NuGet, Aspose.PDF est publié une fois par mois. Ils proposent un service d'assistance gratuit, un service d'assistance payant et des services de conseil payants. Je ne vois pas d'interactions en direct ou d'interactions communautaires disponibles.

iText

NuGet indique qu'iText met à jour leurs packages tous les 2 à 3 mois. Le seul support disponible est un système de suivi des problèmes JIRA en ligne et un formulaire "contactez-nous". Il n'y a pas d'interactions en direct ou de forums hébergés disponibles.

Fiche d'évaluation finale

Dans chaque section de ce document, j'ai classé les produits les uns par rapport aux autres, quatre d'entre eux étant les mieux classés.

Découverte

Category

IronPDF

Aspose

SyncFusion

iText

Notes :

  • Dans Discovery, l'absence d'une bibliothèque d'exemples claire sur GitHub a mis Syncfusion en dernière position, et j'ai privilégié la capacité à trouver le produit sur le moteur de recherche plutôt que sur GitHub.
  • L'acquisition était claire à partir de IronPDF avec un bouton qui menait immédiatement à une page de téléchargement. Les autres ont différents niveaux d'inscription et de processus pour trouver la bibliothèque dont vous avez 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 des choix pour Aspose le place en troisième position, tandis que les options open source / commerciales déroutantes avec la nécessité d'un outil pour calculer votre licence placent iText en dernier.
  • La compatibilité est un peu déroutante si l'on se réfère aux déclarations faites sur les sites web. IronPDF affirme fonctionner sur divers clouds, tandis que les autres outils ne font pas de telles affirmations. Des recherches supplémentaires sont nécessaires au cours du processus de test pour déterminer si les trois outils peuvent être utilisés dans ces environnements.
  • Getting Started a classé IronPDF en premier, car leur code fonctionnait tel quel sans aucune modification. iText avait besoin de quelques mises à jour mineures, et Aspose ne fonctionnait pas du tout et j'ai dû réécrire complètement l'exemple.
  • La structure de l'API fournie par IronPDF est claire et permet aux développeurs de travailler selon une approche très productive du type "donnez-moi les valeurs par défaut et débrouillez-vous pour le reste". SyncFusion propose une approche similaire, mais commence à devenir verbeux. Aspose et iText sont très verbeux dans leur API, et l'absence d'une bonne documentation a poussé iText vers le bas de mon classement.
  • Les notes relatives à la documentation sont marquées, IronPDF et Aspose étant à égalité pour la meilleure expérience, car ils présentent les mêmes fonctionnalités, tandis que SyncFusion et iText manquaient tous deux d'échantillons ou de documentation sur l'API. SyncFusion obtient un léger avantage grâce au contenu exhaustif de son site de documentation.
  • Le test de rendu des sites web a révélé que si iText était le plus rapide, il n'était pas en mesure de reproduire l'apparence du site qui lui était transmis. IronPDF a été en mesure d'offrir une fidélité totale aux CSS et aux JavaScript avec des champs de formulaire interactifs, tandis que SyncFusion avait un rendu JavaScript, quelques capacités CSS, mais pas de champs de formulaire interactifs.
Chaknith Bin
Ingénieur logiciel
Chaknith travaille sur IronXL et IronBarcode. Il possède une expertise approfondie en C# et .NET, aidant à améliorer le logiciel et à soutenir les clients. Ses idées issues des interactions avec les utilisateurs contribuent à de meilleurs produits, une documentation améliorée et une expérience globale enrichie.
< PRÉCÉDENT
Comparaison entre IronPDF et ExpertPDF for .NET
SUIVANT >
itext7 Extraire du texte d'un PDF vs IronPDF (Tutoriel d'exemple de code)