打印java web頁面內容代碼大全

打印java web頁面內容代碼大全

 

第一種方法:指定不打印區域

使用CSS,定義一個.noprint的class,將不打印的內容放入這個class內。

詳細如下:

<style media=print type="text/css">  
.noprint{visibility:hidden}  
</style>  
要打印的內容。哈哈!
<p class="noprint">將不打印的代碼放在這裏。</p>
<a href="javascrīpt:window.print()" target="_self">打印</a>

第二種方法:指定打印區域(這個方法最方便,我的大愛

把要打印的內容放入一個 span或div,然後通過一個函數打印。

&nbsp;
 <input type=button id=button_print name=button_print
      value="打印本單據" οnclick="javascript:printit(‘div1’);">

<span id='div1'>把要打印的內容放這裏</span>
<p>所有內容</p>

 

<input type=button id=button_print name=button_print
      value="打印本單據" οnclick="javascript:printit(‘div2’);">
<div id="div2">div2的內容</div>

 

注:套打的時候,forEach循環中方法調用爲:div${status.index+1 },層和方法都需要


<script language="javascript">
  //提示窗口
          function printit(MyDiv)
          {
          if (confirm('確定打印嗎?')) {
               //var newstr = document.all.item(myDiv).innerHTML;
              var newstr = document.getElementByIdx_x(MyDiv).innerHTML;
              //alert(newstr);
              var oldstr = document.body.innerHTML;
              document.body.innerHTML = newstr;
              window.print();
              document.body.innerHTML = oldstr;
              return false;
           }
         }
 </script>

如果要打印的只是整個頁面中的一小部分,就最好採用第二種方法。

第三種方法:如果要打印的頁面排版和原web頁面相差很大,採用此種方法。

點打印按鈕彈出新窗口,把需要打印的內容顯示到新窗口中,在新窗口中調用window.print()方法,然後自動關閉新窗口。

 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="打印" οnclick="javascript:printit()">
<input type=button name=button_setup value="打印頁面設置" οnclick="javascript:printsetup();">
<input type=button name=button_show value="打印預覽" οnclick="javascript:printpreview();">
<input type=button name=button_fh value="關閉" οnclick="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="清空頁碼" οnclick=pagesetup_null()> <input type="button" value="恢復頁嗎"

οnclick=pagesetup_default()><br/>
</p>
</BODY>
</HTML>

4、浮動幀打印

<SCRIPT LANGUAGE=javascript>
function button1_onclick() {
var odoc=windows.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>

5、用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>

第四種方法:去除頁眉頁腳

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>PcyearSeo</title>
<head>
<!--關鍵代碼部分-->
<script language="javascript" type="text/javascript">  
function doPrint() {   
bdhtml=window.document.body.innerHTML;   
sprnstr="<!--startprint-->";   
eprnstr="<!--endprint-->";   
prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);   
prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr));   
window.document.body.innerHTML=prnhtml;   
window.print();
}  
var hkey_root,hkey_path,hkey_key  
hkey_root="HKEY_CURRENT_USER"  
hkey_path="/Software/Microsoft/Internet Explorer/PageSetup/ " 
function pagesetup_null(){  
try{  
var RegWsh=new ActiveXObject("WScript.Shell")  
hkey_key="header"    
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"")  
hkey_key="footer"  
RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"")  
}catch(e){}  
}  
</script>  
<!--關鍵代碼部分-->
</HEAD>
<BODY>
<DIV align=center>
<p>
    <!--關鍵代碼部分-->
    <OBJECT   id="WebBrowser"   classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"   height="0"   width="0"   VIEWASTEXT></OBJECT>
    <!--關鍵代碼部分-->
    您打印內容開始:
</p>
<p>
    <!--startprint-->
    <div style="border:1px solid #999999; width:auto;"><img src="2010723115926746.jpg"/></div>
    <!--endprint-->
</p>
<p>打印的內容結束</p>
<p class="noprint">
    <!--class="noprint"的作用是標示不需要打印的地方,任何一個標籤的class屬性都可以設置,用於去除不需要打印的地方-->
    <INPUT οnclick=javascript:doPrint() type=button value=打印 name=button_print /> 
</p>
</DIV>
</body>
</html>

發佈了28 篇原創文章 · 獲贊 11 · 訪問量 9萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章