logo_sm.GIF (674 bytes)adsf
 

 

Bar Code Symbologies

The Following is a Detailed Description of the Bar Code Symbologies Supported by B-Coder Pro.

*These have recently been added to B-Coder Pro. We will be adding descriptions to this page soon.

.

Bar codes are like a printed version of the Morse code. Different bar and space patterns are used to represent different characters. Sets of these patterns are grouped together to form a "symbology". There are many types of bar code symbologies each having their own special characteristics and features. Most symbologies were designed to meet the needs of a specific application or a specific industry. For example the UPC symbology was designed for identifying retail and grocery items and Postnet was designed to encode Zip Codes for the US Postal Service

 

CODE 39 (Normal and Full ASCII versions)

The Normal CODE 39 is a variable length symbology that can encode the following 44 characters: 1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ-. *$/+%. Code 39 is the most popular symbology in the non retail world and is used extensively in manufacturing, military, and health applications. Each Code 39 bar code is framed by a start/stop character represented by an asterisk (*). The Asterisk is reserved for this purpose and may not be used in the body of a message. B-Coder automatically adds the start and stop character to each bar code therefore you should not include them as part of your bar code message. If you select the NORMAL version of CODE 39 and your bar code text contains lower case characters, B-Coder will convert them to upper case. If your bar code message contains any invalid characters, B-Coder will prompt you with a warning message (if the Enable Invalid Warning Messages option is selected in the Preferences menu).

Code 39 optionally allows for a (modulo 43) check character in cases where data security is important. The health care industry has adopted the use of this check character for health care applications. To enable the Code 39 check character feature in B-Coder, select the option INCLUDE CODE 39 / I 2 of 5 CHECK CHARACTER in B-Coder's Preferences menu. When this option is enabled, B-Coder will automatically calculate and append the proper check character to all Code 39 symbols.

Another feature of Code 39 allows for concatenation of two or more bar codes. It is sometimes advantageous to break long messages into multiple, shorter, symbols. If the first data character of a Code 39 symbol is a space, some readers will store the remainder of the symbol in a buffer and not transmit the data. This operation continues for all successive Code 39 symbols with a leading space, with each message appended to the previous one. When a message without a leading space is read, it is appended to the previously scanned data in the buffer and the entire buffer is transmitted as one long message.

The FULL ASCII version of Code 39 is a modification of the NORMAL (standard) version that can encode the complete 128 ASCII character set (including asterisks). The Full ASCII version is implemented by using the four characters: $/+%. as shift characters to change the meanings of the rest of the characters in the Normal Code 39 character set. Because the Full ASCII version uses shift characters in combination with other standard characters to represent data not in the Normal Code 39 character set, each non-standard character requires twice the width of a standard character in a printed symbol.

Note: Because all of the characters used to implement Full ASCII Code 39 are part of the Normal Code 39 character set, readers that do not support Full ASCII Code 39 will still read Full ASCII Code 39 symbols. The reader will output shifted characters as if they were normal Code 39 characters.

Top of Page


UPC-A, UPC-E, and UPC Supplementals

UPC-A with Supplemental UPC-E

UPC-A is a 12 digit, numeric symbology used in retail applications. UPC-A symbols consist of 11 data digits and one check digit. The first digit is a number system digit that usually represents the type of product being identified. The following 5 digits are a manufacturers code and the next 5 digits are used to identify a specific product.

UPC numbers are assigned to specific products and manufacturers by the Uniform Code Council (UCC). To apply for a UPC number or for more information, you can contact the UCC at 8163 Old Yankee Road, Suite J, Dayton, OH 45458 Tel: 513-435-3870

When specifying UPC-A messages, you may enter up to 11 digits. B-Coder will automatically calculate the check digit for you. If you enter less than 11 digits or if you enter any digits other than 0 to 9, B-Coder will prompt you with a warning message. If the option "Enable Invalid Message Warnings" in the Preferences menu is not selected and you do not enter 11 digits, B-Coder will left pad short messages with zeros and truncate longer messages so that the total length is 11.

UPC-E is a smaller, six digit, UPC symbology for number system 0. It is often used for small retail items. UPC-E is also called "zero suppressed" because UPC-E compresses a normal 12 digit UPC-A code into a six digit code by "suppressing" the number system digit, trailing zeros in the manufacturers code and leading zeros in the product identification part of the bar code. A seventh check digit is encoded into a parity pattern for the six main digits. UPC-E can thus be uncompressed into a standard UPC-A 12 digit number.

For UPC-E bar codes, you may enter up to 6 digits. Again, B-Coder will calculate the check digit and truncate or pad the number to a total length of 6 digits as with UPC-A.

Both UPC-A and UPC-E allow for a supplemental two or five digit number to be appended to the main bar code symbol. This supplemental message was designed for use on publications and periodicals. If you enter a supplemental message, it must consist of either two or five numeric digits. The supplemental is simply a small additional bar code that is added onto the right side of a standard UPC symbol.

Top of Page


EAN-8 / EAN-13, BookLan and EAN Supplementals

EAN-8 EAN-13 with supplemental (ISBN Version)

EAN or European Article Numbering system (also called JAN in Japan) is a European version of UPC. It uses the same size requirements and a similar encoding scheme as for UPC codes.

EAN-8 encodes 8 numeric digits consisting of two country code digits, five data digits and one check digit. B-Coder will accept up to 7 numeric digits for EAN-8. B-Coder will automatically calculate the check digit for you. If you enter less than 7 digits or if you enter any digits other than 0 to 9, B-Coder will display a warning message. If the option "Enable Invalid Message Warnings" in the Preferences menu is not selected and you do not enter 7 digits, B-Coder will left pad short messages with zeros and truncate longer messages so that the total length is 7.

EAN-13 is the Euro version of UPC-A. The difference between EAN-13 and UPC-A is that EAN-13 encodes a 13th digit into the parity pattern of the left six digits of a UPC-A symbol. This 13th digit, combined with the 12th digit, usually represent a country code.

Both EAN-8 and EAN-13 support a supplemental two or five digit number to be appended to the main bar code symbol. The supplemental is designed for use on publications and periodicals. Supplemental messages must consist of either two or five numeric digits and will appear as a small additional bar code on the right side of a standard EAN symbol.

EAN bar code numbers are assigned to specific products and manufacturers by an organization called ICOF located in Brussels, Belgium. Tel: 011-32-2218-7674

EAN-13 has been adopted as the standard in the publishing industry for encoding ISBN numbers on books. An ISBN or BookLan bar code is simply an EAN-13 symbol consisting of the ISBN number preceded by the digits 978. The supplemental in an ISBN bar code is simply the retail price of the book preceded by the digit 5. For example, if your ISBN number is 1-56276-008-4 and the price of the book is $29.95 then you would enter 978156276008 as the bar code message and 52995 for the supplemental. If you choose BookLan as the bar code symbology, B-Coder will automatically create the correct EAN-13 bar code if you supply just the first 10 digits of the ISBN number and optionally a price (without the preceding 5).

Top of Page


CODABAR

CodaBar is a variable length symbology that allows encoding of the following 20 characters: 0123456789-$:/.+ABCD. CodaBar is commonly used in libraries, blood banks, and the air parcel business. CodaBar uses the characters A B C and D only as start and stop characters. Thus, the first and last digits of a CodaBar message must be A B C or D and the body of the message should not contain these characters. B-Coder will allow any length of CodaBar message as long as it contains valid characters and starts and ends with a valid start/stop character. If you use lower case letters for A B C or D, B-Coder will convert to upper case.

Top of Page


INTERLEAVED 2 OF 5

Interleaved 2 of 5 is a high density variable length numeric only symbology that encodes digit pairs in an interleaved manner. The odd position digits are encoded in the bars and the even position digits are encoded in the spaces. Because of this, I 2 of 5 bar codes must consist of an even number of digits. Also, because partial scans of I 2 of 5 bar codes have a slight chance of being decoded as a valid (but shorter) bar code, readers are usually set to read a fixed (even) number of digits when reading I 2 of 5 symbols. The number of digits are usually pre-defined for a particular application and all readers used in the application are programmed to only accept I 2 of 5 bar codes of the chosen length. Shorter data can be left padded with zeros to fit the proper length. B-Coder will only accept numeric digits for I 2 of 5 bar codes. If an odd number of digits is entered, B-Coder will Left-Pad one zero to the number entered.

Interleaved 2 of 5 optionally allows for a weighted modulo 10 check character for special situations where data security is important. To enable the I 2 of 5 check character feature in B-Coder, select the option INCLUDE CODE 39 / I 2 of 5 CHECK CHARACTER in B-Coder's Preferences menu. When this option is enabled, B-Coder will automatically calculate and append the proper check character to all Interleaved 2 of 5 symbols.

Top of Page


DISCRETE 2 OF 5

Discrete 2 of 5 is a variable length numeric symbology very similar to Interleaved 2 of 5 except that instead of encoding data in both the bars and the spaces, data is only encoded in the bars. Because of this, discrete 2 of 5 is not as compact as Interleaved 2 of 5 and also, odd numbers of digits may be encoded. Use of Discrete 2 of 5 is not very common and few bar code readers support this symbology.

Top of Page


CODE 93

CODE 93 is a variable length symbology that can encode the complete 128 ASCII character set. Code 93 was developed as an enhancement to the CODE 39 symbology by providing a slightly higher character density than CODE 39. CODE 93 also incorporates two check digits as an added measure of security. Although CODE 93 is considered more robust than CODE 39, it has never achieved the same popularity as Code 39. CODE 93 bar codes are framed by a special start/stop character. B-Coder will automatically add the start and stop characters as well as the check digits to each Code 93 bar code therefore you should not attempt to include them as part of your bar code message.

Top of Page


CODE 128

Code 128 is a variable length, high density, alphanumeric symbology. Code 128 has 106 different bar and space patterns and each pattern can have one of three different meanings, depending on which of three different character sets is employed. Special start characters tell the reader which of the character sets is initially being used and three special shift codes permit changing character sets inside a symbol. One character sets encodes all upper case and ASCII control characters, another encodes all upper and lower case characters and the third set encodes numeric digit pairs 00 through 99. This third character set effectively doubles the code density when printing numeric data. Code 128 also employs a check digit for data security. In addition to ASCII characters, Code 128 also allows encoding of four special function codes (FNC1 - FNC4). The meaning of function code FNC1 and FNC4 were originally left open for application specific purposes. Recently an agreement was made by the Automatic Identification Manufacturers Assoc. (AIM) and the European Article Numbering Assoc. (EAN) to reserve FNC1 for use in EAN applications. FNC4 remains available for use in closed system applications. FNC2 is used to instruct a bar code reader to concatenate the message in a bar code symbol with the message in the next symbol. FNC3 is used to instruct a bar code reader to perform a reset. When FNC3 is encoded anywhere in a symbol, any data also contained in the symbol is discarded. The four function codes can be added to a message by selecting them from the bottom of the ASCII chart in B-Coder's window.

Note: B-Coder will automatically select the proper character sets and insert the necessary start character and shift codes so that the resulting bar code will be as short as possible. The check digit will also be calculated automatically by B-Coder.

Top of Page


EAN/UCC 128

The EAN/UCC 128 symbology is a variation of the original Code 128 symbology designed primarily for use in product identification applications. The EAN/UCC 128 specification uses the same code set as Code 128 except that it does not allow function codes FNC2-FNC4 to be used in a symbol and FNC1 is used as part of the start code in the symbol. The check digit in EAN/UCC128 symbols is also calculated differently than in Code 128.

Top of Page


POSTNET

POSTNET (POSTal Numeric Encoding Technique) is a 5, 9 or 11 digit numeric only bar code symbology used by the U.S. Postal Service to encode ZIP Code information for automatic mail sorting by zip code. The bar code may represent a five digit ZIP Code (32 bars), a nine digit ZIP + 4 code (52 bars) or an eleven digit Delivery Point code (62 bars).

POSTNET is unlike other bar codes because data is encoded in the height of the bars instead of in the widths of the bars and spaces. Most standard bar code readers cannot decode POSTNET. This symbology was chosen by the Postal Service mainly because it is extremely easy to print on almost any type of printer. POSTNET is a fixed dimension symbology meaning that the height, width and spacing of all bars must fit within exact tolerances.

B-Coder will only create POSTNET bar codes that follow the guidelines published by the Postal Service. B-Coder does not allow direct control over the size of POSTNET bar codes.

NOTE: Most other Windows programs allow you to modify the size of metafile graphic images pasted from the clipboard. If you change the size of a POSTNET bar code even by a small amount, it will be completely unreadable by the Postal Service bar code readers.

B-Coder will ignore non-numeric data in any bar code message that you enter for POSTNET. For example, if you enter "Chicago, IL 60601-3222" for a POSTNET bar code message,

B-Coder will still create a correct bar code. This feature allows you to cut an address line from another Windows program and paste it into B-Coder without having to edit the bar code text.

Top of Page


Postal FIM Patterns

FIM or Facing Identification Mark patterns are another type of postal bar code used in automated mail processing by the U.S. Postal Service. FIM patterns are used for automatic facing and canceling of mail that does not contain a stamp or meter imprint (business reply mail, penalty mail, etc.). They also provide a means of separating business and courtesy reply mail from other letters. Three FIM patterns are currently in use. FIM-A is used on courtesy reply mail that has been preprinted with Postnet bar codes. FIM-B is used on business reply, penalty and franked (government) mail that is not preprinted with Postnet bar codes. FIM-C is used on business reply, penalty and franked mail that has been preprinted with Postnet bar codes. FIM patterns are placed in the upper right corner along the top edge and two inches in from the right edge of letters and cards. For more information about all postal bar codes contact your local post office.

When you select a FIM pattern from the symbology menu, B-Coder will immediately generate the requested pattern without switching from the currently selected symbology and without having to select Build/Copy from B-Coder's Edit menu.

Top of Page


PDF417

PDF417 is a high density 2 dimensional bar code symbology that essentially consists of a stacked set of smaller bar codes. The symbology is capable of encoding the entire (255 character) ASCII set. PDF stands for "Portable Data File" because it can encode as many as 2725 data characters in a single bar code. The complete specification for PDF417 provides many encoding options including data compaction options, error detection and correction options, and variable size and aspect ratio symbols. The symbology was published by Symbol Technologies, Inc. to fulfill the need for higher density bar codes. The low level structure of a PDF417 symbol consists of an array of code words (small bar and space patterns) that are grouped together and stacked on top of each other to produce the complete printed symbol. An individual code word consists of a bar and space pattern 17 modules wide. The user may specify the module width, the module height, and the overall aspect ratio (overall height to width ratio) for the complete symbol. A complete PDF417 symbol consists of at least 3 rows of up to 30 code words and may contain up to 90 code word rows per symbol with a maximum of 928 code words per symbol.

The code words in a PDF417 symbol are generated using one of three data compaction modes currently defined in the symbology specifications. This allows more than one character to be encoded into a single data code word. Because different data compaction algorithms may be used, it is possible for different printed symbols to be created from the same input data. The symbology also allows for varying degrees of data security or error correction and detection. Nine different error correction levels are available with each higher level adding additional overhead to the printed symbol.

B-Coder allows complete control over all optional features of PDF417.

Top of Page


BPO 4 State Code (British Post Office, Royal Mail Code)

BPO (British Post Office) 4 State Code is a new postal bar code symbology that has been developed by the British Post office for encoding European postcode data similar to the way the U.S. PostNET symbology is used for encoding Zip Code data. At the time of this writing, the BPO 4 State Code has not been officially adopted as the standard for European postal applications however it is anticipated that it will be sanctioned sometime in 1995. The goal of BPO 4 State Code is to provide European countries with a simple and efficient postal bar coding scheme.

The U.S. PostNET symbology encodes numeric characters in a pattern of four bars per character with each bar being either tall or short (i.e. two possible "states" for each bar). The U.S. technique thus allows for up to 16 different possible bar patterns for each set of four bars and is adequate for encoding the ten digits zero through nine. Because European postcodes contain both alpha and numeric characters, (thus requiring a minimum of 36 different possible patterns for the characters A-Z and 0 to 9), each character in the BPO 4 State Code is encoded into four bars with each bar having four possible "states". The four states are: tall bars, short bars, medium height bars extended up from the middle of the symbol and medium height bars extended down from the middle of the symbol. In theory,the BPO 4 State Code is capable of encoding up to 128 different characters however only the characters A through Z and 0 to 9 have been assigned unique bar patterns.

BPO 4 State Code is a fixed dimension symbology meaning that the height, width and spacing of all bars must fit within exact tolerances. B-Coder will only create BPO 4 State Code bar codes that follow the guidelines published by the British Postal Service. B-Coder does not allow direct control over the size of BPO 4 State Code bar codes.

NOTE: Most other Windows programs allow you to modify the size of metafile graphic images pasted from the clipboard. If you change the size of a BPO 4 State Code bar code even by a small amount, it will be completely unreadable by European Postal Service bar code readers.

Top of Page