PDFBox - Hợp nhất nhiều tài liệu PDF

Trong chương trước, chúng ta đã biết cách chia một tài liệu PDF nhất định thành nhiều tài liệu. Bây giờ chúng ta hãy tìm hiểu cách hợp nhất nhiều tài liệu PDF thành một tài liệu duy nhất.

Hợp nhất nhiều tài liệu PDF

Bạn có thể hợp nhất nhiều tài liệu PDF thành một tài liệu PDF duy nhất bằng cách sử dụng lớp có tên PDFMergerUtility lớp này cung cấp các phương pháp để hợp nhất hai hoặc nhiều tài liệu PDF thành một tài liệu PDF duy nhất.

Sau đây là các bước để hợp nhất nhiều tài liệu PDF.

Bước 1: Khởi tạo lớp PDFMergerUtility

Khởi tạo lớp tiện ích hợp nhất như được hiển thị bên dưới.

PDFMergerUtility PDFmerger = new PDFMergerUtility();

Bước 2: Đặt tệp đích

Đặt các tệp đích bằng phương thức setDestinationFileName () như hình dưới đây.

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

Bước 3: Đặt các tệp nguồn

Đặt các tệp nguồn bằng phương thức addSource () như hình dưới đây.

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

Bước 4: Hợp nhất các tài liệu

Hợp nhất các tài liệu bằng phương thức mergeDocuments () của lớp PDFmerger như hình dưới đây.

PDFmerger.mergeDocuments();

Thí dụ

Giả sử, chúng ta có hai tài liệu PDF - sample1.pdfsample2.pdf, trong đường dẫn C:\PdfBox_Examples\ như hình bên dưới.

Ví dụ này trình bày cách hợp nhất các tài liệu PDF ở trên. Ở đây, chúng tôi sẽ hợp nhất các tài liệu PDF có tênsample1.pdfsample2.pdf vào một tài liệu PDF duy nhất merged.pdf. Lưu mã này trong một tệp có tênMergePDFs.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");
   }
}

Biên dịch và thực thi tệp Java đã lưu từ dấu nhắc lệnh bằng các lệnh sau.

javac MergePDFs.java 
java MergePDFs

Khi thực thi, chương trình trên sẽ mã hóa tài liệu PDF đã cho và hiển thị thông báo sau.

Documents merged

Nếu bạn xác minh đường dẫn đã cho, bạn có thể thấy rằng một tài liệu PDF có tên merged.pdf được tạo và điều này chứa các trang của cả hai tài liệu nguồn như được hiển thị bên dưới.