zoukankan      html  css  js  c++  java
  • Lodop控件NewPage();测试输出空白页

    LODOP.NewPage();和LODOP.NewPageA();是强制分页语句,两者的区别可查看本博客的相关博文:Lodop强制分页LODOP.NewPage()和LODOP.NewPageA()
    可在打印项之间强制分页,手动分页,如果一个任务在不添加打印项的情况下一开始就分页,结果会怎样?如果强制分页之间没有任何打印项又会怎样?该文就是测试这两个的。
    如果按照想法,一开始没打印项就强制分页,那么第一页应该是空白页,分页语句之间没有打印项,应该也会是空白页,实际测试发现不是这样的。

    一开始没打印项就强制分页,在第一个打印项之前,不管多少次分页,都不会有空白页。
    有打印项之后,该打印项会作为第一页,往后如果强制分页之间没有打印项,会显示成空白页。

    由于多页预览截图较麻烦,因此把纸张设置小,然后用xps虚拟打印机打印出文件,一块用xps查看器查看,一起截图。(打印开发避免浪费纸张,虚拟打印机测试是很有必要的)
    效果如图所示:

    测试中JS代码:

    <script language="javascript" type="text/javascript">   
            var LODOP; //声明为全局变量 
        function prn1_preview() {    //单个任务循环
          LODOP=getLodop();  
          LODOP.PRINT_INIT("");//初始化在循环中
          LODOP.SET_PRINT_PAGESIZE(1,300,500,"");
          //不会有空白页
          LODOP.NewPage();
          //不会有空白页
          LODOP.NewPage();
          //不会有空白页
          LODOP.NewPage();
          LODOP.ADD_PRINT_TEXT(75,6,100,20,"文本");//该任务首个打印项
          LODOP.NewPage();
          //空白页
          LODOP.NewPage();
          //空白页
          LODOP.NewPage();
          LODOP.ADD_PRINT_TEXT(75,6,100,20,"文本2");//该任务第二个打印项
          LODOP.PREVIEW();
    //    LODOP.PRINT_DESIGN();
        };
    </script> 

    效果:

    这里没测试如果NewPage();在最后,也就是最后一个打印项后多次加强制分页语句,后来测了一下,效果和在初始化后打印项之前加一样,都不会强制分出空白页。这里没测试如果NewPage();在最后,也就是最后一个打印项后多次加强制分页语句,后来测了一下,效果和在初始化后打印项之前加一样,都不会强制分出空白页。

  • 相关阅读:
    python第四篇:linux命令行总结 + 自动备份Python程序
    mount挂载相关指令
    TiDB配置HAProxy负载均衡
    NewSQL 介绍
    mysql 主从搭建
    MySQL 双主问题集
    MySQL 测试工具(基准测试、压力测试)
    分布式 NewSQL 对比
    (转载)MySQL数据库的几种常见高可用方案
    MySQL 大表备份、改表
  • 原文地址:https://www.cnblogs.com/huaxie/p/9995703.html
Copyright © 2011-2022 走看看