java jacob word完美转pdf(内含免费资源)

jacob可将word完美转换为pdf

但是jacob有的问题,直接用maven下不下来,只能自己下jar包,很讨厌。
莫慌,小手轻点这个链接,你就可以下载jacob的jar包资源啦。

跑程序的电脑或者服务器上需要安装word或者wps office 2019版(亲测可行)

首先将jacob.jar放到你跑程序的java lib\ext文件夹下
例如我的位置C:\Program Files\Java\jdk1.8.0_121\jre\lib\ext

再将jacob-1.18-M2-x64.dll放在java bin下(64位机就用64位的版本,32就用32版本)
例如我的位置C:\Program Files\Java\jdk1.8.0_121\jre\bin

然后以idea为例,在这里把jar包加进来
在这里插入图片描述
下边为具体的代码,很简单啦
首先import该import的东西

import com.jacob.activeX.ActiveXComponent;
import com.jacob.com.ComThread;
import com.jacob.com.Dispatch;
import com.jacob.com.Variant;

然后

    /**
     *
     * @param source
     *            word路径
     * @param target
     *            生成的pdf路径
     * @return
     */
    public static boolean word2pdf(String source, String target) {

        System.out.println("Word转PDF开始启动...");
        long start = System.currentTimeMillis();
        ActiveXComponent app = null;
        try {
            app = new ActiveXComponent("Word.Application");
            app.setProperty("Visible", false);
            Dispatch docs = app.getProperty("Documents").toDispatch();
            System.out.println("打开文档:" + source);
            Dispatch doc = Dispatch.call(docs, "Open", source, false, true).toDispatch();
            System.out.println("转换文档到PDF:" + target);
            File tofile = new File(target);
            if (tofile.exists()) {
                tofile.delete();
            }
            Dispatch.call(doc, "SaveAs", target, wdFormatPDF);
            Dispatch.call(doc, "Close", false);
            long end = System.currentTimeMillis();
            System.out.println("转换完成,用时:" + (end - start) + "ms");
            return true;
        } catch (Exception e) {
            System.out.println("Word转PDF出错:" + e.getMessage());
            return false;
        } finally {
            if (app != null) {
                app.invoke("Quit", wdDoNotSaveChanges);
            }
        }
    }

可以测试一下

    public static void main(String[] args) throws IOException {
        String source1 = "D:\\plugins\\CpEcViewReport\\test.docx";
        String target1 = "D:\\plugins\\CpEcViewReport\\test.pdf";
        word2pdf(source1, target1);
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值