当前位置: 代码迷 >> Office >> Ubuntu 装配openoffice
  详细解决方案

Ubuntu 装配openoffice

热度:5172   发布时间:2013-02-26 00:00:00.0
Ubuntu 安装openoffice

文档地址:http://orangered3stones.iteye.com/blog/1496611
http://www.lampdeveloper.co.uk/linux/converting-doc-to-pdf-txt-or-html-using-php-and-linux
环境:
Ubuntu Server 11.04 64位,OpenJDK 6 OpenOffice 3

使用?jodconverter?需要用到OpenOffice的文档转换服务,实际部署时遇到中文转换乱码的问题,以下为详细的安装部署过程:

?

1) 运行如下命令安装OpenOffice及相关依赖的库:

$ sudo apt-get install xvfb -->11.5MB
$ sudo apt-get install openoffice.org -->
130MB
$ sudo apt-get install openoffice.org-java-common
$ sudo apt-get install language-pack-zh-*? -->
必须的中文字体包

$ sudo apt-get install language-selector language-selector-common? -->
35.4MB

2) 修改 /etc/environment (这个貌似不配置也行,我没试过)

修改 LANGUAGE="zh_CN:zh" LANGUAGE="zh_CN:zh:en_US:en",没有就添加进去。

保存退出执行如下两个命令:

$ source /etc/environment

$ fontconfig-voodoo -f zh_CN

?

3) 安装openjdk6和中文字体配置 (这个是解决中文乱码的关键)

$ sudo apt-get install openjdk-6-jdk -->安装openjdk6

$ sudo apt-get install ttf-wqy-microhei -->安装中文字体

然后运行如下命令修改Java字体配置:

$ sudo vi?/usr/lib/jvm/java-6-openjdk/jre/lib/fontconfig.properties

修改为如下节点对应的值:

allfonts.umingcn=WenQuanYi Microhei Hei

allfonts.uminghk=WenQuanYi Microhei Hei

allfonts.umingtw=WenQuanYi Microhei Hei

allfonts.wqy-zenhei=WenQuanYi Microhei Hei

allfonts.shanheisun=WenQuanYi Microhei Hei

filename.WenQuanYi_Microhei_Hei=/usr/share/fonts/truetype/wqy/wqy-microhei.ttc

?

4) 启动 OpenOffice 文档转换服务 (记得后面有个符号&)

$ /usr/lib/libreoffice/program/soffice.bin -headless -nologo -norestore -nofirststartwizard -accept="socket,host=localhost,port=8100;urp" &

注:8100为端口号,可以按照实际需要更改。

?

其他注意事项:

如果使用jodconverter出现如下异常,只须将?jodconverter tomcat 服务和?OpenOffice 的文档转换服务使用同一个用户启动即可:

com.artofsolving.jodconverter.openoffice.connection.OpenOfficeException: conversion failed: could not save output document; OOo errorCode: 525
???? com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.loadAndExport(OpenOfficeDocumentConverter.java:142)
???? com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.convertInternal(OpenOfficeDocumentConverter.java:120)
???? com.artofsolving.jodconverter.openoffice.converter.AbstractOpenOfficeDocumentConverter.convert(AbstractOpenOfficeDocumentConverter.java:104)
???? com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter.convertInternal(OpenOfficeDocumentConverter.java:88)
???? com.artofsolving.jodconverter.openoffice.converter.AbstractOpenOfficeDocumentConverter.convert(AbstractOpenOfficeDocumentConverter.java:82)
? ......

?安装
unoconv
apt-get install unoconv? openoffice.org-writer
启动:

/usr/lib/libreoffice/program/soffice.bin -nologo -nodefault -accept="socket,host=localhost,port=8100;urp" &