最近,需要实现在linux服务器上将Word文档转成PDF文档的功能,接手其他人项目使用的是Jacob,但是需要往jdk里面添加文件,所以想换一个方法实现,根据前者和相关资料决定使用的aspose,因此记录一下使用这个第三方组件的步骤。

一、环境搭建

1、首先需要下载一个aspose插件jar包放进项目中,使用的IDEA,jar包可以在网盘下载:

链接:https://pan.baidu.com/s/1jISO-TPEyLgC8RTmMJGRQw   提取码:9ju8

2、下载好所需要的jar包,idea需要引入jar包,从编译的层面考虑将将jar包安装到本地仓库,解决编译打包时出错的问题。

A.首先确定 mvn -v 能否使用,将下载好的jar包放到项目外的本地文件夹。

B.其次执行mvn install 安装本地jar包到本地仓库,如下所示:

mvn install:install-file -DgroupId=com.aspose -DartifactId=aspose-words -Dversion=15.8.0 -Dpackaging=jar -Dfile=aspose-words-15.8.0-jdk16.jar

执行完成后可到本地仓库查看是否有这个包存在即可。

3、在项目中添加本地仓库的依赖:

com.aspose

aspose-words

15.8.0

二、工具类编写和测试

1、在项目静态资源路径下添加一个license.xml文件,不然生成的pdf会有水印

Aspose.Total for Java

Aspose.Words for Java

Enterprise

20991231

20991231

8bfe198c-7f0c-4ef8-8ff0-acc3237bf0d7

sNLLKGMUdF0r8O1kKilWAGdgfs2BvJb/2Xp8p5iuDVfZXmhppo+d0Ran1P9TKdjV4ABwAgKXxJ3jcQTqE/2IRfqwnPf8itN8aFZlV3TJPYeD3yWE7IT55Gz6EijUpC7aKeoohTb4w2fpox58wWoF3SNp6sK6jDfiAUGEHYJ9pjU=

2、添加Word2PdfAsposeUtil工具类

public class Word2PdfAsposeUtil {

public static boolean getLicense() {

boolean result = false;

InputStream is = null;

try {

Resource resource = new ClassPathResource("license.xml");

is = resource.getInputStream();

//InputStream is = Word2PdfAsposeUtil.class.getClassLoader().getResourceAsStream("license.xml"); // license.xml应放在..\WebRoot\WEB-INF\classes路径下

License aposeLic = new License();

aposeLic.setLicense(is);

result = true;

} catch (Exception e) {

e.printStackTrace();

}finally {

if (is != null) {

try {

is.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return result;

}

public static boolean doc2pdf(String inPath, String outPath) {

if (!getLicense()) { // 验证License 若不验证则转化出的pdf文档会有水印产生

return false;

}

FileOutputStream os = null;

try {

long old = System.currentTimeMillis();

File file = new File(outPath); // 新建一个空白pdf文档

os = new FileOutputStream(file);

Document doc = new Document(inPath); // Address是将要被转化的word文档

doc.save(os, SaveFormat.PDF);// 全面支持DOC, DOCX, OOXML, RTF HTML, OpenDocument, PDF,

// EPUB, XPS, SWF 相互转换

long now = System.currentTimeMillis();

System.out.println("pdf转换成功,共耗时:" + ((now - old) / 1000.0) + "秒"); // 转化用时

} catch (Exception e) {

e.printStackTrace();

return false;

}finally {

if (os != null) {

try {

os.flush();

os.close();

} catch (IOException e) {

e.printStackTrace();

}

}

}

return true;

}

public static void main(String[] arg){

String docPath = "D:\\report\\word\\交通态势日报-2021-01-10.docx";

String pdfPath = "D:\\report\\word\\交通态势日报-2021-01-10.pdf";

Word2PdfAsposeUtil.doc2pdf(docPath,pdfPath);

}

}

3、后续可直接调用该工具类的方法即可实现Word转Pdf的功能。

标签:Word,String,Windows,jar,new,aspose,Pdf,pdf,os

来源: https://www.cnblogs.com/adolph2715/p/14346140.html

word转pdf linux java,java实现Word转Pdf(Windows、Linux通用)相关推荐

  1. linux删除几日的文件脚本,Windows Linux 删除N天之前文件脚本

    1. windows删除 删除N天之前的文件脚本:cleardbbak.batforfiles /p E:\db_backup /m * /d -10 /c "cmd /c del @fil ...

  2. windows/linux服务器上java使用openoffice将word文档转换为PDF(亲测可用)

    一. 前言 1. 开发过程中经常会使用java将office系列文档转换为PDF, 一般都使用微软提供的openoffice+jodconverter 实现转换文档. 2. openoffice既有w ...

  3. Java实现根据Word模板填充表格数据(poi方式),以及doc和docx转PDF,最全最详细版本,解决外部引用jar在linux上报ClassNotFound的问题。

    Java实现根据Word模板填充表格数据(poi方式),以及doc和docx转PDF,最全最详细版本,解决外部引用jar在linux上报ClassNotFound的问题. 适用场景: 1.固定格式的W ...

  4. java关于对于word或者pdf文件的批量下载实现,其中包括(Java实现创建word文档模板,根据模板导出word文档)

    本次需求是,pdf是表格类型的文件,我这里使用了word模板进行处理.但由于是多个文件一起导出,因此全部放到一个目录底下进行打包下载. ## 整体思路 /*** 下载思路:* 1.查询出数据后:* 2 ...

  5. Java——EasyPoi导出word文档,itextpdf转换pdf

    EasyPoi导出word文档,itextpdf转换pdf 文章目录 EasyPoi导出word文档,itextpdf转换pdf 前言 一.依赖 二.工具类 1.WordUtil 2.PDF工具类 3 ...

  6. Java开发中word转pdf那件事

    事件背景 由于项目需要,最新开始研究起word转pdf了,本以为应该是一件很简单的事情,网络上应该已经有很成熟的解决方案了,毕竟在电脑上使用wps或office操作只需要另存为pdf即可,结果一顿百度 ...

  7. java 预览word文档_Java实现office文档与pdf文档的在线预览功能

    最近项目有个需求要java实现office文档与pdf文档的在线预览功能,刚刚接到的时候就觉得有点难,以自己的水平难以在三四天做完.压力略大.后面查找百度资料.以及在同事与网友的帮助下,四天多把它做完 ...

  8. 市面上Word转化PDF,PDF转图片Java实现方案(亲测)

    这里写自定义目录标题 前提 第一步:转成PDF 第二步:转成图片 前提 前段时间由于项目需要,需要做如下功能,将上传的word图片转化问图片,经常多天多市面上的插件测试总结,现在将自己的一些心得记录如 ...

  9. 关于java中实现word转pdf

    1.java中实现word转pdf几种方式如下 1.使用jacob(Java COM Bridge)操作offfice的方式,基于这种方式无论是水印还是格式都可以完美转换:但是这个方式都只是基于win ...

  10. java word转pdf linux_java实现word转pdf在线预览(前端使用PDF.js;后端使用openoffice、aspose)...

    背景 之前一直是用户点击下载word文件到本地,然后使用office或者wps打开.需求优化,要实现可以直接在线预览,无需下载到本地然后再打开. 随后开始上网找资料,网上资料一大堆,方案也各有不同,大 ...

最新文章

  1. 什么是机器人底盘 答案在这里!
  2. form表单中method的get和post区别
  3. 彩色图批量转换成灰度图、批量格式转换、批量重命名
  4. java ee 值范围_【转载】JAVAEE之内置对象和属性范围
  5. Android NDK引用预编译的动态链接库
  6. 让Python输出更漂亮
  7. 一分钟了解contextlib模块
  8. vue获取接口id_05vue2.0-vue中_接口的调用
  9. windows映射网络驱动器方法
  10. Struts2快速入门,超简单详细的快速入门教程
  11. 《创新者的基因》读书笔记
  12. 【快速检索,稳定出版,强大委员会Speaker阵容】ICCCS 2022|第7届通信计算机大会
  13. SDN环境搭建和基本功能验证
  14. 指尖江湖李忘生鸿蒙初开,剑网3指尖江湖李忘生怎么样_李忘生装备搭配、技能特性、解锁方法介绍_游戏吧...
  15. SAR ADC系列11:分段式CDAC
  16. python骂人代码大全_边看chromium的代码,边想骂人...
  17. 2月19日foremost隐写wp
  18. 【Golang】-微信二次分享及Js Sdk签名工具
  19. SqlServer循环执行存储过程
  20. html怎么判断字段,javascript中怎么判断字符串相等?

热门文章

  1. Spring(16) 获得bean的id
  2. Hibernate 教程(一)[Hibernate的基本配置]
  3. 卡巴斯基KEY文件的类型选择
  4. 不删除文字聊天的微信清理工具,快速释放空间,Python 编写,附源码
  5. java并发编程源码_Java并发编程实战 PDF+源码
  6. Android SDK下载安装及配置教程
  7. 嵌入式linux 中文输入法,一种用于嵌入式Linux系统的中文拼音输入法的制作方法...
  8. 字体的样式设置和字体分类
  9. axure不显示元件库
  10. 世界上最恐怖的格斗比赛---黑市拳赛