Java使用PDFBox将一个 PDF 文档拆分为多个 PDF
要将一个 PDF 文档拆分为多个 PDF 文档,您可以使用 PDFBox Java API 的 Splitter.split() 方法。
在本教程中,我们将学习使用示例 Java 程序拆分 PDF 文档。
- 将 PDF 文档中的每一页拆分为不同的 PDF
- 以指定的时间间隔拆分 PDF
PDFBox 示例 1 - 将 PDF 拆分为多个 PDF
在此示例中,我们将采用多页 PDF,并将此 PDF 文档拆分为多个 PDF,其中每个生成的 PDF 文档仅包含源文档中的一页。
SplitPDFExample.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 SplitPDFExample {
public static void main(String[] args) throws IOException {
File file = new File( "/home/tk/sample_pdf.pdf" );
// load pdf file
PDDocument document = PDDocument.load(file);
// instantiating Splitter
Splitter splitter = new Splitter();
// split the pages of a PDF document
List<PDDocument> Pages = splitter.split(document);
// Creating an iterator
Iterator<PDDocument> iterator = Pages.listIterator();
// saving splits as pdf
int i = 0 ;
while (iterator.hasNext()) {
PDDocument pd = iterator.next();
// provide destination path to the PDF split
pd.save( "/home/tk/pdfs/sample_part_" + ++i + ".pdf" );
System.out.println( "Saved /home/tk/pdfs/sample_part_" + i + ".pdf" );
}
System.out.println( "Provided PDF has been split into multiple." );
document.close();
}
}
|
输出
Saved /home/tk/pdfs/sample_part_1.pdf
Saved /home/tk/pdfs/sample_part_2.pdf
Saved /home/tk/pdfs/sample_part_3.pdf
Saved /home/tk/pdfs/sample_part_4.pdf
Saved /home/tk/pdfs/sample_part_5.pdf
Saved /home/tk/pdfs/sample_part_6.pdf
Provided PDF has been split into multiple.
|
PDFBox 示例 2 - 以指定间隔拆分 PDF
以下是将 PDF 文档拆分为多个 PDF 文档的分步指南,这些文档已在源文档中以特定间隔拆分。
SplitPDFAtPageExample.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 SplitPDFAtPageExample {
public static void main(String[] args) throws IOException {
File file = new File( "/home/tk/sample_pdf.pdf" );
// load pdf file
PDDocument document = PDDocument.load(file);
// instantiating Splitter
Splitter splitter = new Splitter();
splitter.setSplitAtPage( 2 );
// split the pages of a PDF document
List<PDDocument> Pages = splitter.split(document);
// Creating an iterator
Iterator<PDDocument> iterator = Pages.listIterator();
// saving splits as pdf
int i = 0 ;
while (iterator.hasNext()) {
PDDocument pd = iterator.next();
pd.save( "/home/tk/pdfs/sample_part_" + ++i + ".pdf" );
System.out.println( "Saved /home/tk/pdfs/sample_part_" + i + ".pdf" );
}
// close the document
document.close();
}
}
|
输出
Saved /home/tk/pdfs/sample_part_1.pdf
Saved /home/tk/pdfs/sample_part_2.pdf
Saved /home/tk/pdfs/sample_part_3.pdf
|
默认情况下,splitAtPage 设置为 1。
结论
在本PDFBox 教程中,我们学习了将 PDF 文档拆分为多个 PDF。
Java使用PDFBox将一个 PDF 文档拆分为多个 PDF相关推荐
- python处理pdf文件的程序_Python处理PDF文档-拆分合并
使用Python处理PDF文档.将需要处理的PDF文档与处理程序放到一个新建的文件夹中.运行程序. S模式,将单个PDF文档拆分到单页,并以数字命名. image.png C模式,合并文档,需要提前将 ...
- html在电脑里怎么打开pdf文件,电脑上的PDF文档怎么打开?打开PDF的5种方法
原标题:电脑上的PDF文档怎么打开?打开PDF的5种方法 目前常用的办公文档中PDF因其格式的稳定性和兼容性都较好,而被越来越多的人使用.那么PDF文档应该如何打开呢?有哪些常用的PDF文件的打开方式 ...
- python书籍pdf文档密码-Python玩转PDF的各种骚操作
Portable Document Format(可移植文档格式),或者PDF是一种文件格式,可以用于跨操作系统的呈现和文档交换.尽管PDF最初是由Adobe发明的,但它现在是由国际标准化组织(ISO ...
- PDF文档阅读器-福昕PDF阅读器下载
福昕PDF阅读器(Foxit Reader)是福昕公司推出的首款简体中文版本PDF文档阅读器,它的启动速度是很快的,是一款非常好用的软件.福昕PDF阅读器(Foxit Reader)是用户信赖的阅读器 ...
- pdf 文档 搜索 服务器,福昕PDF搜索工具_PDF文档索引与检索_福昕软件官网
快速精准的索引技术,帮助您快速搜索PDF文档 Foxit PDF IFilter实现了快速精准的索引技术,通过指定搜索条件,对大量PDF文件进行索引,从而快速定位到所需文档.Foxit PDF IFi ...
- 用C#实现生成PDF文档和将WORD转换为PDF (转自海东的技术资料)
转自:http://www.cnblogs.com/ghd258/articles/258060.html 前言:由于一个客户的项目中需要将WORD文档转换成PDF格式,故写了本篇实站教程 需求分析 ...
- 用C#实现生成PDF文档和将WORD转换为PDF
知识点:线程调用,异步线程,异步线程回调函数,C#的类,WSH宿主脚本开发 前言:由于一个客户的项目中需要将WORD文档转换成PDF格式,故写了本篇实站教程 需求分析:客户的项目以B/S结构为主,提供 ...
- 服务器上pdf文档无法删除,怎么对PDF文件进行编辑,PDF怎么删除空白页
随着PDF文件越来越受大家的欢迎,PDF文件的修改编辑是需要用到PDF编辑器的,不知道大家在使用PDF文件的时候,编辑文件之后有没有文件中有页面需要删除的情况,在编辑文件的时候如果遇到文件中有页面需要 ...
- pdf压缩的网站?pdf文件在线压缩?在线压缩pdf文件大小?pdf文档压缩,在线压缩pdf文件大小,压缩pdf大小的方法?
pdf在线压缩大小?在工作中需要处理大量PDF文件,我们通常要对PDF文件进行压缩处理.那么问题来了,PDF文件该怎么压缩呢?可能很多人都不知道具体的操作方法,今天要分享给大家的正是PDF压缩的方法, ...
- 如何把一个PDF文档拆分为多个文档
随着PDF格式文件的广泛应用,我们不可避免的遇到将一个大的PDF文件切分成为一个个单独的文件.下面我们以迅捷 pdf分割软件 为例,仔细谈谈怎么把PDF文件分割成若干个文件. 步骤与方法: ①拆分一个 ...
最新文章
- 计算机技术在工程的应用浅论,《计算机技术在计算机应用技术中的应用浅论》...
- 暑假N天乐【比赛篇】 —— 2019杭电暑期多校训练营(第五场)
- 浙江工商大学计算机学院调剂录取,浙江工商大学2017年硕士研究生调剂拟录取名单公布(持续更新)...
- boost::multiprecision模块将 std::numeric_limits 用作 multiprecision.qbk 上的多精度文档片段的示例
- 【渝粤教育】广东开放大学 系统工程 形成性考核 (25)
- 洛谷 P3382 【模板】三分法
- mac安装helm工具_适用于初学者的基本 kubectl 和 Helm 命令
- 大数据技术原理与应用(最后三天备考!!!)
- 汽车故障诊断技术【9】
- 一味迎合观众,就会被淘汰
- 2020奶茶行业研究报告
- 三种迭代法解方程组(雅可比Jacobi、高斯-赛德尔Gaisi_saideer、逐次超松弛SOR)
- 【无标题】https://e-cloudstore.com/ec/api/applist/index.html#/
- 数模学习(模糊数学篇)——模糊识别(python实现)
- 幼儿园教师计算机技术培训计划,幼儿园教师基本功培训计划3篇
- Oracle闪回报错,Oracle闪回恢复 - osc_pnw2apz4的个人空间 - OSCHINA - 中文开源技术交流社区...
- 格灵深瞳出手,灵异视频告破
- [附源码]Python计算机毕业设计SSM流浪猫狗救助站(程序+LW)
- 手机4g信号强的服务器,国内三大运营商到底谁的4G网络信号最强?很多人都搞错了,望周知...
- 英语语法总结---三、英语中三个特殊句式是哪三个