| The Royal Mail 4-state Customer Code (RM4SCC) is a height-modulated barcode symbology for use in automated mail sortation process.
There are 38 valid characters in the entire character set:
- numeric characters 0-9;
- alpha characters A-Z;
- open and close brackets ( and ) or [ and ] (only used as start/stop bars)
|Complete RMS4CC character set
Each RM4SCC character consists of four bars, of which two are ascenders and two descenders. The track element is present in all bars.
|Structure of a RM4SCC symbol|
|A complete RM4SCC is made up by a set of distinct bars and spaces for each character, followed by a checksum character and enclosed by a unique Start bar, Stop bar and a quiet zone. The start bar and stop bars are unique and different; thus enable the symbol to be read in any direction. The quiet zone must be at least 2mm in each direction.|
|Checksum Character Calculation|
| The checksum character is printed on the right hand of data characters to provide error protection.
To calculate the checksum character, perform the following steps:
1.Calculate the upper half and lower half values for each data character. A character is splitted horizontally into an upper half and a lower half. From the right to the left assign each bar a weight. The rightmost bar has a weight of 0, and the second rightmost 1, and third 2 and the leftmost 4.
2. Based on absence of an ascender and descender, assign a multiplier to each bar. For the upper half, if the ascender is present, the multiplier is 1 otherwise is 0.
3. Multiply the weight and multiplier for each half. Sum together to produce the combination value for each half. If the combination value equals six the value goes back to zero.
4. Sum all the values calculated in step 3 to produce upper half and lower half combination totals. Dive each half total by six to get the remainder.
5. Look up the table below, use the combination value of upper half as the row reference, the combination value of lower half as the column reference.
Note that the checksum algorithm is only performed on the main data characters contained the code. The Start and Stop bar do not participate the checksum calculation.
|The customer barcode must be a continuous string of characters and must not include white space characters. The code density is 20 to 24 bars per 25.4 cm. For detailed requirement on barcode placement and printing requirement, please refer to UK postal office.|
|CONVERTING A UPC-A CODE TO UPC-E|
If you have a 6-digt UPC-E code you may use the following logic to convert it back to UPC-A. The decision on which logic to use depends on the last digit of the UPC-E Code.
1. UPC-E code ends in 0, 1, or 2: The UPC-A code is determined by taking the first two digits of the UPC-E code, taking the last digit of the UPC-E code, adding four 0 digits, and then adding characters 3 through 5 from the UPC-E code.
2. UPC-E code ends in 3: The UPC-A code is determined by taking the first three digits of the UPC-E code, adding five 0 digits, then adding characters 4 and 5 from the UPC-E code.
3. UPC-E code ends in 4: The UPC-A code is determined by taking the first four digits of the UPC-E code, adding five 0 digits, then adding the fifth character from the UPC-E code.
4. UPC-E code ends in 5, 6, 7, 8, or 9: The UPC-A code is determined by taking the first give digits of the UPC-E code, adding four 0 digits, then adding the last character from the UPC-E code.