Java将 PDF 拆分为多个 PDF 文件
对于职场人士来说, PDF明显要比Word受欢迎, 不仅是因为其安全性高,而且传输速度比较快。PDF中的内容过多时就会导致PDF文件过大,传输速度就会变慢, 我们当初选择使用PDF就是看重传输速度快的优点, 如果不拆分的话就会影响传输速率。 一份页面较多且内容复杂的PDF文件不仅在传输方面很麻烦,对它进行阅览也会给很多人带来不便。在这样的情况下,我们就需要进行对这份PDF文件进行拆分。
程序环境:
在程序中导入jar,如下两种方法:
方法1:
手动引入。将 Free Spire.PDF for Java 下载到本地,解压,找到lib文件夹下的Spire.Doc.jar文件。在IDEA中打开如下界面,将本地路径中的jar文件引入Java程序:
方法2:
如果您想通过 Maven 安装,则可以在 pom.xml 文件中添加以下代码导入 JAR 文件。
<repositories><repository><id>com.e-iceblue</id><url>https://repo.e-iceblue.cn/repository/maven-public/</url></repository></repositories> <dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.pdf.free</artifactId><version>5.1.0</version></dependency> </dependencies>
将 PDF 拆分为单页
以下是详细步骤。
- 创建一个 PdfDcoument 对象。
- 使用 PdfDocument.loadFromFile() 方法加载 PDF 文档。
- 使用 PdfDocument.split(string destFilePattern, int startNumber) 方法将文档拆分为单页PDF。
【Java】
import com.spire.pdf.PdfDocument;public class SplitPdfByEachPage {public static void main(String[] args) {//指定输入文件路径String inputFile = "成都简介.pdf";//指定输出目录String outputDirectory = "C:\\Users\\Tina\\Desktop\\PDF for java\\"; ;//创建一个PdfDocument对象PdfDocument doc = new PdfDocument();//加载PDF文件doc.loadFromFile(inputFile);//将 PDF 拆分为单页 PDFdoc.split(outputDirectory + "output-{0}.pdf", 1);}
效果图:
按页面范围拆分PDF
以下是详细步骤。
- 在初始化 PdfDocument 对象时加载PDF源文件。
- 创建两个额外的 PdfDocument 对象。
- 使用 PdfDocument.insertPage() 方法将源文件的第一页导入到第一个文档。
- 使用 PdfDocument.insertPageRange() 方法将剩余页面从源文件导入到第二个文档。
- 使用 PdfDocument.saveToFile() 方法将两个文档保存为单独的 PDF 文件。
【Java】
import com.spire.pdf.PdfDocument;public class SplitPdfByPageRange {public static void main(String[] args) {//指定输入文件路径String inputFile = "成都简介.pdf";//指定输出目录String outputDirectory = "C:\\Users\\Tina\\Desktop\\PDF for java\\";//在初始化 PdfDocument 对象时加载源 PDF 文件PdfDocument sourceDoc = new PdfDocument(inputFile);//创建两个额外的 PdfDocument对象PdfDocument newDoc_1 = new PdfDocument();PdfDocument newDoc_2 = new PdfDocument();//将源文件的第一页插入到第一个文档中newDoc_1.insertPage(sourceDoc, 0);//将源文件的其余页面插入第二个文档newDoc_2.insertPageRange(sourceDoc, 1, sourceDoc.getPages().getCount() - 1);//将两个文档另存为 PDF 文件newDoc_1.saveToFile(outputDirectory + "output-1.pdf");newDoc_2.saveToFile(outputDirectory + "output-2.pdf");} }
效果图: 点击此处免费领取java资料
Java将 PDF 拆分为多个 PDF 文件相关推荐
- 怎么把一个PDF拆分成多个PDF文件?
中午休息的时候同事问我:怎么把一个PDF拆分成多个PDF文件?PDF拆分很简单啊,办公都要用到PDF文件,想到这儿,小编就分享实用的方法. 1.在百度中去搜索关键词迅捷PDF在线转换器,点击进入在线网 ...
- drawboard pdf拆分文件_掌握在线PDF拆分技巧,从此打开文件不再处于“加载中”...
随着生活节奏的加快,我们身边的事物渐渐地处于"加载中",到奶茶店买杯奶茶需要加载,玩个游戏处于"加载中",就连工作时打开一个PDF文件都是"加载中&q ...
- 如何拆分PDF,PDF拆分成多个PDF的方法
如何拆分PDF文件呢?我们想要将PDF文件拆分成多个PDF文件需要怎么操作呢?其实方法很简单,只不过需要使用到专业的PDF编辑器,下面小编就使用迅捷PDF编辑器为大家操作一下PDF拆分的方法. 操作软 ...
- pdf分割拆分——speedpdf帮您免费在线将PDF拆分成多个文件
怎么将一个pdf拆分成多个pdf,在工作中我们有时将一个PDF拆分成多个PDF,这样有效处理不同的文件,今天教大家如何将一个PDF拆分成多个PDF. 首先,给您推荐这款名为Speedpdf的在线转换, ...
- PDF拆分技巧——如何在线拆分PDF
PDF文件的拆分和提取是工作中经常会遇到的,对于比较大的PDF文件,我们可能要把PDF文件拆分保存,如果有些时候我们只需要PDF文件中的某一页,那么我们就要对这个页面拆分提取.所以说,掌握PDF拆分的 ...
- 有什么pdf拆分页面方法?分享几个拆分PDF的方法
在我们日常办公中,pdf格式是经常见到的一种,通常我们都会先将excel.ppt.word等文档格式转换成pdf再进行传输,这样即能够加快传输速度,还能够保证不会出现排版错乱的情况.不过有时候文件使用 ...
- pdf拆分怎么做?这几款软件帮你一键拆分
PDF拆分是日常办公中非常常见的操作之一.由于一些原因,我们可能会遇到超大的PDF文件,这会给我们的设备内存带来很大的压力.为了解决这个问题,我们可以使用一些PDF拆分软件,将大文件拆分为小的文件,这 ...
- 【PDF操作】简单的PDF文档签名开源工具
PDF签名 仓库介绍 介绍 使用 签名 其他 仓库介绍 仓库地址 该工具从签名照片中提取文字,并签名到PDF文档的指定位置.除此之外,该仓库还支持其他PDF操作,如合并.OCR.水印功能等. 介绍 该 ...
- Java:OpenOffice方式实现Word转pdf/html/htm
2019独角兽企业重金招聘Python工程师标准>>> 原本的想法想要直接在页面上实现预览,包括预览样式等等,类似这位博主这种方式: http://blog.csdn.net/lbf ...
- 包 java中导入awt_Java 查找并高亮显示PDF文本
本文将使用Free Spire.PDF for Java免费控件来查找PDF文档中的特定文本并对其高亮显示,以此便于后期能够快速查看. Free Spire.PDF for Java主要功能在于帮助开 ...
最新文章
- 面试必问---Java线程池8大拒绝策略
- elasticsearch 自定义_id
- IIS 不能重新启动,并且使用RUN-iisreset 也不能运行,错误提示:No Such Interface Supported (已解决)...
- java推送数据给安卓,java – 如何从Firebase推送通知中获取数据并将其显示在Android Activity中?...
- HDFS剩余空间大小的Java接口,java api获取hdfs索引大小
- MongoDB的可视化工具之Navicat
- java awt 边距_Java Swing - 使用Line Border在TextArea上设置边距
- 安卓自定义注解支持和示例实现
- 使用IE过渡滤镜和CSS3中的RGBA属性完成背景色透明效果
- 图书管理系统【JavaWeb:部署开发环境、解决分类、图书、前台页面模块】
- Java递归算法求n的阶乘
- 小米笔记本 镜像_小米笔记本Air 13.3原装WIN10出厂系统ISO镜像1607原版怎么下载
- uc极度精简版_UC浏览器安卓版-UC浏览器(UCBrowser)12.0.4.987 去广告精简版-东坡下载...
- iOS平台游戏安全之IPA破解原理及防御(第三弹)
- Description Resource Path Location Type The import collides with another import statement
- 第七天 01.ssh服务 使用堡塔以及xshell等连接linux
- JavaScript 访问 JSF 组件
- spring boot 项目启动无法访问,排查
- 解答:为什么判断一个数是否为素数时只需开平方根就行了!
- mysql dwith boost_【云知梦】CentOS8.2上如何编译安装MySQL8?