admin 管理员组文章数量: 1087139
2024年3月29日发(作者:play props什么意思)
HDD-80260打印机ESC/POS 控制指令
ESC/POS 控制指令
HT 横向跳格
[名称]
[格式]
Horizontal tab
ASCII
Hex
Decimal
HT
09
9
[描述]
[注释]
将当前位置移动到下一个跳格位置。
如果下一个跳格位置没有设置,该指令被忽略。
如果下一个横向跳格位置超越打印区域,将当前位置设置为[打印宽度+1]。
水平跳格位置由指令ESC D 来设置。
如果接收到此命令时当前位置在[打印宽度+1],打印机执行当前行缓冲区满动作
并且将打印位置移到下一行的起始位置。
默认值跳格位置是每8 个标准ASCII 字符(12×24)字符跳一格。
当前行缓冲区满时,打印机执行下列动作:
标准模式下,打印机打印当前行内容并将打印位置置于下一行的起始位置。
页模式下,打印机进行换行并将打印位置置于下一行的起始位置。
[参考]
ESC D
LF 打印并走纸一行
[名称]
[格式]
Print and line feed
ASCII
Hex
LF
0A
1
Decimal
[描述]
[注释]
10
打印缓冲区内数据并走纸一行。
该指令将当前位置置于行首。
[参考] ESC 2, ESC 3
FF 打印并走纸
[名称]
[格式]
Print and return to standard mode in page mode
ASCII
Hex
Decimal
FF
0C
12
[描述] 页模式下打印缓冲区的所有内容并返回标准模式,标准模式下打印缓冲区内数据并走
纸一行。
[注释] 打印后清除缓冲区的内容。
由ESC W 指令设置的打印区域被重置为默认设置。
打印机不执行切纸动作。
该指令将当前位置置于行首。
该指令只在页模式下有效。
[参考]
ESC FF, ESC L, ESC S
CR 打印并回车
[名称]
[格式]
Print and carriage return
ASCII
Hex
Decimal
CR
0D
13
[描述] 当自动换行被允许时,该指令的功能等同于LF 指令;
当自动换行被禁止时,该指令被忽略。
[注释]
设置打印位置为行首。
2
串行接口模式下该指令被忽略。
并口模式下该指令是否有效由打印机配置决定。
[参考]
LF
CAN 页模式下删除打印缓冲区内容
[名称]
[格式]
Cancel print data in page mode
ASCII
Hex
Decimal
CAN
18
24
[描述]
[注释]
页模式下删除当前区域下的内容。
该指令只在页模式下有效。
如果先前设定区域与当前区域有重叠部分,重叠部分也被删除。
[参考] ESC L, ESC W
3
DLE DC4 n m t 实时产生钱箱开启脉冲
[名称]
Generate pulse at real-time
[格式]
ASCII
Hex
Decimal
DLE
10
16
DC4
14
20
n
n
n
m
m
m
[范围] n = 1;m = 0,1;1≤t≤8
[描述] 在指定的钱箱插座引脚产生设定的开启脉冲,引脚由m指定:
m=0:钱箱插座引脚2;
m=1:钱箱插座引脚5。
脉冲高电平时间为[t×100ms],低电平的时间为[t×100ms]。
[注释] 当打印机正在执行钱箱开启命令(ESC p 或 DEL DC4)时,该命令被忽略。
串口模式下,打印机接收该指令后立即执行。
并口模式下,打印机忙的时候该指令不执行。
如果打印数据中包含和此指令相同的数据,则这些数据将被当作该指令执行。用
户必须考虑到这种情况。
该指令尽量不要插在2 个或更多字节的指令序列中。
即使打印机被ESC=(选择外设)命令设置为禁止,该指令依然有效。
[参考]
ESC p
4
ESC FF 页模式下打印
[名称]
[格式]
Print data in page mode
ASCII
Hex
Decimal
ESC
1B
27
FF
0C
12
[描述]
[注释]
页模式下,打印缓冲区的所有内容。
该指令只在页模式下有效。
打印后不清除打印缓冲区的内容、ESC T和ESC W设置和字符的位置。
[参考]
FF, ESC L, ESC S
ESC SP n 设置字符右间距
[名称]
[格式]
Set right-side character spacing
ASCII
Hex
Decimal
0≤n≤255
设置字符的右间距为[n×横向移动单位或纵向移动单位]英寸。
当字符放大时,间距随之放大相同的倍数。
此指令设置的值在页模式和标准模式下是相互独立的。
横向或纵向移动单位由GS P 指定。改变横向或纵向移动单位不改变当前右间距。
标准模式下,使用横向移动单位。
在页模式下,根据区域的方向和起始位置来选择使用横向移动单位或纵向移动单
位,其选择方式如下:①当打印起始位置由ESC T 设置为打印区域的左上角或
右下角时,使用横向移动单位;②当打印起始位置由ESC T 设置为打印区域的
左下角或右上角时,使用纵向移动单位;
ESC
1B
27
SP
20
32
n
n
n
[范围]
[描述]
[注释]
5
最大右间距是255/200 英寸。任何超过这个值的设置都自动转换为最大右间距。
[默认值]
n=0
[参考] GS P
ESC ! n 选择打印模式
[名称]
[格式]
Select print mode(s)
ASCII
Hex
Decimal
0≤n≤255
根据n 的值设置字符打印模式
位
0
1,2
1/0
0
1
0
3
1
0
4
1
0
5
1
6
0
7
1
ESC
1B
27
!
21
33
n
n
n
[范围]
[描述]
HEX Decimal
00
01
00
08
00
10
00
20
00
80
0
1
0
8
0
16
0
32
0
128
功能
标准ASCII字体(12 × 24)
压缩ASCII字体 (9 × 17
未定义
取消加粗模式
选择加粗模式
取消倍高模式
选择倍高模式
取消倍宽模式
选择倍宽模式
未定义
取消下划线模式
选择下划线模式
[注释] 当倍宽和倍高模式同时选择时,字符同时在横向和纵向放大两倍。
6
除了HT设置的空格和旋转打印的字符,其余任何字符都可以加下划线。
下划线度由ESC -确定,与字符无关。
当一行中部分字符为倍高或更高,所有字符以底端对齐。
ESC E 也能选择或取消加粗模式,最后被执行的指令有效。
ESC -也能选择或取消下划线模式,最后被执行的指令有效。
GS !也能设置字符大小,最后被执行的指令有效。
[默认值]
n=0
[参考]
ESC -, ESC E, GS !
ESC $ nL nH 设置绝对打印位置
[名称]
[格式]
Set absolute print position
ASCII
Hex
Decimal
ESC
1B
27
$
24
36
nL
nL
nL
nH
nH
nH
[范围]
[描述]
[注释]
0≤nL≤255;0≤nH≤2
将当前位置设置到距离行首(nL+nH×256)×(横向或纵向移动单位)处。
如果设置位置在指定打印区域外,该命令被忽略。
横向和纵向移动单位由GS P 设置。
标准模式下使用横向移动单位。
在页模式下,根据打印区域的方向和打印起始位置来选择使用横向移动单位或纵
向移动单位,其选择方式如下:① 当打印起始位置由ESC T 设置为打印区域的
左上角或右下角时,使用横向移动单位;② 当打印起始位置由ESC T 设置为打
印区域的左下角或右上角时,使用纵向移动单位。
[参考] ESC , GS $, GS , GS P
7
ESC % n 选择/取消用户自定义字符
[名称]
[格式]
Select/cancel user-defined character set
ASCII
Hex
Decimal
0≤n≤255
选择或取消用户自定义字符。
当n 的最低位为0 时,不使用用户自定义字符。
当n 的最低位为1 时,使用用户自定义字符。
[注释] 当取消使用用户自定义字符的时候,自动使用内部字库。
n 只有最低位有效。
[默认值]
n=0
ESC
1B
27
%
25
37
n
n
n
[范围]
[描述]
[参考]
ESC &, ESC ?
ESC & y c1 c2 [d(y × x1)]...[d(y × xk)] 定义用户自定义字符
[名称]
[格式]
Define user-defined characters
ASCII
Hex
Decimal
ESC &
1B 26
27 38
y
y
y
c1
c1
c1
c2
c2
c2
[d(y ´ x1)]...[d(y ´ xk)]
[d(y ´ x1)]...[d(y ´ xk)]
[d(y ´ x1)]...[d(y ´ xk)]
y = 3;32 ≤ c1 ≤ c2 ≤ 126;0 ≤ x ≤ 12 (标准ASCII字体12× 24);0 ≤ x ≤ 9 (压缩ASCII
[范围]
字体9×17);0 ≤ d1 ... d(y×xk) ≤ 255
[描述] 定义用户自定义字符。
y指定纵向字节数。
c1 是起始字符代码,c2 是终止字符代码。
x 指定横向点数。
[注释] 允许的字符代码范围是ASCII 码的<20>H 到<7F>H(96 个字符)
可以连续定义多个字符,如果只定义一个字符c1 = c2。
d 是下载字符的数据。各点的数据从左边开始。
8
自定义字符的大小是(y×x)字节。
数据的各个位为1 表示打印这个点,为0 表示不打印。
当下列情况,用户自定义字符被清除:①ESC @被执行。② ESC ?被执行。③ 打
印机复位或电源关闭。
[默认值] 内部字库设置
[参考] ESC %, ESC ?
[实例] 当选择标准ASCII 字体(12×24)时
当选择压缩ASCII 字体时(9×17)
9
ESC * m nL dk 选择位图模式
[名称]
[格式]
Select bit-image mode
ASCII
Hex
Decimal
ESC
1B
27
*
2A
42
m
m
m
nL
nL
nL
nH
nH
nH
d1...dk
d1...dk
d1...dk
[范围]
[描述]
m = 0, 1, 32, 33;0 ≤ nL ≤ 255;0 ≤ nH ≤ 3;0 ≤ d ≤ 255
选择由m 指定的一种位图模式,位图点数由nL 和nH 确定:
纵向
m 模式
点数
0
1
32
8点单密度
8点双密度
24点单密度
8
8
24
分辨率
67DPI
67DPI
200DPI
分辨率
100DPI
200DPI
100DPI
数据个数(k)
nL+nH×256
nL+nH×256
(nL+nH×256)×3
10
横向
33 24点双密度 24 200DPI 200DPI (nL+nH×256)×3
[注释] 如果m 的值超出规定范围,nL 和其后的数据被作为普通数据处理。
横向打印点数由nL 和nH 决定,总的点数为nL+nH×256。
位图超出当前区域的部分被截掉。
d 是位图的数据。数据各个位为1 则打印这个点,为0 不打印。
位图数据发送完成后,打印机返回普通数据处理模式。
除了倒置模式,这条指令不受其它打印模式影响 (加粗、双重打印、下划线、字
符放大和反显)。
数据和要打印点的关系如下:
选择8 点密度时:
选择24 点密度时:
11
ESC – n 选择/取消下划线模式
[名称]
[格式]
Select/cancel user-defined character set
ASCII
Hex
Decimal
ESC
1B
27
-
2D
45
n
n
n
[范围]
[描述]
0≤n≤2,48≤n≤50
根据n 的值选择或取消下划线模式:
n
0,48
1,49
2,50
功能
取消下划线模式
选择下划线模式(1点宽)
选择下划线模式(2点宽)
[注释] 下划线可加在所有字符下(包括右间距),但不包括HT 设置的空格。
下划线不能作用在字符旋转模式和反显的字符下。
当取消下划线模式时,后面的字符不加下划线,下划线的宽度不改变。默认宽度
是一点宽。
改变字符大小不影响当前下划线宽度。
12
下划线选择取消也可以由 ESC !来设置。最后执行的指令有效。
[默认值]
n=0
[参考] ESC !
ESC 2 设置默认行高
[名称]
[格式]
Select default line spacing
ASCII
Hex
Decimal
ESC
1B
27
2
32
50
[描述]
[注释]
选择1/6 英寸(约4.23mm)行高。
行高在标准模式和页模式下是独立的。
[参考] ESC 3
ESC 3 n 设置行高
[名称]
[格式]
Set line spacing
ASCII
Hex
Decimal
0≤n≤255
设置行高为[n×纵向或横向移动单位]英寸。
行高设置在标准模式和页模式下是相互独立的。
横向和纵向移动单位由GS P 设置,改变这个设置不影响当前行高。
标准模式下,使用纵向移动单位。
在页模式下,根据打印区域的方向和打印起始位置来选择使用横向移动单位或纵
向移动单位,其选择方式如下:①当打印起始位置由ESC T 设置为打印区域的
左上角或右下角时,使用纵向移动单位;②当打印起始位置由ESC T 设置为打
13
ESC
1B
27
3
33
51
n
n
n
[范围]
[描述]
[注释]
印区域的左下角或右上角时,使用横向移动单位。
最大走纸距离是1016mm(40 英寸),如果超出这个距离,取最大距离。
[默认值] 默认值行高约为4.23mm(1/6 英寸)。
[参考]
ESC 2, GS P
ESC = n 选择打印机
[名称]
[格式]
Set peripheral device
ASCII
Hex
Decimal
0≤n≤1
选择打印机,被选择的打印机可以接收主计算机发送的数据:
位
0
1-7
ESC
1B
27
=
3D
61
n
n
n
[范围]
[描述]
1/0
0
1
-
HEX Decimal
00
01
-
0
1
-
打印机禁止
打印机允许
未定义
功能
[注释] 当打印机被禁止时,除了实时指令(DLE EOT,DLE ENQ,DLE DC4)忽略所有其他
指令。
[默认值]
n=1
ESC ? n 取消用户自定义字符
[名称]
[格式]
Cancel user-defined characters
ASCII
Hex
Decimal
32≤n≤126
14
ESC
1B
27
?
3F
63
n
n
n
[范围]
[描述]
[注释]
取消用户自定义字符。
取消用户自定义字符中代码为n 的字符。取消后,此字符使用内部字库。
如果自定义字符中没有该字符,该指令被忽略。
[参考]
ESC &, ESC %
ESC @ 初始化打印机
[名称]
[格式]
Initialize printer
ASCII
Hex
Decimal
ESC
1B
27
@
40
64
[描述]
[注释]
清除打印缓冲区数据,打印模式被设为上电时的默认值模式。
指令缓冲区内容保留。
宏定义保留。
Flash位图数据不擦除。
ESC k NUL 设置横向跳格位置
[名称]
[格式]
Set horizontal tab positions
ASCII
Hex
Decimal
ESC
1B
27
D
44
68
n1...nk
n1...nk
n1...nk
NUL
00
0
[范围]
[描述]
1 n 255;0 k 32
设置横向跳格位置。
由行首起第n 列设置一个跳格位置。
共有k 个跳格位置。
[注释] 横向跳格位置由下式计算:字符宽度×n,字符宽度包括右间距,如果字符为倍
宽,跳格距离也随之加倍。
15
该指令取消以前的跳格位置设置。
当n=8 时,当前位置为第九列。
最多设置32 个(k=32)跳格位置,超过32 的跳格位置数据被作为普通数据处理。
跳格位置按升序排列,结束符为NUL。
当[n]k 小于或等于前一个[n]k-1 值时,跳格设置结束,后面的数据作为普通数据
处理。
ESC D NUL 取消所有的跳格位置设置。
改变字符宽度,先前指定的跳格位置并不发生变化。
字符宽度在标准模式和页模式下是独立的。
[默认值] 默认跳格设置是每8 个标准ASCII 字符(12×24)一个跳格位置。
[参考]
HT
ESC E n 选择/取消加粗模式
[名称]
[格式]
Turn emphasized mode on/off
ASCII
Hex
Decimal
0≤n≤255
选择或取消加粗模式:
当n的最低位为0时,取消加粗模式。
当n的最低位为1时,选择加粗模式。
[注释] n只有最低位有效。
ESC !同样可以选择/取消加粗模式,最后接收的命令有效。
[默认值]
n = 0
ESC
1B
27
E
45
69
n
n
n
[范围]
[描述]
[参考]
ESC !
16
ESC G n 选择/取消双重打印模式
[名称]
[格式]
Turn on/off double-strike mode
ASCII
Hex
Decimal
0≤n≤255
选择或取消双重打印模式:
当n的最低位为0时,取消双重打印模式。
当n的最低位为1时,选择双重打印模式。
[注释] n只有最低位有效。
该指令与加粗打印效果相同。
[默认值]
n = 0
ESC
1B
27
G
47
71
n
n
n
[范围]
[描述]
[参考]
ESC E
ESC J n 打印并走纸
[名称]
[格式]
Print and feed paper
ASCII
Hex
Decimal
0≤n≤255
打印缓冲区数据并走纸[n×纵向或横向移动单位]英寸。
打印结束后,将当前打印位置置于行首。
走纸距离不受ESC 2 或ESC 3 指令设置的影响。
横向和纵向移动单位由GS P 设定。
标准模式下,使用纵向移动单位。
17
ESC
1B
27
J
4A
74
n
n
n
[范围]
[描述]
[注释]
在页模式下,根据打印区域的方向和打印起始位置来选择使用纵向移动单位或横
向移动单位,其选择方式如下:①当打印起始位置由ESC T 设置为打印区域的
左上角或右下角时,使用纵向移动单位;②当打印起始位置由ESC T 设置为打
印区域的左下角或右上角时,使用横向移动单位;
最大走纸距离是1016mm(40 英寸).如果超出这个距离,取最大距离。
[参考]
GS P
ESC L 选择页模式
[名称]
[格式]
Select page mode
ASCII
Hex
Decimal
ESC
1B
27
L
4C
76
[描述]
[注释]
从标准模式转换到页模式。
该指令只在标准模式的行首有效。
在页模式下,该指令无效。
当执行FF 或ESC S 后,打印机返回到标准模式。
该指令将打印位置设置到ESC T 命令和ESC W 命令确定的位置上。
该指令将下列指令的设置转换到页模式下的值:
①设置字符右间距:ESC SP,FS S
②设置行间距:ESC 2,ESC 3
以下指令在页模式下只改变标志位,转换到标准模式后起作用。
①选择字符对齐模式:ESC a;
②选择倒置模式:ESC {;
③设置左空白:GS L;
④设置打印区域宽度:GS W
18
当电源关闭、打印机复位、或执行ESC @指令,打印机回到标准模式。
[参考]
FF,CAN,ESC FF,ESC S,ESC T,ESC W,GS $,GS
ESC M n 选择字体
[名称]
[格式]
Select character font
ASCII
Hex
Decimal
ESC
1B
27
M
4D
77
n
n
n
[范围]
[描述]
n = 0, 1, 2, 3, 48, 49, 50, 51
选择字体
n
0,48
1,49
2,50
3,51
功能
选择标准ASCII字体 (12 × 24)
选择压缩ASCII字体 (9 × 17)
选择用户自定义字符
选择汉字(24 × 24)
ESC R n选择国际字符集
[名称]
[格式]
Select an international character set
ASCII
Hex
Decimal
0≤n≤15
从下列表中选择国际字符集。
n
0
1
美国(U.S.A.)
法国(France)
19
ESC
1B
27
R
52
82
n
n
n
[范围]
[描述]
字符集
2
3
4
5
6
7
8
9
10
11
12
13
14
15
德国(Germany)
英国(U.K.)
丹麦I (Denmark I)
瑞典(Sweden)
意大利(Italy)
西班牙I (Spain I)
日本(Japan)
挪威(Norway)
丹麦II(Denmark II)
西班牙II(Spain II)
拉丁美洲(Latin America)
韩国(Korea)
斯洛文尼亚
/
克罗地亚
(Slovenia / Croatia)
中国(China)
[默认值]
n = 0
[参考]
ESC S 选择标准模式
[名称]
[格式]
Select standard mode
ASCII
Hex
Decimal
ESC
1B
27
S
53
83
[描述]
[注释]
从页模式转换到标准模式。
该指令在页模式下有效。
该指令清除页缓冲区打印数据。
20
该指令将当前位置置于行首。
页模式区域被初始化为默认值。
该指令将下列指令的设置转换到标准模式下的值:
①设置右间距:ESC SP,FS S
②选择行间距:ESC 2,ESC 3
下列命令在标准模式下可以设定相关参数但其设定值进入页模式后才起作用:
①设置页模式下打印区域:ESC W;
②设置页模式下区域方向:ESC T
以下指令在标准模式下被忽略:
①页模式下设置纵向绝对打印位置:GS $;
②页模式下设置相对打印位置:GS
打印机硬件复位或执行ESC @指令后,打印机回到标准模式。
[参考] FF, ESC FF, ESC L
ESC T n 在页模式下选择打印区域方向
[名称]
[格式]
Select print direction in page mode
ASCII
Hex
Decimal
ESC
1B
27
T
54
84
n
n
n
[范围]
[描述]
0 ≤ n ≤ 3;48 ≤ n ≤ 51
在页模式下选择打印区域的方向和起始位置。
n 指定打印区域的方向和起始位置:
21
n
0,48
1,49
2,50
3,51
打印方向
由左到右
由下到上
由右到左
由上到下
起始位置
左上(图中A)
左下(图中B)
右下(图中C)
右上(图中D)
[注释] 如果当前模式为标准模式,只设置内部标志位,不影响打印。
该指令可以设置打印内容在打印区域中的起始位置。
根据区域打印起始位置的不同,横向或纵向移动单位的使用也不相同:
①如果打印起始位置为打印区域的左上角或右下角,那么打印内容排列方向与
打印进纸方向垂直。
下列命令使用横向移动单位:ESC SP,ESC $,ESC
下列命令使用纵向移动单位:ESC 3,ESC J,GS $,GS
②如果打印机起始位置为打印区域的左下角或右上角,则打印内容排列方向与
打印机进纸方向相同。
下列命令使用横向移动单位:ESC 3,ESC J,GS $,GS
下列命令使用纵向移动单位:ESC SP,ESC $,ESC
[默认值]
n = 0
[参考] ESC $, ESC L, ESC W, ESC , GS $, GS P, GS
22
ESC V n 选择字符旋转打印
[名称]
[格式]
Select rotation mode
ASCII
Hex
Decimal
ESC
1B
27
V
56
86
n
n
n
[范围]
[描述]
0 ≤ n ≤ 2;48 ≤ n ≤ 50
选择字符旋转打印,n 的取值如下:
n
0,48
1,2,
49,50
功能
取消旋转打印模式,字符按正常模式打印
选择字符顺时针旋转90度打印
[注释] 该指令对所有字符有效,包括汉字。
当选择下划线模式时,下划线不能旋转打印。
旋转打印模式下,倍高和倍宽与正常模式下的方向相反。
[默认值]
n = 0
[参考]
ESC !, ESC -
ESC W xL xH yL yH dxL dxH dyL dyH 页模式下设置打印区域
[名称]
[格式]
Set printing area in page mode
ASCII
Hex
Decimal
ESC
1B
27
W
57
87
xL
xL
xL
xH yL
xH yL
xH yL
yH dxL
yH dxL
yH dxL
dxH dyL
dxH dyL
dxH dyL
dyH
dyH
dyH
[范围]
[描述]
0 ≤ xL, xH, yL, yH, dxL, dxH, dyL, dyH ≤ 255 (除了dxL=dxH=0 或 dyL=dyH=0)
按如下方法设置区域横向起始位置、纵向起始位置、区域宽度和高度:
横向起始位置:x0 = [(xL+xH×256)×横向移动单位]
纵向起始位置:y0 = [(yL+yH×256)×纵向移动单位]
23
打印区域宽度:dx = [dxL+dxH×256]×横向移动单位]
打印区域高度:dy = [dyL+dyH×256]×纵向移动单位]
[注释] 该指令在标准模式下只设置内部标志位,不影响打印。
如果横向起始位置或纵向起始位置超出打印区域,打印机停止处理该指令,其后
的数据按普通数据处理。
如果打印区域的宽度或高度被设置为0,打印机停止处理该指令,其后的数据按
普通数据处理。
该指令与ESC T 指令一起确定当前打印位置。
如果横向起始位置+打印区域宽度的值超出可打印区域,则打印区域的宽度自动
调整为横向可打印宽度-横向起始位置。
如果纵向起始位置+打印区域高度的值超出可打印区域,则打印区域的高度自动
调整为纵向可打印高度-纵向起始位置。
横向和纵向的移动单位由GS P 指定,改变横向和纵向移动单位不会改变当前的
打印区域。
用横向移动单位设置横向起始位置和区域宽度,用纵向移动单位设置纵向起始位
置和区域高度。
假设横向起始位置、纵向起始位置、打印区域宽度和打印区域高度为X,Y,Dx,Dy,
打印区域的设置如下图所示:
24
该打印机的可打印区域约为横向72mm,纵向约为160mm。
[默认值] xL=xH=yL=yH=0;dxL=72;dxH=2;dyL=176;dyH=4
[参考] CAN, ESC L, ESC T, GS P
ESC nL nH 设置相对横向打印位置
[名称]
[格式]
Set relative print position
ASCII
Hex
Decimal
ESC
1B
27
5C
92
nL
nL
nL
nH
nH
nH
[范围]
[描述]
0 ≤ nL ≤ 255;0 ≤ nH ≤ 255
以横向或纵向移动单位设置横向相对位移。
该指令将打印位置设置到距当前位置[(nL+nH×256)×横向或纵向移动单位]处。
[注释] 超出可打印区域的设置将被忽略。
当打印位置向右移动时:nL+nH×256=N。
当打印位置向左移动时采用补码:nL+nH×256=65536–N。
打印起始位置从当前位置移动到[N×横向移动单位或者纵向移动单位]。
横向和纵向移动单位由GS P 指令设置。
在标准模式下,使用横向移动单位。
在页模式下,根据打印区域的方向和起始位置来选择使用横向移动单位或纵向移
动单位,其选择方式如下:
①当打印起始位置由ESC T 设置为打印区域的左上角或右下角时,使用横向移
动单位;
②当打印起始位置由ESC T 设置为打印区域的左下角或右上角时,使用纵向移
动单位。
[参考]
ESC $, GS P
25
ESC a n 选择字符对齐模式
[名称]
[格式]
Select justification
ASCII
Hex
Decimal
ESC
1B
27
a
61
97
n
n
n
[范围]
[描述]
0 ≤ n ≤ 2;48 ≤ n ≤ 50
使所有的打印数据按某一指定对齐方式排列。
n 的取值与对齐方式对应关系如下:
n
0,48
1, 49
2, 50
对齐方式
左对齐
中间对齐
右对齐
[注释] 该指令只在标准模式下的行首有效。
该指令在页模式下只改变内部标志位。
该指令根据HT,ESC $或ESC 指令来调整空白区域。
[默认值]
[实例]
n = 0
ESC c 5 n 允许/禁止按键
[名称]
[格式]
Enable/disable panel buttons
ASCII
Hex
Decimal
0 ≤ n ≤ 255
允许/禁止按键。
26
ESC
1B
27
c
63
99
5
35
53
n
n
n
[范围]
[描述]
当n的最低位为0时,按键起作用。
当n的最低位为1时,按键被禁止。
[注释] 只有n的最低位有效。
当按键被禁止时,按键不起作用。
在执行宏命令时,按键总是可用的。
[默认值]
n = 0
ESC d n 打印并向前走纸n 行
[名称]
[格式]
Print and feed n lines
ASCII
Hex
Decimal
0 ≤ n ≤ 255
打印缓冲区里的数据并向前走纸n行(字符行)。
该指令将打印机的打印起始位置设置在行首。
该指令不影响由ESC 2 或ESC 3 设置的行间距。
最大走纸距离为1016mm,当所设的值大于1016mm 时,取最大值。
[参考] ESC 2, ESC 3
ESC
1B
27
d
64
100
n
n
n
[范围]
[描述]
[注释]
ESC p m t1 t2 产生钱箱控制脉冲
[名称]
[格式]
Generate pulse
ASCII
Hex
Decimal
ESC
1B
27
p
70
112
m
m
m
t1
t1
t1
t2
t2
t2
[范围] m = 0, 1, 48, 49;0 t1 255, 0t2 255
27
[描述] 输出由t1和t2设定的钱箱开启脉冲到由m 指定的引脚:
m
0, 48
1, 49
连接引脚
钱箱插座的引脚 2
钱箱插座的引脚 5
[注释] 钱箱开启脉冲高电平时间为[t1×2ms],低点平时间为[t2×2ms]。
如果t2 [参考] DLE DC4 ESC t n 选择国际扩展字符码表 [名称] [格式] Select character code table ASCII Hex Decimal ESC 1B 27 t 74 116 n n n [范围] [描述] 0 n 10, 16 n 19 从下列表中选择由n确定的国际扩展字符表。 n 0 1 2 3 4 5 6 7 8 PC437:Standard-Europe Katakana PC850:Multilingual PC860:Portuguese PC863:Canadian-French PC865:Nordic West-Europe Greek Hebrew 扩展字库名称 欧洲标准 日本片假名 多语言 葡萄牙文 加拿大、法国 北欧 西欧 希腊文 希伯来文 28 9 10 16 17 18 19 PC755:East-Eruope Iran WPC1252 PC866:Cyrillic#2 PC852:Latin2 PC858 东欧 伊朗文 古斯拉夫语 拉丁文 [注释] [默认值] n = 0 [参考] ESC { n 选择/取消倒置打印模式 [名称] [格式] Turns on/off upside-down printing mode ASCII Hex Decimal 0 n 255 选择/取消倒置打印模式。 当n的最低位为0时,取消倒置打印模式。 当n的最低位为1时,选择倒置打印模式。 [注释] 只有n的最低位有效; 该指令只在标准模式下的行首有效。 该指令在页模式下,只改变内部标志位。 29 ESC 1B 27 { 7B 123 n n n [范围] [描述] 该指令对页模式打印无影响。 在倒置打印模式下,打印机先将要打印的行旋转180 度然后打印。 [默认值] [实例] n = 0 30 FS p n m 打印下载到FLASH 中的位图 [名称] [格式] Print NV bit image ASCII Hex Decimal FS 1C 28 p 70 112 n n n m m m [范围] [描述] 1 n 255;0 m 3 , 48 m 51 以m指定的模式打印下载到FLASH 中的位图。 m 0,48 1,49 2,50 3,51 模式 正常模式 倍宽模式 倍高模式 倍高倍宽模式 纵向分辨率 (DPI) 200 200 100 100 横向分辨率 (DPI) 200 100 200 100 n 表示位图(由指令FS q 定义)的图号。 m 指定打印位图的模式。 [注释] Flash 位图是由指令FS q 定义存储在Flash 存储器中并用指令FS p 打印的位 图。 当Flash 位图没有被定义时,该指令无效。 在标准模式下,该指令只有在打印缓冲区里没有数据时有效。 该指令除了受倒置打印模式的影响外,不受其他打印模式的影响(如:倍高、倍 宽、下划线、字符放大、反显打印、字符旋转打印等)。 如果所要打印的下载位图超出当前打印区域,则不打印超出的部分。 打印完位图后,打印机换行,按普通模式处理其后的数据。 [参考] ESC , FS q, GS /, GS v 0 31 FS q n [xL xH yL [xL xH yL dk]n 定义Flash 位图 [名称] [格式] Define NV bit image ASCII Hex Decimal 1 n 255 0 xL 255 0 xH 3 (when 1 (xL xH×256) 1023 [范围] 0 yL 1 (when 1 (yL yH ×256) 288 0 d 255 k = (xL xH 256) ×(yL yH ×256) ×8 本打印机用于Flash位图的下载容量最大为254k字节 [描述] 定义Flash 位图: n指定所要定义的Flash 位图的数目。 xL、xH指定Flash 位图的横向点数(xL+xH×256)×8。 yL、yH指定Flash 位图的纵向点数(yL+yH×256)×8。 [注释] 频繁执行该指令能损坏Flash 存储器,推荐每天最多写Flash10 次。 该指令删除所有的以前由该指令定义的Flash 位图,打印机不能对上一次定义的 多幅位图中的一个进行重新定义,在这种情况下,必须重新发送所有的数据。 由于在处理该指令的过程中,打印机处于忙状态,它向Flash 中写数据并且停止 接收其他指令,因此,在该指令的执行过程中,禁止向打印机发送其他命令,包 括实时指令。 Flash 位图是由指令FS q 定义存储在Flash 存储器中并用指令FS p 打印的位 图。 在标准模式下,该指令仅在行首时有效。 从FS 到yH 的七个字节数据作为命令数据处理,不是图形数据的一部分。 32 FS 1C 28 q 71 113 n n n [xL xH yL [ xL xH yL dk]n [xL xH yL [ xL xH yL dk]n [xL xH yL [ xL xH yL dk]n 当位图数据字节数超出由它左边的xL、xH、yL、yH 定义的范围,则打印机只处 理xL、xH、yL、yH 定义的范围的数据。 在第一组Flash 位图里,当xL,xH,yL,yH 中任何一个参数超出定义的范围时,该 指令无效。 在下载多幅位图时,如果打印机处理xL、xH、yL、yH 超出定义的范围,则打印 机停止执行这条指令。命令中在此之后的位图无效,在此之前的位图有效。 d 是定义的位图数据,在数据中相应位为1 表示打印该点,为0 表示不打印。 这条指令定义了n 幅Flash 位图。每个位图的序列号从1 依次增加,因此,第 一个数据组[xL xH yL dk]是Flash 位图1 的数据,最后一个数据组[xL xH yL dk]是Flash 位图n 的数据。在用FS p 指令打印位图时,也是如此。 定义一幅Flash 位图的数据由[xL xH yL dk]组成。因此,当只有一幅位图 时,n=1。打印机占用Flash 存储器字节数如下:[位图数据子结数:(xL+xH× 256)×(yL+yH×256)×8]+[头信息:4] 在打印机里Flash 下载空间最大为64K bits(8Kbytes),该指令可以定义多幅 Flash位图,但不能定义一幅大小超过64K bits 的位图(不同的打印机下载空间 也不相同,请参照打印机配置信息)。 在写Flash 之前,打印机立即处于忙状态。 在处理该指令的过程中,打印机不传送状态也不执行状态查询。 在宏定义的过程中接受到该指令,打印机将结束宏定义,开始执行该指令。 如果一幅Flash 位图被定义,执行ESC @命令、复位和关闭电源不能将其擦除。 该指令只是定义Flash 位图,不执行打印,打印Flash 位图由FS p 指令执行。 [参考] FS p [实例] 当xL=64,xH=0,yL=96,yH=0 33 GS ! n 选择字符大小 [名称] [格式] Select character size ASCII Hex Decimal GS 1D 29 ! 21 33 n n n [范围] [描述] 0 ≤ n ≤ 255(1 ≤ 纵向放大倍数 ≤ 8,1 ≤ 横向放达倍数 ≤ 8) 用0到3位选择字符高度,4到7位选择字符宽度,如下表所示: 位 0 1 2 3 4 5 6 7 表1 宽度选择 Hex Decimal 横向放大倍数 Hex 高度选择 Decimal 纵向放大倍数 34 0/1 Hex Decimal 功能 字符高度选择,见表2。 字符宽度选择,见表1。 表2 00 10 20 30 40 50 60 70 0 16 32 48 64 80 96 112 1 (正常) 2 (2倍宽) 3 4 5 6 7 8 00 01 02 03 04 05 06 07 0 1 2 3 4 5 6 7 1 (正常) 2 (2倍高) 3 4 5 6 7 8 [注释] 这条指令对所有字符(ASCII 字符和汉字)都有效,但是HRI 字符除外。 如果n 超出了规定的范围,则这条指令被忽略。 在标准模式下,纵向是进纸方向,横向是垂直于进纸的方向。但是当字符旋转90° 时,横向和纵向颠倒。 页模式下,横向和纵向取决于区域的方向。 同一行字符的放大倍数不同时,所有的字符以底线对齐。 ESC !指令也可以选择或者取消字符倍宽和倍高,最后接收的指令有效。 [默认值] n = 0 [参考] ESC ! GS # n 定义当前下载图号 [名称] [格式] Defined Current number of downloaded bit image ASCII Hex Decimal 1 ≤ n ≤ 8 选择当前的下载位图图号,下载位图和打印位图根据此图号进行。 35 GS 1D 29 # 23 35 n n n [范围] [描述] [注释] 该命令只针对下载到RAM 中的位图,设定内容掉电后丢失。 下载到FLASH 中的位图不使用本命令指定的图号。 GS $ nL nH 页模式下设置纵向绝对位置 [名称] [格式] Set absolute vertical print position in page mode ASCII Hex Decimal GS 1D 29 $ 24 36 nL nL nL nH nH nH [范围] [描述] 0 ≤nL ≤255, 0 ≤ nH ≤255 页模式下设置绝对纵向位置。 这条指令将绝对位置设置在[(nL+nH×256)×(纵向或横向移动单位)]英寸处。 [注释] 这条指令只有在页模式下有效。 如果[(nL+nH×256)×(纵向或横向移动单位)]超出设定的打印区域,这条命令被 忽略。 执行该指令后,横向位置不改变。 参考位置由ESC T 指令设置。 根据ESC T 指令设置的打印区域方向和起始位置的不同,该指令使打印机进行 如下操作: ① 果打印起始位置为左上角或者右下角,该指令在与走纸方向平行的方向上设置 绝对位置。 ② 如果打印起始位置为右上角或者左下角,该指令在与走纸方向垂直的方向上设 置绝对位置。 横向和纵向移动单位是由GS P 指令设置的。 [参考] ESC $, ESC T, ESC W, ESC , GS P, GS 36 GS * x d(x×y×8) 定义下载位图 [名称] [格式] Define downloaded bit image ASCII Hex Decimal GS 1D 29 $ 24 36 x x x y y y d1...d(x× y× 8) d1...d(x× y× 8) d1...d(x× y× 8) 1 x 255;1 y 48 [范围] x ×y 1536 0 d 255 [描述] 定义一个下载位图,其点数由x 和y 指定 x 指定位图的横向点数; y 指定位图的纵向点数。 [注释] 位图横向上的点数为x×8;位图纵向上的点数为y×8。 如果x×y 超出规定的范围,则这条指令无效。 d 为位图数据。数据对应位为1 表示打印该点,为0 表示不打印。 下载的位图在下列情况下被清除: ① 印机电源关闭。 打印数据和下载位图的关系如下图所示: 37 [参考] GS / GS / m 打印下载位图 [名称] [格式] Print downloaded bit image ASCII Hex Decimal GS 1D 29 / 2F 47 m m m [范围] [描述] 0 m 3 , 48 m 51 以m指定的模式,打印一幅下载位图。 m 0,48 1,49 2,50 3,51 模式 正常模式 倍宽模式 倍高模式 倍高倍宽模式 纵向分辨率 (DPI) 200 200 100 100 横向分辨率 (DPI) 200 100 200 100 [注释] 如果下载的位图没有被定义,这条指令被忽略。 在标准模式下,只有打印缓冲区没有数据时,此指令才有效。 除倒置打印模式外,其它打印模式对该指令无效(包括加粗、双重打印、下划线、 字体放大以及反显打印等)。 如果下载的位图超出了打印区域,则超出的部分不打印。 该命令打印位图为下载到RAM 中的位图,不是下载到FLASH 中的位图,对应 的图号为GS #命令设置的图号。 [参考] GS ,GS GS : 开始/结束宏定义 [名称] Start/end macro definition 38 [格式] ASCII Hex Decimal GS 1D 29 : 3A 58 [描述] [注释] 开始/结束宏定义。 在正常操作时,打印机接收到该指令开始宏定义。在宏定义时,打印机接收到该 指令结束宏定义。 当打印机在定义宏时接收到GS ^指令,则结束宏定义并且清除宏定义。 打印机上电时,没有宏定义。 ESC @不能清除宏定义,因此宏定义内容可以包括ESC @指令。 宏定义的内容可以达到2048 字节。如果宏定义的内容超出2048 字节,超出的 数据被当作普通数据处理。 [参考] GS ^ GS B n 选择/取消黑白反显打印模式 [名称] [格式] Turn white/black reverse printing mode ASCII Hex Decimal 0 ≤ n ≤ 255 选择/取消黑白反显打印模式。 当n的最低位为0 时,取消反显打印。 当n的最低位为1 时,选择反显打印。 [注释] n 只有最低位有效。 这条命令对所有字符(除过HRI 字符)有效。 选择反显打印后,由ESC SP 指令设置的字符间距也反显。 这条指令不影响位图、自定义位图、条码、HRI 字符以及由HT,ESC $,ESC 设 定的空白。 39 GS 1D 29 B 42 66 n n n [范围] [描述] 这条指令不影响行与行之间的空白。 黑白反显打印模式比下划线模式优先级高。在黑白反显打印模式选择时,下划线 模式不起作用,取消黑白反显模式后,设定下划线模式才起作用。 [默认值] n = 0 GS H n 选择HRI 字符的打印位置 [名称] [格式] Select printing position for HRI characters ASCII Hex Decimal GS 1D 29 H 48 72 n n n [范围] [描述] 0 n 3 , 48 n 51 打印条码时,为HRI字符选择打印位置。 n指定HRI打印位置: n 0,48 1,49 2,50 3,51 打印位置 不打印 条码上方 条码下方 条码上、下方都打印 HRI 是对条码内容注释的字符。 [注释] HRI 字符的字体是由GS f 指令来指定。 [默认值] n = 0 [参考] GS f, GS k GS L nL nH 设置左边距 [名称] Set left margin 40 [格式] ASCII Hex Decimal GS 1D 29 L 4C 76 nL nL nL nH nH nH [范围] [描述] 0 nL 255 , 0 nH 255 用nL和nH设置左边距; 将左边距设置为[(nL+nH×256)×横向移动单位)]英寸。 [注释] 在标准模式下,该命令只有在行首才有效。 在页模式下,此命令无效,打印机将该命令当作普通字符处理。 此命令不影响在页模式下的打印。 如果设置超出了最大可用打印宽度,则取最大可用打印宽度 横向和纵向移动单位是由GS P 命令设置的,改变纵向和横向移动单位不影响当 前的左边距。 [默认值] nL = 0, nH = 0 [参考] GS P, GS W GS P x y 设置横向和纵向移动单位 [名称] [格式] Set left margin ASCII Hex Decimal GS 1D 29 P 50 80 x x x y y y [范围] [描述] 0 x 255 , 0 y 255 分别将横向移动单位近似设置成25.4/x mm(1/x 英寸)纵向移动单位设置成 25.4/y mm(1/y 英寸)。 当x 和y 为0 时,x 和y 被设置成默认值。 41 [注释] 垂直于进纸方向为横向,进纸方向为纵向。 在标准模式下,下列命令用x 或者y,即使字符旋转也不改变; ① 用x 的命令:ESC SP,ESC $,ESC ,FS S,GS L,GS W ② 用y 的命令:ESC 3,ESC J,GS V 页模式下,用x 或者y 要根据区域方向和打印起始位置来定: ① 当打印起始位置用ESC T 命令设置成左上角(打印方向从左到右)或者右下 角(打印方向从右到左)时: 用x 的命令:ESC SP,ESC $,ESC W,ESC ,FS S 用y 的命令:ESC 3,ESC J,ESC W,GS $,GS ,GS V ② 当打印起始位置用ESC T 命令设置成右上角(打印方向从上到下)或者左下 角(打印方向从下到上)时: 用x 的命令:ESC 3,ESC J,ESC W,GS $,GS 用y 的命令:ESC SP,ESC $,ESC W,ESC ,FS S,GS V 此命令不影响以前设定的其他设置。 最小移动单位的是由该命令和其它命令综合作用的结果。 一英寸等于25.4mm。 [默认值] x=200,y=200,此时一个移动单位就是一个打印点。横向距离大约为1/8mm,纵向距 离大约为1/7mm。 [参考] ESC SP, ESC $, ESC 3, ESC J, ESC W, ESC , GS $, GS L, GS V, GS W, GS ①GS V m②GS V m n 选择切纸模式并切纸 [名称] [格式] Select cut mode and cut paper ① ASCII Hex Decimal ② ASCII GS 1D 29 GS V 56 86 V m m m m n 42 Hex 1D Decimal 29 ① m =49 [范围] 56 86 m m n n ② m = 66, 0 n 255 选择一种切纸模式并切纸。 根据m的值选择切纸模式,如下所示: m 1,49 半切(中间一点未切断) 66 [描述] 切纸模式 进纸([n ×(纵向移动单位)英寸])并进行半切纸(中间一点未切断) [注释①和②] 这条命令只有在行首有效。 [注释①] [注释②] 本打印机只有半切有效,没有全切。 当n = 0,打印机进纸[打印位置到切刀之间距离],然后切纸。 当n ≠ 0,打印机进纸[打印位置到切刀之间距离+n×(纵向移动单位)]然后 切纸。 本打印机[打印位置到切刀之间距离]约为18.75mm。 横向移动单位和纵向移动单位是由GS P 命令设置的。 进纸量用纵向移动单位来计算。 GS W nL nH 设置打印区域宽度 [名称] [格式] Set printing area width ASCII Hex Decimal GS 1D 29 W 57 87 nL nL nL nH nH nH [范围] [描述] 0 nL 255 , 0 nH 255 用nL和nH设置打印区域宽度; 将打印区域宽度设置为[(nL+nH×256)×横向移动单位)]英寸。 43 [注释] 在标准模式下,该命令只有在行首才有效。 在页模式下,此命令无效,打印机将该命令当作普通字符处理。 此命令不影响在页模式下的打印。 如果[左边距+打印区宽度]超出可打印区域,则打印区域宽度为可打印区域宽度减 去左边距。 横向和纵向移动单位是由GS P 命令设置的,改变纵向和横向移动单位不影响当 前的左边距和区域宽度。 计算打印区宽度使用横向移动单位。 [默认值] nL = 76, nH = 2 [参考] GS L ,GS P GS nL nH 页模式下设置纵向相对位置 [名称] [格式] Set relative vertical print position in page mode ASCII Hex Decimal GS 1D 29 5C 92 nL nL nL nH nH nH [范围] [描述] 0 nL 255 , 0 nH 255 页模式下,以当前点为参考点设置纵向移动距离。 这条命令设置相对于当前点的纵向移动距离为[(nL+nH×256)×纵向或者横向移 动单位]英寸。 [注释] 此命令只在页模式下有效,在其它模式下被忽略。 当打印位置向下移动时:nL+nH×256=N; 当打印位置向上移动时,用补码计算:nL+nH×256 = 65536 - N 44 任何超出打印区域的设置被忽略。 此命令根据由ESC T 设置的打印区域方向来确定使用移动单位: ① 打印起始位置设置成左上角(打印方向从左到右)或者右下角(打印方向从右 到左),使用纵向移动单位。 ② 当打印起始位置设置成右上角(打印方向从上到下)或者左下角(打印方向从 下到上),使用横向移动单位。 横向和纵向移动单位由GS P 命令设置。 GS P 命令能改变横向和纵向移动单位。 [参考] ESC $, ESC T, ESC W, ESC , GS $, GS P GS ^ r t m 执行宏命令 [名称] [格式] Execute macro ASCII Hex Decimal GS 1D 29 ^ 5E 94 r r r t t t m m m [范围] [描述] 0 ≤ r ≤ 255;0 ≤ t ≤ 255;m = 0,1 执行宏命令。 r 指定执行宏的次数。 t 指定执行宏的等待时间。 m 指定执行宏的模式。 当m 的最低位为0 时:宏以t×100ms 为间隔时间,连续执行r 次。 当m 的最低位为1 时:打印机等待t×100ms 时间后,指示灯闪烁,直到用户 按下进纸键,打印机才执行宏。如此循环r 次。 [注释] 每次执行宏的等待时间为t×100ms。 如果在宏定义时接收到这条命令则宏定义停止,正在定义的宏被清除。 45 如果宏没有定义或者r 是0,则该命令无效。 当宏执行时(m=1),不能用进纸键进纸。 [参考] GS : GS f n 选择HRI 使用字体 [名称] [格式] Select font for Human Readable Interpretation (HRI) characters ASCII Hex Decimal GS 1D 29 f 66 102 n n n [范围] [描述] n ,,, 打印条码时,为HRI字符选择一种字体。用n来选择字体如下: n 0,48 1,49 字体 标准ASCII字符 (12 × 24) 压缩ASCII字符 (9 × 17) [注释] HRI 字符是对条码内容注释的字符。 HRI 字符的打印位置由GS H 命令指定。 [默认值] n = 0 [参考] GS H, GS k GS h n 选择条码高度 [名称] [格式] Select bar code height ASCII Hex Decimal 1 ≤ n ≤ 255 选择条码高度。条码高度为n点。 46 GS 1D 29 h 68 104 n n n [范围] [描述] [默认值] n = 162 [参考] GS k ①GS k dk NUL②GS k m dn 打印条码 [名称] [格式] Print bar code ① ASCII Hex Decimal ② ASCII Hex Decimal GS 1D 29 GS 1D 29 k 6B 107 k 6B 107 m m m m m m d1...dk d1...dk d1...dk n n n NUL 00 0 d1...dn d1...dn d1...dn [范围] ① 0≤m≤6(k 和d 的取值范围是由条码类型来决定) ② 65≤m≤73(k 和d 的取值范围是由条码类型来决定) [描述] 选择一种条码类型并打印条码。m用来选择条码类型,如下所示: m ① 0 1 2 3 4 5 6 ② 条码类型 UPC-A UPC-E JAN13 (EAN13) JAN 8 (EAN8) CODE39 ITF CODABAR 字符个数 11 ≤k ≤12 11 ≤k ≤12 12 ≤k ≤13 7 ≤ k ≤ 8 1 ≤ k ≤ 255 1 ≤ k ≤ 255 (偶数) 1 ≤ k ≤ 255 11 ≤n ≤12 11 ≤n ≤12 12 ≤n ≤13 7 ≤n ≤8 48 ≤d ≤57 48 ≤d ≤57 48 ≤d ≤57 48 ≤d ≤57 45 ≤d ≤57, 65 ≤d ≤90, d = 32,36, 37,43 48 ≤d ≤57 48 ≤d ≤57, 65 ≤d ≤68, d = 36,43,45,46,47,58 48 ≤d ≤57 48 ≤d ≤57 48 ≤d ≤57 48 ≤d ≤57 45 ≤d ≤57, 65 ≤d ≤90, 69 CODE39 70 ITF 1≤ n ≤ 255 1 ≤ n≤ 255 (偶数) d = 32,36, 37,43 d1 = dk = 42 48 ≤d ≤57 第12位为校验 值 第13位为校验 值 第8位为校验 值 字符>12,太长 无法打印 d 值 第13位为校验 值 第8位为校验 值 备注 第12位为校验 65 UPC-A 66 UPC-E 67 JAN13 (EAN13) 68 JAN 8 (EAN8) 47 71 CODABAR 72 CODE93 73 CODE128 1 ≤ n≤ 255 1 ≤ n≤ 255 2 ≤ n≤ 255 48 ≤d ≤57 65 ≤d ≤68, d = 36,43,45,46,47 58 0 ≤d ≤127 0 ≤d ≤127 [注释①] 该命令在这种格式下以NULL 结束。 当选择UPC-A 或者UPC-E 码时,打印机接收到12 字节条码数据后, 剩余的字符被当作普通字符处理。 当选择JAN13(EAN13)类型时,打印机接收到13 字节条码数据后,剩余 的字符被当作普通字符处理。 当选择JAN8(EAN8),类型时,打印机接收到8 字节条码数据后,剩余的 字符被当作普通字符处理。 ITF 码数据个数必须是偶数。如果输入奇数个条码数据,则最后一个数据 被忽略。 [注释②] n 用来指示条码数据的个数,打印机将其后边n 字节数据作为条码数据 处理。 如果n 超出了规定的范围,打印机不处理这条命令,将其后的数据作为 普通数据处理。 [注释(标准模式)] 如果条码数据d 超出了规定的范围,该命令无效。 如果条码横向超出了打印区域,无效。 这条命令不管由ESC 2 或ESC 3 命令设置的行高是多少,走纸距离都 与设定的条码高度相等。 这条命令只有在打印缓冲区没有数据时才有效,如果打印缓冲区有数据, 该命令被忽略。 48 打印条码后,将打印位置设置在行首。 打印模式设置(如加粗、双重打印、下划线、字符大小、反色以及字符旋 转等)不影响这条命令,但是倒置模式对条码打印有影响。 [注释(页模式)] 这条命令只将条码图形生成到打印缓冲区,但是并不打印。处理完条码数 据后将打印位置移到条码的右边。 如果d 超出了规定的范围,该命令将被忽略。 如果条码宽度超出了打印区域,该命令被忽略。 [参考] GS H, GS f, GS h, GS w GS v 0 m xL xH yL dk 打印光栅位图 [名称] [格式] Print raster bit image ASCII Hex Decimal GS 1D 29 v 76 118 0 30 48 m m m xL xL xL xH xH xH yL yL yL yH yH yH d1....dk d1....dk d1....dk [范围] [描述] 0≤m≤3,48≤m≤51;0≤xL≤255;0≤xH≤255;0≤yL≤255;0≤d≤255; k = (xL+xH×256)×(yL+yH×256) (k≠0) 打印光栅位图,由m 值选择光栅位图模式。 m 0,48 1,49 2,50 3,51 模式 正常模式 倍宽模式 倍高模式 倍高倍宽模式 纵向分辨率 (DPI) 200 200 100 100 横向分辨率 (DPI) 200 100 200 100 xL、xH 表示水平方向位图字节数(xL+xH×256) yL、yH 表示垂直方向位图点数(yL+yH×256) [注释] 在标准模式下,只有打印机缓冲区无数据时该指令才有效。 49 字符放大、加粗、双重打印、倒置打印、下划线、黑白反显等打印模式对该指令 无效。 位图超出打印区域的部分不打印。 ESC a(选择对齐模式)对光栅位图有效。 宏定义的过程中,该命令将停止宏定义而执行该命令。该命令不作为宏定义的一 部分。 d 代表位图数据。每个字节的相应位为1 表示打印该点,为0 不打印该点。 [实例] 当xL + (xH×256) = 64 GS w n 设置条码宽度 [名称] [格式] Set bar code width ASCII Hex Decimal 2≤n≤6 设置条码横向模块宽度。用n来指定条码的横向模块宽度: 双基本模块宽度 n 2 3 4 5 6 单基本模块宽度(mm) 窄基本模块(mm) 0.25 0.375 0.5 0.625 0.75 0.25 0.375 0.5 0.625 0.75 宽基本模块(mm) 0.625 1.0 1.25 1.625 1.875 GS 1D 29 w 77 119 n n n [范围] [描述] 单基本模块条码如下:UPC-A, UPC-E, JAN13(EAN13), JAN8(EAN8), 50 CODE93,CODE128 双基本模块条码如下:CODE39,ITF,CODABAR [默认值] n = 2 [参考] GS k 51 FS ! n 设置汉字字符模式 [名称] [格式] Set print mode(s) for Chinese characters ASCII Hex Decimal 0≤n≤255 用n值设置汉字的打印模式如下: 位 0,1 1/0 - 0 2 1 0 3 1 4-6 - 0 7 1 FS 1C 28 ! 21 33 n n n [范围] [描述] HEX Decimal - 00 04 00 08 - 00 80 - 0 4 0 8 - 0 128 未定义 取消倍宽模式 选择倍宽模式 取消倍高模式 选择倍高模式 未定义 取消下划线模式 选择下划线模式 功能 [注释] 当倍宽与倍高度模式同时被设定时,字符横向和纵向同时被放大两倍(包括左右 间距)。 打印机能对所有字符加下划线,包括左右间距。但不能对由于HT 指令(横向跳 格)引起的空格进行加划线,也不对顺时针旋转90 度的字符加下划线。 下划线线宽由FS -设定,与字符大小无关。 当一行中字符高度不同时,该行中的所有字符以底线对齐。 可以用FS W 或者GS !对字符加粗,最后一条指令有效。 也可以用FS –选择或取消下划线模式,最后一条指令有效。 [默认值] n=0 52 [参考] FS , FS W, GS ! FS & 选择汉字模式 [名称] [格式] Select Chinese character mode ASCII Hex Decimal 选择汉字模式 当选中汉字模式时,打印机判断字符是否为汉字内码,如是汉字内码,先处理第 一字节,然后判断第二字节是否为汉字内码。 打印机上电后自动选择汉字模式。 [参考] FS . FS 1C 28 & 26 38 [描述] [注释] FS - n 选择/取消汉字下划线模式 [名称] [格式] Turn underline mode on/off for Chinese characters ASCII Hex Decimal FS 1C 28 - 2D 45 n n n [范围] [描述] 0≤n≤2,48≤n≤50 根据n 的值,选择或取消汉字的下划线: n 0,48 1,49 2,50 功能 取消汉字下划线 选择汉字下划线 (1点宽) 选择汉字下划线 (2点宽) 53 [注释] 打印机能对所有字符加下划线,包括左右间距。但不能对由HT 指令(横向跳格) 引起的空格加下划线,也不对顺时针旋转90 度的字符加下划线。 消下划线模式后,不再执行下划线打印,但原先设置的下划线线宽不会改变。默 认下划线线宽为1 点。 即使改变字符大小,设定的下划线线宽也不会改变。 用FS!也可选择或取消下划线模式,最后一条指令有效。 [默认值] n=0 [参考] FS ! FS . 取消汉字模式 [名称] [格式] Cancel Chinese character mode ASCII Hex Decimal 取消汉字模式 当汉字模式被取消时,所有字符都当作ASCII 字符处理,每次只处理一个字节。 上电自动选择汉字模式。 [参考] FS & FS 1C 28 . 2E 46 [描述] [注释] FS 2 c1 dk 定义用户自定义汉字 [名称] [格式] Define user-defined Chinese characters ASCII Hex Decimal FS 1C 28 2 32 50 c1 c1 c1 c2 c2 c2 d1...dk d1...dk d1...dk [范围] [描述] c1,c2 代表定义字符的字符编码;c1=FEH;A1H≤c2≤FEH;0≤d≤255;k=72 定义由c1,c2 指定的汉字 54 [注释] c1,c2 代表用户自定义汉字的编码,c1 指定第一个字节,c2 指定第二个字节。 d 代表数据。1 表示打印一个点,0 表示不打印点。 [默认值] 没有自定义汉字 [参考] [实例] 自定义汉字字型与数据之间关系见下图: FS S n1 n2 设置汉字字符左右间距 [名称] Set left- and right-side Chinese character spacing 55 [格式] ASCII Hex Decimal FS 1C 28 S 53 83 n1 n1 n1 n2 n2 n2 [范围] [描述] 0 n1 255 , 0 n2 255 分别将汉字的左间距和右间距设置为n1 和n2。 当打印机支持GS P 指令时,左间距是[n1×横向或者纵向移动单位]英寸,右间 距是[n2×横向或者纵向移动单位]英寸。 [注释] 设置倍宽模式后,左右间距也加倍。 移动单位是由GS P 指令设置的。即使横向和纵向移动单位被GS P 改变,原先 设定的字符间距也不改变。 在标准模式下,用横向移动单位。 在页模式下,根据打印区域起始位置来选择是用横向移动单位还是纵向移动单位: ① 当起始位置在打印区域的左上角或右下角,用横向移动单位。 ② 当起始位置在打印区域的右上角或左下角,用横向移动单位。 ③ 汉字的最大右间距约为36mm,超过此值取最大值。 [默认值] n1 = 0,n2 = 0 [参考] GS P FS W n 选择/取消汉字倍高倍宽 [名称] [格式] Turn quadruple-size mode on/off for Chinese characters ASCII Hex Decimal 0≤n≤255 选择或者取消汉字倍高倍宽模式。 当n 的最低位为0,取消汉字倍高倍宽模式。 当n 的最低位为1,选择汉字倍高倍宽模式。 56 FS 1C 28 W 57 87 n n n [范围] [描述] [注释] 只有n 的最低位有效 在汉字倍高倍宽模式模式下,打印汉字的大小,与同时选择倍宽和倍高模式时相 同。 取消汉字倍高倍宽模式后,以后打印出的汉字为正常大小。 当一行字中字符高度不同时,该行中的所有字符都按底线对齐。 也可以通过FS !或者GS !指令(选择倍高和倍宽模式)来选择或取消汉字倍高倍 宽模式,最后接收到的指令有效。 [默认值] n=0 [参考] FS !,GS ! 57
版权声明:本文标题:打印机ESCPOS 控制指令 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/b/1711642014a603239.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论