首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > PowerDesigner >

在jsp上展示pdf||网页直接打开PDF 在IE中显示pdf文档的方法及参数设置

2012-07-03 
在jsp上显示pdf||网页直接打开PDF 在IE中显示pdf文档的方法及参数设置我的补充:若以object标签使用pdf插件

在jsp上显示pdf||网页直接打开PDF 在IE中显示pdf文档的方法及参数设置

我的补充:若以object标签使用pdf插件嵌入ie中,在客户端必须安装Adobe Reader 工具才可以。有的客户端虽然安装了Adobe Reader,但仍然无法查看,是因为可能使用了360安全卫士或其他工具把pdf插件给清理了,这时只需要打开一个pdf文件,点击工具条上的帮助--》修复Adobe Reader 安装,重新允许插件允许即可。

参考:http://kb2.adobe.com/cps/836/cpsid_83688.html

http://www.adobe.com/cn/support/security/bulletins/apsb06-20.html




一:在jsp上显示pdf   http://hi.baidu.com/velercy/blog/item/be708dea2c3236ddd439c9b4.html

<%@ page language="java" import="java.util.*,java.io.*"
pageEncoding="ISO-8859-1"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme() + "://"
    + request.getServerName() + ":" + request.getServerPort()
    + path + "/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
   <base href="<%=basePath%>">
</head>
<%
   out.clear();
   out = pageContext.pushBody();
   response.setContentType("application/pdf");

   try {
    String strPdfPath = new String("D://200701010001.PDF");
    //判断该路径下的文件是否存在
    File file = new File(strPdfPath);
    if (file.exists()) {
     DataOutputStream temps = new DataOutputStream(response
       .getOutputStream());
     DataInputStream in = new DataInputStream(
       new FileInputStream(strPdfPath));

     byte[] b = new byte[2048];
     while ((in.read(b)) != -1) {
      temps.write(b);
      temps.flush();
     }

     in.close();
     temps.close();
    } else {
     out.print(strPdfPath + " 文件不存在!");
    }

   } catch (Exception e) {
    out.println(e.getMessage());
   }
%>
<body>
   <br>
</body>
</html>





二:转载自:http://hi.baidu.com/cowboy_jia/blog/item/9bf4a6cb2e736afa52664fba.html



这是在为学院做精品课程网站的时候遇到的一个问题,老师提供的资料都是pdf格式的,如果访问者的计算机上没有装acrobat reader,直接用iframe或者直接用链接打开,那就不是打开文档,而是直接下载了,为了防止下载,想像到媒体文件的播放方式,加上一些官方的docs,考虑用用object标签使用pdf插件嵌入ie中,结果可行。
代码如下:

<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>Checking if Acrobat Reader installed (IE4+)...</TITLE>
        <SCRIPT for="window" event="onload"
<!--
            document.all [
                         document.all.PDFNotKnown ? "IfNoAcrobat" : "IfAcrobat"
                         ] .style.display = "block";
        //--></SCRIPT>
    </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">
            <a href="http://get.adobe.com/cn/reader/">你需要先安装Adobe Reader才能正常浏览文件,请点击这里下载Adobe Reader.</a>  

      </DIV>
        <OBJECT type="application/pdf" width=0 height=0 style="display:none">
            <DIV id="PDFNotKnown" style="display:none">&nbsp;</DIV>
        </OBJECT>
   <DIV id=showdiv
style="Z-INDEX: 0; LEFT:10px; WIDTH: 990px; POSITION: absolute; TOP: -8px; HEIGHT: 10px">
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="990" height="700" border="0" top="-10" name="pdf">
<param name="toolbar" value="false">
<param name="_Version" value="65539">

<param name="_ExtentX" value="20108">

<param name="_ExtentY" value="10866">

<param name="_StockProps" value="0">

<param name="SRC" value="MXL.pdf">
</object>
</DIV>
</BODY>
</HTML>





三:[转]网页中嵌入pdf格式文件   http://hi.baidu.com/xcb521/blog/item/69f0b48aea5377d8fd1f1000.html



在网页中直接显示pdf格式的文件方便阅读。但是如果文件较大加载速度会很慢,另外如果客户端没有安装pdf阅读插件的话,也就看不了了,不过还是贴出来了,各取所需吗。(1.pdf要改成自己的pdf文件路径插入到页面文件中)



Html代码
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">  
<param name="_Version" value="65539">  
<param name="_ExtentX" value="20108">  
<param name="_ExtentY" value="10866">  
<param name="_StockProps" value="0">  
<param name="SRC" value="1.pdf">  
</object>  

<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">
<param name="_Version" value="65539">
<param name="_ExtentX" value="20108">
<param name="_ExtentY" value="10866">
<param name="_StockProps" value="0">
<param name="SRC" value="1.pdf">
</object>
标准浏览器中:

Java代码
<object data="1.pdf" type="application/pdf" width="300" height="200">   
alt : <a href="1.pdf">test.pdf</a>   
</object>  

<object data="1.pdf" type="application/pdf" width="300" height="200">
alt : <a href="1.pdf">test.pdf</a>
</object>
IE7.0以上版本的浏览器中可用如下方法,低版本的IE会显示两个Object区域

Java代码
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">   
<param name="_Version" value="65539">   
<param name="_ExtentX" value="20108">   
<param name="_ExtentY" value="10866">   
<param name="_StockProps" value="0">   
<param name="SRC" value="1.pdf">   
<object data="1.pdf" type="application/pdf" width="300" height="200">   
alt : <a href="1.pdf">test.pdf</a>   
</object>   
</object>  

<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">
<param name="_Version" value="65539">
<param name="_ExtentX" value="20108">
<param name="_ExtentY" value="10866">
<param name="_StockProps" value="0">
<param name="SRC" value="1.pdf">
<object data="1.pdf" type="application/pdf" width="300" height="200">
alt : <a href="1.pdf">test.pdf</a>
</object>
</object>
低版本浏览器中的处理方法1:

Java代码
<!--[if IE]>   
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">   
<param name="_Version" value="65539">   
<param name="_ExtentX" value="20108">   
<param name="_ExtentY" value="10866">   
<param name="_StockProps" value="0">   
<param name="SRC" value="1.pdf">   
</object>   
<![endif]-->   
<!--[if !IE]> <!-->   
<object data="1.pdf" type="application/pdf" width="800" height="1050">      
alt : <a href='http://get.adobe.com/cn/reader'>Adobe Reader.pdf</a>   
</object>   
<!--<![endif]-->  

<!--[if IE]>
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">
<param name="_Version" value="65539">
<param name="_ExtentX" value="20108">
<param name="_ExtentY" value="10866">
<param name="_StockProps" value="0">
<param name="SRC" value="1.pdf">
</object>
<![endif]-->
<!--[if !IE]> <!-->
<object data="1.pdf" type="application/pdf" width="800" height="1050">  
alt : <a href='http://get.adobe.com/cn/reader'>Adobe Reader.pdf</a>
</object>
<!--<![endif]-->
   低版本浏览器中的处理方法2:通过CSS控制显示隐藏


Html代码
/* hides the second object from all versions of IE */   
  
  
* html object.hiddenObjectForIE { display: none; }   
/* display the second object only for IE5 Mac */   
/* IE Mac /*//*/   
* html object.hiddenObjectForIE { display: inline; }   
/**/  

/* hides the second object from all versions of IE */

* html object.hiddenObjectForIE { display: none; }
/* display the second object only for IE5 Mac */
/* IE Mac /*//*/
* html object.hiddenObjectForIE { display: inline; }
/**/

Html代码
<object classid="clsid:CA8A9780-280D-11CF-A24D-444553540000" width="800" height="1050" border="0">  
<param name="_Version" value="65539">  
<param name="_ExtentX" value="20108">  
<param name="_ExtentY" value="10866">  
<param name="_StockProps" value="0">  
<param name="SRC" value="1.pdf">  
<object data="1.pdf" type="application/pdf" width="300" height="200" class="hiddenObjectForIE">   
alt : <a href="1.pdf">test.pdf</a>  
</object>  
</object> 


参考:http://blog.csdn.net/yezi1305/article/details/5875760



热点排行