There are two types of computer graphics – raster and vector. The raster graphic is composed of pixels, and vector graphic is composed of drawing paths. It is important to understand the difference between these two types when creating barcode graphic images.
A bitmap is basically an array of pixels with values indicating the color. The bitmap sizes are defined in pixels. BMP, TIF, GIF, JPG, PNG and most other graphics formats are raster graphics. Since the sizes are measured in pixels, the print dimension depends on the resolution of the printer. BMP records every pixels in the image, so the size is very big even for small images. Other formats use compression algorithm to reduce the file size without causing great visual degrading, but remember the barcode is read by machines other than human. Overall, you need to keep the physical size unchanged, otherwise you will run into problems. To create a barcode for pre-press production, resolutions above 2400 are recommended. Consequently, a bitmapped file at this precision would be enormous in size.
Raster image is not scalable. The image degrades as size increases.
A vector graphic contains the drawing instructions other than the color value in pixels. For both Mac and Windows platforms, EPS is the most widely used vector graphic format. A critical feature about our EPS files is that the dimension measures are completely based on the output resolution of a printer. To use EPS, you need to have a printer with postscript enabled. SVG is designed to use with World Wide Web, but they are not widely accepted. WMF is only supported in Windows platforms.
Vector graphics typically allow rotation, movement, and magnification without losing image quality.
As per the Uniform Code Council's (Now GS1 US) Guidelines for Providers of EAN/UPC Symbol Design Software, 1997:
The most important problem with fonts when they are used to create barcodes is that they are not "intelligent." Almost every barcode symbology has features like start and stop patterns, check digits, guard patterns, quiet zones and bearer bars. When you use a font to create a barcode you cannot simply select the text for the message that you want encoded and select a barcode font. You first have to insert special characters for the start and stop patterns, as well as manually calculate and insert a special character for the check digit. In almost all cases, you have to use a special program provided with the font to calculate and add check digits and insert start and stop patterns.
Another problem with fonts is that they cannot be scaled in a single direction in most application programs. Some specialized desktop publishing programs allow stretching of fonts in a single direction, however most database or word processing programs do not. This means that if you increase the size of a font, both the height and the width change. When creating barcodes, it is extremely important that the width of the bars and spaces remain constant. Typically the height of a barcode font is not adequate and it must be scaled up. When you do this by increasing the font size, the width of the bars and spaces as well as the overall width of the barcode increases proportionally which causes the barcode to be rendered out-of-spec. In general, fonts are the poorest choice for creating barcodes. They offer the least control of all possible methods for creating barcodes.