最近在上下班的路上看pdf文件比较多,想把整本书dpdf分割成对应的章节,所以自己看了一些参考资料后,自己写了一个小程序,实现了自己的想法。
我的基本需求是:提供一个pdf文件的全路径 + 新生成pdf文件名称 + 起始页码 + 结束页码 最后就能在相同目录下找到新文件。
可以运行的代码是(需要导入的三个jar包见附件)
package com.peter.utils; import java.io.FileOutputStream; import java.io.IOException; import java.util.ArrayList; import com.lowagie.text.Document; import com.lowagie.text.DocumentException; import com.lowagie.text.pdf.PdfCopy; import com.lowagie.text.pdf.PdfImportedPage; import com.lowagie.text.pdf.PdfReader; public class MyPDFUtil { public static void main(String[] args) { partitionPdfFile("D:\\mag_test\\test_pdf.pdf","Chapter04.pdf", 11,23); } /** * 截取pdfFile的第from页至第end页,组成一个新的文件名 * @param pdfFile * @param subfileName * @param from * @param end */ public static void partitionPdfFile(String pdfFile, String newFile, int from, int end) { Document document = null; PdfCopy copy = null; try { PdfReader reader = new PdfReader(pdfFile); int n = reader.getNumberOfPages(); if(end==0){ end = n; } ArrayList<String> savepaths = new ArrayList<String>(); String staticpath = pdfFile.substring(0, pdfFile.lastIndexOf("\\")+1); String savepath = staticpath+ newFile; savepaths.add(savepath); document = new Document(reader.getPageSize(1)); copy = new PdfCopy(document, new FileOutputStream(savepaths.get(0))); document.open(); for(int j=from; j<=end; j++) { document.newPage(); PdfImportedPage page = copy.getImportedPage(reader, j); copy.addPage(page); } document.close(); } catch (IOException e) { e.printStackTrace(); } catch(DocumentException e) { e.printStackTrace(); } } }
相关推荐
PDF分割合并软件是一种高效实用的工具,专门针对PDF文档处理,提供PDF的分割与合并功能。在日常工作中,我们常常会遇到需要将大型PDF文件拆分成更小的部分,或者将多个独立的PDF文件整合成一个统一的文档。这款软件...
PDF分割与合并工具是IT行业中处理PDF文档时不可或缺的实用软件。PDF(Portable Document Format)是一种通用的文件格式,常用于共享和打印文档,因为它的布局和格式在各种设备上都能保持一致。然而,有时我们需要将...
总的来说,"PDF文件分割合并软件绿色"是一款实用且安全的工具,它简化了对PDF文档的管理工作,无论是为了方便阅读、分享,还是为了整理存储,都是处理PDF文件的好帮手。了解并熟练使用这样的工具,能大大提高我们的...
在实际开发中,`iText操作Pdf简单整理.txt`可能包含了关于如何使用这些功能的示例代码和说明,通过学习和实践,开发者能够熟练掌握iText,满足各种PDF文档处理需求。 总的来说,iText是一款功能丰富的PDF处理工具,...
对于需要处理大量图片并生成PDF的场景,这样的源代码非常实用,可以显著提高工作效率。 总之,“expdf_单层pdf源代码_PDF单层”提供的源代码是实现图片到单层PDF转换的一个实例,涵盖了图像处理、PDF生成和页面布局...
总的来说,通过结合`requests`、`beautifulsoup4`、`pdfkit`和`PyPDF2`,我们可以轻松地实现从HTML网页抓取内容并保存为PDF的功能,这对于数据分析、文档整理或者自动化报告生成等场景都非常实用。
PDF合并工具是一款基于VS(Visual Studio)开发的源代码项目,其主要功能是将多个PDF文档整合成一个单一的PDF文件。...这对于扩展其他PDF相关的应用,如PDF分割、加密、解密等,都是非常有价值的。
PDFExtractor是一个基于Java开发的实用工具,专门用于对PDF文档进行高效、精确的页面分割操作。这个程序允许用户根据指定的页码或者页码范围,从原始PDF文档中提取出部分页面,然后创建新的PDF文件。这样的功能在...
### C#经典特效代码470例概览与关键技术解析 #### 一、窗体与界面设计 在C#开发中,窗体与界面的设计是非常重要的一个方面,它直接影响到用户的体验以及软件的整体美观度。本节将详细介绍《C#经典特效代码470例》...
用户可能只需要通过简单的界面交互,指定输入PDF文件和切割方式(如左右平均分割或上下平均分割),就可以完成页面切割,无需编写任何代码。这样的工具对于非程序员或者不熟悉编程的人来说非常方便。 PDF页面切割...
PDF书籍拆分是一种常见的文档处理任务,特别是在学术研究、教育或文档整理中。这个主题涉及到如何将一个完整的PDF文件按照需求分割成多个独立的部分,以便更方便地管理和使用。在这个过程中,我们通常会使用特定的...
在SQL Server 6.5及更早版本中,实现分区通常需要创建多个物理表,并通过存储过程、视图或客户端代码来管理数据访问。这种方法虽然能在一定程度上提升性能,但增加了设计的复杂度,用户和开发者需要清楚地知道如何...
《php和mysql web开发(原书第4版)》:开发人员专业技术丛书。 目录 读者反馈 译者序 前言 作者简介 第一篇 使用PHP 第1章 PHP快速入门教程 1.1 开始之前:了解PHP 1.2 创建一个示例应用:Bob汽车零部件商店 ...
"Python一键提取PDF中的表格到Excel"是一个常见的需求,尤其是在数据分析、报表整理等场景下。这个话题涉及到Python的两个关键库:PyPDF2用于读取PDF文件,pandas则用于处理和转换数据,最终将表格数据保存为Excel...
partition方法则根据指定子串将字符串分割为三部分,方便进行字符串解析。 split方法按指定分隔符将字符串拆分为列表,而join方法将字符串列表合并成一个字符串,中间插入指定的分隔符。find方法返回子串的位置,不...
PDF格式扫描版,全书分为24章,共817页。2011年1月出版。 全书压缩打包成4部分,这是第3部分 注:本系列图书的第I、II卷再版时均相应改名为《xxx开发实例大全》(基础卷)及(提高卷),但内容基本无变化,需要的童鞋可...
11. **自动补全**:利用`Ctrl+P`等命令进行代码片段或文件名的自动补全,提高编写代码的效率。 12. **自定义命令**:通过定义自定义命令,可以将复杂的操作简化为单个命令。例如,`:command! Upper s/\v\l//g`可以...
总的来说,PDF Split and Merge with Bookmark Import 是一款强大且实用的PDF处理工具,尤其适合需要频繁整理和编辑PDF文档的用户。它的开源性质和丰富的功能集使其成为个人和组织处理PDF文档的理想选择。
根据提供的文件信息,“C语言经典算法100例.pdf”主要聚焦于C语言中的经典算法案例,这表明文档内包含了100个实用且经典的C语言编程算法实例。虽然给出的部分内容并未直接提及具体的算法细节,但从其描述及标签来看...