java如何对pdf文档进行合并操作呢?
下文笔者讲述pdf文档合并的方法分享,如下所示
多个pdf合并为一个pdf文件的示例分享
pdf文档合并的方法
实现思路: 使用Apache PDFBox的方式合并pdf
Apache PDFBox简介
Apache PDFBox 是一个开源Java库 支持PDF文档的开发和转换 使用这个库 我们可以进行创建、转换和操作 PDF 文档 使用PDFBox可将单个PDF文件分成多个文件 也可将多个pdf文件合并成一个pdf文件,然后输出例:
多个pdf合并为一个pdf文件的示例分享
1.导入相应的依赖 <!-- https://mvnrepository.com/artifact/org.apache.pdfbox/pdfbox --> <dependency> <groupId>org.apache.pdfbox</groupId> <artifactId>pdfbox</artifactId> <version>2.0.17</version> </dependency> 2.转换工具类 import java.io.IOException; import java.io.File; import java.util.Arraylist; import java.util.List; import org.apache.pdfbox.io.MemoryUsageSetting; import org.apache.pdfbox.multipdf.PDFMergerUtility; public class PdfFileUtil { /** * pdf合并拼接 * @param files 文件列表 * @param targetPath 合并到 * @return */ public static File mulFileToOne(List<File> files,String targetPath) throws IOException{ // pdf合并工具类 PDFMergerUtility mergePdf = new PDFMergerUtility(); for (File f : files) { if(f.exists() && f.isFile()){ // 循环添加要合并的pdf mergePdf.addSource(f); } } // 设置合并生成pdf文件名称 mergePdf.setDestinationFileName(targetPath); // 合并pdf mergePdf.mergeDocuments(MemoryUsageSetting.setupMainMemoryOnly()); //清空files files.clear(); return new File(targetPath); } //测试main方法 public static void main(String[] args) throws IOException { //创建文件集合 List<File> files = new ArrayList<File>(); //将需要合并的文件添加到集合中 files.add(new File("D:\\test\\1.pdf")); files.add(new File("D:\\test\\2.pdf")); files.add(new File("D:\\test\\3.pdf")); //调用方法传入文件集合和目标文件地址 File f = mulFileToOne(files, "D:\\test\\total.pdf"); } }
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。