word转pdf的java实现_java实现word转pdf

word转pdf的java实现_java实现word转pdf文章时间:2020-12-516:38:54解决问题:java实现word转pdf目前发现可用的实现方式有两种,一种是使用e-iceblue的免费版api,此方法最为简单但存在限制,导出页数不能超过三页。另一种是使用openoffice,但较上一种方法麻烦一些,需要安装openoffice的软件,但没有导出限制,请根据自身需求自行选用。方式一e-iceblue的免费版api官方文档https:…

大家好,又见面了,我是你们的朋友全栈君。

文章时间:2020-12-5 16:38:54

解决问题:java实现word转pdf

目前发现可用的实现方式有两种,一种是使用e-iceblue的免费版api,此方法最为简单但存在限制,导出页数不能超过三页。

另一种是使用openoffice,但较上一种方法麻烦一些,需要安装openoffice的软件,但没有导出限制,请根据自身需求自行选用。

方式一 e-iceblue的免费版api

官方文档https://www.e-iceblue.cn/spiredocforjavaconversion/java-convert-word-to-pdf.html

第一步 添加maven依赖及远程仓库

e-iceblue

spire.doc.free

3.9.0

com.e-iceblue

http://repo.e-iceblue.cn/repository/maven-public/

第二步 编写后台代码

参考代码如下

// 模板文件路径

String templateUrl = “C:\\Users\\dev\\Desktop\\template.docx”;

// word文件生成路径

String generateUrl =”C:\\Users\\dev\\Desktop\\generate.pdf”;

Document document = new Document();

document.loadFromFile(generateUrl);

//保存生成的pdf

document.saveToFile(generateUrl, FileFormat.PDF);

方式二 openoffice转换

官方文档:http://www.openoffice.org/why/index.html

openoffice安装教程:http://wiki.nooss.cn/archives/405.html

第一步 添加maven依赖

需注意:此处引用的版本为2.2.1版本,不支持.docx文件的转换,若需要转换.docx文件需2.2.2及以上版本,但maven库没有此版本需自行下载导入jar包

com.artofsolving

jodconverter

2.2.1

第二步 编写后台代码

// word文件路径

String sourceFile = “C:\\Users\\dev\\Desktop\\template.docx”;

// 生成的pdf路径

String destFile = “C:\\Users\\dev\\Desktop\\generate.pdf”;

try {

File inputFile = new File(sourceFile);

// 如果目标路径不存在, 则新建该路径

File outputFile = new File(destFile);

if (!outputFile.getParentFile().exists()) {

outputFile.getParentFile().mkdirs();

}

// 连接到运行在端口8100上的OpenOffice

OpenOfficeConnection connection = new SocketOpenOfficeConnection(

“127.0.0.1”, 8100);

connection.connect();

// 文件转换

DocumentConverter converter = new OpenOfficeDocumentConverter(

connection);

converter.convert(inputFile, outputFile);

// 关闭连接

connection.disconnect();

} catch (IOException e) {

e.printStackTrace();

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133424.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • countdown timer plus_Android10使用

    countdown timer plus_Android10使用AndroidCountDownTimer的使用

    2025年12月15日
    6
  • phpstorm2021.12永久激活码【2021最新】

    (phpstorm2021.12永久激活码)本文适用于JetBrains家族所有ide,包括IntelliJidea,phpstorm,webstorm,pycharm,datagrip等。IntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,下面是详细链接哦~https://javaforall.net/100143.html…

    2022年3月30日
    417
  • 送你一张图,教你如何docker卸载redis,请收好「建议收藏」

    送你一张图,教你如何docker卸载redis,请收好「建议收藏」一张图,告诉你怎么操作。嘿嘿❤如果文章对您有所帮助,就在文章的右上角或者文章的末尾点个赞吧!(づ ̄3 ̄)づ❤如果喜欢大白兔分享的文章,就给大白兔点个关注吧!(๑′ᴗ‵๑)づ╭❤~❤对文章有任何问题欢迎小伙伴们下方留言或者入群探讨【群号:708072830】❤鉴于个人经验有限,所有观点及技术研点,如有异议,请直接回复讨论(请勿发表攻击言)…

    2025年10月2日
    3
  • <HTML>简单登录页面代码

    <HTML>简单登录页面代码简单登录HTML

    2022年6月14日
    27
  • 小程序开发毕业设计_基于小程序的毕业设计

    小程序开发毕业设计_基于小程序的毕业设计基于微信小程序的培训机构系统前言:该系统作为本科毕业设计,可能还有很多的不足。只是当时做这个系统的时候,由于需要使用java语言作为后端实现与微信小程序界面数据交互,看遍网上很多的案例基本后台都是php语言用于编写接口,几乎没找到过java作为后台语言的案例。写这篇博客只是为了帮助需要后台使用java语言来实现的朋友。一、项目介绍微信小程序端:小程序端管理员实现对信息模块的管理,包含课程…

    2025年12月15日
    3
  • vue项目部署后刷新404_vue重载当前页面

    vue项目部署后刷新404_vue重载当前页面vue页面访问正常,但是一刷新就会404的问题解决办法:第一种解决方法:将vue路由模式mode:’history’修改为mode:’hash’//router.js文件constrouter=newRouter({//mode:’history’,mode:’hash’,routes:[{path:’/’,redirect:’/login’},{path:’/login’,compon

    2022年10月10日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号