对于职场人士来说, 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 文件相关推荐

  1. 怎么把一个PDF拆分成多个PDF文件?

    中午休息的时候同事问我:怎么把一个PDF拆分成多个PDF文件?PDF拆分很简单啊,办公都要用到PDF文件,想到这儿,小编就分享实用的方法. 1.在百度中去搜索关键词迅捷PDF在线转换器,点击进入在线网 ...

  2. drawboard pdf拆分文件_掌握在线PDF拆分技巧,从此打开文件不再处于“加载中”...

    随着生活节奏的加快,我们身边的事物渐渐地处于"加载中",到奶茶店买杯奶茶需要加载,玩个游戏处于"加载中",就连工作时打开一个PDF文件都是"加载中&q ...

  3. 如何拆分PDF,PDF拆分成多个PDF的方法

    如何拆分PDF文件呢?我们想要将PDF文件拆分成多个PDF文件需要怎么操作呢?其实方法很简单,只不过需要使用到专业的PDF编辑器,下面小编就使用迅捷PDF编辑器为大家操作一下PDF拆分的方法. 操作软 ...

  4. pdf分割拆分——speedpdf帮您免费在线将PDF拆分成多个文件

    怎么将一个pdf拆分成多个pdf,在工作中我们有时将一个PDF拆分成多个PDF,这样有效处理不同的文件,今天教大家如何将一个PDF拆分成多个PDF. 首先,给您推荐这款名为Speedpdf的在线转换, ...

  5. PDF拆分技巧——如何在线拆分PDF

    PDF文件的拆分和提取是工作中经常会遇到的,对于比较大的PDF文件,我们可能要把PDF文件拆分保存,如果有些时候我们只需要PDF文件中的某一页,那么我们就要对这个页面拆分提取.所以说,掌握PDF拆分的 ...

  6. 有什么pdf拆分页面方法?分享几个拆分PDF的方法

    在我们日常办公中,pdf格式是经常见到的一种,通常我们都会先将excel.ppt.word等文档格式转换成pdf再进行传输,这样即能够加快传输速度,还能够保证不会出现排版错乱的情况.不过有时候文件使用 ...

  7. pdf拆分怎么做?这几款软件帮你一键拆分

    PDF拆分是日常办公中非常常见的操作之一.由于一些原因,我们可能会遇到超大的PDF文件,这会给我们的设备内存带来很大的压力.为了解决这个问题,我们可以使用一些PDF拆分软件,将大文件拆分为小的文件,这 ...

  8. 【PDF操作】简单的PDF文档签名开源工具

    PDF签名 仓库介绍 介绍 使用 签名 其他 仓库介绍 仓库地址 该工具从签名照片中提取文字,并签名到PDF文档的指定位置.除此之外,该仓库还支持其他PDF操作,如合并.OCR.水印功能等. 介绍 该 ...

  9. Java:OpenOffice方式实现Word转pdf/html/htm

    2019独角兽企业重金招聘Python工程师标准>>> 原本的想法想要直接在页面上实现预览,包括预览样式等等,类似这位博主这种方式: http://blog.csdn.net/lbf ...

  10. 包 java中导入awt_Java 查找并高亮显示PDF文本

    本文将使用Free Spire.PDF for Java免费控件来查找PDF文档中的特定文本并对其高亮显示,以此便于后期能够快速查看. Free Spire.PDF for Java主要功能在于帮助开 ...

最新文章

  1. 面试必问---Java线程池8大拒绝策略
  2. elasticsearch 自定义_id
  3. IIS 不能重新启动,并且使用RUN-iisreset 也不能运行,错误提示:No Such Interface Supported (已解决)...
  4. java推送数据给安卓,java – 如何从Firebase推送通知中获取数据并将其显示在Android Activity中?...
  5. HDFS剩余空间大小的Java接口,java api获取hdfs索引大小
  6. MongoDB的可视化工具之Navicat
  7. java awt 边距_Java Swing - 使用Line Border在TextArea上设置边距
  8. 安卓自定义注解支持和示例实现
  9. 使用IE过渡滤镜和CSS3中的RGBA属性完成背景色透明效果
  10. 图书管理系统【JavaWeb:部署开发环境、解决分类、图书、前台页面模块】
  11. Java递归算法求n的阶乘
  12. 小米笔记本 镜像_小米笔记本Air 13.3原装WIN10出厂系统ISO镜像1607原版怎么下载
  13. uc极度精简版_UC浏览器安卓版-UC浏览器(UCBrowser)12.0.4.987 去广告精简版-东坡下载...
  14. iOS平台游戏安全之IPA破解原理及防御(第三弹)
  15. Description Resource Path Location Type The import collides with another import statement
  16. 第七天 01.ssh服务 使用堡塔以及xshell等连接linux
  17. JavaScript 访问 JSF 组件
  18. spring boot 项目启动无法访问,排查
  19. 解答:为什么判断一个数是否为素数时只需开平方根就行了!
  20. mysql dwith boost_【云知梦】CentOS8.2上如何编译安装MySQL8?

热门文章

  1. Android-环境搭建
  2. Report Services RDL报告服务器的一些经验
  3. 中小尺寸OLED面板面临价格战,中国手机可捡便宜
  4. bugku bingo题解
  5. 安装Ofiice2016 错误提示“检查您的internet连接是否工作正常”等
  6. 浅析VO、DTO、DO、BO的概念、区别和用处
  7. 输出星期几的英文表示
  8. HTML设计网站首页
  9. 对于一个类似VBF文件中有ASCII+二进制俩种编码方式的文件的读取
  10. 联想电脑删除右键多余菜单选项