一、openoffice简介
OpenOffice是一个开源的办公软件套件,包含了文本编辑器、电子表格、演示文稿、数据库和绘图等应用程序。它可以在多个操作系统上运行,包括Windows、Mac OS X和Linux等。OpenOffice的目标是提供一个完全免费、功能齐全的办公软件套件,为用户提供一个可靠的替代Microsoft Office的选择。OpenOffice的文件格式是开放的,可以与其他软件兼容,如Microsoft Office和LibreOffice等。OpenOffice的开发由Apache软件基金会负责,并得到了全球各地的自由软件开发者的支持。
OpenOffice可以通过使用内置的导出功能将文档从word导出为PDF,然后可以将PDF转换为图片。应同事申请部署了该服务,同事反馈服务很好用,但是只支持doc格式的,并不支持最新的docx格式的。博文实验环境:
- 操作系统:centos7.9
- openoffice版本:4.1.14
- java版本:1.8.0_372
二、openoffice安装环境要求
Linux环境安装openoffice要求如下:
- linux内核2.6以上版本,glibc版本2.5以上
- 系统要求512MB以上内存,空闲内存256MB以上
- 400MB以上的空闲磁盘存储空间
- 要求安装了X-Server桌面,且桌面分辨率1024 x 768以上
- JAVA版本要求1.5以上。
三、openoffice安装步骤
1、安装桌面和JAVA
如安装环境要求所示,openoffice依赖x-server和java,所以我们需要先安装桌面和java环境,见博文Linux之命令行下安装GNOME桌面和Linux之JDK安装与升级。
2、下载openoffice安装包
我们可以登录openoffice官网,访问openoffice下载链接,根据需要安装的版本进行下载,博主这里选择的是linux-64位RPM包。
[root@s178 opt]# wget https://sourceforge.net/projects/openofficeorg.mirror/files/4.1.14/binaries/zh-CN/Apache_OpenOffice_4.1.14_Linux_x86-64_install-rpm_zh-CN.tar.gz
3、解压安装包
[root@s178 opt]# tar -zxvf Apache_OpenOffice_4.1.14_Linux_x86-64_install-rpm_zh-CN.tar.gz
4、yum安装依赖包
解压安装包后进入RPMS目录下,可以使用*.rpm的方式安装该目录下的所有rpm软件包。
[root@s178 opt]# cd zh-CN/
[root@s178 zh-CN]# cd RPMS/
[root@s178 RPMS]# rpm -ivh *.rpm
5、yum安装openoffice桌面集成包
[root@s178 RPMS]# cd desktop-integration/
[root@s178 desktop-integration]# rpm -ivh openoffice4.1.14-freedesktop-menus-4.1.14-9811.noarch.rpm
…
[root@s178 desktop-integration]# which soffice
/usr/bin/soffice
6、启动openoffice服务
openoffice默认安装在/opt/openoffice4/program/目录下,我们可以进入该目录启动openoffice服务,实际上soffice命令已经加入到shell命令环境变量中,可以直接使用。这里需要注意的区别是在centos环境中参数前是单横线,Ubuntu环境下是双横线。centos环境下使用双横线不会报错,但是检查监听端口会看不到哦。
[root@s178 desktop-integration]# cd /opt/openoffice4/program/
[root@s178 program]# [root@s178 program]# soffice -headless -accept=“socket,host=192.168.0.178,port=8100;urp;” -nofirststartwizard &
[1] 3869
7、查看服务端口
至此openoffice服务启动成功了,我们可以调用接口进行PDF和word文档的转换了,需要说明的是只支持doc格式,不支持docx格式哦。
[root@s178 program]# soffice -headless -accept=“socket,host=0.0.0.0,port=8100;urp;” -nofirststartwizard &
[1] 3900
8、停止服务
如果我们需要停止服务,可以使用kill命令。
[root@s178 program]# pgrep -f soffice |xargs kill
三、openoffice使用介绍
1、创建office文档
如上安装步骤的第5步,实际上安装的就是这个集成桌面,如果我们只是作为API接口服务使用并不需要安装这一步。安装了桌面集成服务之后,我们可以在操作系统界面图形化使用openoffice,可以创建word、Excel、ppt等文件。当然也可以直接打开这些格式的文件。通过另存为我们可以发现格式只支持office的旧格式,最新带x的格式不支持。
2、word导出为PDF
使用文件导出的方式可以将word文件导出为pdf。不过openoffice有个很不友好的地方,打开pdf文件需要自定义字符集、字体、语言等信息,这又谁会知道每个文件的这些内容呢,选出了之后就出出现打开pdf文件乱码的情况。实际上如果可以正确打开pdf,我们可以将pdf存档为openoffice的odt格式,最后再将odt格式转换为doc格式。只是不知道是否因为字符集不全的原因,我多次尝试使用openoffice打开pdf文件都是乱码显示。有知道的网友欢迎分享宝贵的经验,谢谢!