Code 39 Specification
|
WinPcap › Z1670 › aquamp playlist002 › assembly › barcode › barcode/code39 Code 39 Specification
Code 39 (sometimes called Code 3 from 9) is a discrete barcode. This means that a fixed pattern of bars represents a single character.
Each character is made up of 9 bars - 3 of which are wider than the others. (In this context a bar can be the printed black bar or the white space between the bars.) A single character therefore consists of 5 black bars and 4 white bars.
The ratio of the bar widths can range from 2.2:1 to 3:1. To read a barcode reliably the decoder must be able to differentiate between the wide and narrow bars. In practice it is better to use barcodes close to the 3:1 ratio which allows nearly a 50% barwidth error to occur before ambiguity occurs.
The space between each barcode character is called 'The intercharacter gap'. Its width is undefined but is usually equivalent to a narrow white bar.
The widths of the wide and narrow sets of elements should all be the same but in practice most printing processes incur 'ink spread'. This widens the bars at the expense of the spaces. This effect is most noticable on narrow elements sometimes making the barcodes very difficult to scan with some decoders.
At Altek we believe that well designed fonts and print programs should take this into account (most we see don't!). All decoders using Altek decoding algorithms measure the barwidths separate from the spacewidths. This is one reason why the Altek decoders can often make good scans where others fail.
The Code 39 barcode symbology supports 43 characters plus an additional character used as a delimiter or start/stop character. The start/stop character always occurs as the first and last character in a complete barcode and is represented in the human readable text by the * character.
The 43 character set includes the following:
1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ - . $ / + % SPACE
Note that the alphabetic characters are all upper case. If you wish to use lower case letters or other ASCII characters then Extended Code 39 must be used.
Bar Width Configuration Table
This table shows the bar configuration for each character in the Code 39 set. Note that the * character is used only for the start/stop character. It must be the first and last character appearing in the complete barcode. (Decoders do not usually transmit this character as part of the data string.)
![]() Check Digit
A check digit is not often used with Code 39 but a few critical applications may require one. The check digit is the modulus 43 sum of all the character values in the message. It is printed as the last data character. The following table shows the character and value used for the calculation...
Example calculation
Data: 12345ABCDE/ Sum of values: 1 + 2 + 3 + 4 + 5 + 10 + 11 + 12 + 13 + 14 + 40 = 115 115 divided by 43 = 2 remainder 29. Therefore T is the check digit. Data with check digit: 12345ABCDE/T |
- 전 이런 놈입니다.
격언> 밝은 성격은 어떤 재산보다도 귀하다. (카네기)
Recent Changes Echoes Of War(The... @ 2012-05-18 [03:44 pm] by windlesszone Diablo3 @ 2012-05-15 [04:49 pm] by windlesszone Diablo3/story/wizard @ 2012-05-15 [04:48 pm] by windlesszone 4 changes Diablo3/story/wit... @ 2012-05-15 [04:16 pm] by windlesszone Diablo3/story/monk @ 2012-05-15 [04:14 pm] by windlesszone
|

