Datamax-O'Neil Labelpoint Programmer’s Manual

4 (2)
Datamax-O'Neil Labelpoint Programmer’s Manual

Programmer’s Manual

Covers the following models:

MP Nova

MP Compact Mark II

MP Compact Mobile Mark II

Information in this manual is subject to change without notice and does not represent a commitment on the part of Datamax-O’Neil Corporation. No part of this manual may be reproduced or transmitted in any form or by any means, for any purpose other than the purchaser’s personal use, without the expressed written permission of Datamax-O’Neil Corporation.

© 2009 by Datamax-O’Neil Corporation

Part Number: 540340.03

PROGRAMMER’S REFERENCE MANUAL

 

Table of Contents

 

Table of Contents

 

Labelpoint features: ..........................................................................................

2

Scalable text field..............................................................................................

7

Bitmap text field (deprecated) ........................................................................

10

The text to be printed ......................................................................................

11

Fixed text ........................................................................................................

11

Variable information.......................................................................................

11

Counters ..........................................................................................................

11

Date and time ..................................................................................................

11

Best-before date ..............................................................................................

12

Check digits ....................................................................................................

13

Line breaks......................................................................................................

13

Reverse video..................................................................................................

13

Barcode symbologies......................................................................................

16

Bar code interpretation....................................................................................

19

Defining a 2D barcode field............................................................................

19

2D barcode symbologies.................................................................................

20

Code 128 .........................................................................................................

22

RSS .................................................................................................................

23

RSS-14 ............................................................................................................

23

RSS-14 Truncated...........................................................................................

23

RSS Limited....................................................................................................

23

RSS Expanded ................................................................................................

23

MaxiCode........................................................................................................

24

Structured Carrier Message.............................................................................

24

Modes..............................................................................................................

24

Escape Sequences ...........................................................................................

25

Data encodation ..............................................................................................

25

Structured Append ..........................................................................................

25

Code PDF417..................................................................................................

26

Security level ..................................................................................................

26

QR Code..........................................................................................................

28

Correction level...............................................................................................

28

Masking pattern ..............................................................................................

28

Other escape sequences...................................................................................

28

Changing a single variable..............................................................................

31

Clearing variable information.........................................................................

32

Clearing the layout..........................................................................................

32

Print command................................................................................................

32

Dormant print (or trigged printkey) ................................................................

32

Status request 1 ...............................................................................................

33

Out of paper ....................................................................................................

33

Label not removed (LTS)................................................................................

33

Printer restarted...............................................................................................

33

No paper in label sensor..................................................................................

33

Out of ribbon...................................................................................................

34

Heap error .......................................................................................................

34

Status request 2 ...............................................................................................

34

PROGRAMMER’S REFERENCE MANUAL

 

Table of Contents

 

Stopped on label gap.......................................................................................

34

Print incomplete..............................................................................................

34

Cool down state...............................................................................................

34

Last paper movement type..............................................................................

34

Layout outside label........................................................................................

35

Status request 3 ...............................................................................................

35

Operating parameters error .............................................................................

35

Internal print button ........................................................................................

35

Label stock......................................................................................................

35

Status request 4 ...............................................................................................

36

Out of paper ....................................................................................................

36

Label not removed (LTS)................................................................................

36

Out of ribbon...................................................................................................

36

Head lifted.......................................................................................................

36

Internal print button ........................................................................................

36

Printer restarted...............................................................................................

36

Status request 8 ...............................................................................................

37

LTS installed...................................................................................................

37

I2C board installed...........................................................................................

37

Cutter installed................................................................................................

37

Black mark photocell ......................................................................................

37

PHD board installed........................................................................................

37

Barcode displacement .....................................................................................

52

HTML version ................................................................................................

53

Text version ....................................................................................................

53

Document start................................................................................................

54

Document end .................................................................................................

54

Cutter mode.....................................................................................................

55

Cutting command............................................................................................

55

Label-taken sensor (LTS) ...............................................................................

55

Local printer....................................................................................................

56

Network printer...............................................................................................

56

Macros.............................................................................................................

57

Loading a macro .............................................................................................

57

Deleting a macro .............................................................................................

57

Executing a macro...........................................................................................

57

Auto macro......................................................................................................

57

Graphics ..........................................................................................................

58

Loading a graphics file....................................................................................

58

Deleting a graphics file ...................................................................................

58

Counters ..........................................................................................................

59

Initialising counters.........................................................................................

59

Retrieving information about counters ...........................................................

60

Paper feed........................................................................................................

60

Automatic reverse feed ...................................................................................

60

Paper feed on command..................................................................................

60

True two-way communication ........................................................................

61

ENQ - ACK/NAK...........................................................................................

61

PROGRAMMER’S REFERENCE MANUAL

 

Table of Contents

 

Data Format ....................................................................................................

64

Segment record ...............................................................................................

64

Data record......................................................................................................

64

End record.......................................................................................................

65

Labelpoint load graphics command ................................................................

66

Graphics format ..............................................................................................

66

Control Characters ..........................................................................................

67

Limitations ......................................................................................................

67

Code page 850, MS-DOS Latin 1...................................................................

68

Swedish/Finnish character set (7-bit)..............................................................

68

German character set (7-bit) ...........................................................................

69

UK character set (7-bit) ..................................................................................

69

French character set (7-bit) .............................................................................

70

Norwegian/Danish character set (7-bit)..........................................................

70

Spanish character set (7-bit)............................................................................

71

Italian character set (7-bit)..............................................................................

71

Code page 861, MS-DOS Icelandic................................................................

72

Code page 1252, Windows Latin 1 (ANSI)....................................................

73

Code page HP Roman-8..................................................................................

74

Code page 852, MS-DOS Latin 2 (Central Europe) .......................................

74

Code page 1250, Windows Latin 2 (Central Europe).....................................

75

Code page 855, MS-DOS Cyrillic ..................................................................

75

Code page 1251, Windows Cyrillic (Slavic) ..................................................

76

Code page 1253, Windows Greek ..................................................................

76

Code page 1254, Windows Latin 5 (Turkish).................................................

77

Code page 1257, Windows Latin 6 (Baltic Rim)............................................

77

Code page ISO 8859-2....................................................................................

78

Command summary........................................................................................

79

Status requests.................................................................................................

79

!S1...................................................................................................................

79

!S2...................................................................................................................

80

!S3...................................................................................................................

80

!S4...................................................................................................................

81

!S8...................................................................................................................

81

Service Commands .........................................................................................

82

Printer configuration .......................................................................................

84

Bar code symbologies.....................................................................................

87

Example 1a - The shoe example .................................................................................

88

Example 1b - The shoe example with variables .........................................................

89

PROGRAMMER’S REFERENCE MANUAL

The Labelpoint command language

Introduction

The thermal printer family features a simple yet powerful command language, Labelpoint II (LP II). This allows the printers to be controlled from most computers. Most common bar code symbologies are available. Text and bar codes can be printed in all four directions simultaneously. Counters for consecutive numbering are available and an integral real-time clock allows labels to be time-stamped at print time.

Labelpoint II uses only printable ASCII characters to allow commands to be easily manipulated in the host computer. This also avoids problems with control characters that some computer systems reserve for internal use.

Labelpoint features:

Easy-to-use command language

Prints text, bar and matrix codes, lines, boxes and graphics

Contains character sets for all major European languages

Many barcode symbologies are standard

Several 2-dimensional (matrix) codes

Ten scalable fonts as standard (uses Unicode character set internally to be able to use all latin and cyrillic characters)

TCP/IP support (LPD, RTELNET)

Terminal Server functionality (COM1 and/or COM2 connected to the network)

Easy-to-use configuration menu accessible through COM ports, Telnet port or by using a common web-browser.

Date and Time symbols

Ten onboard counters for consecutive numbering

Page 2

PROGRAMMER’S REFERENCE MANUAL

The Labelpoint command language

The Labelpoint command language

Labelpoint consists of a number of commands for creating a label layout, configuring the printer, checking the printer set-up etc.

The printer receives characters and interprets them as commands or as data. A command instructs the printer to perform some action, e. g. create a field in the label layout. Data can, for example, be variable data that is to be included in the print-out, or it can be a sequence of commands that are to be stored in the printer file system.

The printer acts on incoming data on a line-by-line basis. Input data is buffered until the end-of-line character is received. The default end-of-line character is CR (carriage return, ASCII 1310 = 0D16). When an end-of-line character is received, the line of data received is

interpreted. If the line begins with the command character it is treated as a command.

A command line starts with an ! character (ASCII 3310 = 2116) , followed by a character specifying the command type. Some commands take parameters.

Note! The ‘!’ character must be the first character on the command line. Otherwise the line will look like a data line.

Example

To print one label, type: !P1

To print 100 labels, type: !P100

Some commands assume a default value if a parameter is omitted. The command to print one label may be given as:

!P

The available commands and programming procedures are described in the following sections.

Case is significant for command characters. If the wrong case is used the printer will ignore the command.

Note! All commands must be terminated by the end-of-line character (normally CR.). The end-of-line character will not be shown in the examples in this manual.

Page 3

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Label layout definition commands

This chapter will explain label designing basics and commands used to create labels in Labelpoint.

The print area

All items (fields) to be printed on a label must be defined with their position on the paper. The coordinate system is shown below:

paper feed direction

Y

X

The X coordinate grows across the print head, from right to left, viewing the printer from the front. The Y coordinate grows as the paper is fed out.

All fields have a print direction, which is specified by the up vector. This is the "natural" up direction of the field. (The text on this paper has its up vector pointing to the top of the paper.)

The terminology of the compass is used to specify the up vector. "North" is defined as the paper feed direction. Text printed with up vector = N (north) is printed across the paper, with the top of the characters appearing first. Up vector E (east) is turned 90° clockwise, so that the left-most character of the text is the first to appear, etc.

The position of a field on the paper is given as its baseline and position.

The baseline is the coordinate of the bottom of the field. For fields with up vector N or S,

the baseline is the Y coordinate; for fields with up vector E or W it is the X coordinate. For text fields the baseline is at the base of non-descending characters, so that descending characters (e.g. 'j', 'g', and 'y') will extend below the baseline. ('Above' and 'below' always refer to the up vector of the field, and may thus be different physical directions, depending on the up vector of the field.)

The position parameter determines the position of the field in the direction perpendicular to the up vector, i. e. sideways. It may be given as the position of either the left end, the right end, or the center of the field.

1

All coordinates are given in /10 of a millimeter. The same applies for the length of the bars in a code, and the height and width of a black box.

Page 4

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Building a label layout

Before printing, the label layout must be defined. The layout defines the position and other attributes (size, font, barcode symbology etc.) of each item to be printed. When the print command is issued, the resulting print picture is printed out. The print format can be changed at any time.

The text to be printed can be fixed or variable. Fixed text is part of the layout and does not change until the layout is changed. Variable text can be entered for each printout of a layout, without changing the layout.

When the label layout with fixed data has been loaded in the printer the variable data (i. e. text that changes for each printout) is sent, followed by the print command to print one or more labels.

The !F command defines a layout field, i. e. an item to be printed. A layout field is one of the following:

one or more lines of text

a barcode or matrix code

a line, box or frame

graphics

When a ‘!F’ command is received the printer adds the new field to the label layout. A label layout is built by defining all the fields to be printed. A text, barcode, matrix code or graphics field may include fixed or variable text, or both.

Page 5

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

The shoe example: !C

!Y24 60 !Y35 10 !Y42 1

!F T N 100 100 L 14 0 94030 "TESTLABEL"

!F T N 200 100 L 10 0 94021 "PRICE: 65.00" !F T N 250 100 L 10 0 94021 "SIZE: 42"

!F C N 450 100 L 150 2 41 "65.00" !F B N 120 90 L 80 240

!P

When sending this layout to the printer, you’ll get a 5 x 4 cm label with a black box at the top, the size and price of the shoe, and a barcode at the bottom.

See further explanation for this example in section ‘Print Example’ at the end of this document.

Page 6

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Defining a text field

There are two different types of textfields, scalable and bitmap fields. Bitmap text fields are deprecated, that is, not recommended for new designs but kept in this manual for backward compatibility.

Scalable text field

The benefit of using scalable fonts is its possibility to use the highest possible resolution for the letters, independent of the size defined. This is due to the font’s appearance being calculated in run time.

Syntax I

!F S <u> <b> <p> <a> <h> <s> <f> [wa] <“text“>

Syntax II

!F S <u> <b> <p> <a> <h> <w> <f> [s] <“text“>

Note! Parameters enclosed in <> are required and parameters enclosed in [] are optional.

The parameters have the following meanings:

<u>

Defines the direction of printing as the ‘up’ direction of the printed characters. One

 

upper-case character (N, E, S, or W).

 

 

 

 

<b>

 

 

1

 

The baseline of the field, in /10 mm.

<p>

The position, in

1

/10 mm.

 

 

 

 

<a>

The alignment relative to the position. One upper-case character.

 

L = left end of the field aligned at p.

 

R = right end of the field aligned at p.

 

C = the field is centered around p.

 

 

<h>

The font height, in points.

 

 

<w>

The font width in points. To get normal character width, set parameter w to the same

 

value as parameter h.

 

 

<f>

The font number. See tables below.

<s>

 

 

1

 

Inter-character spacing in /10 points. (Optional in syntax II)

<wa>

Width adjustment, in percent. Valid values are 50 (%) to 200 (%).

 

To get normal character width, set parameter wa to 100.

 

This parameter is only used in syntax I. (Optional)

<”text”>

Specifies the text to be printed. The text must be enclosed in double quotes (").

 

 

 

 

Page 7

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Labelpoint uses Agfa Universal Font Scaling Technology® to generate scalable font characters. Fonts are stored in either Agfa MicroType™ format or TrueType format.

There are ten fonts included in the printer. The printer also emulates a number of italic fonts styles for sans serif fonts.

PCL typeface name

PCL typeface number

Univers Medium 1

94021

Univers Italic (emulated) 1

94022

Univers Bold 1

94023

Univers Bold Italic (emulated) 1

94024

Univers Condensed Medium 2

94029

Univers Condensed Italic (emulated) 2

94039

Univers Condensed Bold 2

94030

Univers Condensed Bold Italic (emulated) 2

94040

CG Times 1

92500

CG Times Italic 1

92501

CG Times Bold 1

92504

CG Times Bold Italic 1

92505

Letter Gothic Bold 2

93779

Letter Gothic Bold Italic (emulated) 2

93780

Coronet (script) 2

90249

For faster printouts from MS-Windows systems, the Arial fonts and the Times New Roman fonts are also emulated. On next page is a list with the fonts and their corresponding font number:

1 Latin 1, 2, 5, 6, Greek and Cyrillic characters available 2 Latin 1, 2, 5 and 6 characters available

Page 8

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

PCL typeface name

PCL typeface number

Arial (emulated)

24459

 

 

Arial Italic (emulated)

24460

 

 

Arial Bold (emulated)

24461

 

 

Arial Bold Italic (emulated)

24462

 

 

Times New Roman (emulated)

24455

 

 

Times New Roman Italic (emulated)

24456

 

 

Times New Roman Bold (emulated)

24457

 

 

Times New Roman Bold Italic (emulated)

24458

 

 

Page 9

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Bitmap text field (deprecated)

Bitmap text fields are deprecated. This section is kept for backward compatibility reasons. Use scalable fonts instead.

Syntax

!F T <u> <b> <p> <a> <h> <w> <f> <”text”>

Note! Parameters enclosed in <> are required and parameters enclosed in [] are optional.

The parameters have the following meanings:

<u>

 

Defines the direction of printing as the ‘up’ direction of the printed characters. One

 

 

upper-case character (N, E, S, or W).

 

 

 

 

 

 

 

<b>

 

 

 

1

 

 

 

The baseline of the field, in /10 mm.

<p>

 

The position, in

1

/10 mm

 

 

 

 

 

 

 

 

 

<a>

 

The alignment relative to the position. One upper-case character.

 

 

L = left end of the field aligned at p.

 

 

R = right end of the field aligned at p.

 

 

C = the field is centered around p.

 

 

 

 

 

 

<h>

 

The height expansion of the characters, 1 – 16.

 

 

 

 

 

 

<w>

 

The width expansion of the characters, 1 – 16.

 

 

 

 

 

 

<f>

 

The logical number of the font to be used for printing, 1 – 7.

 

 

 

 

 

 

<text>

 

Specifies the text to be printed. The text must be enclosed in double quotes (").

 

 

 

 

 

 

 

 

 

 

 

Bitmap font name

 

 

Bitmap font number

 

7x9-dot bold

 

 

 

1

 

 

 

 

 

 

 

hv18r

 

 

 

2

 

 

 

 

 

 

 

15-dot bold

 

 

 

3

 

 

 

 

 

 

 

9-dot

 

 

 

4

 

 

 

 

 

 

19-dot bold x 18

 

 

5

 

 

 

 

 

 

 

hc42c

 

 

 

6

 

 

 

 

 

 

 

g19 x 12

 

 

 

7

 

 

 

 

 

 

 

 

Page 10

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

The text to be printed

The text parameter can contain both fixed text and references to variable information that changes after each print cycle.

Fixed text

Fixed text is entered with the keyboard with som exceptions.

%, “ and \ are used for different commands. They must therefore be entered twice to get them printed.

To specify characters not available from the keyboard, either a national character escape sequence ‘\x’ or a Unicode escape sequence ‘\u’ can be used.

Examples:

To print ‘Å’, type the sequence \xc5 (for code page 1252)

To print the Euro symbol ‘€’, type the sequence \u20ac.

Variable information

A variable text reference has the form %<n>V, where n is the number of the variable.

Counters

A counter reference has the form %<n>C where n is the number of the counter.

Date and time

Date and time can be retrieved from the internal real-time clock. The date and time format is programmed by combining the codes below.

%H

expands to the hour count (one or two digits) (24-hour clock).

 

 

%h

expands to the hour count (one or two digits) (12-hour clock).

 

 

%M

expands to the minute count (two digits).

 

 

%S

expands to the seconds count (two digits).

 

 

%J

expands to "AM" or "PM" depending on the hours.

 

 

%j

expands to "a.m." or "p.m." depending on the hours.

 

 

%Y

expands to the year (two digits).

 

 

%y

expands to the year (four digits).

 

 

%N

expands to the month (two digits).

 

 

%D

expands to the day of the month (two digits).

 

 

%K

Julian date (three digits).

 

 

%W

Week of the year (two digits).

 

 

%XA

Month (one character, ‘A’ to ‘L’).

 

 

%XW

Weekday (one digit).

 

 

Page 11

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

The date symbols can be defined with an offset for best-before dates. The offset value is inserted between the ‘%’ character and the date symbol. The offset value can be either in days or in months:

Best-before date

Today’s date in the examples below is assumed to be the 31 of January 1998 if nothing else is specified.

 

 

Input

Output

 

 

%d10D/%d10N/%d10y

10/02/1998 (ten days best-before date)

 

 

%m1y-%m1N

1998-02 (one month best-before date)

 

 

The offset value may be a variable. If variable one is 30 and variable two is 12, then the following examples will give the result:

 

 

Input

Output

 

 

%d%1VD/%d%1VN/%d%1Vy

02/03/1998 (30 days best-before date)

 

 

%m%2Vy-%m%2VN

1999-01 (12 months best-before date)

 

 

It is possible to use the same best-before date even if the actual date changes and only update it on a monthly basis. This is accomplished by the use of parameter 185, which specifies what day in the month to update the best-before date. The syntax of the label data does not need to be changed. See the following example where parameter 185 is set to ‘15’:

 

 

Input

Output

%d10D/%d10N/%d10y

25/01/1998 (i.e. calculated from the 15th of

 

January even though today’s date is 31st of

 

January)

When today’s date reaches the 15th of February the output would be 25/02/1998, until 15th of Mars where it would be 25/03/1998 and so on.

Another feature that can be automated is month truncation. If the calculated best-before date exceeds a certain day in the calculated month, the resulting best-before date will be rounded to the first of next month. The truncation day is specified by setting parameter 186. See the following example where parameter 186 is set to ‘20’:

 

 

Input

Output

 

 

%d10D/%d10N/%d10y

01/02/1998

 

 

Note! Earlier versions of Labelpoint did not support best-before dates, week numbers, julian date, week day. Some programs, like Viewpoint, used a similar syntax internally, which was converted to static text before sent to the printer.

Page 12

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Check digits

Three different checksum types can be inserted in the textfield, EAN/UPC, Code39 and UPU. For usage, se table below.

%Z

EAN/UPC checksum. If the characters %Z are inserted in the text they will

 

be replaced by a 3:1 weighted modulo-10 check digit.

 

 

%zC

Code39 checksum. If the characters %zC are inserted in the text, they will

 

be replaced by weighted modulo-43 check digit, which is calculated on the

 

preceding code39 characters.

%zP

UPU checksum. If the characters %zP are inserted in the text, they will be

 

replaced by specially weighted modulo-11 check digit, which is calculated

 

on the preceding 8 digits.

Line breaks

The text to print may include line breaks (carriage return characters) which cause a new field to be automatically generated at a standard distance below the previous field. This is a convenient shorthand method when entering a number of text lines that are to be printed in the same font.

Example:

!F T N 100 100 L 12 0 94021 “Printer

SÄTERIGATAN 20

S-417 64 GÖTEBORG, Sweden”

Note! If a % or " character is to be printed it must be entered twice (%% or ""), to distinguish it from a % character marking a reference, or the " that terminates the text to print.

Reverse video

Text can be printed in reverse video. This means that the text will be printed with a white font on a black background. The black background square will extend one half character at the sides of the text and extend up to the maximum ascender and down to the maximum descender of the font. It is also possible to change the size of the background square in percent, from 2-999(%) of its original size, which is the described scenario above.

The command to enable/disable reverse video mode is !Y162 <n>, where n is set to 1 to enable and 0 to disable. To change the background square n can be set to a value between 2 and 999.

Example !C

!F T N 100 100 L 24 0 92500 “Normal Video” !Y162 1 // Turn on reverse video mode !F T N 200 100 L 24 0 92500 “Reverse Video”

!Y162 200 // Turn on reverse video mode and set background // square to

Page 13

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

200%

!Y162 0 // Turn off reverse video mode !P

Page 14

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Defining a barcode field

This section describes how to create and select barcodes to be printed.

Syntax

!F C <u> <b> <p> <a> <h> <w> <s> [d] <”text”>

The parameters have the following meaning:

<u>

Defines the direction of printing as the ‘up’ direction of the printed character.

 

One upper-case character (N, E, S, or W).

 

 

<b>

1

 

The baseline of the field in /10 mm.

<p>

1

 

The position in /10 mm.

<a>

The alignment relative to the position. One upper-case character.

 

L = left end of the field aligned at p.

 

R = right end of the field aligned at p.

 

C = the field is centred around p.

<h>

1

 

The height of the bars of the code in /10 mm.

<w>

The width expansion of the bars.

 

 

<s>

The bar code symbology to be used. This parameter is a number according to

 

table 1.

[d]

Optional parameter. Specifies the maximum allowed displacement in east-west

 

direction when defining a northor south oriented barcode field. The

 

displacement is specified in 1/10 mm and only used in combination with print

 

head diagnostics functionality, see ‘Print Head Diagnostics’ for more

 

information.

<”text”>

Specifies the text to be printed. See ‘Defining a text field’ above.

 

 

Page 15

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Barcode symbologies

 

Barcode symbology

Barcode type, information

 

 

 

1

2 of 5 Interleaved – 2:1

Numeric code, variable length. If a check

 

 

digit is required, it can be inserted with the

2

2 of 5 Interleaved – 3:1

%Z command. The code must contain an

even number of digits. The printer will

 

 

3

2 of 5 Interleaved – 5:2

therefore insert a leading 0 if necessary.

If the 2:1 ratio is used, a minimum width

 

 

4

2 of 5 Interleaved – 8:3

expansion of 4 is required.

 

5

2 of 5 Interleaved – 13:5

 

6

2 of 5 Interleaved – 11:4

 

7

2 of 5 Interleaved – 7:3

 

 

 

 

11

Code 39 - 2:1

Alphanumeric code, variable length. If a

 

 

check digit is required, it can be inserted

12

Code 39 - 3:1

with the %zC command (Code39 – modulo

43 checksum) or the %Z command

 

 

13

Code 39 - 5:2

(EAN/UPC – modulo 10 checksum).

 

14

Code 39 - 8:3

 

15

Code 39 - 13:5

 

16

Code 39 - 11:4

 

17

Code 39 - 7:3

 

 

 

 

Page 16

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

21

USS Codabar – 2:1

Numeric code, variable length. The start and

22

USS Codabar – 3:1

stop characters (‘A’, ‘B’, ‘C’ or ‘D’) must be

included in the input data.

23

USS Codabar – 5:2

 

24

USS Codabar – 8:3

 

25

USS Codabar – 13:5

 

26

USS Codabar – 11:4

 

27

USS Codabar – 7:3

 

 

 

 

31

UPC-A

Numeric code. Requires 11 digits of input

 

 

data. The printer automatically appends the

 

 

check digit.

 

 

An EAN/UPC extension field could be

 

 

automatically appended by adding 2 or 5

 

 

digits to the input data.

32

EAN 13

Numeric code. Requires 12 digits of input

 

 

data. The printer automatically appends the

 

 

check digit.

 

 

An EAN/UPC extension field could be

 

 

automatically appended by adding 2 or 5

 

 

digits to the input data.

33

EAN 8

Numeric code. Requires 7 digits of input

 

 

data. The printer automatically appends the

 

 

check digit.

34

UPC-E

Numeric code. Requires 6 digits of input

 

 

data. The printer automatically appends the

 

 

check digit.

35

EAN/UPC extension

Numeric code. Requires 2 or 5 digits of

 

 

input data.

 

 

This code could maunally inserted with a

 

 

EAN/UPC extension barcode field, or

 

 

automatically inserted by adding 2 or 5

 

 

digits to a EAN 13 or UPC-A barcode field.

41

Code 128

All 128 ASCII characters plus control

 

 

characters can be encoded. The control

 

 

characters are explained further in - Code

 

 

128 function codes -. Variable length.

43

EAN 128

The same as Code 128, except that the

 

 

printer automatically inserts a FNC1 as the

 

 

first character. This is unique for the EAN

 

 

128 code.

 

 

(, ) and space characters are filtered in the

 

 

barcode, but printed in the human readable

 

 

text.

Page 17

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

51

ITF 14 – 2:1

Numeric code, fixed length. Requires 13

52

ITF 14 – 3:1

digits of input data. The printer

automatically appends the check digit. A

 

 

53

ITF 14 – 5:2

frame is printed around the barcode.

54

ITF 14 – 8:3

The nominal wide-to-narrow ratio for ITF 14

55

ITF 14 – 13:5

is 5:2 and the nominal narrow bar width is

1,016 mm. At 8 dots/mm, the width

 

 

56

ITF 14 – 11:4

expansion for ITF 14 – 5:2 should then be

57

ITF 14 – 7:3

set to 4. At 12 dots/mm it should be set to 6.

The nominal height is 41,4 mm including the

 

 

 

 

frame.

 

 

 

64

RSS-14

Numeric code. Encodes up to 14 digits of

 

RSS-14 Truncated

numerical data. By selecting height

 

expansion values to appropriate values,

 

 

 

 

RSS-14 and RSS-14 Truncated are used

 

 

respectively. See the RSS section for

 

 

appropriate values to distinguish between

 

 

the two codes.

67

RSS Limited

Numeric code. Encodes up to 14 digits of

 

 

numerical data. See the RSS section for

 

 

more information.

68

RSS Expanded

All 128 ASCII characters plus the FNC1

 

 

control character. Encodes up to 74 numeric

 

 

or 41 alphabetic characters. Variable length.

 

 

See the RSS section for more information. (,

 

 

) and space characters are filtered in the

 

 

barcode, but printed in the human readable

 

 

text.

71

Code 2 of 5 – 2:1

Numeric code, variable length. Old version

72

Code 2 of 5 – 3:1

of Interleaved 2 of 5. Only the bars carry

information. If a check digit is required, it

 

 

73

Code 2 of 5 – 5:2

can be inserted with the %Z command.

74

Code 2 of 5 – 8:3

If the 2:1 ratio is used, a minimum width

75

Code 2 of 5 – 13:5

expansion of 4 is required.

 

76

Code 2 of 5 – 11:4

 

77

Code 2 of 5 – 7:3

 

 

 

 

The "2:1", "3:1", notation in the table defines the width ratio of the wide and narrow bar, in dots. The width of all bars and spaces can be doubled, tripled, etc., by setting the <width> parameter in the field command to 2, 3, etc.

Note! Avoid using a width value of 1 when using 2:1 or 3:1 ratios. The resulting bars will be too thin for most codes.

Page 18

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Bar code interpretation

The printer will automatically print a human-readable text line below the bar code if it has been configured to do so. (The command is described in section - Printer configuration -). This can be done individually for each bar code in a label layout. The command to enable humanreadable text is:

!Y42 1 and to disable: !Y42 0

Example: !Y42 0

!F C S 50 800 L 100 3 1 “%1V“ !Y42 1

!F C S 200 800 L 100 3 33 “%1V“

Defining a 2D barcode field

A two-dimensional (2D) code is normally a matrix code or a stacked barcode. Labelpoint supports a number of 2D codes.

Syntax

!F C <u> <b> <p> <a> <h> <w> <s> [o] <“text“>

Note! Parameters enclosed in <> are required and parameters enclosed in [ ] are optional.

The parameters have the following meaning:

<u>

Defines the direction of printing as the "up" direction of the printed character. One

 

upper-case character (N, E, S, or W).

 

 

 

 

 

 

 

 

 

<b>

 

 

1

 

 

 

 

The baseline of the field, in /10 mm.

 

 

<p>

The position, in

1

/10 mm

 

 

 

 

 

 

 

 

 

 

<a>

The alignment relative to the position. One upper-case character.

 

L = left end of the field aligned at p.

 

 

 

 

R = right end of the field aligned at p.

 

 

C = the field is centred around p.

 

 

 

<h>

The height of the bars of the code in

1

 

 

/10 mm, or height expansion of the pixels, 1 –

 

16.

 

 

 

 

 

<w>

The width of the bars of the code in

1

/10 mm, orwidth expansion of the pixels, 1 –

 

 

 

 

16.

 

 

 

 

 

 

 

<s>

The bar code symbology to be used. This parameter is a number according to table

 

2.

 

 

 

 

 

[o]

Optional parameter with different function depending on the code symbology:

 

 

 

 

 

 

 

Page 19

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

For Royal Mail 4-State Customer Code and the KIX code:

Width adjustment. See 2D barcode Symbologies. A value of 50 % to 200 % is allowed. 100 % is the default and means that the bar width and space widths are the same.

For MaxiCode:

An optional two digit number used to define structured appends, where the first digit specifies the symbol number, and the second digit specifies the total number of symbols.

<”text”> Specifies the text to be printed. See ‘Defining a text field’ above.

2D barcode symbologies

61

PDF417

Stacked barcode. Arbitrary binary data, variable length.

 

 

More described in – PDF417 -.

 

 

 

81

USD-5 dot code

Matrix code. Numeric data, variable length. 5 to 20 digits.

 

 

The printer automatically appends the check digit. The

 

 

USD-5 code always has the same size, so <h> and <w>

 

 

should be set to 1.

83

LEB code

Stacked barcode. Alpha-numeric code, variable length. <w>

 

 

is the expansion factor. <w> = 1 means a dot width of 0.25

 

 

mm. <h> is not currently used and should be set to the

 

 

same value as <w>.

91

Royal Mail 4-State

‘Stacked’ barcode. The character set includes numeric

 

Customer Code

characters and upper-case (A-Z) characters. Start, stop and

 

(RM4SCC)

checksum characters are automatically generated.

 

 

The height (<h>) may be from 4.22 mm to 5.84 mm. <w> is

 

 

the width including both bar and space. 20 - 24 bars per

 

 

25.4 mm is allowed. The bar width may be 0.38 - 0.63 mm.

 

 

Example:

 

 

!F C N 100 100 L 50 12 91 “1234567”

 

 

will give a 5 mm high code with 0.60 mm bar width and with

 

 

21 bars in 25.4 mm.

92

KIX barcode

The same as Royal Mail 4-State code, except that no start,

 

 

stop or checksum characters are generated.

 

 

 

101

QR Code, Model 1

Matrix code. Arbitrary binary data, variable length. More

 

 

described in – QR Code -. Model 1 is included for

 

 

backwards compatibility reasons. All new applications

 

 

should use Model 2.

102

QR Code, Model 2

Matrix code. Arbitrary binary data, variable length. More

 

 

described in – QR Code -. New version of the QR Code.

 

 

Should be used in new applications.

Page 20

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

121

MaxiCode mode 2

Matrix code developed by UPS (United Parcel Service)

122

MaxiCode mode 3

which can encode about 100 characters of data in an area

of 28x27 mm. Modes 2 and 3 are optimized for encoding

 

 

123

MaxiCode mode 4

postal address information. Mode 4 is used for encoding

124

MaxiCode mode 5

arbitrary data. Mode 5 employs enhanced error correction.

 

 

 

 

131

Data matrix

Matrix code. Arbitrary binary data. A maximum of 3116

 

 

numeric, 2335 alphanumeric characters or 1556 bytes

 

 

binary data can be coded.

Table 2 – 2D code symbologies in Labelpoint

Page 21

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Code 128

Code 128 encodes the full ASCII character set, plus four special non-ASCII characters (function codes) called FNC1, FNC2, FNC3, and FNC4. ASCII control characters and function codes must be sent to the printer using escape sequences. An escape sequence consists of the characters "??" followed by a third character.

To print a function code in the bar code send "??1" for FNC1, "??2" for FNC2, etc. To print an ASCII control character (ASCII codes below 3210) send "??" followed by the alphabetic

character corresponding to the desired control character. Any upper or lower case character in the ASCII range 4016 to 7E16 (6410 to 12710) will be recognised.

Example:

"??J" or "??j" is interpreted as the line feed character.

"??[" or "??{" is interpreted as the ESC character (ASCII 27 = 1B16). The sequence "???"

yields a single '?' in the code. It is thus possible to encode two consecutive ?'s by sending "????" to the printer. Escape sequences that do not fit any of the above alternatives are ignored.

The example below shows the commands to define two bar codes. The FNC2 (Message Append) function character is included in the first code. The data for the second code is terminated with a carriage return character. (FNC2 instructs the reader to concatenate the present code with the next code scanned and transmit the data from both codes in one message.)

Example:

!F C S 400 1000 L 100 2 41 "??2Printer"

!F C S 200 1000 L 100 2 41 "Printer??M"

Page 22

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

RSS

The RSS, Reduced Space Symbology, family of symbols is used for space-constrained applications. Currently supported variations include RSS-14, RSS-14 Truncated, RSS Limited and RSS Expanded. Accompanying 2D Composite Components are currently not supported. Note that the settings for width/height ratio of the RSS barcodes will differ between 200dpi and 300dpi layouts. The width/height ratio for respective RSS symblology is specified in the following sections.

RSS-14

RSS-14 is a linear symbology that supports omni-directional scanning. It encodes full 14digit EAN/UCC Item Identification. RSS-14 is dimensioned as 96X wide by 33X high. X equals "X" dimension or narrow bar width. The check-digit is added by the printer.

Example:

!F C S 200 1000 L 200 4 64 "1541215000015"

RSS-14 Truncated

This variant of RSS is identical to RSS-14 but allows truncation of the height to 13X. The normal RSS-14 symbol has a height of 33X. X equals "X" dimension or narrow bar width. The check-digit is added by the printer.

Example:

!F C S 200 1000 L 80 4 64 "1541215000015"

RSS Limited

RSS Limited is a linear symbology that encodes the same data as defined for RSS-14. The encoding process is though different and limits the values assigned for Indicator digits to 1 or 0. The result is an RSS code that can be printed very small. RSS Limited is dimensioned as 71X wide by 10X high. X equals "X" dimension or narrow bar width. X equals "X" dimension or narrow bar width. The check-digit is added by the printer.

Example:

!F C S 200 1000 L 50 4 67 "1541215000015"

RSS Expanded

RSS Expanded is a variable length, linear symbology that is encoded differently than RSS14. This symbology allows up to 74 numeric or 41 alphabetic characters. The FNC1 EAN/UCC Function Character is also supported by entering “#”. Apart from encoding EAN/UCC Item Identification, RSS Expanded also encodes all EAN/UCC Application Identifier Element Strings. Width dimension is variable.

Example:

!F C S 200 1000 L 100 4 68 "1045566#17040301"

Page 23

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

MaxiCode

MaxiCode is a two-dimensional symbology built up by an array of hexagons surrounding a central recognition pattern (bullseye). Reed-Solomon error correction is used to ensure integrity of the encoded data.

Structured Carrier Message

The primary message in modes 2 and 3 contains the following formatted data: Ship to Postal Code, Ship to Country Code ISO 3166 3-digit code, Class of Service.

Example:

 

!F C S 100 1000 L 1 1 122 "[)>\x1e

Message Header

01\x1d96

Transportation Data Format Header

SE41764\x1d

Postal Code

752\x1d

Country Code

001\x1d

Class of Service

1Z12345677\x1d

Tracking Number

UPSN\x1d

Standard Carrier Alpha Code

1234556\x1d

UPS Account Number

089\x1d

Julian Day of Collection

1234\x1d

Shipment ID Number

1/1\x1d

Package n/x

10\x1d

Package Weight

Y\x1d

Address Validation

SÄTERIGATAN 20\x1d

Ship To Street Address

GÖTEBORG\x1d

Ship To City

N/A\x1e

Ship To State

\x04"

End of Transmission

Further detailed information can be retrieved from

http://www.maxicode.com/maxicode/MaxicodeGuide.html

Modes

Mode 2 and 3: Structured Carrier Message – The first 20 codewords encodes the Structured Carrier Message. Use mode 2 when the postal code is numeric and mode 3 when the postal code is alphanumeric.

Example, a mode 2 and mode 3 MaxiCode:

!F C S 100 1000 L 1 1 121 "[)>\x1e01\x1d9641764\x1d752\x1d001\x1e\x04" !F C S 400 1000 L 1 1 122 "[)>\x1e01\x1d96SE41764\x1d752\x1d001\x1e\x04"

Mode 4: Standard Symbol – The symbol provides 93 6-bit codeword for data encodation.

Example:

!F C S 100 1000 L 1 1 123 "MaxiCode Mode 4"

Mode 5: Enhanced Error Correction – The symbol provides 77 6-bit codewords for data encodation.

Example:

!F C S 100 1000 L 1 1 124 "MaxiCode Mode 5"

Page 24

PROGRAMMER’S REFERENCE MANUAL

Label layout definition commands

Escape Sequences

Nonwritable characters can be sent with the standard Labelpoint escape sequence \x<hh>. Note that if either ASCII 0A hex or ASCII 0D hex shall be part of the data stream, the \0a or \0d style escape sequence must be used. Otherwise they are treated as line breaks and removed from the data stream.

Data encodation

The MaxiCode encodes data in six-bit codewords. Hence, in order to encode the full ASCII set, shift symbols must be used to switch between different character sets. This means that fewer symbols can be used to encode the real data. This must be considered so that data is not truncated.

If the data consist of more than nine consecutive numbers, they are compacted into six codewords. This means that for a mode 4 symbol, a maximum of 138 digits can be encoded.

Structured Append

It is possible to connect several MaxiCode symbols in order to encode larger quantities of data through the use of structured append. To specify that a symbol is part of a structured append, use the [o] parameter. The first digit specifies the symbol number, and the second digit specifies the total number of symbols. There can be a maximum of eight connected symbols.

Example:

!F C S 100 1000 L 1 1 123 12 "MaxiCode Mode 4 Symbol 1 of 2"

Page 25

Loading...
+ 66 hidden pages