打印条形码或扩展字符
编码 esc i
12 月 27 105
十六进制 1b 69
格式: esc i n ... n 根据参数‘n ... n’ 部分,建立条形码或扩展字符。关于参数的详细信息,请参阅以下参数的定义。这个命令必须以‘ \ ’ 编码(5ch)结尾。
参数的定义
参数部分(n ... n) 条形码命令可以有以下参数。因为参数影响单一命令语法esc i n ... n \,所以将不应用在条形码命令中。如果不给出这些参数,必须作预设置。最后的参数必须是以(‘b’ 或‘b’)开头的条形码或以(‘l’或‘l’)开头的扩展字符数据。其它参数可以按照任意秩序给出。每个参数可以以小写字符或大写字符开头,例如‘t0’ 或‘t0’, ‘s3’等。
条形码模式
n =‘t0’ 或‘t0’ code 39 (默认)
n = ‘t1’ 或‘t1’ 间隔2/5
n = ‘t3’ 或‘t3’ fim (us-post net)
n = ‘t4’ 或‘t4’ post net (us-post net)
n = ‘t5’ 或‘t5’ ean 8, ean 13 或upc a
n = ‘t6’ 或‘t6’ upc e
n = ‘t9’ 或‘t9’ codabar
n = ‘t12’ 或‘t12’ code 128 set a
n = ‘t13’ 或‘t13’ code 128 set b
n = ‘t14’ 或‘t14’ code 128 set c
n = ‘t130’ 或‘t130’ isbn (ean)
n = ‘t131’ 或‘t131’ isbn (upc-e)
n = ‘t132’ 或‘t132’ ean 128 set a
n = ‘t133’ 或‘t133’ ean 128 set b
n = ‘t134’ 或‘t134’ ean 128 set c
这个参数选择条形码的模式如上所示。当n 是‘t5’ 或‘t5’ 时条形码模式(ean 8,ean 13 或upc a)将根据数据中的字符号码而变化。
条形码,扩展字符,线条框图和组件图
n = ‘s0’ 或‘s0’ 3: 1 (默认)
n = ‘s1’ 或‘s1’ 2: 1
n = ‘s3’ 或‘s3’ 2.5: 1
这个参数选择条形码的方式如上所示。当选择了ean 8,ean 13,upc-a,code 128 或ean 128 条形码模式后,这个条形码参数将被忽略。
扩展字符
‘s’
0 = 白色
1 = 黑色
2 = 垂直线条
3 = 水平线条
4 = 交叉口
例如‘s’ n1 n2
n1 = 背景填满的图表
n2 = 前景填满的图表
如果‘s’ 仅跟随在一个参数后,这个参数是前景填满的图表。
线路框图和组件图
‘s’
1 = 黑色
2 = 垂直线条
3 = 水平线条
4 = 交叉口
条形码
n = ‘mnnn’ 或‘mnnn’ (nnn = 0 ~ 32767)
这个参数表示条形码的宽度。‘nnn’ 部分是百分比。
条形码的易读行on 或off
n = ‘r0’ 或‘r0’ 易读行off
n = ‘r1’ 或‘r1’ 易读行on
预设: 易读行on
(1) ‘t5’ 或‘t5’
(2) ‘t6’ 或‘t6’
(3) ‘t130’ 或‘t130’
(4) ‘t131’ 或‘t131’
预设: 易读行off
其它
此参数显示打印机是否打印条形码下面的易读行。在ocr-b 10 点字体和被标记的所有当前字符方式增强时,总是打印易读行。设置由通过‘t’ 或‘t’ 选择的条形码模式决定。
空白区
n = ‘onnn’ 或‘onnn’ (nnn = 0 ~ 32767)
空白区为条形码两侧的区域。它的宽度通过使用‘u’ 或‘u’ 参数设置来表达。(关于‘u' 或‘u' 参数的描述,请参阅下一部分。)静止区域的默认设置宽度为1 英寸。
条形码,扩展字符,线路框图和组件图
n = ‘u0’ 或‘u0’ mm (预设)
n = ‘u1’ 或‘u1’ 1/10
n = ‘u2’ 或‘u2’ 1/100
n = ‘u3’ 或‘u3’ 1/12
n = ‘u4’ 或‘u4’ 1/120
n = ‘u5’ 或‘u5’ 1 10 mm
n = ‘u6’ 或‘u6’ 1/300
n = ‘u7’ 或‘u7’ 1/720
这个参数表示了x- 轴移位、y- 轴移位和条形码高度的测量部分。
条形码,扩展字符,线条框图和组件图在x- 像素的移位。
n = ‘xnnn’ 或‘xnnn’
这个参数显示在‘u’- 或‘u’- 指定的部分从左侧装订线偏移。
在y- 轴的条形码和扩展字符
n = ‘ynnn’ 或‘ynnn’
这个参数显示在‘u’- 或‘u’- 指定的部分离当前位置的下偏移。
条形码,扩展字符,线条框图和组件图
n = ‘hnnn’, ‘hnnn’, ‘dnnn’ 或‘dnnn’
1 ean13, ean8, upc-a, isbn (ean13, ean8, upc-a), isbn (upc-e): 22 mm
2 upc-e: 18 mm
3 其它: 12 mm
扩展字符→ 2.2 mm (预设)
线路框图和组件图→ 1 点
这个参数表示条形码或扩展字符的高度如上所示。它能够以‘h’,‘h’,‘d’ 或‘d’ 开头。这个参数显示在‘u’- 或‘u’-指定的部分条形码的高度。条形码高度的默认设置(12 mm, 18 mm 或22 mm)由‘t’ 或‘t’ 的选择来决定。
条形码,扩展字符,线条框图和组件图
n = ‘wnnn’ 或‘wnnn’
扩展字符→ 1.2 mm
线路框图和组件图→ 1 点
这个参数表示条形码或扩展字符的宽度如上70°
条形码数据开始
n = ‘b’ 或‘b’
以‘b’ 或‘b’ 结尾的数据被读入作为条形码数据。条形码数据必须以‘ \ ’ 编码(5ch) 结尾,这个命令也可接收由‘t’ 或‘t’ 选中的条形码模式决定的条形码数据。
1、 当code 39 与参数‘t0’ 或‘t0’ 一起被选择时‘0’ 至‘9’,‘a’ 至‘z’,‘-’,‘ . ’,‘ (space)’,‘$’,‘ / ’,‘+’ 和‘%’ 共43 个字符可以被条形码数据接受。其它字符将会导致数据出错。条形码的字符数量没有限制。条形码数据自动以‘ * ’ (开始字符和停止字符)开始和结尾。如果接收到的数据其开头或结尾有‘ * ’,该符号将被作为一个开始字符或停止字符。
2、 当间隔2/5 与参数‘t1’ 或‘t1’ 一起被选中时:
‘0’ 至‘9’ 十位数字字符将作为条形码数据被接受。其它字符将会导致数据出错。条形码的字符数量没有限制。这个条形码模式需要7 个字符。如果条形码数据是奇数,将自动在条形码数据后添加‘0’。
3、 当fim (us-post net) 与参数‘t3’ 或‘t3’ 一起被选中时∶
字符‘a’ 至‘d’ 有效,并且一位数据可以被打印。大写和小写的字母字符均可接受。
4、 当post net (us-post net) 与参数‘t4’ 或‘t4’ 一起被选中时∶
数字‘0’ 至‘9' 可以作为数据,但是必须以一个校验位结束。‘?’ 可以用来代替校验位。
5、 当ean 8,ean 13 或upc a 与参数‘t5’ 或‘t5’ 一起被选中时∶
‘0’ 至‘9’ 十位字数字符将作为条形码数据被接受。条形码的字符数量限制如下。
ean 8: 总共8 位(7 位+ 1 位校验位)
ean 13: 总共13 位(12 位+ 1 位校验位)
upc a: 总共12 位(11 位+ 1 位校验位)
除上述以外的字符外,很多字符将引起数据出错,导致条形码作为正常打印数据打印出来。如果校验位不正确,打印机将自动判定正确的校验位,因此将打印输出正确的条形码。当选择了ean13 时,在数据创建一个附加代码后添加‘+’ 和一个2 位或5 位的数字。
6、当upc-e 与参数‘t6’ 或‘t6’ 一起被选中时∶
数字‘0’ 至‘9’ 将作为条形码数据被接受。
8 位(1 ‘?’ 可以用来代替校验位。) (标准格式)第一个字符必须是‘0’,并且数据必须以一个校验位结束。
合计8 位数=‘0’ + 6 位数+1 位校验位。
6 位(2 在添加‘+’ 和2 位或5 位数字建立的添加代码数据后。) 第一个字符和最后一个字符从8 位数据中去除。
7、当条形码数据与参数‘t9’ 或‘t9’ 一起被选中时∶
可以打印‘0’ 至‘9’,‘-’,‘ . ’,‘$’,‘/’,‘+’,‘ : ’。‘a’ 至‘d’ 可以被作为一个开始或结束编码打印,大写和小写都可以。如果没有开始或结束编码,将发生出错情况。不能添加校验位且使用‘?’ 将导致出错。
8、当代码128 设置a,设置b 或设置c 与参数‘t12’ 或‘t12’, ‘t13’ 或‘t13’ 或‘t14’ 或‘t14’ 一起被选中时∶
代码128 设置a, b 和c 将能够被分别选中。设置a 显示字符十六进制00 至5f。设置b 显示字符十六进制20 至7f。设置c 包括一对00 至99。通过发送由%1, %2, %3 和%4 产生的%a, %b 或%c,fnc 1,2,3 和4 可以实现代码设置之间的切换。shift 编码%s 允许从设置a 到设置b 和从设置a 到设置b 进行临时切换(仅一个字符)。发送‘%’ 字符两次可以将它编码。
9、当isbn (ean) 与参数‘t130’ 或‘t130’ 一起被选中时∶
与‘t5’ 或‘t5’ 使用相同的法则。
10、当isbn (upc-e) 与参数‘t131’ 或‘t131’ 一起被选中时∶
与‘t6’ 或‘t6’ 使用相同的法则。
11、当代码128设置a,设置b或设置c 与参数‘t132’或‘t132’,‘t133’或‘t133’或‘t134’或‘t134’一起被选中时∶
与‘t12’ 或‘t12’, ‘t13’ 或‘t13’ 或‘t14’ 或‘t1’ 使用相同的法则。
组件图
esc i ... e ( 或e)
‘e’ 或‘e’ 是结束符。
线路框图
esc i ... v (或v)
‘v’ 或‘v’ 是结束符。
扩展字符数据开始
n = ‘l’ 或‘l’
数据以‘l’ 或‘l’ 作为扩展字符数据(或标签数据)被读取。扩展字符数据必须以‘\’ 编码(5ch) 结尾, 它也可以结束这个命令。
举例程序列表
width "lpt1:",255
'code 39
lprint chr$(27);"it0r1s0o0x00y00bcode39?\";
'interleaved 2 of 5
lprint chr$(27);"it1r1s0o0x00y20b123456?\";
'fim
lprint chr$(27);"it3r1o0x00y40ba\";
'post net
lprint chr$(27);"it4r1o0x00y60b1234567890?\";
'ean-8
lprint chr$(27);"it5r1o0x00y70b1234567?\";
'upc-a
lprint chr$(27);"it5r1o0x50y70b12345678901?\";
'ean-13
lprint chr$(27);"it5r1o0x100y70b123456789012?\";
'upc-e
lprint chr$(27);"it6r1o0x150y70b0123456?\";
'codabar
lprint chr$(27);"it9r1s0o0x00y100ba123456a\";
'code 128 set a
lprint chr$(27);"it12r1o0x00y120bcode128a12345?\";
'code 128 set b
lprint chr$(27);"it13r1o0x00y140bcode128b12345?\";
'code 128 set c
lprint chr$(27);"it14r1o0x00y160b";chr$(1);chr$(2);"?\";
'isbn(ean)
lprintchr$(27);"it130r1o0x00y180b123456789012?+12345\";
'ean 128 set a
lprint chr$(27);"it132r1o0x00y210b1234567890?\";
lprint chr$(12)
end