现在让我们学习如何从PDF文档中删除页面.
从现有文档中删除页面
您可以从中删除页面使用 PDDocument 类的 removePage()方法的现有PDF文档.
步骤1:加载现有PDF文档
使用 PDDocument 类的静态方法 load()加载现有PDF文档.此方法接受文件对象作为参数,因为这是一个静态方法,您可以使用类名调用它,如下所示.
File file = new File("path of the document") PDDocument.load(file);
第2步:列出页数
您可以列出PDF文档中存在的页数使用 getNumberOfPages()方法,如下所示.
int noOfPages= document.getNumberOfPages();System.out.print(noOfPages);
第3步:删除页面
您可以使用 removePage从PDF文档中删除页面() PDDocument 类的方法.对于此方法,您需要传递要删除的页面的索引.
在为PDF文档中的页面指定索引时,请记住这些页面的索引从零开始,即,如果要删除1 st 页面,则索引值必须为0.
document.removePage(2);
步骤4:保存文档
删除页面后,使用保存保存PDF文档() PDDocument 类的方法,如下面的代码块所示.
document.save("Path");
步骤5:关闭文档
最后,使用关闭() PDDocument 类的方法,如下所示.
document.close();
示例
假设我们有一个名为 sample.pdf 的PDF文档,它包含三个空页面,如下所示.
此示例演示如何从现有PDF文档中删除页面.在这里,我们将加载上面指定的名为 sample.pdf 的PDF文档,从中删除页面,并将其保存在路径 C:/PdfBox_Examples/中.将此代码保存在名为 Removing_pages.java 的文件中.
import java.io.File;import java.io.IOException;import org.apache.pdfbox.pdmodel.PDDocument;public class RemovingPages { 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); //Listing the number of existing pages int noOfPages= document.getNumberOfPages(); System.out.print(noOfPages); //Removing the pages document.removePage(2); System.out.println("page removed"); //Saving the document document.save("C:/PdfBox_Examples/sample.pdf"); //Closing the document document.close(); }}
使用以下命令从命令提示符编译并执行保存的Java文件.
javac RemovingPages.java java RemovingPages
执行时,上述程序创建一个PDF文档,其空白页面显示以下消息.
3page removed
如果您验证了指定的路径,您可以发现所需的页面已被删除,文档中只剩下两页,如下所示.