1、环境
CentOS release 6.7 (Final)
已安装:openoffice4.1.3, jodconverter.2.2.2。
2、OpenOffice使用
Apache OpenOffice是一款先进的开源 办公软件套件,它包含文本文档、电子表格、演示文稿、绘图、数据库等,能够支持许多语言,可以在多种操作系统上运作,并能够读写其它常用办公软件包生成的文件。同时它也是一个平台,用户可以基于其提供的API接口来开发自己的应用程序。
Jodconverter是一个JAVA的OpenDocument**文件转换器,利用OpenOffice可以进行多种文档格式之间的转换,支持的格式包括OpenDocument,PDF,RTF,Word,Excel,PowerPoint,以及Flash。它可以被用做**JAVA库,命令行工具,或者一个WEB应用。
已验证过的格式转换支持如下:
【1】、ppt/pptx转为html,转成的html结果是:文字和图片分开存储,每页PPT对应一个html。
【2】、ppt/pptx转pdf;
【3】、doc/docx转html。
3、格式转换出现中文乱码
java -jar /opt/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /opt/test.ppt /opt/test.pdf
乱码症状:所有中文字符都显示为???乱码。
我遇到的情况是:ppt转pdf出现乱码,随即花了半天的时间找到了解决方案。
其他类型转换出现乱码如:doc转pdf等的解决方案都类似。
4、乱码解决方案
步骤1:创建路径。
在centos的/usr/java/jdk1.8.0_91/jre/lib/fonts下新建路径:fallback。
步骤2:上传字体。
将字体:simhei.ttf 黑体、simsun.ttc 宋体(windows下通过everything找下)上传至/usr/java/jdk1.8.0_91/jre/lib/fonts/fallback路径下。
步骤3:查看系统字体文件路径。
查看方案:
步骤4:字体拷贝。
将 /usr/java/jdk1.8.0_91/jre/lib/fonts的全部内容,拷贝到步骤3查看的路径下, 我的字体路径为:/usr/share/fonts。
步骤5:更新缓存
执行命令:fc-cache
步骤6:kill掉openoffice进程。
步骤7:重启后台运行openoffice。
步骤8:完成格式转换。
至此,转换完毕,乱码不再存在。
2017年06月21日 21:06 于家中床前
作者:铭毅天下