pdf按照页码分割 java_java使用itext按页码拆分pdf文件
java使用itext按页码拆分pdf文件,代码实现如下:
/**
* @author viralpatel.net
*
* @param inputStream Input PDF file
* @param outputStream Output PDF file
* @param fromPage start page from input PDF file
* @param toPage end page from input PDF file
*/
public static void splitPDF(InputStream inputStream,
OutputStream outputStream, int fromPage, int toPage) {
Document document = new Document();
try {
PdfReader inputPDF = new PdfReader(inputStream);
int totalPages = inputPDF.getNumberOfPages();
//make fromPage equals to toPage if it is greater
if(fromPage > toPage ) {
fromPage = toPage;
}
if(toPage > totalPages) {
toPage = totalPages;
}
// Create a writer for the outputstream
PdfWriter writer = PdfWriter.getInstance(document, outputStream);
document.open();
PdfContentByte cb = writer.getDirectContent(); // Holds the PDF data
PdfImportedPage page;
while(fromPage <= toPage) {
document.newPage();
page = writer.getImportedPage(inputPDF, fromPage);
cb.addTemplate(page, 0, 0);
fromPage++;
}
outputStream.flush();
document.close();
outputStream.close();
} catch (Exception e) {
e.printStackTrace();
} finally {
if (document.isOpen())
document.close();
try {
if (outputStream != null)
outputStream.close();
} catch (IOException ioe) {
ioe.printStackTrace();
}
}
}
使用示例如下,将一个20页的pdf文件拆分成1-12和13-20页两个pdf文件:
public static void main(String[] args) {
try {
MergePDF.splitPDF(new FileInputStream("C:\\input.pdf"),
new FileOutputStream("C:\\output1.pdf"), 1, 12);
MergePDF.splitPDF(new FileInputStream("C:\\input.pdf"),
new FileOutputStream("C:\\output2.pdf"), 13, 20);
} catch (Exception e) {
e.printStackTrace();
}
}
pdf按照页码分割 java_java使用itext按页码拆分pdf文件相关推荐
- pdf按照页码分割 java_java使用itext按页码拆分pdf文件详解
java使用itext按页码拆分pdf文件,代码实现如下: /** * @author viralpatel.net * * @param inputStream Input PDF file * @ ...
- 拆分pdf文件最简单的方法?PDF拆分成多个文件工具推荐
很多朋友会在日常生活工作中遇见PDF文件过大的情况,这时候就有两个办法解决文件过大的办法,一个是压缩PDF,但是这种方法会影响到文件内容的清晰度,这就会劝退一部分用户,选择另一种方法,拆分PDF.那么 ...
- 如何快速拆分PDF文件?
我们在工作中经常接触各种PDF文件,有时会遇到特殊情况,需要将一个PDF文件拆分为多个PDF文件,那如何拆分PDF文件呢?通过使用专业的PDF工具,有多种方法可以简单免费拆分PDF页面.本文将重点介绍 ...
- pdf怎么分成多个文件?这个方法轻松搞定合并拆分PDF!
PDF文档是我们日常工作.学习中常用的文件格式之一.有时候我们需要对大型PDF文档进行拆分,以便更快地找到自己需要的部分或在传输等方面节省时间.下面介绍两种常见的拆分PDF文档的方法. 方法一:在PD ...
- iText框架(生成pdf文档)
1.创建一个itext的简单示例 a.导包(pom.xml文件) <dependencies><dependency><groupId>com.lowagie< ...
- linux合并pdf命令,科学网—[转载]linux下利用命令行工具pdftk对PDF进行合并分割(转载) - 崔鹏碧的博文...
pdftk是非常好用的PDF页面操作工具,能够切割.合并.提取指定页面等. 常用包括的功能如下:合并 PDF: 分割 PDF 页面: 旋转 PDF 页面: PDF 带密码访问: PDF 填加密码: 用 ...
- 利用命令行工具pdftk对PDF进行合并分割
pdftk是非常好用的PDF页面操作工具,能够切割.合并.提取指定页面等. 参考:PDF 合并和分割工具--PDFtk 参考官网:PDFtk server: the pdf tool kit 常用包括 ...
- PYTHON:PYQT5 实现 pdf 合并与分割
前言 在工作合生活中,会遇到处理pdf的时候,尤其pdf分割与合并时束手无策,下面就利用python实现pdf分割和合并,并且利用pyqt5来实现图形化展示. 将多个PDF文件合并成一个PDF文件的合 ...
- ITEXT将HTML转为PDF内容被截断处理及相关问题总结
ITEXT将HTML转为PDF内容被截断处理及相关问题总结 文章目录 ITEXT将HTML转为PDF内容被截断处理及相关问题总结 前言 一.ITEXT将HTML转为PDF内容被截断处理(一) 1.问题 ...
最新文章
- SAP MM 模块调研问卷样例
- http://www.huihoo.com/ 灰狐网站 Linux 专业网站
- 微信开发-ACCESS TOKEN 过期失效解决方案
- 【Qt】QModbusTcpConnectionObserver类
- MySQL命令行登陆,远程登陆MySQL
- .Net Core with 微服务 - 可靠消息最终一致性分布式事务
- C语言获取某个文件中一行内容中指定字符串后的值
- 2019福建省c语言知识点,2019最新C语言知识整理(干货)
- 开发者该如何利用 C# 加解密?
- 50欧姆线设计 高频pcb_高频电路布线的应对方法有哪些?
- php列表排布,php全排列递归算法代码
- 计算机主机外接电源,电脑DIY必修课,电源接口详解
- 计算机的复数形式英语,名词的复数形式大全
- wxpython使用简介_wxPython AUI介绍
- WR720N改造记录1
- 对于多线程程序,单核cpu与多核cpu是怎么工作的
- g2o学习记录(1)安装和运行其下面的unit_test项目
- 2019年北京市社会保险缴费明细表
- 职业教育的春天 ——职业教育系列行研报告(一)
- 电脑内存条C14和C16的区别是什么?