JavaScript 實(shí)現(xiàn)網(wǎng)頁(yè)打印處理
更新時(shí)間:2007年04月28日 00:00:00 作者:
1、控制"縱打"、 橫打”和“頁(yè)面的邊距。
(1)<script defer>
function SetPrintSettings() {
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"
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="&#106avascript">
function printsetup(){
// 打印頁(yè)面設(shè)置
wb.execwb(8,1);
}
function printpreview(){
// 打印頁(yè)面預(yù)覽
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 &#118alue="打印"
&#111nclick="&#106avascript:printit()">
<input type=button name=button_setup &#118alue="打印頁(yè)面設(shè)置"
#111nclick="&#106avascript:printsetup();">
<input type=button name=button_show &#118alue="打印預(yù)覽"
&#111nclick="&#106avascript:printpreview();">
<input type=button name=button_fh &#118alue="關(guān)閉"
&#111nclick="&#106avascript:window.close();">
WebBrowser.ExecWB(1,1) 打開(kāi)
Web.ExecWB(2,1) 關(guān)閉現(xiàn)在所有的IE窗口,并打開(kāi)一個(gè)新窗口
Web.ExecWB(4,1) 保存網(wǎng)頁(yè)
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印預(yù)覽
Web.ExecWB(8,1) 打印頁(yè)面設(shè)置
Web.ExecWB(10,1) 查看頁(yè)面屬性
Web.ExecWB(15,1) 好像是撤銷,有待確認(rèn)
Web.ExecWB(17,1) 全選
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 關(guān)閉窗體無(wú)提示
2、分頁(yè)打印
<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頁(yè)面打印時(shí)如何去掉頁(yè)面底部的路徑和頂端的頁(yè)碼編號(hào)
(1)ie的文件-〉頁(yè)面設(shè)置-〉講里面的頁(yè)眉和頁(yè)腳里面的東西都去掉,打印就不出來(lái)了。
(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"
'//設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳為空
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
'//設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳為默認(rèn)值
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頁(yè)碼,&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" &#118alue="清空頁(yè)碼" &#111nclick=pagesetup_null()> <input type="button" &#118alue="恢復(fù)頁(yè)嗎" &#111nclick=pagesetup_default()><br/>
</p>
</BODY>
</HTML>
4、浮動(dòng)幀打印
<SCRIPT LANGUAGE=&#106avascript>
function button1_&#111nclick() {
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組件實(shí)現(xiàn)WEB應(yīng)用中的本地特定打印
<script Language=VBScript>
function print_&#111nclick //打印函數(shù)
dim label
label=document.printinfo.label.&#118alue //獲得HTML頁(yè)面的數(shù)據(jù)
set objfs=CreateObject("Scripting.FileSystemObject") //創(chuàng)建FileSystem組件對(duì)象的實(shí)例
set objprinter=objfs.CreateTextFile ("LPT1:",true) //建立與打印機(jī)的連接
objprinter.Writeline("__________________________________") //輸出打印的內(nèi)容
objprinter.Writeline("| |")
objprinter.Writeline("| 您打印的數(shù)據(jù)是:"&label& " |”)
objprinter.Writeline("| |")
objprinter.Writeline("|_________________________________|")
objprinter.close //斷開(kāi)與打印機(jī)的連接
set objprinter=nothing
set objfs=nothing // 關(guān)閉FileSystem組件對(duì)象
end function
</script>
服務(wù)器端腳本:
<%………
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
……….%> //與數(shù)據(jù)庫(kù)進(jìn)行交互
HTML頁(yè)面編碼:
<HTML>
………
<FORM ID=printinfo NAME="printinfo" >
<INPUT type="button" &#118alue="打印>>" id=print name=print > //調(diào)用打印函數(shù)
<INPUT type=hidden id=text1 name=label &#118alue=<%=………%>> //保存服務(wù)器端傳來(lái)的數(shù)據(jù)
………
</HTML>
(1)<script defer>
function SetPrintSettings() {
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"
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="&#106avascript">
function printsetup(){
// 打印頁(yè)面設(shè)置
wb.execwb(8,1);
}
function printpreview(){
// 打印頁(yè)面預(yù)覽
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 &#118alue="打印"
&#111nclick="&#106avascript:printit()">
<input type=button name=button_setup &#118alue="打印頁(yè)面設(shè)置"
#111nclick="&#106avascript:printsetup();">
<input type=button name=button_show &#118alue="打印預(yù)覽"
&#111nclick="&#106avascript:printpreview();">
<input type=button name=button_fh &#118alue="關(guān)閉"
&#111nclick="&#106avascript:window.close();">
WebBrowser.ExecWB(1,1) 打開(kāi)
Web.ExecWB(2,1) 關(guān)閉現(xiàn)在所有的IE窗口,并打開(kāi)一個(gè)新窗口
Web.ExecWB(4,1) 保存網(wǎng)頁(yè)
Web.ExecWB(6,1) 打印
Web.ExecWB(7,1) 打印預(yù)覽
Web.ExecWB(8,1) 打印頁(yè)面設(shè)置
Web.ExecWB(10,1) 查看頁(yè)面屬性
Web.ExecWB(15,1) 好像是撤銷,有待確認(rèn)
Web.ExecWB(17,1) 全選
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 關(guān)閉窗體無(wú)提示
2、分頁(yè)打印
<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頁(yè)面打印時(shí)如何去掉頁(yè)面底部的路徑和頂端的頁(yè)碼編號(hào)
(1)ie的文件-〉頁(yè)面設(shè)置-〉講里面的頁(yè)眉和頁(yè)腳里面的東西都去掉,打印就不出來(lái)了。
(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"
'//設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳為空
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
'//設(shè)置網(wǎng)頁(yè)打印的頁(yè)眉頁(yè)腳為默認(rèn)值
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頁(yè)碼,&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" &#118alue="清空頁(yè)碼" &#111nclick=pagesetup_null()> <input type="button" &#118alue="恢復(fù)頁(yè)嗎" &#111nclick=pagesetup_default()><br/>
</p>
</BODY>
</HTML>
4、浮動(dòng)幀打印
<SCRIPT LANGUAGE=&#106avascript>
function button1_&#111nclick() {
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組件實(shí)現(xiàn)WEB應(yīng)用中的本地特定打印
<script Language=VBScript>
function print_&#111nclick //打印函數(shù)
dim label
label=document.printinfo.label.&#118alue //獲得HTML頁(yè)面的數(shù)據(jù)
set objfs=CreateObject("Scripting.FileSystemObject") //創(chuàng)建FileSystem組件對(duì)象的實(shí)例
set objprinter=objfs.CreateTextFile ("LPT1:",true) //建立與打印機(jī)的連接
objprinter.Writeline("__________________________________") //輸出打印的內(nèi)容
objprinter.Writeline("| |")
objprinter.Writeline("| 您打印的數(shù)據(jù)是:"&label& " |”)
objprinter.Writeline("| |")
objprinter.Writeline("|_________________________________|")
objprinter.close //斷開(kāi)與打印機(jī)的連接
set objprinter=nothing
set objfs=nothing // 關(guān)閉FileSystem組件對(duì)象
end function
</script>
服務(wù)器端腳本:
<%………
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
……….%> //與數(shù)據(jù)庫(kù)進(jìn)行交互
HTML頁(yè)面編碼:
<HTML>
………
<FORM ID=printinfo NAME="printinfo" >
<INPUT type="button" &#118alue="打印>>" id=print name=print > //調(diào)用打印函數(shù)
<INPUT type=hidden id=text1 name=label &#118alue=<%=………%>> //保存服務(wù)器端傳來(lái)的數(shù)據(jù)
………
</HTML>
您可能感興趣的文章:
- JavaScript 實(shí)現(xiàn)打印,打印預(yù)覽,打印設(shè)置
- JavaScript+CSS控制打印格式示例介紹
- javascript 打印內(nèi)容方法小結(jié)
- javascript 局部頁(yè)面打印實(shí)現(xiàn)代碼
- javascript 打印頁(yè)面代碼
- Javascript打印網(wǎng)頁(yè)部分內(nèi)容的腳本
- javascript下用ActiveXObject控件替換word書(shū)簽,將內(nèi)容導(dǎo)出到word后打印
- 用javascript實(shí)現(xiàn)頁(yè)面打印的三種方法
- javascript檢查瀏覽器是否已經(jīng)啟用XX功能
- JavaScript調(diào)用瀏覽器打印功能實(shí)例分析
相關(guān)文章
SpringMVC+bootstrap table實(shí)例詳解
本文通過(guò)實(shí)例給大家介紹了SpringMVC+bootstrap-table,需要的朋友可以參考下2017-06-06
JavaScript封裝axios的實(shí)現(xiàn)詳解
這篇文章主要介紹了JavaScript封裝axios的實(shí)現(xiàn),Axios是一個(gè)開(kāi)放源代碼庫(kù),使我們可以輕松地發(fā)出HTTP請(qǐng)求。 實(shí)際上,它是通過(guò)額外的超能力來(lái)fetch2022-09-09
JavaScript?中URL?查詢字符串(query?string)的序列與反序列化的方法
在 JavaScript 中,可以使用?URLSearchParams?對(duì)象來(lái)處理 URL 中的查詢字符串,這篇文章主要介紹了JavaScript?中URL查詢字符串(query?string)的序列與反序列化,需要的朋友可以參考下2023-01-01
微信小程序?qū)崿F(xiàn)橫向增長(zhǎng)表格的方法
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)橫向增長(zhǎng)表格的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07
JS獲取屏幕高度的簡(jiǎn)單實(shí)現(xiàn)代碼
下面小編就為大家?guī)?lái)一篇JS獲取屏幕高度的實(shí)現(xiàn)代碼。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-05-05
js面向?qū)ο笾o態(tài)方法和靜態(tài)屬性實(shí)例分析
這篇文章主要介紹了js面向?qū)ο笾o態(tài)方法和靜態(tài)屬性,實(shí)例分析了靜態(tài)方法和靜態(tài)屬性的原理及應(yīng)用,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01

