Code 128 is another linear barcode which is widely used in industry and stores due to its dynamism and complexity, representing both alphabetic and numeric characters without sacrificing barcode density. Ted Williams is credited with the invention.
Computer Identics, in the year 1981, designed a barcode type denser than previously used code 39. The barcode type could encode all the 128 ASCII characters. It is for this reason this barcode type is called code 128.
Shortly after, GS1-128 was created. The name shows that Code 128 barcodes conform to the GS1 standards. Such barcodes include FNC1 characters, application identifiers, check digits and extra spaces, and parentheses in the human-readable interpretation characters. GS1-128 is formerly known as UCC/EAN-128.
These GS1 standards are to improve the efficiency, safety, and visibility of supply chains across physical and digital channels in various sectors. They form business semantics that identifies, capture, and share critical information about products, locations, assets, and more.
Individually, every aspect has three bars and three spaces of varying widths. Code 128 has 106 different printed characters having primarily three different meanings. For instance, different start characters inform the reader which of the character sets is originally in use while three-shift codes permit changing character sets inside a symbol. Specifically, there are 103 data symbols, three start symbols, and two stop symbols. Code 128 has six sections:
Code 128 includes an obligatory check digit that is based on the modulo 103 algorithm. The check digit appears just before the stop character, which has no human readable interpretation for the check digit. The check symbol is calculated from a weighted sum of all the symbols.
The elemental composition of GS1-128 includes a Code 128, used as the barcode, an application identifier, which is followed by the data. Each data set is linked if more than one data set needs representation. GS1-128 can be distinguished from CODE 128, by having a function following the start code, CODE-A to C.
Code 128 is denser than the other linear barcode type i-e code 39. Code 128 can encode all the upper and lower case alphabets and all the numeric characters from 0-9 and all the 128 ASCII characters. The higher density of code 128 makes it suitable to store a large amount of data as compared to code 139.
This variety of characters has been categorized into three sub-groups or sub-sets. Group or subset A contains all the ASCII characters, uppercase characters, digits, and control codes. Subset B contains ASCII characters, upper and lower case characters and digits while subset C contains numeric data. This versatility of code 128 is the key to its wide-scale use.
The purpose of code 128 was to design such a barcode type which could encode large amounts of linear data in a compact form. Previously, code 39 was used to code data but that barcode type was not suitable for encoding a large amount of data due to its low density, and in order to encode large data the length of the barcode had to be increased which was not a convenient solution. Hence researchers designed code 128 which was more dense and compact and could store large data.
Code 128 is used extensively worldwide like its subset GS1-128. It plays a primary role in supply chains and inventory in different industries due to the ability to store highly diversified information. This data can include the manufacturing date of the product, open date, weight and etc. Found listed below are some of the applications of the code:
If you want a linear barcode with a complete range of Alphabets, Numeric, and ASCII characters, code 128 is the best option. It is compact, concise, and can handle a large amount of data. When code 128 is compared with other barcodes such as code 39, the result is that code 128 is more succinct and space-efficient while it also provides its users with greater levels of data security.
Bytescout has two products that deal with Code 128. ByteScout BarCode Generator is capable of generating Code 128 barcodes from your desktop and web applications and BarCode Reader SDK reads Code 128 barcodes from scanned images, photo pictures, and PDF files.