Code 25 barcode specification
Example:

Code 2 of 5 is a popular barcode for encoding numeric data.
Key features:
- 2 different width of bar/space.
- Symbol set consists of digits 0-9
- Each character is made up of 2 wide and 3 narrow elements.
- Start sequence is narrow bar, narrow space, narrow bar, narrow space.
- End sequence is wide bar, narrow space, narrow bar.
- Characters are encoded in pairs consisting of 5 bars and 5 spaces. The bars encode the first character of a pair and the spaces encode the other.
- No spaces between the pairs of characters ensure a higher density than non-interleaved variants.
- The number of bars plus 1 must be divisible by 5.
- Optional checksum character.
- An odd number of characters should be padded with a leading zero before encoding.
Specification:
Due to the nature of the interleaved format the Visual Pattern shows the character as it would appear in the bars of a character pair. The spaces are not set for any particular character.
| Symbol | Narrow/Wide Pattern | Visual Pattern |
| 0 | NNWWN | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 1 | WNNNW | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 2 | NWNNW | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 3 | WWNNN | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 4 | NNWNW | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 5 | WNWNN | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 6 | NWWNN | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 7 | NNNWW | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 8 | WNNWN | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
| 9 | NWNWN | ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Note that the petterns for the above characters exactly match the black bars for the same characters in Code 39.
Example: The character pair 58 would be encoded by the pattern enclosed in the following box:
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() |
Checksum Calculation:
- Identify odd/even character positions. The right hand most character is always even.
- Sum all the characters in odd positions.
- Sum all the characters in even positions and multiply by 3.
- Add the values from steps 2 and 3
- Determine the smallest value, which when added to result of step 4, gives a multiple of 10. This is the cheksum character.
Example:
To calculate the checksum for the number 33589
Sum of odd characters = 3 + 8 = 11
Sum of even characters = 3 + 5 + 9 = 17 X 3 = 51
11 + 51 = 62
62 + 8 = 70 (which is divisible by 10), so the checksum character is 8.
Note that if the original number of digits is even then a leading zero should be added either before or after the checksum calculation.



