一、服务器先转换为PDF,再转换为SWF,最后通过网页加载Flash预览

微软方:利用Office2007以上版本的一个PDF插件SaveAsPDFandXPS.exe可以导出PDF文件,然后再利用免费的swftools.exe工具生成swf格式的Flash文件,网页中加载flexpaper免费开源工具(有广告)实现Flash文件的预览。
优点:
1、有效的保护的源文件及文件的复制,不可复制也是缺点。
2、源码是自己的,版权有保证。
缺点:
1、服务器上必须安装Office软件。
2、导出PDF文件本身是个打印过程,Excel页面格式未设置,会出现一张表格打印出多页来,阅读体验大大下降。
3、转换过程非常耗费资源,低配的CPU几乎能跑满,服务器卡死。转换时间也非常漫长,这个时间主要是卡在了转换PDF上面。
4、转换完成服务器会遗留大量Excel、Word进程无法正常退出,有一些折中的解决办法,可以在网上搜索。
5、设置非常麻烦,本身微软官方的说法Office软件是客户端程序,在与IIS交互的时候本身就未设计。所以很多程序员把精力浪费在了调试程序上面。有两点在调试的时候需要注意。一个是在web.config中设置 <identity impersonate="true" userName="administrator" password="你的服务器管理员密码" />,一个是在Office软件的设置中设置跟桌面交互。
6、严重浪费磁盘空间,一个文件还需要一个PDF文件、一个SWF文件,是否每次都转换,纠结是要硬盘空间呢还是要CPU的资源。
参考链接:
http://www.cnblogs.com/expectszc/archive/2012/04/04/2432149.html 
http://www.cnblogs.com/liuning8023/archive/2013/03/04/2943482.html 
http://www.cxyclub.cn/n/29549/

非微软方:没有微软的Office软件可安装,只能用第三方的openoffice(开源、免费)来转换PDF文件,其它方面都一样,优缺点一样
参考链接:
http://blog.csdn.net/z69183787/article/details/17468039


二、Office文档直接转换为SWF,通过网页加载Flash预览

利用flashpaper直接转换为SWF文件(虚拟打印机),然后利用flexpaper预览Flash文件。
flashpaper是Macromedia的一款产品,随着被Adobe公司收购,Macromedia对于这款软件早就放弃了,国内尚无人在程序中调试成功过。
参考链接:
http://www.dzwebs.net/1149.html


三、office转Html、pdf转图片在线预览文件Html文件

利用DCOM配置直接操作Office文件,读取文件内容,导出Html文件
优点:
实践证明此方法不科学。
缺点:
1、服务器上必须安装Office软件。
2、配置麻烦,正如微软所说,读取Office不是这么干的。
3、转换的文件格式均丢失。
4、仅限于IIS服务器,利用ASP.net(C#)。
参考链接:
http://www.cnblogs.com/tangbinblog/archive/2012/11/29/2794110.html


四、第三方ActiveX浏览器控件

如科瀚的SOAOffice中间件、卓正软件的pageoffice控件、WebOffice控件、国外的Office Viewer ActiveX Control
优点:
可在线编辑等。
缺点:
1、客户端需安装控件。
2、付费。
3、在Html5、CSS3以及桌面向浏览器转换的大潮流下,控件已是昨日黄花。
参考链接:
http://www.kehansoft.com/soaoffice/index.htm 
http://www.zhuozhengsoft.com/ 
http://www.officectrl.com/ 
http://www.anydraw.com/


五、微软的Office Web Apps

微软新出的在线文档,与Google文档抗衡,估计没谷歌文档,微软也懒得出这个
优点:
微软自家的东西原生态呈现。
缺点:
需架设一台单独的服务器(可以是虚拟机),配置过低能安装,无法运行,另外还需一台域服务器。而这两台机器上均不能安装其它程序,比如SQLServer,在Office Web Apps服务器上每次重启IIS会重置,也就是说你不能有任何其它网站。
参考链接:
http://technet.microsoft.com/zh-cn/library/jj219456(v=office.15).aspx


六、第三方成熟的服务

如OfficeWeb365、idocv
优点:
1、OfficeWeb365采用的微软的Office Web Apps,idocv不详。
2、省心省力、节省投入。
缺点:
1、OfficeWeb365只能查看不能编辑,文档大小限制为10M,这也是Office Web Apps的文档限制大小,不过对于一般Office文件大小已绰绰有余。
2、idocv的文档还原能力不强,格式无法完全还原,特别是在Excel与Powerpoint上面,但无文档大小限制。
参考链接:
http://www.officeweb365.com 
http://www.idocv.com


七、在浏览器中直接打开

通过设置MiME类型,告诉浏览器这是Office文件,浏览器直接调用本地Office或PDF软件打开
优点:
1、不用编程,不用第三方服务,直截了当。
2、很多用户安装了Adobe的PDF预览软件,同时在浏览器上也直接安装了插件,浏览器可直接查看PDF文件。
缺点
你永远不知道客户机器上是否安装了Office软件,虽然几乎都安装了,但直接调用Office软件,客户体验大大下降,更何况还有个讨厌的迅雷一直在监视你的浏览器,不给你打开的机会,当然这些都是你无法预知的。


八、其它

如金山快写、一些网盘的预览
参考链接:
http://w.wps.cn/

转载于:https://www.cnblogs.com/chixiaobai/p/3732462.html

Office在线预览及PDF在线预览的实现方式大集合相关推荐

  1. Office在线预览及PDF在线预览的实现方式

    原文链接:http://www.officeweb365.com/officetoview.html 一.服务器先转换为PDF,再转换为SWF,最后通过网页加载Flash预览 微软方:利用Office ...

  2. pdf在线翻译_24个PDF在线小工具,免费在线翻译PDF文档。

    点击上方蓝色字关注我们! 最近工作看的英文文献比较多,而且一般都是PDF文档,所以最近我找了一些PDF翻译的东西,今天推荐的是一个在线翻译文档网站,它可以立即翻译任何文档格式为任意语言,并保持排版不变 ...

  3. mpvue PDF文件预览

    小程序中PDF文件预览问题 在小程序中可以ios端可以使用  <web-view :src="url"></web-view> 但是在Android端pdf ...

  4. 如何将pdf在线翻译成英文?

    掌握基本的办公技巧是人基本的要求,像有些工作的人要把pdf在线翻译成英文,你们可能觉得比较牛逼,但只要肯学,我们也能把pdf翻译成中文,接下来我就来介绍如何翻译. 1.打开浏览器输入迅捷在线PDF转换 ...

  5. WPS转换成PDF在线

    WPS转换成PDF文件怎么在线进行转换,我们需要进行WPS文件转换成PDF文件的操作怎么做呢?小编给大家推荐一款在线的转换器-迅捷PDF在线转换器,下面就是小编为大家分享的WPS转换成PDF的操作步骤 ...

  6. 什么PDF在线压缩器好用,怎么操作?

    PDF文件是办公中常见的文件格式,随着时间的积压,PDF文件也是越来越多,不要以为PDF文件小,可是过多的PDF文件也会产生手机电脑的卡顿,针对这一现象,就会有很多人再问PDF文件怎么压缩才好呀,很多 ...

  7. 【python自动化办公】好用的在线网站推荐解决pdf格式转化、文字提取、图片质量增强、抠图等

    目录 前言 1. 学习python自动化办公目的 2. 以往学习内容 3. 资料来源 1. 文档在线格式转化--ALL TO ALL 2. PDF在线工具--PDF24 Tools 3. PDF工具合 ...

  8. 前端【vue】实现文档在线预览功能,在线预览pdf、word、xls、ppt等office文件

    前端江太公 前端实现文档在线预览功能 最直接的就是使用XDOC 文档云服务 XDOC可以实现预览以DataURI表示的DOC文档,此外XDOC还可以实现文本.带参数文本.html文本.json文本.公 ...

  9. word转图片 java_Java 利用LibreOffice将Office文档转换成 PDF,进而转图片,实现在线预览功能...

    项目中需要将 Office 文档上传并实现在线预览,用到了 LibreOffice 将 Office 文档转换为 PDF 文档,然后再用 pdfbox 将 PDF 转为图片. 本文介绍借助 Libre ...

最新文章

  1. 中国LINUX内核开发大会 ppt演讲资料 与 会议视频
  2. 格式化时间格式LocalDateTime转String日期
  3. JAVA8的双重循环怎么优化_Java8处理List的双层循环问题代码实例
  4. python做简单温度转华氏_python温度转换华氏温度实现代码
  5. 基于ffmpeg入门学习相关的资料
  6. 查看Office365迁移任务进度状态
  7. Web SCADA 电力接线图工控组态编辑器 1
  8. mysql 5.5 主从_Mysql5.5常用命令及主从配置
  9. python登录验证码生成及自动化测试规避
  10. “我来管管看”系列:如何消除报工数据与入库数据的差异?
  11. GIS笔记_普通tif文件转成array数组 c#
  12. 【Spark学习笔记(二)】
  13. 计算机u盘设备无法启动不了,系统提示“该设备无法启动(代码:10)”,USB设备不能开始工作怎么办?...
  14. 那些让人动容的美食文案
  15. 动态规划系列 之 股票相关问题 (C语言刷leetcode)
  16. 论文写作总结(一)初级版
  17. python软件测试脚本_基于Python的实时嵌入式软件测试脚本
  18. 计算机音乐制作的论文,让电脑音乐制作服务于教学
  19. 最全Cisco 3560交换机使用手册
  20. 李渔:居家办公成就的辉煌人生

热门文章

  1. C++安全方向openssl(三):3.2 md5算法原理详解以及代码实现
  2. 人工智能在fpga的具体应用_“基于FPGA的人工智能应用技术师资培训”圆满落幕!...
  3. catia如何整列加工_非标零件如何用机器检测?能像人类一样查出问题吗?
  4. 2.3 词嵌入的特性
  5. Matplotlib 中文字体设置
  6. sizeof运算符介绍以及常见的坑
  7. Oracle join多表查询
  8. 在过程中要正式批准可交付成果_PMP模拟考试一(200题中文版)
  9. php 初始化model,TP5 model类研究
  10. mysql 存储过程 行锁_mysql存储过程出现锁表锁行的情况怎么解决?如: