• centos6.5安装openoffice和swftools


    最近项目有要word转PDF,发现POI只支持2003word版本,docx4j只支持2007word以上版本(而且还不是很稳定,上线后发现过几天word转pdf有问题,重启tomcat服务后又正常了)。

    打算换另外的技术试试:openoffice + jodconverter

    一、openoffice 安装

    先下载linux下的安装包

    http://www.openoffice.org/  

    http://sourceforge.net/projects/jodconverter/files/


    1、最新版本是Apache_OpenOffice_4.1.1_Linux_x86-64_install-rpm_zh-CN.tar.gz

    tar -xzvf Apache_OpenOffice_4.1.1_Linux_x86-64_install-rpm_zh-CN.tar.gz

     解压后的目录是zh-CN,里面有RPMS 、 readmes、licenses。

    2、进入RPMS目录 

    3、执行 rpm –ivh *rpm(安装所有rpm文件)

    4、进入到desktop-integration目录,选择安装相关的套件,我选择的是redhat

    rpm -ivh openoffice4.1.1-redhat-menus-4.1.1-9775.noarch.rpm


    这时openOffice己经安装完成,默认会安装在/opt下

    二、启动openOffice服务 
    1.进入opt下的openofiice4目录:cd /opt/openoffice4
    2.进入program目录
    3.执行 soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard & 
    4.完成启动

    5.查看openoffice 默认的服务端口是否正常启用,输入命令netstat -tln

    如果启动正常会有 tcp        0      0 127.0.0.1:8100              0.0.0.0:*                   LISTEN

    6.windows 查看端口是否启动命令netstat -ap tcp

    windows启动命令:soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard
    windows启动命令里面短连接号后面不带空格“ -nofirststartwizard ”
            linux启动命令:soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard &


    三、安装启动完成后测试
      1、 下载jodconverter-2.2.2.zip,将其解压到文件加下,
       2、将test.doc拷贝到lib文件夹下
       3、执行命令 java -jar jodconverter-cli-2.2.2.jar  test.doc test.pdf
     如果生成pdf ,则openoffice安装启动成功

    四、把启动命令设置linux服务器启动的时候默认加载

    [root@okidea lib]# cat /etc/rc.local
    #!/bin/sh
    #
    # This script will be executed *after* all the other init scripts.
    # You can put your own initialization stuff in here if you don't
    # want to do the full Sys V style init stuff.
    #route add default gw 192.168.50.1
    soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard & 
    touch /var/lock/subsys/local

           重启服务器,netstat -tln监听可以看到8100端口已经监听,测试转pdf也正常。另外设置可参考http://www.cnblogs.com/nerxious/archive/2013/01/18/2866548.html

    。个人感觉这样设置很简单。


    --------安装遇到的问题和解决------原则是缺什么补什么包-----------------------

    包的下载网站:http://pkgs.org/#centos-6

    1、/opt/openoffice4/program/soffice.bin: error while loading shared libraries: libXext.so.6: cannot open shared object file: No such file or directory

    找不到libXext.so.6文件,去系统里面的/usr/lib64 或者 /usr/lib 查看有没有这个文件,如果有就copy到/opt/openoffice4/program/目录里面,

    赋予chmod 777  libXext.so.6 。如果没有那么要安装该包。

    由于我的系统是64位,那么输入yum install libXext.x86_64 ,如果是32位系统输入:yum install libXext.i686  。安装完成后去那两个目录找libXext.so.6复制到

    /opt/openoffice4/program/目录里面,赋予chmod 777  libXext.so.6 。


    2、 /opt/openoffice4/program/soffice.bin: error while loading shared libraries: libfreetype.so.6: cannot open shared object file: No such file or directory

    找不到libfreetype.so.6文件,同上输入:yum install libfreetype.i686,安装完之后去那两个目录找libXext.so.6复制到/opt/openoffice4/program/目录里面,赋予权限。


    3、报问题:no suitable windowing system found, exiting.
    输入安装:yum groupinstall "X Window System" ,一路安装完之后重启系统,在启动openoffice服务看看。


    使用yum groupinstall
    先用yum grouplist 看需要装那些包,一般x window gnome kde三个
    Centos5和6改变比较大,需要注意命令是不一样的
    Centos5.x 系列
    yum groupinstall "GNOME Desktop Environment" "X Window System"
    Centos 6.x 系列
    yum groupinstall "X Window System" "Desktop Platform"


     

    swftools安装

    下载http://www.swftools.org/download.html

    1、主要参考http://blog.csdn.net/luka2008/article/details/38664731 

    和 http://blog.csdn.net/zhizaibide1987/article/details/28901511

    先安装依赖包

    #  yum -y install giflib-devel libjpeg-develfreetype-devel t1lib-devel zlib

    # tar xfswftools-2013-04-09-1007.tar.gz

    # cdswftools-2013-04-09-1007

    # ./configure

    # make

    # make install


    2、查询安装成功后的which pdf2swf目录。









    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    MySQL的Date()函数拼接
    org.osgi.framework.BundleException: Exception in org.eclipse.core.resources.ResourcesPlugin.start()
    js判断对象是否为空对象的几种方法
    json,js中typeof用法详细介绍及NaN、 null 及 undefined 的区别
    将[object Object]转换成json对象
    升级d7的代码到2010以上版本注意事项(SetLength的参数就是字符长度,而不是字节长度,但Move函数要改)
    我是如何用 10 天自学编程,改变一生的?(学习编程的时候,不要死记硬背,要培养感觉)
    Anbox —— 在 Linux 系统中运行 Android 应用
    一定要在commit之前做RAR备份,这样在出问题的时候,可以排除别人代码的干扰
    排序算法总结
  • 原文地址:https://www.cnblogs.com/cuker919/p/4878492.html
Copyright © 2020-2023  润新知