В предыдущей главе мы увидели, как разбить данный документ PDF на несколько документов. Давайте теперь узнаем, как объединить несколько документов PDF в один документ.
Объединение нескольких документов PDF
Вы можете объединить несколько документов PDF в один документ PDF, используя класс с именем класса PDFMergerUtility , этот класс предоставляет методы для объединения двух или более документов PDF в один документ PDF.
Ниже приведены шаги для объединения нескольких документов PDF.
Шаг 1. Загрузка существующего PDF-документа
Загрузите существующий документ PDF, используя статический метод load () класса PDDocument . Этот метод принимает объект файла в качестве параметра, поскольку это статический метод, который можно вызвать, используя имя класса, как показано ниже.
File file = new File("path of the document") PDDocument document = PDDocument.load(file);
Шаг 2. Создание класса PDFMergerUtility
создать экземпляр класса слияния, как показано ниже.
PDFMergerUtility PDFmerger = new PDFMergerUtility();
Шаг 3: Настройка файла назначения
Установите файлы назначения, используя метод setDestinationFileName (), как показано ниже.
PDFmerger.setDestinationFileName("C:/PdfBox_Examples/data1/merged.pdf");
Шаг 4: Установка исходных файлов
Установите исходные файлы, используя метод addSource (), как показано ниже.
PDFmerger.addSource(file1);
Шаг 5: Слияние документов
Объедините документы с помощью метода mergeDocuments () класса PDFmerger, как показано ниже.
PDFmerger.mergeDocuments();
Шаг 6: Закрытие документа
Наконец закройте документ, используя метод close () класса PDDocument, как показано ниже.
document.close();
пример
Предположим, у нас есть два документа PDF — sample1.pdf и sample2.pdf по пути C: \ PdfBox_Examples \, как показано ниже.
Этот пример демонстрирует, как объединить вышеуказанные документы PDF. Здесь мы объединяем документы PDF с именем sample1.pdf и sample2.pdf в один документ PDF merged.pdf . Сохраните этот код в файле с именем MergePDFs.java.
import org.apache.pdfbox.multipdf.PDFMergerUtility; import org.apache.pdfbox.pdmodel.PDDocument; import java.io.File; import java.io.IOException; public class MergePDFs { public static void main(String[] args) throws IOException { //Loading an existing PDF document File file1 = new File("C:/PdfBox_Examples/sample1.pdf"); PDDocument doc1 = PDDocument. load (file1); File file2 = new File("C:/PdfBox_Examples/sample2.pdf"); PDDocument doc2 = PDDocument. load (file2); //Instantiating PDFMergerUtility class PDFMergerUtility PDFmerger = new PDFMergerUtility(); //Setting the destination file PDFmerger.setDestinationFileName("C:/PdfBox_Examples/merged.pdf"); //adding the source files PDFmerger.addSource(file1); PDFmerger.addSource(file2); //Merging the two documents PDFmerger.mergeDocuments(); System.out.println("Documents merged"); //Closing the documents doc1.close(); doc2.close(); } }
Скомпилируйте и выполните сохраненный файл Java из командной строки, используя следующие команды.
javac MergePDFs.java java MergePDFs
После выполнения вышеуказанная программа шифрует данный PDF-документ, отображая следующее сообщение.
Documents merged
Если вы проверите указанный путь, вы увидите, что создан документ PDF с именем merged.pdf, и он содержит страницы обоих исходных документов, как показано ниже.