Lodop中的打印项内容位置定位,除了打印项本身的top,left值,也会受其他设定或打印机的影响。
打印开发,先用虚拟打印机测试出正确结果,然后客户端用打印维护微调
常见问题:
1.设置打印项相对于纸张居中,内容没有相对纸张居中。
打印项居中,但是如果打印项内容本身有内容边距,里面的内容没有相对于自身的边距居中,自然内容也不会在纸张中居中。
2.打印项位置不对,不是设置的top,left值,打印内容被切去了,显示不出来,打印预览有虚线,虚线外的内容是空白
虚线是打印机的可打区域,是物理的可打区域,和打印机有关,可打区域外是不打印的。
(默认打印项定位是以可打区域为基点,设置以纸张为基点可查看本博客另一篇博文:Lodop打印控件打印机可打区域的影响 设置纸张边缘为基点)

影响打印项在纸张中受到的可能边距:
1.打印项本身的top,left值。
2.INITA初始化语句第一、二参数的偏移值。.
3.打印预览中虚线引起的边距(打印机的可打区域的影响)

打印项内容受到的可能边距:
1.打印项本身的top,left值。
2.INITA初始化语句第一、二参数的偏移值。
3.打印预览中虚线引起的边距(打印机的可打区域的影响)
4.打印项内部的边距(内容的边距,如超文本中的css样式等)

各种边距解释:
1.打印项设置的边距
添加Lodop各种打印项(例如ADD_PRINT_HTM(Top,Left,Width,Height,strHtmlContent)),参数中:
top是打印项在纸张内的上边距,打印项在纸张内的上边距,也就是在每张纸的上下起点位置。
left是打印项在纸张内的左边距,也就是在每张纸的左右起点位置
2.整体偏移导致的边距
INITA初始化语句第一、二参数的偏移值,所有打印内容针对纸张进行偏移,偏移上边距或左边距。
3.打印机可打区域引起的边距
和打印机有关,预览里以虚线的形式存在,虚线外是打印不出来的。默认是以可打区域为边缘,可以用语句设置以纸张边缘为基点进行设计。
4.打印项内部的边距
例如超文本自带的本身里的边距,条码等设置打印项多宽,可能里面实际内容没有多宽,因为受条码竖线合计值的影响。

PRINT_INITA的三、四参数与纸张无关,这个只是设置打印设计可视化编辑区域的,PRINT_INITA的三、四参数 打印设计可视化编辑区域(与纸张无关)
SET_PRINT_PAGESIZE的二、三参数 设置自定义纸张大小,第四参数纸张名称。

出现边距或位置不对,可先用虚拟打印机测试一下。
如果虚拟打印机不正常,可排查代码问题。例如PRINT_INITA初始化语句第一、二参数不为0,打印项内部边距。
如果虚拟打印机正常,在预览里查看一下,真实打印机自定义纸张是否生效,是否有打印机可打区域的影响以及打印机或打印机驱动问题。

用虚拟打印机测试正常,用真实打印机预览也没有空白边距,就是走纸的时候位置不对,有空白边距:
正常情况下预览是打印机的反显,打印机如果预览正常,打印不正常,只能和打印机驱动,或这打印机
实体打印机是否在初始位置输出,或打印机初始走纸位置不正确,联系打印机厂商确认一下。

如果确认真实打印机预览正常,打印不正常,重装打印机驱动试试,如果重装驱动没有西效果。
实体打印机是否在初始位置输出,或打印机初始走纸位置不正确,联系打印机厂商确认一下。

LODOOP中的各种边距 打印项、整体偏移、可打区域、内部边距的更多相关文章

  1. LODOP设置某打印项锁定下边距

    LODOP中的打印项定位都是按照top值(顶边距),left(左边距)来决定的 ,不能直接设置某打印项的下边距.此外,打印项的位置还受PRINT_INTA的前两个整体偏移值,打印机可打区域的影响.该文 ...

  2. LODOP打印项水平居中

    LODOP控制打印项水平居中,可以用如下语句,该语句控制的是打印项本身在纸张中水平居中.LODOP.SET_PRINT_STYLEA(0,"Horient",2);这个根据大的打印 ...

  3. LODOP关联,打印项序号注意事项

    之前也有介绍过打印项序号:Lodop打印控件里SET_PRINT_STYLE和SET_PRINT_STYLEA如果是个给打印项添加样式,最常用的是SET_PRINT_STYLEA(0.....),第一 ...

  4. LODOP中打印项水平居中简短问答

    相关博文:LODOP打印项水平居中(超文本纯文本居中)LODOP打印超文本有边距不居中的情况2(超文本居中的一种) LODOP表格水平居中3(宽度为百分比)(超文本居中的一种) LODOP打印图片水平 ...

  5. LODOP中的纯文本和超文本打印项

    LODOP中的的打印项,有超文本也有纯文本,超文本指的是用html语言,html里的标签为值的打印项,该种打印项会经过浏览器解析,LODOP本身不带解析超文本的引擎,调用的windows底层引擎,与i ...

  6. Lodop调整打印项输出顺序 覆盖与层级

    Lodop中的打印项,如果有输出在同一位置,或部分位置重叠的地方,打印项之间是怎么覆盖的呢?在JS里,按照Lodop语句打印项先后的执行顺序,先执行的先输出,后执行的后输出,如果有后面的打印项和前面的 ...

  7. Lodop打印项对象类型属性区分

    Lodop提供了一些打印项类型,默认是普通项,通过设置打印对象的类型,可以实现一些普通项不能实现的效果.例如:该博客另一篇博文 标题是Lodop打印控件 打印‘接下一页’‘以下空白’,就用了眉脚项. ...

  8. python数据结构-如何根据字典中值的大小对字典项排序

    如何根据字典中值的大小对字典项排序 问题举例 某班英语成绩以字典形式存储,如何根据成绩高低,计算学生成绩排名 { “tom”:80, "lily":88, "marton ...

  9. ComboBox在WPF中的绑定示例:绑定项、集合、转换,及其源代码

    示例1.Selector(基类) 的示例Controls/SelectionControl/SelectorDemo.xaml <Page x:Class="Windows10.Con ...

随机推荐

  1. pytorch Debug —交互式调试工具Pdb (ipdb是增强版的pdb)-1-使用说明

    初学时大多使用print或log调试程序,这在小规模的程序下很方便 但是更好的方法是一边运行一边检查里面的变量和方法 1.Pdb Pdb是一个交互式的调试工具,集成于Python标准库中 Pdb能让你 ...

  2. docker 2 docker介绍

    docker是基于go语言实现的云开源项目 docker的主要目标是‘build ,ship and run any app,anywhere’,也就是说通过对应用程序组件的封装,分发,部署,运行等生 ...

  3. Windows解压安装mysql 5.7.24,并部署多个mysql服务

    mysql官网windows安装文档 https://dev.mysql.com/doc/refman/5.7/en/windows-installation.html 第一步,选择安装包   htt ...

  4. 计算机网络#关于HDLC#

    HDLC(High-Level Data Link Control,高级数据链路控制):面向比特型的协议 主站(发送命令).从站(响应命令).复合站(既可发送命令,也可响应命令) HDLC链路配置方式 ...

  5. 【mongoDB查询进阶】聚合管道(一) -- 初识

    https://segmentfault.com/a/1190000010618355 前言:一般查询可以通过find方法,但如果是比较复杂的查询或者数据统计的话,find可能就无能为力了,这时也许你 ...

  6. mongo中命令工作原理

    1.db.runCommand命令 db.runCommand({OPTION:'COLLECTION_NAME'}) runCommand命令是mongo的执行命令,可以执行mongo的任何命令,其 ...

  7. Django:安装和启动

    最近在学习利用python语言进行web站点开发,使用的框架是Django.这篇博客主要介绍Django的安装和简单使用. 一.Django介绍 Django是一个开源的Web应用框架,由Python ...

  8. 设计模式(5)原型模式(Prototype)

    设计模式(0)简单工厂模式 设计模式(1)单例模式(Singleton) 设计模式(2)工厂方法模式(Factory Method) 设计模式(3)抽象工厂模式(Abstract Factory) 设 ...

  9. linux进程控制开发实例

    fork.c #include <sys/types.h> #include <unistd.h> #include <stdio.h> #include < ...

  10. 【原创】分布式之redis的三大衍生数据结构

    引言 说起redis的数据结构,大家可能对五大基础数据类型比较熟悉:String,Hash,List,Set,Sorted Set.那么除此之外,还有三大衍生数据结构,大家平时是很少接触的,即:bit ...