`
gongchangming
  • 浏览: 45768 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

jsp页面打印功能

阅读更多

 收藏
重点:
<OBJECT   id=WebBrowser   classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2   height=0   width=0   VIEWASTEXT>
</OBJECT>
<input   type=button   value=打印       onclick= "document.all.WebBrowser.ExecWB(6,1) "   class= "NOPRINT ">
<input   type=button   value=直接打印   onclick= "document.all.WebBrowser.ExecWB(6,6) "   class= "NOPRINT ">
<input   type=button   value=页面设置   onclick= "document.all.WebBrowser.ExecWB(8,1) "   class= "NOPRINT ">
<input   type=button   value=打印预览   onclick= "document.all.WebBrowser.ExecWB(7,1) "   class= "NOPRINT ">

注意:
1、CSS对打印的控制:
<!--media=print   这个属性可以在打印时有效-->
<style   media=print>
.Noprint{display:none;}
.PageNext{page-break-after:   always;}
</style>

Noprint样式可以使页面上的打印按钮等不出现在打印页面上,这一点非常重要,因为它可以用最少的代码完成最需要的功能

PageNext样式可以设置分页,在需要分页的地方 <div   class= "PageNext "> </div> 就OK了,呵呵

2、表格线粗细的设置,更是通过样式表:

<style>
.tdp
{
    border-bottom:   1   solid   #000000;
    border-left:   1   solid   #000000;
    border-right:   0   solid   #ffffff;
    border-top:   0   solid   #ffffff;
}
.tabp
{
    border-color:   #000000;

        border-collapse:collapse;
}
</style>

或者:

<style>
.TdCs1   {
        border:solid   windowtext   1.0pt;
}
.TdCs2   {
        border:solid   windowtext   1.0pt;   border-left:none;
}
.TdCs3   {
        border-top:none;
        border-left:solid   windowtext   1.0pt;
        border-bottom:solid   windowtext   1.0pt;
            border-right:solid   windowtext   1.0pt;
}
.TdCs4   {
        border-top:none;
        border-left:none;
        border-bottom:solid   windowtext   1.0pt;
            border-right:solid   windowtext   1.0pt;
}
.underline   {
        border-top-style:   none;
        border-right-style:   none;
        border-bottom-style:   solid;
        border-left-style:   none;
        border-bottom-color:   #000000;
}
</style>


1、控制 "纵打 "、   横打”和“页面的边距。
(1) <script   defer>
function   SetPrintSettings()   {
 //   --   advanced   features
 factory.printing.SetMarginMeasure(2)   //   measure   margins   in   inches
 factory.SetPageRange(false,   1,   3)   //   need   pages   from   1   to   3
 factory.printing.printer   =   "HP   DeskJet   870C "
 factory.printing.copies   =   2
 factory.printing.collate   =   true
 factory.printing.paperSize   =   "A4 "
 factory.printing.paperSource   =   "Manual   feed "

 //   --   basic   features
 factory.printing.header   =   "This   is   MeadCo "
 factory.printing.footer   =   "Advanced   Printing   by   ScriptX "
 factory.printing.portrait   =   false
 factory.printing.leftMargin   =   1.0
 factory.printing.topMargin   =   1.0
 factory.printing.rightMargin   =   1.0
 factory.printing.bottomMargin   =   1.0
}
</script>

(2)
<script   language= "javascript ">
  function   printsetup(){
  //   打印页面设置
  wb.execwb(8,1);
  }
  function   printpreview(){
  //   打印页面预览
    
  wb.execwb(7,1);
     
    
  }

  function   printit()
  {
  if   (confirm( '确定打印吗? '))   {
  wb.execwb(6,6)
  }
  }
   </script>
</head>
<body>
<OBJECT   classid= "CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 "

height=0   id=wb   name=wb   width=0> </OBJECT>
<input   type=button   name=button_print   value= "打印 "

onclick= "javascript:printit() ">
<input   type=button name=button_setup   value= "打印页面设置 "

onclick= "javascript:printsetup(); ">
<input   type=button name=button_show   value= "打印预览 "

onclick= "javascript:printpreview(); ">
<input   type=button   name=button_fh   value= "关闭 "

onclick= "javascript:window.close(); ">

------------------------------------------------
关于这个组件还有其他的用法,列举如下:
WebBrowser.ExecWB(1,1)   打开
Web.ExecWB(2,1)   关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1)   保存网页
Web.ExecWB(6,1)   打印
Web.ExecWB(7,1)   打印预览
Web.ExecWB(8,1)   打印页面设置
Web.ExecWB(10,1)   查看页面属性
Web.ExecWB(15,1)   好像是撤销,有待确认
Web.ExecWB(17,1)   全选
Web.ExecWB(22,1)   刷新
Web.ExecWB(45,1)   关闭窗体无提示

2、分页打印
<HTML>
<HEAD>
<STYLE>   
  P   {page-break-after:   always}
</STYLE>
</HEAD>
<BODY>
<%while   not   rs.eof%>

<%=rs(0)%>

<%rs.movenext%>
<%wend%>
</BODY>
</HTML>

3、ASP页面打印时如何去掉页面底部的路径和顶端的页码编号
(1)ie的文件-〉页面设置-〉讲里面的页眉和页脚里面的东西都去掉,打印就不出来了。
(2) <HTML>
<HEAD>
<TITLE>   New   Document   </TITLE>
<META   NAME= "Generator "   CONTENT= "EditPlus ">
<META   NAME= "Author "   CONTENT= "YC ">
<script   language= "VBScript ">
dim   hkey_root,hkey_path,hkey_key
hkey_root= "HKEY_CURRENT_USER "
hkey_path= "SoftwareMicrosoftInternet   ExplorerPageSetup "
'//设置网页打印的页眉页脚为空
function   pagesetup_null()
  on   error   resume   next
  Set   RegWsh   =   CreateObject( "WScript.Shell ")
  hkey_key= "header "  
  RegWsh.RegWrite   hkey_root+hkey_path+hkey_key, " "
  hkey_key= "footer "
  RegWsh.RegWrite   hkey_root+hkey_path+hkey_key, " "
end   function
'//设置网页打印的页眉页脚为默认值
function   pagesetup_default()
  on   error   resume   next
  Set   RegWsh   =   CreateObject( "WScript.Shell ")
  hkey_key= "header "  
  RegWsh.RegWrite   hkey_root+hkey_path+hkey_key, "&w&b页码,&p/&P "
  hkey_key= "footer "
  RegWsh.RegWrite   hkey_root+hkey_path+hkey_key, "&u&b&d "
end   function
</script>
</HEAD>

<BODY>
<br/>
<br/>
<br/>
<br/>
<br/>
<br/> <p   align=center>
<input   type= "button "   value= "清空页码 "   onclick=pagesetup_null()>   <input   type= "button "   value= "恢复页吗 "   onclick=pagesetup_default()> <br/>


</BODY>
</HTML>
4、浮动帧打印
<SCRIPT   LANGUAGE=javascript>
function   button1_onclick()   {
  var   odoc=window.iframe1.document;
  var   r=odoc.body.createTextRange();
  var   stxt=r.htmlText;
  alert(stxt)
  var   pwin=window.open( " ", "print ");
  pwin.document.write(stxt);
  pwin.print();
}
</SCRIPT>
4、用FileSystem组件实现WEB应用中的本地特定打印
<script   Language=VBScript>
function   print_onclick   //打印函数
dim   label
label=document.printinfo.label.value   //获得HTML页面的数据
set   objfs=CreateObject( "Scripting.FileSystemObject ")   //创建FileSystem组件对象的实例
set   objprinter=objfs.CreateTextFile   ( "LPT1: ",true)   //建立与打印机的连接
objprinter.Writeline( "__________________________________ ")   //输出打印的内容
objprinter.Writeline( "|   | ")
objprinter.Writeline( "|   您打印的数据是: "&label&   "   |”)
objprinter.Writeline( "|   | ")
objprinter.Writeline( "|_________________________________| ")
objprinter.close   //断开与打印机的连接
set   objprinter=nothing
set   objfs=nothing   //   关闭FileSystem组件对象
end   function
</script>
服务器端脚本:
<%………
set   conn=server.CreateObject   ( "adodb.connection ")
conn.Open   "DSN=name;UID=XXXX;PWD=XXXX; "
set   rs=server.CreateObject( "adodb.recordset ")
rs.Open(“select   ……”),conn,1,1
……….%>   //与数据库进行交互
HTML页面编码:
<HTML>
………
<FORM   ID=printinfo   NAME= "printinfo "   >
<INPUT   type= "button "   value= "打印> > "   id=print   name=print   >   //调用打印函数
<INPUT   type=hidden   id=text1   name=label   value= <%=………%> >   //保存服务器端传来的数据
………
</HTML>

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/woaitiyu/archive/2008/10/27/3161181.aspx

分享到:
评论
1 楼 曾经、流泪过 2010-08-16  
顶下

相关推荐

    JSP实现打印功能

    在这个特定的场景下,"JSP实现打印功能"指的是如何利用JSP来控制用户浏览器进行文档打印,特别是指定网页中的"BODY"部分内容。下面我们将详细探讨如何实现这一功能。 首先,我们需要理解浏览器的打印机制。通常,...

    实现jsp打印的控件

    标题中的“实现jsp打印的控件”就是针对这样的需求,它涉及到如何在JSP页面中添加打印功能,包括打印配置、预览和实际的打印操作。 1. **打印控件的实现原理** - 打印控件通常通过JavaScript或者Java Applet来实现...

    页面添加打印功能实例jsp

    打印 页面打印 实例 jsp页面打印 打印功能实例

    jsp打印功能,经典

    jsp打印功能经典 ...jsp打印功能是一种常用的Web开发技术,通过将打印功能集成到jsp页面中,用户可以直接在浏览器中打印所需的内容。 首先,在jsp页面中引入一个WebBrowser控件,可以直接添加以下代码: ...

    html,jsp操作页面打印例子

    在网页开发中,有时我们需要为用户提供打印功能,例如打印网页内容、报表或其他文档。这个"html,jsp操作页面打印例子"就是一个很好的学习资源,它涵盖了如何在HTML和JSP页面中实现这一功能的关键知识点。 首先,...

    jsp打印功能有列子源代码.rar

    在JSP中实现打印功能,可以让用户方便地将网页内容输出到打印机,这对于报表生成、文档分享等场景非常实用。本教程将通过一个具体的例子深入解析JSP的打印功能。 首先,我们需要理解JSP页面的基本结构,它由HTML...

    Jsp页面中实现打印打印预览及打印设置

    ### JSP 页面中的打印功能实现详解 在网页开发过程中,为用户提供打印功能是非常常见的需求之一。本文将基于提供的示例代码来详细介绍如何在 JSP 页面中实现打印、打印预览以及打印设置等功能。 #### 一、HTML ...

    jsp页面打印

    在开发过程中,有时我们需要控制用户从网页打印时的页面布局,包括设置页眉和页脚。本篇文章将深入探讨如何实现这一功能,并涉及与`修改页眉`和`修改页脚`相关的技术。 首先,当用户点击打印按钮时,浏览器通常会...

    JSP打印\JAVA的JSP打印代码

    本文将详细介绍如何利用JSP(Java Server Pages)技术实现Word和Excel文档的动态生成与打印功能。通过结合Word和Excel的设计优势,我们可以创建出既美观又实用的报表,并将其转化为JSP页面进行动态填充数据和打印。...

    java定位打印实例demo,通过jsp来打印

    Java定位打印技术是一种在网页上...总之,Java定位打印结合JSP能提供强大的网页打印能力。通过学习和实践本实例中的代码,开发者能够掌握如何在网页环境中实现精准的打印控制,为用户提供更加便捷和高质量的打印体验。

    JSP报表打印的一种简单解决方案

    在企业级应用开发中,经常需要将数据以报表的形式展示给用户,并提供打印功能。传统的报表打印方式往往涉及复杂的编程逻辑和技术栈,增加了项目的复杂性和维护成本。本文介绍了一种基于JSP的简单报表打印解决方案,...

    打印功能(jsp报表)

    本篇内容旨在介绍如何在JSP页面中实现一个简单的打印功能以及报表设计。 #### JSP报表基础知识 JSP(JavaServer Pages)是一种用于生成动态网页的技术。它允许开发人员将Java代码嵌入到HTML文档中,从而可以创建...

    页面实现预览和打印(页面整体打印和局部打印)

    在网页开发中,预览和打印功能是必不可少的,尤其对于提供信息展示或者报表的网站。本主题将详细探讨如何在HTML和JSP页面中实现这两种功能,包括整体页面的预览和打印以及局部元素(如表格和文档)的处理。 首先,...

    jsp、web打印功能Lodpo6.0

    在Web应用程序开发中,打印功能是一项常见的需求,允许用户从浏览器直接打印网页内容或者特定的文档。Java Server Pages (JSP) 提供了这样的能力,通过集成第三方库,如Lodop,可以轻松实现Web打印。Lodop是一款高效...

    Java Jsp 调用ireport动态模板打印

    iReport是一款开源的报表设计工具,它可以与Java、JSP、Servlets等进行集成,为开发者提供灵活的报表生成和打印功能。在这个场景下,我们主要讨论如何利用iReport创建动态模板,以及如何通过JSP和Java代码来调用这些...

    jsp实现网页打印(pdf方法)

    将网页中数据表以pdf方式打印,网上发布的相关解决方法都属于互相copy,且不完善,有很多漏洞。当初我在做的时候为此非常头疼,最后查看了很多资料,将次功能最终实现,为方便大众,将个人的例子上传,以供需要的...

    jsp 分页 局部打印 技术 的实现

    在Web开发中,特别是使用JSP进行页面设计时,分页和打印功能是提升用户体验的重要方面。本文将深入探讨如何在JSP页面中实现分页局部打印,主要关注的技术点包括:JSP分页原理、局部打印的实现方法、以及使用Lodop...

    java jsp 打印

    通常,这样的系统会包含一个JSP页面用于展示待打印的内容,然后通过JavaScript或服务器端的Java代码触发打印操作。具体实现方式可能因项目需求而异,但基本思路遵循上述的打印机制。 总结,Java JSP打印功能的实现...

    报表与打印(jsp).rar

    在这个"报表与打印(jsp).rar"压缩包中,很可能是包含了一组与JavaServer Pages (JSP)技术相关的资源,用于实现报表的生成和打印功能。 首先,我们来深入了解一下报表。报表通常由一系列的数据和图表组成,它们可以...

    javaweb实现打印功能

    在实现打印功能时,通常在JSP页面上设计用户界面,然后通过JavaScript或者AJAX与后端Servlet进行数据交换。 1. **JSP页面设计**:在JSP页面中,我们可以创建一个按钮或链接,当用户点击时触发打印操作。页面上需要...

Global site tag (gtag.js) - Google Analytics