Preocupado em mesclar ou dividir documentos de vários tipos em várias plataformas? Pode haver muitas declarações em sua mente:

  • Como mesclar documentos PDF em Java?
  • Quer dividir documentos do Word ou mesclar planilhas do Excel.
  • O que fazer se eu precisar mesclar apresentações PPT/PPTX.
  • Muito mais perguntas, a lista pode não acabar.
Dividir ou mesclar documentos PDF, Word, Excel em Java
GroupDocs.Merger for Java

O GroupDocs fornece uma solução de mesclagem de documentos para todos esses requisitos. Sua API Java permite mesclar documentos e manipular a estrutura de documentos em Java em uma ampla variedade de formatos de documentos suportados. Além disso, permite a manipulação de páginas de documentos, transformações de páginas, extração de informações dos documentos, geração de visualizações e muito mais.

Neste artigo, veremos um pouco sobre os seguintes tópicos:

A amostra de código e as etapas explicadas abaixo estão usando GroupDocs.Merger for Java para que você possa baixar ou integrá-lo em seus aplicativos baseados em maven com configurações pom.xml.

Mesclar arquivos PDF em Java

Podemos combinar dois ou mais arquivos PDF em apenas algumas linhas de código. Abaixo está o trecho de código do exemplos, que é autoexplicativo e não precisa de mais esclarecimentos, portanto, mostra como mesclar vários documentos PDF em Java. As etapas são muito simples se você decidiu os documentos a serem reunidos:

  • Instanciar o objeto Merger, com o primeiro documento com o qual outros documentos devem ser mesclados.
  • Chama o método join, passando o documento a ser mesclado.
  • Lembre-se do método de junção para mesclar mais documentos.
  • Chame o método save para salvar a saída final.
  • É isso.
// Set paths for the documents to join together in a single file.
String filePath1 = "document-1.pdf";
String filePath2 = "document-2.pdf";
String filePath3 = "document-3.pdf";
// Merger multiple PDF documents into a single PDF file.
Merger merger = new Merger(filePath1 );
merger.join(filePath2 ); // Joining 2nd Document
merger.join(filePath3 ); // Joining 3rd Document
// Save the merged document.
String filePathOutput = "mergedDocument.pdf";
merger.save(filePathOutput);

Mesclar documentos do Excel, Word, PowerPoint em Java

Você pode combinar vários documentos do Word, planilhas do Excel, apresentações do PowerPoint, na verdade, quase todos os documentos do mesmo formato. O código acima para unir documentos PDF pode ser usado para mesclar uma grande variedade de documentos. No final do artigo, mencionarei a lista de formatos de arquivo que podem ser mesclados com o mesmo código. Aqui, como exemplo, estou mostrando como, de maneira semelhante, mais de dois documentos do Word podem ser combinados em um único arquivo do Word em apenas algumas linhas de código Java.

// Merger multiple Word documents into a single DOCX file.
Merger merger = new Merger("document1.docx" );
merger.join("document2.docx" ); // Joining 2nd Document
merger.join("document3.docx" ); // Joining 3rd Document
// Save the merged document.
merger.save("mergedDocument.pdf");

Mesclar páginas de documentos em Java

Vários documentos podem ser mesclados por páginas seletivas e também especificando o intervalo de páginas desejado. Seu código permanecerá semelhante ao mencionado acima, apenas uma pequena alteração ao definir suas opções de mesclagem usando a classe JoinOptions.

Abaixo está o trecho de código-fonte que mostra como mesclar documentos especificando determinadas páginas.

// Set the start and end page number in JoinOptions class.
JoinOptions joinOptions = new JoinOptions(1, 2);
// Merge two files with selective pages using join method.
Merger merger = new Merger("document-1.docx");
merger.join("document-2.docx" , joinOptions);
merger.save("merged-Document.docx");

Dividir documentos em vários documentos em Java

Assim como mesclamos documentos acima, também podemos dividir documentos do Word, planilhas do Excel, apresentações, arquivos PDF e muitos outros documentos rapidamente de diferentes maneiras.

  • Dividido por números de página exatos
  • Divida um documento em vários documentos de várias páginas
  • Dividido por intervalo de páginas
  • Dividido por páginas pares e ímpares

Dividir por números de página exatos

Podemos dividir um documento fornecendo o número exato de páginas em Java. O código a seguir dividirá um arquivo PDF em 3 documentos, cada um com a única página mencionada.

  • Inicialize o objeto SplitOptions com o arquivo de saída e o modo para dividir.
  • Instancie o objeto Merger com o arquivo de origem ou fluxo a ser dividido.
  • Chame o método split para dividir o documento fornecido e salvá-lo.
String filePath = "document.pdf";
String filePathOut = "document\_{0}.{1}";
// Split the document into multiple single page documents.
SplitOptions splitOptions = new SplitOptions(filePathOut, new int\[\] { 3, 6, 8 });
Merger merger = new Merger(filePath);
merger.split(splitOptions);

Dividir documento em documentos de várias páginas

Se você tiver um documento com 6 páginas, a pequena modificação mencionada abaixo no código acima dividirá seu documento em 3 documentos separados da seguinte maneira:

Nome do documento Números de página
documento_1 1, 2
documento_2 3, 4, 5
documento_3 6
SplitOptions splitOptions = new SplitOptions(filePathOut,  SplitMode.Interval, new int\[\] { 3, 6 },);

Dividir por intervalo de páginas inicial e final

Se você deseja dividir qualquer documento apenas fornecendo o intervalo de páginas, veja como uma apresentação do Powerpoint pode ser dividida em 3 apresentações de página única.

String filePath = "presentation.ppt";
String filePathOut = "presentation\_{0}.{1}";
// Split the presentation into multiple single page presentations.
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 5);
Merger merger = new Merger(filePath);
merger.split(splitOptions)

Dividir por intervalos de páginas pares ou ímpares

Você pode definir os intervalos de páginas pares e ímpares para dividir. Seguir SplitOptions permitirá dividir o documento fornecido em vários documentos de uma página para páginas ímpares no intervalo de 3 a 8.

SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 8, RangeMode.OddPages);

Formatos de Documentos Suportados

Como prometido, aqui está a lista de formatos de documentos que podem ser mesclados ou divididos com os exemplos acima. Você pode visitar docs a qualquer momento para verificar a lista atualizada.

Tipo de documento Formatos de arquivo
Processamento de Texto DOC, DOCX, DOCM, DOT, DOTX, DOTM, ODT, OTT, RTF, TXT
Planilhas XLS, XLSX, XLSM, XLSB, XLT, XLTX, XLTM, ODS, CSV, TSV
Apresentações PPT, PPTX, PPS, PPSX, ODP, OTP
Desenhos VSDX, VSDM, VSSX, VSSM, VSTX, VSTM, VDX, VSX, VTX
Web HTML, MHT
Idiomas de descrição de página TEX, XPS
e-books e outros PDF, EPUB, ONE

Bom vê-lo aqui, você pode nos contatar livremente no fórum caso sinta alguma dificuldade ou tenha alguma confusão ou queira dar algumas boas sugestões.