OFFICE 文档转换为html在线预览
OFFICE 文档在线预览方案很多:
- 服务器先转换为PDF,再转换为SWF,最后通过网页加载Flash预览,比如flexpaper
- Office文档直接转换为SWF,通过网页加载Flash预览
- 微软的Office365
- 在浏览器中直接打开
- 转换为html
今天,我们要用的方案是转换为html来预览。
技术方案:
- office文档转换为pdf:使用libreoffice
- pdf转html,使用pdf2htmlex
测试环境:
操作系统:ubuntu 12.04
1. office文档转pdf
1.1 安装libreoffice
apt-get install libreoffice-common
1.2 启动转换服务
soffice --accept="socket,host=127.0.0.1,port=2002;urp;" --nofirststartwizard
1.3 文档转换
网上一般介绍的都是使用JODConverter ,通过java来调用转换服务,其实还有一种替代方案,就是使用pyodconverter,python版本的转换脚本https://github.com/mirkonasato/pyodconverter/
下载后,进行测试:
python DocumentConverter.py Website_Information_Form.doc new.pdf
soffice 可以正常转换为pdf,但是中文显示为乱码
1.4 中文乱码问题修复
google一下,乱码问题大概是字体缺失的问题,于是尝试将windows下的字体拷贝过去,复制windows下的字体到/usr/share/fonts下,然后刷新字体缓存
sudo fc-cache -fv 2>&1 | grep failed | cut -f1 -d":" | xargs -i sudo touch {} && sudo fc-cache -fv
再重启转换服务,再次测试,已经OK了!
2.pdf转html
pdf转html,使用国人开源的pdf2htmlex,一开始尝试通过源码编译安装,依赖组件太多,安装非常麻烦!感兴趣的可以执行编译安装,参见(https://github.com/coolwanglu/pdf2htmlEX/wiki/Building)
下面介绍简单安装方式:
2.1 通过apt安装
sudo add-apt-repository ppa:coolwanglu/pdf2htmlex
sudo apt-get update
sudo apt-get install pdf2htmlex
2.2 测试pdf2htmlex
pdf2htmlEX --zoom 1.3 xiaoshujiang.pdf
可以看到,当前目录生成了xiaoshujiang.html
2.3 转换脚本
写一个脚本,将两次转换放到一起,方便调用:
#convert2html.sh
temp=$(date +%Y%m%d%H%m%s)
python DocumentConverter.py $1 ${temp}.pdf
pdf2htmlEX --zoom 1.3 $temp.pdf
mv $temp.html $2
rm $temp.pdf
3. 测试
3.1 word (doc.docx)测试
convert2html.sh imo云办公室-私有云用户使用手册V2.0.doc imo-doc.html
效果:

3.2 表格 (xls)测试
convert2html.sh xxx.xlsx xxx.html

3.3 PPT (pptx)测试
./convert.sh xxx.pptx xxx.html

4. 总结
本文介绍了一种在服务端将office文档转换为html以方便预览的方法。
实际使用时,可以将生成好的html放到网站路径下,通过拦截器,设置访问权限。
OFFICE 文档转换为html在线预览的更多相关文章
- 把office文档转换为html过程中的一些坑
之前和我们项目的团队一起酝酿了一个项目,公司的业务文档技术文档比较多,但都比较分散,虽然通过FTP或其他方式聚合起来了,但感觉还是不够方便. 另外公司每次都来新员工,新员工都需要一些培训,比较耗时,比 ...
- 转:C#实现office文档转换为PDF或xps的一些方法
代码支持任意office格式 需要安装office 2007 还有一个office2007的插件OfficeSaveAsPDFandXPS 下载地址 [url]http://www.microsoft ...
- 在禅道中实现WORD等OFFICE文档转换为PDF进行在线浏览
条件: 安装好禅道的服务器 能直接浏览PDF的浏览器(或通过 安装插件实现 ) 文档转换服务程序(建议部署在另一台服务器上) 实现 原理: 修改禅道的文件预览功能(OFFICE文档其使用的是下 ...
- Office文档WEB端在线浏览(转换成Html)
最近在做了一个项目,要求是对Office文档在线预览.下面给大家分享一下我的方法. 1.第一种方法(不建议使用)我是在网上搜了一个利用COM组件对office文档进行转换,但是此方法必须要装Offic ...
- office转换为html在线预览
/// <summary> /// word 转换为html /// </summary> /// <param name="path">要转换 ...
- C#实现office文档转换为PDF或xps的一些方法( 转)
源博客http://blog.csdn.net/kable999/article/details/4786654 代码支持任意office格式 需要安装office 2007 还有一个office20 ...
- C#实现office文档转换为PDF格式
1.安装组件OfficeSaveAsPDFandXPS 需要安装office 2007 还有一个office2007的插件OfficeSaveAsPDFandXPS 下载地址 OfficeSave ...
- java使用jacob将office文档转换为PDF格式
jacob 包下载地址: http://sourceforge.net/projects/jacob-project/ 下载后,将jacob 与 jacob-1.19-x64.dll放到安装jdk目录 ...
- 将vue文档下载到本地预览
1下载:https://github.com/vuejs/cn.vuejs.org 到本地 2. npm install npm start # 开发服务器地址为 http://localhost ...
随机推荐
- crontab定时任务不执行的原因
1.重启crontab若是遇见"You (cloudlogin) are not allowed to use this program (crontab) ...
- Dalsa Sherlock 直连千兆网相机(通用驱动)
支持 Sherlock 7.1.7.2,用于千兆网相机与 Sherlock 的连接. 可适用于很多厂商的相机,如:巴斯勒(Basler),JAI,堡盟相机(Baumer),灰点相机(Point Gre ...
- Linux的正则表达式grep,egrep
一.概念 正则表达式是对字符串操作的一种逻辑公式,用事先定义好的一组特殊字符,组成一个"规则字符集合",根据用户指定的文本模式对目标文件进行逐行搜索匹配,显示能被模式匹配到的结果. ...
- linux文件系统下的特殊权限
SUID, SGID, Sticky 1 权限 r, w, x user, group, other 2 安全上下文 前提:进程有属主和属组:文件有属主和属组: (1) 任何一个可执行程序文件能不能启 ...
- hdu4283 You Are the One 区间DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4283 自己想了很久还是不会,参考了别人的思路才写的,区间DP还是很弱,继续努力!! 思路: 转载: 题 ...
- 解决U盘容量变小问题
今天又想重新给电脑刷刷kali linux新版本了貌似N久没更,直接重新刷系统吧...然后发现USB容量变小,这就尴尬了,接着总结了个小方法. 解决方法:1.先把u盘插好,运行cmd,2.输入disk ...
- ZooKeeper安装、部署
一.简介 ZK的安装和配置十分简单,既可以配置成单机模式,也可以配置成集群模式,zk使用java编写的运行在java环境上,3个ZK服务进程是建议的最小进程数量,而且建议部署在不通的物理机 ...
- 【2017-05-18】WebForm的Repeater控件和一些简单控件
一.Repeater控件 1. <%@ %> - 这里面写一些声明和引用的 <% %> - 编写C#代码的 <%= %> - 往界面上输出一个变量的值 <% ...
- 【WPF】三维模型中的“照相机”
WPF 部分支持三维模型,为啥说是部分支持?毕竟 WPF 的侧重点还是在应用开发上,虽然也有些游戏是用 WPF 开发的,不过,老周想啊,如果真要开发游戏,最好用专门的框架,WPF 应当用于开发应用功能 ...
- 【JAVAWEB学习笔记】04_JavaScript
晨读单词: onmouseover:鼠标移入 onmouseout:鼠标移出 attribute:属性 node:节点 document:文档 element:元素 textNode:文本节点 app ...