Saltar al pie de página
USANDO IRONPDF PARA JAVA

Cómo Dividir Archivos PDF en Java

Este artículo utilizará IronPDF en Java para dividir archivos PDF a partir de un archivo PDF fuente.

Librería PDF Java IronPDF

IronPDF for Java es una biblioteca de Java que prioriza la precisión, facilidad de uso y velocidad. Está especialmente diseñado para Java y es fácil de usar al trabajar con documentos PDF. Heredó toda su funcionalidad de la establecida librería IronPDF para .NET Framework. Esto hace de IronPDF para Java una herramienta versátil para trabajar con documentos PDF en varios contextos.

IronPDF ofrece a los desarrolladores métodos para renderizar documentos PDF en imágenes y extraer texto y contenido de los PDFs. Además, IronPDF también es capaz de renderizar gráficos dentro de los PDFs, aplicar marcas de agua a los archivos PDF, trabajar con formularios PDF, y gestionar firmas digitales programáticamente.

Pasos para dividir archivos PDF

Requisitos previos para la configuración del proyecto

Para que IronPDF funcione con PDFs en un proyecto Java Maven, necesitarás asegurarte de tener los siguientes requisitos previos:

  1. JDK (Java Development Kit): Debes tener una versión actual de Java funcionando en tu computadora junto con un IDE. Si no lo tienes, entonces descarga el último JDK desde el sitio web de Oracle. Usa cualquier IDE como NetBeans, Eclipse o IntelliJ.
  2. Maven: Para gestionar tu proyecto y dependencias, Maven es una herramienta importante diseñada específicamente para proyectos Java. Descarga Maven desde el sitio web de Apache Maven si no lo tienes instalado.
  3. Biblioteca IronPDF for Java: Ahora necesitas la biblioteca IronPDF para Java. Esto se puede hacer agregando la siguiente dependencia al archivo pom.xml de tu proyecto. Maven lo descargará e instalará automáticamente en el proyecto.

    <dependency>
        <groupId>com.ironpdf</groupId>
        <artifactId>ironpdf</artifactId>
        <version>1.0.0</version>
    </dependency>
    <dependency>
        <groupId>com.ironpdf</groupId>
        <artifactId>ironpdf</artifactId>
        <version>1.0.0</version>
    </dependency>
    XML
  4. Otra dependencia requerida es SLF4J. Añade la dependencia SLF4J en el archivo pom.xml.

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>2.0.3</version>
    </dependency>
    <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 tu programa Java para dividir archivos PDF, estás listo para usar la biblioteca IronPDF.

Importar clases

Primero, importa las clases requeridas de IronPDF en el código Java. Añade el siguiente código en la parte superior del archivo "Main.java":

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;

import java.io.IOException;
import java.nio.file.Paths;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;

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

Ahora, configura tu clave de licencia usando el método setLicenseKey() de IronPDF en el método Main:

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

Crear o abrir un archivo PDF existente

Para dividir un archivo PDF en múltiples archivos de una sola página, es necesario crear un archivo PDF con varias páginas o abrir un archivo PDF con varias páginas.

La siguiente muestra de código creará un PDF de cuatro páginas que se puede usar para esta demostración.

// HTML content used to create a four-page PDF
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>";

// Render HTML to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);

// Save the PDF document
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
// HTML content used to create a four-page PDF
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>";

// Render HTML to a PDF document
PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);

// Save the PDF document
pdf.saveAs(Paths.get("assets/multiplePages.pdf"));
JAVA

El Documento PDF se ve así:

Cómo Dividir Archivos PDF en Java, Figura 1: Creando Nuevos PDFs con IronPDF Creando Nuevos PDFs con IronPDF

Abrir archivo PDF para dividir

Como alternativa a la sección anterior, la siguiente muestra de código utiliza el método [PdfDocument.fromFile](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path)) para abrir un archivo PDF existente utilizando IronPDF.

// Open the existing PDF document
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
// Open the existing PDF document
PdfDocument pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));
JAVA

También puedes abrir un archivo protegido con contraseña proporcionando una contraseña de documento como segundo argumento al método [fromFile](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path)).

Dividir un archivo PDF en varios archivos PDF

Para dividir un archivo PDF, el código es simple. Simplemente copia varias páginas del documento original utilizando el método [copyPage](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#copyPage(int)), como se muestra a continuación:

// Take the first page
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));

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

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

// Take the fourth page
PdfDocument page4Doc = pdf.copyPage(3);
page4Doc.saveAs(Paths.get("assets/split4.pdf"));
// Take the first page
PdfDocument page1Doc = pdf.copyPage(0);
page1Doc.saveAs(Paths.get("assets/split1.pdf"));

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

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

// Take the fourth page
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 un argumento al método copyPage. Luego, guarda cada página en un archivo separado.

Página 1

Página 1

Página 2

Página 2

Página 3

Página 3

Página 4

Página 4

El método [copyPages](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#copyPages(int,int)) también puede dividir un PDF por un rango de páginas. A continuación, dividimos el ejemplo de PDF en partes iguales.

// Copy the first two pages into a new PDF document
PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));

// Copy the last two pages into another PDF document
PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
// Copy the first two pages into a new PDF document
PdfDocument halfPages = pdf.copyPages(0, 1);
halfPages.saveAs(Paths.get("assets/halfPages.pdf"));

// Copy the last two pages into another PDF document
PdfDocument endPages = pdf.copyPages(2, 3);
endPages.saveAs(Paths.get("assets/endPages.pdf"));
JAVA

Cómo Dividir Archivos PDF en Java, Figura 6: Dividiendo un PDF en Dos Mitades Dividiendo un PDF en Dos Mitades

El ejemplo completo de código se muestra a continuación:

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;

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

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

        // Set the IronPDF license key
        License.setLicenseKey("Your license key");

        // HTML content to create a four-page PDF document
        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>";

        // Render HTML to a PDF document
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
        pdf.saveAs(Paths.get("assets/multiplePages.pdf"));

        // Open the existing PDF document
        pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));

        // Split each PDF page into separate documents
        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"));

        // Split the PDF into two halves
        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"));
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.License;

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

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

        // Set the IronPDF license key
        License.setLicenseKey("Your license key");

        // HTML content to create a four-page PDF document
        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>";

        // Render HTML to a PDF document
        PdfDocument pdf = PdfDocument.renderHtmlAsPdf(html);
        pdf.saveAs(Paths.get("assets/multiplePages.pdf"));

        // Open the existing PDF document
        pdf = PdfDocument.fromFile(Paths.get("assets/multiplePages.pdf"));

        // Split each PDF page into separate documents
        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"));

        // Split the PDF into two halves
        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 combinar documentos PDF sin esfuerzo.

Resumen

Este artículo exploró cómo un programa Java abre un documento PDF existente y divide un archivo PDF en múltiples PDFs usando la Biblioteca IronPDF.

IronPDF hace la vida de un desarrollador mucho más fácil al trabajar con archivos PDF en Java. Ya sea que quieras crear un nuevo documento o trabajar con documentos PDF existentes, IronPDF ayuda a lograr todas las tareas relacionadas con PDF con casi una sola línea de código.

Puedes usar IronPDF en producción de forma gratuita, y se puede <a href="/java/licensing/" licenciar para uso comercial con opciones flexibles. El paquete IronPDF Lite comienza en $799.

Preguntas Frecuentes

¿Cómo puedo dividir un archivo PDF en Java sin perder el formato?

Usando IronPDF en Java, puedes dividir un archivo PDF sin perder el formato utilizando el método copyPage para crear páginas individuales como documentos PDF separados.

¿Cuáles son los pasos para configurar un proyecto Java para dividir PDFs?

Para configurar un proyecto Java para dividir PDFs usando IronPDF, asegúrate de tener JDK y Maven instalados, luego incluye IronPDF como dependencia en tu proyecto Maven. Importa clases necesarias como com.ironsoftware.ironpdf.PdfDocument.

¿Es posible dividir un PDF por un rango de páginas en Java?

Sí, utilizando el método copyPages de IronPDF, puedes fácilmente dividir un PDF especificando un rango de páginas para crear documentos PDF separados en Java.

¿Cómo manejo PDFs protegidos con contraseña al dividir en Java?

IronPDF te permite manejar PDFs protegidos con contraseña proporcionando la contraseña como parámetro al método fromFile, permitiéndote acceder y dividir el documento.

¿Se puede usar IronPDF para tareas diferentes a dividir PDFs?

Sí, IronPDF for Java ofrece una variedad de características de manipulación de PDF, tales como renderizar PDFs a imágenes, extraer texto, gestionar firmas digitales y fusionar documentos PDF.

¿Cómo incorporo IronPDF en un proyecto Maven de Java?

Puedes incorporar IronPDF en un proyecto Maven de Java añadiendo la dependencia de Maven de IronPDF a tu archivo pom.xml y luego importando las clases necesarias en tu código Java.

¿Cuál es el beneficio de usar IronPDF para dividir PDFs en Java?

IronPDF simplifica el proceso de dividir PDFs en Java proporcionando métodos fáciles de usar como copyPage y copyPages, asegurando una gestión eficiente de PDFs sin perder el formato del documento.

¿IronPDF ofrece opciones de licencia flexibles para uso comercial?

Sí, IronPDF proporciona opciones de licencia flexibles para uso comercial, junto con una versión gratuita disponible para producción, ideal para desarrollo y pruebas.

Darrius Serrant
Ingeniero de Software Full Stack (WebOps)

Darrius Serrant tiene una licenciatura en Ciencias de la Computación de la Universidad de Miami y trabaja como Ingeniero de Marketing WebOps Full Stack en Iron Software. Atraído por la programación desde joven, vio la computación como algo misterioso y accesible, convirtiéndolo en el ...

Leer más