OpenOffice+JodConverter实现Office文件到PDF的转换

本文详细介绍如何在CentOS上安装配置Apache OpenOffice,并结合JodConverter将Office文件转换为PDF,解决字体显示问题,适用于预览前转换需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.youkuaiyun.com/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

                       

OpenOffice简介

OpenOffice自从2002年发布第一个版本1.0.1以来已经过去了15个年头,在2011年移转至ASF,更在2012年底正式成为Apache顶级项目之一。而OpenOffice.org的名头也转换为了Apache OpenOffice。 作为Office工具的翻版,OpenOffice在文本文档、电子表格、演示文稿、绘图、数据库也是功能完备,而基于Apache2.0发布的OpenOffice可以完全自由使用而无需付出任何费用,至今也已经在公共事业/教育/非盈利事业/商业等较为广泛地使用。这篇文章将会重点介绍如何使用OpenOffice和JodConvert将既有的各种Office文件转换为Pdf文件以方便统一预览。

事前准备

OpenOffice可以在多种平台上运行,同时需要JRE运行环境。本文在CentOS上安装了JDK1.8以及Xwindow

[root@liumiaocn ~]# yum groupinstall “X Window System”

               
项目详细
OSCentOS7
JDK1.8:https://github.com/liumiaocn/easypack/blob/master/maven/easypack_jdk
X Windowyum groupinstall “X Window System”
[root@liumiaocn ~]# uname -aLinux liumiaocn 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux[root@liumiaocn ~]# java -versionjava version "1.8.0_131"Java(TM) SE Runtime Environment (build 1.8.0_131-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)[root@liumiaocn ~]#
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

下载

下载中文版的64位linux上运行安装的Apache OpenOffice的RPM安装包,也可以根据需要自行选择。

               
项目详细
下载地址http://www.openoffice.org/zh-cn/download/
当前最新版本4.1.3
下载文件名称Apache_OpenOffice_4.1.3_Linux_x86-64_install-rpm_zh-CN.tar.gz

安装

下载&解压

[root@liumiaocn ~]# cd /tmp/openoffice/[root@liumiaocn openoffice]# lsApache_OpenOffice_4.1.3_Linux_x86-64_install-rpm_zh-CN.tar.gz[root@liumiaocn openoffice]# tar xvpf Apache_OpenOffice_4.1.3_Linux_x86-64_install-rpm_zh-CN.tar.gz zh-CN/...zh-CN/RPMS/openoffice-graphicfilter-4.1.3-9783.x86_64.rpm...zh-CN/readmes/README_zh-CN.html[root@liumiaocn openoffice]# lsApache_OpenOffice_4.1.3_Linux_x86-64_install-rpm_zh-CN.tar.gz  zh-CN[root@liumiaocn openoffice]#
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

安装

[root@liumiaocn openoffice]# cd zh-CN/RPMS/[root@liumiaocn RPMS]# rpm -ivh *.rpmPreparing...                          ################################# [100%]Updating / installing...   1:openoffice-ure-4.1.3-9783        ################################# [  2%]   2:openoffice-core01-4.1.3-9783     ################################# [  5%]   3:openoffice-zh-CN-4.1.3-9783      ################################# [  7%]   4:openoffice-impress-4.1.3-9783    ################################# [ 10%]   5:openoffice-zh-CN-base-4.1.3-9783 ################################# [ 12%]   6:openoffice-zh-CN-calc-4.1.3-9783 ################################# [ 15%]   7:openoffice-zh-CN-draw-4.1.3-9783 ################################# [ 17%]   8:openoffice-zh-CN-help-4.1.3-9783 ################################# [ 20%]   9:openoffice-zh-CN-impress-4.1.3-97################################# [ 22%]  10:openoffice-zh-CN-math-4.1.3-9783 ################################# [ 24%]  11:openoffice-zh-CN-res-4.1.3-9783  ################################# [ 27%]  12:openoffice-zh-CN-writer-4.1.3-978################################# [ 29%]  13:openoffice-base-4.1.3-9783       ################################# [ 32%]  14:openoffice-calc-4.1.3-9783       ################################# [ 34%]  15:openoffice-core02-4.1.3-9783     ################################# [ 37%]  16:openoffice-core03-4.1.3-9783     ################################# [ 39%]  17:openoffice-core04-4.1.3-9783     ################################# [ 41%]  18:openoffice-core05-4.1.3-9783     ################################# [ 44%]  19:openoffice-core06-4.1.3-9783     ################################# [ 46%]  20:openoffice-core07-4.1.3-9783     ################################# [ 49%]  21:openoffice-draw-4.1.3-9783       ################################# [ 51%]  22:openoffice-images-4.1.3-9783     ################################# [ 54%]  23:openoffice-4.1.3-9783            ################################# [ 56%]  24:openoffice-math-4.1.3-9783       ################################# [ 59%]  25:openoffice-writer-4.1.3-9783     ################################# [ 61%]  26:openoffice-brand-writer-4.1.3-978################################# [ 63%]  27:openoffice-brand-math-4.1.3-9783 ################################# [ 66%]  28:openoffice-brand-base-4.1.3-9783 ################################# [ 68%]  29:openoffice-brand-calc-4.1.3-9783 ################################# [ 71%]  30:openoffice-brand-draw-4.1.3-9783 ################################# [ 73%]  31:openoffice-brand-impress-4.1.3-97################################# [ 76%]  32:openoffice-brand-zh-CN-4.1.3-9783################################# [ 78%]  33:openoffice-ogltrans-4.1.3-9783   ################################# [ 80%]  34:openoffice-gnome-integration-4.1.################################# [ 83%]  35:openoffice-graphicfilter-4.1.3-97################################# [ 85%]  36:openoffice-javafilter-4.1.3-9783 ################################# [ 88%]  37:openoffice-onlineupdate-4.1.3-978################################# [ 90%]  38:openoffice-ooofonts-4.1.3-9783   ################################# [ 93%]  39:openoffice-ooolinguistic-4.1.3-97################################# [ 95%]  40:openoffice-pyuno-4.1.3-9783      ################################# [ 98%]  41:openoffice-xsltfilter-4.1.3-9783 ################################# [100%][root@liumiaocn RPMS]#
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46

运行OpenOffice服务

[root@liumiaocn ~]# /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &[1] 2229[root@liumiaocn ~]# ps -ef |grep soffice |grep -v greproot       2229   2011  0 02:34 pts/2    00:00:00 /bin/sh /opt/openoffice4/program/soffice -headless -accept=socket,host=127.0.0.1,port=8100;urp; -nofirststartwizardroot       2238   2229  1 02:34 pts/2    00:00:00 /opt/openoffice4/program/soffice.bin -headless -accept=socket,host=127.0.0.1,port=8100;urp; -nofirststartwizard[root@liumiaocn ~]#
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

JodConverter

JodConverter是一款利用OpenOffice进行转化的工具,可以在Office文件和OpenOffice文件之间进行转换,同时也可以将Office或者OpenOffice系列文件转化位PDF,最新版本是2.2.2。

                   
项目详细
下载地址https://sourceforge.net/projects/jodconverter/files/JODConverter/2.2.2/
当前最新版本2.2.2
下载文件名称jodconverter-2.2.2.zip
URLhttps://sourceforge.net/projects/jodconverter/files/JODConverter/2.2.2/jodconverter-2.2.2.zip/download

将此zip包解压至/opt得到如下结构:

[root@liumiaocn ~]# ls /opt/jodconverter-2.2.2/ChangeLog.txt  docs  document-formats.xml  lib  LICENSE.txt  README.txt  src[root@liumiaocn ~]# 
  
  • 1
  • 2
  • 3

转化

jod可以用来将Office系列文件转换为PDF,以下以ppt文件为例,进行转化。

               
项目详细
待转化文件/tmp/aaa.pptx
转化对象文件/tmp/aaa.pdf
转化命令java -jar /opt/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/aaa.pptx /tmp/aaa.pdf
[root@liumiaocn tmp]# java -jar /opt/jodconverter-2.2.2/lib/jodconverter-cli-2.2.2.jar /tmp/aaa.pptx /tmp/aaa.pdfJun 20, 2017 2:53:35 AM com.artofsolving.jodconverter.openoffice.connection.AbstractOpenOfficeConnection connectINFO: connectedJun 20, 2017 2:53:41 AM com.artofsolving.jodconverter.openoffice.connection.AbstractOpenOfficeConnection disposingINFO: disconnected[root@liumiaocn tmp]# 
  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

问题点

预览的时候由于字体的问题,显示为乱码或者占位符的情况很多。这种情况下一般将字体文件拷贝到openoffice目录下(本文的情况:/opt/openoffice4/share/fonts/truetype),然后再重启openoffice服务之后再次转化即可。

总结

OpenOffice作为Apache下的顶级项目,还是值得使用的。但是JodConverter自从2009年之后就不再更新,只能说在免费可用的产品中暂定可用的一个简单解决方案进行预览前转换,统一显示。

           

给我老师的人工智能教程打call!http://blog.youkuaiyun.com/jiangjunshow
这里写图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值