shell下office、html、pdf文档互转方法

 分类:

后台开发

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

 

 

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

1.2 启动转换服务

soffice --accept="socket,host=127.0.0.1,port=2002;urp;" --nofirststartwizard
  • 1

1.3 文档转换

网上一般介绍的都是使用JODConverter ,通过java来调用转换服务,其实还有一种替代方案,就是使用pyodconverter,python版本的转换脚本https://github.com/mirkonasato/pyodconverter/

下载后,进行测试:

python DocumentConverter.py Website_Information_Form.doc new.pdf
  • 1

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
  • 1

再重启转换服务,再次测试,已经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
  • 1
  • 2
  • 3

2.2 测试pdf2htmlex

pdf2htmlEX --zoom 1.3 xiaoshujiang.pdf
  • 1

可以看到,当前目录生成了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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

3. 测试

3.1 word (doc.docx)测试

convert2html.sh imo云办公室-私有云用户使用手册V2.0.doc imo-doc.html
  • 1

效果:

3.2 表格 (xls)测试

convert2html.sh xxx.xlsx xxx.html
  • 1

3.3 PPT (pptx)测试

./convert.sh xxx.pptx xxx.html
  • 1

4. 总结

本文介绍了一种在服务端将office文档转换为html以方便预览的方法。

实际使用时,可以将生成好的html放到网站路径下,通过拦截器,设置访问权限。

 

 

时间: 2024-09-20 15:30:06

shell下office、html、pdf文档互转方法的相关文章

在Linux中方便浏览PDF文档

无论是互联网还是日常工作,使用PDF格式保存的电子文档和电子图书都十分流行.PDF格式的电子文档不仅可以完全保存原文档的全貌,更以安全性.易用性及普及性而深受广大用户的欢迎.Linux中有许多这样的浏览工具,如Konqueror.GGV.Adobe Acrobat Reader和Mozilla,这些工具的都可以实现浏览PS/PDF文档,并且大多数对中文支持较好,显示效果也不错.下面就介绍如何利用PDF查看工具,在Linux中方便浏览PDF格式的文档. 在Konqueror中浏览PDF文档 熟悉K

Java实现web在线预览office文档与pdf文档实例

1.首先我们需要找到可以把office转换成pdf的方法,查找资料发现有openoffice这一软件可以把office转换成pdf,这一软件先下载下来,然后记住自己安装的在那个位置.然后在cmd环境下进入安装目录的program目录,输入打开openoffice的命令:soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;" -nofirststartwizard 输入完成之后在任务管理器可以看见soffice.b

Office 2013将Excel表格转换成PDF文档的方法

  Office 2013将Excel表格转换成PDF文档的方法.提到将Excel表格转换成PDF文档,很多网友都知道金山wps就自带了这个功能,因此,就有不少微软Office用户非常不服,因此,他们发现:微软Office 2013也具有了这个功能,但是,太少人知道了.在今天的教程中,我们就一起来了解一下微软Office 2013将Excel表格转换成PDF文档的方法! 选取了两个表格来做演试(按住Ctrl+鼠标点击选取),选择后点击左上角的"文件". Office 2013 接下来将

iframe标签显示PDF文档问题(为什么在web容器中只有框没有内容,在一般情况下就可以正常显示)

问题描述 iframe标签显示PDF文档问题(为什么在web容器中只有框没有内容,在一般情况下就可以正常显示) 问题是这样的,我在电脑中新建一个HTML文件用iframe显示PDF文件时候,可以正常显示,但是一旦将其导入到tomcat容器中的WEB项目中时,从WEB项目启动后,就只显示框框,没有内容 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

用ITextSharp给pdf文档加水印在FireFox下水印消失并且不允许打印功能失效

问题描述 用ITextSharp给pdf文档加水印在FireFox下水印消失并且不允许打印功能失效有没有大神遇到过这种问题?或者C#有没有其它的方法给pdf加水印,10点上线回帖!谢谢这个是在googlechrome下面,禁用打印和水印都是成功的这是在火狐下面,水印消失,禁止打印也无效了! 解决方案

CentOS6.4下使用默认的文档查看器打开PDF文档乱码的解决方案

 最近在CentOS6.4下使用其默认的文档查看器打开PDF文档时出现乱码的方块,有两种方法可以解决.    方法一:修改/etc/fonts/conf.d/49-sansserif.conf文件,如下:   [html] view plaincopy     <?xml version="1.0"?>   <!DOCTYPE fontconfig SYSTEM "fonts.dtd">   <fontconfig>   <

如何使用Word 2013编辑PDF文档

题外话:记得刚进公司的时候,几乎所有的培训文档都是PDF.标准文档,公司使用的软件是Adobe Acrobat 5.0(不知道多少钱,呵呵),软件当然是购买正版的:去年,公司购买了新版本的Adobe Acrobat 9.0,由于购买的数量非常可观,所以价格大概在2K/个左右,呵呵. 自己使用过的Office 版本从2000版,直接跳上2010版,好处就不多说了,不管从软件界面.功能升级等都提到了不少..... 那微软的办公软件有没有可能打开PDF文档呢? 细心的朋友可能有留意到,在OFFICE

怎样在powerpoint2013中通过宏命令创建pdf文档

  开启宏命令功能 此处以PowerPoint 2013为例,其他版本的操作略有不同. 点击菜单:文件→选项→自定义功能区→主选项卡,勾选"开发工具".或直接在所有命令中找到"宏",添加到自定义菜单中即可. 文档-怎样创建pdf文档"> 点击菜单"开发工具",可以在常用工具栏"代码"中看到"宏"的图标 启用宏并输入相应的vba代码 操作步骤:1.在"开发工具"选项卡的&q

office2007保存为PDF文档的方法

  很多网友喜欢将自己制作的文档保存为PDF再进行分享与发布,这样不仅保护了文章的版本,而且显得比较正式.那么,一个已经制作完成的word文档该怎么保存为PDF文档呢?今天小编就教大家使用office2007保存为PDF文档的方法,希望可以帮到大家! 要求:office2007以上版本. 安装office2007兼容包是不行的,不满足要求的就只有使用PDF打印机这种办法了.最后的效果如下图所示. 进入帮助文档; 在office2007word窗口中安装F1,会弹出帮助页面,输入PDF 联线off