首页 > 代码库 > rails 文档在线预览方案

rails 文档在线预览方案

使用方案: 非pdf文档转换为pdf文档,利用新版浏览器特性or使用js模拟文档预览功能
一、非pdf转化问pdf文档技术方案
1、openoffic+jodconverter(有依赖关系)
      openoffic3 只支持Microsoft Word 97/2000/XP,openoffic4 要求glibc2版本为2.11,升级glibc2可能导致系统崩溃;
2、 libreoffice + unoconv(python脚本)
       libreoffice3  只支持Microsoft Word 97/2000/XP
       libreoffice4  支持Microsoft Word 2003及以上的转换,但转换的效果不是很好

3、通过简单比较,方案一的效率高于方案二


二、方案的实现
1、
安装openoffic(http://www.openoffice.org/download/index.html)
解压tar.gz的包,切换至RPMS目录,用rpm -ivh --prefix 安装目录  *.rpm即可;

启动openoffic
 soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard 

rails利用封装jodconverter的插件进行文件转换
安装插件  ruby script/plugin install git://github.com/amardaxini/convert_office.git
即可通过ConvertOffice::ConvertOfficeFormat.new.convert(src_file,dest_file)实现文件转换;


2、
安装libreoffice4(http://download.documentfoundation.org/libreoffice/stable/)
解压tar.gz的包,执行install文件, install    RPMS目录   安装目录
启动libreoffice服务
 soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard

下载unoconv(https://github.com/dagwieers/unoconv/downloads)
将unoconv脚本拷贝到工程目录,执行脚本将文件进行转化
python unoconv -f pdf  目标文件

rails 文档在线预览方案