园子里也有关于FlexPaper的文章,但都不怎么详细。

没有较全的参数说明。就连官方网站都没有。没法,最后只得将swf文件反编译后查看了源码才将里面的参数全部弄出来。

好了,废话不多说,开始正题。

1. 概述

FlexPaper是一个开源轻量级的在浏览器上显示各种文档的组件,被设计用来与PDF2SWF一起使用, 使在浏览器中显示PDF成为可能,而这个过程并无需PDF软件环境的支持。

另外也可以通过将一些例如Word、PPT等文档转成PDF,然后实现在线浏览。

2. 实现步骤

文档(PDF,Word,PPT等) ----> 转换为SWF -----> 使用FlexPa在线浏览

2.1. 转换SWF

需要使用一个工具,SwfTools,目前最新版本是0.9.1;

下载地址

可以使用命令行将文件转换为swf文件;

例如将Paper3.pdf转换成Paper3.swf的命令为:

C:\SWFTools\pdf2swf.exe Paper3.pdf -o Paper3.swf

与之对应的程序实现方法:(C#)

Process pc = new Process();
ProcessStartInfo psi = new ProcessStartInfo(“C:\\SWFTools\\pdf2swf.exe”, “Paper3.pdf Paper3.swf”);
pc.StartInfo = psi;
pc.Start();
pc.WaitForExit();

更多关于SwfTools命令的说明可点这里下载说明文档。

2.2. 浏览器中浏览

首先要下载Flexpaper,目前最新版本为1.4.0 ;

下载地址

下载后解压到网页目录中。

在页面中使用以下代码即可实现Swf文档的浏览。

var params = {
SwfFile : "Paper.swf",
Scale : 0.6
}
swfobject.embedSWF("FlexPaperViewer.swf","cb","500","500","9.0.0","js/swfobject/expressInstall.swf", params)

SwfFile参数是你想显示的文件,Scale是0-1之间的数,表示显示的放大参数。

说的再好听,不如看源码来得直接。源码在这里下。

下面才是本文 的重点(网上找不到的 *_*,找到也没有这详细;嘻嘻)

3. 参数列表

官方网站有,但是没有我的全。 去官网

参数名称

参数值及说明

CursorToolsVisible

(True/False)

FitPageOnLoad

(True/False)

FitWidthOnLoad

(True/False)

FullScreenAsMaxWindow

(True/False)

FullScreenVisible

(True/False)

NavToolsVisible

(True/False)

PrintEnabled

(True/False)

PrintToolsVisible

(True/False)

ProgressiveLoading

(True/False)

Scale

 

SearchToolsVisible

(True/False)

StartAtPage

 

SwfFile

 

ViewModeToolsVisible

(True/False)

ZoomInterval

 

ZoomTime

 

ZoomToolsVisible

(True/False)

ZoomTransition

 

4. 事件与函数

这个不多,还是列下吧,不过要详细的请到官网去看吧。去官网

函数名称

函数说明

gotoPage (Number pageNumber)

跳转到指定页

fitWidth()

设置为宽度模式视图

fitHeight()

设置为高度模式视图

loadSwf (String swffile)

加载一个新的swf文件到浏览器中

getCurrPage()

获取当前页码

nextPage()

跳转到下一页

prevPage ()

跳转到上一页

Zoom (Number factor)

按系数缩放

searchText (String text)

搜索文字

switchMode (String mode)

变换视图模式;参数值可为("Portrait", "Two Page", "Tile")

printPaper ()

打印加载的文档

事件名称

事件说明

onDocumentLoaded ()

文档加载完成后触发

onDocumentLoadedError(String errorMessage)

加载文档出错时候触发

onProgress(Number bytesloaded, Number bytestotal)

文档正在加载的时候触发

onCurrentPageChanged(Number pagenumber)

页面改变时触发

onExternalLinkClicked(String link)

当用户点击外部链接的时候触发

文章最后再附个在线浏览pdf文件的插件 点这里下载。

FlexPaper实现文档在线浏览(附源码)的更多相关文章

  1. Java模拟实现百度文档在线浏览

    Java模拟实现百度文档在线浏览 这个思路是我参考网上而来,代码是我实现. 采用Apache下面的OpenOffice将资源文件转化为pdf文件,然后将pdf文件转化为swf文件,用FlexPaper ...

  2. sharepoint 2013 office web app 2013 文档在线浏览 IE11 浏览器不兼容解决方法

    昨晚配置完成office web apps 2013的外部网络访问之后,今天发现了一个很奇怪的问题,就是IE 11不支持文档在线浏览,找了很多方法,打补丁什么的,都不管用,最后在预览文件的页面,看到& ...

  3. 近200篇机器学习&深度学习资料分享(含各种文档,视频,源码等)(1)

    原文:http://developer.51cto.com/art/201501/464174.htm 编者按:本文收集了百来篇关于机器学习和深度学习的资料,含各种文档,视频,源码等.而且原文也会不定 ...

  4. Java+FlexPaper+swfTools 文档在线预览demo

    1.概述 主要原理 1.通过第三方工具openoffice,将word.excel.ppt.txt等文件转换为pdf文件 2.通过swfTools将pdf文件转换成swf格式的文件 3.通过FlexP ...

  5. Linux下实现文档在线浏览

    使用php实现百度文库功能,网上搜索到的方案,实现doc转pdf,pdf转swf,然后显示出来. 这里简单的记录下,[doc转pdf,pdf转swf]两个功能的搭建流程. doc转pdf 使用到下列程 ...

  6. 原创SQlServer数据库生成简单的说明文档小工具(附源码)

    这是一款简单的数据库文档生成工具,主要实现了SQlServer生成说明文档的小工具,目前不够完善,主要可以把数据库的表以及表的详细字段信息,导出到 Word中,可以方便开发人员了解数据库的信息或写技术 ...

  7. Socket实现仿QQ聊天(可部署于广域网)附源码(4)-加入数据库系统搭建完成

    1.前言 这是本系列的第四篇文章,上一篇我们讲到实现了客户端对客户端的抖屏与收发各种类型文件,本篇文章我们加入SQLServer数据库实现登录与好友的添加等功能,并对界面做了美化处理.向往常一样我会把 ...

  8. Java+FlexPaper+swfTools仿百度文库文档在线预览系统设计与实现

    笔者最近在给客户开发文档管理系统时,客户要求上传到管理系统的文档(包括ppt,word,excel,txt)只能预览不允许下载.笔者想到了百度文库和豆丁网,百度文库和豆丁网的在线预览都是利用flash ...

  9. 文档在线预览开源实现方案一:OpenOffice + SwfTools + FlexPaper

    在文档在线预览方面,项目组之前使用的是Microsoft office web apps, 由于该方案需要按照微软License付费,项目经理要我预研一个文档在线预览的开源实现方案.仔细钻入该需求发现 ...

随机推荐

  1. [CSU1911]Card Game(FWT)

    [vjudge-CSU1911] FWT_or #include<cstring> #include<iostream> #include<algorithm> # ...

  2. LeetCode934.shortest bridge【dfs+bfs】

    一.题面 在给定的二维二进制数组 A 中,存在两座岛.(岛是由四面相连的 1 形成的一个最大组.) 现在,我们可以将 0 变为 1,以使两座岛连接起来,变成一座岛. 返回必须翻转的 0 的最小数目.( ...

  3. gym101964G Matrix Queries seerc2018k题 cdq分治

    题目传送门 题目大意: 二维平面上有q次操作,每次操作可以是添加一个点,也可以是添加一个矩形,问每次操作后,有多少  点-矩形  这样的pair,pair的条件是点被矩形覆盖(边缘覆盖也算). 思路: ...

  4. ASP.Net Core 发布ABP项目遇到的错误

    1.HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. 与ASP.NET时代不同,ASP.NET Core不再是由IIS工作 ...

  5. windows同时安装python2和python3两个版本

    1.安装python2 下载地址: https://www.python.org/downloads/windows/ 进入页面,下拉,64位系统要选择这个. 下载完成后,一直点击下一步,直到安装完毕 ...

  6. 转 How To Stop A Running Job Using DBMS_JOB

    There is no procedure within the dbms_job package to stop a running job.You will need to determine w ...

  7. NFS 网络文件系统

    1, NFS存储服务概念介绍    NFS是Network File System的缩写,中文意思是网络文件系统,    它的主要功能是通过网络(一般是局域网)让不同的主机系统之间可以共享文件或目录  ...

  8. SEO艺术阅读笔记

      SEO(Search Engine Optimization)搜索引擎优化 搜索引擎:反映认知,连接贸易搜索引擎基础百度搜索高级语法确定SEO目标,定义网站受众设定SEO目标开发前定制SEO方案理 ...

  9. ztree框架使用问题汇总

    1.如何让用户只能点击页子节点 var setting = { callback: { beforeClick: zTreeBeforeClick } }; function zTreeBeforeC ...

  10. vim配置clojure开发环境备忘录

    1 需要使用的插件 vundle 使用教程 http://www.cnblogs.com/respawn/archive/2012/08/21/2649483.html vim-fireplace h ...