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文件相关推荐

  1. pdf按照页码分割 java_java使用itext按页码拆分pdf文件详解

    java使用itext按页码拆分pdf文件,代码实现如下: /** * @author viralpatel.net * * @param inputStream Input PDF file * @ ...

  2. 拆分pdf文件最简单的方法?PDF拆分成多个文件工具推荐

    很多朋友会在日常生活工作中遇见PDF文件过大的情况,这时候就有两个办法解决文件过大的办法,一个是压缩PDF,但是这种方法会影响到文件内容的清晰度,这就会劝退一部分用户,选择另一种方法,拆分PDF.那么 ...

  3. 如何快速拆分PDF文件?

    我们在工作中经常接触各种PDF文件,有时会遇到特殊情况,需要将一个PDF文件拆分为多个PDF文件,那如何拆分PDF文件呢?通过使用专业的PDF工具,有多种方法可以简单免费拆分PDF页面.本文将重点介绍 ...

  4. pdf怎么分成多个文件?这个方法轻松搞定合并拆分PDF!

    PDF文档是我们日常工作.学习中常用的文件格式之一.有时候我们需要对大型PDF文档进行拆分,以便更快地找到自己需要的部分或在传输等方面节省时间.下面介绍两种常见的拆分PDF文档的方法. 方法一:在PD ...

  5. iText框架(生成pdf文档)

    1.创建一个itext的简单示例 a.导包(pom.xml文件) <dependencies><dependency><groupId>com.lowagie< ...

  6. linux合并pdf命令,科学网—[转载]linux下利用命令行工具pdftk对PDF进行合并分割(转载) - 崔鹏碧的博文...

    pdftk是非常好用的PDF页面操作工具,能够切割.合并.提取指定页面等. 常用包括的功能如下:合并 PDF: 分割 PDF 页面: 旋转 PDF 页面: PDF 带密码访问: PDF 填加密码: 用 ...

  7. 利用命令行工具pdftk对PDF进行合并分割

    pdftk是非常好用的PDF页面操作工具,能够切割.合并.提取指定页面等. 参考:PDF 合并和分割工具--PDFtk 参考官网:PDFtk server: the pdf tool kit 常用包括 ...

  8. PYTHON:PYQT5 实现 pdf 合并与分割

    前言 在工作合生活中,会遇到处理pdf的时候,尤其pdf分割与合并时束手无策,下面就利用python实现pdf分割和合并,并且利用pyqt5来实现图形化展示. 将多个PDF文件合并成一个PDF文件的合 ...

  9. ITEXT将HTML转为PDF内容被截断处理及相关问题总结

    ITEXT将HTML转为PDF内容被截断处理及相关问题总结 文章目录 ITEXT将HTML转为PDF内容被截断处理及相关问题总结 前言 一.ITEXT将HTML转为PDF内容被截断处理(一) 1.问题 ...

最新文章

  1. SAP MM 模块调研问卷样例
  2. http://www.huihoo.com/ 灰狐网站 Linux 专业网站
  3. 微信开发-ACCESS TOKEN 过期失效解决方案
  4. 【Qt】QModbusTcpConnectionObserver类
  5. MySQL命令行登陆,远程登陆MySQL
  6. .Net Core with 微服务 - 可靠消息最终一致性分布式事务
  7. C语言获取某个文件中一行内容中指定字符串后的值
  8. 2019福建省c语言知识点,2019最新C语言知识整理(干货)
  9. 开发者该如何利用 C# 加解密?
  10. 50欧姆线设计 高频pcb_高频电路布线的应对方法有哪些?
  11. php列表排布,php全排列递归算法代码
  12. 计算机主机外接电源,电脑DIY必修课,电源接口详解
  13. 计算机的复数形式英语,名词的复数形式大全
  14. wxpython使用简介_wxPython AUI介绍
  15. WR720N改造记录1
  16. 对于多线程程序,单核cpu与多核cpu是怎么工作的
  17. g2o学习记录(1)安装和运行其下面的unit_test项目
  18. 2019年北京市社会保险缴费明细表
  19. 职业教育的春天 ——职业教育系列行研报告(一)
  20. 电脑内存条C14和C16的区别是什么?

热门文章

  1. Android:解决华为手机隐藏虚拟按键Activity被重新创建的问题
  2. Win10+GeForce 940M(CUDA8.0)+Visual Studio 2015的GPU环境配置步骤
  3. matlab周群益,MATLAB可视化大学物理学
  4. 字符串匹配--朴素算法
  5. 2023内蒙古工业大学计算机考研信息汇总
  6. 如何关闭iOS系统自动更新提示
  7. 【前端提升之---webpack 一】
  8. python安装失败的解决网址
  9. Markdown基础命令
  10. PaddleLite使用比特大陆硬件(bm)编译和预测