This section discusses the Lexmark-specific commands implemented in Forms and Bar Code Card.
Support of bar code functionality requires Lexmark-unique PCL 5 emulation definitions that provide access to the functionality. Esc &x#W and Esc &y#W are implemented.
Support of bar code functionality requires Lexmark-unique PCL 5 emulation definitions that provide access to the functionality. Esc &x#W and Esc &y#W are implemented.
Use the escape sequence to describe the bar code to print, and the parameter settings required to build the bar code. The first two bytes of this command designate the symbology and are required. The remaining bytes are interpreted accordingly, based on the symbology, and are optional. If the optional bytes are not sent, then the settings are set to appropriate defaults. Each symbology has its own defined descriptor header. The
symbol represents the number of bytes of descriptor data.
Use this command to transfer a raw block of bar code data to be encoded according to the specifications in the last valid Bar Code Descriptor command received. If no valid descriptor is sent, then this command is ignored and the data is flushed. The
symbol represents the number of bytes of descriptor data.
These commands, if sent to an HP printer, are flushed, and nothing prints. Future HP PCL 5 enhancement could use the two escape sequences that have been selected. This forces future Lexmark PCL 5 emulations to use the HP versions of these commands and to ignore them in a bar code context.
To avoid this conflict, use the Lexmark PCL 5 emulation enhancement switch. Setting this switch allows future Lexmark PCL 5 emulations to decide how to interpret the new escape sequences. The switch is a GL/2 command.
Esc %0B
COLexmark Enhanced GL/2;
Esc %0A
The general strategy for assigning Lexmark symbology IDs and defining Lexmark bar code descriptors is defined in the following table:
Symbology ID |
Symbology type |
---|---|
0–19 |
Two-dimensional symbologies |
20–39 |
4-State bar codes |
40–99 |
Miscellaneous symbologies |
100–199 |
One-dimensional bar codes |
For one-dimensional bar codes, the bar code descriptors have the same initial 14 fields, patterned after the font-like parameter sequence used for existing one-dimensional symbologies.
Bar code type |
ID |
Symbology |
---|---|---|
Two-dimensional bar code |
1 dec (00 01 hex) |
PDF417 |
2 dec (00 02 hex) |
MaxiCode |
|
3 dec (00 03 hex) |
MicroPDF417 |
|
4-State postal |
20 dec (00 14 hex) |
Australia Post |
21 dec (00 15 hex) |
Singapore Post |
|
22 dec (00 16 hex) |
RM4SCC |
|
23 dec (00 17 hex) |
Japan Post |
|
24 dec (00 18 hex) |
Dutch Post |
|
Miscellaneous symbology |
40 dec (00 28 hex) |
USPS FIM |
One-dimensional bar code |
100 dec (00 64 hex) |
ISBN, ISBN+5 |
101 dec (00 65 hex) |
ISSN, ISSN+2, ISSN+5 |
|
102 dec (00 66 hex) |
Swiss Post |
|
103 dec (00 67 hex) |
ITF-14 |
|
112 dec (00 70 hex) |
HIBC 39 Provider Application Standard |
|
113 dec (00 71 hex) |
HIBC 39 Supplier Labeling Standard |
|
114 dec (00 72 hex) |
HIBC 128 Provider Application Standard |
|
115 dec (00 73 hex) |
HIBC 128 Supplier Labeling Standard |
|
128 dec (00 80 hex) |
PLANET |
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
20 dec (00 14 hex) |
Selects the Australia Post 4-State symbology. |
Bar width |
2 |
40–60 dec (28–3C hex) |
50 dec (32 hex) |
Sets the bar width to 1/100 mm. |
Bar pitch |
3 |
22–25 dec (16–19 hex) |
24 dec (18 hex) |
Sets the number of bars that print per inch. |
Tracker height |
4 |
100–160 dec (64–A0 hex) |
130 dec (82 hex) |
Sets the tracker height to 1/100 mm. |
Ascender or descender offset |
5 |
160–210 dec (A0–D2 hex) |
185 dec (B9 hex) |
Sets the ascender and descender offset in 1/100 mm. The total height of an ascender or descender is the sum of this field and the tracker height. |
FCC |
6 |
11, 45, 59, or 62 dec (0B, 2D, 3B, or 3E hex) |
11 dec (0B hex) |
Sets the FCC. |
Encoding table |
7 |
0 (C table) 1 (N table) |
0 dec (00 hex) |
Sets the encoding table. |
Reserved |
8–15 |
N/A |
N/A |
N/A |
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
21 dec (00 15 hex) |
Selects the Singapore Post 4-State symbology. |
Bar width |
2 |
38–63 dec (26–3F hex) |
50 dec (32 hex) |
Sets the bar width to 1/100 mm. |
Bar pitch |
3 |
20–24 dec (14–18 hex) |
22 dec (16 hex) |
Sets the number of bars that print per inch. |
Tracker height |
4 |
102–152 dec (66–98 hex) |
127 dec (7F hex) |
Sets the tracker height to 1/100 mm. |
Ascender or descender offset |
5 |
160–216 dec (A0–D8 hex) |
188 dec (BC hex) |
Sets the ascender and descender offset to 1/100 mm. The total height of an ascender or descender is the sum of this field and the tracker height. |
Reserved |
6–15 |
N/A |
N/A |
N/A |
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
22 dec (00 16 hex) |
Selects the RM4SCC symbology. |
Bar width |
2 |
38–63 dec (26–3F hex) |
50 dec (32 hex) |
Sets the bar width to 1/100 mm. |
Bar pitch |
3 |
20–24 dec (14–18 hex) |
22 dec (16 hex) |
Sets the number of bars that print per inch. |
Tracker height |
4 |
102–152 dec (66–98 hex) |
127 dec (7F hex) |
Sets the tracker height to 1/100 mm. |
Ascender or descender offset |
5 |
160–216 dec (A0–D8 hex) |
188 dec (BC hex) |
Sets the ascender and descender offset to 1/100 mm. The total height of an ascender or descender is the sum of this field and the tracker height. |
Reserved |
6–15 |
N/A |
N/A |
N/A |
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
† a is a unit-less value multiplying factor used in other parameters. It is the bar code size from byte 2. |
||||
Symbology ID |
0–1 |
N/A |
23 dec (00 17 hex) |
Selects the Japan Post 4-State bar code symbology. |
Bar code size |
2 |
80–115 dec (50–73 hex) |
100 dec (64 hex) |
Sets the overall bar code size. |
Bar width |
3 |
0.50–0.70a† |
0.60a† |
Sets the bar width. |
Space width |
4 |
0.45–0.60a† |
0.60a† |
Sets the space width. |
Timing bar height |
5 |
1.05–1.35a† |
1.20a† |
Sets the timing bar height. |
Long bar height |
6–7 |
3.40–3.60a† |
3.60a† |
Sets the long bar height. |
Reserved |
8–15 |
N/A |
N/A |
N/A |
Notes:
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
24 dec (00 18 hex) |
Selects the Dutch Post 4-State symbology. |
Bar width |
2 |
38–63 dec (26–3F hex) |
50 dec (32 hex) |
Sets the bar width to 1/100 mm. |
Bar pitch |
3 |
20–24 dec (14–18 hex) |
22 dec (16 hex) |
Sets the number of bars that print per inch. |
Synchronization bar height |
4 |
102–152 dec (66–98 hex) |
127 dec (7F hex) |
Sets the synchronization bar height to 1/100 mm. |
Upward or downward bar height |
5 |
160–216 dec (A0–D8 hex) |
188 dec (BC hex) |
Sets the upward and downward bar height to 1/100 mm. |
Reserved |
6–15 |
N/A |
N/A |
N/A |
Notes:
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
00 28 hex |
Selects the USPS FIM symbology. |
Reserved |
2–15 |
N/A |
N/A |
N/A |
The only valid characters in this symbology are A (ASCII 65), B (ASCII 66), C (ASCII 67), and D (ASCII 68). These characters in the data produce the FIM-A, FIM-B, FIM-C, and FIM-D patterns in the symbol respectively. A single character of data producing one of the four defined FIM patterns is the expected use of this symbology. If more than one character of data is provided, then no space is inserted between the FIM patterns generated by the data characters. Invalid characters are ignored, and do not produce any error message.
FIM symbols are printed according to the USPS specifications. Bar height is fixed at 5/8 inch. Bars and spaces have a fixed width of 1/32 inch. Cursor positioning is handled similarly as one-dimensional symbologies.
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
102 dec (00 06 hex) |
Selects the Swiss Post symbology. |
Text location |
2 |
Fixed value |
4 dec (04 hex) |
parameter. |
Text typeface |
3 |
Fixed value |
2 dec (02 hex) |
parameter, A value. |
Text style |
4 |
Fixed value |
3 dec (03 hex) |
parameter, C value. |
Bar height units |
5 |
0–4 dec (00–04 hex) |
4 dec (04 hex) |
Specifies units for bar height dimensions. 0 —Use the default value. 1 —1/300 in. units. 2 —1/600 in. units. 3 —1/1200 in. units. 4 —1/720 in. units. |
Bar height |
6–7 |
Bar height must be:
|
653 dec (02 8D hex) |
parameter (in bar height units, see byte 5). |
Bar and space width units |
8 |
0–4 dec (00–04 hex) |
02 dec |
Specifies units for bar and space widths. 0 —Use the default value. 1 —1/300 in. units. 2 —1/600 in. units. 3 —1/1200 in. units. 4 —1/720 in. units. |
Bar width #1 (module width) |
9–10 |
0.40–0.51 mm |
11 dec (0B hex) |
The module width determines all bar and space widths. Bar and space width K is K* (module width). |
Space width #1 |
11–12 |
N/A |
0B hex |
|
Bar width #2 |
13–14 |
N/A |
16 hex |
|
Space width #2 |
15–16 |
N/A |
16 hex |
|
Bar width #3 |
17–18 |
N/A |
21 hex |
|
Space width #3 |
19–20 |
N/A |
21 hex |
|
Bar width #4 |
21–22 |
N/A |
2C hex |
|
Space width #4 |
23–24 |
N/A |
2C hex |
|
Reserved |
25–31 |
N/A |
N/A |
N/A |
Data consists of an 18-digit identification code composing of the following:
A 2-digit post code
A 2-digit billing district code
A 6-digit customer account number
An 8-digit item number
To enhance readability, " . " (ASCII 46) may appear anywhere in the data. Three " . " are inserted automatically at the correct positions in the HRT printed with a Swiss Post bar code symbol, separating the four components on the identification code. Invalid characters or lengths in the identification code are flagged with an error.
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
00 64 hex |
Selects the ISBN symbology. |
Text location |
2 |
0–5 dec (00–05 hex) |
3 dec (03 hex) |
parameter. |
Text typeface |
3 |
0–5 dec (00–05 hex) |
0 dec (00 hex) |
parameter, A value. |
Text style |
4 |
0–4 dec (00–04 hex) |
0 dec (00 hex) |
parameter, C value. |
Bar height units |
5 |
00–04 hex |
04 hex |
Specifies units for bar height dimensions. 0 —Use the default value. 1 —1/300 in. units (binary 0001). 2 —1/600 in. units (binary 0010). 3 —1/1200 in. units (binary 0011). 4 —1/720 in. units (binary 0100). |
Bar height |
6–7 |
N/A |
74 dec (00 4A hex) |
parameter (in bar height units, see byte 5). |
Bar and space width units |
8 |
00–04 hex |
02 hex |
Specifies units for bar and space widths. 0 —Use the default value. 1 —1/300 in. units (binary 0001). 2 —1/600 in. units (binary 0010). 3 —1/1200 in. units (binary 0011). 4 —1/720 in. units (binary 0100). |
Bar width #1 |
9–10 |
N/A |
8 dec (00 08 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #1 |
11–12 |
N/A |
8 dec (00 08 hex) |
parameter (in bar and space width units, see byte 8). |
Bar width #2 |
13–14 |
N/A |
16 dec (00 10 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #2 |
15–16 |
N/A |
16 dec (00 10 hex) |
parameter (in bar and space width units, see byte 8). |
Bar width #3 |
17–18 |
N/A |
24 dec (00 18 hex)k |
parameter (in bar and space width units, see byte 8). |
Space width #3 |
19–20 |
N/A |
24 dec (00 18 hex) |
parameter (in bar and space width units, see byte 8). |
Bar width #4 |
21–22 |
N/A |
32 dec (00 20 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #4 |
23–24 |
N/A |
32 dec (00 20 hex) |
parameter (in bar and space width units, see byte 8). |
ISBN text location |
25 |
0–5 dec (00–05 hex) |
5 dec (05 hex) |
Specifies the location of the ISBN text. 0 —Use the default value. 1 —Do not print the text. 4 —Print the text below symbol. 5 —Print the text above symbol. |
Reserved |
26–31 |
N/A |
N/A |
N/A |
ISBN bar codes are EAN-13 symbols that encode the first 9 digits of an ISBN prefaced by a special Bookland country code (978). In addition to the 13 digits encoded by the symbol, the complete 10-digit ISBN is usually printed in its human-readable format. The checksum digit is not encoded. The ISBN bar code descriptor contains two sets of fields for specifying the placement, typeface, and style of these two separate text strings.
In an ISBN symbol, the data must consist of a 10-digit ISBN, optionally followed by a 5-digit add-on code. If this code appears in the data, then an EAN-13+5 symbol is generated, with the add-on code encoded in the +5 section of the symbol. The last digit of an ISBN, the checksum digit, may be an x (ASCII 88).
To enhance readability, " - " (ASCII 45) may appear anywhere in the data. In an ISBN text printed with the symbol, a hyphenation algorithm inserts " - " regardless of where they appear in the data.
The checksum digit is not encoded in the symbol. It is required in the data only for inclusion in the ISBN text printed with the symbol. A calculation in Forms and Bar Code Card does not verify or replace the ISBN checksum digit.
The following conditions produce an error message:
Lengths other than 10 or 15 digits
Any character other than a digit or a " - " except for an X in the tenth digital position
Cursor positioning is handled similarly as one-dimensional symbologies.
If bytes 5 or 8 are changed from their default values, then the parameters of the bar height and the bar and space width assume new dimensions, based on the new units. In other words, the parameters are in units, and if the measurements of the units change, then so does the physical printed bar code.
If any of the parameters are set to 0 , then the default value assigned in the table is used.
Field name |
Byte |
Range |
Default value |
Description |
---|---|---|---|---|
Symbology ID |
0–1 |
N/A |
00 65 hex |
Selects the ISSN symbology. |
Text location |
2 |
0–5 dec (00–05 hex) |
3 dec (03 hex) |
parameter. |
Text typeface |
3 |
0–5 dec (00–05 hex) |
0 dec (00 hex) |
parameter, A value. |
Text style |
4 |
0–4 dec (00–04 hex) |
0 dec (00 hex) |
parameter, C value. |
Bar height units |
5 |
00–04 hex |
04 hex |
Specifies units for bar height dimensions. 0 —Use the default value. 1 —1/300 in. units (binary 0001). 2 —1/600 in. units (binary 0010). 3 —1/1200 in. units (binary 0011). 4 —1/720 in. units (binary 0100). |
Bar height |
6–7 |
N/A |
74 dec (00 4A hex) |
parameter (in bar height units, see byte 5) |
Bar and space width units |
8 |
00–04 hex |
02 hex |
Specifies units for bar and space widths. 0 —Use the default value. 1 —1/300 in. units (binary 0001). 2 —1/600 in. units (binary 0010). 3 —1/1200 in. units (binary 0011). 4 —1/720 in. units (binary 0100). |
Bar width #1 |
9–10 |
N/A |
8 dec (00 08 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #1 |
11–12 |
N/A |
8 dec (00 08 hex) |
parameter (in bar and space width units, see byte 8). |
Bar width #2 |
13–14 |
N/A |
16 dec (00 10 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #2 |
15–16 |
N/A |
16 dec (00 10 hex) |
parameter (in bar and space width units, see byte 8). |
Bar width #3 |
17–18 |
N/A |
24 dec (00 18 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #3 |
19–20 |
N/A |
24 dec (00 18 hex) |
parameter (in bar and space width units, see byte 8). |
Bar width #4 |
21–22 |
N/A |
32 dec (00 20 hex) |
parameter (in bar and space width units, see byte 8). |
Space width #4 |
23–24 |
N/A |
32 dec (00 20 hex) |
parameter (in bar and space width units, see byte 8). |
ISSN text location |
25 |
0–5 dec (00–05 hex) |
5 dec (05 hex) |
0 —Use the default value. 1 —Do not print the text. 4 —Print the text below symbol. 5 —Print the text above symbol. |
Reserved |
26–31 |
N/A |
N/A |
N/A |
ISSN bar codes are EAN-13 symbols that encode the first 7 digits of an ISSN prefaced by a special “land of serial publications” country code (977) and followed by a 2-digit price code. In addition to the 13 digits encoded by the symbol, the complete 8-digit ISSN is usually printed in human-readable format along with the symbol. The checksum digit is not encoded. The ISSN bar code descriptor contains two sets of fields for specifying the placement, typeface, and style of these two separate text strings.
In an ISSN symbol, the data must consist of an 8-digit ISSN, followed by a 2-digit price code. The data is optionally followed by a 2- or 5-digit add-on code. If this code appears in the data, then an EAN-13+2 or EAN-13+5 is generated. The add-on code is encoded in the +2 or +5 section of the symbol. The last digit of an ISSN, the checksum digit, may be an X (ASCII 88).
To enhance readability, " - " (ASCII 45) may appear anywhere in the data. In an ISSN text printed with the symbol, " - " is always placed in a fixed position.
The checksum digit is not encoded in the symbol. It is required in the data only for inclusion in the ISSN text printed with the symbol. A calculation in Forms and Bar Code Card does not verify or replace the ISSN checksum digit.
The following conditions produce an error message:
Lengths other than 10, 12, or 15 digits
Any character other than a digit or a " - " except for an X in the eighth digital position
Cursor positioning is handled similarly as one-dimensional symbologies.
If bytes 5 or 8 are changed from their default values, then the parameters of the bar height and the bar and space width assume new dimensions, based on the new units. In other words, the parameters are in units, and if the measurements of the units change, so does the physical printed bar code.
If any of the parameters are set to 0 , then the default value assigned in the table is used.
Field name |
Byte |
Type |
Range |
Default value |
Description |
---|---|---|---|---|---|
Symbology ID |
0–1 |
int |
N/A |
N/A |
Required.
|
HRT location |
2 |
int |
0 —Use the default value. 1 —No HRT. 2 —Print the text embedded. 3 —Print the text half embedded. 4 —Print the text below bar code. 5 —Print the text above bar code. |
0 or 4 dec (00 or 04 hex) |
Optional. Corresponds to the HP parameter. |
HRT typeface |
3 |
int |
0 —Courier 1 —SM Gothic 2 —SM Unit 3 —SM Unit Condensed 4 —Roman 5 —OCRB |
0 dec (00 hex) |
Optional. Corresponds to the HP parameter. |
HRT style |
4 |
int |
0 —Regular 1 —Italic 2 —Bold (default) 3 —Bold Italic |
2 dec (02 hex) |
Optional. Note: Default font style for OCRB is Regular. |
Bar height units |
5 |
int |
0 —1/600 in. units (default) 1 —1/300 in. units 2 —1/600 in. units 3 —1/1200 in. units |
0 or 2 dec (00 or 02 hex) |
Optional. Specifies units for bar height dimensions. |
Bar height |
6–7 |
int |
150–600 dec |
240 dec (00 F0 hex) |
Optional. Corresponds to the HP parameter in the specified bar height units.Notes:
|
Bar and space width units |
8 |
int |
0 —1/600 in. units (default) 1 —1/300 in. units 2 —1/600 in. units 3 —1/1200 in. units |
0 or 2 dec (00 or 02 hex) |
Optional. Specifies units for bar and space widths. |
Bar width #1 (Code 128 bar 1, or Code 39 Narrow) |
9–10 |
int |
5–27 dec |
6 dec (00 06 hex) |
Optional. Notes:
|
Space width #1 (Code 128 space 1, or Code 39 Narrow) |
11–12 |
int |
5–27 dec |
6 dec (00 06 hex) |
Optional. Notes:
|
Field name |
Byte |
Type |
Range |
Default value |
Description |
---|---|---|---|---|---|
Symbology ID |
0–1 |
int int |
N/A |
103 dec (00 67 hex) |
Required. Selects the ITF-14 symbology. |
HRT location |
2 |
int |
0 —Use the default value (no HRT). 1 —No HRT. 4 —Print the text below bar code. 5 —Print the text above bar code. |
0 or 1 dec (00 or 01 hex) |
Optional. Corresponds to the HP parameter. |
HRT typeface |
3 |
int |
0 —Courier (default) 1 —SM Gothic 2 —SM Unit 3 —SM Unit Condensed 4 —Roman 5 —OCRB |
0 dec (00 hex) |
Optional. Corresponds to the HP parameter. |
HRT style |
4 |
int |
0 —Regular 1 —Italic 2 —Bold 3 —Bold Italic |
2 dec (02 hex) |
Optional. Note: Default font style for OCR-B is Regular. |
Bar height units |
5 |
int |
0 —1/600 in. units (default) 1 —1/300 in. units 2 —1/600 in. units 3 —1/1200 in. units |
2 dec (02 hex) |
Optional. Specifies units for bar height dimensions. |
Bar height |
6–7 |
[int int] |
The minimum value is 307 dec (01 33 hex). There is no maximum value. |
756 dec (02 F4 hex) |
Optional. Corresponds to the HP parameter in the specified bar height units.Notes:
|
Bar and space width units |
8 |
int |
0 —1/600 in. units (default) 1 —1/300 in. units 2 —1/600 in. units 3 —1/1200 in. units |
0 or 2 dec (00 or 02 hex) |
Optional. Specifies units for bar and space widths. |
Bar width #1 |
9–10 |
[int int] |
12–24 dec (00 0C–00 18 hex) |
12 dec (00 0C hex) |
Optional. Notes:
|
Space width #1 |
11–12 |
[int int] |
12–24 dec (00 0C–00 18 hex) |
12 dec (00 0C hex) |
Optional. Notes:
|
Bar width #2 (Wide) |
13–14 |
[int int] |
27–72 dec (00 1B–00 48 hex) Note: The minimum bar width #2 value is 2.25 multiplied by the bar width #1 value. The maximum value is 3 multiplied by the bar width #1 value. |
Note: The default value is 2.50 multiplied by the bar width #1 value. |
Optional. Note: Values beyond the defined range are clipped and set to the minimum and maximum values. |
Space width #2 (Wide) |
15–16 |
[int int] |
27–72 dec (00 1B-00 48 hex) Note: The minimum space width #2 value is 2.25 multiplied by the space width #1 value. The maximum value is 3 multiplied by the space width #1 value. |
Note: The default value is 2.50 multiplied by the space width #1 value. |
Optional. Note: Values beyond the defined range are clipped and set to the minimum and maximum values. |
Reserved |
17–31 |
N/A |
N/A |
N/A |
Optional. |
PLANET is called from PCL using the block call method. For more information on the specifications implemented on the PLANET bar code, see the documentation for USPS PLANET.
Field name |
Byte |
Type |
Range |
Default value |
Description |
---|---|---|---|---|---|
Symbology ID |
0–1 |
int int |
N/A |
128 dec (00 08 hex) |
Selects the PLANET symbology. |
Bar width |
2 |
int |
20–24 dec |
22 dec (16 hex) |
Optional. Specifies the X dimension of the bar pitch. Note: Values less than 20 dec (14 hex) result in a pitch of 20. Values greater than 24 dec (18 hex) result in a pitch of 24. |
Intelligent Mail bar code is called from PCL using the block-call method.
Field name |
Bytes |
Type |
Range |
Default value |
Description |
---|---|---|---|---|---|
Symbology ID |
0–1 |
name |
N/A |
25 dec (00 19 hex) |
Required. Selects the Intelligent Mail bar code symbology. |
Bar width |
2 |
N/A |
38–63 dec (26–3F hex) |
50 dec (16 hex) |
Optional. Sets the bar width to 1/100 mm. |
Bar pitch |
3 |
N/A |
20–24 dec (14–18 hex) |
23 dec (17 hex) |
Optional. Specifies the X dimension of the bar pitch. |
Tracker height |
4 |
N/A |
100–160 dec (64–A0 hex) |
127 dec (7F hex) |
Sets the tracker height to 1/100 mm. |
Ascender or descender offset |
5 |
N/A |
100–210 dec (64–D2 hex) |
135 dec (87 hex) |
Sets the ascender and descender offset to 1/100 mm. The total height of the ascender or descender is the sum of this field and the tracker height. |
HRT location |
6 |
N/A |
0 —Use the default value (no HRT). 1 —No HRT. 2 —Print the text embedded. 3 —Print the text half embedded. 4 —Print the text below bar code. 5 —Print the text above bar code. |
1 |
Optional. Note: Intelligent Mail bar code uses only the values 1, 4, and 5. Other values not specified are replaced with 1. |
Reserved |
7–15 |
N/A |
N/A |
N/A |
These bytes are ignored. |
Bytes |
Most significant byte |
Least significant byte |
Range |
Default value |
Description |
---|---|---|---|---|---|
0–1 |
Symbology ID byte 1 (00x) |
Symbology ID byte 2 (03x) |
N/A |
N/A |
Required. The two bytes with values 0 and 3 dec (00 and 03 hex) signify the symbology. |
2–3 |
Reserved |
Units Maxi |
0 —Use the default value (1/600 in. units). 1 —1/300 in. units. 2 —1/600 in. units. 3 —1/1200 in. units. |
0 or 2 dec (00 or 02 hex) |
Optional. Sets the units used in specifying any further parameters or dimensions. |
4–5 |
X dimension byte 1 (in Units) |
X dimension byte 2 (in Units) |
240–12000 dec |
945 dec (03 B1 hex) |
Optional. Sets the X dimension of the module (white or black rectangle) in 100th of an inch. Notes:
|
6–7 |
Y dimension byte 1 (in Units) |
Y dimension byte 2 (in Units) |
480–60000 dec |
1890 dec (07 62 hex) |
Optional. Sets the Y dimension of the module (white or black rectangle) in 100th of an inch. Notes:
|
8–9 |
Rows |
Columns |
Rows: 4–44 dec Columns: 1–4 dec |
0 dec (00 hex) |
Optional. Manually set the number of symbol rows and columns. Automatic operation is specified by using 0. |
10–15 |
Reserved |
N/A |
N/A |
N/A |
N/A |
These two bytes signify the symbology. Because most descriptors are of different sizes and information, all bar code descriptors must reserve the first two bytes for the symbology ID. If the first two bytes are reserved, then the remaining bytes can be interpreted accordingly. For PDF417, these two bytes must be 00x and 01x.
This byte designates error correction levels by predetermined values. Valid predetermined values are 0–8. If the value of this byte is anything other than 0–8, then the ECC level is set to 0 .
Predetermined values
Number of error codewords
00x
2
01x
4
02x
8
03x
16
04x
32
05x
64
06x
128
07x
256
08x
512
ECC can also be specified as a percentage. A valid nonzero ECC by percentage overrides ECC by predetermined value. For more information, see ECC by percentage, bytes 1 and 2: (Default = 0000x) .
This byte sets the units used in specifying the X dimension (the smallest element width). Supported values are 01x for 300 dpi units, 02x for 600 dpi units, and 03x for 1200 dpi units.
These two bytes set the X dimension. To set the narrowest element to 5/300 of an inch, the Units enumeration must be set to 01x , and these two bytes are 00x and 05x.
This byte sets the bar height in terms of narrowest element width. If the X dimension is 5/300 inch, then to set the bar height to 15/300 inch, this byte is 03x.
This byte determines if the right row indicator and stop pattern are omitted. A value of 01x activates truncation. All other values disable truncation.
Manually set the number of symbol rows. Using the aspect ratio, both rows and columns must be 00x . Valid nonzero values are 03x to 5Ax (3 to 90 decimal). A value of 3 is used in place of any specified nonzero value less than 3. A value of 90 is used in place of any specified nonzero value greater than 90. If columns is a valid nonzero value, and rows is 0, then the "codewords:columns" ratio determines the number of rows used to build the symbol. For example, if columns is set to 10, rows is set to 0, and the symbol requires 80 codewords, then the symbol is built with 8 rows (80 codewords / 10 columns).
Manually set the number of symbol columns. Using the aspect ratio, both columns and rows must be 00x . Valid nonzero values are 01x to 1Ex (1 to 30 decimal). A value of 30 is used in place of any specified nonzero value greater than 30. If rows is a valid nonzero value, and columns is 0, then the "codewords:rows" ratio determines the number of columns used to build the symbol. For example, if rows is set to 15, columns is set to 0, and the symbol requires 90 codewords, then the symbol is built with 6 columns (90 codewords / 15 rows).
The aspect ratio can be used as an alternate way of designating rows and columns. To use the aspect ratio, rows and columns must both be 0, and aspect ratio Y and aspect ratio X must both be nonzero. If either aspect ratio Y or aspect ratio X is set to zero, then an aspect ratio of 1:2 is used.
These two bytes designate error correction levels by percentage. Valid percentage values range from 0% to 400%. Any value outside this range is ignored. A valid nonzero value overrides ECC by a predetermined value. A zero value causes the predetermined ECC value to be used.
If a valid nonzero percentage is specified, then the ECC level is computed by selecting one of the predetermined ECC levels (0–8). The ECC level selected is the one that best matches the number generated by multiplying the specified percentage by the number of data codewords in the symbol.
For example, if there are 20 data codewords in a symbol, and ECC percentage is specified at 100% (0064x), then the predetermined ECC level selected is the one closest to 20, or ECC level 3 (16 error codewords).
For the same 20 data codewords, and an ECC percentage specified at 35% (0023x), ECC level 2 (8 error codewords) are selected, because it is closest to 20 x 0.35, or 7.
This example prints a PDF417 bar code with the following settings:
ECC Level 4
X dimension = 8/600ths
Y ratio = 16/600ths
Non-truncated
Aspect ratio = 1:4
PCL 5 emulation data:
Esc &x16W0001 04 02 0008 02 00 00 00 01 04 0000 0000
EscC &y39WHere_are_39_bytes_of_data_to_be_encoded
The following is the header definition of the bar code descriptors for MaxiCode:
Bytes |
Most significant byte |
Least significant byte |
---|---|---|
0–1 |
Symbology ID byte 1 (00x) |
Symbology ID byte 2 (02x) |
2–3 |
Mode |
Reserved |
These two bytes signify the symbology. Because most descriptors are of different sizes and information, all bar code descriptors must reserve the first two bytes for the symbology ID. If the first two bytes are reserved, then the remaining bytes can be interpreted accordingly. For MaxiCode, these two bytes must be 00x and 02x.
This field designates what mode to use when interpreting the input data. Valid modes are in hexadecimal:
Value |
Description |
---|---|
02x |
Structured carrier message with numeric postal code. |
03x |
Structured carrier message with alphanumeric postal code. |
04x |
Standard symbol with standard error correction. |
05x |
Full symbol with enhanced error correction. |
06x |
Reader program with standard error correction. |
Depending on the mode, the input data sent with the Transfer Bar Code Data command must follow these rules:
For all modes, the input data must start with a label-number and number-of-labels field. Both fields are one digit in length and are terminated with either a comma or group separator (ASCII 29).
For Modes 2 and 3, the postal code, country code, and class-of-service fields must follow the label fields. Each field must be terminated with either a comma or group separator.
A Mode 2 postal code can have zero to nine digits. Postal codes greater than nine digits are truncated. For country code 840 (USA), postal codes of five digits in length are padded with four zeros.
A Mode 3 postal code can have zero to six alphanumeric characters (any printable character in code set A as defined in the AIM specification). Codes longer than six characters are truncated. Codes shorter than six characters are padded with spaces.
The country code and class of service must each be three digits in length and padded with leading zeros if necessary.
For modes 2 and 3, an optional ANSI message header can be inserted before the postal code. [)<RS01GSyy is a sample ANSI message header, where RS is a record separator, ASCII 30; and yy is a two-digit year. This message is automatically moved to the secondary message. A comma or group separator comma cannot terminate this message.
An optional secondary message follows the class of service for modes 2 and 3. For modes 4, 5, and 6, the message follows the number-of-labels field.
The following are MaxiCode examples of the ASCII data that are sent with the Transfer Bar Code Data command:
Mode 2, separated by commas:
Esc &y48W1,1,40361,840,001,This is the secondary message.
Mode 3, separated by commas:
Esc &y48W1,1,ABC01,840,001,This is the secondary message.
Mode 3, separated by group separators (GS) and commas plus optional ANSI message header (yy = 99):
Esc &y44W1,1,[)RS01GS99ABC01GS840GS022GSsecondary message.
Mode 4, separated by commas:
Esc &y29W1,1,Here is a mode 4 message.
MicroPDF417 is a multi-row symbology based on PDF417 and is used for small area applications that require greater area efficiency but lower data capacity than PDF417. MicroPDF417 is distinct from PDF417 in that the symbol may be produced only within specific row, column, and error correction codeword combinations. The combinations can be up to 4 data columns by 44 rows. A specific and limited set of symbol sizes is available; each size includes a fixed level of error correction.
MicroPDF417 provides the following encoding modes:
Text —Use when encoding general text.
Byte —Allows for the first 127 ASCII characters but with a reduced level of efficiency.
Numeric —Use to encode data consisting of numbers only.
Four symbol widths are permitted, each specifying the number of data columns (1–4). Within each symbol width, a variable number of rows (4–44) provides maximum data capacity for the following modes:
Text compaction mode 0:
250 characters or alphanumeric text (2 data characters per codeword)
Permits all printable ASCII characters 32–126 and ASCII 9, 10, and 13
Byte compaction mode 1:
150 characters or bytes (1.2 data characters per codeword)
Permits all 256 ASCII values
Numeric compaction mode 2:
366 characters or digits (2.93 data characters per codeword)
Permits efficient encoding of numeric data (0–9)
The three modes are used automatically within the bar code engine, depending on the input data. There is no method to specify explicitly any of the modes. NULL (00 hexadecimal) characters are not supported currently due to possible string termination issues within the printer.
The basic block of the MicroPDF417 is the black or white module or rectangle. The nominal dimensions of the module width are two times that of the height (W = 2 x H). Only the module width and height can be specified. The overall width and height of the MicroPDF417 bar code cannot be specified.
Bytes |
Most significant byte |
Least significant byte |
Range |
Default value |
Descriptions |
---|---|---|---|---|---|
0–1 |
Symbology ID byte 1 (00x) |
Symbology ID byte 2 (03x) |
N/A |
N/A |
Required. The two bytes with values 0 and 3 dec (00 and 03 hex) signify the symbology. Because most descriptors are of different sizes and information, all bar code descriptors must reserve the first two bytes for the symbology ID. If the first two bytes are reserved, then the remaining bytes can be interpreted accordingly. |
2–3 |
Reserved |
Units |
0 —Use the default (1/600-in. units). 1 —1/300-in. units. 2 —1/600-in. units. 3 —1/1200-in. units. |
0 or 2 dec (00 or 02 hex) |
Optional. Sets the units used in specifying any further parameters or dimensions. |
4–5 |
X dimension byte 1 (in Units) |
X dimension byte 2 (in Units) |
240–12000 dec |
945 dec (03 1 hex) |
Optional. Sets the X dimension of the module (white or black rectangle) in 100th of an inch. Notes:
|
6–7 |
Y dimension byte 1 (in Units) |
Y dimension byte 2 (in Units) |
480–60000 dec Note: The minimum Y dimension value is 2 multiplied by the X dimension. The maximum value is 5 multiplied by the X dimension. |
1890 dec (7 62 hex) |
Optional. Sets the Y dimension of the module (white or black rectangle) in 100th of an inch. Notes:
|
8–9 |
Rows |
Columns |
Rows: 4–44 dec Columns: 1–4 dec |
0 dec 00 (hex) |
Optional. Manually set the number of symbol rows and columns. Automatic operation is specified by using 0. |
10–15 |
Reserved |
N/A |
N/A |
N/A |
N/A |
A composite bar code symbol consists of a linear component that encodes the primary identification of the item. The linear component is associated with an adjacent two-dimensional composite component that encodes supplementary data, such as a batch number or expiration date.
The composite bar code symbol always includes a linear component so that the primary identification is readable by all scanning technologies. Two-dimensional imagers can also use the linear component as a finder pattern for the adjacent two-dimensional composite component. The composite bar code symbol always includes a multi-row two-dimensional composite component on top of the linear component of the symbol. This composite component is for compatibility with linear and area CCD scanners, and with linear and rastering laser scanners.
The following bar codes allow the addition of a two-dimensional composite component:
UPC-A (including +2 and +5 variants)
A UPC-A bar code is divided into 4 areas:
Number system —A single digit that identifies the type of product that the following symbol represents.
Digit |
Description |
---|---|
0 |
Regular UPC codes. |
1 |
Reserved. |
2 |
Weight items marked at the store. |
3 |
National drug or health-related code. |
4 |
No format restrictions, in-store use on non-food items. |
5 |
Coupons. |
6 |
Reserved. |
7 |
Regular UPC codes. |
8 |
Reserved. |
9 |
Reserved. |
Manufacturer code —A unique code assigned by Uniform Code Council (UCC) to each manufacturer or company that distributes goods. All products produced by a given company use the same manufacturer code.
Product code —A unique code assigned by the manufacturer. Unlike the manufacturer code, which UCC assigns, the manufacturer can assign product codes to each of their products without consulting any other organization.
Check digit —An extra digit used to verify that a bar code is scanned correctly. Because a scan can produce incorrect data, verifying that the rest of the data in the bar code is interpreted correctly is useful. The check digit is calculated based on the rest of the digits of the bar code. If the check digit is the same as the check digit value based on the data that is scanned, then the bar code is scanned correctly.
UPC-E (including +2 and +5 variants)
UPC-E is a variation of UPC-A that allows for a more compact bar code by eliminating extra zeros. Because the resulting UPC-E bar code is about half the size as a UPC-A bar code, UPC-E is generally used on products with very small packaging.
A UPC-E bar code has the following physical structure:
Left-hand guard bars, or start sentinel, encoded as 101
Six data characters, encoded from the previous parity table
Right-hand guard bars, encoded as 010101 (a center-guard bar pattern with a trailing bar)
UPC-E uses the odd and the even left-hand encoding character sets from the EAN-13 encoding standard.
The check digit is encoded in the parity of the other six characters; it does not have to be encoded explicitly. This check digit is the check digit from the original UPC-A bar code.
UPC-E may be used only if the number system is 0 or 1. The characters are encoded with odd and even parity from the left-hand columns of the EAN-13 character. The parity used for each character depends on the number system (0 or 1) and the check digit from the original UPC-A bar code.
EAN-8 (including +2 and +5 variants)
EAN-8 is the EAN equivalent of UPC-E where it provides a short bar code for small packages. It is shorter than an EAN-13 bar code, but longer than a UPC-E bar code. EAN-8 explicitly encodes all eight digits. Because the parity of the digits carries no particular significance, EAN-8 has no compatibility with UPC-E.
An EAN-8 bar code is a two- or three-digit number system code followed by a four- or five-digit product code. The numbering authority assigns the EAN-8 product codes. Any company can request an EAN-8 bar code regardless of its EAN-13 manufacturer or product code. However, the EAN-8 bar codes must be stored in each database as a separate product because EAN-8 cannot be translated to EAN-13.
An EAN-8 bar code has the following physical structure:
Left-hand guard bars, or start sentinel, encoded as 101
Two number system characters, encoded as left-hand odd-parity characters
First two message characters, encoded as left-hand odd-parity characters
Center guard bars, encoded as 01010
Last three message characters, encoded as right-hand characters
A check digit, encoded as a right-hand character
Right-hand guard bars, or end sentinel, encoded as 101
EAN-13 (including +2 and +5 variants)
EAN-13 is based on the UPC-A standard. The EAN-13 number system code is just one digit longer than the UPC-A number system code.
An EAN-13 bar code has the following physical structure:
Left-hand guard bars, or start sentinel, encoded as 101
The second character of the number system code, encoded as described in the following table
The five characters of the manufacturer code, encoded as described in the following table
Center guard pattern, encoded as 01010
The five characters of the product code, encoded as right-hand characters
A check digit, encoded as a right-hand character
Right-hand guard bars, or end sentinel, encoded as 101
The first character of the EAN-13 number system code (for example, the first digit of the EAN-13 value) is encoded in the parity of the characters of the left-hand side of the symbol. The value of the first character of EAN-13 determines the parity with which each of the characters in the left-hand side of the bar code are encoded from the table.
UCC-128
UCC-128 provides a worldwide format and standard for exchanging common data between companies. While other bar codes simply encode data regardless of what the data represents, UCC-128 encodes both data and what that data represents. It has a list of Application Identifiers (AIs) to include more data such as “best before” dates, batch numbers, quantities, weights, and many other attributes. Each AI tells the system what kind of data follows and in what format.
UCC-128 can be expanded without making existing systems obsolete. If an AI is needed, then it can be added to the standard. Applications using existing AIs are not affected.
A UCC-128 symbol has the following Code 128 structure:
A Code 128 start character (A, B, or C)
A Code 128 FNC1 character (character 102)
AI (from the AI table corresponding to data to be encoded)
Data to be encoded (format depends on AI)
A Code 128 checksum character
RSS-14 (including all variants: Expanded, Truncated, Limited, and Stacked)
RSS-14 encodes the full 14-digit EAN/UCC item identification in a linear symbol. Suitably programmed point-of-sale scanners can scan the linear symbol omnidirectionally.
RSS Limited encodes the 14-digit EAN/UCC item identification with indicator digits of 0 or 1 in a linear symbol. This symbology is used on small items that are scanned at the point of sale.
RSS Expanded encodes the EAN/UCC item identification plus supplementary AI element strings such as weight and “best before” dates. It can also be printed in multiple rows as a stacked symbol.
RSS-14 Stacked is a variation of the RSS-14 symbology that is stacked in two rows. This variant is used when the normal symbol is too wide for the application. It comes in two versions:
A truncated version used for small-item marking applications
A taller omnidirectional version, where omnidirectional scanners read it
To add the composite component, add the pipe character, " | ", 124 decimal (7C hexadecimal) to the end of the normal bar code data. Place the composite data after the pipe character. Any amount of data up to the maximum may be specified. For more information, see the AIM Web site.
For all linear component bar codes, the two EAN/UCC two-dimensional composite components, CC-A and CC-B, are internally selected within the bar code engine to accommodate the needed data capacity. The user does not need to specify these components.
The <Esc> sequence stands for Escape, or 1Bh.
For example, the following is an RSS-14 composite bar code sequence:
Esc (s36b24810T01234567890123|Lexmark Esc (s0p12h10vsb4099T
Beginning with an RSS-14 24810T sequence
Followed by RSS-14 data "01234567890123"
Followed by a " | " pipe character
Followed by the composite data string: "Lexmark"
Followed by a complete 4099T sequence to change back to a default font
Field name |
Type |
Range |
Default value |
Description |
---|---|---|---|---|
The dimensions of the composite bar code may be varied in only two directions.
|
||||
Symbology ID |
int |
N/A |
N/A |
Required.
|
Module height |
int |
Depends on the module height range of the linear component |
Depends on the default module height of the linear component |
Corresponds to the HP parameter. |
Module width |
int |
Depends on the module width range of the linear component |
Depends on the default module width of the linear component |
Corresponds to the HP parameter. |
HRT location |
int |
0 —Use the default value (half embedded). 1 —No HRT. 2 —Print the text embedded. 3 —Print the text half embedded. 4 —Print the text below embedded. |
Depends on the default HRT location of the linear component, except for UCC-128, which uses 4 as its default value |
Corresponds to the HP parameter.Note: If an invalid value is specified, then the default value is used. |
HRT typeface |
int |
0 —Courier (default) 1 —SM Gothic 2 —SM Unit 3 —SM Unit Condensed 4 —Roman 5 —OCRB |
0 dec (00 hex) |
Optional. Corresponds to the HP parameter.Note: If an invalid value is specified, then the default value is used. |
To obtain the PCL 5 emulation escape sequences used to select these fonts, print the font list from the printer control panel. For more information, see the printer User’s Guide .
The following are the fonts provided by Forms and Bar Code Card for emulation of Jetmobile BarDIMM Pro (formerly known as JetCAPS BarDIMM Pro):
Font |
Type |
Resides |
---|---|---|
Architext CMC7 |
Scalable |
On the option card |
CMC7 |
Scalable |
On the option card |
Code 39 |
Bitmap |
On the option card |
Code 39 - 4.69 Pitch |
Bitmap |
On the option card |
Code 39 - 8.11 Pitch |
Bitmap |
On the option card |
Code 39 Narrow |
Scalable |
On the printer |
Code 39 Regular |
Scalable |
On the printer |
Code 39 Wide |
Scalable |
On the printer |
Code 39 Half Inch |
Scalable |
On the option card |
Code 39 One Inch |
Scalable |
On the option card |
Code 39 Quarter Inch |
Scalable |
On the option card |
Code 39 Small High |
Scalable |
On the option card |
Code 39 Medium |
Scalable |
On the option card |
Code 39 Low Regular |
Scalable |
On the option card |
Code 39 Slim |
Scalable |
On the option card |
Code 39 Wide Regular |
Scalable |
On the option card |
Code 128 Regular |
Bitmap |
On the option card |
Code 128 Wide |
Bitmap |
On the option card |
Code 128 Regular |
Scalable |
On the option card |
Code 128 Narrow |
Scalable |
On the option card |
Code 128 Wide |
Scalable |
On the option card |
Currency symbols (including euro) |
Scalable |
On the option card |
Electrical symbols |
Scalable |
On the option card |
Interleaved 2 of 5 |
Bitmap |
On the option card |
Interleaved 2 of 5 Regular |
Scalable |
On the option card |
Interleaved 2 of 5 Thin |
Scalable |
On the option card |
Line Draw |
Bitmap |
On the option card |
Manufacturing symbols |
Scalable |
On the option card |
MICR |
Scalable |
On the option card |
OCR-A |
Bitmap |
On the option card |
OCR-A |
Scalable |
On the option card |
OCR-B |
Bitmap |
On the option card |
OCR-B |
Scalable |
On the option card |
OCR-B C39 |
Scalable |
On the option card |
OCR-B Digits Regular |
Scalable |
On the option card |
UPC - 10mil |
Bitmap |
On the option card |
UPC - 13mil |
Bitmap |
On the option card |
UPC Tall |
Scalable |
On the option card |
UPC Tall Narrow |
Scalable |
On the option card |
UPC Tall Thin |
Scalable |
On the option card |
UPC Half |
Scalable |
On the option card |
UPC Half Narrow |
Scalable |
On the option card |
UPC Half Thin |
Scalable |
On the option card |
USPS POSTNET |
Bitmap |
On the printer |
Some systems are unable to send binary data (non-printing characters) to a printer. This feature provides a way for these systems to redefine the escape character by substituting it with a user-selected escape code or AEC. FREESCAPE emulation also permits the use of an escape character and the AEC within the same sequence of commands.
Notes:
To change the AEC, use either of the commands listed in the following table:
Command |
Function parameters |
|
---|---|---|
ASCII code |
Character |
|
† Default value |
||
Esc ** J or AEC ** J, where is the ASCII code of the AEC |
34 |
" |
35 |
# |
|
36 |
$ |
|
47 |
/ |
|
63 |
? |
|
92 |
\ |
|
123 |
{ |
|
124 |
| |
|
125 |
} |
|
126† |
~ |
For example:
To change the AEC to " | ", use Esc **124J.
To deactivate FREESCAPE emulations, send this command: AEC **27J.
In the Bar Code menu, touch Alt ESC Code > On .
Return to the Bar Code menu, and then touch ESC Character .
Select an AEC.
To disable the AEC, turn off the Alt ESC Code setting.