实例介绍
【实例简介】
没有较全的参数说明。就连官方网站都没有。没法,最后只得将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#)
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文档的浏览。
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) |
当用户点击外部链接的时候触发 |
【核心代码】
Partial Public Class _Default Inherits System.Web.UI.Page Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load End Sub 'Current Upload limit is 25 MB (25000 k) 'Change maxRequestLength in Web.config to set the upload limit 'Current Upload timeout is 5 minutes (300 seconds) 'Change executionTimeout in Web.config to set the upload timeout Protected Sub Button1_Click(ByVal sender As Object, ByVal e As EventArgs) Handles Button1.Click If FileUpload1.HasFile Then If ImageUtil.IsPDF(FileUpload1.FileName) Then ErrorLabel.Visible = False Dim savePath As String = Request.MapPath("PDF") & "\" & FileUpload1.FileName FileUpload1.SaveAs(savePath) PDFViewer1.CurrentPageNumber = 3 PDFViewer1.FileName = savePath Else ErrorLabel.Text = "Only PDF files (*.pdf) are allowed to be uploaded." ErrorLabel.Visible = True End If End If End Sub End Class
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论