A 1D or single dimension barcode is comprised of a set of parallel lines on a contrasting background. For best performance this should be black lines on a white background, with a clear white space (the quiet zone) at each end of the vertical lines. The black lines, and the white spaces between them vary in thickness, and data is encoded in the image according the sequence of thin and thick lines and spaces. Common symbologies for 1D barcodes include Code 128, Code 39, EAN, UPC, Interleaved 2 of 5.
A 2D barcode is usually in the form of a square, made up of a mix of smaller black and white squares, somewhat like a chess board with an irregular pattern. The data is stored in the arrangement of the black and white squares. Common symbologies include PDF417 and Datamatrix (QR Code).
Human beings are pretty good at recognising shapes. Your great great grandfather needed to be good at recognising a wolf or a sabre tooth tiger, so that he had plenty of time to climb a tree. But he was not very good with time, which is why he was always late for supper. But computers have the opposite skill set. They are awful at recognising shapes, but great with time. So when the first engineers tried to train a computer to read numbers, they were not too successful. Until someone thought of having the computer track time. By shining a light across a series of bars, and watching the reflection, the computer could see a pattern of black and white, like the dots and dashes of Morse code. So by measuring the duration of each reflection, the computer was able to "read" the pattern, and decode the timing to retrieve the numbers stored when the pattern was written. So were the early barcodes brought into being. And this is basically the same one dimensional barcode that is most commonly in use today.
The one dimensional barcode was adequate for most applications, but for some specific situations there was a need for a barcode with the ability to store more information. The 2D barcode was born. Similar in function to the older one dimensional form but capable of storing more information. The ability to store the Gettysburg address is cited as one example.
The information that can be stored in a 1D barcode depends on the symbology used. For most industrial applications the preferred symbology is code 128. With this symbology it is possible to encode the full ASCII character set, which enables numbers as well as alpha characters in upper and lower case. In most industrial applications, the content of the barcode is only used as a key to a database entry. In this case, for most applications, the string of six characters provides adequate resolution.
The most significant advantage of the 2D format is the ability to store larger volumes of
data. Because of the compact
format it is also possible to provide a greater level of error correction which means that 2D
can withstand a greater degree of
damage (for example: dirt, dust, paint) before they become unreadable.
On the other hand, 2D barcodes can be printed be very small (4mm x 4mm), which is quite accommodationg for the items with little available surface space.