command creates a multi-row, continuous, variable-length symbology capable of encoding the full 128-character ASCII set. It is ideally suited for applications requiring large amounts of data in a small space.

Code 49 Barcode

The code consists of two to eight rows. A row consists of a leading quiet zone, four symbol characters encoding eight code characters, a stop pattern, and a trailing quiet zone. A separator bar with a height of one module separates each row. Each symbol character encodes two characters from a set of Code 49 characters.
  • ^B4
    has a fixed print ratio.
  • Rows can be scanned in any order.
If additional information about this barcode is required, go to aimglobal.org.
o =
N =
R =
rotated 90 degrees (clockwise)
I =
inverted 180 degrees
B =
read from bottom up, 270 degrees
h =
height multiplier of individual rows
to height of label
value set by
This number multiplied by the module equals the height of the individual rows in dots. 1 is not a recommended value.
f =
print interpretation line
N =
no line printed
A =
print interpretation line above code
B =
print interpretation line below code
When the field data exceeds two rows, expect the interpretation line to extend beyond the right edge of the barcode symbol.
m =
starting mode
0 =
Regular Alphanumeric Mode
1 =
Multiple Read Alphanumeric
2 =
Regular Numeric Mode
3 =
Group Alphanumeric Mode
4 =
Regular Alphanumeric Shift 1
5 =
Regular Alphanumeric Shift 2
A =
Automatic Mode. The printer determines the starting mode by analyzing the field data.
This is an example of a Code 49 barcode:

Code 49 Field Data Character Set

data sent to the printer when using starting modes 0 to 5 is based on the Code 49 Internal Character Set. This is shown in the first column of the Code 49 table on the previous page. These characters are Code 49 control characters:
: ; < = > ?
Valid field data must be supplied when using modes 0 to 5. Shifted characters are sent as a two-character sequence of a shift character followed by a character in the unshifted character set.
To encode a lowercase
, send
a >
(Shift 2) followed by an uppercase
. If interpretation line printing is selected, a lowercase
prints in the interpretation line. This reflects what the output from the scanner reads. Code 49 uses uppercase alphanumeric characters only.
If an invalid sequence is detected, the Code 49 formatter stops interpreting field data and prints a symbol with the data up to the invalid sequence. These are examples of invalid sequences:
  • Terminating numeric mode with any characters other than 0 to 9 or a Numeric Space.
  • Starting in Mode 4 (Regular Alphanumeric Shift 1) and the first field data character is not in the Shift 1 set.
  • Starting in Mode 5 (Regular Alphanumeric Shift 2) and the first field data character is not in the Shift 2 set.
  • Sending Shift 1 followed by a character not in the Shift 1 set.
  • Sending Shift 2 followed by a character not in the Shift 2 set.
  • Sending two Shift 1 or Shift 2 control characters.

Advantages of Using the Code 49 Automatic Mode

Using the default (Automatic Mode) completely eliminates the need for selecting the starting mode or manually performing character shifts. The Automatic Mode analyzes the incoming ASCII string, determines the proper mode, performs all character shifts, and compacts the data for maximum efficiency.
Numeric Mode is selected or shifted only when five or more continuous digits are found. Numeric packaging provides no space advantage for numeric strings consisting of fewer than eight characters.