— 13 —
ESC & m n1 n2 [d] k
[Function] Define user characters
[Code] <1B>H<26>H<m><n1><n2>[<d>]k
[Range] {m = 0, 1, 2, 3(Hex)}
{20 =< n1 =< FF(Hex)}
{n1 =< n2 =< FF(Hex)}
{k=(n2-n1+1)*48} (m=2)
{k=(n2-n1+1)*16} (m=3)
[Outline] Defines a group of user characters.
m=0: Copy internal character set A to user character set A
(Parameters n1, n2 and d are omitted)
m=1: Copy internal character set B to user character set B
(Parameters n1, n2 and d are omitted)
m=2: For Font A (12 × 24), n1 denotes Start character code and n2 End character
code. Every character is 48 bytes, two bytes for each line. Only the first nibble
of the second byte is used.
m=3: Define character group with ASCII codes between >= n1 and =< n2 for character
set B (9 × 16). Every character is 16 bytes.
[Caution] The data for character set A is composed from left to right and from top to bottom
with two bytes for each horizontal line. The first byte contains the first 8 bits with
the left most bit is MSB. From the second byte only the first nibble (the most significant
4 bits) is valid.
The data for character set B is composed from left to right and from top to bottom
with only one byte for each horizontal line. The nineth bith is alawys 0.
Downloaded characters are valid even after switching off the printer or after issuing
Initialize command.
Download character
Font A (12 × 24)
(Last 4 bits are not used and fixed as zero.)
Font B (9 × 16)
(9th dot is fixed as space.)
00
d47 d48
d45 d46
d43
24
16
d44
d16
d15
d14
d1 d2 d1
d3 d4 d2
d5 d6 d3
d7 d8 d4
d9 d10 d5
00
87654321
8 7654321
MSB LSB