zoukankan      html  css  js  c++  java
  • 使用浏览器自带打印功能,去除页眉页脚,横屏打印等

    HTML代码


    <head>
        <script src="/Scripts/printCurrentPage.js" type="text/javascript"></script>
    </head>
    <body>
        <object id='WebBrowser' width="0" height="0" classid='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'
            viewastext>
        </object>

    Javascript代码printCurrentPage.js文件


    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) { alert(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");
        } catch (e) { alert(e); }
    }
    
    function printMethod() {
        pagesetup_null();
        //window.print();
        WebBrowser.ExecWB(6, 6);
        //WebBrowser.ExecWB(6, 1);
        //WebBrowser.ExecWB(7, 1);
        window.opener = null;
        window.close();
    }
    //设置默认的页眉页脚 
    function SetupPage() {
        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, "&b&d") //去掉了&u 因为我不想显示当前打印页的网址 
            hkey_key = "margin_bottom";
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39"); //0.39相当于把页面设置里面的边距设置为10 
            hkey_key = "margin_left";
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39");
            hkey_key = "margin_right";
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39");
            hkey_key = "margin_top";
            RegWsh.RegWrite(hkey_root + hkey_path + hkey_key, "0.39");
        }
        catch (e) { }
    }
    //设置纸张方向 
    function SetupLandscape() {
        try {
            var wsShell = new ActiveXObject("WScript.Shell");
            //打印页面的Menubar必须可见,此操作类似按键盘上的Alt+F+U也就是 调出页面设置对话框 
            wsShell.sendKeys('%fu');
            //此操作类似按键盘上的Alt+A也就是 设置横向打印 
            wsShell.sendKeys('%a');
            //此操作类似按键盘上的回车 页面设置对话框的默认焦点在 确定上 所以直接确定 
            wsShell.sendKeys('{ENTER}');
        }
        catch (e) { }
    }
    window.onload = function () {
        //printMethod();
        SetupLandscape();
        //setTimeout("printMethod()", 2000);
        //setTimeout("SetupLandscape()", 1000);
        //setTimeout("SetupPage()", 2000);
        //setTimeout("printMethod()", 3000);
    }

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    spring中bean配置和bean注入
    使用nginx搭建https服务器(转)
    Mysql-Proxy实现mysql读写分离、负载均衡 (转)
    RSync实现文件备份同步
    解决bash: mysql: command not found 的方法
    Proftp设置虚拟用户(转)
    详解zabbix安装部署(Server端篇) (转)
    CCKiller:Linux轻量级CC攻击防御工具,秒级检查、自动拉黑和释放 《CCKiller:Linux轻量级CC攻击防御工具,秒级检查、自动拉黑和释放》来自张戈博客
    Linux系统防CC攻击自动拉黑IP增强版Shell脚本 《Linux系统防CC攻击自动拉黑IP增强版Shell脚本》来自张戈博客
    linux中防CC攻击两种实现方法(转)
  • 原文地址:https://www.cnblogs.com/ful1021/p/4804377.html
Copyright © 2011-2022 走看看