Apache PDFBox

Apache PDFBox是一个开源 Java 库,支持 PDF 文档的开发和转换。使用这个库,您可以开发创建、转换和操作 PDF 文档的 Java 程序。 Split & Merge :使用 PDFBox,您可以将单个 PDF 文件分成多个文件,并将它们合并为单个文件。 案例:把多个pdf转换成一个pdf 1.导包

org.apache.pdfbox

pdfbox

2.0.17

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 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 files = new ArrayList();

//将需要合并的文件添加到集合中

files.add(new File("E:\\fsdownloadtempFile\\1.pdf"));

files.add(new File("E:\\fsdownloadtempFile\\2.pdf"));

files.add(new File("E:\\fsdownloadtempFile\\3.pdf"));

//调用方法传入文件集合和目标文件地址

File f = mulFileToOne(files, "E:\\fsdownload\\total.pdf");

}

}

pdfbox里面还有各种对pdf文档的操作支持。如文字提取,文字修改等。有兴趣的可以去了解一下

相关链接

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。