PDF转word

一、引入maven依赖
shell 复制代码
<dependency>
	<groupId>com.aspose</groupId>
	<artifactId>aspose-pdf</artifactId>
	<version>22.10</version>
</dependency>
二、核心代码
java 复制代码
import com.aspose.pdf.Document;
import com.aspose.pdf.PageInfo;
import com.aspose.pdf.SaveFormat;
import java.io.FileOutputStream;
import java.io.IOException;

/**
 * @author :jerry
 * @date :Created in 2022/11/15 19:00
 * @description:PDF转word
 * @version: V1.1
 */
public class PdfWord {

  //测试
    public static void main(String[] args) throws IOException {
        pdfDoc("/Users/jerry/Downloads/考研背景知识盘点(政英数).pdf", ".DOCX");

    }
  
    //pdf转doc
    public static String pdfDoc(String pdfPath, String fileFormatValue) {
        String wordPath = pdfPath.substring(0, pdfPath.lastIndexOf(".")) + fileFormatValue;
        try {
            //新建一个word文档
            FileOutputStream os = new FileOutputStream(wordPath);
            //doc是将要被转化的word文档
            Document doc = new Document(pdfPath);
            //全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF, EPUB, XPS, SWF 相互转换
            doc.setPageInfo(new PageInfo());
            doc.save(os, getTypes(fileFormatValue));
            os.close();
            //转化用时

        } catch (Exception e) {
            System.out.println("Pdf 转 Word 失败...");
            e.printStackTrace();
        }
        return wordPath;
    }

    public static SaveFormat getTypes(String fileFormatValue) {
        SaveFormat docX = SaveFormat.DocX;
        switch (fileFormatValue) {
            //docX
            case ".DOCX":
                //黄金
                docX = SaveFormat.DocX;
                break;
            case ".PDF":
                //Pdf
                docX = SaveFormat.Pdf;
                break;
            case ".Html":
                //Html
                docX = SaveFormat.Html;
                break;
            case ".Xml":
                //Xml
                docX = SaveFormat.Xml;
                break;
            case ".XPS":
                //XPS
                docX = SaveFormat.Xps;
                break;
            case ".Excel":
                //Excel
                docX = SaveFormat.Excel;
                break;
            case ".svg":
                //Excel
                docX = SaveFormat.Svg;
                break;
            default:
                //普通会员
                docX = SaveFormat.Doc;
        }
        return docX;
    }
}

注意事项:

​ 1.有时候报错,可能是因为本机缺少相应的字体包,直接去字体网站 (https://cn.ffonts.net/)下载字体,放入本机的系统字体目录即可.

相关推荐
Jacob程序员1 小时前
java导出word文件(手绘)
java·开发语言·word
q2498596931 小时前
前端预览word、excel、ppt
前端·word·excel
flashman9111 小时前
python在word中插入图片
python·microsoft·自动化·word
hairenjing11238 小时前
使用 Mac 数据恢复从 iPhoto 图库中恢复照片
windows·stm32·嵌入式硬件·macos·word
S. Dylan12 小时前
Edge浏览器打开PDF无法显示电子签章
edge·pdf
一马平川的大草原12 小时前
如何基于pdf2image实现pdf批量转换为图片
计算机视觉·pdf·文件拆分
m0_5945263012 小时前
Python批量合并多个PDF
java·python·pdf
hairenjing112312 小时前
将图片添加到 PDF 的 5 种方法
pdf
✿゚卡笨卡12 小时前
pdf 添加页眉页脚,获取前五页
java·pdf
blegn12 小时前
PDF编辑工具Adobe Acrobat DC 2023安装教程(附安装包)
pdf·办公软件·office