`
wenlongsust
  • 浏览: 75915 次
  • 性别: Icon_minigender_1
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

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

 
阅读更多

原文链接:http://www.officeweb365.com/officetoview.html

一、服务器先转换为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中设置 ,一个是在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、接口简单,只是PHP、JSP、ASP.net等所有的对接,省心省力。
3、费用低廉,节省投入。
4、不用关心客户端是否安装了Office软件,不用在客户端部署。
缺点:
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/

<script type="text/javascript"> $(function () { $('pre.prettyprint code').each(function () { var lines = $(this).text().split('\n').length; var $numbering = $('<ul/>').addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($('<li/>').text(i)); }; $numbering.fadeIn(1700); }); }); </script>
分享到:
评论

相关推荐

    openoffice实现office在线预览

    OpenOffice 提供了相应的解决方案,使得开发者可以通过服务器端处理 Office 文档并将其转换为网页可显示的格式,如 HTML 或 PDF,从而实现在线预览。 **一、OpenOffice 与在线预览原理** 1. **OpenOffice API**: ...

    pageoffice在线预览编辑word

    PageOffice 在线预览编辑 Word PageOffice 在线预览编辑 Word 是一种强大的文档在线编辑解决方案,能够在 Web 应用程序中在线打开、编辑和保存 Word 文档。下面是 PageOffice 在线预览编辑 Word 的详细知识点: 1....

    php+openoffice+python实现在线office预览

    本文介绍了如何利用php+openoffice+python组合实现在线office文档预览的技术方案,包括OpenOffice的安装、使用PHP和Python进行Office文档到PDF的转换、使用jquery.media插件进行PDF在线预览、文件的存储管理以及...

    帝国cms 新闻系统实现office、pdf 文档预览

    但为了确保兼容性和用户体验,可以使用如PDF.js这样的JavaScript库,它能够在前端实现高质量的PDF预览,无需依赖浏览器的PDF插件。 实现这一功能的具体步骤如下: 1. **创建模型**:在帝国CMS中,需要为文档类型...

    wpsoffice在线预览,在线编辑 Java版

    【标题】"wpsoffice在线预览,在线编辑 Java版"所涉及的知识点主要集中在如何在Java环境中实现对WPS Office文档的在线预览和编辑功能。WPS Office是一款流行的办公软件套装,包含了文字处理、电子表格和演示文稿等...

    Java实现web在线预览office文档

    - 对于PDF文件,可以使用JavaScript库如PDF.js(由Mozilla维护)来实现浏览器内的PDF预览。PDF.js可以将PDF内容解析并渲染成高质量的Web图形。 4. **安全性和性能优化** - 文件转换过程中应考虑并发处理,避免...

    uniapp移动端H5在线预览PDF等文件实现源码及注解

    在移动应用开发中,uniapp是一个非常流行的框架,它允许开发者使用一套代码库来构建多端应用,包括iOS、Android以及H5。...学习并理解这一实现方式,对于提升uniapp应用的功能性和用户体验具有重要意义。

    spire.office 实现无安装office即可在线预览

    在描述中提到,`Spire.Office` 提供的在线预览功能经过测试,转换为 PDF 后效果最佳,并且没有测试字样或官方水印,这表明该工具适合企业级开发,能够满足专业的需求。 **1. Spire.Presentation** `Spire....

    安卓预览Office文档

    例如,根据文件类型选择合适的预览方式(TBS预览Office,pdfjs预览PDF),确保不同类型的文档都能得到良好的显示效果。同时,考虑到性能和用户体验,还需要处理好文档加载的异步操作,提供加载进度提示,以及错误...

    php版本 office文档(word,ppt,excel)转pdf转swf(加水印),实现在线预览

    本文将详细探讨如何使用PHP实现Office文档(包括Word、PPT和Excel)转换为PDF,并进一步转化为SWF文件,同时添加水印功能,以实现安全的在线预览。 首先,我们需要了解PHP在处理文件转换时常用的一些库和工具。在本...

    web项目使用OpenOffice实现前端在线预览office、pdf等文档源码

    因此,如果需要预览PDF,还是需要结合OpenOffice或其他的转换工具。 4. **前端预览**: 将转换后的HTML文件通过HTTP响应发送到前端,可以使用JSP或任何你喜欢的模板引擎来生成HTML。前端可以使用IFrame或者Webview...

    利用 Aspose 以及 ViewerJS 实现Office在线预览

    总的来说,结合Aspose和ViewerJS,我们可以轻松地实现在线预览Office文档的功能。这种方式不仅适用于个人项目,也可以在企业级应用中发挥重要作用,提升用户交互的便利性。通过不断优化和扩展,你可以构建出更强大、...

    免费office文件在线预览

    总的来说,实现“免费Office文件在线预览”涉及的技术和环节较多,包括服务器端的文档转换、客户端的PDF展示以及中间的安全性和性能优化策略。而“jacob.jar”作为其中的关键组件,帮助开发者实现了Java环境下的...

    java Spring+openOffice实现office转pdf在线预览

    Java Spring 框架结合 OpenOffice 实现 Office 文件到 PDF 的在线预览是一个常见的技术应用场景,尤其是在企业级 Web 应用中。以下是对这个主题的详细讲解: **1. Java Spring 框架** Spring 是一个开源的 Java ...

    Windows下实现php在线预览功能

    通过上述步骤,可以实现一个基于PHP的在线预览功能,用户可以通过这种方式预览不同类型的文档,而无需在本地安装相应的办公软件。这种在线预览功能在很多企业网站或在线教育平台有着广泛的应用,对于提高用户体验和...

    web项目使用OpenOffice实现前端在线预览office、pdf等文档源码.rar

    你可以根据项目需求,将这些代码片段整合到你的Web应用中,实现前端在线预览Office和PDF文档的功能。 通过这种方式,用户无需离开网页或安装额外软件,即可轻松查看上传的文档,极大地提升了用户体验。同时,这也...

    java web在线预览pdf、word、excel

    通过以上步骤,我们就可以实现一个完整的Java Web在线预览PDF、Word、Excel文件的服务。这个过程涵盖了后端开发、前端展示以及中间的数据转换,是Web开发中一项重要的技能。无论是在企业级应用还是个人项目中,这一...

    ASPNET开发的一款OFFICE在线预览组件源码

    基于.NET开发的一款OFFICE在线预览组件,主要包括word,excel,pdf文档,支持预览的文件格式有doc,docx,xls,xlsx,pdf,服务器无需安装任何组件!支持二次开发!本程序源码已经打包上传至服务器,您可以任意修改分发...

    php实现在线预览功能

    1. **PDF预览**: 对于PDF文件,可以使用开源库如`mPDF`或`TCPDF`来转换PDF为HTML,然后在网页中显示。另一种方法是利用Google Docs Viewer或Adobe的在线预览API,通过IFrame嵌入预览页面。 2. **Microsoft Office...

    HTML+JS实现浏览器在线预览文件(支持pdf、excel、ppt、doc、jpg、png格式)

    本文将详细介绍如何使用HTML和JavaScript技术实现在浏览器中预览PDF、Excel、PPT、DOC、JPG以及PNG格式的文件。 首先,我们需要理解HTML和JavaScript在其中的作用。HTML是网页的基础结构语言,而JavaScript则是让...

Global site tag (gtag.js) - Google Analytics