PDFBox 合并PDF文档

我们可以合并多个PDF文档转换成一个单一的PDF文件。使用 PDFBox 合并 PDF 文档并不简单。我们可以使用PDFMergerUtility类来合并 PDF 文档。此类提供了我们将多页或多页 PDF 文档合并为一个 PDF 文档所需的一切。我们可以根据需要合并任意数量的文件。

以下是一个分步过程,用于合并位于目录中的所有 PDF 文件,而无需将每个文件作为参数传递。

加载现有文档

我们可以使用static load()方法加载现有的 PDF 文档。此方法接受一个文件对象作为参数。我们还可以使用PDFBox的类名PDDocument调用它。

File file = new File("PATH");   
PDDocument doc = PDDocument.load(file);   

创建 PDFMergerUtility 类对象

实例化PDFMergeUtility类。此类包含合并 PDF 的例程。这可以在以下代码中显示:

PDFMergerUtility PDFmerger = new PDFMergerUtility();  

设置目的地

使用setDestinationFileName()方法设置目标文件的路径。这可以在以下代码中显示:

PDFmerger.setDestinationFileName("Path/merged.pdf");  

设置源文件

按照我们希望在最终合并的 PDF 文件中找到的顺序添加所有源 PDF 文件。addSource()方法用于设置源文件,如下所示。

PDFmerger.addSource(SourceFileName); 

合并 PDF

添加所有要合并的源 PDF 文件。使用PDFmerger类的mergeDocuments()方法合并文档,可以在下面的代码中显示。

PDFmerger.mergeDocuments(null);  

关闭文档

完成任务后,我们需要使用close()方法关闭PDDocument类对象。

doc.close();  

PDFBox 合并PDF文档 完整例子

在这里,我们得到三个PDF文档文件,我们将通过Java程序的PDFBox库将它们合并为一个PDF文件。

代码如下:

package com.yiidian;

import org.apache.pdfbox.multipdf.PDFMergerUtility;
import org.apache.pdfbox.pdmodel.PDDocument;

import java.io.File;
import java.io.IOException;

public class MergePdfDocuments {
    public static void main(String[] args) throws IOException {

        //Loading an existing PDF document  
        File file1 = new File("d:/blank1.pdf");
        PDDocument document1 = PDDocument.load(file1);
        File file2 = new File("d:/blank2.pdf");
        PDDocument document2 = PDDocument.load(file2);
        File file3 = new File("d:/blank3.pdf");
        PDDocument document3 = PDDocument.load(file3);

        //Create PDFMergerUtility class object  
        PDFMergerUtility PDFmerger = new PDFMergerUtility();

        //Setting the destination file path  
        PDFmerger.setDestinationFileName("d:/merged.pdf");

        //adding the source files  
        PDFmerger.addSource(file1);
        PDFmerger.addSource(file2);
        PDFmerger.addSource(file3);

        //Merging the documents  
        PDFmerger.mergeDocuments(null);

        System.out.println("PDF Documents merged to a single file successfully");

        //Close documents  
        document1.close();
        document2.close();
        document3.close();
    }
}  

输出结果如下:

热门文章

优秀文章