PDFBox - 加载文档
在前面的示例中,您已经了解了如何创建新文档并向其中添加页面。本章将教您如何加载系统中已存在的 PDF 文档并对其执行一些操作。
加载现有 PDF 文档
PDDocument 类的 load() 方法用于加载现有 PDF 文档。请按照以下步骤加载现有 PDF 文档。
步骤 1:加载现有 PDF 文档
使用 PDDocument 类的静态方法 load() 加载现有 PDF 文档。此方法接受文件对象作为参数,因为这是一个静态方法,您可以使用类名调用它,如下所示。
File file = new File("path of the document") PDDocument.load(file);
步骤 2:执行所需操作
执行所需操作,例如向已加载的文档添加页面、添加文本、添加图像。
步骤 3:保存文档
添加所有页面后,使用 PDDocument 类的 save() 方法保存 PDF 文档,如以下代码块所示。
document.save("Path");
步骤 4:关闭文档
最后使用 PDDocument 类的 close() 方法关闭文档,如下所示。
document.close();
示例
假设我们有一个 PDF 文档,其中包含一个页面,路径为 C:/PdfBox_Examples/,如以下屏幕截图所示。

此示例演示如何加载现有 PDF 文档。这里,我们将加载上面显示的 PDF 文档 sample.pdf,向其中添加一个页面,并将其保存在同一路径下,且名称相同。
步骤 1 − 将此代码保存在名为 LoadingExistingDocument.java 的文件中。
import java.io.File; import java.io.IOException; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.pdmodel.PDPage; public class LoadingExistingDocument { public static void main(String args[]) throws IOException { //加载现有文档 File file = new File("C:/PdfBox_Examples/sample.pdf"); PDDocument document = PDDocument.load(file); System.out.println("PDF loaded"); //向文档添加空白页 document.addPage(new PDPage()); //保存文档 document.save("C:/PdfBox_Examples/sample.pdf"); //关闭文档 document.close(); } }
使用以下命令从命令提示符编译并执行已保存的 Java 文件
javac LoadingExistingDocument.java java LoadingExistingDocument
执行后,上述程序将加载指定的 PDF 文档并向其添加一个空白页,显示以下消息。
PDF loaded
如果验证指定的路径,您可以找到添加到指定 PDF 文档的附加页面,如下所示。
