由于打印机千差万别,打印开发也要注意针对客户各种打印机进行处理,Lodop提供了打印维护(PRINT_SETUP)可针对每个客户端进行微调,保存结果保存在客户端本地,对其他访问网站的客户没有影响。

由于打印机的限制,有些打印机不能打印某些规格的纸张,或打印区域有限制,不是所有打印机都支持自定义纸张,也不是所有打印机可打区域都相同,在打印预览界面里选择真实打印机,有时候预览能看到一些虚线,这些虚线是打印机的可打区域,受打印机的影响。
虚线外是不可打的,因此Lodop对打印项的top、left等起始点默认是从可打区域的边缘为起始位置的,这样可以避免有内容超过可打区域造成打印不全,但是这样一来不同打印机可打区域不同,所以坐标的基点不同,也就造成内容在纸张中位置不同,如果不想这样,也可以设置以纸张边缘为基点,那么起始位置就不再是可打区域的边缘了,需要注意内容不要在可打区域外输出。

如图,左侧是默认以可打区域(不同打印机可打区域不同)为基点,打印项top、left均设置成0,却还有边距,这是由于默认不是以纸张边缘为基点。
右侧是设置以纸张边缘为基点后,打印项起始位置变成了纸张最左上角,由于在可打区域外,因此那部分打印不出来,该top、left的依据是纸张边缘。

top值为0,left为0,应该是在纸张的最左上角位置显示,用虚拟打印机可以看出,top值为0,left为0确实是在纸张的最左上角,然而实际用打印机打印中不一定在最左上角。

虚线是打印机的可打印区域边界,也就是打印机走纸的物理边界。

不同的打印机边界值不同,一般是1——5mm的差异。
打印机预留的物理边距,不可以取消,有个别打印可以提供修改,具体查看一下相应的打印管理程序。

以可打区域为基点,能保证内容不会超出可打区域,从而把内容都打印出来。
以纸张边缘为基点,能更好的设计,让不同打印机内容在纸张中的位置一样。
可根据需要,选择默认,或以纸张边缘为基点(设置以纸张边缘为基点需要加如下语句)
LODOP.SET_PRINT_MODE("POS_BASEON_PAPER",true);//设置以纸张边缘为基点

注意:可打区域外是打印不出来的,和打印机有关。
设置以纸张为基点,只是设计的内容的坐标定位的位置有关,如图所示。

Lodop打印控件打印机可打区域的影响 设置纸张边缘为基点的更多相关文章

  1. Lodop打印控件在页面如何使用

    Lodop打印控件部署到web服务器简单,在页面的使用方法也简单,是非常容易和方便使用的打印控件.客户端本地打印角色(即用户访问网站后 用自己链接的打印机进行客户端本地打印),步骤很少,部署简单:Lo ...

  2. Lodop打印控件传入css样式、看是否传入正确样式

    Lodop中可以传入页面存在的css样式,也可以是拼接后的新样式,例如本博客的其他博文:Lodop打印如何隐藏table某一列 需要打印的页面,样式不一定都是行内样式,style样式单独写在页面上,或 ...

  3. Lodop打印控件 超文本自动分页

    Lodop打印控件打印html超文本,通常传入一个超文本内容可能会超过纸张,如果要拆分每页显示哪些然后手动分页比较麻烦,Lodop中的超文本都有自动分页的特点.自动分页的依据:1.超文本超过设置的打印 ...

  4. LODOP打印控件进行批量打印

    Lodop打印控件批量打印的方式:1.批量打印每页内容相同的:(1)批量打印相同内容的很多纸张,可以设置打印份数,把该内容打印出多份.2.批量打印每页不同内容的:(1)通过在一个任务中分页,循环添加页 ...

  5. Lodop打印控件设置表格次页偏移

    Lodop打印控件有很好的自动分页功能,超文本table表格一页装不下,自动分到第二页,第三页……通常表格之前还会有一些内容,比如标题,制表人名称日期什么的杂七杂八的东西,这种东西会占用一定的空间,这 ...

  6. Lodop打印控件指定打印任务某几页

    使用Lodop打印控件进行打印开发,有时候一个任务里有多页,例如各种合同之类的,客户端用户在使用过程中,可能有某一页打印后发现需要修改,这时候不必再把整个任务重新打印一遍,只需要打印需要修改的那页重新 ...

  7. Lodop打印控件 打印‘接下一页’‘以下空白’

    Lodop打印控件中,超文本超过设置的打印项高度 或超过纸张,就会自动分页,纯文本通过设置为多页项也可以根据打印项高度自动分页,Lodop中还提供了许多手动分页的方法,对于多页文档中(自动分页或手动分 ...

  8. LODOP打印控件关联输出各内容

    Lodop打印控件利用SET_PRINT_STYLEA里面的“LinkedItem”可以把多个独立的内容关联起来,让它们顺序打印.这样,就可以实现很多效果,例如一些内容紧跟着表格下方输出,关联表格后就 ...

  9. Lodop打印控件里SET_PRINT_STYLE和SET_PRINT_STYLEA

    LODOP.SET_PRINT_STYLE 对该语句后面的打印项样式设置效果.LODOP.SET_PRINT_STYLEA 针对第一个参数设置的打印项样式设置效果.这两个语句,作用范围不同. 在设置字 ...

随机推荐

  1. undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库坏块导致

    本文转自 惜纷飞 大师. 模拟基表事务未提交数据库crash,undo丢失恢复异常恢复,运维DBA反映Oracle数据库无法启动报错ORA-01157 ORA-01110,分析原因为Oracle数据库 ...

  2. @ConfigurationProperties 配置详解

    文章转自 https://blog.csdn.net/qq_26000415/article/details/78942494 前言新的一年到了,在这里先祝大家新年快乐.我们在上一篇spring bo ...

  3. p1313计算系数题解

    #include<algorithm> #include<iostream> #include<cstring> #include<cstdio> #i ...

  4. Luogu2792 [JSOI2008]小店购物

    Luogu2792 [JSOI2008]小店购物 重题 bzoj4349 最小树形图 有 \(n\) 个物品,每个物品有价格 \(c_i\) 和所需个数 \(k_i\) ,所有物品必须恰好买 \(k_ ...

  5. 简单使用普通用户启动tomcat

    新建用户tomcat,该用户不能登录 useradd tomcat -s '/sbin/nologin' 将/usr/local/tomcat/bin/startup.sh更名 mv /usr/loc ...

  6. Python排序算法——选择排序

    有趣的事,Python永远不会缺席! 如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/10787340.html 一.选择排序(Sele ...

  7. 在Python程序中的进程操作,multiprocess.Process模块

    在python程序中的进程操作 之前我们已经了解了很多进程相关的理论知识,了解进程是什么应该不再困难了,刚刚我们已经了解了,运行中的程序就是一个进程.所有的进程都是通过它的父进程来创建的.因此,运行起 ...

  8. Java关键字(三)——static

    我们说Java是一种面向对象编程的语言,而对象是把数据及对数据的操作方法放在一起,作为一个相互依存的整体,对同类对象抽象出其共性,便是Java中的类,我们可以用类描述世间万物,也可以说万物皆对象.但是 ...

  9. 一篇自己都看不懂的点分治&点分树学习笔记

    淀粉质点分治可真是个好东西 Part A.点分治 众所周知,树上分治算法有$3$种:点分治.边分治.链分治(最后一个似乎就是树链剖分),它们名字的不同是由于分治方式的不同的.点分治,顾名思义,每一次选 ...

  10. jumpserver安装

    一. 准备 Python3 和 Python 虚拟环境  1.1 安装依赖包 yum -y install wget sqlite-devel xz gcc automake zlib-devel o ...