Barcode FAQ v2.0
Posted in 1996
Barcode FAQ ver 2.0 12.12.96 copyright 1995, 1996 Azalea Software, Inc. info@azalea.com www.azalea.com >>> Introduction >>> Printing Bar Codes >>> UPC, EAN, JAN, Bookland, ISSN >>> Code 39 >>> POSTNET >>> Interleaved 2 of 5 >>> Code 128 >>> Codabar & MSI-Plessey >>> The New 2D Symbologies >>> OCR Fonts >>> Specifications >>> Credits >>> Introduction [A version of this FAQ with graphics is available at: http://www.azalea.com] I've read many a note on the Net asking about bar codes. I love to hack bar codes. In fact, I've been writing bar code software for over six years with no end in sight. This modest FAQ is a chance to share a bit of my experience while answering some of the re-occurring questions I see posted. While it will undoubtedly make its way to other places, I will post this FAQ periodically to various places online including USENET conferences, CompuServe, and AOL. You can also retrieve it from our Web site: www.azalea.com Bar codes are alternating patterns of light and dark that encode specific chunks of information. When scanned, bar code symbols can be converted back into the original string of text. Most bar codes consist of patterns of rectangles but some of the newer symbologies use other shapes. Bar codes are part of the automatic ID industry and are sometimes referred to as "keyless data entry" because they can be used to encode and decode information automatically. Bar codes can be scanned with little or no error under less than ideal conditions. In some situations they can even be scanned automatically without human intervention. Beats typing. This FAQ will focus on creating and printing bar codes rather than the physics of scanners. The scanners which read bar codes emit a red laser of a specific frequency that works by distinguishing the edges within a symbol allowing them to be scanned omnidirectionally. "I'm sensing my own light reflected back at me. Now there's none. Ah, there's some more. No reflection., etc." There are two types of scanners: portable readers and those that hook up directly to your computer. If you have to go to the bar code, you need a portable reader; if the bar code can come to you, consider a scanner that attaches to your PC. Portable readers hold data in a buffer that can be downloaded into your computer via a cable. Walk around the warehouse scanning items as you do inventory. Go back to your desk and download the collected data into your database. The non-portable readers plug into your keyboard port and the keyboard plugs into them. With the reader between your keyboard and the computer, the computer assumes you're typing really fast, without any errors. The firmware in most scanners can decode more than one type of bar code. Each symbology (type of bar code) has a unique start bar and stop bar at the beginning and end of the symbol, or some other unique pattern that allows the scanner to autodiscriminate between symbologies without human intervention on the fly. Some scanners can scan a pre-printed bar code that will then turn on or off additional capabilities. In general, each symbology tends to be used by a different industry or within a different vertical market. In many ways, your decision as to which symbology to use is dictated by what is being bar coded and where it will be used. Or if you need to encode alphabetic data, some symbologies like UPC or Codabar are out because they only encode numeric data. Your suppliers or customers may have established conventions or standards that determine the nature and structure of the symbols you can use. Bar codes may be part of a larger labeling format that dictates what you have to adhere to. These are issues that need to be determined _before_ you commit to a plan. Most bar code symbologies employ one or more check digits within them to ensure accuracy and data integrity when scanned. Others like Interleaved 2 of 5 employ other internal methods to guard against misreads. Human- readable characters printed along with the bar code may be required or optional. >>> Printing Bar Codes Bar codes can be printed one of two ways: either from within a dedicated bar code labeling programming (often using a thermal transfer printer), or from within your favorite application using bar code fonts or graphic elements. The former is where the auto ID industry is coming from historically. The latter is more flexible and can be integrated into your existing work process. >>> UPC, EAN, JAN, Bookland, ISSN UPC, EAN, JAN, Bookland, and ISSN bar codes are all related. (Purists will insist that all are a subset of EAN.) These are the symbols used on items destined to be scanned at the checkout line in retail settings. All are fixed length symbols that consist of numbers only. The UPC symbols used in the U.S. are a subset of EAN. JAN are equivalent to EAN. Bookland is an EAN- 13 with a 978 country code and a 5-digit supplemental code. ISSN is an EAN- 13 with a 977 country code and a 2-digit supplemental code. UPC (Uniform Product Code) bar codes are the symbols that get scanned at the checkout line at the grocery store. Contrary to popular belief, they do not include the price of the item. There are four parts to a UPC symbol: - the number system, a single digit in the lower left corner - a 5-digit manufacturer number assigned by the Uniform Code Council in the left hand notch - a 5-digit product number assigned by the manufacturer that uniquely identifies each product in the right hand notch - a check digit found in the lower right corner. When a bar of soap gets scanned, the numbers in the UPC symbol are a pointer into the inventory database in the back room of the store. This is how the cash register display and the printed receipt know what item you bought and how much it costs. Price changes involve changing the central database. (Otherwise a price change would require a new bar code on each affected item.) UPC symbols are numeric-only, are of a fixed length, mandatory in the retail channel, and not used anywhere else (for the most part). There are two flavors of UPC symbols: UPC version A and UPC version E. The former is the full length symbol and the latter is a narrower, zero-suppressed version. Version E symbols are used where space is at a premium (such as on a small package label). An optional 2- or 5-digit supplemental code is sometimes used with UPC symbols. Supplemental codes appear to the right of the main symbol and have the human-readable digits above the bars. For instance, a 2-digit supplemental code is used for the issue date on a magazine cover. EAN (European Article Number) and JAN (Japanese Article Number) symbols are used on retail items in Europe, Japan, and other non-U.S. parts of the world. There are two flavors of EAN/JAN symbols: EAN-8/JAN-8 and EAN- 13/JAN-13. EAN symbols include a two-digit country code which reflects the origin of a product. Bookland bar codes are based on ISBN numbers and are used on book covers. They are sometimes referred to as ISBN bar codes, however this is an inaccurate description. Bookland symbols are EAN-13 bar codes, with a 978 country