Print2flash在.NET(C#)64位中的使用,即文档在线预览
转:http://www.cnblogs.com/flowwind/p/3411106.html
Print2flash在.NET(C#)中的使用,即文档在线预览
office文档(word,excel,ppt)在线预览查看,有很多种方式,比如可以
1、调用weboffice组件,进行word预览,要求客户端安装word,仅适用IE, word2013, IE11会提示word停止响应;
2、将word转为html文档;
3、使用flexpaper,感觉不是很美观,不过还是可以用;
4、使用flashpaper,效果比较好看,不过只支持32位操作系统,不支持64位;
5、使用print2flash,效果跟flashpaper差不多;
这里主要讲一下print2flash的使用,先上一个效果图:
print2flash的大体实现是这样的,通过把从客户端上传的word/Excel/ppt文件,调用print2flash官方提供的dll,转化成swf格式文件,最后浏览swf文件,就是上图中的效果。
具体使用 如下:
1、下载print2flash,这里是64位的,可以到官方http://print2flash.com/download.php下载最新的,其中的Print2Flash SDK 3.5,是java php .net asp的代码示例
2、配置服务信息,这一步很关键,不然会提示 COM 类工厂中 CLSID 为 {466FAC17-24D2-4B37-A2C4-E2CFA0D3E1E7} 的组件失败,原因是出现以下错误: 80040154 没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))(不安装print2flash也会这样提示)
配置步骤:打开print2flash安装目录,64位操作系统默认在C:\Program Files (x86)\Print2Flash3下,右键管理员方式运行print2flash.exe,点击option—>Print2Flash Service Configuration,如下图:
3、在程序里引用Interop.Print2Flash3.dll,并调用如下代码,进行转换。
String fs_filename = Server.MapPath("UploadedFiles/") + FileUpload1.FileName; String fs_convertedfilename = Server.MapPath("ConvertedFiles/") + FileUpload1.FileName + ".swf"; Print2Flash3.Server2 p2fServer = new Print2Flash3.Server2(); p2fServer.ConvertFile(fs_filename, fs_convertedfilename, null, null, null);
这里其美中不足的地方是,试用版会在预览的时候,有一串英语,意思是让你到官方去瞅瞅。网上有3.1版本的注册码,这个是3.5的,注册码没法用。
另外官方也提供了相关sdk,这里的源码即是官方提供的。但核心代码就是上面那几句。 源码下载
另外这里是官方flexpaper在c#中实现的源码,其实现原理是process调用pdf2swf.exe,将pdf文件转为swf文件,点击下载源码,安装需要swftool0.9.1.exe支持,点击下载swftool,vs运行起来后,页面登陆用户名admin 密码123456 效果图如下
最新文章
- Matlab函数 meshgrid
- java多线程学习
- [Android Studio导入第三方类库方法] Error:(19, 23) 错误: 程序包org.apache.http不存在
- 建立php开发环境(XAMPP + Xdebug+Zend Studio)
- ADO.NET笔记——带参数的查询防止SQL注入攻击
- 关于JDK中的集合总结(三)
- apache开源项目--PDFBox
- EasyUI知识点
- tomcat 绑定ipv4端口
- GWAS基因芯片数据预处理:质量控制(quality control)
- 循环语句--do...while
- LeetCode 237. Delete Node in a Linked List 删除链表结点(只给定要删除的结点) C++/Java
- 【转载 Hadoop&;Spark 动手实践 2】Hadoop2.7.3 HDFS理论与动手实践
- Android学习之基础知识五—编写聊天界面
- 单周期CPU设计的理论基础
- mitmdump 屏蔽443错误
- 知物由学 | 未来安全隐患:AI的软肋——故意欺骗神经网络
- UVALive 4423 String LD 暴力
- Install MySQL on Mac
- 关于 AfxSocketInit()