个性化阅读
专注于IT技术分析

PDFBox分割PDF文件

本文概述

我们可以将给定的PDF文档拆分为多个PDF文件。 Splitter类可以将每个PDF文件拆分为一个单独的文件。此类用于将给定的PDF文档拆分为其他几个单独的文档。

要分割现有的PDF文件, 请执行以下操作-

加载现有文档

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

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

创建拆分器对象

splitter类用于拆分现有的PDF文档。我们可以如下实例化splitter类。

Splitter splitter = new Splitter();

分割PDF文件

我们可以使用splitter类的split()方法来拆分现有的PDF文档。 split()方法接受PDDocument类的对象作为参数。

List<PDDocument>Pages = splitter.split(document);

创建迭代器对象

listIterator()方法可用于获取迭代器对象。该迭代器对象用于遍历我们需要的文档列表。以下代码创建迭代器对象。

Iterator<PDDocument>iterator = Pages.listIterator();

关闭文件

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

doc.close();

例-

这是一个PDF文档, 包含五页。前两页包含图像。我们将拆分两个页面, 这些页面通过Java程序将图像作为单独的文件包含。

PDFBox分割PDF文件

Java程序

import org.apache.pdfbox.multipdf.Splitter; 
import org.apache.pdfbox.pdmodel.PDDocument;
import java.io.File; 
import java.io.IOException; 
import java.util.List; 
import java.util.Iterator;

public class SplitsPdfDemo {
	
	public static void main(String[] args)throws IOException {
				
		//Loading an existing PDF document
	      File file = new File("//eclipse-workspace/blanck.pdf");
	      PDDocument document = PDDocument.load(file); 

	// Create a Splitter object
	      Splitter splitter = new Splitter();

	//splitting the pages of a PDF document
	      List<PDDocument>Pages = splitter.split(document);

	//Creating an iterator object
	      Iterator<PDDocument>iterator = Pages.listIterator();

	//saving splits as individual PDF document
	inti = 1;
	while(iterator.hasNext()) {
	         PDDocument pd = iterator.next();
	pd.save("/eclipse-workspace/blanck"+ i++ +".pdf");
	      }
	      System.out.println("Multiple PDF files are created successfully.");
	document.close();
	}
}

输出

成功执行以上程序后, 我们可以看到以下输出。

PDFBox分割PDF文件

现在进行验证, 分别打开PDF文件, 如下所示-

PDFBox分割PDF文件
PDFBox分割PDF文件
赞(0)
未经允许不得转载:srcmini » PDFBox分割PDF文件

评论 抢沙发

评论前必须登录!