`
usenrong
  • 浏览: 515224 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

实现WORD文档、PDF文档在线预览:设计总体思路

    博客分类:
  • J2EE
阅读更多

近两年出现了许多以“经验交易”为核心的文档平台,如豆丁网、百度文库、星期八等网站。这些网站将文档(知识)存放在网站(平台)上,供用户浏览、讨论、下载,配以良好的积分体系和金钱激励(运营),完美的协调好知识分享与知识传播之间的微妙关系。这样即有Web2.0的用户互动,也有Web3.0的价值分配,对社会也是非常好的资源重用,是非常棒的一种运营模式。

  从技术层面讲,这类网站的创新主要有文档预览、知识商城和SNS三个块。今年初公司也决定在公司内部引入这种模式,以实现公司内部文档特别是售前方案的分享,很荣幸,我被安排为此项目的技术经理,也专门研究了文档在线预览的技术。如今项目已经上线将近百天,也是时候整理一下思路,这篇博客主要就是分析一些文档在线预览的技术细节,其实网上已经有很多类似的文章,但大多没有说得很清楚,也比较零乱,所以我想整理一个完整的文章来。文章内容将会涉及:总体思路、预览实现细节、缩略图实现、百度阅读器使用等。
  文档预览即文档以flash的形式在网页上展示,所以要解决两个问题:以什么格式展示flash、文档如何转化为符合格式的flash。
  展示flash有两种方式,一种是直接生成好一个完整的flash展示出来,一种是用一个播放器来播放另外一个文档flash。第一种方式可以用SWFTools的工具直接将pdf转化成一个整体的flash展示,但这种方式的flash较大,且不容易控制,故用得较少。第二种方式是重点,首先需要了解的是一个开源的flexpaper播放器,它可以播放一帧一页的flash;在flexpaper的基础上,如果遇到大文档则会出现速度和性能的问题,这个时候需要像百度文库、豆丁一样修改flexpaper,让它支持一次仅读取指定页数的flash;如果文档安全级别较高,不允许下载查看,则需要给flexpaper加上加密解密算法;如果需要登录用户才能查看,则要让flexpaper有登录UI。
  转化文档为flash的思路有一条,但有多种实现方式。一般文档需要先转化为pdf,再从pdf转化为flash。转化为pdf的方法有很多,例如使用虚拟打印机、使用MicrosoftOffice的API、使用OpenOffice转化等,不过转化的过程中,可能由于文档有误、损坏、加密等原因造成转化失败。从pdf转化为flash就简单了许多,直接使用SWFTools的pdf2swf即可实现多种方式的转化。
  下图是文档转化到swf的一个流程,其中type是文档的一个状态标识(0表示未处理过的文档,1表示已生成pdf,2表示已生成flash,-1表示不受支持的文档格式,-2表示转化为pdf失败,-3表示转化为flash失败)

 
 
  • 大小: 43.4 KB
分享到:
评论
1 楼 lovebegar 2012-05-21  
学习了~我现在也在做这样的一个东西~

相关推荐

    js在线预览wordpdf.rar

    总的来说,"js在线预览wordpdf.rar"提供了一个完整的解决方案,使Web开发者能够方便地在网站上实现PDF和Word文档的在线预览功能,同时也涉及到了JavaScript库的使用、多线程处理、安全性和性能优化等多个重要知识点...

    word转PDF然后实现在线预览的功能.rar

    在IT行业中,将Word文档转换为PDF格式并实现在线预览功能是一项常见的需求,尤其在Web应用中。这个压缩包“word转PDF然后实现在线预览的功能.rar”提供了一个技术解决方案,下面我们将深入探讨其中涉及的关键知识点...

    asp .net 实现word文档在线预览

    在ASP.NET中实现Word文档的在线预览是一项常见需求,尤其在需要用户查看但不需要下载原始文件的场景下。在给定的标题和描述中,提到的技术方案是通过Office-Tools、WF(可能是Windows Forms)以及FlexPaper来实现这...

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

    在IT行业中,尤其是在Web开发领域,常常需要处理各种文档格式的转换,以便用户能够在线预览和交互。本文将详细探讨如何使用PHP实现Office文档(包括Word、PPT和Excel)转换为PDF,并进一步转化为SWF文件,同时添加...

    C++QT实现对pdf、word文档预览以及文本内容的读取

    功能主要实现了1、对pdf、word文件进行预览显示2、读取pdf、word文本数据3、进行文本之间的相似度比较。 资源每段我基本都有详细的过程注解,Demo可以直接运行测试。 pdf的预览及读取我是用的网上的Poppler第三方库...

    angularjs-pdf-master 在线预览

    在AngularJS框架中,实现移动端PDF文档的在线预览是一项重要的功能,特别是在移动设备日益普及的今天。"angularjs-pdf-master"项目就是针对这一需求提供的一种解决方案。该项目使用了AngularJS和PDF.js库,旨在为...

    word文档前端预览

    "word文档前端预览"的实现方式旨在让用户在不离开网页或无需下载的情况下查看Word文档内容,这对于提高用户体验和数据安全性都有积极意义。本文将深入探讨如何使用JavaScript插件在前端实现这一功能,同时兼顾服务器...

    Word转PDF在实现在线预览功能.rar

    在IT行业中,将Word文档转换为PDF格式是常见的需求,特别是在需要在线预览或跨平台兼容性时。这个"Word转PDF在实现在线预览功能.rar"压缩包提供了一个使用Java来实现这一功能的解决方案。Java作为一种广泛使用的编程...

    word文件转pdf或者word转html实现在线预览

    在IT领域,尤其是在文档处理和在线服务中,将Word文件转换为PDF或HTML格式是常见的需求,这通常是为了实现在线预览、跨平台兼容性或优化网页显示效果。本篇文章将详细探讨如何实现这一过程,并重点讲解使用Java开发...

    java web在线预览pdf、word、excel

    为了实现文档预览,我们需要创建一个Controller,该Controller接收前端请求,读取服务器上的PDF、Word或Excel文件,然后将文件内容转换为适合在浏览器中展示的格式。 对于PDF文件,在Java Web环境中,可以使用...

    word 转换为pdf进行预览

    在Web环境下,预览Word文档通常通过将文档转换为更通用且易于渲染的格式,如PDF,来实现。这样,无论用户的设备上是否有安装Word,都能流畅地查看文档。 接下来,我们要了解“word转换为pdf”。Word和PDF各有优势,...

    \java通过url在线预览Word、excel、ppt、pdf、txt文档中的内容

    PDF 文档预览可以使用 `PDFBox` 库来实现,首先建立链接,获取网络输入流,然后使用 `PDDocument` 读取 PDF 文档中的内容。最后使用 `response.getWriter().write()` 将内容输出到浏览器上。 TXT 文档预览 TXT ...

    在线预览文档flash版(支持word、excel、ppt、pdf)+在线预览文档插件

    对于Word文档,预览功能通常会解析文件内容并将其显示为网页,保留原有的文本、图片、表格和格式。用户可以滚动浏览,放大缩小,甚至进行简单的导航操作。Excel预览则需要处理更复杂的结构,如单元格、公式、图表等...

    在线文档预览,支持ppt,word,excel在线预览

    在线文档预览是一种常见功能,尤其在Web应用中,它允许用户无需下载即可查看文档内容。本项目专注于实现对PPT、Word、Excel等常见办公文档的在线预览,通过集成OpenOffice、jodconverter以及pdf.js技术,使得这一...

    jsp开发实现wordexcel的在线预览

    本文将深入探讨如何使用JSP技术来实现Word和Excel文档的在线预览功能,这对于许多Web应用程序来说是一项非常实用的功能,能够极大地提升用户体验。 首先,要实现在线预览,我们需要理解JSP的基础工作原理。JSP是由...

    poi将word、PPT、Excel转pdf实现在线预览的jar包

    标题中的“poi将word、PPT、Excel转pdf实现在线预览的jar包”涉及到的是Apache POI库在Java开发中的应用,以及如何利用它来处理Microsoft Office文档并转换为PDF格式,以便进行在线预览。Apache POI是Java平台上用于...

    aspose实现在线预览word,ppt,excel,pdf文件架包(1)

    Aspose 是一个强大的文件处理库,它允许开发者在多种编程语言环境下处理各种文件格式,包括Word文档、PowerPoint演示文稿、Excel电子表格以及PDF文档等。本篇将详细介绍如何利用Aspose实现在线预览这些文件类型。 1...

    在线预览文档flash版(支持word、excel、ppt、pdf)+在线预览文档html版

    1. Word文档(.doc或.docx):通常包含文本、表格和图片。HTML版预览可能需要将文档内容转换成HTML结构,保留原始格式;Flash版则可能通过渲染内嵌的OLE对象实现预览。 2. Excel电子表格(.xls或.xlsx):包含数据...

    android预览word/pdf demo

    这个"android预览word/pdf demo"项目提供了一个示例,演示如何实现在线JS预览PDF以及调用手机上的Word预览软件来查看Word文档。下面我们将深入探讨实现这些功能的关键知识点。 1. **WebView组件**: - 在Android中...

Global site tag (gtag.js) - Google Analytics