Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
PDF, o Portable Document Format, es un formato de archivo estandarizado desarrollado por Adobe para el intercambio coherente de documentos. Su naturaleza independiente de la plataforma garantiza que los documentos conserven el formato, las fuentes y las imágenes en todos los dispositivos. Los PDF son seguros, interactivos y compactos, por lo que resultan ideales para compartir documentos preservando la integridad del contenido.
Las bibliotecas PDF de C# son herramientas indispensables para los desarrolladores que trabajan con archivos PDF. Permiten la generación dinámica de documentos, la manipulación de contenidos y la extracción de textos e imágenes. Estas bibliotecas facilitan la gestión de formularios, las firmas digitales y la compatibilidad entre plataformas, optimizando el rendimiento para un procesamiento eficaz de los PDF. Con las bibliotecas PDF de C#, los desarrolladores pueden integrar perfectamente la funcionalidad PDF en sus aplicaciones, mejorando la creación, modificación e interacción con documentos PDF mediante programación.
En este artículo realizaremos una comparación detallada entre dos Bibliotecas PDF de C#. Esta comparación incluye detalles sobre Características, Funcionalidad, Ejemplos de Código y Licencia. Las dos bibliotecas que compararemos en este artículo son
La biblioteca DinkToPdf, también conocida como wrapper para la biblioteca WkHtmlToPdf que utiliza el motor WebKit para convertir HTML a PDF, es una potente biblioteca de código abierto que convierte documentos HTML y CSS a formato PDF utilizando el motor Motor de renderizado Webkit. Sirve de puente entre el contenido basado en web y la creación de PDF, permitiendo a los desarrolladores generar documentos PDF dinámicamente a partir de contenido HTML. DinkToPdf es especialmente popular por su sencillez, eficacia y compatibilidad multiplataforma, lo que lo convierte en la opción preferida para una amplia gama de aplicaciones en las que se requiere la conversión de HTML a PDF.
IronPDF es una completa biblioteca de C# diseñada para facilitar la creación, el procesamiento y la manipulación de documentos PDF sin problemas dentro del marco .NET. Desarrollada por Iron Software, esta versátil herramienta simplifica la integración de funciones PDF en aplicaciones C#, lo que la convierte en un recurso esencial para los desarrolladores que trabajan en proyectos que implican la generación, modificación e interacción con PDF. IronPDF es conocido por su API fácil de usar, su optimización del rendimiento y una amplia gama de funciones que satisfacen diversos requisitos relacionados con PDF.
Actualizaciones y soporte continuos: Iron Software mantiene y actualiza activamente la biblioteca, garantizando la compatibilidad con los marcos .NET más recientes y resolviendo posibles problemas. Además, la comunidad de desarrolladores que utilizan IronPDF cuenta con un sólido apoyo.
IronPDF surge como una biblioteca de C# completa y repleta de funciones para la generación y manipulación de PDF, que ofrece un conjunto de herramientas que satisfacen una amplia gama de requisitos, desde la simple creación de PDF hasta la seguridad e interactividad avanzadas de los documentos. Su versatilidad y su API fácil de usar lo convierten en un valioso activo para los desarrolladores de C# que trabajan en diversas aplicaciones que incluyen funciones PDF.
Antes de profundizar en el ejemplo de codificación, vamos a crear un nuevo archivo Visual Studio proyecto. La creación de una aplicación de consola C# en Visual Studio implica varios pasos. Aquí tiene una guía detallada
Si no ha instalado Visual Studio en su equipo, descárguelo e instálelo desde el sitio web oficial de Microsoft: Descargas de Visual Studio
Inicie Visual Studio tras la instalación. Si utilizas Visual Studio Community, puedes iniciar sesión o utilizarlo sin iniciar sesión.
Haga clic en "Crear un nuevo proyecto" o vaya a Archivo > Nuevo > Proyecto.
Elija la plantilla de proyecto adecuada en función de sus necesidades. Para una aplicación de consola sencilla, puede elegir "Aplicación de consola (.NET Core)" o "Consola App (.NET Framework)"dependiendo de su versión de Visual Studio.
Elija el nombre y la ubicación de su proyecto. También puede especificar el nombre de la solución.
Para integrar la IronPDF en su proyecto, dispone de cuatro prácticos métodos:
Utilizando el gestor de paquetes NuGet de Visual Studio: Aproveche el gestor de paquetes NuGet dentro de Visual Studio para una instalación sin problemas. Acceda al gestor de paquetes directamente en su solución e inicie el proceso como se ilustra en la captura de pantalla proporcionada.
:ProductInstall
Al igual que IronPDF, la biblioteca DinkToPdf puede instalarse fácilmente mediante diversas técnicas. A continuación se detallan los métodos que emplearemos para instalar DinkToPdf.
NuGet\Install-Package DinkToPdf -Version 2023.12.6
NuGet\Install-Package DinkToPdf -Version 2023.12.6
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'NuGet\Install-Package DinkToPdf -Version 2023.12.6
Este comando buscará e instalará la última versión de DinkToPdf, asegurando una integración directa en tu proyecto.
Descarga desde el sitio web de NuGet: Visite el sitio web de NuGet en https://www.nuget.org/packages/DinkToPdf/. En la página NuGet, localice la versión deseada y haga clic en "Descargar paquete". Esto descargará el paquete DinkToPdf como un archivo ZIP. Extrae el contenido y añade las referencias necesarias a tu proyecto, tal y como se menciona en la documentación de la librería.
Estas técnicas ofrecen flexibilidad y opciones en función del flujo de trabajo que prefiera y de los requisitos del proyecto. Elija el método que mejor se adapte a su entorno de desarrollo y a la configuración de su proyecto.
La conversión de HTML a PDF es un proceso que consiste en transformar Hypertext Markup Language (HTML) comúnmente utilizados para contenidos web, en formato de documento portátil. (PDF) archivos. Esta conversión es esencial para diversos fines, como generar documentos imprimibles, archivar contenidos web o compartir información en un formato coherente y universalmente accesible. El proceso suele preservar la estructura, el diseño y el estilo del contenido HTML original, garantizando que el PDF resultante se asemeje mucho a la apariencia del material basado en la web.
Los desarrolladores pueden utilizar la biblioteca de conversión de HTML a PDF IronPDF para convertir contenidos HTML a PDF. En el siguiente ejemplo convertiremos páginas HTML a PDF utilizando IronPDF.
using IronPdf;
// Instanciar renderizador
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C# var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><div style = 'page-break-after always;' /><p> This is 2nd Page </p> ");
// Exportar a un archivo o Stream
pdf.SaveAs("output.pdf");
using IronPdf;
// Instanciar renderizador
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C# var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><div style = 'page-break-after always;' /><p> This is 2nd Page </p> ");
// Exportar a un archivo o Stream
pdf.SaveAs("output.pdf");
Imports IronPdf
' Instanciar renderizador
Private renderer = New ChromePdfRenderer()
' Create a PDF from a HTML string using C# var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><div style = 'page-break-after always;' /><p> This is 2nd Page </p> ");
' Exportar a un archivo o Stream
pdf.SaveAs("output.pdf")
Este código C# emplea la librería IronPDF para utilizar el ChromePdfRenderer
para generar un documento PDF a partir de una cadena HTML. El contenido HTML incluye un <h1>con el texto "Hola Mundo", seguido de un elemento
con el texto "Esta es la segunda página", creando así un PDF de dos páginas. El código instancia el renderizador, procesa el HTML para producir el PDF, y luego guarda el documento resultante como "output.PDF". IronPDF utiliza el motor de renderizado del navegador Chrome para la conversión de HTML a PDF.
A continuación se muestra el ejemplo de código fuente para convertir HTML a PDF utilizando DinkToPdf.
using DinkToPdf;
var globalSettings = new GlobalSettings
{
ColorMode = ColorMode.Color,
Orientation = Orientation.Portrait,
PaperSize = PaperKind.A4,
};
var objectSettings = new ObjectSettings
{
PagesCount = true,
HtmlContent = "<h1>Hello World</h1><p>This is a PDF document generated from HTML using DinkToPdf.</p>",
};
var pdf = new HtmlToPdfDocument()
{
GlobalSettings = globalSettings,
Objects = { objectSettings }
};
var converter = new BasicConverter(new PdfTools());
byte [] pdfBytes = converter.Convert(pdf);
// Guardar el PDF en un archivo
System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
using DinkToPdf;
var globalSettings = new GlobalSettings
{
ColorMode = ColorMode.Color,
Orientation = Orientation.Portrait,
PaperSize = PaperKind.A4,
};
var objectSettings = new ObjectSettings
{
PagesCount = true,
HtmlContent = "<h1>Hello World</h1><p>This is a PDF document generated from HTML using DinkToPdf.</p>",
};
var pdf = new HtmlToPdfDocument()
{
GlobalSettings = globalSettings,
Objects = { objectSettings }
};
var converter = new BasicConverter(new PdfTools());
byte [] pdfBytes = converter.Convert(pdf);
// Guardar el PDF en un archivo
System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
Imports DinkToPdf
Private globalSettings = New GlobalSettings With {
.ColorMode = ColorMode.Color,
.Orientation = Orientation.Portrait,
.PaperSize = PaperKind.A4
}
Private objectSettings = New ObjectSettings With {
.PagesCount = True,
.HtmlContent = "<h1>Hello World</h1><p>This is a PDF document generated from HTML using DinkToPdf.</p>"
}
Private pdf = New HtmlToPdfDocument() With {
.GlobalSettings = globalSettings,
.Objects = { objectSettings }
}
Private converter = New BasicConverter(New PdfTools())
Private pdfBytes() As Byte = converter.Convert(pdf)
' Guardar el PDF en un archivo
System.IO.File.WriteAllBytes("output.pdf", pdfBytes)
La biblioteca DinkToPdf se importa en el proyecto. A continuación, se establece la configuración global del documento PDF, incluido el modo de color, la orientación (establecer en retrato)y tamaño de papel (A4). La configuración de objetos se configura para especificar opciones individuales para el contenido HTML, como activar la visualización del recuento de páginas y proporcionar el contenido HTML real que se incluirá en el PDF.
A continuación, se crea una instancia HtmlToPdfDocument
y se configura con los parámetros globales y de objeto. Este documento sirve de modelo para el PDF generado. El BasicConverter
, inicializado con PdfTools
, se emplea para convertir el HtmlToPdfDocument
en una matriz byte
, que representa el contenido del PDF resultante.
Por último, el contenido del PDF generado, almacenado en la matriz de bytes, se guarda en un archivo llamado "output.PDF" utilizando el método WriteAllBytes
de la clase System.IO.File
. Este completo proceso demuestra la conversión de contenido HTML a un archivo PDF utilizando DinkToPdf en una aplicación C#.
La conversión de URL a documentos PDF se ha convertido en una práctica esencial para capturar y conservar contenidos web en un formato portátil, facilitando el acceso sin conexión, el archivo y la compartición sencilla. Este proceso permite a los usuarios transformar la información dinámica en línea en un documento visualmente coherente y de fácil distribución.
IronPDF ofrece la función de convertir URL a PDF con facilidad utilizando esta función los desarrolladores pueden crear fácilmente archivos PDF a partir de URL y compartirlos.
using IronPdf;
// Instanciar renderizador
var renderer = new ChromePdfRenderer();
// Crear un PDF a partir de una URL o una ruta de archivo local
var pdf = renderer.RenderUrlAsPdf("https://www.google.com/");
// Exportar a un archivo o Stream
pdf.SaveAs("url.pdf");
using IronPdf;
// Instanciar renderizador
var renderer = new ChromePdfRenderer();
// Crear un PDF a partir de una URL o una ruta de archivo local
var pdf = renderer.RenderUrlAsPdf("https://www.google.com/");
// Exportar a un archivo o Stream
pdf.SaveAs("url.pdf");
Imports IronPdf
' Instanciar renderizador
Private renderer = New ChromePdfRenderer()
' Crear un PDF a partir de una URL o una ruta de archivo local
Private pdf = renderer.RenderUrlAsPdf("https://www.google.com/")
' Exportar a un archivo o Stream
pdf.SaveAs("url.pdf")
Este código C# emplea la librería IronPDF para convertir el contenido de la URL "https://www.google.com/" en un documento PDF. Comienza creando una instancia del ChromePdfRenderer
, que utiliza el motor de renderizado del navegador Chrome para la conversión de HTML a PDF. A continuación, el código genera el documento PDF utilizando la URL especificada y lo guarda como "url.PDF". Este conciso fragmento muestra la sencillez de utilizar IronPDF para transformar contenidos web en un formato PDF portátil.
A continuación se muestra un sencillo ejemplo de código en C# que demuestra cómo utilizar la biblioteca DinkToPdf para convertir una URL en un documento PDF
using DinkToPdf;
class Program
{
static void Main()
{
// Crear conversor
var converter = new BasicConverter(new PdfTools());
// Convertir URL en PDF
var doc = new HtmlToPdfDocument()
{
GlobalSettings = {
ColorMode = ColorMode.Color,
Orientation = Orientation.Portrait,
PaperSize = PaperKind.A4,
Margins = new MarginSettings() { Top = 10 },
Out = @"C:\DinkToPdf\src\DinkToPdf.TestThreadSafe\test.pdf",
},
Objects = {
new ObjectSettings()
{
Page = "http://google.com/",
},
}
};
// Convertir a bytes PDF
byte [] pdfBytes = converter.Convert(document);
// Guardar el PDF en un archivo
System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
Console.WriteLine("PDF generated successfully.");
}
}
using DinkToPdf;
class Program
{
static void Main()
{
// Crear conversor
var converter = new BasicConverter(new PdfTools());
// Convertir URL en PDF
var doc = new HtmlToPdfDocument()
{
GlobalSettings = {
ColorMode = ColorMode.Color,
Orientation = Orientation.Portrait,
PaperSize = PaperKind.A4,
Margins = new MarginSettings() { Top = 10 },
Out = @"C:\DinkToPdf\src\DinkToPdf.TestThreadSafe\test.pdf",
},
Objects = {
new ObjectSettings()
{
Page = "http://google.com/",
},
}
};
// Convertir a bytes PDF
byte [] pdfBytes = converter.Convert(document);
// Guardar el PDF en un archivo
System.IO.File.WriteAllBytes("output.pdf", pdfBytes);
Console.WriteLine("PDF generated successfully.");
}
}
Imports DinkToPdf
Friend Class Program
Shared Sub Main()
' Crear conversor
Dim converter = New BasicConverter(New PdfTools())
' Convertir URL en PDF
Dim doc = New HtmlToPdfDocument() With {
.GlobalSettings = {
ColorMode = ColorMode.Color,
Orientation = Orientation.Portrait,
PaperSize = PaperKind.A4,
Margins = New MarginSettings() With {.Top = 10},
[Out] = "C:\DinkToPdf\src\DinkToPdf.TestThreadSafe\test.pdf"
},
.Objects = {
New ObjectSettings() With {.Page = "http://google.com/"}
}
}
' Convertir a bytes PDF
Dim pdfBytes() As Byte = converter.Convert(document)
' Guardar el PDF en un archivo
System.IO.File.WriteAllBytes("output.pdf", pdfBytes)
Console.WriteLine("PDF generated successfully.")
End Sub
End Class
En este ejemplo, el BasicConverter
se utiliza junto con HtmlToPdfDocument
para especificar la URL a convertir, la configuración global del documento PDF y otras opciones. El contenido PDF resultante se guarda en un archivo llamado "output.PDF". Tenga en cuenta que, en un escenario real, normalmente obtendría el contenido HTML de la URL especificada utilizando WebClient
, HttpClient
o un mecanismo similar.
Las licencias de las bibliotecas IronPDF y DinkToPdf difieren en cuanto a sus respectivos modelos y restricciones de uso. IronPDF emplea un licencias comerciales que suele requerir la adquisición de una licencia para aplicaciones comerciales o empresariales. Ofrece flexibilidad con opciones como la distribución libre de derechos, lo que permite a los desarrolladores incorporar la biblioteca a sus proyectos sin costes adicionales de ejecución.
Por otro lado, DinkToPdf sigue un modelo de código abierto y está disponible bajo la licencia MIT, lo que permite su libre uso, modificación y distribución. A la hora de elegir entre IronPDF y DinkToPdf, la decisión suele depender de los requisitos específicos del proyecto y de consideraciones presupuestarias. La oferta comercial de IronPDF puede ser preferible para las empresas que busquen soporte dedicado, documentación completa y funciones adicionales.
IronPDF es conocido por su completa documentación y sus sólidos recursos de asistencia. La biblioteca ofrece una amplia documentación a menudo se traduce en servicios de asistencia profesionales y receptivos, lo que la convierte en una opción ventajosa para los desarrolladores que valoran una documentación completa y una asistencia fiable.
DinkToPdf, al ser un proyecto de código abierto, depende de las contribuciones de la comunidad para la documentación y el soporte. Aunque cuenta con una comunidad activa, la documentación puede no ser tan extensa o estructurada en comparación con una biblioteca respaldada comercialmente como IronPDF. El nivel de apoyo suele estar impulsado por la comunidad, y los desarrolladores recurren a foros, debates y recursos comunitarios para obtener ayuda. Aunque la naturaleza de código abierto fomenta la colaboración, los desarrolladores pueden encontrarse con que el nivel de documentación y asistencia puede no estar a la altura de soluciones comerciales como IronPDF.
La comparación entre DinkToPdf y IronPDF destaca características y consideraciones distintas para los desarrolladores que buscan bibliotecas C# para la generación de PDF. DinkToPdf, una solución de código abierto bajo licencia MIT, destaca por su sencillez, eficacia y compatibilidad multiplataforma para la conversión de HTML a PDF utilizando el motor de renderizado Webkit. Su soporte activo por parte de la comunidad y sus opciones de personalización lo convierten en una opción valiosa para diversas aplicaciones.
Por otro lado, IronPDF, con su modelo de licencia comercial, proporciona un marco completo y rico en funciones. Conocido por su API de fácil uso, su optimización del rendimiento y su amplia gama de funciones, IronPDF ofrece características avanzadas como la seguridad de los documentos, los formularios interactivos y la generación de códigos de barras. Su versatilidad la convierte en una solución robusta para diversos requisitos relacionados con PDF.
IronPDF representa una opción convincente frente a DinkToPdf para los desarrolladores de C# que busquen una biblioteca de generación de PDF completa y repleta de funciones. Con su modelo de licencia comercial, IronPDF ofrece una serie de funcionalidades avanzadas, como la seguridad de los documentos, formularios interactivos y generación de códigos de barras. Su API fácil de usar, su rendimiento optimizado y su mantenimiento activo lo hacen especialmente adecuado para empresas y proyectos con requisitos diversos y exigentes relacionados con PDF. Mientras que DinkToPdf funciona admirablemente en escenarios de código abierto y de bajo presupuesto, el amplio conjunto de funciones de IronPDF y su soporte dedicado lo convierten en la solución preferida para aquellos que priorizan las capacidades avanzadas y la generación de PDF de nivel profesional en sus aplicaciones.
IronPDF ofrece un licencia de prueba para los usuarios. Es una gran oportunidad para conocer la biblioteca IronPDF y sus funciones. También Iron Software ofrece la Suite de 7 Bibliotecas al precio de dos, que incluye las bibliotecas como IronXL y IronOCR junto con IronPDF. Para el tutorial completo sobre IronPDF HTML a PDF ejemplo visita en el siguiente tutorial página.
9 productos API .NET para sus documentos de oficina