Como mesclar arquivos PDF em Java

Java: Mesclar arquivos PDF em um único PDF

This article was translated from English: Does it need improvement?
Translated
View the article in English

O IronPDF for Java permite a fusão de vários documentos PDF em um único arquivo usando o método PdfDocument.merge(), suportando tanto a fusão de dois documentos quanto operações em lote com coleções de PDFs.

Início Rápido: Mesclar Arquivos PDF em Java

  1. Adicione a dependência IronPDF ao seu pom.xml:

    <dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>YOUR_VERSION_HERE</version>
    </dependency>
    <dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>YOUR_VERSION_HERE</version>
    </dependency>
    XML
  2. Criar documentos PDF a partir de HTML:

    PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
    PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
    PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
    PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
    JAVA
  3. Mesclar PDFs e salvar: ```java :title=MergeExample.java PdfDocument mesclado = PdfDocument.merge(pdfA, pdfB); mesclado.saveAs(Paths.get("assets/merged.pdf"));

PDF é um formato de documento portátil , uma forma eletrônica de documento que contém texto e gráficos. Ele exibe o mesmo conteúdo e layout em todos os sistemas operacionais, dispositivos ou aplicativos de software.

Java é uma linguagem de programação de alto nível que, assim como os dados em PDF, também é independente de plataforma. Isso facilita a transição entre diferentes sistemas de computador. No entanto, trabalhar com arquivos PDF de origem e fluxos de entrada pode ser um desafio em Java. IronPDF , uma biblioteca Java , é ideal para manipular e trabalhar com arquivos PDF existentes de forma fácil.

Neste guia prático, você aprenderá como instalar a biblioteca Java IronPDF e mesclar vários documentos PDF. Seja para consolidar relatórios, combinar documentos digitalizados ou montar formulários com várias partes, o IronPDF oferece uma API simples que lida internamente com as complexidades da manipulação de PDFs.

O que é o IronPDF e por que usá-lo para mesclar PDFs?

IronPDF é uma biblioteca Java para criar, ler e editar documentos PDF, sejam eles individuais ou múltiplos. Permite aos usuários criar todos os arquivos PDF do zero , incluindo a aparência do conteúdo usando renderização HTML, bem como metadados como título e nome do autor. A biblioteca também permite mesclar vários arquivos PDF, facilitando a combinação de conteúdo em um único arquivo PDF de destino. Não requer bibliotecas de terceiros, frameworks externos ou integração de plataforma para trabalhar com arquivos PDF ou objetos iteradores de PDF. Também oferece suporte multiplataforma . Ele foi projetado especificamente para Java 8+, Kotlin e Scala, executados em plataformas Windows , Linux e em nuvem.

O IronPDF lida com operações de mesclagem de PDFs de forma eficaz porque mantém a integridade do documento, preserva a formatação, lida com layouts complexos e processa arquivos grandes com eficiência. A funcionalidade de mesclagem da biblioteca suporta vários cenários, incluindo anexar documentos sequencialmente, inserir páginas em posições específicas e combinar PDFs com tamanhos ou orientações de página diferentes.

Quais são os pré-requisitos para mesclar PDFs em Java?

Para mesclar vários arquivos PDF, você precisará do seguinte:

  1. Qualquer IDE compatível com Java (NetBeans, Eclipse, IntelliJ, etc.). Usaremos o IntelliJ para mesclar vários PDFs.
  2. Um projeto Maven em execução no IDE.
  3. O Java Development Kit (JDK) versão 8 ou superior deve estar instalado em seu sistema.
  4. Conhecimento básico de programação Java e gerenciamento de dependências Maven.

Como instalo o IronPDF para mesclagem de PDFs?

A primeira coisa que precisamos para mesclar arquivos PDF é a biblioteca Java IronPDF . Existem três maneiras de baixar e instalar o IronPDF em qualquer projeto.

  1. Você pode adicionar a dependência do IronPDF no arquivo pom.xml de um projeto Maven e usar a ferramenta de linha de comando do Maven ou uma IDE para baixar a biblioteca diretamente do repositório central.
  2. Outra maneira é visitar o site da Maven e baixar a versão mais recente do IronPDF. You can download it from here directly.
  3. Você também pode visitar o site do IronPDF para fazer o download diretamente através deste link .

Em cada caso, o seguinte código de dependência é adicionado ao arquivo pom.xml. Para obter instruções detalhadas de instalação e implementação da chave de licença, consulte o guia Usando Chaves de Licença .

<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>YOUR_VERSION_HERE</version>
</dependency>
<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>YOUR_VERSION_HERE</version>
</dependency>
XML

Uma dependência adicional necessária para mesclar PDFs é Slf4j-simple. You can also add it to the pom.xml file using the following code or you can visit the Maven website here.

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
XML
Maven pom.xml showing IronPDF and SLF4J dependencies for PDF merging project setup

dependências do pom.xml

As seguintes declarações de importação também são necessárias no arquivo main.java para usar as funções do IronPDF para mesclar arquivos PDF.

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

Como faço para mesclar dois arquivos PDF em Java usando o IronPDF?

Para mesclar arquivos PDF , primeiro precisamos criar os arquivos PDF e depois convertê-los em um arquivo PDF final mesclado. O exemplo de código a seguir fará exatamente isso:

String htmlA = "<p> [PDF_A] </p>"
        + "<p> [PDF_A] 1st Page </p>"
        + "<div style='page-break-after: always;'></div>"
        + "<p> [PDF_A] 2nd Page</p>";
String htmlB = "<p> [PDF_B] </p>"
        + "<p> [PDF_B] 1st Page </p>"
        + "<div style='page-break-after: always;'></div>"
        + "<p> [PDF_B] 2nd Page</p>";

// Create PdfDocument objects using the HTML content
PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);

// Merge the two PDF documents into a single document
PdfDocument mesclado = PdfDocument.merge(pdfA, pdfB);
String htmlA = "<p> [PDF_A] </p>"
        + "<p> [PDF_A] 1st Page </p>"
        + "<div style='page-break-after: always;'></div>"
        + "<p> [PDF_A] 2nd Page</p>";
String htmlB = "<p> [PDF_B] </p>"
        + "<p> [PDF_B] 1st Page </p>"
        + "<div style='page-break-after: always;'></div>"
        + "<p> [PDF_B] 2nd Page</p>";

// Create PdfDocument objects using the HTML content
PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);

// Merge the two PDF documents into a single document
PdfDocument mesclado = PdfDocument.merge(pdfA, pdfB);
JAVA

O código acima cria duas strings contendo marcação HTML. O conteúdo HTML de cada variável abrange duas páginas. Em seguida, o método renderHtmlAsPdf do IronPDF é chamado para converter ambas as strings HTML em documentos PDF individuais. Para opções mais avançadas de conversão de HTML para PDF, incluindo fontes e estilos personalizados, consulte o tutorial de HTML para PDF .

O método para mesclar arquivos PDF é PdfDocument.merge. O método acima foi utilizado para mesclar os dois documentos PDF em um único arquivo. O resultado é um novo PdfDocument produzido anexando o conteúdo do segundo PdfDocument ao final do primeiro.

Como faço para salvar o documento PDF mesclado?

Para salvar o arquivo PDF mesclado no caminho de destino desejado, basta usar a seguinte linha:

mesclado.saveAs(Paths.get("assets/merged.pdf"));
mesclado.saveAs(Paths.get("assets/merged.pdf"));
JAVA

O resultado do arquivo PDF mesclado é mostrado abaixo:

PDF viewer showing merged 4-page document with thumbnail navigation panel

Mesclar vários documentos PDF

Como posso mesclar mais de dois arquivos PDF simultaneamente?

Para mesclar mais de dois documentos PDF , primeiro criaremos uma coleção contendo os objetos PdfDocument necessários e, em seguida, passaremos a lista como um único argumento para o método PdfDocument.merge. O código é o seguinte:

import java.util.List;
import java.util.ArrayList;

public static void main(String[] args) throws IOException {
    String htmlA = "<p> [PDF_A] </p>"
            + "<p> [PDF_A] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_A] 2nd Page</p>";
    String htmlB = "<p> [PDF_B] </p>"
            + "<p> [PDF_B] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_B] 2nd Page</p>";
    String htmlC = "<p> [PDF_C] </p>"
            + "<p> [PDF_C] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_C] 2nd Page</p>";
    String htmlD = "<p> [PDF_D] </p>"
            + "<p> [PDF_D] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_D] 2nd Page</p>";

    // Creating PdfDocument objects
    PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
    PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
    PdfDocument pdfC = PdfDocument.renderHtmlAsPdf(htmlC);
    PdfDocument pdfD = PdfDocument.renderHtmlAsPdf(htmlD);

    // Add documents to a list
    List<PdfDocument> pdfs = new ArrayList<>();
    pdfs.add(pdfA);
    pdfs.add(pdfB);
    pdfs.add(pdfC);
    pdfs.add(pdfD);

    // Merge all documents into a single PDF
    PdfDocument merged = PdfDocument.merge(pdfs);

    // Save the merged PDF document
    merged.saveAs(Paths.get("assets/more_than_two_merged.pdf"));
}
import java.util.List;
import java.util.ArrayList;

public static void main(String[] args) throws IOException {
    String htmlA = "<p> [PDF_A] </p>"
            + "<p> [PDF_A] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_A] 2nd Page</p>";
    String htmlB = "<p> [PDF_B] </p>"
            + "<p> [PDF_B] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_B] 2nd Page</p>";
    String htmlC = "<p> [PDF_C] </p>"
            + "<p> [PDF_C] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_C] 2nd Page</p>";
    String htmlD = "<p> [PDF_D] </p>"
            + "<p> [PDF_D] 1st Page </p>"
            + "<div style='page-break-after: always;'></div>"
            + "<p> [PDF_D] 2nd Page</p>";

    // Creating PdfDocument objects
    PdfDocument pdfA = PdfDocument.renderHtmlAsPdf(htmlA);
    PdfDocument pdfB = PdfDocument.renderHtmlAsPdf(htmlB);
    PdfDocument pdfC = PdfDocument.renderHtmlAsPdf(htmlC);
    PdfDocument pdfD = PdfDocument.renderHtmlAsPdf(htmlD);

    // Add documents to a list
    List<PdfDocument> pdfs = new ArrayList<>();
    pdfs.add(pdfA);
    pdfs.add(pdfB);
    pdfs.add(pdfC);
    pdfs.add(pdfD);

    // Merge all documents into a single PDF
    PdfDocument merged = PdfDocument.merge(pdfs);

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

Acima, foram criados quatro documentos PDF utilizando o método de renderização HTML. Em seguida, preenchemos uma nova coleção List com cada um dos PDFs e, em seguida, passamos esta lista para o método merge como um único argumento. Como resultado, esses PDFs são mesclados em um único documento PDF.

Para cenários de mesclagem mais complexos, como mesclar páginas ou intervalos específicos de diferentes PDFs, você pode combinar a funcionalidade de mesclagem com recursos de manipulação de páginas. Saiba mais sobre operações em nível de página no guia Dividir PDFs .

PDF viewer showing merged document with 8 pages, demonstrating successful multi-file PDF merge using Java IronPDF

Mais de dois arquivos PDF mesclados

Opções avançadas de mesclagem

Além da mesclagem básica, o IronPDF oferece recursos adicionais para manipulação avançada de PDFs:

  1. Fusão Seletiva de Páginas : Extrai páginas específicas dos PDFs de origem antes de fundi-las.
  2. Inserir em posição : Adicione PDFs em posições específicas dentro de um documento existente.
  3. Preservar metadados : Manter as propriedades e os metadados do documento durante as operações de mesclagem.
  4. Lidar com arquivos grandes : Processe arquivos PDF grandes de forma eficiente, sem problemas de memória.

Eis um exemplo de fusão seletiva de páginas:

// Load existing PDFs
PdfDocument existingPdf = PdfDocument.fromFile(Paths.get("source.pdf"));
PdfDocument newPages = PdfDocument.fromFile(Paths.get("additional.pdf"));

// Extract specific pages (pages 2-4 from the new PDF)
PdfDocument selectedPages = newPages.extractPages(1, 3); // 0-indexed

// Merge the selected pages with the existing PDF
PdfDocument finalPdf = PdfDocument.merge(existingPdf, selectedPages);
finalPdf.saveAs(Paths.get("merged_selective.pdf"));
// Load existing PDFs
PdfDocument existingPdf = PdfDocument.fromFile(Paths.get("source.pdf"));
PdfDocument newPages = PdfDocument.fromFile(Paths.get("additional.pdf"));

// Extract specific pages (pages 2-4 from the new PDF)
PdfDocument selectedPages = newPages.extractPages(1, 3); // 0-indexed

// Merge the selected pages with the existing PDF
PdfDocument finalPdf = PdfDocument.merge(existingPdf, selectedPages);
finalPdf.saveAs(Paths.get("merged_selective.pdf"));
JAVA

Quais são os principais pontos a serem considerados ao mesclar PDFs com o IronPDF?

Este artigo explicou como mesclar arquivos PDF usando o IronPDF for Java.

Primeiro, abordamos como instalar o IronPDF for Java usando o Maven e, em seguida, mostramos uma maneira simples de gerar PDFs usando os métodos de renderização HTML. Em seguida, vimos como mesclar dois ou mais PDFs em um único arquivo PDF.

O IronPDF tem um bom desempenho e executa todas as operações com rapidez e precisão. É uma excelente opção para trabalhar com arquivos PDF em Java. Além disso, é baseado nas funcionalidades do IronPDF for .NET .

O IronEngine for Java permite a conversão de HTML/URL/String para PDF com tipos de documentos de padrão aberto, como HTML, CSS, JS, JPG e PNG. Ele produz documentos PDF com qualidade de imagem perfeita e é construído com a tecnologia mais recente. Para implantação em plataformas de nuvem, consulte nossos guias de implantação na AWS , implantação no Azure ou implantação no Google Cloud .

Você pode obter mais informações sobre como usar o IronPDF for Java em nossas páginas de exemplos de código . Para obter recursos adicionais de manipulação de PDFs, explore nossos tutoriais sobre como compactar PDFs , adicionar marcas d'água ou criar formulários em PDF .

O IronPDF é gratuito para desenvolvimento e pode ser licenciado para uso comercial. Para obter mais informações sobre a licença, visite o seguinte link .

Perguntas frequentes

Como faço para mesclar dois arquivos PDF em Java?

Com o IronPDF, você pode mesclar dois arquivos PDF usando o método PdfDocument.merge(). Basta criar ou carregar seus documentos PDF, chamar PdfDocument.merge(pdfA, pdfB) e salvar o resultado usando o método saveAs().

Qual versão do Java é necessária para a mesclagem de PDFs?

O IronPDF foi projetado especificamente for Java 8 e versões superiores, e também oferece suporte a Kotlin e Scala. Ele funciona em plataformas Windows, Linux e nuvem sem a necessidade de bibliotecas de terceiros ou frameworks externos.

Posso mesclar mais de dois PDFs ao mesmo tempo?

Sim, o IronPDF suporta operações em lote para mesclar vários PDFs. Você pode criar uma lista de objetos PDF e usar o método de mesclagem para combiná-los em um único documento em uma única operação.

Como adiciono a biblioteca de mesclagem de PDF ao meu projeto Maven?

Adicione o IronPDF como uma dependência no seu arquivo pom.xml, incluindo o groupId com.ironsoftware com o artifactId do IronPDF. Isso lhe dará acesso a todos os recursos de manipulação de PDF, incluindo a mesclagem.

A fusão de PDFs preserva a formatação original?

Sim, o IronPDF mantém a integridade dos documentos ao mesclar PDFs. Ele preserva a formatação, lida com layouts complexos e processa arquivos grandes de forma eficiente, mantendo a aparência original de cada documento.

Posso criar PDFs a partir de HTML antes de mesclá-los?

Com certeza! O IronPDF permite criar PDFs a partir de HTML usando o método renderHtmlAsPdf(). Você pode gerar vários PDFs a partir de conteúdo HTML e, em seguida, mesclá-los usando a mesma funcionalidade de mesclagem.

Curtis Chau
Redator Técnico

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais ...

Leia mais
Pronto para começar?
Versão: 2026.3 acaba de ser lançado
Still Scrolling Icon

Ainda está rolando a tela?

Quer provas rápidas?
executar um exemplo Veja seu HTML se transformar em um PDF.