Saltar al pie de página
COMPARACIONES DE PRODUCTOS

Comparaciones de Productos con IronPDF

Este artículo fue escrito por Jeff Fritz, una reconocida autoridad en el Desarrollo .NET.

En este artículo, Jeff revisa y compara la biblioteca IronPDF con otras tres bibliotecas líderes de PDF para C#.NET: Aspose, SyncFusion e iTextPdf.


Estoy investigando toda la experiencia del desarrollador al interactuar con tres productos comerciales de gestión de PDF para desarrolladores y comparándolos con la experiencia de IronPDF. Compararemos y evaluaremos cada producto en las siguientes áreas:

  1. Experiencia de Descubrimiento y Adquisición
  2. Claridad de licencias
  3. Compatibilidad
  4. Experiencia de Inicio
  5. Facilidad de uso de la API para un desarrollador C#
  6. Calidad de la documentación, incluyendo ejemplos de código y tutoriales
  7. Capacidades de HTML a PDF
    1. Cumplimiento de CSS3
    2. Cumplimiento de HTML 5
    3. Cumplimiento de JavaScript
    4. Soporte a Formulario de Generación
    5. Fidelidad de representación
  8. Soporte Técnico
  9. Cadencia de lanzamientos y desarrollo de características

Concluiremos con una tarjeta de puntuación final para las herramientas.

Descubrimiento y adquisición

Los desarrolladores tienen todo un mundo de productos PDF para elegir. ¿Cómo pueden separar los productos y elegir el adecuado para su proyecto? Los desarrolladores de C# buscan en tres lugares principales al investigar herramientas de software: motores de búsqueda, GitHub y NuGet. Buscaremos "PDF Software C#" en DuckDuckGo, un motor de búsqueda privado, y buscaremos estas herramientas de PDF en GitHub así como en NuGet.org. NuGet es el repositorio de paquetes de .NET.

Tabla 1. Adquisición de motores de descubrimiento típicos
ProductoDuckDuckGoGitHubNuGet
IronPDF5No se ha encontrado5
Aspose22373
SyncFusion49Iniciar suscripción8
iTextPDFNo se ha encontrado407

Notas: He limitado la búsqueda a los 100 primeros resultados de cada servicio y no he podido localizar el repositorio GitHub de IronPDF ni el sitio web de iText en DuckDuckGo. SyncFusion no dispone de un repositorio de GitHub con ejemplos de creación de PDF.

Adquisición

Cada uno de los productos tiene un enfoque diferente para la adquisición del producto desde sus sitios web.

IronPDF lo hace claro con un botón de descarga en la página principal.

Producto Comparisons with IronPDF, Figure 1: IronPDF Download Descubrimiento

Figura 1- Descubrimiento de la descarga de IronPDF

El botón de descarga dirige a NuGet.org y las instrucciones estándar de instalación de paquetes .NET.

Aspose tiene un mecanismo de clic en la página principal donde debes elegir un idioma, y luego se te presentan los detalles sobre esa versión del producto y un botón de descarga.

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

Figura 2 - Selector de idioma de Aspose.PDF

Producto Comparisons with IronPDF, Figure 3: Aspose.PDF Download Descubrimiento

Figura 3 - Descubrimiento de la descarga de Aspose.PDF C#

Aspose te pedirá entonces que descargues las herramientas con una página que contiene instrucciones de NuGet y varios párrafos de material promocional.

Producto Comparisons with IronPDF, Figure 4: Aspose Download Page

Figura 4 - Página de descarga de Aspose

SyncFusion tiene su biblioteca de gestión de PDF archivada bajo "Procesamiento de Documentos - PDF". Su subsitio se ve de la siguiente manera:

Producto Comparisons with IronPDF, Figure 5: SyncFusion PDF Descubrimiento

Figura 5 - Descubrimiento de SyncFusion en PDF

Debes completar un formulario para crear una cuenta en su sitio web, con dirección de correo electrónico, número de teléfono y nombre de la empresa. SyncFusion verifica tu correo electrónico con un mensaje de texto y luego te permite descargar un instalador para su software. También puedes instalar un paquete de prueba desde NuGet, pero dicen que el instalador proporciona el "producto completo". En los días siguientes al registrarme en el sitio web de SyncFusion, recibí dos correos electrónicos y dos llamadas telefónicas ofreciéndome ayuda para empezar. Los correos electrónicos y llamadas telefónicas eran amigables en tono, sin embargo, encontré que las llamadas eran un poco invasivas.

iTextPDF lo hace claro con un producto y un enlace a su producto:

Producto Comparisons with IronPDF, Figure 6: iTextPDF Descubrimiento

Figura 7 - Descubrimiento de iTextPDF

La pantalla de descarga proporciona tres opciones para descargar, con requisitos de registrarse con número de teléfono, correo electrónico, título de trabajo y nombre de la empresa.

Producto Comparisons with IronPDF, Figure 7: iText Download Screen

Figura 7 - Pantalla de descarga de iText

Encontré abrumador el volumen de opciones de iText y no estaba seguro de qué descargar. Elegí iText 7 y luego fui dirigido a otra pantalla para elegir entre nueve productos relacionados con PDF para descargar. Una vez más, encontré esto confuso y me dejó inseguro de qué bibliotecas y herramientas necesitaba para mi proyecto.

Recibí un correo electrónico de seguimiento de iText con un enlace a su portal de clientes y una contraseña generada. Intenté usar su sitio del portal con las credenciales proporcionadas pero no pude acceder al sitio.

Claridad de las licencias

Con cualquier biblioteca que un desarrollador descarga, la licencia determinará si y cómo pueden usar el producto con su proyecto. Una licencia más permisiva permitirá que la herramienta se envíe con una aplicación móvil o de escritorio, y licencias más restrictivas pueden limitar el uso de la herramienta a solo ejecutarse en un servidor protegido.

IronPDF proporciona un botón claro en la página principal, al lado del botón 'Descarga gratuita de NuGet' que enlaza con los términos de licencias. La página resultante hace muy claro cuántos desarrolladores están cubiertos y la cantidad de proyectos con los que se puede usar el producto. Hay una restricción sobre el número de oficinas que tiene una organización. La redistribución del software como producto SaaS o aplicación nativa requiere una tarifa de licencia adicional.

Aspose tiene seis modelos de licencias diferentes disponibles, empaquetadas sin soporte, con soporte, o con soporte y consultoría. Encontré sus opciones bastante confusas, ya que también hay limitaciones sobre los tipos de proyectos con los que puedes usar el producto, el número de desarrolladores con licencia, y el tamaño de la organización.

Proyectos de sitios web de cara al público, incluyendo soporte:

Tabla 2 - Comparación de precios
InclusiónIronPDFSyncfusionAsposePDFiText
1 sitio web, 1 desarrollador, 1 ubicación, Soporte$7992.495 dólares5.394 dólares
10 sitios web, 10 desarrolladores, 10 ubicaciones, Soporte$2,39913.990 $28.771 dólares
Sitios web ilimitados, Soporte$4,799Iniciar suscripción$25.785+ (al año)
Producto Comparisons with IronPDF, Figure 8: Aspose Licencias Model

Figura 8 - Modelo de licencia de Aspose

SyncFusion tiene una tarifa única para su producto de Formatos de Archivo que incluye soporte para todos los tipos de aplicación .NET. La tarifa se cobra por desarrollador, con una reducción de tarifa para el segundo año de un contrato. No hay limitaciones basadas en el tamaño de una organización, o el número de proyectos con los que se usa el producto. También tienen una licencia comunitaria gratis disponible para empresas en etapa de inicio.

Producto Comparisons with IronPDF, Figure 9: SyncFusion Licencias

Figura 9 - Licencias de SyncFusion

iText tiene varios productos disponibles que son de código abierto, pero hacen parecer que necesitas comprar una licencia para usar el producto.

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

Figura 10 - Productoo de código abierto iText

La opción de comprar una licencia comercial lleva a una pantalla sin opciones de compra listadas de inmediato. Hay una herramienta de configuración que debes completar con información sobre tu ubicación, idioma, volumen de uso y productos que te gustaría usar. La herramienta luego da una cotización para la licencia comercial.

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

Figura 11 - Herramienta de configuración de licencias iText

Si el producto está disponible como código abierto, ¿puedo simplemente usar eso sin ninguna opción de soporte comercial? No está claro hasta que haces clic en su sitio de Comunidad iText 7 y descubres que está cubierto bajo la licencia AGPL, que requiere que liberes el código fuente de las aplicaciones que escribes que usan su biblioteca en este modelo. Es una opción interesante, pero podría confundir a los desarrolladores.

Compatibilidad

Con los diferentes modelos de despliegue disponibles para cada producto, hay diferentes niveles de compatibilidad que se prometen en cada sitio web. Se necesita más investigación para determinar la compatibilidad con diferentes proveedores de alojamiento y herramientas de alojamiento como Docker.

Cuadro 3 - Compatibilidad prometida en el sitio web
EntornoIronPDFAsposeSyncFusioniText
CON
Marco .NET
.NET 5
.NET 6
Estándar .NET
Xamarin
MAUI
Azure
AWS
Mac
Linux
Docker

Aspose es el único producto que afirma trabajar con aplicaciones CON, típicamente una necesidad heredada para desarrolladores. iText no lista sus plataformas soportadas en su sitio web, y un escaneo de sus paquetes en NuGet indica soporte para las plataformas indicadas. SyncFusion lista soporte para varios marcos de interfaz de usuario, pero no versiones de runtime específicas. iText fue el único producto además de IronPDF que afirma soporte para un servicio en la nube, con una pancarta destacando soporte para AWS.

Producto Comparisons with IronPDF, Figure 12: iText Soporte on AWS

Figura 12 - Soporte de iText en AWS

Experiencia inicial

Revisé cada uno de los productos y su experiencia de 'Inicio' según lo descrito en sus sitios web. Estas son las instrucciones de "construye tu primera aplicación con el producto" para cada uno de estos productos.

HierroPDF

Pude instalar y comenzar con una versión de muestra de IronPDF usando NuGet, y una línea de código. Muy útil, y no saturó mi sistema.

La muestra de IronPDF en la página de Inicio de IronPDF funciona con una aplicación de consola simple o nativa usando .NET 6 y anteriores. Crea y carga un nuevo PDF con un simple bloque de texto de "Hola Mundo", completando una muestra de código de 5 líneas escribiendo el archivo.

El código de muestra es claro y funciona bien con el formateo de .NET 6 / C# 10. El bloque de código en línea tiene un botón de "copiar al portapapeles" que lo hace muy sencillo de ejecutar.

El archivo se escribe en la carpeta bin/ bajo el proyecto, y para una muestra rápida, funciona. Me hubiera gustado que se escribiera junto al archivo de código que acabo de escribir, ya que algunos no sabrán buscar en la carpeta bin/ el contenido.

Asponer

Tuve que instalar una gran descarga, de 217MB, para comenzar a usar las bibliotecas Aspose en mi sistema. Esto no instaló ninguna aplicación, sino que simplemente colocó las bibliotecas de Aspose en el disco.

La muestra de Aspose está en sus documentos bajo una sección de 'Inicio', lo que la hace un poco más difícil de localizar. El ejemplo de código en Ejemplo de Hola Mundo de Aspose incluye algo de prosa alrededor que explica lo que el código está intentando hacer y se siente un poco repetitivo con los comentarios en código.

La muestra de Aspose no funciona tal como está escrita y necesita mejoras. En mi revisión de su producto, encontré los siguientes problemas:

  • La biblioteca .NET 6 se entrega como un DLL y se almacena en el disco en C:\Program Files (x86)\Aspose\Aspose.PDF for .NET\Bin\net6.0 -- Esto no es cómo los desarrolladores de .NET cargan bibliotecas en 2022, en su lugar prefieren paquetes NuGet.
  • No hay indicaciones sobre cómo agregar la referencia, y qué referencias agregar.
  • Cuando agregué una referencia al único archivo Aspose.Pdf.dll, el código del proyecto presentado en la página no compiló.
    • Agregué las declaraciones using faltantes y ajuste el código para que compilara y no pude ejecutarlo debido a otras referencias faltantes.
  • El proyecto intenta escribir en una carpeta 'Samples'. En mi intento de hacer funcionar este proyecto, no tenía esta carpeta en el disco, y mi proyecto de ejemplo falló debido a que la carpeta no existía.
  • El PDF de muestra generado contiene un bloque de texto 'Hello World' y tiene una marca de agua fucsia que indica que era una versión de demostración del software.

SyncFusion

Tuve que descargar un archivo grande de 874MB para empezar, y la instalación requirió que me registrara en un servidor de Syncfusion para extraer y trabajar con las bibliotecas. El instalador creó una aplicación de 'Panel de Control' que me permitió navegar por una serie de demostraciones en el disco.

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

Figura 13 - Aplicación del panel de control de SyncFusion

La demostración de SyncFusion está situada aproximadamente a mitad de su página de producto en Marco de PDF para .NET de Syncfusion con un fondo azul y texto azul claro sobre él. Según Lighthouse, esto es de bajo contraste y no accesible para algunos usuarios.

Pegué el código de SyncFusion en Visual Studio y no pude lograr que Visual Studio generara una "declaración using" adecuada para los objetos referidos en el código de demostración. De hecho, cuando le pedí a Visual Studio que intentara localizar y generar una declaración using, me refirió a instalar un paquete competidor:

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

Figura 14 - Visual Studio me sugiere que instale iTextSharp para utilizar SyncFusion

El código para la muestra de SyncFusion no hizo nada como se presenta en pantalla. El código de demostración escribe un PDF en un MemoryStream, un objeto que maneja contenidos de archivos en la memoria. Modifiqué el código para escribir en un archivo en el disco, y generó apropiadamente un archivo que contenía "Hello World".

iText

La demo de iText está escrita en un editor de código claro en el medio de su página de inicio de producto. iText 7 Community A diferencia de las otras demostraciones, iText incluyó un enlace para ver el PDF generado por este código.

Se me requirió descargar un paquete de instalación desde su portal de clientes, y un día después de registrarme, recibí un correo electrónico a las 5 am con instrucciones para registrarme. Las credenciales no funcionaron, y en su lugar descargué e instalé los paquetes comunitarios disponibles en NuGet.

El código de muestra proporcionado para iText7 no funciona tal como está escrito. Este código también le faltan un puñado de declaraciones using, pero una vez añadidas la aplicación generó un archivo PDF y lo escribió en la carpeta bin/ del proyecto.

Facilidad de uso para un desarrollador de C

Este elemento de revisión investiga la API e interacciones que los desarrolladores tendrán con la biblioteca. Cada una de estas herramientas tiene varias formas de crear e interactuar con documentos PDF. Echemos un vistazo a cada uno.

Documentación

La documentación del producto es lo que lo hará o lo romperá a largo plazo con los desarrolladores. A medida que profundizan y necesitan características más avanzadas, cuán rápido pueden encontrar ese material y hay muestras proporcionadas que ayuden a enseñar estos conceptos.

En cada uno de estos productos, busqué en su documentación de API la capacidad de agregar firmas digitales a un PDF.

HierroPDF

Los documentos de la API son claros y bien organizados con un panel izquierdo de contenido con un filtro en vivo. El cuadro de búsqueda en la parte superior derecha también incluye un filtro en vivo y rápidamente devolvió varios artículos sobre los varios componentes que brindan características de Firma. El sitio de la API tiene un modo claro y oscuro, una buena característica que prefieren los desarrolladores.

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

Figura 15 - Resultados de la búsqueda de IronPDF API para la firma

El documento de la clase PdfSignature describe el objeto pero no incluye enlaces a códigos de muestra. Busqué en el sitio web de ironpdf.com "firma" y encontré código de muestra que referencia el objeto PdfSignature en Ejemplo de Firmar un PDF Digitalmente de IronPDF.

Asponer

Los documentos de API de Aspose me enlazaron a su clase PdfFileSignature cuando busqué por Firma. Esta página, al igual que la de IronPDF, muestra los detalles de la clase PdfFileSignature, pero no incluye ningún enlace a demostraciones o describe cómo usar la clase.

Regresé a la página base de documentación de Aspose en Documentación de Aspose PDF para .NET y busqué por firma. Luego se me presentó una lista de artículos relevantes y hice clic en el artículo 'Agregar Firma en archivo PDF' en Aspose Agregar Firma en PDF.

SyncFusion

La página base de documentación de SyncFusion para el producto de formatos de archivo PDF está en Visión General de Formatos de Archivo PDF de SyncFusion y tomó algunos clics a través de su sitio para encontrarlo. No tuve que buscar mucho para encontrar la muestra de firma ya que se encuentra en la página principal de la documentación.

No hay documentos de API que apoyen la característica de firma digital disponibles en el sitio de SyncFusion.

iText

La documentación de la API para iText es muy completa y generada a partir de cada versión liberada. Es un aspecto estándar que verás de otras bibliotecas en internet. Buscar por firma encontró algunas clases con algunas descripciones excelentes sobre esas características, pero nuevamente sin enlaces a muestras.

Busqué en el sitio web de iText una muestra de firma y no pude localizar una, y en cambio se me presentaron varios artículos de blog anunciando nuevas asociaciones.

API

La API puesta a disposición por cada una de las herramientas es muy descriptiva y cada una toma su propio enfoque para darle al desarrollador acceso completo a la creación y gestión del contenido de un documento PDF. Afortunadamente, todos los marcos tienen completas sugerencias de autocompletado que brindan una gran documentación en línea mientras trabajas con sus herramientas en un editor de código moderno como Visual Studio o Visual Studio Code que proporciona capacidades de autocompletado.

HierroPDF

Las API de IronPDF hacen muy fáciles y complejas interacciones con comandos simplificados como "RenderHtmlAsPdf", pero aún proporcionan un acceso profundo a la creación y colocación de contenido, seguridad, metadatos y formas del documento. Como desarrollador, estas API "hablan de la manera en que pienso" sobre renderizar contenido.

Los nombres y términos utilizados por las API de IronPDF dejan claro que estás representando un documento o construyendo un documento. Las propiedades de tiempo en algunas de las configuraciones son enteros que representan milisegundos donde hubiera preferido un tipo TimeSpan nativo. Finalmente, me gustaría ver tipos de Configuraciones y Opciones proporcionados con una moderna API de configuración fluida como esta:

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

Las API de SyncFusion son claras y dan un control muy descriptivo sobre cómo interactuar con sus herramientas de conversión. No hay atajos aquí, todo es requerido, y debes decirle qué herramientas estás usando sin ningún valor predeterminado disponible. Las Configuraciones son extensas con un control granulado sobre todo, incluyendo la ubicación del renderizador WebKit en el disco.

Esta configuración adicional, aunque no es necesaria en algunas instalaciones, ha causado problemas para las personas en el pasado y en versiones futuras SyncFusion promete que no será un problema.

Asponer

La API de Aspose es extremadamente verbose y me hace preguntarme si está tratando de hacer más productivos a los desarrolladores en absoluto. La cantidad de configuración necesaria para cargar un documento desde un sitio web es asombrosa, diez líneas de código o el doble de líneas que SyncFusion (cinco).

Un ejemplo de esto es que Aspose no tiene APIs que te permitan especificar una URL para buscar y convertir.

iText

iText tiene una API similar a Aspose, muy detallada y permite la interacción directa para escribir en el documento con diferentes tipos de datos, pero no está claro cómo crear secciones del documento. Con lo explícitas que son las APIs y la baja calidad de la documentación, trabajar con iText es difícil en el mejor de los casos.

HTML a PDF

Quería probar las capacidades de renderizado y velocidad de cada herramienta al convertir contenido HTML a un PDF. He escrito un código que está disponible en el repositorio GitHub de Jeff para Comparaciones PDF que puedes revisar para obtener más información sobre cómo realicé cada una de estas pruebas. También he almacenado una copia de cada uno de los PDFs resultantes allí para que los revises. Probaré cada producto por:

  • Facilidad de conversión de una página de un sitio web estático que proporciona HTML directo. Utilizaremos el sitio web estático KlipTok utilizado para potenciar el consumo de motores de búsqueda del sitio web de clips de Twitch KlipTok.com. (Nota: El sitio web está inactivo según la última fecha de modificación de este artículo)
  • Renderizado de ESPN.com, un sitio con mucho JavaScript y CSS3 que entrega la página de inicio del sitio.
  • Renderizado de un formulario en un sitio local para probar el uso y la presentación de cada uno de los campos en el PDF resultante.

Escenario 1: Pruebas estáticas de sitios web

El sitio web de referencia es muy simple, sin CSS y solo texto con enlaces e imágenes.

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

Figura 16 - Sitio web de referencia para Static Web Tests

HierroPDF

Fueron tres simples líneas de código para ejecutar, y el rendimiento se veía bien a 835ms. Sin embargo, al abrir el PDF, descubrí que ninguna de las imágenes estaba incluida en el renderizado, un resultado decepcionante con la configuración predeterminada.

Después de un poco de exploración, descubrí que podría agregar un retraso de renderizado, y con esta configuración, pude renderizar un PDF que incluía las imágenes correctas en la página.

Con la versión de prueba de la herramienta, hay una marca de agua que se incluye en el PDF renderizado. En la versión con licencia completa, esta marca de agua no está presente.

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

Figura 17 - Representación IronPDF del sitio estático

SyncFusion

SyncFusion fue un viaje curioso y confuso. Su documentación hace referencia a varias formas diferentes de renderizar y entregar HTML y PDF con diferentes números de versión y diferentes marcos que requieren diferentes códigos y configuraciones, así como instalaciones de herramientas binarias para funcionar correctamente.

Al igual que la demostración de IronPDF, SyncFusion no renderizó las imágenes para la página y entregó un PDF con márgenes muy pequeños.

Con la versión de prueba de la herramienta, hay una marca de agua que se incluye en el PDF renderizado. En la versión con licencia completa, esta marca de agua no está presente.

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

Figura 18 - Representación de SyncFusion del sitio estático.

Asponer

Aspose tiene un conjunto de instrucciones muy claro sobre cómo usar sus herramientas. Sin embargo, basado en las instrucciones en su sitio web para convertir un sitio web a un PDF, tienen un error significativo que impide que la función funcione. Además, su herramienta en línea que convierte un sitio web a un PDF ya no funciona.

iText

La documentación de iText no es tan fácil de encontrar, y tuvimos que leer un eBook para obtener el código de muestra que estábamos buscando para ejecutar esta muestra. Sin cambios en el código, sin configuración adicional y con cuatro líneas de código rendimos un PDF de muy buen aspecto sin marcas de agua y buenos márgenes.

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

Figura 19 - Representación iText del sitio estático.

Tabla 4 - Comparación del rendimiento de HTML a PDF para un sitio estático
Herramienta utilizadaVelocidad en milisegundos (cuanto más baja, mejor)
IronPDF835ms
SyncFusion1799ms
AsposeIniciar suscripción
iText2975ms

Escenario 2: Sitio web completo de medios de comunicación - ESPN.com

Para esta prueba, estamos usando ESPN.com, un sitio web de deportes que tiene mucho CSS, imágenes y JavaScript en la página. Dado que Aspose no funcionó para la prueba simple, los omitiremos en adelante. Utilizaremos el mismo código que utilizamos para la última demostración para crear estas capturas, solo sustituyendo la dirección del sitio web.

Para referencia, aquí está la apariencia de ESPN en el momento de esta prueba:

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

Figura 20 - Representación completa de ESPN.com en el navegador

Las puntuaciones en la parte superior y el informe del estado del juego en el medio de la pantalla se colocan con JavaScript, y todo el posicionamiento y los colores se manejan con CSS3.

HierroPDF

El renderizado de IronPDF pudo duplicar fielmente y cargar el contenido dinámico, sin embargo, parece que la página fue renderizada para un dispositivo móvil con elementos de contenido divididos en segmentos separados y en mosaico.

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

Figura 21 - Renderización IronPDF de ESPN

SyncFusion

SyncFusion realizó un renderizado similar 'estilo móvil' con el contenido en mosaico verticalmente. Sin embargo, hemos perdido varias imágenes que fueron cargadas dinámicamente por el sitio de ESPN y también se ha perdido algo del formato de fuente:

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

Figura 22 - Representación de ESPN en SyncFusion

iText

Para esta prueba, iText se negó a funcionar y estaba lanzando una NullReferenceException, impidiendo que intentara renderizar el sitio web.

Tabla 4 - Comparación del rendimiento de HTML a PDF para un sitio complejo
Herramienta utilizadaVelocidad en milisegundos (cuanto más baja, mejor)
IronPDF835ms
SyncFusion1799ms
AsposeIniciar suscripción
iText2975ms

Sitio web basado en formularios

La prueba final es generar un PDF con campos de entrada de formulario basados en un sitio web. El formulario de suscripción al boletín que escribí está disponible en el repositorio de GitHub y se renderiza con Bootstrap 5 en Firefox de la siguiente manera:

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

Figura 23 - Sitio web de formularios en Firefox

Nota: el Estado es un combobox, el campo Teléfono es un campo telefónico, el Correo electrónico es un campo de correo electrónico y el Número de zapato es un campo numérico.

HierroPDF

Iron realmente brilla en esta prueba, renderizando rápidamente en un diseño amigable para dispositivos móviles similar como se evidencia por el botón de menú hamburguesa en la esquina superior derecha. Las marcas de agua a través de la página son molestas en una versión de prueba, pero se eliminan en la versión con licencia completa.

Todos los campos de texto se renderizan como campos de formulario PDF con los que puedo interactuar, excepto los botones de radio y la casilla de verificación al final. Los cuadros de texto no tienen validación particular ni refuerzo de contenido en ellos como en el navegador.

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

Figura 24 - Representación del formulario en IronPDF

SyncFusion

SyncFusion renderizó lo que parece ser la versión completa de escritorio del sitio web, ya que no hay botón de menú hamburguesa presente. Los elementos del formulario renderizados aparecen como cuadrados, botones y cajas en la pantalla, pero ninguno de ellos es un campo de entrada de datos estándar de PDF. Los enlaces en el encabezado y pie de página, aunque están oscurecidos por la marca de agua, son clicables.

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

Figura 25 - Sitio de formularios renderizado por SyncFusion

iText

iText fue fácilmente el más rápido de los tres marcos al renderizar el contenido. Sin embargo, esa velocidad tuvo un precio. Su renderizado entregó etiquetas de anclaje que navegaban al hacer clic, pero no alcanzaron el sitio web original. Todo el formato de bootstrap se perdió, y todos los campos de formulario se renderizaron como simples cuadros.

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

Figura 26 - Sitio de formularios renderizado por iText

Herramienta utilizadaVelocidad en milisegundos (cuanto más baja, mejor)
IronPDF835ms
SyncFusion1799ms
AsposeIniciar suscripción
iText2975ms

Soporte técnico

Cada uno de estos marcos tiene capacidades de soporte separadas disponibles y un ritmo de lanzamiento. Para un marco viable, actualmente desarrollado y en crecimiento que admitirá más del estándar PDF, nos gustaría ver soporte en línea disponible y cronogramas de lanzamiento regulares.

HierroPDF

Desde el sitio web de NuGet, parece que IronPDF tiene un lanzamiento cada 2-4 semanas. Hay opciones de soporte en vivo por chat y correo electrónico disponibles. Sería bueno ver un foro en línea o un servidor de Discord / Slack para chatear con el soporte y otros miembros de la comunidad de IronPDF.

SyncFusion

Según NuGet, liberan una actualización de sus bibliotecas PDF una vez a la semana. SyncFusion tiene foros en línea y un sistema de emisión de tickets de soporte en línea. No hay opciones de soporte por chat en vivo de SyncFusion.

Asponer

Según NuGet, Aspose.PDF se lanza una vez al mes. Ofrecen una mesa de ayuda gratuita, una mesa de ayuda paga y consultoría paga. No veo ninguno de los intercambios ni interacciones comunitarias disponibles.

iText

NuGet informa que iText actualiza sus paquetes cada 2-3 meses. Su único soporte disponible es a través de un rastreador de problemas JIRA en línea y un formulario de 'contacto'. No hay interacciones en vivo ni foros disponibles.

Calificación final

En cada sección de este documento, clasifiqué los productos entre sí con cuatro siendo el más alto clasificado.

CategoríaIronPDFAsposeSyncFusioniText
Descubrimiento3421
Adquisición4321
Licencias3241
Compatibilidad4123
Empezando4123
API4231
Documentación4432
Renderizar sitios web4032
Soporte3421
Total (cuanto más alto, mejor)33212315

Notas:

  • En el Descubrimiento, la falta de una biblioteca de ejemplos clara en GitHub puso a Syncfusion en último lugar, y prioricé la capacidad de encontrar el producto en el motor de búsqueda por encima de encontrarlo en GitHub.
  • La adquisición fue clara desde IronPDF con un botón que llevó inmediatamente a una página de descarga. Los demás tenían varios niveles de registro y proceso para encontrar la biblioteca que necesitabas. iText tenía el proceso más confuso y demasiadas opciones al final.
  • El Licenciamiento fue muy claro para Syncfusion, mientras que Aspose e IronPDF tenían varias limitaciones. El volumen de opciones para Aspose lo colocó en tercer lugar, mientras que las opciones confusas de código abierto / comercial con la necesidad de una herramienta para calcular tu licencia pusieron iText en último lugar.
  • La compatibilidad es un poco confusa basada en las afirmaciones en los sitios web. IronPDF proporciona afirmaciones de funcionamiento en varias nubes, y las otras herramientas no hacen tales afirmaciones. Se necesita más investigación durante el proceso de prueba para determinar si las tres herramientas pueden ejecutarse en estos entornos.
  • Comenzar está clasificado en primer lugar IronPDF, ya que su código funcionó tal cual sin modificaciones. iText necesitaba algunas actualizaciones menores, y Aspose no funcionó en absoluto y tuve que reescribir completamente la muestra.
  • La estructura de la API proporcionada por IronPDF es clara y permite a los desarrolladores trabajar de una manera muy productiva "dame los valores predeterminados y tú resuelve el resto". SyncFusion proporciona un enfoque similar, pero comienza a ser extenso. Aspose e iText son muy detallados en su API, y la falta de buena documentación empujó a iText al fondo de mis calificaciones.
  • Las puntuaciones de Documentación se marcan como IronPDF y Aspose habiendo empatado para la mejor experiencia, ya que tenían las mismas características, mientras que SyncFusion e iText no tenían muestras o documentación de API. SyncFusion obtiene una ligera ventaja con el contenido detallado en su sitio de documentos.
  • La prueba de renderizado de sitios web encontró que mientras iText fue el más rápido, no fue capaz de replicar la apariencia del sitio pasado a él. IronPDF pudo entregar plena fidelidad de CSS y JavaScript con campos de formulario interactivos mientras SyncFusion tenía renderizado JavaScript, algunas capacidades de CSS pero sin campos de formulario interactivos.

Por favor notaAspose, iText y SyncFusion son marcas registradas de sus respectivos propietarios. Todos los nombres de productos, logotipos y marcas son propiedad de sus respectivos propietarios. Las marcas y logos son propiedad de sus respectivos dueños. Las comparaciones se proporcionan solo con fines informativos y se basan en información públicamente disponible al momento de escribir este artículo.

Preguntas Frecuentes

¿Cómo puedo convertir HTML a PDF en C#?

Puedes usar el método RenderHtmlAsPdf de IronPDF para convertir cadenas de HTML en PDFs. También puedes convertir archivos HTML a PDFs usando RenderHtmlFileAsPdf.

¿Cuáles son algunos de los beneficios clave de usar IronPDF?

IronPDF ofrece una sencilla instalación a través de NuGet, una API intuitiva, velocidades rápidas de renderizado de HTML a PDF, y documentación bien organizada. También proporciona opciones de licencia claras y robusta compatibilidad con entornos .NET.

¿Cómo mejora la documentación de IronPDF la experiencia del desarrollador?

IronPDF proporciona documentación bien organizada con una API buscable y ejemplos, lo que facilita a los desarrolladores encontrar la información que necesitan e implementar soluciones de manera eficiente.

¿Cuáles son los desafíos con la biblioteca PDF de SyncFusion?

La biblioteca PDF de SyncFusion requiere una configuración inicial engorrosa, incluida la creación de cuentas y comunicaciones de seguimiento, que algunos usuarios encuentran invasivas. También tiene un rendimiento de renderizado subóptimo en comparación con IronPDF.

¿Cómo maneja IronPDF CSS y JavaScript durante la conversión?

IronPDF se destaca en mantener la fidelidad al renderizar CSS y JavaScript durante la conversión de HTML a PDF, asegurando que la salida se asemeje estrechamente al contenido original.

¿Qué hace de IronPDF una elección preferida para desarrolladores en entornos C#.NET?

IronPDF se prefiere por su adquisición simplificada, licencias claras, API intuitiva, velocidades rápidas de conversión, y documentación completa. Ofrece una experiencia superior para desarrolladores con características avanzadas, haciéndolo confiable para soluciones PDF en entornos C#.NET.

¿Cuál es un problema común con la biblioteca PDF de Aspose según el artículo?

La biblioteca PDF de Aspose es criticada por su modelo de licencias complejo y confuso y su conversión de HTML que no funciona, lo cual puede ser un desafío para los usuarios navegar e implementar efectivamente.

¿Cómo se desempeña iText con páginas web complejas?

iText es conocido por su velocidad al renderizar contenido estático; sin embargo, tiene dificultades con páginas web complejas, ofreciendo soporte limitado para desarrolladores que trabajan con estructuras HTML intrincadas.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más