方法简单描述:
1.精确套打,设置以纸张边缘为基点,可避免不同可打区域不同带了的影响。
2.不同客户端打印机位置差异,可通过打印维护调整,结果在客户端本地。
或调整打印机初始位置
(本人使用的金税盘的开票软件,还有以前在用友售后实习的时候见过的用友软件的打印,都有提供调整整体偏移的地方,因此开发打印,需要把打印维护开放给客户端调整,以便适用不同的打印机和客户端。)
3.开发代码里,PRINT_INITA的前两个参数要为0,如果需要整体偏移,要在客户端那里调整。
4.累计偏移,尽量让设置的纸张与实际纸张一致,实在无法做到,可输出一定数量,手动调整。

方法简述:
1、打印机可打印区域的影响,可以设置纸张边缘基点输出
2.打印机挡板不在初始位置,或打印机初始位置有偏移
(1).调整打印机挡板,打印机初始位置,
(2).用打印维护进行本地调整,
3.原始代码不在初始位置,PRINT_INITA的前两个参数应为0,0是打印机的初始位置
4.累计偏移,尽量与实际纸张一致,手动调整

详细解释:

1.不同的打印机打印位置略有偏移:
该问题属于打印机可打印区域的影响,可以设置纸张边缘基点输出;
一般软件没有可打区域,但是打印也都是在可打区域内的,lodop用了显示可打区域,是为了精确套打,设置以纸张边缘为基点,就可以以可打区域为基点造成的不同打印机位置偏移不同问题。
关于可打区域,可查看参考本博客相关博文:LODOOP中的各种边距 打印项、整体偏移、可打区域、内部边距、LODOP中预览界面查看打印机的可打区域具体值

关于如何以纸张边缘为基点,可参考查看本博客相关博文:Lodop打印控件打印机可打区域的影响 设置纸张边缘为基点

2.不同客户端的不同打印机位置有偏移
表现为有的客户正常不偏移,有的偏移,客户端不同,链接的打印机不同,挡板位置不同,或打印机初始位置不同,由于打印机千差万别,不可能有程序可以完全符合所有类型的打印机,这种情况,可开放打印维护给客户端进行微调,调整结果可保持在客户端本地。
如果是内容整体偏移,可用PIRNT_INITA的前两个参数进行调整,在打印维护里是纸钉,拖动纸钉,相当于把内容进行了整体移动。
套打的难点在于位置对准,如果你同一个页面程序要应付不同的打印机,完全可以将打印维护功能授权给操作者,打印维护中按钮“应用”结果保存在操作者自己的电脑上,保存时与“打印任务名”相对应,这样任何打印机都可以适应同一个页面程序了。
如何使用打印维护,可查看本博客相关博文:Lodop打印维护PRINT_SETUP本地缓存ini文件

其他相关:Lodop打印设计、维护、预览、直接打印简单介绍、LODOP暂存、应用、复原 按钮的区别

此外,有的打印机可能不支持自定义纸张,或打印机可打区域有问题非常小,以及打印机故障,如果打印机不支持自定义纸张,自定义无法生效,会走默认纸张,默认纸张和定义的纸张存在较大差异,也会造成偏差很大,这种是打印机的限制。

(1)打印机挡板不在初始位置,或打印机初始位置有偏移,这种情况,也可以直接调整打印机的挡板或初始位置,可查看相关打印机的说明书或咨询打印机的客服,本人用税务局的金税盘打发票,金税盘也提供了类似打印维护的向上,向下偏移调整的数值,而且本人也配合挡板位置的移动。
可见,直接调整打印机,或开发打印维护给客户应该是普通软件都会有的,很早的时候在用友售后的时候,打印的时候,也有针对客户端在本机调整偏移值。
个人遇到过的两个软件,用友财务软件和金税盘的开票软件,都有调整偏移值的地方,可见由于打印机千差万别,不同打印机都会偏移,这不是只有lodop才出现的问题。
(2).用打印维护时,注意不同模版不同任务要取不同的任务名,否则任务名相同会有影响,此外,某个客户端偏移严重,可能是该客户用了打印维护进行了大量调整,并保存了,可以进入打印设计恢复整体缺省,或置空任务名等方式。
置空任务名就相当于禁用了打印维护的功能,空任务名无法调整后保存到本地。

3.只有自己无偏移,其他客户端都偏移了。
很可能是PRINT_INITA的前两个参数不为0,0,0是打印机的初始位置,自己的打印机不在初始位置,进行了整体偏移,还把整体偏移写到了代码里。
需要把这两个参数设置为0,大多数客户打印机应该是在初始位置的,如果位置有问题,在该客户端本地调整,参考2的打印维护,结果只对该客户端有效。
(开发的源码里要设置为0,0,不要在源代码里进行整体偏移)

4.累计偏移,大量批量打印的时候,偏移逐渐增大。
这种是实际纸张与设置的纸张之间存在差异导致的,尽量让实际纸张与设置的纸张一致。
批量连续打印时,可以测量多张纸,取平均值,这样测量可能准确一点。
由于实际与设置的差异,即使差异一点,大量打印后这点差异也会越来越大。

或者代码里不设置纸张,直接走打印机的默认纸张,把需要的纸张设置为默认纸张,这个打印机自带的是英寸,避免了代码和打印机单位之间的转换导致差异。
相关详细博文:Lodop连续打印内容逐渐偏移怎么办、

转载于:https://www.cnblogs.com/huaxie/p/10564614.html

LODOP不同打印机出现偏移问题相关推荐

  1. js使用Lodop对接打印机

    安装 官方地址:https://www.lodop.net/ 插件下载地址:https://www.lodop.net/download.html 相关文件 基本使用 2.1控件嵌入 1.通常情况下, ...

  2. 针式打印机偏移测试软件,精打教程(3)打印机打印偏移设置

    由于针式打印机或平推打印机的定位缺陷,快递面单和发货面单在打印的时侯容易产生左右偏移或者前后偏移. 精打提供两种偏移校准方式: 1.打印机偏移校准:此项校准针对打印机.每一台打印机的偏移设置都是相互独 ...

  3. lodop指定打印机打印_使用Lodop实现打印机列表

    html:使用select选择框 默认设备 js代码: 注意:初始化函数最好使用window.onload方法 var LODOP; //获取打印机设备数,用于进行遍历 var count = LOD ...

  4. lodop指定打印机打印_LODOP指定window默认打印机和临时默认打印机

    通过以下语句,可指定windows默认打印机 LODOP.SET_PRINT_MODE("WINDOW_DEFPRINTER",某打印机名或序号); 这种默认打印机是指的windo ...

  5. lodop指定打印机打印_LODOP在页面让客户选择打印机

    获取打印机列表可以放在onload事件里,如过当前是使用的c-lodop,由于websoket链接需要时间,一进入页面可能会报错,被准备好或网页没下载完成等,也可以在点击事件里让用户获取打印机. 之前 ...

  6. LODOP纸张/打印机/份数/打印方向/双面打印 简短问答

    纸张 #如何设置纸张 纸张设置,参考样例5 http://www.c-lodop.com/demolist/PrintSample5.html 纸张的一些优先级 http://blog.sina.co ...

  7. lodop指定打印机打印_GitHub - xtjatswc/formext: 基于Lodop封装的打印框架,支持表单、报表配置。...

    表单配置 只需要简单的配置就能实现数据的增删改查,该框架适用于一些个性化的报表.数据编辑需求,其中蓝色字体是可以直接编辑的,失去焦点后保存 部分配置代码如下 require "../../. ...

  8. vue中使用Lodop调用打印机打印条形码

    最近项目遇到vue实现条形码打印功能,经过自己的一番摸索,找到了一款比较友好的打印插件,本次打印使用的Lodop插件进行功能的实现.(官网链接) 1.把官方提供的LodopFuncs.js文件保存到某 ...

  9. lodop指定打印机打印_前端使用lodop插件进行打印设置

    function PrintEntryOrder(data) { CreateEntryPrintPage(data); } function CreateEntryPrintPage(data) { ...

最新文章

  1. 深度学习--TensorFlow(项目)Keras手写数字识别
  2. MySQL的SQL语句如何优化?
  3. Feedback about (Blockchain OR ML) AND (logistics)
  4. bzoj2226-[Spoj5971]LCMSum【欧拉函数,GCD】
  5. 十五、导航,头部,CSS基础
  6. amoeba mysql_使用Amoeba 实现MySQL DB 读写分离
  7. 先序abdfcegh 中序bfdagehc 后序线索二叉树_二叉树的遍历(先序、中序、后序、层序)...
  8. NUC1170 加农炮
  9. mysql常用的语句_MySQL常用语句集锦
  10. 【个人笔记】OpenCV4 C++ 图像处理与视频分析 04课
  11. 《永不放弃-马云给创业者的24堂课》— 综合素质提升书籍
  12. C++ (void)_r;什么意思
  13. 教你如何查询对方来电!
  14. 数据库无法插入Could not set property ‘id‘ of ‘class com.XXX‘ with value ‘1481832253064073217‘
  15. python入门笔记——类和对象③(案例:自动随机文字游戏——决战紫禁之巅)
  16. Plotting data
  17. 获取html元素的高,获取HTML元素的高度jQuery
  18. 【前端基础】12.CSS 基础知识学习——基本语法结构
  19. Docker 修改容器端口
  20. Spark中组件Mllib的学习16之分布式行矩阵的四种形式

热门文章

  1. mybatis系列-06-输入映射
  2. 车脸检测 Adaboost 检测过程
  3. 2013腾讯编程马拉松初赛第二场(3月22日) 小Q系列故事——为什么时光不能倒流 ---好水!!...
  4. 数据库设计14个技巧
  5. postgresql TOAST存储方式
  6. Mr.J-- HTTP学习笔记(九)-- Web机器人
  7. Spring中的@ImportResource
  8. Redhat 6.8部署oracle 12c
  9. nRF52832 BLE_DFU空中升级OTA(一)安装软件(SDK14.2.0)
  10. HDOJ_1004_Let the Balloon Rise