Apache PDFBox 库是一个开源、用于操作 PDF 文档的 Java 工具库。PDFBox 允许创建新的 PDF 文档、操作现有文档,以及从文档中提取内容。
获取 Apache PDFBox 下载地址,目前版本 2.0.25,核心 jar 是 pdfbox-2.0.25.jar,其他还有几个 jar 可以根据需要进行导入。
这里 jar包下载与源码学习可以下载全部的 jar 和一些命令行工具,下载 pdfbox-2.0.25-src.zip 源码可以看到文件夹 examples 里面有不少例子进行了示范。
如果帮助到你了麻烦点个赞或收藏哦,会不断更新的
pdf转换为word
package pdfUtity; import org.apache.pdfbox.pdmodel.PDDocument; import org.apache.pdfbox.text.PDFTextStripper; import java.io.*; /** * @author: Serendipity * Date: 2022/3/17 10:58 * Description: */ public class pdfToWord { public static void main(String[] args) { try { //输入pdf的路径 String pdfFile = "d://desktopfile//pdfs//1.pdf"; //将pdf加载到对象中去 PDDocument doc = PDDocument.load(new File(pdfFile)); //得到pdf的页数 int pagenumber = doc.getNumberOfPages(); //设置转换后的名字 // pdfFile = pdfFile.substring(0, pdfFile.lastIndexOf(".")); // String fileName = pdfFile + ".doc"; String fileName="word.doc"; File file = new File(fileName); if (!file.exists()) { file.createNewFile(); } FileOutputStream fos = new FileOutputStream(fileName); //设置输出字符集为UTF-8 因此该word应该使用UTF-8格式打开 如果你出现乱码那么你可以自己修改一下这里的格式 Writer writer = new OutputStreamWriter(fos, "UTF-8"); PDFTextStripper stripper = new PDFTextStripper(); stripper.setSortByPosition(true);// 排序 stripper.setStartPage(1);// 设置转换的开始页 stripper.setEndPage(pagenumber);// 设置转换的结束页 stripper.writeText(doc, writer); writer.close(); doc.close(); System.out.println("pdf转换word成功!"); } catch (IOException e) { e.printStackTrace(); } } }