小票由于纸张没有确定的高度,根据内容多少,小票打印机出多少纸,在设置纸张的时候,需要把纸张设置成不定高的纸张。
简短问答:
小票打印 ,参考样例18 http://www.c-lodop.com/demolist/PrintSample18.html
(小票针式打印 建议用 ADD_PRINT_TEXT文本,不用htm超文本,纸张高度不定容易引起 htm 中排版变形)

小票一般内容简短,有文本线条二维码条码之类的都可能,可以直接用纯文本进行设计,纯文本不会像超文本一样受浏览器解析的影响,(关于纯文本和超文本 相关博文:LODOP中的纯文本和超文本打印项

小票出纸的高度是怎么确定的呢:是由以下几个数值的合计组成的
高度1:打印项的上边距
高度2:打印项和打印项之间的距离
高度3:打印项本身的高度
高度4:纸张语句设置的下方留白高度
PS:如果有虚线可打区域,或整体偏移值,也会受这些的影响(可打区域相关博文:LODOOP中的各种边距 打印项、整体偏移、可打区域、内部边距Lodop打印控件打印机可打区域的影响 设置纸张边缘为基点LODOP中预览界面查看打印机的可打区域具体值

例如:如图,测试代码用到的打印项:两个纯文本,两个实心矩形。(实心矩形和纯文本宽高一致,由于纯文本没有背景色的设置,默认无背景色,这里用实心矩形当作背景色可以更直观的查看到文本项本身的宽高区域。)
情况1:第一个项实心矩形顶边距为0,高度为60。(第一个纯文本同样高和顶边距)
第二个项实心矩形顶边距为60,高度为60.(第二个纯文本同样高和顶边距)
设置纸张不定高,下方留白高度为0。
效果:纸张高度为120,为两个打印项的高度60+60之和。

情况2(测试内容超出):第一个项实心矩形顶边距为0,高度为60。(第一个纯文本同样高和顶边距)
第二个项实心矩形顶边距为60,高度为60.(第二个纯文本同样高和顶边距)
设置纸张不定高,下方留白高度为0。
效果:纸张高度为两个打印项的高度60+60之和。
相关博文:LODOP打印超过后隐藏内容样式
由相关博文可知,纯文本超过打印项高度会隐藏,由情况1,可知打印项高度会影响纸张的高度,如情况1,两个文本项之间存在间距,这间距是打印项高度造成的。
一般小票比较简单,内容就是商品和价格,估计最大的文本的值,设计合适的宽高,如果商品名字很长,宽高不够,会隐藏后面的内容。

情况:3:第一个项实心矩形顶边距为10,高度为60。(第一个纯文本同样高和顶边距)
第二个项实心矩形顶边距为80,高度为60.(第二个纯文本同样高和顶边距)
设置纸张不定高,下方留白高度为60。
效果:纸张高度为顶边距10+打印项高度60+两个纯文本打印项的间隔(80-60-10)+第二个打印项高度60+下方留白60

也就是纸张高度=打印项高度累计+打印项间隔高度+顶边距+底边距(下方留白),无整体偏移可打区域等情况下。

测试代码的宽度设定的好像有差异,不过这里演示不定高,和高度有关,宽度就不改了,因为之前截好图了。
具体效果如图:

测试代码:

<a href="javascript:prn1_preview()">打印项高度(无边距)</a><br>
<a href="javascript:prn2_preview()">打印项高度内容超出(无边距)</a><br>
<a href="javascript:prn3_preview()">打印项高度内容超出(有上下边距)</a><br>
<script language="javascript" type="text/javascript">
var LODOP; //声明为全局变量
function prn1_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINTER_INDEX("Microsoft XPS Document Writer");//指定某虚拟打印机
LODOP.SET_PRINT_PAGESIZE(3,1385,0,"");//这里3表示纵向打印且纸高“按内容的高度”;1200表示纸宽138.5mm;0表示页底空白0mm
LODOP.ADD_PRINT_SHAPE(4,0,0,119,60,0,1,"#0080FF");//实心矩形,上左边距都是0,宽119,高 60.
LODOP.ADD_PRINT_SHAPE(4,60,0,119,60,0,1,"#80FF80");//实心矩形,上边距都是60,宽119,高 60.
LODOP.ADD_PRINT_TEXT(0,0,119,60,"新加文本1");
LODOP.ADD_PRINT_TEXT(60,0,119,60,"新加文本1");
LODOP.PREVIEW();
};
function prn2_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINTER_INDEX("Microsoft XPS Document Writer");//指定某虚拟打印机
LODOP.SET_PRINT_PAGESIZE(3,1200,0,"");//这里3表示纵向打印且纸高“按内容的高度”;1200表示纸宽138.5mm;0表示页底空白0mm
LODOP.ADD_PRINT_SHAPE(4,0,0,119,60,0,1,"#0080FF");//实心矩形,上左边距都是0,宽119,高 60.
LODOP.ADD_PRINT_SHAPE(4,60,0,119,60,0,1,"#80FF80");//实心矩形,上边距都是60,宽119,高 60.
LODOP.ADD_PRINT_TEXT(0,0,119,60," Lodop(标音:劳道谱,俗称:露肚皮)是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码直接实现复杂打印。控件功能强大,却简单易用,所有调用如同JavaScript扩展语句,主要接口函数如下:");
LODOP.ADD_PRINT_TEXT(60,0,119,60," Lodop(标音:劳道谱,俗称:露肚皮)是专业WEB控件,用它既可裁剪输出页面内容,又可用程序代码直接实现复杂打印。控件功能强大,却简单易用,所有调用如同JavaScript扩展语句,主要接口函数如下:");
LODOP.PRINT_DESIGN();
};
function prn3_preview() {
LODOP=getLodop();
LODOP.PRINT_INIT("");
LODOP.SET_PRINTER_INDEX("Microsoft XPS Document Writer");//指定某虚拟打印机
LODOP.SET_PRINT_PAGESIZE(3,1385,60,"");//这里3表示纵向打印且纸高“按内容的高度”;1200表示纸宽138.5mm;60表示页底空白6mm
LODOP.ADD_PRINT_SHAPE(4,10,0,119,60,0,1,"#0080FF");//实心矩形,上左边距都是0,宽119,高 60.
LODOP.ADD_PRINT_SHAPE(4,80,0,119,60,0,1,"#80FF80");//实心矩形,上边距都是60,宽119,高 60.
LODOP.ADD_PRINT_TEXT(10,0,119,60,"新加文本1");
LODOP.ADD_PRINT_TEXT(80,0,119,60,"新加文本1");
LODOP.PREVIEW();
};
</script>

图示:

注意单位的不同,PAZESIZE的默认缺省单位是0.1mm,打印项的默认缺省单位是px。

LODOP纸张高度不定的纯文本累计高度的更多相关文章

  1. LODOP中纸张高度不定超文本和纯文本对比

    关于纸张高度不定的小票打印,建议使用纯文本进行设计,避免纸张高度引起变形,或超文本解析差异造成一些影响:LODOP纸张高度不定的纯文本累计高度 上面的链接的博文里,纯文本可通过间距和高度值累计,得出最 ...

  2. Lodop纯文本英文-等符号自动换行问题

    ADD_PRINT_TEXT纯文本,宽度不够,高度足够,超宽会自动换行,高度不够会隐藏后面的内容.在超宽自动换行的时候,如果有-或()之类的,英文单词不拆分,或其他一些认为是不拆分的情况,会造成还没有 ...

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

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

  4. Lodop打印控件输出页码(超文本和纯文本页码)

    Lodop打印控件打印超文本既可以手动分页,也可以自动分页,自动分页可阅读本博客的另一篇博文:Lodop打印控件 超文本自动分页 自动分页的时候,往往是不知道需要打印的内容到底分了几页,也就不可能预先 ...

  5. 计算纯文本情况下RichTextBox实际高度的正确方法(.NET)

    2016-07-17重大更新           其实有更好.更系统的方法,也是最近才发现的,分享给大家!! /// <summary> /// /// </summary> ...

  6. 使用div模拟textarea,实现文本输入框高度自适应(附:js控制textarea实现文本输入框高度自适应)

    一.使用textarea标签进行多行文本的输入有很多限制,比如不能实现高度自适应,会出现难看的滚动条等问题. HTML5中添加了一个新属性contenteditable,该属性可以让input,tex ...

  7. 纯文本抽出程序库DMC TEXT FILTER

    因需而生,红樱枫为文本转换市场领航 --纯文本抽出程序库DMC TEXT FILTER,从需求中把握平衡 在高度数字化的今天,数字图书馆已经成为非常多人查询资料的有效途径.然而即使在畅通的宽带搜寻中一 ...

  8. 小tip: 如何让contenteditable元素只能输入纯文本

    div模拟textarea文本域轻松实现高度自适应 这篇文章发布于 2010年12月23日,星期四,22:07,归类于 css相关. 阅读 112630 次, 今日 40 次 by zhangxinx ...

  9. 限制可编辑div只能输入纯文本

    本博客转载自张鑫旭大神的一篇文章:小tip: 如何让contenteditable元素只能输入纯文本,原文地址:http://www.zhangxinxu.com/wordpress/2016/01/ ...

随机推荐

  1. css点击li里面的标签 点击当前标签字体加粗 之前的恢复原始状态

    <div class="functionalNavigation"> <ul class="ulp"> <icon class=& ...

  2. 开发中少不了的Fun -- 前端本地存储

    存储sessionStorage function setSessionStore (name, content) { if (!name) return if (typeof content !== ...

  3. Mongo Restore

    #!/bin/sh HOST_IP=`/sbin/ifconfig | sed -n 's/.*inet addr:\([0-9.]\+\)\s.*/\1/p' | head -n1` echo &q ...

  4. hash 跟B+tree的区别

    1.hash只支持in跟=,不支持范围查询,时间复杂度:O(1) 2.B+tree支持范围查询,时间复杂度:O(log n) 3. B+tree 的优点:1.磁盘读取代价更低              ...

  5. C#读取App.config/Web.config

    读取需要添加 System.Configuration 引用, 两种方式添加: 1:.NETFramework程序可以在引用右击添加引用,然后添加System.Configuration 2:引入Nu ...

  6. jQuery.extend([deep], target, object1, [objectN])

    jQuery.extend([deep], target, object1, [objectN]) 概述 用一个或多个其他对象来扩展一个对象,返回被扩展的对象.直线电机 如果不指定target,则给j ...

  7. js数据类型自动转化规律

    1. 原始数据遇运算符 1. +运算符 1) 如果算子两侧都是字符串,返回拼接结果: 2) 如果算子两侧不全是字符串,则根据实际情况: 如果需要字符串,就调用String(); true + &quo ...

  8. Flutter布局5---Container

    Container 容器 简介一个常用的widget,它结合了常见的绘画,定位和大小调整·该容器首先让child填充绘制,然后再将其他的约束应用于填充范围.·在绘画过程中,容器先应用给定的转换,再绘制 ...

  9. PHP基础--traits的应用

    Traits 在PHP中实现在方法的重复使用:Traits与Class相似,但是它能够在Class中使用自己的方法而不用继承: Traits在Class中优先于原Class中的方法,引用PHP Doc ...

  10. CSS定位中“父相子绝”

    一.定位的介绍 定位有三种:相对定位(position:relative).绝对定位(position:absolute).固定定位(position:fixed) 二.三种定位的用法,特点和实例 2 ...