前提是访问用户的计算机必须安装有AdobeReader,然后在网页设计时直接用超链接标记指向PDF文件即可;例如:
<ahref="helppdf">帮助</a>
思路这种类似百度文库的flash预览文档的东东,其主要思路如下:
将word/excel/ppt格式的文档,即office支持的主要文档格式通过OpenOffice转成pdf的插件,将文档先转成pdf格式。
通过swftools(>微软方:利用Office2007以上版本的一个PDF插件SaveAsPDFandXPSexe可以导出PDF文件,然后再利用免费的swftoolsexe工具生成swf格式的Flash文件,网页中加载flexpaper免费开源工具(有广告)实现Flash文件的预览。
优点:
1、有效的保护的源文件及文件的复制,不可复制也是缺点。
2、源码是自己的,版权有保证。
缺点:
1、服务器上必须安装Office软件。
2、导出PDF文件本身是个打印过程,Excel页面格式未设置,会出现一张表格打印出多页来,阅读体验大大下降。
3、转换过程非常耗费资源,低配的CPU几乎能跑满,服务器卡死。转换时间也非常漫长,这个时间主要是卡在了转换PDF上面。
4、转换完成服务器会遗留大量Excel、Word进程无法正常退出,有一些折中的解决办法,可以在网上搜索。
5、设置非常麻烦,本身微软官方的说法Office软件是客户端程序,在与IIS交互的时候本身就未设计。所以很多程序员把精力浪费在了调试程序上面。有两点在调试的时候需要注意。一个是在webconfig中设置 ,一个是在Office软件的设置中设置跟桌面交互。
6、严重浪费磁盘空间,一个文件还需要一个PDF文件、一个SWF文件,是否每次都转换,纠结是要硬盘空间呢还是要CPU的资源。function downloadIamge(selector, name) {
// 通过选择器获取img元素,
var img = documentquerySelector(selector)
// 将的src属性作为URL地址
var url = imgsrc
var a = documentcreateElement('a')
var event = new MouseEvent('click')
adownload = name || '下载名称'
ahref = url
adispatchEvent(event)
}<img src="1jpg" class="img1"></img>
<input type="button" value="download_image" onclick="downloadIamge('img1','1jpg')">
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)