| Home: Products: Code 128 Fonts: Code 128 Font FAQ: |
IDAutomation Code 128 Barcode Font
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Code 128 Font Overview |
Code 128 Barcode Fonts have the ability to encode numbers, symbols, uppercase and lowercase text as well as functions such as returns and tabs. All Code 128 barcode fonts require a start character, checksum character, and a stop character to create readable bar-codes. Due to the required calculation of a checksum, implementation of Code128 as a barcode font may be difficult without IDAutomation's Font Tools. If an easier-to-use barcode font is preferred and Code 128 is not required, consider IDAutomation's Code 39 barcode font, which does not require checksums to be calculated. IDAutomation also provides several barcode components that enable an easier implementation due to their ability to automatically calculate checksums and completely format the barcode.
|
Code 128 Barcode Font Character Set |
NOTE: IDAutomation provides several font tools and source code samples that are free to use with IDAutomation fonts, which will automatically format the start, stop and check characters. Therefore, references to the character set are generally not necessary.
Three different start characters are used in Code 128 bar codes to inform the barcode reader which character set is being used. The table below illustrates the three character sets in columns with the location of the characters. In the columns A, B and C, is the list of characters or functions that the barcode scanner will read for the associated symbol. The columns ASCII, Char and Unicode are unique to IDAutomation's Code 128 barcode fonts. These columns designate the location in either ASCII or Unicode where the barcode symbol for the character resides in the font. The Char column lists the character that resides at the ASCII location which can be used to print the corresponding symbol. The character set provides easy methods of encoding functions such as returns and tabs in the barcode.
| Code A | Code B | Code C | ASCII * | Unicode * | Char * | Value | Code A | Code B | Code C | ASCII * | Unicode * | Char * | Value |
| Space | Space | 00 | 0194 | 00C2 | Â | 00 | V | V | 54 | 0086 | 0056 | V | 54 |
| ! | ! | 01 | 0033 | 0021 | ! | 01 | W | W | 55 | 0087 | 0057 | W | 55 |
| " | " | 02 | 0034 | 0022 | " | 02 | X | X | 56 | 0088 | 0058 | X | 56 |
| # | # | 03 | 0035 | 0023 | # | 03 | Y | Y | 57 | 0089 | 0059 | Y | 57 |
| $ | $ | 04 | 0036 | 0024 | $ | 04 | Z | Z | 58 | 0090 | 005A | Z | 58 |
| % | % | 05 | 0037 | 0025 | % | 05 | [ | [ | 59 | 0091 | 005B | [ | 59 |
| & | & | 06 | 0038 | 0026 | & | 06 | \ | \ | 60 | 0092 | 005C | \ | 60 |
| ' | ' | 07 | 0039 | 0027 | ' | 07 | ] | ] | 61 | 0093 | 005D | ] | 61 |
| ( | ( | 08 | 0040 | 0028 | ( | 08 | ^ | ^ | 62 | 0094 | 005E | ^ | 62 |
| ) | ) | 09 | 0041 | 0029 | ) | 09 | _ | _ | 63 | 0095 | 005F | _ | 63 |
| * | * | 10 | 0042 | 002A | * | 10 | nul | ` | 64 | 0096 | 0060 | ` | 64 |
| + | + | 11 | 0043 | 002B | + | 11 | soh | a | 65 | 0097 | 0061 | a | 65 |
| , | , | 12 | 0044 | 002C | , | 12 | stx | b | 66 | 0098 | 0062 | b | 66 |
| - | - | 13 | 0045 | 002D | - | 13 | etx | c | 67 | 0099 | 0063 | c | 67 |
| . | . | 14 | 0046 | 002E | . | 14 | eot | d | 68 | 0100 | 0064 | d | 68 |
| / | / | 15 | 0047 | 002F | / | 15 | eno | e | 69 | 0101 | 0065 | e | 69 |
| 0 | 0 | 16 | 0048 | 0030 | 0 | 16 | ack | f | 70 | 0102 | 0066 | f | 70 |
| 1 | 1 | 17 | 0049 | 0031 | 1 | 17 | bel | g | 71 | 0103 | 0067 | g | 71 |
| 2 | 2 | 18 | 0050 | 0032 | 2 | 18 | bs | h | 72 | 0104 | 0068 | h | 72 |
| 3 | 3 | 19 | 0051 | 0033 | 3 | 19 | ht | i | 73 | 0105 | 0069 | i | 73 |
| 4 | 4 | 20 | 0052 | 0034 | 4 | 20 | lf | j | 74 | 0106 | 006A | j | 74 |
| 5 | 5 | 21 | 0053 | 0035 | 5 | 21 | vt | k | 75 | 0107 | 006B | k | 75 |
| 6 | 6 | 22 | 0054 | 0036 | 6 | 22 | ff | l | 76 | 0108 | 006C | l | 76 |
| 7 | 7 | 23 | 0055 | 0037 | 7 | 23 | cr | m | 77 | 0109 | 006D | m | 77 |
| 8 | 8 | 24 | 0056 | 0038 | 8 | 24 | s0 | n | 78 | 0110 | 006E | n | 78 |
| 9 | 9 | 25 | 0057 | 0039 | 9 | 25 | s1 | o | 79 | 0111 | 006F | o | 79 |
| : | : | 26 | 0058 | 003A | : | 26 | dle | p | 80 | 0112 | 0070 | p | 80 |
| ; | ; | 27 | 0059 | 003B | ; | 27 | dc1 | q | 81 | 0113 | 0071 | q | 81 |
| < | < | 28 | 0060 | 003C | < | 28 | dc2 | r | 82 | 0114 | 0072 | r | 82 |
| = | = | 29 | 0061 | 003D | = | 29 | dc3 | s | 83 | 0115 | 0073 | s | 83 |
| > | > | 30 | 0062 | 003E | > | 30 | dc4 | t | 84 | 0116 | 0074 | t | 84 |
| ? | ? | 31 | 0063 | 003F | ? | 31 | nak | u | 85 | 0117 | 0075 | u | 85 |
| @ | @ | 32 | 0064 | 0040 | @ | 32 | syn | v | 86 | 0118 | 0076 | v | 86 |
| A | A | 33 | 0065 | 0041 | A | 33 | etb | w | 87 | 0119 | 0077 | w | 87 |
| B | B | 34 | 0066 | 0042 | B | 34 | can | x | 88 | 0120 | 0078 | x | 88 |
| C | C | 35 | 0067 | 0043 | C | 35 | em | y | 89 | 0121 | 0079 | y | 89 |
| D | D | 36 | 0068 | 0044 | D | 36 | sub | z | 90 | 0122 | 007A | z | 90 |
| E | E | 37 | 0069 | 0045 | E | 37 | esc | { | 91 | 0123 | 007B | { | 91 |
| F | F | 38 | 0070 | 0046 | F | 38 | fs | | | 92 | 0124 | 007C | | | 92 |
| G | G | 39 | 0071 | 0047 | G | 39 | gs | } | 93 | 0125 | 007D | } | 93 |
| H | H | 40 | 0072 | 0048 | H | 40 | rs | ~ | 94 | 0126 | 007E | ~ | 94 |
| I | I | 41 | 0073 | 0049 | I | 41 | us | del | 95 | 0195 | 00C3 | Ã | 95 |
| J | J | 42 | 0074 | 004A | J | 42 | fnc 3 | fnc 3 | 96 | 0196 | 00C4 | Ä | 96 |
| K | K | 43 | 0075 | 004B | K | 43 | fnc 2 | fnc2 | 97 | 0197 | 00C5 | Å | 97 |
| L | L | 44 | 0076 | 004C | L | 44 | Shift | Shift | 98 | 0198 | 00C6 | Æ | 98 |
| M | M | 45 | 0077 | 004D | M | 45 | code C | code C | 99 | 0199 | 00C7 | Ç | 99 |
| N | N | 46 | 0078 | 004E | N | 46 | code B | fnc 4 | code B | 0200 | 00C8 | È | 100 |
| O | O | 47 | 0079 | 004F | O | 47 | fnc 4 | code A | code A | 0201 | 00C9 | É | 101 |
| P | P | 48 | 0080 | 0050 | P | 48 | fnc 1 | fnc 1 | fnc 1 | 0202 | 00CA | Ê | 102 |
| Q | Q | 49 | 0081 | 0051 | Q | 49 | Start A | Start A | Start A | 0203 | 00CB | Ë | 103 |
| R | R | 50 | 0082 | 0052 | R | 50 | Start B | Start B | Start B | 0204 | 00CC | Ì | 104 |
| S | S | 51 | 0083 | 0053 | S | 51 | Start C | Start C | Start C | 0205 | 00CD | Í | 105 |
| T | T | 52 | 0084 | 0054 | T | 52 | Stop | Stop | Stop | 0206 | 00CE | Î | |
| U | U | 53 | 0085 | 0055 | U | 53 |
* It is necessary to print the Code 128 space character from ASCII 194 instead of ASCII 32 because Windows cannot print a symbol instead of a space character from Visual Basic and most other development environments. Macintosh systems should print the Code128 font from unicode locations if possible because the extended characters map to different characters than what is displayed on the "Char" column in MAC Roman encoding. More about this...
* In the event the system regional setting is not set to "English" or the 1252 Latin-1 code page, the Code 128 fonts support the following additional code pages in Windows: 1250 European, 1251 Cyrillic, 1253 Greek, 1254 Turkish, 1255 Hebrew and 1256 Arabic. To obtain a font that works in any operating system, code page and locale, IDAutomation offers the Universal Barcode Font Advantage™, which creates Code128 and many other barcodes as a single font.
* The columns ASCII, Char and Unicode are unique to IDAutomation's Code 128 barcode fonts.
NOTE:
IDAutomation provides several
font tools and source
code samples that are free to use with IDAutomation fonts, which will
automatically format the start, stop and check characters to the barcode
fonts. Therefore, manual check digit calculations are usually not necessary.
The check character is positioned after the data characters and just before the stop character. To determine the value of the check character:
Calculating Character Set A or B:
The following table is an example of how to obtain the check character for the data "biz" using Code 128 character set B.
| Start B | b | i | z | STOP | |
| weighting | 1 | 2 | 3 | ||
| values | 104 | 66 | 73 | 90 | |
| totals | 104 | 66 | 146 | 270 |
To print extended ASCII characters from a keyboard that does not the have keys defined, use the ALT+<xxxx> key combination where xxxx equals the character's ASCII location in 4 digits. For example, to type ASCII character 104 into Microsoft Word, select the font in Word, press the ALT key and while holding it down type 0104 on the keypad of the keyboard. Four digits must be entered with the keypad only.
Therefore to print the data "biz" as a barcode, type: ALT 0204, b, i, z, g, ALT 0206 or ÌbizgÎ .
Calculating Character Set C:
The following table is an example of how to obtain the check character for "667390" using Code 128 character set C:
First, interleave the numbers into pairs and then choose the appropriate character that represents the number pair from the character set.
| Start C | 66 | 73 | 90 | STOP | |
| weighting | 1 | 2 | 3 | ||
| values | 105 | 66 | 73 | 90 | |
| totals | 105 | 66 | 146 | 270 |
Therefore to print the data "667390" as a barcode, you would need to type: ALT 0205, b, i, z, h, ALT 0206 or ÍbizhÎ .
Switching Between Character Sets:
It is possible to switch between character sets in a single Code 128 barcode symbol. Although character set B can encode text and numbers, it may be necessary to switch to set A to encode a function such as a tab or carriage return.
The following table is an example of how to encode the data "biz" using Code 128 character set B with a switch to character set A for a carriage return function:
| Start B | b | i | z | É | m | STOP | |
| weighting | 1 | 2 | 3 | 4 | 5 | ||
| values | 104 | 66 | 73 | 90 | 101 | 77 | |
| totals | 104 | 66 | 146 | 270 | 404 | 385 |
This type of switching between character sets is also compatible with IDAutomation's font tools. For example, specify the data bizÉm ( É is the switch to set A and m is the function according to the chart) as the input for the Code 128 B function, the data ÌbizÉmDÎ would be returned which would perform the switch to set A and the function of a return when printed with IDAutomation's font and scanned by a barcode scanner.
Calculating GS1-128 (formerly UCC128 and EAN128):
The FNC1 in the GS1-128 barcode is treated like another character. This example demonstrates how to calculate (00)1234(15)12 which would be encoded as Ê001234Ê1512 in IDAutomation's font tools. More information about creating GS1-128, UCC-128 and EAN-128 barcodes is provided in the Code 128 FAQ.
| Start C | FNC1 | 00 | 12 | 34 | FNC1 | 15 | 12 | STOP | |
| weighting | 1 | 2 | 3 | 4 | 5 | 6 | 7 | ||
| values | 105 | 102 | 00 | 12 | 34 | 102 | 15 | 12 | |
| totals | 105 | 102 | 00 | 36 | 136 | 510 | 90 | 84 |
Therefore, the following text is needed to create the barcode from the font: ÍÊÂ,BÊ/,AÎ
The X dimension (X is the width of the narrow bar) is listed below for various point sizes in millimeters and mils. 1 mil is equal to 1/1000 of an inch. IDAutomation's Code 128 fonts have been specially designed to be able to produce dependable barcodes when printed at large and small point sizes. The Code 128 font may be printed as small as 4 points if the scanner is capable reading it. IDAutomation's Code 128 fonts are reliably read with the following hardware and point sizes:
|
Point Size |
Approximate X dimension (1 mil = .001") |
|
| 48 | .102 cm | 40 mil |
| 36 | .076 cm | 30 mil |
| 32 | .069 cm | 27 mil |
| 30 | .064 cm | 25 mil |
| 28 | .058 cm | 23 mil |
| 24 | .051 cm | 20 mil |
| 20 | .043 cm | 17 mil |
| 18 | .038 cm | 15 mil |
| 16 | .033 cm | 13 mil |
| 12 | .025 cm | 10 mil |
| 8 | .018 cm | 7 mil |
| 6 | .013 cm | 5 mil |
|
* To print at a different X dimension, find
the point size that has the X dimension closest to what is needed
and use the formula below to find the point size needed: |
||
When using a printer with less than 600 DPI, print at the following point sizes to create accurate barcodes:
| 203 DPI Printer (thermal printer) | 300 DPI Printer |
| 6, 12, 18, 24, 30, 36 | 4, 8, 12, 16, 20, 24, 28, 32, 36 |
Eighteen different versions of the Code 128 barcode fonts are provided to support human readable versions and different width and height requirements. Fonts with the letter "H" in the font name are "human readable" versions. The last characters in the Code 128 barcode font name determine the height of the barcode with the shortest being "XS" and the tallest being "XXL". Because each single font may be printed at various point sizes, there are several combinations of heights and widths that may be produced.
| Font name of purchased version | Font name of eval version* | Font height at 12 points* |
| Code 128 Fonts with no text below the barcode: | ||
| IDAutomationC128XXS | IDAutomationSC128XXS | .10" or .254 CM |
| IDAutomationC128XS | IDAutomationSC128XS | .20" or .508 CM |
| IDAutomationC128S | IDAutomationSC128S | .35" or .889 CM |
| IDAutomationC128M | IDAutomationSC128M | .50" or 1.27 CM |
| IDAutomationC128L | IDAutomationSC128L | .60" or 1.46 CM |
| IDAutomationC128XL | IDAutomationSC128XL | .75" or 1.90 CM |
| IDAutomationC128XXL | IDAutomationSC128XXL | 1" or 2.54 CM |
| Code 128 Fonts "Character set B" with text below the barcode:** | ||
| IDAutomationHbC128XS | NA | .20" or .508 CM |
| IDAutomationHbC128S | NA | .35" or .889 CM |
| IDAutomationHbC128M | IDAutomationSHbC128M | .50" or 1.27 CM |
| IDAutomationHbC128L | NA | .60" or 1.46 CM |
| IDAutomationHbC128XL | NA | .75" or 1.90 CM |
| IDAutomationHbC128XXL | NA | 1" or 2.54 CM |
| Code 128 Fonts "Character set C" with text below the barcode:** | ||
| IDAutomationHcC128XS | NA | .20" or .508 CM |
| IDAutomationHcC128S | NA | .35" or .889 CM |
| IDAutomationHcC128M | IDAutomationSHcC128M | .50" or 1.27 CM |
| IDAutomationHcC128L | NA | .60" or 1.46 CM |
| IDAutomationHcC128XL | NA | .75" or 1.90 CM |
| IDAutomationHcC128XXL | NA | 1" or 2.54 CM |
| * Measurements are approximate and were
measured when printed at 12 points, which should work for most scanners.
Measurements for Human Readable fonts do not include the text below.
To print at a different height, find the font that has the height
closest to what is needed and use the following formula to find
the point size that is needed: ** The human readable versions also work with IDAutomation's font tools. However, they are not normally used because the Code 128 symbology MOD103 check digit is usually displayed in the result. Human readable versions are often used for testing purposes or when it is not a problem to have the symbology check digit displayed. To print the human readable data without the check digit, use the fonts beginning in IDAutomationC128 and print the data encoded as text below or above the barcode. The XXS size is not available in the human readable versions because of size limitations. |
||
|
Installation Instructions |
NOTICE: When using a printer with less than 600 DPI, print at the following point sizes to create accurate barcodes:
| 203 DPI Printer (thermal printer) | 300 DPI Printer |
| 6, 12, 18, 24, 30, 36 | 4, 8, 12, 16, 20, 24, 28, 32, 36 |
To install the package in Windows, run the INSTALL.EXE setup utility. This utility will install the most commonly used fonts. The following describes how to manually install a font in Windows:
To install the TrueType font on the Classic Macintosh (OS 7.1 - OS 9):
PCL Fonts:
To obtain information about installing PCL fonts, please refer to the
PCLinfo.html document provided in the PCL folder of the package.
Font
installation procedures for other operating systems
|
Font names used prior to July, 2003 |
| Font name of purchased version | Font name of eval version* | Font height at 12 points* |
| Code 128 Fonts with no text below the barcode: | ||
| AdvC128a | sAdC128a | 1/16" (.078") or .2 cm |
| AdvC128b | sAdC128b | 1/8" (.125") or .4 cm |
| AdvC128c | sAdC128c | 1/4" (.25") or .6 cm |
| AdvC128d | sAdC128d | 1/2" (.5") or 1.1 cm |
| AdvC128e | sAdC128e | 5/8" (.625") or 1.6 cm |
| AdvC128f | sAdC128f | 1" or 2.5 cm |
| Code 128 Fonts "Character set B" with text below the barcode:** | ||
| C128bHa | NA | 1/16" (.078") or .2 cm |
| C128bHb | NA | 1/8" (.125") or .4 cm |
| C128bHc | sC128bHc | 1/4" (.25") or .6 cm |
| C128bHd | NA | 1/2" (.5") or 1.1 cm |
| C128bHe | NA | 5/8" (.625") or 1.6 cm |
| C128bHf | NA | 1" or 2.5 cm |
| Code 128 Fonts "Character set C" with text below the barcode:** | ||
| C128cHa | NA | 1/16" (.078") or .2 cm |
| C128cHb | NA | 1/8" (.125") or .4 cm |
| C128cHc | sC128cHc | 1/4" (.25") or .6 cm |
| C128cHd | NA | 1/2" (.5") or 1.1 cm |
| C128cHe | NA | 5/8" (.625") or 1.6 cm |
| C128cHf | NA | 1" or 2.5 cm |
|
|
|
Product Quick Links: [Barcode Fonts | Font Tools | Components | Label Software | Scanners | Printers | RFID | Product Index] |
© Copyright 1998-2007 IDAutomation.com, Inc., All Rights Reserved. Legal Notices.
|
Over 70% of Fortune 100 companies use IDAutomation's products to automate their businesses. |