开发者社区> 范大脚脚> 正文

FlexPaper_1.2.1.swc——Flex在线显示PDF文档(使用FlexPaper)感悟

简介:
+关注继续查看

想想自己先前搞PDF转SWF,然后在线浏览功能时,实在是费了不少精力。后来不断发现实现类似功能的网站:http://www.doc88.com/  和 http://www.docin.com/ 虽然他们做的都比我起初做的好,但他们都是公司实力支撑,依靠的也是那种盈利模式。

      自己的也在逐步完善和改进中,下面是我项目中的最终版:

       

  一直希望在项目结束后,分享我的代码和心得。前天碰巧看到有外国网友,将该功能封装成SWC,实现技术路线都是相同的,现在大家可以学习一下,很方便地实现自己的PDF在线浏览功能了。(功能还不错,但有待提高!如下:)

       

网站地址:

http://flexpaper.devaldi.com/index.php 

介绍转载:

 

Introduction

FlexPaper is an open source light weight document viewer component designed to work together with libraries such as PDF2SWF, making it possible to display PDF files in Adobe Flex and other Flash based applications.

Making your document ready

To make it possible for your users to view your PDF documents without using Acrobat Reader, documents first needs to be converted to the SWF file format. There is a range of available converters, both commercial and free. The following example uses the open source tool SwfTools and can be automated if needed.

  1. Download and install SwfTools. All builds are available for download here.
  2. Convert your PDF to SWF. This is preferrably done from the command prompt. Make sure you set your options (Edit->Options) to "No viewer" if you are converting your PDF using the UI from SwfTools before exporting your PDF to SWF. This example converts a PDF file called "Paper3.pdf" to the output file "Paper3.swf":
    C:\SWFTools\pdf2swf.exe Paper3.pdf -o Paper3.swf
    Please see the wiki for more details about the conversion and the parameters that are currently recommended.

 

Viewing your document using the pre compiled flash version

The pre-compiled version of FlexPaper is most useful if you just want to use FlexPaper on any of your web pages.

  1. Download and extract the pre-compiled version of FlexPaper. All builds are available for download here.
  2. The zip file contains a sample file called "FlexPaperViewer.html" which shows you the basic parameters you need to pass to FlexPaper (SwfFile and Scale). Please see the wiki on Google Code for a complete list of available parameters.
  3. Copy the SWF you created with PDF2SWF to the same directory as your extracted files
  4. Upload everything to your web site and navigate to FlexPaperViewer.html in your favorite browser. If you on the other hand would like to run the application from a local directory rather than from a web server, then the application has to be added as trusted first. You can do that atAdobe's web site.

 

Using FlexPaper in Adobe Flex

Using the viewer in Adobe Flex is as easy a using the flash version.

  1. Download the FlexPaper SWC from Google Code and add the FlexPaper library to your Flex project.
  2. Copy the SWF you created with PDF2SWF to your bin-debug directory and add the FlexPaper component to your flex application as in the following example (update the SwfFile property on the component to point to your SWF file):
    <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" width="100%" height="100%" xmlns:fp="com.devaldi.controls.flexpaper.*"> 
        <fp:FlexPaperViewer width="520" height="450" Scale="0.6" SwfFile="Paper3.swf" /> </mx:Application>

国内介绍该控件库的先驱:

http://wangcheng.javaeye.com/blog/549074

转载其博客内容:

Flex:使用FlexPaper显示PDF文档

FlexPaper是一个开源的轻量级文档显示组件,被设计用来与PDF2SWF一起使用,使在Flex中显示PDF成为可能。它可以被当做Flex的library来使用。

 

一. 使用PDF2SWF准备好你的文档

 

首先要将PDF转成SWF,这步可以使用开源的SwfTools自动完成

 

1.下载安装 SwfTools,当前最新版本是0.9
2. 转换PDF到SWF,可以通过命令行的方式,例如将Paper3.pdf转换成Paper3.swf
C:\SWFTools\pdf2swf Paper3.pdf -o Paper3.swf

 

二. 使用已经编译好的FlexPaper的flash版本浏览你的文档

  1. 下载并解压出已经编译好的FlexPaper
  2. zip文件包含一个例子文件叫做FlexPaperViewer.html,它向你展示了需要传给FlexPaper的基本参数
    1. var params = {   
    2. SwfFile : "Paper.swf",   
    3. Scale : 0.6   
    4. }   
    5. swfobject.embedSWF("FlexPaperViewer.swf","cb","500","500","9.0.0","js/swfobject/expressInstall.swf", params);   
    6.   
    7. //SwfFile参数是你想显示的文件,Scale是0-1之间的数,表示显示的放大参数  
     
  3. 复制你创建出来的swf和PDF2SWF到解压缩出的相同目录
  4. 确定你添加了FlexPaperViewer.swf

三. 在Flex中使用FlexPaper

 

1. 下载FlexPaper SWC,添加到你的Flex项目libs中
2. 复制你用PDF2SWF创建的SWF到你的bin-debug目录,如Paper3.swf,添加FlexPaper组件到你的flex代码中

 

  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"    
  3.     layout="absolute"  
  4.     width="800" height="500"  
  5.     xmlns:flexpaper="com.devaldi.controls.flexpaper.*">  
  6.        
  7.     <flexpaper:FlexPaperViewer width="800" height="500"    
  8.         Scale="1" SwfFile="Paper3.swf" />  
  9.        
  10. </mx:Application>  

 


本文转自农夫山泉别墅博客园博客,原文链接:http://www.cnblogs.com/yaowen/p/4203005.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
基于EMQ的iot服务器架构使用说明文档
本次计划自己开发一个属于自己的iot服务器,并提供对外接口,实现物联网平台的工作效果,在学习寻找过程中发现了EMQX的服务架构,所以我就将本次在阿里云租到的ECS服务器用于开发EMQX服务架构。
195 0
flex 4.1 ComboBox 使用示例
                                         日                月                季                年                                                        ...
775 0
JS导出PDF插件(支持中文、图片使用路径)
原文:JS导出PDF插件(支持中文、图片使用路径) 在WEB上想做一个导出PDF的功能,发现jsPDF比较多人推荐,遗憾的是不支持中文,最后找到pdfmake,很好地解决了此问题。它的效果可以先到http://pdfmake.org/playground.html查看。
1842 0
APICloud AVM框架列表组件list-view的使用、flex布局教程
avm.js 是APICloud 推出的多端开发框架。使用 avm.js 一个技术栈可同时开发 Android & iOS 原生 App、小程序和 iOS 轻 App,且多端渲染效果统一;全新的 App 引擎 3.0 不依赖 webView,提供百分百的原生渲染,保障 App 性能和体验与原生 App 一致。
42 0
Objective-c官方文档 怎么使用对象
版权声明:原创作品,谢绝转载!否则将追究法律责任。   对象发送和接受消息 尽管有不同的方法来发送消息在对象之间,到目前位置是想中括号那样[obj doSomeThing];左边是接受消息的接收器,右边是接收器调用的方法,换句话说obj发送doSomeThing消息。
805 0
+关注
3656
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载