日期:2014-05-16  浏览次数:20371 次

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=