zoukankan      html  css  js  c++  java
  • 关于WEB 打印

    WEB打印支持套打一直是围绕着我很长时间的一个问题。

    最近去网上查了下,针对WEB打印最好的办法还是采用OCX控件解决。

    1。先找到一个叫:jatoolsPrinter

    http://www.jatools.com/print/?gclid=CLLF89HMzKUCFQPhbgodhjSTlQ

    这个控件应该基本解决了打印以及套打的问题,可惜是收费的大概几千块钱。

    2。另外找到一个免费的:

    http://www.4fang.net/apps/d4/Default.aspx?tid=2793&pn=4221&nodeid=4266

    PAZU 组件组件。

    这个虽然免费,但是要注册,并且不支持套打。

    另:开发包已下载到:D:\Nouse\JavaScriptTest\pazu

    ----------------------------------------------------------------------------------

    3。通过IE打印的工作原理:

    直接通过IE打印,需要设置打印CSS,这样就可以控制那些是不需要打印的。

    <style type="text/css" media="print">
    #Foot,#Header,#backSearch,.tb-detail .action,.notice {display:none;}

    #header,#footer,#nav, #aside {display:none;}

    .title{visibility:hidden;}
    .tb-detail{margin:10px auto;}

    #container, #main {
        margin: 0;
        600px;
    }
    .title, .line {
        display: none;
    }

    .receipt-save {
        visibility: hidden;
    }
    .tb-detail {
        display: none;
    }

    html, body {
        margin: 0;
        padding: 0;
    }
    </style>

    设置打印页眉等:就直接修改注册表,见:

    http://zhidao.baidu.com/question/64454992

    另:

    我印象中有几种办法: 1。用控件或者自己做控件 http:※※www.meadroid.com※※scriptx※※sxdownload.asp 2。在需要打印的机器的IE上,点文件菜单,然后页面设置,把里面的页眉页脚全部去掉,打印出来就没有了。 下面是Javascript去除的代码,前提是IE安全设置为低: <script 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 Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); HKEY_Key="footer"; Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,""); } catch(e){} } //设置网页打印的页眉页脚为默认值 function PageSetup_Default() { try { var Wsh=new ActiveXObject("WScript.Shell"); HKEY_Key="header"; Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&w&b页码,&p/&P"); HKEY_Key="footer"; Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"&u&b&d"); } catch(e){} } </script>

    也就是说,通过IE打印,是将需要设置的信息写到注册表中,打印就可以了。目前很多ACTIVEX控件的工作原理都是如此,比如PAZU。

  • 相关阅读:
    Django修改数据库时出错 django.db.utils.OperationalError: (1091, "Can't DROP 'content'; check that column/key exists")
    ini配置文件必知
    常用的两个批处理
    windows Path变量优先级
    curl开源库编译
    VS属性页的目录类型
    连通域去噪
    C++调用V8与JS交互
    VS2010,Qt插件安装使用
    utf8转gbk,libcurl中文乱码处理
  • 原文地址:https://www.cnblogs.com/barryhong/p/1894238.html
Copyright © 2011-2022 走看看