关于word转pdf功能实现

  • 1 Spire
    • 1 添加依赖
    • 2 测试
  • 2 poi
    • 1 添加依赖
    • 2 测试
  • 3 总结

遇到word转pdf相关的问题,记录一下相关的使用

1 Spire

spire.doc是一款国产的,专业的 Java Word 组件,使用它可以轻松地将 Word 文档创建、读取、编辑、转换和打印等功能集成到自己的 Java 应用程序中.

其中的免费版本, 有特殊限制,在加载或保存 Word 文档时,要求 Word 文档不超过 500 个段落,25 个表格。同时将 Word 文档转换为 PDF 和 XPS 等格式时,仅支持转换前三页.

收费版本: 也可使用,首页页眉会出现警告信息,且最多支持十页,每页中间还有警告信息.

以免费版本演示为例:

1 添加依赖

        <repositories><repository><id>com.e-iceblue</id><url>http://repo.e-iceblue.cn/repository/maven-public/</url></repository></repositories><dependencies><dependency><groupId>e-iceblue</groupId><artifactId>spire.doc.free</artifactId><version>3.9.0</version></dependency></dependencies>

2 测试

public class DemoController {public static void main(String[] args) {// word文档地址String docFile = "D:\\PublicSoftware\\jar\\2xs.docx";// 导出pdf地址String pdfFile = "D:\\PublicSoftware\\jar\\xs4.pdf";//实例化Document类的对象Document doc = new Document();//加载Worddoc.loadFromFile(docFile);// 开始时间long begin = System.currentTimeMillis();//保存为PDF格式doc.saveToFile(pdfFile, FileFormat.PDF);// 结束时间long end = System.currentTimeMillis();System.out.println("word转pdf完成: 耗时 : "+ ((end-begin)/1000) + "秒");}
}
// word转pdf完成: 耗时 : 6秒

2 poi

强大的poi,在文档处理方面,很全面,但是组件多,各种版本之间存在冲突.

查询网上一个可使用的一个版本如下:

1 添加依赖

        <dependency><groupId>org.apache.poi</groupId><artifactId>poi</artifactId><version>3.10.1</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-scratchpad</artifactId><version>3.10.1</version></dependency><dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId><version>3.10.1</version></dependency><dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>org.apache.poi.xwpf.converter.core</artifactId><version>1.0.6</version></dependency><dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>org.apache.poi.xwpf.converter.pdf</artifactId><version>1.0.6</version></dependency><dependency><groupId>fr.opensagres.xdocreport</groupId><artifactId>fr.opensagres.xdocreport.itext.extension</artifactId><version>2.0.1</version></dependency>

2 测试

public class DemoController {public static void main(String[] args) throws IOException {// 开始时间long begin = System.currentTimeMillis();String docFile = "D:\\PublicSoftware\\jar\\xs.docx";String pdfFile = "D:\\PublicSoftware\\jar\\xs6.pdf";InputStream doc = new FileInputStream(docFile);XWPFDocument document = new XWPFDocument(doc);PdfOptions options = PdfOptions.create();OutputStream out = new FileOutputStream(pdfFile);PdfConverter.getInstance().convert(document, out, options);doc.close();out.close();// 结束时间long end = System.currentTimeMillis();System.out.println("word转pdf完成: 耗时 : "+ ((end-begin)/1000) + "秒");}
}
// word转pdf完成: 耗时 : 15秒

3 总结

上述两个方法都可以将word转为pdf文件,各自都用特点.

Spire,依赖少,但免费版本限制过多,而收费版本价格不低,直接使用又有警告信息.(使用公司邮箱申请,可免费使用一个月,但不是长久之计);

poi文档处理,免费,但依赖多,且各个版本之间可能存在冲突,且对于生成pdf的一些排版,篇幅的处理,效果没有spire好.

关于word转pdf功能实现相关推荐

  1. Word转PDF功能实现,文档转换工具通过PHP开发

    最近比较火的文档转换工具相信大家都听说过,但是怎么实现呢? 通过该接口可以将图片.word.excel.ppt等文档转换为pdf格式的文件 1.可以将Office(Word,Excel,PowerPo ...

  2. java实现word文档转pdf功能(无水印)

    java实现word转pdf功能(无水印) 导入相关jar包 测试代码: public static void main(String[] args) throws Exception{Documen ...

  3. [转载]java实现word转pdf

    最近遇到一个项目需要把word 转成pdf,百度了一下网上的方案有很多,比如虚拟打印.给word 装扩展插件等,这些方案都依赖于ms word 程序,在java代码中也得使用诸如jacob或jcom这 ...

  4. [原创]java实现word转pdf

    最近遇到一个项目需要把word 转成pdf,百度了一下网上的方案有很多,比如虚拟打印.给word 装扩展插件等,这些方案都依赖于ms word 程序,在java代码中也得使用诸如jacob或jcom这 ...

  5. 踩坑日记 - word转pdf

    说明 最近这几天研究了下word转pdf的功能实现,特别记录下,方便以后查看. 搜索了网上大部分的资料,总的来说,不外乎以下几种: 1. openoffice,支持windows和linux环境,亲测 ...

  6. Word转换pdf技巧:通过pdf虚拟打印机生成pdf

    相信大部分人都有Word和PDF之间文件转换需求,就是找不到实用的转换技巧,今天小编就介绍几个转换方法,希望能帮到苦恼的朋友们. 一.Word转PDF方法 1. 在线转换PDF文件 在线转换文件是一种 ...

  7. Word转PDF软件哪个好?这款软件一定要试试

    Word是一个十分常见的编辑软件,也是很多朋友最常用的办公软件之一.Word文件使用范围很广,它容易编辑但内容的兼容性较差,文件的格式在不同的软件打开查看,其格式很多时候会有所偏差.为了更适合办公文件 ...

  8. Word转PDF能免费吗?这3个免费转换技巧很好用

    虽然我们日常工作经常使用PDF文档,但对于PDF的新建和编辑并不擅长,所以一般还是会先用Word文档编辑好之后再转换成PDF格式,那么是否有将Word转成PDF的免费方法呢? 方式1:office自带 ...

  9. Word转PDF:简单步骤,轻松完成!推荐两个实现的方法

    随着社会的发展,PDF 文件已经成为一种非常流行的文件格式,对于一些需要对文件进行保密的企业而言,更是必不可少.在这样的大背景下,如何将 Word 文件转换为 PDF 文件呢?下面是一些简单的步骤,帮 ...

最新文章

  1. docker容器学习笔记
  2. u-boot分析之命令实现(四)
  3. 透明(颜色)渐变背景(颜色透明背景),兼容IE8
  4. 围观 Joomla, Wordpress 和 Drupal
  5. mysql 存储过程 批量导入数据_sql 利用存储过程批量导入数据
  6. (76)信号发生器DDS锯齿波设计(二)(第16天)
  7. 一个软件工作者给前女友的最后一封信
  8. 贴吧用html标签,html标签3(转载)
  9. BZOJ 1833: [ZJOI2010]count 数字计数
  10. lesson6 DAAD转换与单片机接口
  11. vue-自定义组件传
  12. pdflib java_pdflib的使用代码
  13. 慧荣SM2246XT主控的固态硬盘修复开卡不识别怎么短接方法
  14. 解决手机端页面的鼠标点击出现蓝色背景
  15. cisco 2960 交换机 配置流程
  16. 携智慧绿色综合能源解决方案,远景阿波罗闪耀2018无锡新能源大会
  17. 基于C#+Oracle的模拟图书馆管理系统
  18. 计算机二级python(本人整理的所有含答案操作题)
  19. 销售人员如何抓住客户?
  20. pulp.apis.core.PulpSolverError: PuLP: cannot execute glpsol.exe的一种解决方案

热门文章

  1. Goby 漏洞更新 | 万户 OA OfficeServer.jsp 任意文件上传漏洞
  2. SQL Server索引概要(1)-聚集索引(Clustered Index)
  3. Oracle的用户、角色和权限
  4. 由“讨论:如何跟偶遇的美女搭讪”引起的回忆
  5. WINDOWS无法配置此无线连接,如果您已经启用其他程序管理此无线连接,
  6. XP框架开启debug模式_王国风云3控制台大全(debug_mode)
  7. [禅悟人生]执著是自缚的茧
  8. pygame.error: video system not initialized
  9. 液晶屏接口LVDS接口与MIPI DSI接口区别
  10. 转贴-3种方法可以让你更好地了解你自己。