网页打开pdf文件屏蔽"打印"、"保存"解决方案
2011-01-03 14:28 ☆冷枫☆ 阅读(11352) 评论(4) 编辑 收藏 举报近期在处理一个项目的时候,有一个在线阅读pdf文件的需求,需求人的要求也比较BT要求只能看不能打印、保存,保存网页也不允许。酝酿了很久终于找到比较好的一个解决方案,解决办法如下:
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv="Content-Style-Type" content="text/css">
<META http-equiv="Content-Script-Type" content="text/javascript">
<TITLE>2011年度策略报告</TITLE>
</HEAD>
<BODY>
<NOSCRIPT>
Cannot determine if you have Acrobat Reader (or the full Acrobat)
installed <FONT size="-1">(because JavaScript is unavailable or
turned off)</FONT>.
</NOSCRIPT>
<DIV id="IfNoAcrobat" style="display:none">
你需要先安装Adobe Reader才能正常浏览文件,请点击这里下载Adobe Reader.
</DIV>
<div>
<p style="margin-top:-50px;margin-bottom:0px;">
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" id="Pdf1" width="100%" height="120%">
<param name="_Version" value="327680">
<param name="_ExtentX" value="2646">
<param name="_ExtentY" value="1323">
<param name="_StockProps" value="0">
<param name="SRC" value="20110104.pdf">
</object>
</p>
</div>
</BODY>
</HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=gb2312">
<META http-equiv="Content-Style-Type" content="text/css">
<META http-equiv="Content-Script-Type" content="text/javascript">
<TITLE>2011年度策略报告</TITLE>
</HEAD>
<BODY>
<NOSCRIPT>
Cannot determine if you have Acrobat Reader (or the full Acrobat)
installed <FONT size="-1">(because JavaScript is unavailable or
turned off)</FONT>.
</NOSCRIPT>
<DIV id="IfNoAcrobat" style="display:none">
你需要先安装Adobe Reader才能正常浏览文件,请点击这里下载Adobe Reader.
</DIV>
<div>
<p style="margin-top:-50px;margin-bottom:0px;">
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" id="Pdf1" width="100%" height="120%">
<param name="_Version" value="327680">
<param name="_ExtentX" value="2646">
<param name="_ExtentY" value="1323">
<param name="_StockProps" value="0">
<param name="SRC" value="20110104.pdf">
</object>
</p>
</div>
</BODY>
</HTML>
处理到这一步,基本上已经屏蔽了pdf工具的打印和保存的功能。原理其实并不是真正意义上的屏蔽而是通过样式将其功能隐藏了,主要是
<p style="margin-top:-50px;margin-bottom:0px;">
这段p标签起作用的,但是问题是处理到这一步还只是完成了一半,通过网页中的 文件-->另存为 或 打印还是能够保存的,接下来我们可以这样来处理:
window.open (\'../readpdf.html\',\'newwindow\',\'width=960,toolbar=no, menubar=no,scrollbars=yes,resizable=yes,location=no,status=no\')
通过js中的window.open方法设置参数,达到屏蔽菜单功能,最后的效果图如下所示: