This font is provided as shareware. There is no explicit charge for using this font if you are an individual or an educational institution, but a registration fee of $10.00US is encouraged to support ongoing development of new fonts. The $10.00US registration fee is mandatory for commercial use and distribution. Furthermore, distribution is permitted only if the font is not altered in any way and is accompanied by this readme file.

WARNING:

This font contains only the glyphs to BUILD UPC-A barcodes, which must be assembled manually or through software to obtain the final mechanicaly readable product. In order for a barcode reader to properly recognize the barcode, the following instructions must be followed exactly.


The Universal Product Code (UPC) specifications include three versions: A, D, and E. Version A, the regular version, is used to encode a twelve digit number. Version E, the zero suppressed version, is a six digit code used for marking small packages. Version D, the variable length version, is not commonly used for package marking. It is used in limited special applications. 

Both Version A and E may include either a 2 digit or a 5 digit supplemental encodation. These extra digits are primarily used on periodicals and books. Supplemental encodations are supported.

Version A encodes a twelve digit number. The first number encoded is the
number system character, the next ten digits are the data characters, and
the last digit is the check character.

The number system character is printed in human readable form to the left
of the UPC symbol. Seven of the ten possible numbers have been assigned.

UPC Number System Characters:

Character  Usage
   0       Regular UPC Codes
   1       Reserved
   2       Random weight items which are symbol
           marked at the store level
   3       National Drug Code and National Health 
           related Items Code
   4       For use without code format restrictions 
           and with check digit protection for in 
           store marking of non food items.
   5       For use on coupons
   6       Regular UPC Codes
   7       Regular UPC Codes
   8       Reserved
   9       Reserved


UPC-A Construction

The UPC-A symbol is physically constructed as follows:

    Left hand guard bars, encoded 101
    Number system character, encoded as a left hand character
    First five data characters, encoded as left hand characters
    Center guard pattern, encoded 01010
    Last five data characters, encoded as right hand characters
    Check character, encoded as a right hand character
    Right hand guard bars, encoded 101

    Nominal module bar/space width = 0.013 in (0.33 mm)
    Worst case module width = 0.009 in. (0.23 mm)


The bars represent binary ones (1), while the spaces represent binary zeroes (0). The characters on the left hand side of the symbol always have odd parity, so the number of modules that are bars are always odd, while the parity of the right hand side of the tag always have even parity, and the number of modules that are bars on the right hand side of the tag is always even.

The following is the table for the character patterns, for both the left
hand and right hand characters.

UPC A Character Set

Left Hand   Decimal	Right Hand
Character   Number	Character\fN

0001101       0         1110010
0011001       1         1100110
0010011       2         1101100
0111101       3         1000010
0100011       4         1011100
0110001       5         1001110
0101111       6         1010000
0111011       7         1000100
0110111       8         1001000
0001011       9         1110100

Check Characters:

The check character for the UPC/EAN codes is generated by the following method:

1 - Designate the rightmost character odd.
2 - Sum all of the characters in the odd positions and multiply the result     by three. (Remember to include the Number System Character)
3 - Sum all of the characters in the even positions
4 - Add the odd and even totals from steps two and three.
5 - Determine the smallest number that when added to the result from step     four, will result in a multiple of 10. This is the check character.

UPC A Example:

Number system character =  0
Message characters =        0123456789
Position =                 OEOEOEOEOEO
Sum of odd positions =     0 + 1 + 3 + 5 + 7 + 9 = 25
Odd positions X 3 =        25 x 3 = 75
Sum of even positions =    0 + 2 + 4 + 6 + 8 = 20
Sum of even and odd =      75 + 20 = 95
Check character =          5
Tag to be encoded =        001234567895

Left hand barcode glyphs 0 to 9 are located at characters 48 (0x30) to 59 (0x39). Right hand parity barcode glyphs 0 to 9 are located at characters 64 (0x40) to 73 (0x49). The 'Start' characters indicating the number system used are at 80 (0x50) to 89 (0x59). The 'Stop' characters indicating the check character are located at 96 (0x60) to 105 (0x69). The "Center Guard" glyph is at character 112 (0x70). The 'Start' and 'Stop' characters also include the Left and Right Hand Guard Bars.


Please submit the registration fee to the address below in your local currency, US or Canadian dollars. Include your company information and a return E-MAIL address where the registration information will be sent.


Chaos Microsystems Inc.
22-5330 Canotek Road
Gloucester, ON, Canada
K1J 9C3