PDFBox - Unione di più documenti PDF

Nel capitolo precedente, abbiamo visto come dividere un dato documento PDF in più documenti. Impariamo ora come unire più documenti PDF in un unico documento.

Unione di più documenti PDF

È possibile unire più documenti PDF in un unico documento PDF utilizzando la classe denominata PDFMergerUtility class, questa classe fornisce metodi per unire due o più documenti PDF in un unico documento PDF.

Di seguito sono riportati i passaggi per unire più documenti PDF.

Passaggio 1: creazione di un'istanza della classe PDFMergerUtility

Istanziare la classe di utilità di unione come mostrato di seguito.

PDFMergerUtility PDFmerger = new PDFMergerUtility();

Passaggio 2: impostazione del file di destinazione

Impostare i file di destinazione utilizzando il metodo setDestinationFileName () come mostrato di seguito.

PDFmerger.setDestinationFileName("C:/PdfBox_Examples/data1/merged.pdf");

Passaggio 3: impostazione dei file di origine

Impostare i file di origine utilizzando il metodo addSource () come mostrato di seguito.

File file = new File("path of the document")
PDFmerger.addSource(file);

Passaggio 4: unione dei documenti

Unisci i documenti utilizzando il metodo mergeDocuments () della classe PDFmerger come mostrato di seguito.

PDFmerger.mergeDocuments();

Esempio

Supponiamo di avere due documenti PDF: sample1.pdf e sample2.pdf, nel percorso C:\PdfBox_Examples\ come mostrato di seguito.

Questo esempio mostra come unire i documenti PDF sopra. Qui, uniremo i documenti PDF denominatisample1.pdf e sample2.pdf in un unico documento PDF merged.pdf. Salva questo codice in un file con nomeMergePDFs.java.

import org.apache.pdfbox.multipdf.PDFMergerUtility; 
import java.io.File; 
import java.io.IOException;
public class MergePDFs {
   public static void main(String[] args) throws IOException {
      File file1 = new File("C:\\EXAMPLES\\Demo1.pdf");       
      File file2 = new File("C:\\EXAMPLES\\Demo2.pdf");    
		
      //Instantiating PDFMergerUtility class
      PDFMergerUtility PDFmerger = new PDFMergerUtility();
		
      //Setting the destination file
      PDFmerger.setDestinationFileName("C:\\Examples\\merged.pdf");
		
      //adding the source files
      PDFmerger.addSource(file1);
      PDFmerger.addSource(file2);
		
      //Merging the two documents
      PDFmerger.mergeDocuments();
      System.out.println("Documents merged");
   }
}

Compilare ed eseguire il file Java salvato dal prompt dei comandi utilizzando i seguenti comandi.

javac MergePDFs.java 
java MergePDFs

Al momento dell'esecuzione, il programma di cui sopra crittografa il documento PDF fornito visualizzando il seguente messaggio.

Documents merged

Se verifichi il percorso specificato, puoi osservare che un documento PDF con nome merged.pdf viene creato e questo contiene le pagine di entrambi i documenti di origine come mostrato di seguito.