code-93

Details on the code-93 bar code type.

Code 93 can be used to encode ASCII text of variable length. Characters can be selected from this set of characters. You can use the code-93-extended type to encode the full 128 character ASCII character set using the 47 basic characters of code 93.

Table 1. code-93
Reference Number Character
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
10 A
11 B
12 C
13 D
14 E
15 F
16 G
17 H
18 I
19 J
20 K
21 L
22 M
23 N
24 O
25 P
26 Q
27 R
28 S
29 T
30 U
31 V
32 W
33 X
34 Y
35 Z
36 -
37 .
38  
39 $
40 /
41 +
42 %
43 !
44 ?
45 \
46 |

The textual representation of the last four characters "!?\|" can be configured by setting the controlCharacters attribute.

noCheckDigits specifies how many check characters are used. In the case of two check characters the rightmost character is the 'K' checksum character and the last but one character is the 'C' checksum character. if only one checksum character is specified then the rightmost character is a 'C' checksum character. The 'C' checksum is calculated as follows C=(Sum(i=1 to n of ((i-1 mod 20)+1)*Ref(n-i+1))) mod 47 and the 'K' checksum is calculated as followsK=(Sum(i=1 to n of ((i-1 mod 15)+1)*Ref(n-i+1))) mod 47 where n specifies the number of characters left of the particular check digit and Ref(i) specifies the reference value of the character at position i starting with the leftmost character having the index value 1. Reference numbers can be looked up in the first column. Example calculating the 'C' checksum: codeValue="DATALOGIC", noDigits="11", noCheckDigits="2", n=9C=(1*12+2*18+3*16+4*24+....7*29+8*10+9*13) mod 47=757 mod 47=5 The K checksum can then be calculated as: n=10, Ref(10)=C=5K=(1*5+2*12+3*18+4*16+....8*29+9*10+10*13) mod 47=915 mod 47=22 resulting in the code value codeValue="DATALOGIC5M".

If the value supplied in codeValue has the length noDigits- noCheckDigits then the system automatically calculates and supplies the check digits.