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. eclipse如何设置断点&断点处运行快捷键

    第一步: 设置断点:在该行最前面边框双击  或快捷键:Ctrl+Shift+B   第二步: Debug 运行启动   第三部: 运行到断点后: 使用快捷键F5,F6,F7单步执行. F5:Step ...

  2. 安装TensorFlow踩的坑

    1.TensorFlow的版本要和对应的cuda,cudnn版本都对应上,装了cuda 9.0和cudnn 7.5,TensorFlow默认装了最新版1.13.1,一直出现 DLL error: 找不 ...

  3. bootstraptable 分页查询

    1.前端配置 2.后台输出格式化数据 1.前端配置 @{ Layout = null; } <!DOCTYPE html> <html> <head> <me ...

  4. object detection[faster rcnn]

    这部分,写一写faster rcnn 0. faster rcnn 经过了rcnn,spp,fast rcnn,又到了faster rcnn,作者在对前面的模型回顾中发现,fast rcnn提出的ro ...

  5. asp.net core C#设计一个实用的线程池

    菜菜呀,我最近研究技术呢,发现线上一个任务程序线程数有点多呀 CEO,CTO,CFO于一身的CXO x总,你学编程呢? 菜菜 作为公司总负责人,我以后还要管理技术部门呢,怎么能不会技术呢 CEO,CT ...

  6. 数组去重--ES5和ES6

    思路:把去重后的数组放到一个空数组中 ES5实现: function uni(arr) { var result = []; for (var i=0;i<arr.length;i++) { i ...

  7. duxing201606的原味鸡树

    链接 [http://murphyc.fun/problem/4011] 题意 描述 众所周知,duxing哥非常喜欢原味鸡.众所周知,原味鸡是长在原味鸡树上的. duxing哥因为是水产巨子,所以就 ...

  8. plw的骰子

    链接 [http://murphyc.fun/problem/4007] 题意 描述 duxing2016有一个神奇的骰子,投出1-6的概率为(p1,p2...p6) 现在他投n次骰子,问投出点数和大 ...

  9. session与cookie的区别以及HTML5中WebStorage理解

    一.session与cookie的区别 二.HTML5中WebStorage理解 WebStorage的目的是克服由cookie所带来的一些限制,当数据需要被严格控制在客户端时,不需要持续的将数据发回 ...

  10. Navicat还原出现Finished - Stopped before completion的问题

    查看数据库中最大的单个文件容量 SHOW VARIABLES LIKE '%max_allowed_packet%';   设置最大单个文件容量为10M,单次有效(新建查询---运行) SET GLO ...