PDFBox - 合并多个 PDF 文档
在上一章中,我们了解了如何将给定的 PDF 文档拆分为多个文档。现在让我们学习如何将多个 PDF 文档合并为一个文档。
合并多个 PDF 文档
您可以使用名为 PDFMergerUtility 的类将多个 PDF 文档合并为一个 PDF 文档,此类提供将两个或多个 PDF 文档合并为一个 PDF 文档的方法。
以下是合并多个 PDF 文档的步骤。
步骤 1:实例化 PDFMergerUtility 类
实例化合并实用程序类,如下所示。
PDFMergerUtility PDFmerger = new PDFMergerUtility();
步骤 2:设置目标文件
使用 setDestinationFileName() 方法设置目标文件,如下所示。
PDFmerger.setDestinationFileName("C:/PdfBox_Examples/data1/merged.pdf");
步骤 3:设置源文件
使用 addSource() 方法设置源文件,如下所示。
File file = new File("文档路径") PDFmerger.addSource(file);
步骤 4:合并文档
使用 PDFmerger 类的 mergeDocuments() 方法合并文档,如下所示。
PDFmerger.mergeDocuments();
示例
假设我们有两个 PDF 文档 - sample1.pdf 和 sample2.pdf,位于路径 C:\PdfBox_Examples\ 中,如下所示。


此示例演示如何合并上述 PDF 文档。在这里,我们将名为 sample1.pdf 和 sample2.pdf 的 PDF 文档合并为单个 PDF 文档 merged.pdf。将此代码保存在名为 MergePDFs.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"); //实例化 PDFMergerUtility 类 PDFMergerUtility PDFmerger = new PDFMergerUtility(); //设置目标文件 PDFmerger.setDestinationFileName("C:\Examples\merged.pdf"); //添加源文件 PDFmerger.addSource(file1); PDFmerger.addSource(file2); //合并两个文档 PDFmerger.mergeDocuments(); System.out.println("文档已合并"); } }
使用以下命令从命令提示符编译并执行已保存的 Java 文件。
javac MergePDFs.java java MergePDFs
执行后,上述程序将加密给定的 PDF 文档并显示以下消息。
Documents merged
如果您验证给定的路径,您可以观察到创建了一个名为merged.pdf的PDF文档,其中包含两个源文档的页面,如下所示。
