Barcode categories
Linear
Set bars and spaces, readable in horizontal direction - barcode are vertically "redundand". This barcode category is older, but still used at most.
Advantages :
- very easy print, can be printed on printers with small DPI
- if barcode is damaged, no problem read encoded value visually in human part of image
- for developers : easy programming, verys imple encoding algoritm, easy check digit calculation method
Disadvantages :
- very small capacity - in practice max. to 20-30 encoded characters
- not very high security - only one or two check digits, when barcode image contain some errors, can be unreadable
- must contain quietzone around the barcode image
- No error correction, only error detection
Examples :

Ean13 example

Code 128

2 of 5 Interleaved (ITF)

ISMN with 5 digits add-on

UPC version E1

OPC
Stacked
Set bars and spaces, readable in horizontal direction, but in difference to linear barcodes stacked barcodes is set of linear barcodes in vertical order. This barcode type is still vertical "redundant".
For example PDF417 is often referred to as a 2D symbology. However, it is not a true matrix code. It is a stacked linear code, consisting of multiple rows of short linear codewords. It allows bars and spaces to have up to 6 different widths and as such it can be adversely affected by binarization at lower samples per module.
For example PDF417 is often referred to as a 2D symbology. However, it is not a true matrix code. It is a stacked linear code, consisting of multiple rows of short linear codewords. It allows bars and spaces to have up to 6 different widths and as such it can be adversely affected by binarization at lower samples per module.
Examples :

PDF417 example
2D - Matrix symbologies
Matrix (2D) codes are created as matrix square, circle or hexagonal symbols.
They use a regular grid of possible cell positions, and the presence or absence of a cell in a grid location encodes the data.
Matrix barcodes have higher capacity as linear barcodes, have implemented powerfull error correction.
They use a regular grid of possible cell positions, and the presence or absence of a cell in a grid location encodes the data.
Matrix barcodes have higher capacity as linear barcodes, have implemented powerfull error correction.
Examples :

Semacode

QR Code

Aztec
3D code
3D barcode is any linear barcode that is embossed on a surface. The code is read by using differences in height. Of course, we can't print this on classic laser or InkJet printer.
Postal barcodes
Barcode symbologies used in post office. More country have own specifications.
- Some symbologies can be derived from Code39 or Code93 (Danish, French, Dutch postal symbologies)
- use own encoding system ( Telepen, CPC )
- Some use 4-state symbology ( BPO4State, Royal Mail, Singapoore postal, Australia post, Japan Post, Korean, Deutsche 4 state, IntelligentMail...), information isn't encoded into sequence lines and bars with different width, but encoded using lines in four different height ( if we separate bar in height to three same parts ):
Basic elements of Postal barcodes:

- T - Tracker
- D - Tracker, Descender
- A - Tracker, Ascender
- H - Tracker, Ascender, Descender
- ... or use 2-state encoding - lines are full in height or bottom half ( PostNet ) .

Postnet

RoyalMail

CPC

Deutsche 4State

Deutsche identcode

IntelligentMail
Composite barcodes
Composite barcodes - combined linear and stacked barcodes into one symbol
Color barcodes
Color barcodes
Special barcode
Special barcodes

