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 {
   
      //Loading an existing document 
      File file = new File("C:/PdfBox_Examples/sample.pdf"); 
      PDDocument document = PDDocument.load(file); 
        
      System.out.println("PDF loaded"); 
        
      //Adding a blank page to the document 
      document.addPage(new PDPage());  

      //Saving the document 
      document.save("C:/PdfBox_Examples/sample.pdf");

      //Closing the document  
      document.close(); 
        
   }  
}

使用以下命令从命令提示符编译并执行保存的 Java 文件

javac LoadingExistingDocument.java  
java LoadingExistingDocument 

执行后,上述程序会加载指定的 PDF 文档,并向其中添加一个空白页,显示以下消息。

PDF loaded

如果验证指定的路径,您可以发现指定的 PDF 文档中添加了一个附加页面,如下所示。

文档中的附加页面