COMPARACIóN DE PRODUCTOS

Comparación entre IronPDF y PDFreactor

Publicado en 30 de marzo, 2022
Compartir:

PDFreactor e IronPDF proporcionan a los ingenieros las herramientas para generar, manipular, editar, formatear y imprimir documentos PDF a partir de diversas entradas. Al trabajar en .NET y .NET Core, debemos elegir las herramientas que mejor se adapten a nuestros proyectos y requisitos, y el uso de ejemplos de código y tutoriales explicativos siempre es útil.

Cualquier desarrollador .NET le dirá que los proyectos requieren mucha investigación antes de iniciarse. Hay un viejo adagio que dice: usa la herramienta adecuada para el trabajo adecuado. Las bibliotecas PDF no son una excepción a esta regla. Como desarrollador, tienes que estar bien informado sobre qué bibliotecas y herramientas existen. Es cierto que no todas las herramientas o bibliotecas son iguales: algunas tienen diferentes puntos fuertes y otras tienen más puntos débiles que otras, pero en última instancia es tu prerrogativa utilizar la herramienta que mejor se adapte a ti y a tu empresa y, lo que es más importante, a tu proyecto.

En este artículo se compararán dos de las bibliotecas PDF más populares para desarrolladores .NET y .NET Core. Estas dos bibliotecas son:

  • IronPDF
  • PDFreactor

    Con cualquier artículo comparativo, es bueno intentar comparar lo bueno, lo malo y lo feo siempre que sea posible. Por desgracia, en el panorama tecnológico actual, algunas bibliotecas se quedan bastante cortas, mientras que otras sobresalen y prosperan. La tecnología avanza a tal velocidad que es difícil mantenerse al día. Esto se aplica no sólo a los creadores de bibliotecas de terceros, sino también a los desarrolladores. Comer o ser comido, y adaptarse muy rápidamente.

    Echemos un vistazo a ambas ofertas.

¿Qué es IronPDF?

IronPDF es una biblioteca comercial de generación de PDF para la plataforma .NET, escrita en C#. El concepto clave es evitar las API de generación de PDF, que consumen mucho tiempo, renderizando los PDF a partir de HTML, CSS, imágenes y JavaScript. Funciona igual de bien en aplicaciones de formularios, aplicaciones y servicios de servidor, aplicaciones web, intranets seguras, aplicaciones de consola, aplicaciones WPF y sitios web con patrones MVC. IronPDF es compatible con cualquier proyecto .NET Framework a partir de la versión 4, y .NET Core a partir de la versión 2.

IronPDF C# Características de la biblioteca

Algunas de las grandes características de IronPDF son:

  • Generación de documentos PDF a partir de plataformas web como HTML y ASPX
  • Lectura de texto PDF
  • Extracción de imágenes y datos de documentos PDF
  • Fusionar, dividir y manipular archivos PDF

    Las mejoras en 2020 incluyen:

  • Mejora de la precisión de la extracción de texto en PDF
  • Se ha añadido compatibilidad con más tipos de archivos PDF
  • Espacio de memoria mejorado
  • Firma digital de PDF cifrados
  • Mejoras en los metadatos de firma digital
  • Resueltos los problemas de licencia y de ruta de instalación en casos extremos.
  • Compatibilidad con CentOS 8 y Ubuntu 20

    Las licencias empiezan a partir de $749.

¿Qué es PDFreactor?

C# es uno de los lenguajes de programación más utilizados en todos los sectores. Si busca un conversor de PDF de alta calidad que funcione a la perfección con C# y .NET, con PDFreactor tendrá acceso a una potente herramienta para convertir páginas HTML en PDF mediante C#. PDFreactor es el motor de conversión fácil, rápido y moderno para usuarios de C# que necesitan crear PDFs a partir de HTML de forma eficiente.

Características de PDFreactor:

  1. Admite todos los elementos HTML5.

  2. Utiliza CSS3 de última generación como calc, media queries, box-shadow, text-shadow, filter. Transformar, rotar, escalar, elementos para convertir HTML + CSS a PDF.

  3. Transfiere a PDF diseños basados en JavaScript.

  4. PDFreactor permite crear documentos PDF etiquetados de acuerdo con las directrices de accesibilidad.

  5. PDFreactor web apps ofrece funciones de impresión profesional como PDF/X, PDF/X-4p, cuadrículas base y colores directos. PDF/A PDFreactor permite crear fácilmente PDF/A (1a, 1b, 2a, 2b, 2u, 3a, 3b y 3u) y PDF/UA para archivar documentos electrónicos a largo plazo.

    Las nuevas mejoras son:

    • Diseño de cuadrícula CSS
    • Flotadores de página
    • Marcadores de continuación
    • Barras de cambio
    • Notas al pie estilizables
    • Opción de configuración para crear PDF inspeccionables. Esto permite la inspección de la estructura y el diseño de los PDF generados con PDFreactor, de forma similar a las herramientas de desarrollo del navegador en nuestro nuevo Herramienta PDFreactor Inspector.

    Las licencias cuestan a partir de 2.950,00 dólares.

Empiece por crear un sitio web ASP.NET

IronPDF

Los siguientes pasos generan un sitio web ASP.NET:

  • Abra Visual Studio 2017 o Visual Studio 2019.
  • Haga clic en Archivo Nuevo Proyecto para generar un nuevo proyecto.
  • Seleccione Web en Visual C# en el cuadro de lista Tipo de proyecto.
  • Seleccione Aplicación Web ASP.NET. Esta captura de pantalla se muestra a continuación:
  • Selecciona OK.
  • Seleccione Formularios Web en la siguiente pantalla, como se muestra a continuación:

  • Haga clic en Aceptar.

    A continuación, vamos a instalar IronPDF.

1. Instalar IronPDF

Hay dos formas de instalar IronPDF:

  • NuGet
  • Descargar la biblioteca

    Veámoslo más de cerca.

1.1. Instalación de la biblioteca mediante NuGet

Hay tres maneras de instalar IronPDF a través de NuGet; estos son:

  • Visual Studio
  • Símbolo del sistema para desarrolladores
  • Descargue directamente el paquete NuGet

    Veámoslos uno por uno.

1.2. Uso de Visual Studio

Se accede al gestor de paquetes NuGet a través del menú Proyecto o haciendo clic con el botón derecho del ratón en el proyecto en el Explorador de soluciones.

Una vez seleccionado, busque el paquete IronPDF e instálelo como se muestra a continuación:

1.3. Uso del símbolo del sistema para desarrolladores

Siga los siguientes pasos para instalar el paquete IronPDF NuGet a través del símbolo del sistema para desarrolladores:

  • Abra el símbolo del sistema de desarrollador, que se encuentra en la carpeta Visual Studio.
  • Tipo:
    :ProductInstall
  • Pulsa Intro.
  • Vuelva a cargar el proyecto de Visual Studio.

1.4. Descargue directamente el paquete NuGet

Siga los pasos siguientes para descargar el paquete a través de NuGet:

1.5. Instale IronPDF descargando la biblioteca

La segunda forma de instalar IronPDF es descargándolo directamente de la página Descarga de IronPDF DLL.

Haz referencia a la biblioteca en tu proyecto siguiendo los siguientes pasos:

  • Haga clic con el botón derecho en la solución en el Explorador de soluciones
  • Seleccionar referencias
  • Buscar la biblioteca IronPDF.dll
  • Haga clic en OK

PDFReactor

Siga los mismos pasos mencionados anteriormente e instale PDFreactor. Suele utilizarse para la conversión del lado del servidor de HTML a PDF, desde documentos dinámicos basados en datos (informes, facturas, formularios, hojas de datos) para la distribución electrónica a PDF complejos y de alta calidad (catálogos, material de marketing, documentación técnica, revistas) para la publicación impresa y electrónica.

2. Crear PDF a partir de texto HTML

El siguiente código crea documentos PDF e imprime una cadena HTML en su interior.

2.1. Convertir cadena HTML a PDF con IronPDF

El siguiente código utiliza IronPDF para crear archivos PDF directamente a partir de una cadena HTML.

private void HTMLString()
{
    // Render any HTML fragment or document to HTML
    var Renderer = new IronPdf.ChromePdfRenderer();
    var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    Renderer.RenderingOptions.TextFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>" };
    var OutputPath = "ChromePdfRenderer.pdf";
    PDF.SaveAs(OutputPath);
    Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
}
private void HTMLString()
{
    // Render any HTML fragment or document to HTML
    var Renderer = new IronPdf.ChromePdfRenderer();
    var PDF = Renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>");
    Renderer.RenderingOptions.TextFooter = new HtmlHeaderFooter() { HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>" };
    var OutputPath = "ChromePdfRenderer.pdf";
    PDF.SaveAs(OutputPath);
    Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
}
Private Sub HTMLString()
	' Render any HTML fragment or document to HTML
	Dim Renderer = New IronPdf.ChromePdfRenderer()
	Dim PDF = Renderer.RenderHtmlAsPdf("<h1>Hello IronPDF</h1>")
	Renderer.RenderingOptions.TextFooter = New HtmlHeaderFooter() With {.HtmlFragment = "<div style='text-align:right'><em style='color:pink'>page {page} of {total-pages}</em></div>"}
	Dim OutputPath = "ChromePdfRenderer.pdf"
	PDF.SaveAs(OutputPath)
	Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
End Sub
VB   C#

2.1. Convertir cadenas HTML a PDF con PDFreactor

El siguiente código utiliza PDFreactor para crear archivos PDF directamente a partir de una cadena HTML.

<script>
            window.onload = async function() {
                // Create new PDFreactor instance
                var pdfReactor = new PDFreactor("https://cloud.pdfreactor.com/service/rest");
                // Create a new PDFreactor configuration object
                var config = {
                    // Specify the input document
                    document: "http://www.pdfreactor.com/product/samples/textbook/textbook.html",
                }       
                // Render document and save result
                try {
                    var result = await pdfReactor.convert(config);
                    document.getElementById("result").src = "data:application/pdf;base64," + result.document;
                } catch (error) {
                    if (error instanceof PDFreactor.PDFreactorWebserviceError) {
                        document.body.innerHTML = "<h1>An Error Has Occurred</h1><h2>" + error.message + "</h2>";
                    }
                }
            }
        </script>
<script>
            window.onload = async function() {
                // Create new PDFreactor instance
                var pdfReactor = new PDFreactor("https://cloud.pdfreactor.com/service/rest");
                // Create a new PDFreactor configuration object
                var config = {
                    // Specify the input document
                    document: "http://www.pdfreactor.com/product/samples/textbook/textbook.html",
                }       
                // Render document and save result
                try {
                    var result = await pdfReactor.convert(config);
                    document.getElementById("result").src = "data:application/pdf;base64," + result.document;
                } catch (error) {
                    if (error instanceof PDFreactor.PDFreactorWebserviceError) {
                        document.body.innerHTML = "<h1>An Error Has Occurred</h1><h2>" + error.message + "</h2>";
                    }
                }
            }
        </script>
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'(Of script) window.onload = async @function()
'{
'				' Create new PDFreactor instance
'				var pdfReactor = New PDFreactor("https://cloud.pdfreactor.com/service/rest");
'				' Create a new PDFreactor configuration object
'				var config = { document: "http://www.pdfreactor.com/product/samples/textbook/textbook.html"} try
'				{
'					var result = await pdfReactor.convert(config);
'					document.getElementById("result").src = "data:application/pdf;base64," + result.document;
'				}
'				catch (@error)
'				{
'					if (@error instanceof PDFreactor.PDFreactorWebserviceError)
'					{
'						document.body.innerHTML = "<h1>An Error Has Occurred</h1><h2>" + @error.message + "</h2>";
'					}
'				}
'			}
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'		</script>
VB   C#

3. Páginas ASPX a PDF

El siguiente código crea archivos PDF a partir de una página ASPX.

3.1. Páginas ASPX a PDF con IronPDF

El siguiente código utiliza IronPDF para crear un PDF a partir de un archivo ASPX.

protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
protected void Page_Load(object sender, EventArgs e)
{
    IronPdf.AspxToPdf.RenderThisPageAsPdf();
}
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
	IronPdf.AspxToPdf.RenderThisPageAsPdf()
End Sub
VB   C#

3.2. Páginas ASPX a PDF con PDFreactor

Parece que PDFreactor no soporta la creación de PDFs a partir de páginas web ASPX.

4. Uso de CSS3 con documentos PDF

  • Compatible con HTML a PDF:
  • Renderizado completo y de alta fidelidad de HTML 4 y HTML 5
  • CSS 3
  • JavaScript
  • Activos de imagen
  • Activos SVG
  • Diseños adaptables
  • Hojas de estilo y activos externos (HTTP, HTTPS o sistema de archivos)
  • Renderizado estático y multihilo
  • Carga de URLs con custom:

    • Credenciales de acceso a la red

      • UserAgent
    • Apoderados

      • Galletas
    • Cabeceras HTTP

    • Variables de formulario que permiten el inicio de sesión tras formularios de inicio de sesión HTML

4.1. Hojas de estilo en cascada CSS3

Hojas de estilo en cascada (CSS) describe el aspecto y el formato de los archivos HTML. Utiliza selectores y propiedades para establecer el formato de toda una página web o sitio web en un lugar centralizado. CSS3 es el último estándar. CSS3 incluye:

  • Consultas multimedia
  • Espacios de nombres
  • Selectores Nivel 3
  • Módulos incluidos:

    • Selectores

    • Modelo de caja

    • Efectos de texto

    • Transformaciones 2D

    • Transformaciones 3D

    • Fondos

    • Interfaz de usuario

    Con IronPDF puedes elegir dónde quieres que se muestren los estilos CSS: Pantalla o Imprimir. Cuando se trata de la pantalla, hay que estar informado sobre la capacidad de respuesta. Para distinguir entre la pantalla o la impresora, podría utilizar la siguiente línea rápida de código:

Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
//or
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
//or
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
VB   C#

4.2. Diseño web responsivo

El diseño web responsivo permite que las páginas y los sitios web se vean bien en todos los dispositivos. Las webs responsivas se ajustan automáticamente a los distintos tamaños de pantalla y viewports. Cuando se trabaja con diseño adaptable y frameworks como Bootstrap, IronPDF puede establecer las propiedades ViewPortWidth y ViewPortHeight para controlar mediante programación la ventana gráfica, y controlar qué versión del sitio adaptable se renderizará como PDF.

4.3. Creación de un ViewPort de respuesta

El siguiente código le permite establecer mediante programación el tamaño de su Viewport de respuesta con IronPDF.

using IronPdf;
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
 //Choose screen or print CSS media
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
//Set the width of the responsive virtual browser window in pixels
Renderer.ViewPortWidth = 1280; 
// Render an HTML document or snippet as a string
Renderer.RenderHTMLFileAsPdf("Assets/Responsive.html");
using IronPdf;
IronPdf.ChromePdfRenderer Renderer = new IronPdf.ChromePdfRenderer();
 //Choose screen or print CSS media
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen;
//Set the width of the responsive virtual browser window in pixels
Renderer.ViewPortWidth = 1280; 
// Render an HTML document or snippet as a string
Renderer.RenderHTMLFileAsPdf("Assets/Responsive.html");
Imports IronPdf
Private Renderer As New IronPdf.ChromePdfRenderer()
 'Choose screen or print CSS media
Renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Screen
'Set the width of the responsive virtual browser window in pixels
Renderer.ViewPortWidth = 1280
' Render an HTML document or snippet as a string
Renderer.RenderHTMLFileAsPdf("Assets/Responsive.html")
VB   C#

4.4. Plantillas HTML

Otra gran función es la posibilidad de crear plantillas HTML a partir de las cuales trabajar y construir documentos PDF similares. He aquí un pequeño ejemplo:

var HtmlTemplate = "<p>[[NAME]]</p>";
var Names = new [] { "John", "James", "Jenny" };
foreach (var name in Names) {
    var HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);
    var Pdf = Renderer.RenderHtmlAsPdf(HtmlInstance);
    Pdf.SaveAs(name + ".pdf");
}
var HtmlTemplate = "<p>[[NAME]]</p>";
var Names = new [] { "John", "James", "Jenny" };
foreach (var name in Names) {
    var HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name);
    var Pdf = Renderer.RenderHtmlAsPdf(HtmlInstance);
    Pdf.SaveAs(name + ".pdf");
}
Dim HtmlTemplate = "<p>[[NAME]]</p>"
Dim Names = { "John", "James", "Jenny" }
For Each name In Names
	Dim HtmlInstance = HtmlTemplate.Replace("[[NAME]]", name)
	Dim Pdf = Renderer.RenderHtmlAsPdf(HtmlInstance)
	Pdf.SaveAs(name & ".pdf")
Next name
VB   C#

6. Licencia personal gratuita

Como se indica en el Acuerdo de licencia del software PDFreactorUna licencia PDFreactor sólo puede utilizarse en una máquina física o virtual o en un contenedor de software aislado. Así, por cada máquina de producción, se requiere una licencia. Si va a utilizar PDFreactor con fines no comerciales, puede solicitar una licencia personal gratuita. aquí.

IronPDF es una aplicación Biblioteca PDF en C#. Es gratuito para el desarrollo, con pruebas de despliegue de 30 días disponibles enviando un correo electrónico al equipo de ingeniería a developers@ironpdf.com. Se pueden encontrar opciones de licencia asequibles explorando la Licencias IronPDF.

7. Resumen y conclusión

Resumen

IronPDF es una biblioteca .NET compatible y orientada a la productividad que puede:

  • Renderiza PDFs desde HTML utilizando un navegador web totalmente integrado
  • Edita y manipula PDF de alta calidad
  • Conversión a PDF con firma digital

    PDFreactor es un Conversor de HTML a PDF para uso privado, no comercial y no profesional.

  • Convierte fácilmente HTML a PDF. Compatible con HTML5, CSS3 y JavaScript. API para JavaScript, Java, PHP, .NET, Python, Ruby, Perl, Node.js, SOAP, REST.

Conclusión

IronPDF se ocupa del difícil problema de añadir la generación de PDF a su aplicación, y automatiza la conversión de documentos formateados en un PDF. Todos los productos son gratuitos para su desarrollo y prueba en IDE, sin restricciones de tiempo. y puede instalarse a través de NuGet. Convierte formularios web, páginas HTML locales y otras páginas web a PDF con .NET, y permite a los usuarios descargar documentos, enviarlos por correo electrónico o almacenarlos en la nube.

Mientras que PDFreactor es un potente procesador de formato que permite la conversión de PDF en el servidor a partir de documentos HTML 5 utilizando CSS para definir el diseño y los estilos de las páginas. Puede generar dinámicamente sobre la marcha documentos PDF como informes, facturas, extractos y otros. Al implementar la especificación W3C para medios paginados e impresión, PDFreactor proporciona un gran control sobre la salida paginada a través de CSS. Para utilizar PDFreactor en un entorno de producción, se requiere una licencia adecuada.

< ANTERIOR
IronPDF y EO.Pdf: Una Comparación
SIGUIENTE >
Comparación entre IronPDF e ITextPDF

¿Listo para empezar? Versión: 2024.10 acaba de salir

Descarga gratuita de NuGet Descargas totales: 11,108,738 Ver licencias >