轉自http://topic.csdn.net/t/20040909/15/3356380.html
需要调用其它的插件,我只知道ScriptX,免费的功能有:四个边距,横打竖打,页眉,页脚  
  其它功能是收费的  
  如果需要可以到http://www.meadroid.com/scriptx/   下载和查看相关文档
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%>    
  <P><%=rs(0)%></P>    
  <%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=”\Software\Microsoft\Internet   Explorer\PageSetup”    
  \’//设置网页打印的页眉页脚为空    
  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/>    
   
  </p>    
  </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>  
     
   
  ============  
  zt

版权声明:本文为LisaLiu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/LisaLiu/archive/2010/04/29/504837.html