Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Los desarrolladores en C# siempre se han enfrentado a retos a la hora de leer, escribir, crear o convertir PDF entre distintos formatos de archivo. Sin embargo, con la aparición de numerosas bibliotecas, estos problemas se han resuelto, y la fácil integración de estas bibliotecas las ha hecho más populares y fáciles de usar en las aplicaciones C#.
Este artículo pretende comparar dos de las bibliotecas PDF más populares para desarrolladores de .NET Framework y .NET Core:
ExpertPDF
Ambas bibliotecas son bibliotecas .NET C# que ofrecen métodos para generar, convertir y editar PDF en .NET y .NET Core. La cuestión principal es decidir cuál de estas bibliotecas PDF de C# es la más adecuada para nuestro proyecto. En este artículo, compararemos estas dos bibliotecas de la manera más exhaustiva, destacando sus características más destacadas, para que pueda tomar una decisión informada a la hora de elegir la biblioteca adecuada para su proyecto.
En primer lugar, echemos un vistazo a lo que ofrecen ambas bibliotecas, y luego pasaremos a la comparación propiamente dicha.
IronPDF es una completa solución de biblioteca PDF .NET que resulta especialmente beneficiosa para los desarrolladores de C#. Con esta biblioteca, podrá implementar fácilmente todas las funcionalidades necesarias para crear un excelente lector o visor de PDF en C#.
IronPDF cuenta con un motor .NET Chromium que convierte el contenido HTML en documentos PDF, lo que facilita el diseño o la posición de los PDF sin necesidad de API complejas. Su conversor de HTML a PDF permite crear una biblioteca PDF .NET utilizando HTML5, CSS, JavaScript e imágenes. Además, permite editar PDF, añadir encabezados y pies de página y extraer imágenes de PDF con facilidad. Además, convierte la lectura de textos en PDF en un proceso sencillo.
Visite el sitio oficial de ExpertPDF para obtener información detallada para obtener más información sobre su biblioteca .NET que ofrece a los desarrolladores convertir de HTML a PDF sobre la marcha. Si necesita generar informes en PDF o crear un lector de PDF, ya no tiene que utilizar complejos programas de generación de informes.
ExpertPDF es fácil de usar y, sin embargo, es un potente editor de PDF. Contiene un conversor de HTML a PDF de alta calidad que puede implementarse en cualquier aplicación .NET en pocos minutos. Funciona con .NET Framework, .NET Core, .NET 5 y .NET 6.
Es una potente biblioteca .NET que le ayuda a crear visores y documentos PDF a partir de cualquier URL de página web o marcado HTML sin procesar, cadena o archivo en aplicaciones .NET Framework o .NET Core.
Estas son las características más importantes:
Conversiones de tipos de archivo:
Conversor de PDF a texto
Conversor de HTML a PDF
Conversor de HTML a imagen
Conversor de PDF a imagen
El resto del artículo tratará los siguientes temas:
Crear un proyecto de consola
Instalación de IronPDF
Instalación de ExpertPDF
Crear PDF a partir de una URL
Crear PDF a partir de una cadena de entrada HTML
Fusionar varios PDF en un único PDF
Convertir imágenes a PDF
Licencias y precios
Siga los pasos para crear una aplicación de consola en C# con Visual Studio 2022:
Abra Visual Studio 2022 y haga clic en crear un nuevo proyecto
Seleccione C# Console App y haga clic en siguiente
En la siguiente pantalla, escriba el nombre de su proyecto y haga clic en siguiente
Ahora nuestro proyecto Console está creado y estamos listos para probar nuestras librerías. Sin embargo, aún tenemos que incorporarlos a nuestro proyecto. Primero instalemos IronPDF.
Hay varias formas de descargar e instalar la biblioteca IronPDF. Son las siguientes:
Uso de Visual Studio
Descargue directamente el paquete NuGet
El propio Visual Studio proporciona el gestor de paquetes NuGet para instalar todos los paquetes NuGet en proyectos C#. Puede acceder a ella a través de:
Haciendo clic con el botón derecho del ratón sobre el proyecto en el Explorador de soluciones
Una vez seleccionado, busque el paquete IronPDF NuGet e instálelo, como se muestra en la figura siguiente:
Otro método consiste en descargar IronPDF del sitio web de NuGet. VisitePágina NuGet de IronPDF directamente y descargar el paquete. Sigue los pasos:
También puede descargar el archivo .DLL de IronPDF directamente de la páginaSitio web de IronPDF. Haga clic enDescargar IronPDF DLL para instalar.
A continuación, haga referencia a IronPDF en su proyecto siguiendo estos pasos:
Haz clic en OK y listo!
Todo hecho! IronPDF ya está instalado y listo para usar. Sin embargo, antes instalaremos ExpertPDF para comparar.
Hay dos formas de descargar e instalar ExpertPDF Library:
Descarga de conjuntos(versiones anteriores de .NET Framework)
Vamos a trabajar con el nuevo .NET Framework por lo que instalaremos ExpertPDF utilizando NuGet Package Manager.
Al igual que IronPDF, puede acceder a NuGet Package Manager mediante:
Haciendo clic con el botón derecho del ratón sobre el proyecto en el Explorador de soluciones
Una vez seleccionado, busque el paquete NuGet ExpertPDF e instálelo, como se muestra a continuación:
Nota: ExpertPDF sólo es compatible con el sistema operativo Windows.
Ambas bibliotecas tienen la capacidad de convertir marcas HTML a PDF. Ahora, echemos un vistazo al código C# de cada biblioteca una por una.
IronPDF es muy sencillo a la hora de renderizar HTML de URLs existentes como PDF. Tiene un nivel muy alto de compatibilidad con CSS, JavaScript, imágenes y formularios.
El siguiente ejemplo de código crea un PDF directamente a partir de la URL de un sitio web.
using IronPdf;
ChromePdfRenderer Renderer = new ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
using IronPdf;
ChromePdfRenderer Renderer = new ChromePdfRenderer();
var Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/");
Pdf.SaveAs("url.pdf");
Imports IronPdf
Private Renderer As New ChromePdfRenderer()
Private Pdf = Renderer.RenderUrlAsPdf("https://ironpdf.com/")
'
Pdf.SaveAs("url.pdf")
ExpertPDF convierte URL a PDF mediante el método savePdfFromUrlToFile
, que es rápido, seguro y eficaz. El formato de la página se guarda tal cual en el navegador web real.
using ExpertPdf.HtmlToPdf;
PdfConverter pd = new PdfConverter();
pd.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf");
using ExpertPdf.HtmlToPdf;
PdfConverter pd = new PdfConverter();
pd.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf");
Imports ExpertPdf.HtmlToPdf
Private pd As New PdfConverter()
pd.SavePdfFromUrlToFile("https://www.html-to-pdf.net/", "output.pdf")
Tanto IronPDF como Expert PDF permiten crear archivos PDF a partir de una cadena de marcado que contenga HTML.
El siguiente fragmento de código muestra cómo se representa la imagen de un documento PDF utilizando una cadena de entrada HTML.
using IronPdf;
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf");
// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
PDF.SaveAs("html-with-assets.pdf");
using IronPdf;
var Renderer = new ChromePdfRenderer();
Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf");
// Load external html assets: images, css and javascript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
PDF.SaveAs("html-with-assets.pdf");
Imports IronPdf
Private Renderer = New ChromePdfRenderer()
Renderer.RenderHtmlAsPdf("<h1>Html with CSS and Images</h1>").SaveAs("pixel-perfect.pdf")
' Load external html assets: images, css and javascript.
' An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
Dim PDF = Renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", "C:\site\assets\")
PDF.SaveAs("html-with-assets.pdf")
ExpertPDF HTML To PDF converter soporta la conversión de cadenas HTML a PDF. El código es sencillo y autoexplicativo como URL a PDF:
using ExpertPdf.HtmlToPdf;
PdfConverter pd = new PdfConverter();
pd.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf");
using ExpertPdf.HtmlToPdf;
PdfConverter pd = new PdfConverter();
pd.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf");
Imports ExpertPdf.HtmlToPdf
Private pd As New PdfConverter()
pd.SavePdfFromHtmlStringToFile("<h1>PDF using Expert PDF</h1>", "html-to-pdf.pdf")
El primer argumento es la cadena HTML real y el segundo es el nombre de archivo en el que se guardará el documento escaneado.
Tanto IronPDF como ExpertPDF ofrecen la posibilidad de fusionar varios archivos PDF en un único archivo PDF. Esta función es útil para consolidar datos dispersos y enviarlos por Internet de forma más eficiente.
El siguiente código renderiza dos PDFs creados a partir de diferentes cadenas HTML y luego los fusiona utilizando el método Merge
. Esta una línea de código y es muy fácil de usar. Se pueden añadir más opciones a la configuración del PDF durante la renderización.
using IronPdf;
var html_a = @"<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>";
var html_b = @"<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>";
var renderer = new ChromePdfRenderer();
var pdfdoc_a = renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = renderer.RenderHtmlAsPdf(html_b);
var merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
merged.SaveAs("Merged.pdf");
using IronPdf;
var html_a = @"<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>";
var html_b = @"<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>";
var renderer = new ChromePdfRenderer();
var pdfdoc_a = renderer.RenderHtmlAsPdf(html_a);
var pdfdoc_b = renderer.RenderHtmlAsPdf(html_b);
var merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b);
merged.SaveAs("Merged.pdf");
Imports IronPdf
Private html_a = "<p> [PDF_A] </p>
<p> [PDF_A] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_A] 2nd Page</p>"
Private html_b = "<p> [PDF_B] </p>
<p> [PDF_B] 1st Page </p>
<div style='page-break-after: always;'></div>
<p> [PDF_B] 2nd Page</p>"
Private renderer = New ChromePdfRenderer()
Private pdfdoc_a = renderer.RenderHtmlAsPdf(html_a)
Private pdfdoc_b = renderer.RenderHtmlAsPdf(html_b)
Private merged = PdfDocument.Merge(pdfdoc_a, pdfdoc_b)
merged.SaveAs("Merged.pdf")
El método Merge
también tiene una sobrecarga que acepta múltiples documentos en forma de objetos Enumerables. Puede ver un ejemplo de su uso en esteEjemplo de código de IronPDF para fusionar archivos PDF.
Tenga en cuenta que si los archivos PDF que se fusionan contienen formularios editables, los campos de formulario del PDF resultante tendrán sus nombres añadidos con el número de índice.
ExpertPDF utiliza un componente Merge PDF para realizar esta tarea. Debe instalarse desde NuGet Package Manager para poder utilizarlo. Existe un método AppendPDFFile
que añade un archivo PDF al objeto de clase PDFMerge. El código para fusionar los dos PDF creados previamente por ExpertPDF es el siguiente:
using ExpertPdf.MergePdf;
PDFMerge pDF = new PDFMerge();
pDF.AppendPDFFile("output.pdf");
pDF.AppendPDFFile("html-to-pdf.pdf");
pDF.SaveMergedPDFToFile("merged.pdf");
using ExpertPdf.MergePdf;
PDFMerge pDF = new PDFMerge();
pDF.AppendPDFFile("output.pdf");
pDF.AppendPDFFile("html-to-pdf.pdf");
pDF.SaveMergedPDFToFile("merged.pdf");
Imports ExpertPdf.MergePdf
Private pDF As New PDFMerge()
pDF.AppendPDFFile("output.pdf")
pDF.AppendPDFFile("html-to-pdf.pdf")
pDF.SaveMergedPDFToFile("merged.pdf")
IronPDF tiene la capacidad de convertir una gran variedad de imágenes en archivos PDF, mientras que ExpertPDF no ofrece esta función. Sin embargo, ExpertPDF puede extraer imágenes de archivos PDF, y también puede convertir archivos PDF en imágenes, una función que también ofrece IronPDF.
En IronPDF, los documentos PDF pueden crearse fácilmente a partir de una o más imágenes utilizando la clase ImageToPdfConverter
. Puedes cargar las imágenes desde cualquier carpeta de tu aplicación.
// One or more images as IEnumerable. This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg")
f.EndsWith(".jpeg"));
// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\composite.pdf");
//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
// One or more images as IEnumerable. This example selects all JPEG images in a specific folder.
var ImageFiles = System.IO.Directory.EnumerateFiles(@"C:\project\assets").Where(f => f.EndsWith(".jpg")
f.EndsWith(".jpeg"));
// Convert the images to a PDF and save it.
ImageToPdfConverter.ImageToPdf(ImageFiles).SaveAs(@"C:\project\composite.pdf");
//Also see PdfDocument.RasterizeToImageFiles() method to flatten a PDF to images or thumbnails
IRON VB CONVERTER ERROR developers@ironsoftware.com
Además de convertir una gran variedad de imágenes en archivos PDF, IronPDF también puede convertir documentos escaneados, documentos en papel y documentos empresariales en imágenes independientes. También puede extraer imágenes de este tipo de archivos.
IronPDF es un programa comercial totalmente abierto.Biblioteca PDF en C# disponible en el sitio web de IronPDF. Es gratuito para el desarrollo privado y puede obtenerse una licencia en cualquier momento para usos comerciales. Se requiere una variedad deLicencias disponibles para proyectos individuales, desarrolladores individuales o múltiples, agencias y corporaciones globales. También admite la redistribución SaaS y OEM.
Todas las licencias ofrecen una garantía de devolución del dinero de 30 días junto con un año de asistencia y actualizaciones del producto. Las licencias son perpetuas, lo que significa que sólo hay que comprarlas una vez, sin gastos adicionales. El paquete Lite para un único desarrollador y un único proyecto parte de $749.
ExpertPDF ofrece la compra de licencias por desarrollador o por empresa. Puedeprueba ExpertPDF gratis. Puede consultar la lista de características de la licencia en la siguiente figura.
ExpertComponents Toolkit Total licencia de desarrollador a partir de $850 y ExpertPDF Toolkit a partir de $750. También puede adquirir componentes individuales. EnLista completa de precios de ExpertPDF está disponible en el sitio web.
IronPDF convierte HTML a PDF localmente, por lo que no requiere conexión a Internet. En realidad, hace girar implícitamente un objeto de un navegador web que cumple los estándares reales. El renderizado HTML es completamente preciso y en formato vectorial adecuado para los más altos estándares de impresión comercial. El resultado es limpio y se genera un PDF de alta calidad. Se puede obtener una licencia para uso comercial y todos sus precios figuran en su sitio web sin cargos ocultos.
ExpertPDF's HTML-to-PDF Converter Library es una herramienta versátil que puede convertir páginas web y código HTML en documentos PDF, generar informes PDF a partir de páginas web ASP.NET e incluso firmar contratos con firmas electrónicas. Su uso es gratuito, pero también se pueden obtener licencias para funciones adicionales.
Aunque ambas bibliotecas son capaces de trabajar con archivos PDF y convertir desde formatos populares, IronPDF tiene algunas ventajas sobre ExpertPDF. IronPDF ofrece conversión desde una gama más amplia de formatos, incluidos XML, imágenes y AngularJS, así como funciones más sólidas para generar, formatear y editar PDF. IronPDF es una solución que ahorra tiempo y se recomienda a los desarrolladores pragmáticos que buscan eficacia.
ExpertPDF viene en componentes separados que deben instalarse individualmente, mientras que IronPDF es un software completo con todas las funcionalidades en un solo lugar. ExpertPDF puede ser una buena opción para proyectos que sólo requieran un único componente, como la conversión de HTML a PDF. Los paquetes de IronPDF ofrecen licencias de por vida sin costes corrientes, mientras que ExpertPDF requiere renovaciones.
9 productos API .NET para sus documentos de oficina