Saltar al pie de página
COMPARACIONES DE PRODUCTOS

Una Comparación de Crear PDF en C# entre ITextSharp e IronPDF

Una guía comparativa para crear PDFs en C# con iTextSharp e IronPDF

En esta era moderna de medios digitales, el Formato de Documento Portátil (PDF) se destaca como uno de los formatos de documento estándar más universalmente utilizados para transferir datos sin perder el formato. Su versatilidad, independencia de plataforma y capacidad para preservar el formato del documento lo convierten en una elección ideal para compartir información.

Crear PDFs programáticamente es una necesidad común tanto en aplicaciones de escritorio como web. Crear PDFs programáticamente permite a los desarrolladores generar documentos dinámicamente basados en datos en tiempo real.

Esto es particularmente valioso para aplicaciones que necesitan generar informes, facturas o certificados al instante. El formato de archivo PDF es creado por Adobe, que ofrece la capacidad de crear PDFs y puedes explorar sus características en Adobe Create PDF.

En este artículo, exploraremos el proceso de creación de documentos PDF programáticamente en C# con dos bibliotecas populares iTextSharp e IronPDF.

Introducción a la biblioteca iTextSharp

iTextSharp, lanzado en diciembre de 2009, emergió como una herramienta PDF revolucionaria, superando a su predecesor, iText 2. Como la versión .NET de iText 5, pavimentó el camino para funcionalidades avanzadas de PDF programables. iTextSharp, la versión .NET de iText 5, ha sido durante mucho tiempo una fuente confiable para crear un objeto de documento PDF programable.

Resumen de creación de PDFs con iTextSharp

  1. Crea un nuevo proyecto C# en Visual Studio.
  2. Instala la biblioteca iTextSharp desde el Administrador de Paquetes NuGet.
  3. Crea una instancia de la clase PdfDocument.
  4. Instancialo con el objeto PdfWriter.
  5. Crea un objeto Document y pásale el objeto PdfDocument.
  6. Agrega texto al objeto Document usando la clase Paragraph.
  7. Cierra el objeto Document.

Características clave de iText 5

Aquí están algunas características clave importantes del DLL de iTextSharp:

Generación dinámica de PDFs

iTextSharp empodera a los desarrolladores para generar o manipular documentos PDF dinámicamente. Esta característica es inestimable para la creación de documentos e informes basados en datos de archivos XML o bases de datos.

Formularios interactivos

La biblioteca facilita la creación y el llenado de formularios interactivos, mejorando la participación del usuario y la interactividad.

Características avanzadas de PDF

iTextSharp permite a los desarrolladores explotar numerosas características interactivas, como añadir marcadores, números de página, marcas de agua y más a archivos PDF existentes. Esta flexibilidad es esencial para adaptar PDFs a requisitos específicos.

Creación de mapas y libros

Los desarrolladores pueden aprovechar iTextSharp para crear mapas y libros, expandiendo la aplicación de la biblioteca más allá de la generación básica de documentos.

Cumplimiento de estándares PDF

iTextSharp soporta varios estándares PDF, incluyendo PDF/A para archivo, PDF/UA para accesibilidad, ZUGFeRD para facturación electrónica y PDF 2.0 (aunque no todas las funcionalidades están cubiertas).

El lanzamiento de iText Core versión 8

Mientras iTextSharp ha sido una opción robusta para la manipulación de PDF, iText 5/iTextSharp ha sido superado por iText Core versión 8, que trae numerosas mejoras. Se recomienda a los desarrolladores considerar la transición de proyectos existentes a iText 8 para beneficiarse de las últimas versiones.

Características clave de la versión 8 de iText Core

Aquí están algunas características clave de la versión 8 de iText 7:

Funcionalidad mejorada

iText introduce mejoras en funcionalidad, rendimiento y extensibilidad en comparación con su predecesor.

APIs mejoradas

La última versión proporciona APIs mejoradas para un desarrollo más intuitivo y eficiente.

Documentación y soporte

iText viene con documentación y soporte actualizados, asegurando una experiencia de desarrollo más fluida.

Facturación optimizada

Con la Suite de la versión 8 de iText 7, los desarrolladores pueden optimizar la facturación, asegurando el archivo a largo plazo y abordando problemas de cumplimiento a través de su potente SDK de PDF.

Creación de PDFs con iTextSharp en profundidad

Paso 1: Instalar la biblioteca iTextSharp

Para crear un documento PDF con iTextSharp, sigue estos pasos para instalar la biblioteca usando el Administrador de Paquetes NuGet:

  1. Abre Visual Studio y crea un nuevo proyecto.
  2. Haz clic derecho sobre el proyecto en el Explorador de Soluciones y selecciona "Gestionar paquetes NuGet".

    Una comparación de creación de PDF en C# entre Itextsharp e IronPDF Figura 1 - Explorer de soluciones NuGet

  3. En la ventana del "Administrador de Paquetes NuGet", selecciona la pestaña "Explorar".
  4. Escribe "iTextSharp" en la barra de búsqueda y presiona Enter.

    Una comparación de creación de PDF en C# entre Itextsharp e IronPDF Figura 2 - Buscando iText 7

  5. Selecciona "iText 7" de los resultados de búsqueda y haz clic en "Instalar".
  6. Revisa y acepta las dependencias, luego haz clic en "OK" para continuar.
  7. Espera a que se complete la instalación, y ahora se puede agregar iTextSharp a tu proyecto.

Paso 2: Código para crear un documento PDF con iTextSharp

Ahora, exploremos un ejemplo básico de crear un PDF usando iTextSharp:

using System;
using System.IO;
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;

class Program
{
    static void Main(string[] args)
    {
        // Create a new PDF document with a FileStream and PdfWriter
        using (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(new FileStream("/myfiles/hello.pdf", FileMode.Create, FileAccess.Write))))
        {
            // Create a document object
            using (Document doc = new Document(pdfDocument))
            {
                // Add a paragraph to the document
                string line = "Hello! Welcome to iTextSharp. Created with latest iText core version 8.";
                doc.Add(new Paragraph(line));
            }
        }

        // Print a message to the console
        Console.WriteLine("PDF created successfully!");
    }
}
using System;
using System.IO;
using iText.Kernel.Pdf;
using iText.Layout;
using iText.Layout.Element;

class Program
{
    static void Main(string[] args)
    {
        // Create a new PDF document with a FileStream and PdfWriter
        using (PdfDocument pdfDocument = new PdfDocument(new PdfWriter(new FileStream("/myfiles/hello.pdf", FileMode.Create, FileAccess.Write))))
        {
            // Create a document object
            using (Document doc = new Document(pdfDocument))
            {
                // Add a paragraph to the document
                string line = "Hello! Welcome to iTextSharp. Created with latest iText core version 8.";
                doc.Add(new Paragraph(line));
            }
        }

        // Print a message to the console
        Console.WriteLine("PDF created successfully!");
    }
}
Imports System
Imports System.IO
Imports iText.Kernel.Pdf
Imports iText.Layout
Imports iText.Layout.Element

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Create a new PDF document with a FileStream and PdfWriter
		Using pdfDocument As New PdfDocument(New PdfWriter(New FileStream("/myfiles/hello.pdf", FileMode.Create, FileAccess.Write)))
			' Create a document object
			Using doc As New Document(pdfDocument)
				' Add a paragraph to the document
				Dim line As String = "Hello! Welcome to iTextSharp. Created with latest iText core version 8."
				doc.Add(New Paragraph(line))
			End Using
		End Using

		' Print a message to the console
		Console.WriteLine("PDF created successfully!")
	End Sub
End Class
$vbLabelText   $csharpLabel

En este código fuente, creamos un nuevo documento PDF pasando un objeto de la clase PdfWriter. El objeto FileStream especifica el nombre del archivo PDF y el modo de archivo para crear el documento PDF. Luego pasamos este objeto PdfDocument a la clase Document para la creación del PDF.

Finalmente, añadimos un texto de cadena como un nuevo párrafo con el texto "¡Hola! Bienvenido a iTextSharp. Creado con la última versión principal de iText 8." y cerramos el documento para guardar memoria. El documento PDF creado se guarda como "hello.pdf" en la ubicación especificada dentro de la carpeta 'myfiles'.

¡Una comparación de creación de PDF en C# entre Itextsharp e IronPDF Figura 3 - PDF de salida del código iTextsharp

Introducción a IronPDF

IronPDF es una completa biblioteca de C# que empodera a los desarrolladores para interactuar con PDFs de manera versátil y eficiente. Ya sea que estés creando PDFs desde cero, convirtiendo HTML y CSS a PDF o agregando características avanzadas como firmas digitales y marcas de agua, IronPDF proporciona un rico conjunto de herramientas para todas tus necesidades relacionadas con PDFs.

Características Clave de IronPDF

Conversión de HTML a PDF

IronPDF sobresale en convertir HTML y CSS a documentos PDF de alta calidad. Esta característica es particularmente valiosa para desarrolladores que tratan con contenido web o informes basados en HTML dinámico.

Creación y manipulación de PDFs

Los desarrolladores pueden crear PDFs desde cero, añadir contenido dinámicamente y manipular PDFs existentes con facilidad. Esta flexibilidad permite la generación de documentos personalizados adaptados a requisitos específicos.

Texto, Imágenes y Formularios

IronPDF soporta la inclusión de texto, imágenes, tablas y formularios en tu documento PDF. Esto lo convierte en una herramienta versátil para crear diversos tipos de contenido dentro de PDFs.

  1. Aplicaciones web: Para PDFs que necesitan ser descargados por usuarios, la compresión ayuda a reducir los tiempos de carga y el uso de ancho de banda.

La seguridad es primordial, e IronPDF permite la adición de firmas digitales a documentos PDF. Esta característica es crucial para aplicaciones que manejan información sensible o documentos legales.

Marcas de agua y anotaciones

Mejora tus PDFs con marcas de agua, anotaciones y metadatos adicionales. IronPDF proporciona los medios para agregar elementos visuales y notas a tus documentos, mejorando la comunicación y la claridad del documento.

Cumplimiento de PDF/A y PDF/UA

IronPDF soporta el cumplimiento con estándares PDF/A para archivo y estándares PDF/UA para accesibilidad. Esto asegura que tus documentos cumplen con los estándares de la industria para el archivo a largo plazo y requisitos de accesibilidad.

Soporte multiplataforma

IronPDF está diseñado para funcionar sin problemas a través de diferentes plataformas, proporcionando una experiencia consistente para los desarrolladores que trabajan en varios entornos.

Interfaz amigable para el usuario

La biblioteca viene con una API amigable para el usuario que simplifica las complejas operaciones de PDF. Esto permite a los desarrolladores centrarse en la lógica de la aplicación en lugar de resolver complejidades de funcionalidades PDF.

Creación de PDFs con IronPDF

Paso 1: Instalar la biblioteca IronPDF

Para comenzar con IronPDF, sigue estos pasos para instalar la biblioteca usando el Administrador de Paquetes NuGet:

  1. Abre Visual Studio y crea un nuevo proyecto.
  2. Haz clic derecho sobre el proyecto en el Explorador de Soluciones y selecciona "Gestionar paquetes NuGet".
  3. En la ventana del "Administrador de Paquetes NuGet", selecciona la pestaña "Explorar".

    Una comparación de creación de PDF en C# entre Itextsharp e IronPDF Figura 4 - Buscando IronPDF

  4. Escribe "IronPDF" en la barra de búsqueda y presiona Enter.
  5. Selecciona "IronPDF" de los resultados de búsqueda y haz clic en "Instalar".
  6. Revisa y acepta las dependencias, luego haz clic en "OK" para continuar.
  7. Espera a que se complete la instalación, y ahora se puede agregar IronPDF a tu proyecto.

Paso 2: Código para crear un documento PDF con IronPDF

Ahora, veamos el siguiente código para crear un PDF desde una cadena HTML usando IronPDF:

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate renderer
        var renderer = new ChromePdfRenderer();

        // Create a PDF from an HTML string using C#
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

        // Export to a file or Stream
        pdf.SaveAs("output.pdf");

        // Print a message to the console
        Console.WriteLine("PDF created successfully using IronPDF!");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Instantiate renderer
        var renderer = new ChromePdfRenderer();

        // Create a PDF from an HTML string using C#
        var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

        // Export to a file or Stream
        pdf.SaveAs("output.pdf");

        // Print a message to the console
        Console.WriteLine("PDF created successfully using IronPDF!");
    }
}
Imports IronPdf

Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Instantiate renderer
		Dim renderer = New ChromePdfRenderer()

		' Create a PDF from an HTML string using C#
		Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>")

		' Export to a file or Stream
		pdf.SaveAs("output.pdf")

		' Print a message to the console
		Console.WriteLine("PDF created successfully using IronPDF!")
	End Sub
End Class
$vbLabelText   $csharpLabel

En el anterior código fuente, creamos un nuevo ChromePdfRenderer, renderizamos el contenido de la cadena HTML (en este caso, un encabezado) como un PDF y guardamos el documento PDF generado como "output.pdf". IronPDF convierte HTML en un documento PDF a la perfección de píxeles.

Para generar PDFs con más control, como establecer el tamaño de la página, añadir archivos de imagen, información meta y otros elementos, por favor visita esta documentación para más información.

¡Una comparación de creación de PDF en C# entre Itextsharp e IronPDF Figura 5 - PDF de salida del código IronPDF

Conclusión

Tanto IronPDF como iTextSharp, ahora formalmente conocido como iText, son formidables bibliotecas para crear PDFs en C#, cada uno con sus fortalezas.

IronPDF se destaca por su interfaz amigable para el usuario y extensa documentación, lo que lo convierte en una excelente opción para desarrolladores que buscan simplicidad. iTextSharp, por otro lado, es reconocido por su robusto conjunto de características, especialmente en entornos donde la manipulación avanzada de PDF es crucial.

Tanto iText como IronPDF son soluciones robustas para generación y manipulación de PDF, pero IronPDF tiende a superar a iText en términos de velocidad y eficiencia. Esta ventaja se atribuye a la arquitectura optimizada de IronPDF, aprovechando el código nativo para tareas críticas y asegurando un alto rendimiento.

Notablemente, IronPDF sobresale en el renderizado HTML, haciendo la generación de PDFs desde HTML más rápida en comparación con los métodos tradicionales empleados por iText. Además, IronPDF tiende a ser más eficiente en memoria, particularmente ventajoso en entornos con recursos limitados. En general, la arquitectura simplificada de IronPDF y su habilidad en el renderizado HTML contribuyen a su ligera ventaja en rendimiento sobre iText.

Para una comparación completa entre IronPDF e iTextSharp, por favor visita esta comparación detallada entre IronPDF e iTextSharp.

IronPDF proporciona una licencia de prueba gratuita para más información. Descarga la biblioteca desde la página de descarga de IronPDF.

Por favor notaiText Core versión 8 es una marca registrada de su respectivo propietario. Este sitio no está afiliado, respaldado o patrocinado por iText Core versión 8. Todos los nombres de productos, logotipos y marcas son propiedad de sus respectivos dueños. Las comparaciones son solo para fines informativos y reflejan información públicamente disponible en el momento de la redacción.

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 las principales diferencias entre iTextSharp e IronPDF?

iTextSharp es conocido por su conjunto robusto de características, incluyendo generación dinámica de PDF y formularios interactivos, mientras que IronPDF sobresale en la conversión de HTML a PDF, interfaz amigable y mayor eficiencia en el manejo de contenido HTML.

¿Cómo se crea un documento PDF programáticamente en C#?

Para crear un documento PDF programáticamente en C#, puedes usar IronPDF para renderizar fácilmente HTML y CSS en documentos PDF o usar iTextSharp para un enfoque más tradicional con objetos PdfDocument y Document.

¿Qué mejoras ofrece la versión 8 de iText Core?

La versión 8 de iText Core ofrece funcionalidad mejorada, APIs mejoradas, mejor documentación y capacidades optimizadas para tareas como la facturación en comparación con su predecesor, iTextSharp.

¿Cómo se instala IronPDF en un proyecto de C#?

IronPDF se puede instalar en un proyecto de C# a través del Gestor de Paquetes NuGet en Visual Studio buscando 'IronPDF' y siguiendo las indicaciones para completar la instalación.

¿Qué características ofrece IronPDF para la generación de PDF?

IronPDF proporciona características como conversión de HTML a PDF, la capacidad de añadir texto, imágenes, formularios, marcas de agua y firmas digitales a los PDFs, además de soporte multiplataforma y una interfaz amigable.

¿Hay una versión de prueba disponible para IronPDF?

Sí, IronPDF ofrece una licencia de prueba gratuita disponible en su sitio web, permitiendo a los desarrolladores explorar y probar sus características y capacidades.

¿A qué normas de cumplimiento se adhiere IronPDF?

IronPDF es compatible con las normas de cumplimiento PDF/A para archivado y PDF/UA para accesibilidad, asegurando que los documentos cumplan con los estándares de la industria.

¿Por qué se prefiere IronPDF para renderizar HTML?

IronPDF se prefiere para renderizar HTML porque utiliza un ChromePdfRenderer para convertir HTML y CSS directamente en documentos PDF de alta calidad, ofreciendo una representación perfecta de contenido web.

¿Cuáles son los escenarios comunes de solución de problemas con las bibliotecas PDF en C#?

Los escenarios comunes de solución de problemas incluyen problemas de instalación, errores de renderización con contenido HTML y compatibilidad con diferentes versiones de .NET. IronPDF proporciona documentación extensa y soporte para abordar estos desafíos.

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