Code 49
Code 49 is a continuous, variable-length stacked symbology developed in 1987 by David Allais of Intermec Corporation. It combines some of the characteristics of Universal Product Code (UPC) and Code 39 into a single barcode language. It was the first stacked barcode symbology, and it supports the use of the full 128-character ASCII set. The code is in the public domain.
Code 49 is defined in AIM-BC6-2000 - Uniform Symbology Specification - Code 49.
The symbol comprises two to eight rows that contain the following elements:
The data input is encoded in exactly 18 bars and 17 spaces per row. Placeholder characters are used to fill out rows that have fewer than eight data characters.
Rows are separated by a horizontal separator bar. The separator bars on the bottom and top of the symbol extend to the ends of the leading and trailing quiet zones for the symbol. For this reason, they are longer than the separator bars that are inside the symbol.
The start pattern is a one-module-wide (1X) bar followed by a 1X space, and the stop pattern is a 4X bar.
This symbology supports the full 128-character ASCII set.
Code 49 contains a row check digit for each row and a symbol check digit for the overall symbol. Row check digits are based on the modulo 49 algorithm, and symbol check digits are based on the modulo 2401 algorithm.
Code 49 has a fixed width of 70 modules (70X). The height of each row must be at least 8X. The leading quiet zone should be at least 10X wide and the trailing quiet zone at least 1X wide.