一:在jsp上显示pdf
二:如果访问者的计算机上没有装acrobat reader,直接用iframe或者直接用链接打开,那就不是打开文档,而是直接下载了,为了防止下载,想像到媒体文件的播放方式,加上一些官方的docs,考虑用用object标签使用pdf插件嵌入ie中,结果可行。
代码如下:
三:在网页中直接显示pdf格式的文件方便阅读。但是如果文件较大加载速度会很慢,另外如果客户端没有安装pdf阅读插件的话,也就看不了了,不过还是贴出来了,各取所需吗。(1.pdf要改成自己的pdf文件路径插入到页面文件中)
Html代码
标准浏览器中:
Java代码
IE7.0以上版本的浏览器中可用如下方法,低版本的IE会显示两个Object区域
Java代码
低版本浏览器中的处理方法1:
Java代码
低版本浏览器中的处理方法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代码
- <%@ 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>
二:如果访问者的计算机上没有装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">
- 你需要先安装Adobe Reader才能正常浏览文件,请点击这里下载Adobe Reader.
- </DIV>
- <OBJECT type="application/pdf" width=0 height=0 style="display:none">
- <DIV id="PDFNotKnown" style="display:none"> </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格式的文件方便阅读。但是如果文件较大加载速度会很慢,另外如果客户端没有安装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>