使用步骤
1、导入相关jar包
<dependency>
<groupId>org.apache.pdfbox</groupId>
<artifactId>pdfbox</artifactId>
<version>1.8.10</version>
</dependency>
2、调用方法
import org.apache.pdfbox.multipdf.Splitter;
import org.apache.pdfbox.pdmodel.PDDocument;
import java.io.File;
import java.io.IOException;
import java.util.List;
/**
* Pdf 帮助类
*/
public class PdfUtil {
public static void main(String[] args) {
//splitPdf(4,1,4,"D:\\xxx.pdf","D:\\yyy.pdf");
}
/**
* 分页读取pdf文档
*
* @param allMum 切割的页数
* @param startPage 开始页
* @param endPage 结束页
* @param filePath pdf 文档所在路径
* @param filePath pdf 文档输出路径
*/
public static void splitPdf(Integer allMum,Integer startPage, Integer endPage, String filePath, String outPath) {
// 这是对应文件名
File indexFile = new File(filePath);
try {
PDDocument document = PDDocument.load(indexFile);
Splitter splitter = new Splitter();
//切割的页数
splitter.setSplitAtPage(allMum);
// 开始页
splitter.setStartPage(startPage);
// 结束页
splitter.setEndPage(endPage);
List<PDDocument> pages = splitter.split(document);
pages.forEach(pdDocument -> {
try {
// 这是输出文件名
File outFile = new File(outPath);
pdDocument.save(outFile);
pdDocument.close();
} catch (IOException e) {
System.out.println("pdf切割失败...");
e.printStackTrace();
}
});
}catch (IOException ex){
ex.printStackTrace();
}
}
}