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

一:在jsp上显示pdf

<%@ 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">&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格式的文件方便阅读。但是如果文件较大加载速度会很慢,另外如果客户端没有安装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; } 
/**/ 
<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>

Html代码

时间: 2024-10-01 03:59:13

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

PDF文档如何编辑,怎样设置PDF文本字体

PDF文件怎么编辑,如何设置字体?很多人都会编辑word.ppt这类文档,但是对于PDF格式的文档很少有人知道怎样去编辑修改,下面就来说说怎样编辑PDF,设置文本的字体. 在PDF阅读器中无法对文档内容进行编辑修改,所以要先用PDF编辑器来打开文档. 打开PDF文档后点击编辑内容工具,文档内容就可以进行编辑操作了. 设置字体,对文本格式进行修改,需要打开属性窗格.如果没有该窗格,可以选择"视图"-"其他窗格"-"属性窗格"来打开. 选择文本内容后

办公中的PDF文件怎么在线转换成可编辑的TXT文档

办公中的PDF文件怎么在线转换成可编辑的TXT文档,TXT格式一般阅读起来比较方便,特别是看文件小说什么的都比较适合转换成TXT格式存在手机里观看,因此我们经常需要将PDF文件转换成TXT文件,那怎么转换的呢,请看下面的介绍. 搜索关键词迅捷PDF在线转换器,点开界面. 点开转换器首页,点击文档转换,在下拉框中找到PDF转TXT. 点击选择文件,弹出文件夹选项,选择你需要转换的PDF文件添加. 选择完文件后,点击开始转换. 文件转换需要一些时间,耐心等待转换进度完成. 转换完成后,可点选择直接打

IIS6.0配置正常,但是显示“网页无法访问”,Httperr.log中显示全是“Connections_refused”,问题总结

转自:http://blog.csdn.net/foxeatapple/article/details/21983869 最近部门的Web服务器突然无法访问! 加班解决! 问题症状: 1.“Internet Explorer 无法显示该网页" 2.网站各项配置正常,昨天还能好好访问的 问题究竟在哪里呢? 通过分析HTTPERR.log文件,发现显示全是“Connections_refused”. 这也许就是问题的关键.如下图所示: 微软官网正好有解决办法:http://support.micro

Java环境中,word文档转PDF直接打开浏览而非下载

在平台上,需要把文档直接浏览而非下载,实现方法是先把文档转为PDF文件, 但在linux系统中确实汉字字库,所以转换失败,以下是解决方法 后面正式服务器也要添加字库,不然会转换出乱码文件,处理步骤如下:1.将Windows上字体文件 C:\Windows\Fonts目录,复制到服务器的/usr/share/fonts目录2.运行sudo fc-cache -f -v命令刷新字体缓存3.重启服务器 但正式服务器转换文件出错,tomcat没报错误,显示程序卡住,查错方法写个demo跑, 报“Can'

C#WebApi中swagger在线文档输出参数和输入参数显示注释

最近开发webapi 时需要生成在线文档,发现文档里面没注释,在网上查找资料都不齐全,或者看起来很难看懂. 花了点时间搞出来了这个,很多都是借鉴网上资料整理的,通俗易懂小白专用. 最终效果如上图所示 1.定义一个SwaggerControllerDescProvider实现ISwaggerProvider接口 using Swashbuckle.Swagger; using System; using System.Collections.Concurrent; using System.Col

不启动VS2013,直接打开帮助文档的方法

在使用VS2013做开发的时候,当我们需要查询一个知识点时,直接按"F1"键就可以打开配套的帮助文档.如果在没有打开VS2013的情况想查看它的帮助文档,我们应该怎么办呢?我们能否在桌面创建一个可以直接打开VS2013的快捷呢? 答案肯定是可以的.需要怎么创建这个快捷键?按照我们的直观感觉肯定是,找到"HlpViewer.exe"的安装目录:C:\Program Files (x86)\Microsoft Help Viewer\v2.1 , 然后右键发送快捷键到桌

django中根据用户的权限,显示change_list.html的内容和change_form.html中显示的字段

应用需求: 设置好用户的权限之后, 用户登录后台之后,需要根据用户的权限,用户属于哪个组,显示哪些成员. 并且进入用户编辑页面之后, 设置显示用户的字段和字段显示方式 class MyUserAdmin(UserAdmin): def get_queryset(self, request):  //通过get_queryset函数可以过滤出组的成员, 或者这个过滤的规则有你自己定也行 qs = super(MyUserAdmin, self).get_queryset(request) if r

在VSCode中编辑HTML文档时,在Dom标签上写style属性时智能提示的问题

首先在VSCode中打开一个HTML文件 然后点右下角的“选择语言模式” 然后点击配置HTML语言的基础设置 然后在打开的界面中(右侧) 输入如下代码 { "editor.quickSuggestions": { "other": true, "comments": true, "strings": true }, "[html]": { } } 然后重启VSCode 再试试看

PHP制作pdf文档方法

本篇博客是在看完 php+mysql web书以后自己的测试代码,虽然是测试代码,但不是简单的粘贴复制,为了学习thinkPHP框架,自己就用这个来做的,而且这本书已经有年头了.原书的代码中的方法,在查阅手册的时候,很多都已经弃用了,所以分享给大家还是有必要的.php制作pdf文档的方法有很多,我写的只是其中一种,大家有时间可以多看看.好了,进入正题 准备工作: 1.php手册(在线php关于pdf地址: http://php.net/manual/zh/intro.pdf.php ) 2.PD