1.位置不同,偏移问题。
详细的相关偏移问题的博文:
LODOP不同打印机出现偏移问题

2.样式问题。

本机浏览器解析样式不同 ,相关超文本样式博文:
Lodop打印控件传入css样式、看是否传入正确样式

LODOP超文本简短问答和相关内容

3.缩放问题。
某个客户端打印出现缩放,相关博文:
Lodop某个电脑打印内容大小有问题

4..排查步骤和简短问答:
排查步骤,相关博文:
Lodop简短问答客户反馈篇 及排查步骤 及注册相关

简短问答:
测试排查:
先用xps或pdf虚拟打印机测试一下试试。
在有问题的机器上先用xps或pdf虚拟打印机测试一下,查看下虚拟打印机的输出效果。

用虚拟打印机测试,可排查是代码或电脑等问题,还是和打印机或打印机设置有关。
如果在该有问题的机器上,用虚拟打印机测试,虚拟打印机输出的文件正常,说明和打印机或打印机设置有关。

虚拟打印机:
只要虚拟打印机没问题 就说明插件代码是正确的。用虚拟打印测试没问题 可排除插件代码问题 排查下打印机重置打印机驱动试下。理论上虚拟打印没问题的话,程序可做的努力就的确很少了,毕竟windows下的打印是微软倡导的设备无关系原则。

纸张和可打区域
纸张设置,参考样例5 http://www.c-lodop.com/demolist/PrintSample5.html
用xps或pdf虚拟打印机测试一下(测试可用样例5),如果虚拟打印机输出的是正确的纸张,真实打印机不是,可能是打印机不支持该自定义纸张。
选择该真实打印机,在打印预览下方状态栏查看一下纸张大小,有的打印机不支持该自定义纸张。

“可打区域”边缘与打印机本身有关,表现在预览里是虚线,可打区域的影响
http://www.c-lodop.com/faq/pp26.html
预览查看下是否有纸张和可打区域导致的。

用真实打印机在打印预览下方状态栏查看一下纸张大小,查看下纸张是否是设置的纸张,有的打印机不支持该自定义纸张。
小票打印 ,参考样例18 http://www.c-lodop.com/demolist/PrintSample18.html
(小票针式打印 建议用 ADD_PRINT_TEXT文本,不用htm超文本,纸张高度不定容易引起 htm 中排版变形)

偏移
打印位置不同,偏移量问题,参考http://www.c-lodop.com/faq/pp17.html
如果是累计偏移,尽量做到实际纸张与设置的纸张一致。
纸张设置和预览微小差异,换算误差引起的。在打印机内部都是按英寸的,mm换算成in,然后in再换算回来就不一定是原来的mm,可以不设置自定义纸张,如果需要的纸张打印机纸张列表里有,直接用打印机的纸张试试,按打印机本身的纸张走纸。
测量多个纸张,取平均值试试。

超文本:
Lodop是基于本机windows底层引擎进行渲染解析的,与ie调用的引擎一致。
查看lodop内部解析的html信息,见http://www.c-lodop.com/faq/pp8.html
分析差异点,因浏览器版本不同遵循的html标准不同,造成某些标签属性显示有差异,尽量避免使用有差异的属性,可以在ie下不同版本仿真情况下验证差异
排查样式,尽量使用使用各浏览器无歧义的通用的 html css js,不支持的样式可尝试用其他样式代替。
可尝试把ADD_PRINT_HTM 换成 ADD_PRINT_HTML(图形模式)试试,ADD_PRINT_HTML不如ADD_PRINT_HTM清晰,适合高精度的打印机,两者各有优势。

1.加载css样式,参考样例10 http://www.c-lodop.com/demolist/PrintSample10.html
2.css样式等尽量使用pt等绝对单位,不使用px等相对单位,避免分辨率的影响
3.系统和浏览器不要设置缩放,例如 控制板面-显示里设置缩放。
4.查看lodop内部解析的html信息,见http://www.c-lodop.com/faq/pp8.html
因浏览器版本不同遵循的html标准不同,造成某些标签属性显示有差异,尽量避免使用有差异的属性。
5.使用各浏览器无歧义的通用的 html css js,
Lodop是基于windows底层引擎,与本机ie引擎一致,进行解析渲染的,不要用本机ie不支持的html css js ,重置ie浏览器试试。
6.可尝试把ADD_PRINT_HTM 换成 ADD_PRINT_HTML(图形模式)试试。
7.用xps或pdf虚拟打印机测试一下,和真实打印机对比。
8.尽量使用最新版Lodop和c-lodop。最新版下载地址 http://www.c-lodop.com/download.html
9.是否是浏览器缓存问题,重置ie浏览器试试,清楚缓存。
10.页面,图片,js等超文本是否没有加载完全,显示空白或者图片缺失等问题,加延迟试试:
LODOP.SET_PRINT_STYLEA(0,"HtmWaitMilSecs",1000)//设置上一项延迟超文本下载1000毫秒
是否没有加载完全,给该超文本打印项加延迟试试:
LODOP.SET_PRINT_STYLEA(0,"HtmWaitMilSecs",1000)//设置上一项延迟超文本下载1000毫秒

清晰度
是否用的ADD_PRINT_HTML语句,换用ADD_PRINT_HTM超文本的普通模式 试试,ADD_PRINT_HTM超文本的普通模式,输出的是解析后的超文本。
用xps或pdf虚拟打印机测试一下。

如何输出清晰图片 参考http://www.c-lodop.com/faq/pp14.html
并用xps或pdf虚拟打印机测试

排查描述:
用虚拟打印机测试(xps或pdf虚拟打印机) win7以上系统可能自带xps虚拟打印机,或网上下载pdf虚拟打印机
虚拟打印机正常
(和打印机有关)
1.打印机不支持该自定义纸张
切换真实和虚拟打印机,
查看预览下方状态栏的pagesize纸张大小是否是设置的纸张。
查看预览中是否有虚线,虚线是打印机的可打区域。
打印机不支持透明图打印,打印机不支持非黑白的浅色打印。
打印机不在初始位置,挡板不在初始位置(真实打印机偏移)
打印机缺墨,打印机精度不够,打印机驱动有问题,打印机故障。

调整打印机设置,或打印机本身不支持一些功能,重装打印机驱动。

虚拟打印机也不正常
(和代码或电脑等有关)
在代码里设置了整体偏移。
打印超文本,客户端解析的浏览器版本不同,样式差异。
操作系统显示等设置了缩放,导致内容缩放。
打印超文本,客户端ie引擎问题。
打印维护缓存的ini文件对客户端本地的影响。

图示:

LODOP不同电脑打印效果不同排查的更多相关文章

  1. Lodop某个电脑打印内容大小有问题

    可能原因分析:本地设置放大比例问题,是真实的放大或缩小,1.查看比例应在100%, 2.控制面板设置显示应在100%(win7 win10中) 3.超文本样式问题,分析样式中不同浏览器版本下显示不一致 ...

  2. 前端使用lodop插件进行打印设置

    先前梳理了后台打印导出参考:https://www.cnblogs.com/yyk1226/p/9856032.html,但是没有显示出来打印预览页面. 本章使用Lodop插件进行打印设置,实现打印机 ...

  3. openerp模块收藏 基于Lodop的报表打印模块(转载)

    基于Lodop的报表打印模块 原文:http://shine-it.net/index.php/topic,7397.0.html 前段时间写了个小模块,来解决OE中报表打印不方便的问题.借鉴了 @b ...

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

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

  5. 前端使用lodop如何获取打印状态

    前面已经说过,如何简单使用lodop了,今天说一下如何获得lodop的打印状态? 在教程里面找了半天,摸索出来了一套. template: <!-- 实验代码 --> <div> ...

  6. 影响Acorn for Mac图像打印质量的因素有什么?怎样处理这些因素才能得到打印效果最佳的图像?

    Acorn for Mac是Mac OS平台上一款比较不错的图像处理软件.acorn mac版用起来都很像神器 Photoshop,是的,它的设计目标就是成为 Photoshop 的轻量替代者,拥有所 ...

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

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

  8. asp.net Lodop实现批量打印

    1.列表(前台) <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="w_stu ...

  9. asp.net调用Lodop实现页面打印或局部打印,可进行打印设置或预览

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="WebPrint.aspx.cs ...

随机推荐

  1. c++性能测试工具:google benchmark入门(一)

    如果你正在寻找一款c++性能测试工具,那么这篇文章是不容错过的. 市面上的benchmark工具或多或少存在一些使用上的不便,那么是否存在一个使用简便又功能强大的性能测试工具呢?答案是google/b ...

  2. 从0开始用U盘制作启动盘装Windows10系统(联想R720笔记本)并永久激活方法

    一,制作U盘启动盘 随着个人电脑的“飞入寻常百姓家”,喜欢DIY电脑的发烧友们也越来越多. 安装系统是DIY最基本的要求,很容易做到: 那么如果要求用U盘装系统呢,你可能会说简单,直接下载个老毛桃或是 ...

  3. headfirst设计模式(6)—单例模式

    前言 这一章的课题看起来就很和蔼可亲了,比起前面绕的我不要不要的工厂模式,那感觉真是太好了,但是正是因为简单,那么问题就来了,我怎么才能把这个东西叙述清楚?怎么样才能老少咸宜呢? 如何能够在把这个东西 ...

  4. 小游戏大智慧,10 个让人眼前一亮的 JavaScript 游戏

    摘要: JS还可以这么玩~ Fundebug经授权转载,版权归原作者所有. 这是一篇有趣的文章,我们精选了 JS13K 游戏编程挑战的优秀作品,与大家分享.JS13K 是专为 JavaScript 开 ...

  5. jQuery内容过滤选择器与子元素过滤选择器用法实例分析

    jQuery选择器内容过滤 一.:contains(text) 选择器::contains(text)描述:匹配包含给定文本的元素返回值:元素集合 示例: ? 1 2 $("div.mini ...

  6. flex 实例 豆瓣手机端布局实现

    0.最终成品

  7. 获取元素CSS样式

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. 重建程序员能力(2)-如何使asp.net mvc应用增加js和其他功能

    1. 在Visual Studio的解决方案资源管理器,找到项目右键展开右键菜单后选择 管理NuGet程序包. 2.在打开的页面中,可以按需要选择Jquery.BootStrap等页面展现框架. 有工 ...

  9. Android 简单统计文本文件字符数、单词数、行数Demo

    做的demo是统计文本文件的字符数.单词数.行数的,首先呢,我们必须要有一个文本文件.所以我们要么创建一个文本文件,并保存,然后再解析:要么就提前把文本文件先放到模拟器上,然后检索到文本名再进行解析. ...

  10. 如何快速清理 docker 资源

    如果经常使用 docker,你会发现 docker 占用的资源膨胀很快,其中最明显也最容易被察觉的应该是对磁盘空间的占用.本文将介绍如何快速的清理 docker 占用的系统资源,具体点说就是删除那些无 ...