• 实现网页的自动横向打印和边距设定


    实现网页的自动横向打印和边距设定

    2011年02月22日 星期二 14:39

    头疼了几天的网页自动打印,在查看了N多资料后终于实现了,直接上代码:

    <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="PrintPage.aspx.cs" Inherits="Demo.Web.PrintPage" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
    <title>打印单</title>
    <link href="../CSS/css-main.css" type="text/css" rel="stylesheet" media="all" />
    <script type="text/javascript">
    //注册表的网页打印路径
    var hkey_root="HKEY_CURRENT_USER" ;
    var hkey_path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\";
    var hkey_key;
    //打印指定区域
    function DoPrint()
    {
    //直接调用WebBrowser的打印,要打印预览的话是ExecWB(7,1)
    document.all.WebBrowser.ExecWB(6,1);
    }
    //设置纸张方向
    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){}
    }

    //设置默认的页眉页脚
    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){}
    }

    setTimeout("SetupLandscape()",1000);
    setTimeout("SetupPage()",2000);
    setTimeout("DoPrint()",3000);
    </script>

    </head>
    <body>
    <form id="form1" runat="server" enctype="multipart/form-data">
    <OBJECT id="WebBrowser" height="0" width="0" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" VIEWASTEXT ></OBJECT >
    <table width="100%">
    <tr><td>要打印的内容</td></tr>
    </table>
    </form>
    </body>
    </html>

  • 相关阅读:
    codeforces #586 ABC~D
    codeforces #585 div2 ABCD
    编译原理实验 NFA子集法构造DFA,DFA的识别 c++11实现
    codeforces #599 div2 ABCD
    codeforces #598 div3 ABCDF
    codeforces #587 div3 ABCDE
    codeforces educational round 73 div2 ABCD
    Mud Puddles ( bfs )
    2019牛客多校第十场B.Coffee Chicken(递归)
    2019牛客多校训练第七场A. String(暴力)
  • 原文地址:https://www.cnblogs.com/linbaba/p/2364490.html
Copyright © 2020-2023  润新知