ImageGear .NET v25.1 - Updated
UPC-E
User Guide > How to Work with... > Barcodes > Supported Barcode Types > UPC-E

UPC-E is a variation of the UPC-A symbol that is used for number system 0. The UPC-E code is a numeric-only code which is able to display digits from 0 to 9. UPC-E has 8 digits, where the last digit is a checksum digit automatically added by the barcode engine. The first digit is always "0" and it is also automatically added by ImageGear.

The UPC-E code is a compressed barcode which is intended for use on small items. Compression works by squeezing extra zeros out of the barcode and then automatically re-inserting them at the scanner. Only barcodes containing zeros are candidates for the UPC-E symbol.

When reading UPC-E, results are returned as uncompressed UPC values.

The barcode engine generates an error if you have characters in your barcode value that are not allowed. You can have 6, 10, 11 or 12 digits in the UPC-E value. If the barcode value has more than 6 digits, the barcode engine automatically compresses the value. There are four rules that determine what UPC codes can be created using the compressed UPC-E format:

UPC-E 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.

The UPC-E barcode is also commonly written with 2 different bar heights. Typically, the height of the left and right guard bars are greater than the height of the bars encoding the actual barcode value, essentially creating a notch in the barcode where the text value can be written.

The barcode engine provides the user with control over the size of this notch with the TextNotchPercent property. The TextNotchPercent property can be set to a value of 0 to 50. This number represents the percentage of the tall bar height the short bars will be shortened by.

For example, if TextNotchPercent is 10, and the bar height is set to 100 pixels, the tall bars (left and right guard bars) will be 100 pixels tall, and the short bars (bars encoding the value) will be 90 pixels tall.

An example: