PDF417
From Wikipedia, the free encyclopedia
PDF417 is a stacked linear bar code symbol used in a variety of applications, primarily transport, identification cards, and inventory management. PDF stands for Portable Data File. The PDF417 symbology was invented by Dr. Ynjiun P. Wang at Symbol Technologies in 1991, and has spawned an Open Source decoder project[1] together with an Open Source encoder[2]. Another full-featured encoder is barcode4j[3].
Contents |
[edit] Features
In addition to features typical of two dimensional bar codes, PDF417's capabilities include:
- Linking. PDF417 symbols can link to other symbols which are scanned in sequence allowing even more data to be stored.
- User-specified dimensions. The user can decide how wide the narrowest vertical bar (X dimension) is, and how tall the rows are (Y dimension).
- Public domain format. Anyone can implement systems using this format without any license.
[edit] Format
The PDF417 bar code (also called a symbol) consists of 3 to 90 rows, each of which is like a small linear bar code. Each row has:
- a quiet zone. This is a mandated minimum amount of white space before the bar code begins.
- a start pattern which identifies the type of symbol as PDF417. Every type of bar code symbology has a unique start and stop pattern.
- a "row left" codeword containing information about the row (such as row number and what error correction rate the row is using)
- 1 - 30 data codewords : Codewords are a group of bars and spaces representing one or more numbers, letters, or other symbols.
- All rows have the same number of codewords.
- Every codeword contains four bars and four spaces (where the 4 in the name comes from).
- The total width of a codeword is 17 times the width of the narrowest allowed vertical bar (the X dimension). This is where the 17 in the name comes from.
- Each codeword starts with a bar and ends with a space.
- There are 929 codewords to choose from, 900 for data, and 29 for special functions.
- Each codeword is printed using one of three distinct clusters:
- A cluster is a bar-space pattern for each of the 929 codewords
- no bar-space pattern is repeated between clusters
- The row number determines which cluster to use
- the cluster is the same for all codewords in a row.
- The purpose of clusters is to determine which row (mod 3) the codeword is in, allowing the scan to be skewed from the horizontal. For instance, the scan might start on row 6 at the start of the row, and be on row 10 at the end.
- a "row right" codeword with more information about the row.
- a stop pattern.
- a quiet zone.
Along with Data Matrix, this symbology can be used to generate postage accepted by the United States Postal Service. PDF417 is also selected by the airline industry's Bar Coded Boarding Pass standard (BCBP) as the 2D bar code symbology for paper boarding passes. PDF417 is the standard selected by the Department of Homeland Security as the machine readable zone technology for RealID compliant driver licenses and state issued identification cards.
[edit] Documentation
Note that although it is in the public domain, a fee is charged to purchase the standard.
[edit] External links
- Bar Code Symbology
- Free font, Windows encoder and detailed explanation
- SourceForge Open Source PDF417 decoder project
- SourceForge Open Source PDF417 encoder project
- PDF417 Decoder (online or Java)
- ISO/IEC 15438:2001 Information technology -- Automatic identification and data capture techniques -- Bar code symbology specifications -- PDF417
- Symbol Technologies Clarifies PDF417 Intellectual Property Policy
- U.S. Patent 5,243,655 describes the PDF417 format
- http://barcode4j.sourceforge.net/ Open Source linear and stacked barcode encoder which supports pdf417
- Online PDF417/MicroPDF Generator
|