web中打印內容(去頁眉頁腳邊距)


<html>
<head>
    <title>打-印-預-覽</title>
    <script type="text/javascript" language="javascript">
        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, "");
                hkey_key = "margin_left";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.0");
                hkey_key = "margin_right";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.0");
                hkey_key = "margin_top";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.0");
                hkey_key = "margin_bottom";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.0");
            } catch (e) { }
        }
        //設置網頁打印的頁眉頁腳邊距為默認值 
        function pagesetup_default() {
            try {
                var RegWsh = new ActiveXObject("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");
                hkey_key = "margin_left";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.750000");
                hkey_key = "margin_right";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.750000");
                hkey_key = "margin_top";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.750000");
                hkey_key = "margin_bottom";
                RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.750000");
            } catch (e) { }
        }
        function setdivhidden(id) {//把指定id以外的層統統隱藏 
            var divs = document.getElementsByTagName("DIV");
            for (var i = 0; i < divs.length; i++) {
                if (divs.item(i).id != id)
                    divs.item(i).style.display = "none";
            }
        }
        function setdivvisible(id) {//把指定id以外的層統統顯示 
            var divs = document.getElementsByTagName("DIV");
            for (var i = 0; i < divs.length; i++) {
                if (divs.item(i).id != id)
                    divs.item(i).style.display = "block";
            }
        }
        function printpr() //預覽函數 
        {
            pagesetup_null(); //預覽之前去掉頁眉頁腳邊距
            setdivhidden("div1"); //打印之前先隱藏不想打印輸出的元素
            var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
            document.body.insertAdjacentHTML('beforeEnd', WebBrowser); //在body標簽內加入html(WebBrowser activeX控件) 
            WebBrowser1.ExecWB(7, 1); //打印預覽 
            WebBrowser1.outerHTML = ""; //從代碼中清除插入的html代碼 
            pagesetup_default(); //預覽結束后頁眉頁腳恢復默認值 
            setdivvisible("div1"); //預覽結束后顯示按鈕 
        }
        function print() //打印函數 
        {
            pagesetup_null(); //打印之前去掉頁眉,頁腳 
            setdivhidden("div1"); //打印之前先隱藏不想打印輸出的元素 
            var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>';
            document.body.insertAdjacentHTML('beforeEnd', WebBrowser); //在body標簽內加入html(WebBrowser activeX控件) 
            WebBrowser1.ExecWB(6, 1); //打印 
            WebBrowser1.outerHTML = ""; //從代碼中清除插入的html代碼 
            pagesetup_default(); //打印結束后頁眉頁腳恢復默認值 
            setdivvisible("div1"); //打印結束后顯示按鈕 
        } 
    </script>
</head>
<body>
    <form id="form1">
    <div id="div0">
        <input id="btnClose" type="button" onclick="Javascript:window.opener=null;window.close()"
            value="關閉" />
        <input type="button" value="打印預覽" onclick="printpr()">
        <input type="button" onclick="print()" value="打印">
    </div>
    <div id="div1">
        文字。。。
        <img alt="" src='<%=this.rooDir+this.Request.QueryString["URL"] %>' /></div>
    </form>
</body>
</html>

缺點:
有安全性提示,需要手動允許運行或者修改瀏覽器安全性設置。 
頁眉頁腳邊距有時候不靈光,需要多試幾次(不知道是不是我電腦的問題)。

頁眉頁腳邊距的默認值可以通過在注冊表里刪除一個項footer,關閉注冊表,隨便新打開一個瀏覽器頁面,打印預覽,再打開注冊表來查看各個項的默認值。
比如刪除HKEY_CURRENT_USER\software\Microsoft\Internet Explorer\PageSetup\下面的footer項。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM