ImageGear .NET - Updated
Code 39
User Guide > How to Work with... > Barcodes > Supported Barcode Types > Code 39

Code 39 is widely used in many industries across the world. It is the standard for many government barcode specifications, including the U.S. Department of Defense. Code 39 is also known as Code 3 of 9.

Code 39 was the first alphanumeric symbology. Its character set includes the digits 0-9, the letters A-Z (uppercase only), and the following symbols: space, minus "-", plus "+", period ".", dollar sign "$", slash "/", and percent "%". ImageGear generates an error if you have characters in your barcode value that are not allowed.

Each data character is made up of 5 bars and 4 spaces for a total of 9 elements. Each character includes 3 wide and 6 narrow elements. Thus, 3 out of the 9 elements are always wide, which is the reason why the code is sometimes called "3 of 9".

The ratio of wide to narrow bar width can be in the range of 1.8 to 3.4. The barcode engine Code 39 uses a 2:1 wide to narrow bar width ratio.

Code 39 requires a quiet zone, which should be at least the width of 10 narrow bars. This means that if you set the MinimumBarWidth property to 3 pixels (narrow bar size), you should set the HorizontalWhiteSpace property to 30 pixels. Since Code 39 is a self-checking barcode, it normally does not require a checksum. However, when necessary, an optional modulo 43 checksum may be used.

By default, ImageGear does not write optional checksums. If a checksum is desired for Code 39, set the EnableCheckSum property to 1(TRUE) and the barcode engine calculates and writes the checksum.

If you plan to detect Code 39 barcodes, you should set the BarcodeTypes property to this type so that the barcode engine specifically looks for Code 39. If you don’t tell the barcode engine to specifically look for Code 39 barcodes, it might confuse a Code 39 barcode with a Code 32 barcode.

An example: