FlexPaper实现文档在线浏览(附源码)
园子里也有关于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_2.2.4版下载地址
http://devaldi.com/zine_builds/FlexPaper_Zine_Trial.zip
页:
[1]