zoukankan      html  css  js  c++  java
  • LODOP关联后眉脚条码的遮挡的一种情况

    前面的博文中,有介绍层级关系,最先输出的打印项在下层,后输出的在上层,但是最近发现了一种例外,就是前面有关联的情况下,后面把一个条码设置为页眉页脚项,眉脚项和前面关联其他的项的那个项位置重合,虽然这个条码打印项是在该任务的最后一个输出,但是也会出现覆盖现象。
    解决方法:
    1.去掉关联,改用直接定位等方式。
    2.两者位置不要重合

    相关博文:
    层级相关博文:Lodop调整打印项输出顺序 覆盖与层级
    关联相关博文:LODOP打印控件关联输出各内容
    正常情况下是先输出的打印项在下层,后输出的在上层。
    关联某个打印项后,top、left值变成相对值,相对于被关联的打印项,-1关联很多后,被关联的打印项的高度,是整个串的高度,按照这个串的高度分页。
    本文测试中,第一个方法里第一个被关联的打印项的高度为60,按照该高度整个串分了两页。
    第二第三方法里,被关联的打印项高度为100,可以两个htm显示全,因此没有分页。

    测试代码:

    <a href="javascript:prn1_preview()">条码设置为眉脚项,每页输出,和前面的带关联的项位置重合</a><br>
    <a href="javascript:prn2_preview()">条码设置为眉脚项,每页输出,和前面的带关联的项位置重合</a><br>
    <a href="javascript:prn3_preview()">去掉关联,用普通的定位方法</a><br>
    <script language="javascript" type="text/javascript">   
            var LODOP; //声明为全局变量 
            function prn1_preview() {
            LODOP=getLodop(); 
            LODOP.PRINT_INIT("");
            LODOP.ADD_PRINT_HTM(0,0,300,60,"<div style='background:red;'>d<br>d</div>");
            LODOP.ADD_PRINT_HTM(5,0,300,60,"<div style='background:blue;'>d<br>d</div>");
            LODOP.SET_PRINT_STYLEA(0,"LinkedItem",-1);//关联前面的打印项
            LODOP.ADD_PRINT_BARCODE("2mm","3mm","7cm","4cm",'EAN128B',"234");//某条码
            LODOP.SET_PRINT_STYLEA(0,"ItemType",1);//设置上面的为页眉页脚,每页固定位置输出1.每页固定位置输出
            LODOP.PREVIEW();    
        };
            function prn2_preview() {
            LODOP=getLodop(); 
            LODOP.PRINT_INIT("");
            LODOP.ADD_PRINT_HTM(0,0,300,100,"<div style='background:red;'>d<br>d</div>");
            LODOP.ADD_PRINT_HTM(5,0,300,60,"<div style='background:blue;'>d<br>d</div>");
            LODOP.SET_PRINT_STYLEA(0,"LinkedItem",-1);//关联前面的打印项
            LODOP.ADD_PRINT_BARCODE("2mm","3mm","7cm","4cm",'EAN128B',"234");//某条码
            LODOP.SET_PRINT_STYLEA(0,"ItemType",1);//设置上面的为页眉页脚,每页固定位置输出1.每页固定位置输出
            LODOP.PREVIEW();    
        };
            function prn3_preview() {
            LODOP=getLodop(); 
            LODOP.PRINT_INIT("");
            LODOP.ADD_PRINT_HTM(0,0,300,40,"<div style='background:red;'>d<br>d</div>");
            LODOP.ADD_PRINT_HTM(45,0,300,60,"<div style='background:blue;'>d<br>d</div>");
            LODOP.ADD_PRINT_BARCODE("2mm","3mm","7cm","4cm",'EAN128B',"234");//某条码
            LODOP.SET_PRINT_STYLEA(0,"ItemType",1);//设置上面的为页眉页脚,每页固定位置输出1.每页固定位置输出
            LODOP.PREVIEW();    
        };
    </script> 

    图示:

  • 相关阅读:
    curl命令常见用法汇总 good
    Spring Boot flyway的启动时机比较早
    android 签名被篡改(Keystore was tampered with, or password was incorrect)
    android sdk 如何重新生成debug.keystore
    Android的debug.keystore拒绝访问导致的生成异常及解决方案
    Android生成keystore是报错拒绝访问
    android 高德地图出现【定位失败key鉴权失败】
    Android Studio开发入门-引用jar及so文件
    android 自定义AlertDialog(一段)
    Android自定义控件之日历控件
  • 原文地址:https://www.cnblogs.com/huaxie/p/11889087.html
Copyright © 2011-2022 走看看