WEB页面开发的简单易用的打印方法

 1、控制"纵打"、 横打”和“页面的边距。
< script defer >  

function  SetPrintSettings() 
  
// -- advanced 
features 
  factory.printing.SetMarginMeasure(
2// 
measure margins in inches 
  
factory.SetPageRange(
false13// 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
= " java script:printit() " >  
< input 
type
= button  name = button_setup value = " 打印页面设置 "  

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

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

onclick
= " java script: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
= " SoftwareMicrosoftInternet 
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
= " ooter "  
    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
= " ooter "  
    
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
= windows.open( "" , " print " ); 
    
pwin.documents.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 >
首先引入一个WebBrowser在需要打印页面,可以直接添加: 复制代码 代码如下: <object id="WebBrowser" classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height="0" width="0"> </object> 2 .页面设置和打印预览 如下所示,直接调用即可 复制代码 代码如下: document.all.WebBrowser.ExecWB(6,6) 直接打印 document.all.WebBrowser.ExecWB(8,1) 页面设置 document.all.WebBrowser.ExecWB(7,1) 打印预览 3 隐藏不打印页面元素和分页 CSS 有个Media 属性,可以分开设置打印和显示的格式。 如 <style media="print" type="text/css"> …</style> 中间的格式将只在打印时起作用,不会影响显示界面。 所以可以设定 <style media="print" type="text/css"> .Noprint{display:none;} .PageNext{page-break-after: always;} </style> 然后给不想打印页面元素添加: class="Noprint" ,那就不会出现在打印打印预览中了。 想分页的地方添加: <div class="PageNext"></div> 就可以了。 4.打印页面的特定部分 通过将需要打印的特定部分另建一个页面,然后装入主页面的一个IFrame中,再调用IFrame的打印方法,只打印IFrame中的内容实现的。 如: <iframe visible" name="FrameId" width="100%" height="30%" src="NeedPrintedPage.asp"></iframe> 下面的pringFrame js函数将只打印Iframe中的内容,可以直接引用使用,如printFrame(FrameId); 复制代码 代码如下: window.print = printFrame; // main stuff function printFrame(frame, onfinish) { if ( !frame ) frame = window; function execOnFinish() { switch ( typeof(onfinish) ) { case "string": execScript(onfinish); break;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值