Index.

Basic terms Symbology Continous,Discrete Module
Quiet zone Check char Add-on 2 or 5 digits Element
Error correction Start/Stop symbol Reed Solomon error correction Omni-directional,Bi-directional
Human readable text Multirow symbology Advantages Problems
EAN countries table   Sample barcode-structure image  

Basic terms about barcodes.

Bar codes are like a printed version of 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 industry. For example UPC symbology was designed for identifying retail and grocery items and PostNET was designed to encode ZIP Codes for US Postal Service.

Barcode symbologies was created for easy using with computers as input device. Reduce human errors by input goods number to computer or money-chest. This linear barcode symbologies have one trouble : small capacity, because more chars is bigger width of barcode and scanner have some trouble. Capacity of linear barcodes is about 10-20 chars, than is better 2D or stacked barcode.
In last years was created barcode symbologies with more information, 2D barcodes with capacity about 2,000 - 7,000 chars.
First impulse was created with Automotive Industry Action Group (AIAG)in 1984 year, defined standard Code39 with Piece number,Quantity,Developer and Serial number.
First 2D barcode was created in year 1988 by Intermec Corporation, assigned as Code49.

What is Bar Code?

Bar code is a pattern of bars and spaces which represent numbers, letters or characters. Code 39, for instance, has a unique pattern. Code 3 of 9, as it is sometimes called, derives its name from the way in which the pattern is created. Each character has nine elements (five bars and four spaces) and three of them are fat.

Why Use Bar Code?

  • Bar codes are accurate. They eliminate manual data entry errors. Research has shown that the error rate due to bar code misreads is less than one thousandth of one percent. Tests have shown that bar coded information had a throughput accuracy rate of 1 error in 10,000,000 characters. Compare that to keyboard entry error rates of 1 error in 100 characters.
  • Bar codes speed data entry. Even with a simple wand, a bar code can be scanned in a fraction of the time it takes to enter the information manually. CCD and laser scanners are also available for even faster data entry.
  • Bar codes can be produced easily and cheaply. Bar codes can be printed on most computer printers, for the cost of ink and paper. Even a low cost dot matrix printer can produce bar codes of adequate quality.

  • Symbology standard must contain:

    Continous barcode, Discrete barcode.

    Discrete symbologies consist of unique bar and space patterns for each character. Continuous codes cannot be separated into individual characters.

    Module.

    Module is minimal size of barcode piece. For linear barcodes this is line or space with one pixel size (can be zoomed 2,3,4,5 x), for 2D barcodes is this rectangle with integer width and height. Normally is height of rectangle equal width, because rectangle :-) But some exeption are possible...

    Quiet zone.

    Quiet zone is free zone around barcode. Some barcodes needs this zone on left and right side, no in top and bottom (linear barcodes). This zone is needed for good reading by scanners, because all images, text, lines nearest barcode can make mistake. This zone is for each barcode symbology different, currently about 0.5-1 cm.
    Some barcode types not need quiet zone (2D barcodes), this barcode symbologies have installed error correction algorithms, some bad part of barcode image, bad line across barcode, destroyed part of barcode is no problem :-)
    2D barcodes can repair 5%-95% of destroyed part, if you have only one half barcode image, no problem, readable ...

    Check char (checksum).

    Check char is one or more chars (some symbologies use one, some two check char digits) added to end of coded string, before stop char. Barcode scanner after reading barcode use some algorithm, calculate data from string and compare with last char. Is equal, reading is good, if no, not read this barcode, because is destroyed.
    Calculation algorithms is more: In all our software products if is needed check digit and user cannot include this in barcode (some example EAN-8 only 7 digits, or 8th digit is bad) is check digit calculated automatically.

    Add-on 2 or 5 digits

    Barcode symbologies based on EAN code (EAN 8-, EAN-13, UPC-A, UPC-E, JAN, ISSN, ISMN, ISSN) can contain 2 of 5 additional digits after main barcode. In your software you must select this digits from main symbol using one space.
    For example : EAN-8 symbol "1234567 12345" is Ean-8, 8th digit is chcecksum, calculated automatically, "12345" is add-on symbol. Printed barcode contain 13 digits, 8th is checksum.

    Element.


    Error correction.

    SymbologyWorst CaseBest case
    Datamatrix10.5M612.9M
    PDF41710.5M612.4M
    Code1282.8M37M
    Code 391.7M4.5M
    UPC394K800K

    Start/Stop symbol.

    Reed Solomon alghorithm.

    Omni-directional, Bi-directional reading

    Human readable text.

    Human readable text is text under barcode. This is good, if barcode is damaged and user must write to computer barcode manually. Another meaning not have. Barcode reader read good without this impossible things, for reader is this not usable. But human read better digits than lines and spaces... Some barcode symbologies not have human readable text. 2D barcode is very good example : can you write to computer 7 kilobytes of text ? If human readable text is not printed, no problem with reading, but only cashier can have some troubles, if barcode is not readable, you can't read code value.

    Multirow symbology.

    Multirow symbology is space before 1D (linear) and 2D symbology. We need more chars coded, but space is small... No problem. We divide one long barcode to more small and place one under other. This barcode isn't 1D, because each line is different, but not 2D, because some lines are here ...

    Advantages

    Problems

    EAN COUNTRIES


    First two or thee digits in the EAN8 or EAN13 assign country:

    00..130U.S.A. & Canada640..649Finland
    200..290In-store numbers 690..692China
    300..370France 700..709Norge
    380Bulgaria 729Israel
    383Slovenia 730..739Sweden
    385Croatia 740..745Guatemala, El Salvador, Honduras, Nicaragua, Costa Rica, Panama
    387Bosnia-Herzegovina 746Republica Dominica
    400..440Germany 750Mexico
    450..459Japan 759Venezuela
    460..469Russian Federation 760..769Suisse
    471Taiwan 770Colombia
    474Estonia 773Uruguay
    475Latvia 775Peru
    477Lithuania 777Bolivia
    479Sri Lanka 779Argentina
    480Philippines 780Chile
    482Ukraine 784Paraguay
    484Moldova 786Ecuador
    485Armenia 789Brazil
    486Georgia 800..830Italy
    487Kazakhstan 840..849Spain
    489Hong Kong 850Cuba
    490..491Japan 858Slovakia
    500..509U.K. 859Chech
    520Greece 860Yugoslavia
    528Lebanon 869Turkey
    529Cyprus 870..879Nederland
    531Macedonia 880South Corea
    535Malta 885Thailand
    539Ireland 888Singapore
    540..549Belgium & Luxembourg 890India
    560Portugal 893Vietnam
    569Iceland 899Indonesia
    570..579Denmark 900..919Austria
    590Poland 930..939Australia
    594Rumania 940..949New Zealand
    599Hungary 955Malaysia
    600..601South Africa 977Periodicals
    609Mauritius 978,979Books
    611Marocco 980Refund receipts
    613Algeria 990..999Coupons
    619Tunisia  
    622Egypt  
    626Iran  

    CRC- Cyclic redundance code.

    For minimizing the numer of incorrect entries is needed detect any error in input.

    2 DIMENSIONAL BARCODE

    Not "line barcode", two dimensional barcode, printed as matrix of some square elements. This code can contain more data (for PDF417,QR Code, Matrix, Aztec code) is no problem 4.000-7.000 bytes with error correction. Here you can code digits,alpha chacctaers, bytes, music, photo ....
    Error correction can be set from 5% to 95% of coded chars. Of course, if you set error correction to 95%, barcode can be destroyed, three from four corners bad, ... and barcode is readable. But problem is in one : 95% of data area is redundancy code :-( , you don't need, when barcode is OK, only if very destroyed.
    5% error level is good, if ypur barcode is safe, no troubles with reading. You have more and more capacity for data and only small redundance code for solve troubles. But if troubles come, you need this data. If big troubles, you need more this data and can be big troubles. But 2D barcodes uses error correction systems, no problem with reading. Bad reading is 1:100.000.000, this is good.

    Printing techniques

    Sample barcode - explain structure of barcode


    Sample of UPC code