zoukankan      html  css  js  c++  java
  • LODOP设置纸张无效问题

    有的打印机不支持自定义纸张,或不支持当前设置的纸张尺寸,会造成纸张尺寸和代码里设置的尺寸不一致的情况。
    现象:
    1.代码一样,纸张语句设置正确,有的打印机纸张正常,有的打印机不正常。
    2.代码一样,纸张语句设置正确,宽度正常,高度不正常。(或相反)
    3.代码一样,纸张语句设置正确,虚拟打印机测试正常,真实打印机不正常。

    简短问答区域:
    纸张设置,参考样例5 http://www.c-lodop.com/demolist/PrintSample5.html
    用xps或pdf虚拟打印机测试一下(测试可用样例5),如果虚拟打印机输出的是正确的纸张,真实打印机不是,可能是打印机不支持该自定义纸张。
    选择该真实打印机,在打印预览下方状态栏查看一下纸张大小,有的打印机不支持该自定义纸张。

    用官网样例5直接输入尺寸,在预览里选择不同打印机 ,对比预览效果,有的打印机不支持自定义纸张,有的有可打区域。

    打印机不支持就不行了,不用自定义纸张,选择打印机本身自带的纸张试试,打印机自带的纸张肯定支持。
    参考样例5步骤3http://www.c-lodop.com/demolist/PrintSample5.html,获取打印机的纸张列表,纸张语句宽高设置成0,第四个参数纸张名称在宽高无效情况下会有效,就会根据纸张名称走,获取的是打印机本身自带的纸张名称,所以一定会支持打印机自带的纸张。
    如果打印机自带的纸张没有所需要的尺寸,LODOP设置的自定义纸张不支持,那么就没办法了,只能换打印机或换用打印机支持的纸张。
    纸张的一些优先级 http://blog.sina.com.cn/s/blog_721e77e50100wto6.html

    非简单问答,正文介绍:
    由于打印机千差万别,不是所有打印机都支持LODOP自定义纸张,而且打印机可打区域本身也有差异。关于不同打印机的不同问题,可以用打印维护微调(相关博文:Lodop打印维护PRINT_SETUP本地缓存ini文件LODOP不同打印机出现偏移问题LODOP批量打印多页模版进行维护

    如果是不支持自定义纸张,而内容又和纸张有关,那么就不好调整了,打印机本身不支持这种纸张就不行了。
    如何测试某个打印机是否支持当前设置的纸张,可用官网样例5直接输入尺寸,在预览里选择不同打印机 ,对比预览效果。
    在预览里直接选择不同打印机进行预览对比:
    测试代码:

    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>WEB打印控件LODOP</title>
    <script language="javascript" src="LodopFuncs.js"></script>
    </head>
    <body>
    <a href="javascript:prn1_preview()">不同打印机纸张不同,纸张无效</a><br>
    <script language="javascript" type="text/javascript">   
            var LODOP; //声明为全局变量 
        function prn1_preview() {
            LODOP=getLodop(); 
            LODOP.PRINT_INIT("");
            LODOP.SET_PRINT_PAGESIZE(1,800,600,"");//设置纸张为80mm*60mm
            LODOP.ADD_PRINT_HTM(42,30,300,100,"<body style="margin:50px">
     HTML Demo content
     <br><font color="#FF0000">Double click me and modify...</font>
    </body>");
            //LODOP.PRINT_DESIGN();
            LODOP.PREVIEW();    
        };
    </script> 
    </body>

    预览选择不同打印机效果图示:

     

  • 相关阅读:
    [数学-构造矩阵]NEFU 1113
    设计模式【1】:原型模式【创建对象】
    XML(五)dom4j增删改查
    小规则让你写出美丽又高效的程序
    jQuery源代码解析(3)—— ready载入、queue队列
    cocos2d-Lua02Lua面向对象
    在Linux下用make指令编译进度条程序。
    JS两日期相减
    java debugger
    tomcat server.xml
  • 原文地址:https://www.cnblogs.com/huaxie/p/11205519.html
Copyright © 2011-2022 走看看