rails 文档在线预览方案

本文介绍了两种非PDF文档转化为PDF的技术方案:一是使用openoffice+jodconverter,适用于Microsoft Word97/2000/XP及更高版本,且转换效果较优;二是采用libreoffice+unoconv(python脚本),支持Microsoft Word2003及以上版本,但转换质量一般。

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

使用方案: 非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  目标文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值