近期在处理一个项目的时候,有一个在线阅读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方法设置参数,达到屏蔽菜单功能,最后的效果图如下所示: