USO DE IRONPDF PARA JAVA

Cómo dividir archivos PDF en Java

Actualizado 25 de febrero, 2023
Compartir:

PDF (Formato de documento portátil) es el formato más popular para enviar y recibir datos en línea. Este formato digital permite conservar el formato de los datos enviados, lo que también ayuda a imprimir el documento. Los archivos PDF ofrecen la posibilidad de integrar varios tipos de contenido en el documento, como texto, imágenes, gráficos en 3D, vídeos, archivos de audio, campos editables, botones e hipervínculos.

Como desarrollador, en Java es habitual trabajar con PDF, ya sea para almacenar datos o para recuperarlos. A veces puede resultar difícil realizar estas tareas, pero gracias a IronPDF - A Java Library, ahora es muy fácil trabajar con archivos PDF. Podemos fusionar varios archivos de una sola página en un solo archivo PDF. Del mismo modo, un único archivo PDF se puede dividir en varios archivos PDF. En este artículo, utilizaré IronPDF en Java para dividir archivos PDF a partir de un archivo PDF de origen.

Biblioteca PDF Java IronPDF

IronPDF una biblioteca Java que prioriza la precisión, la facilidad de uso y la velocidad. Está especialmente diseñado para Java y es fácil de usar cuando se trabaja con documentos PDF. Hereda toda su funcionalidad de una biblioteca IronPDF bien establecida para .NET Framework. Esto convierte a IronPDF for Java en una herramienta versátil para trabajar con documentos PDF en diversos contextos. Es un paquete completo para generar PDF, formatear PDF y editar PDF.

Pasos para dividir archivos PDF

Requisitos previos para la configuración del proyecto

Para que IronPDF funcione con PDF en un proyecto Java Maven, deberá asegurarse de que dispone de los siguientes requisitos previos:

  1. **JDK (Kit de desarrollo Java)Debes tener una versión actualizada de Java en tu ordenador junto con un IDE. Si no lo tiene, descargue el último JDK de la página Sitio web de Oracle. Utiliza cualquier IDE como NetBeans, Eclipse o IntelliJ.
  2. Maven: Para gestionar tu proyecto y dependencias, Maven es una importante herramienta construida específicamente para proyectos Java. Descargue Maven de la página Sitio web de Apache Maven si no lo tienes instalado.
  3. Biblioteca Java IronPDF: Ahora necesita la biblioteca Java IronPDF. Esto puede hacerse añadiendo la siguiente dependencia al archivo pom.xml de tu proyecto. Maven la descargará e instalará automáticamente en el proyecto.

     ``xml-mvn-install-ao
  4. Otra dependencia necesaria es SLF4J. Añadir dependencia Slf4j en el archivo pom.xml.
    <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
            <version>2.0.3</version>
    </dependency>
XML

Una vez que todo esté descargado e instalado en su programa Java de división de archivos PDF, estará listo para utilizar la biblioteca IronPDF.

Clases de importación

En primer lugar, debemos importar las clases necesarias de IronPDF en el código Java. Añada el siguiente código en la parte superior del archivo "Main.java":

import com.ironsoftware.ironpdf.PdfDocument;

import java.io.IOException;
import java.nio.file.Paths;
JAVA

Ahora, establezca su clave de licencia utilizando el comando IronPDF setLicenseKey() en el método Main:

License.setLicenseKey("Your license key");
JAVA

Crear o abrir un archivo PDF existente

Para dividir un archivo PDF en varios archivos de una sola página, primero tenemos que crear un archivo PDF con varias páginas o abrir un archivo PDF con varias páginas.

El siguiente ejemplo de código creará un PDF de cuatro páginas que podremos utilizar para nuestra demostración.

String html = "<p> [PDF With Multiple Pages] </p>"
    + "<p> 1st Page </p>"
    + "<div style = 'page-break-after: always;' ></div>"
    + "<p> 2nd Page</p>"
    + "<div style = 'page-break-after: always;' ></div>"
    + "<p> 3rd Page</p>"
    + "<div style = 'page-break-after: always;' ></div>"
    + "<p> 4th Page</p>";
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
JAVA

El documento PDF tiene este aspecto:

Cómo dividir PDF en Java - Figura 1: Creación de nuevos PDF con IronPDF

El nuevo documento PDF creado con fines de demostración

Abrir archivo PDF para dividirlo

Como alternativa a la sección anterior, el siguiente ejemplo de código utiliza el método PdfDocument.fromFile para abrir cómo abrir un archivo PDF existente utilizando IronPDF.

PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
JAVA

También puede abrir un archivo protegido por contraseña proporcionando la contraseña del documento como segundo argumento del método fromFile.

Dividir un archivo PDF en varios archivos PDF

Para dividir un archivo PDF el código es muy fácil y sencillo. Podemos simplemente copiar varias páginas del documento original utilizando el método copyPage, como se muestra a continuación:

//tomar la primera página
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));

PdfDocument page2Doc = pdf.copyPage(1);
page2Doc.saveAs(Paths.get("assets/split2.pdf"));

PdfDocument page3Doc = pdf.copyPage(2);
page3Doc.saveAs(Paths.get("assets/split3.pdf"));

PdfDocument page4Doc = pdf.copyPage(3);
page4Doc.saveAs(Paths.get("assets/split4.pdf"));
JAVA

El archivo PDF se divide pasando el número de índice como argumento al método copyPage. A continuación, guardamos cada página en un archivo independiente.

Página 1

Cómo dividir PDF en Java - Figura 2: Página 1

Página 2

Cómo dividir PDF en Java - Figura 3: Página 2

Página 3

Cómo dividir PDF en Java - Figura 4: Página 3

Página 4

Cómo dividir PDF en Java - Figura 5: Página 4

El copyPages también puede dividir un PDF por un rango de páginas. A continuación, dividimos el PDF de muestra por la mitad.

PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));

PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
JAVA
Cómo dividir PDF en Java - Figura 6: División de un PDF en dos mitades

Los PDF resultantes contienen dos páginas

A continuación se muestra el ejemplo de código completo:

public class Main {
    public static void main(String [] args) throws IOException {

        String html = "<p> [PDF With Multiple Pages] </p>"
                + "<p> 1st Page </p>"
                + "<div style = 'page-break-after: always;' ></div>"
                + "<p> 2nd Page</p>"
                + "<div style = 'page-break-after: always;' ></div>"
                + "<p> 3rd Page</p>"
                + "<div style = 'page-break-after: always;' ></div>"
                + "<p> 4th Page</p>";

        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
        pdf.saveAs(Paths.get("assets/multiplePages.pdf"));

        pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));

        //tomar la primera página
        PdfDocument page1Doc = pdf.copyPage(0);
        page1Doc.saveAs(Paths.get("assets/split1.pdf"));

        PdfDocument page2Doc = pdf.copyPage(1);
        page2Doc.saveAs(Paths.get("assets/split2.pdf"));

        PdfDocument page3Doc = pdf.copyPage(2);
        page3Doc.saveAs(Paths.get("assets/split3.pdf"));

        PdfDocument page4Doc = pdf.copyPage(3);
        page4Doc.saveAs(Paths.get("assets/split4.pdf"));

        PdfDocument halfPages = pdf.copyPages(0, 1);
        halfPages.saveAs(Paths.get("assets/halfPages.pdf"));

        PdfDocument endPages = pdf.copyPages(2, 3);
        endPages.saveAs(Paths.get("assets/endPages.pdf"));

    }
}
JAVA

IronPDF también puede fusionar cualquier número de documentos PDF.

Resumen

En este artículo, vimos cómo Java abre un documento PDF existente y divide un archivo PDF en varios PDF utilizando la función Biblioteca IronPDF.

IronPDF hace la vida de un desarrollador mucho más fácil al trabajar con archivos PDF en Java. Tanto si desea crear un nuevo documento como trabajar con documentos PDF existentes, IronPDF le ayuda a realizar todas las tareas relacionadas con PDF con casi una sola línea de código.

Puede utilice IronPDF en producción de forma gratuitay puede ser con licencia para uso comercial. El paquete IronPDF Lite comienza en $749.

< ANTERIOR
Cómo convertir una matriz de bytes a PDF en Java
SIGUIENTE >
Cómo leer archivos PDF en Java

¿Listo para empezar? Versión: 2024.3 recién publicada

Descarga gratuita de Maven Ver licencias >