Saltar al pie de página
COMPARACIONES DE PRODUCTOS

Cómo Unir Archivos PDF Usando iTextSharp

La fusión de documentos PDF es un requisito común en varias aplicaciones de software, como los sistemas de gestión de documentos, herramientas de generación de informes y más. En el ecosistema .NET, los desarrolladores tienen varias bibliotecas a su disposición para manipular archivos PDF. iTextSharp e IronPDF son dos opciones populares para trabajar con PDFs en aplicaciones C#. En este artículo, exploraremos cómo combinar PDFs usando iTextSharp y lo compararemos con IronPDF para ayudarte a tomar una decisión informada al elegir una biblioteca para tus necesidades de manipulación de PDF.

Cómo fusionar archivos PDF usando iTextSharp

Aquí tienes una guía paso a paso sobre cómo fusionar PDFs usando iTextSharp:

  1. Crea un nuevo objeto Document y especifica una ruta base para tus archivos PDF.
  2. Abre el Document para editar.
  3. Define un arreglo de nombres de archivos PDF a fusionar.
  4. Para cada archivo PDF en la lista, crea un PdfReader, agrega su contenido al objeto PdfCopy y luego cierra el PdfReader.
  5. Cierra el Document, finalizando el PDF fusionado.

IronPDF

IronPDF Webpage es una biblioteca .NET que capacita a los desarrolladores para crear, modificar e interactuar con documentos PDF dentro de sus aplicaciones en C# y .NET. Simplifica las tareas relacionadas con PDF ofreciéndo características como la generación de PDF desde cero, conversión de HTML a PDF, manipulación de PDF (incluída la adición, eliminación y modificación de contenido), manejo de formularios interactivos, fusión y división de PDF, encriptación y compatibilidad multiplataforma, convirtiéndola en una herramienta valiosa para una amplia gama de aplicaciones que requieren gestión y generación de documentos PDF.

iTextSharp

iTextSharp ha sido reemplazado por iText 7, ya que ha alcanzado su fin de vida útil (EOL), con solo correcciones de seguridad en mente. Se recomienda encarecidamente usar iText 7 o considerar la transición de los existentes para nuevos proyectos. iText 7 ofrece mejoras significativas, incluyendo conversión de HTML a PDF, redacción de PDF, soporte para SVG, mejor soporte para idiomas, herramientas de depuración, extracción de datos y una funcionalidad más modular. Simplifica el manejo de documentos PDF y está disponible bajo licencias AGPL y Comerciales.

Instalar Biblioteca IronPDF

Para instalar el paquete NuGet de IronPDF en tu proyecto de Visual Studio, puedes seguir estos pasos:

  1. Comienza abriendo tu proyecto en Visual Studio donde deseas usar la biblioteca IronPDF.
  2. Si estás usando Visual Studio, ve a Herramientas > Administrador de paquetes NuGet > Consola del administrador de paquetes.
  3. En la Consola del administrador de paquetes, ejecuta el siguiente comando para instalar IronPDF:
Install-Package IronPdf

Visual Studio descargará e instalará el paquete y sus dependencias. Puedes monitorizar el progreso en la ventana de Salida. Una vez que la instalación esté completa, puedes comenzar a usar IronPDF en tu código C#.

**Cómo fusionar archivos PDF usando iTextSharp: Figura 1 - La instalación completada se muestra en el terminal incorporado de Visual Studio.**

Con IronPDF instalado exitosamente, puedes ahora comenzar a usarlo en tu proyecto. Incluye las declaraciones "using" necesarias en tus archivos de código y empieza a trabajar con PDFs utilizando la funcionalidad de IronPDF.

using IronPdf;
using IronPdf;
Imports IronPdf
$vbLabelText   $csharpLabel

Ahora puedes acceder a las características y funcionalidades proporcionadas por IronPDF para trabajar con documentos PDF en tu proyecto C#. Recuerda guardar tu proyecto y compilarlo para garantizar que la biblioteca esté integrada correctamente.

Instalar iTextSharp PDF Library

Para instalar la biblioteca PDF de iTextSharp en un proyecto C#, sigue estos pasos:

  1. Abre el proyecto C# donde deseas usar la biblioteca iTextSharp en tu entorno de desarrollo integrado (IDE) favorito, como Visual Studio.
  2. Ve a Herramientas > Administrador de paquetes NuGet > Consola del administrador de paquetes.
  3. En la Consola del administrador de paquetes, ejecuta el siguiente comando:
Install-Package iTextSharp

Este comando indica a NuGet (el administrador de paquetes de Visual Studio) que descargue e instale el paquete iTextSharp y sus dependencias en tu proyecto.

NuGet descargará e instalará el paquete iTextSharp y las dependencias requeridas. Puedes monitorizar el progreso de la instalación en la Consola del administrador de paquetes.

**Cómo fusionar archivos PDF usando iTextSharp**: Figura 2 - La instalación completada se muestra en el terminal incorporado de Visual Studio.

Una vez que la instalación esté completa, verás un mensaje de confirmación en la Consola del Administrador de Paquetes indicando que el paquete iTextSharp ha sido instalado con éxito. Con iTextSharp instalado exitosamente, puedes ahora comenzar a usarlo en tu proyecto. Incluye las declaraciones using necesarias en tus archivos de código y comienza a trabajar con PDFs usando la funcionalidad de iTextSharp.

Fusionar archivos PDF en un único documento PDF utilizando IronPDF

IronPDF proporciona un método directo para fusionar múltiples archivos PDF en un solo PDF. IronPDF ofrece gran flexibilidad cuando se trata de fusionar documentos PDF. El siguiente código de muestra demuestra la fusión de PDFs en un único archivo PDF:

using IronPdf;
using System.Collections.Generic;

static void Main(string[] args)
{
    string basePath = @"D:\PDFFiles\";
    string[] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    // Create a list to hold the PDF documents to be merged
    List<PdfDocument> docList = new List<PdfDocument>();

    // Add each PDF to the list
    foreach (string filename in pdfFiles)
    {
        docList.Add(new PdfDocument(basePath + filename));
    }

    // Merge the PDFs into one document
    var mergedPDF = PdfDocument.Merge(docList);

    // Save the merged PDF to the specified path
    mergedPDF.SaveAs(basePath + "mergePDFbyIronPDF.pdf");
}
using IronPdf;
using System.Collections.Generic;

static void Main(string[] args)
{
    string basePath = @"D:\PDFFiles\";
    string[] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    // Create a list to hold the PDF documents to be merged
    List<PdfDocument> docList = new List<PdfDocument>();

    // Add each PDF to the list
    foreach (string filename in pdfFiles)
    {
        docList.Add(new PdfDocument(basePath + filename));
    }

    // Merge the PDFs into one document
    var mergedPDF = PdfDocument.Merge(docList);

    // Save the merged PDF to the specified path
    mergedPDF.SaveAs(basePath + "mergePDFbyIronPDF.pdf");
}
Imports IronPdf
Imports System.Collections.Generic

Shared Sub Main(ByVal args() As String)
	Dim basePath As String = "D:\PDFFiles\"
	Dim pdfFiles() As String = { "PdfFile_1.pdf", "PdfFile_2.pdf" }

	' Create a list to hold the PDF documents to be merged
	Dim docList As New List(Of PdfDocument)()

	' Add each PDF to the list
	For Each filename As String In pdfFiles
		docList.Add(New PdfDocument(basePath & filename))
	Next filename

	' Merge the PDFs into one document
	Dim mergedPDF = PdfDocument.Merge(docList)

	' Save the merged PDF to the specified path
	mergedPDF.SaveAs(basePath & "mergePDFbyIronPDF.pdf")
End Sub
$vbLabelText   $csharpLabel

El código anterior utiliza la biblioteca IronPDF para fusionar dos archivos PDF ("PdfFile_1.pdf" y "PdfFile_2.pdf") ubicados en la ruta base especificada ("D:\PDFFiles"). Crea una lista de objetos PdfDocument, agrega los PDFs de entrada a la lista, los fusiona en un solo PDF mediante PdfDocument.Merge y guarda el PDF fusionado como "mergePDFbyIronPDF.pdf" en la misma ruta base.

Los siguientes son los PDFs de ejemplo utilizados en este ejemplo:

!Cómo fusionar archivos PDF usando iTextSharp: Figura 3 - Un simple archivo PDF, con un título "Un archivo PDF simple" y algo de texto en el cuerpo debajo, junto con un artículo PDF de una página.

El siguiente es el archivo PDF fusionado:

!Cómo fusionar archivos PDF usando iTextSharp: Figura 4 - El PDF combinado, con el PDF simple primero y el artículo en segundo lugar.

Fusionar múltiples archivos PDF utilizando iTextSharp

iTextSharp no proporciona un método directo para fusionar archivos PDF. Sin embargo, podemos lograrlo abriendo cada PDF de entrada y agregando su contenido al documento de salida. El siguiente código de muestra fusiona archivos PDF en un único documento PDF:

using iTextSharp.text;
using iTextSharp.text.pdf;
using System.IO;

static void Main(string[] args)
{
    // Create a new Document
    Document doc = new Document();

    string basePath = @"D:\PDFFiles\";

    // Create a PdfCopy instance to copy pages from source PDFs
    PdfCopy copy = new PdfCopy(doc, new FileStream(basePath + "mergePdf.pdf", FileMode.Create));

    // Open the document for writing
    doc.Open();

    string[] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    // Loop through all the PDF files to be merged
    foreach (string filename in pdfFiles)
    {
        // Read the content of each PDF
        PdfReader reader = new PdfReader(basePath + filename);

        // Add the document to PdfCopy
        copy.AddDocument(reader);

        // Close the reader
        reader.Close();
    }

    // Close the Document
    doc.Close();
}
using iTextSharp.text;
using iTextSharp.text.pdf;
using System.IO;

static void Main(string[] args)
{
    // Create a new Document
    Document doc = new Document();

    string basePath = @"D:\PDFFiles\";

    // Create a PdfCopy instance to copy pages from source PDFs
    PdfCopy copy = new PdfCopy(doc, new FileStream(basePath + "mergePdf.pdf", FileMode.Create));

    // Open the document for writing
    doc.Open();

    string[] pdfFiles = { "PdfFile_1.pdf", "PdfFile_2.pdf" };

    // Loop through all the PDF files to be merged
    foreach (string filename in pdfFiles)
    {
        // Read the content of each PDF
        PdfReader reader = new PdfReader(basePath + filename);

        // Add the document to PdfCopy
        copy.AddDocument(reader);

        // Close the reader
        reader.Close();
    }

    // Close the Document
    doc.Close();
}
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports System.IO

Shared Sub Main(ByVal args() As String)
	' Create a new Document
	Dim doc As New Document()

	Dim basePath As String = "D:\PDFFiles\"

	' Create a PdfCopy instance to copy pages from source PDFs
	Dim copy As New PdfCopy(doc, New FileStream(basePath & "mergePdf.pdf", FileMode.Create))

	' Open the document for writing
	doc.Open()

	Dim pdfFiles() As String = { "PdfFile_1.pdf", "PdfFile_2.pdf" }

	' Loop through all the PDF files to be merged
	For Each filename As String In pdfFiles
		' Read the content of each PDF
		Dim reader As New PdfReader(basePath & filename)

		' Add the document to PdfCopy
		copy.AddDocument(reader)

		' Close the reader
		reader.Close()
	Next filename

	' Close the Document
	doc.Close()
End Sub
$vbLabelText   $csharpLabel

El código anterior usando iTextSharp fusiona dos archivos PDF ("PdfFile_1.pdf" y "PdfFile_2.pdf") de la ruta base especificada ("D:\PDFFiles") en un único PDF llamado "mergePdf.pdf". Logra esto abriendo cada PDF de entrada, agregando su contenido al documento de salida y luego cerrando los documentos. El código anterior fusionará múltiples PDFs en un solo PDF.

Hemos usado dos archivos de entrada de la siguiente manera:

!Cómo fusionar archivos PDF usando iTextSharp: Figura 5 - Los mismos PDFs de entrada que anteriormente.

El nuevo archivo creado por nuestro código es el siguiente:

!Cómo fusionar archivos PDF usando iTextSharp: Figura 6 - El PDF combinado, con el PDF simple primero y el artículo en segundo lugar.

Conclusión

En comparación con iTextSharp, IronPDF emerge como la opción superior para fusionar documentos PDF en aplicaciones C#. Mientras que ambas bibliotecas son capaces, IronPDF ofrece una interfaz más amigable, características modernas como conversión de HTML a PDF, opciones de licencia claras, una integración sencilla a través de NuGet y desarrollo activo, simplificando colectivamente el proceso de fusión, reduciendo el tiempo de desarrollo y asegurando una solución más confiable para tareas relacionadas con PDF. Su interfaz amigable, conjunto de características robusto y desarrollo continuo hacen de IronPDF la solución superior para fusionar PDFs en C#.

Por favor notaiText 7 es una marca registrada de su respectivo propietario. Este sitio no está afiliado, respaldado, ni patrocinado por iText 7. 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 combinar archivos PDF en C#?

Puedes combinar archivos PDF en C# usando IronPDF al crear una lista de objetos PdfDocument y utilizar el método PdfDocument.Merge para combinarlos en un solo documento PDF.

¿Cuáles son los beneficios de usar IronPDF para la manipulación de PDF?

IronPDF ofrece una interfaz fácil de usar, funciones modernas como la conversión de HTML a PDF, formularios interactivos y compatibilidad multiplataforma, convirtiéndose en una herramienta eficiente para la manipulación de PDF en aplicaciones C#.

¿Cómo instalo una biblioteca PDF en Visual Studio para proyectos C#?

Para instalar IronPDF en un proyecto de Visual Studio C#, utiliza el Administrador de Paquetes NuGet ejecutando el comando 'Install-Package IronPDF' en la Consola del Administrador de Paquetes.

¿Cuáles son las diferencias entre iTextSharp e IronPDF para combinar PDFs?

iTextSharp requiere agregar manualmente contenido de cada documento PDF, mientras que IronPDF proporciona una solución más directa con un método específico para combinar PDFs, reduciendo el tiempo de desarrollo y la complejidad.

¿Por qué deberían los desarrolladores hacer la transición de iTextSharp a iText 7 o IronPDF?

Los desarrolladores deberían hacer la transición porque iTextSharp ha llegado a su fin de vida útil, mientras que iText 7 ofrece funcionalidades mejoradas. Sin embargo, IronPDF proporciona características aún más modernas y facilidad de uso, siendo una opción superior para la manipulación de PDF.

¿Puede IronPDF manejar más que solo combinar archivos PDF?

Sí, IronPDF admite una amplia gama de manipulaciones de PDF, incluidas la generación de PDFs desde cero, la conversión de HTML a PDF, la modificación de contenido, la gestión de formularios y la aplicación de cifrado.

¿Qué hace que IronPDF sea una elección confiable para la manipulación de PDF en C#?

IronPDF se desarrolla activamente, ofrece características modernas y proporciona una interfaz fácil de usar que simplifica las tareas de manipulación de PDF, lo que lo convierte en una opción confiable y eficiente para los desarrolladores.

¿Cómo mejora IronPDF el proceso de combinación de PDFs en comparación con bibliotecas más antiguas?

IronPDF mejora el proceso de combinación al ofrecer métodos directos para combinar archivos PDF, agilizando la integración con proyectos C# y reduciendo el tiempo de desarrollo general.

¿Qué consideraciones deben tener en cuenta los desarrolladores al elegir una biblioteca PDF para C#?

Los desarrolladores deben considerar factores como la facilidad de uso, el conjunto de funciones, las opciones de licencia, la compatibilidad y el soporte de desarrollo activo al elegir una biblioteca PDF para proyectos C#. IronPDF sobresale en estas áreas, siendo la opción preferida.

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