ASP開發必備:WEB列印代碼大全

來源:互聯網
上載者:User
ASP開發必備:WEB列印代碼大全這篇文章主要介紹了如何使用ASP控制Web的各種列印效果,它能夠控制縱打、橫打和頁面邊距等。

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>

  
這裡的代碼我加到aspx中時,頁面會出現問題。
怎麼弄好呢。我還想只列印多frame頁面的其中一個frame,該如何?嗎?不懂誒
程式碼:<script language="javascript">  
  function printsetup(){  
  // 列印版面設定  
  wb.execwb(8,1);  
  }  
  function printpreview(){  
  // 列印頁面預覽  
  
  wb.execwb(7,1);  
  
  
  }  

  function printit()  
  {  
  if (confirm('確定列印嗎?')) {  
  wb.execwb(6,6)  
  }  
  }  
</script>
<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頁面列印時如何去掉頁面底部的路徑和頂端的頁碼編號  
  ie的檔案-〉版面設定-〉講裡面的頁首和頁尾裡面的東西都去掉,列印就不出來了。  
      程式碼:<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>  ---------------------------------------------------------------------------------------------
  <script language="Javascript">
function printit(){ 
if (NS) {
    window.print() ; 
} else {
    var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
document.body.insertAdjacentHTML('beforeEnd', WebBrowser);
    WebBrowser1.ExecWB(7, 2);//Use a 1 vs. a 2 for a prompting dialog box
WebBrowser1.outerHTML = ""; 
}
}
  </script>
  <script language="Javascript"> 
var NS = (navigator.appName == "Netscape");
var VERSION = parseInt(navigator.appVersion);
if (VERSION > 3) {
    document.write('<form><input type=button value="javascript" name="Print" onClick="printit()"></form>');       
}
  </script>




相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.