Code 128 (ISO 15417) (Subset A, B and C)
Code 128 barcode is heavily used in all areas. It is a modern high-density symbology and was invented 1981 by Computer Identics.
Code 128 provides excellent density for all-numeric data and good density for alphanumeric data. It is often selected over Code 39 in new applications because of its density and because it offers a much larger choice of characters. The Code 128 symbology is maintained by AIM (Automatic Identification Manufacturers).
The Code 128 symbol set includes the digits 0-9, the letters A-Z (upper and lower case), and all standard ASCII symbols and control codes. The codes are divided into three subsets A, B, and C. There are three separate start codes to indicate which subset will be used; in addition, each subset includes control characters to switch to another subset in the middle of a barcode. Subset A includes the standard ASCII symbols, digits, upper case characters, and control codes. Subset B includes standard ASCII symbols, digits, upper and lower case characters. Subset C compresses two numeric digits into each character, providing excellent density.
Each symbol consists of 3 bars and 3 spaces, each of which may be 1, 2, or 3 elements wide (1 element = 1/11th of the character width). The bars always use an even number of elements and the spaces use an odd number. This provides the basis for a symbol-by-symbol consistency check during scanning. In addition, each Code 128 barcode includes a Modulo 103 checksum.
Valid characters: ASCII-characters between 0..127