IDAutomation.com, Inc.
Your Source for Quality Symbology
[IDAutomation.com Home Page]

# Code 128 Font Advantage Package Demo

[NOTE: This package may only be used according to the License Agreement]

This download package contains a sample of the Code 128 Font Advantage Package. The fonts in this package allow printing of Code 128 (character sets A, B & C,) UCC-128 and EAN-128 barcodes from MS Windows and variety of other operating systems such as Macintosh and UNIX. Macintosh users should refer to the "readme" file in the Macintosh folder of the Code 128 ZIP file package.

Our Code 128 Font Advantage Package is more than just a few fonts. With this package you get several Code 128 font versions in 6 different font formats. You also get font tools, macros and source code to help you integrate the fonts into your application. Implementing barcode solutions with our fonts provides a high level of scalability with operating system, application and printer independence. Learn more about the quality of our fonts.

[Return to BizFonts.com | Data Sheet | Order NOW]

NOTE: This sample Code 128 bar code font should only be used for testing and evaluation purposes because some of the characters contain the text "DEMO" in them which can cause scan errors. For testing purposes, a successful scan can be obtained by scanning the lower 25% of the barcode that does not contain any "DEMO" text in it. In the evaluation version, human readable fonts are provided for character sets B and C but only at the "c" height. After you order the fully functional version, all fonts are supplied in the 6 different heights for a total of 18 different Code 128 fonts. The Code 128 human readable fonts all start with C128 and include the letter "H" after a lower case letter specifying the character set. For example, the font "C128bHc.ttf" is a human readable for character set B with a font height of C. The human readable format is not as popular as the standard version because the check digit will also appear. Usually, programmers will just print the data that is encoded directly below the barcode printed.

If you order the Code 128 Font Advantage Package license, you will receive fully functional versions of the Code 128 bar code fonts with rights to use the macros, tools and source code in your applications. To order the fully functional Font Advantage Package, please visit the Code 128 Font Site.

It is important to have the ability to test the barcodes you print with a barcode scanner. If you do not already have a barcode scanner, we also sell high quality complete barcode scanner kits at our IDAutomation.com site.

Code 128 Symbology Barcode Data Sheet

- The Code 128 barcode fonts are scaleable and should be printed at the correct font size to suit your application and scanning equipment. Six (6) versions of the Code 128 barcode fonts are provided to support different width and height requirements. The last character in the Code 128 barcode font name determines the height of the barcode with the shortest being AdvC128a and the tallest being AdvC128f. For example, when printed at 20 points, the AdvC128d font will produce the exact dimensions required by the USPS special services which is a height of .75" and an x dimension of .013". The Code 128 barcode fonts were created to meet ANSI and CEN requirements when printing with the font size of 12 or greater. When printing UCC-128 and EAN-128 barcodes the font size of 14 or greater should be used.
- To determine which Code 128 barcode font to use, first print out the AdvC128b barcode font at various font sizes to determine which size is the smallest that will work with your scanning equipment. Then, choose the tallest version that will fit in your scanning area.
- Our Code 128 fonts can also be printed at very small point sizes with high quality laser printers and scanners that support reading very small x dimensions. Printed with a HP Laserjet at 600 DPI, we have been able to dependably scan our Code 128 font printed at 6 points with the CCD scanner we sell at our IDAutomation.com site.
- UCC/EAN-128 bar codes always contain a special non-data character known as function 1 (FNC 1), which follows the start C character of the bar code. Our function "UCC128()" in our MS Office Macros and VB source code can be used for this. For more information on the formatting and placement of UCC/EAN-128 barcodes, contact the Uniform Code Council or visit the UCC website.
- To help users integrate barcodes into their applications, we provide font automation tools such as MS Office Macros for Word, Excel and Access, Visual Basic, ANSI C and JAVA Source Code, ActiveX DLLs for development platforms that support Microsoft's ActiveX / COM technology, Crystal Reports User Function Libraries (UFLs) and a check digit calculation application with Visual Basic source code as a free download for programmers and technical users. The DLLs, macros, UFLs and code provided automatically format the start, stop and check characters to the barcode font. Macintosh users should refer to the "readme" file in the Macintosh folder of the Code 128 ZIP file package.
- When using our "UCC128()" macro and VB function, the first FNC1 code is included automatically. If you need to enter additional FNC1 codes, enter "FA" in the data to encode field. If you do this MAKE SURE that EVEN numbers are between "FA"; this code performs no checking for this! Example: 1234FA567800.
- Three different start characters are used in the Code 128 bar codes to tell the barcode reader which character set is being used. The table below illustrates the three different character sets and the ASCII location to print the character. If you are using character sets A or B you can create the Code 128 barcode output simply by selecting the Code 128 font and typing the appropriate letter from the keyboard with the exception of the space character barcode, extended functions and the start / stop characters. It is possible to copy and paste these extended characters from the Character Map application, for more information on this function, please review our font FAQ page.

Code A | Code B | Code C | ASCII | Unicode | Value |  | Code A | Code B | Code C | ASCII | Unicode | Value
Space | Space | 00 | 0194 | 00C2 | 00 |  | V | V | 54 | 0086 | 0056 | 54
! | ! | 01 | 0033 | 0021 | 01 |  | W | W | 55 | 0087 | 0057 | 55
" | " | 02 | 0034 | 0022 | 02 |  | X | X | 56 | 0088 | 0058 | 56
# | # | 03 | 0035 | 0023 | 03 |  | Y | Y | 57 | 0089 | 0059 | 57
$ | $ | 04 | 0036 | 0024 | 04 |  | Z | Z | 58 | 0090 | 005A | 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 | 65
, | , | 12 | 0044 | 002C | 12 |  | stx | b | 66 | 0098 | 0062 | 66
- | - | 13 | 0045 | 002D | 13 |  | etx | c | 67 | 0099 | 0063 | 67
. | . | 14 | 0046 | 002E | 14 |  | eot | d | 68 | 0100 | 0064 | 68
/ | / | 15 | 0047 | 002F | 15 |  | eno | e | 69 | 0101 | 0065 | 69
0 | 0 | 16 | 0048 | 0030 | 16 |  | ack | f | 70 | 0102 | 0066 | 70
1 | 1 | 17 | 0049 | 0031 | 17 |  | bel | g | 71 | 0103 | 0067 | 71
2 | 2 | 18 | 0050 | 0032 | 18 |  | bs | h | 72 | 0104 | 0068 | 72
3 | 3 | 19 | 0051 | 0033 | 19 |  | ht | i | 73 | 0105 | 0069 | 73
4 | 4 | 20 | 0052 | 0034 | 20 |  | lf | j | 74 | 0106 | 006A | 74
5 | 5 | 21 | 0053 | 0035 | 21 |  | vt | k | 75 | 0107 | 006B | 75
6 | 6 | 22 | 0054 | 0036 | 22 |  | ff | l | 76 | 0108 | 006C | 76
7 | 7 | 23 | 0055 | 0037 | 23 |  | cr | m | 77 | 0109 | 006D | 77
8 | 8 | 24 | 0056 | 0038 | 24 |  | s0 | n | 78 | 0110 | 006E | 78
9 | 9 | 25 | 0057 | 0039 | 25 |  | s1 | o | 79 | 0111 | 006F | 79
: | : | 26 | 0058 | 003A | 26 |  | dle | p | 80 | 0112 | 0070 | 80
; | ; | 27 | 0059 | 003B | 27 |  | dc1 | q | 81 | 0113 | 0071 | 81
< | < | 28 | 0060 | 003C | 28 |  | dc2 | r | 82 | 0114 | 0072 | 82
= | = | 29 | 0061 | 003D | 29 |  | dc3 | s | 83 | 0115 | 0073 | 83
> | > | 30 | 0062 | 003E | 30 |  | dc4 | t | 84 | 0116 | 0074 | 84
? | ? | 31 | 0063 | 003F | 31 |  | nak | u | 85 | 0117 | 0075 | 85
@ | @ | 32 | 0064 | 0040 | 32 |  | syn | v | 86 | 0118 | 0076 | 86
A | A | 33 | 0065 | 0041 | 33 |  | etb | w | 87 | 0119 | 0077 | 87
B | B | 34 | 0066 | 0042 | 34 |  | can | x | 88 | 0120 | 0078 | 88
C | C | 35 | 0067 | 0043 | 35 |  | em | y | 89 | 0121 | 0079 | 89
D | D | 36 | 0068 | 0044 | 36 |  | sub | z | 90 | 0122 | 007A | 90
E | E | 37 | 0069 | 0045 | 37 |  | esc | { | 91 | 0123 | 007B | 91
F | F | 38 | 0070 | 0046 | 38 |  | fs | | | 92 | 0124 | 007C | 92
G | G | 39 | 0071 | 0047 | 39 |  | gs | } | 93 | 0125 | 007D | 93
H | H | 40 | 0072 | 0048 | 40 |  | rs | ~ | 94 | 0126 | 007E | 94
I | I | 41 | 0073 | 0049 | 41 |  | us | del | 95 | 0195 | 00C3 | 95
J | J | 42 | 0074 | 004A | 42 |  | fnc 3 | fnc 3 | 96 | 0196 | 00C4 | 96
K | K | 43 | 0075 | 004B | 43 |  | fnc 2 | fnc2 | 97 | 0197 | 00C5 | 97
L | L | 44 | 0076 | 004C | 44 |  | Shift | Shift | 98 | 0198 | 00C6 | 98
M | M | 45 | 0077 | 004D | 45 |  | code C | code C | 99 | 0199 | 00C7 | 99
N | N | 46 | 0078 | 004E | 46 |  | code B | fnc 4 | code B | 0200 | 00C8 | 100
O | O | 47 | 0079 | 004F | 47 |  | fnc 4 | code A | code A | 0201 | 00C9 | 101
P | P | 48 | 0080 | 0050 | 48 |  | fnc 1 | fnc 1 | fnc 1 | 0202 | 00CA | 102
Q | Q | 49 | 0081 | 0051 | 49 |  | Start A | Start A | Start A | 0203 | 00CB | 103
R | R | 50 | 0082 | 0052 | 50 |  | Start B | Start B | Start B | 0204 | 00CC | 104
S | S | 51 | 0083 | 0053 | 51 |  | Start C | Start C | Start C | 0205 | 00CD | 105
T | T | 52 | 0084 | 0054 | 52 |  | Stop | Stop | Stop | 0206 | 00CE |
U | U | 53 | 0085 | 0055 | 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.

Code 128 Check Character Calculation

The check character is positioned after the data characters and just before the stop character. To determine the value of the check character:

1. Reference the table above to obtain the value of the start character and all data characters.
2. Assign a weighting to each data character (not the start character just the data characters.) The weighting starts at 1 and increases by one for each data character.
3. Multiply the character values by their weights for the data characters.
4. Add these all together including the start character, divide by 103 and obtain the remainder.
5. Use the table above to locate the character that has the value of the remainder, use this as 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 |

1. Calculate Total: 104 + (66*1) + (73*2) + (90*3) = 586
2. Calculate Checksum: 586 divided by 103 = 5 remainder of 71. Check digit = value of 71. The character to print for the value of 71 is "g" or ASCII 103.

To print extended ASCII characters from your keyboard that do not have keys defined, you can 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 your keyboard. You must use the keypad to do this and you must enter 4 digits.

Therefore to print the data "biz" as a barcode, you would need to type: ALT 0204, b, i, z, g, ALT 0206 or ÌbizgÎ . Click here for more information on printing fonts with extended ASCII characters or use our font automation tools.

Calculating Character Set C:

The following table is an example of how to obtain the check character for the number "667390" using Code 128 character set C. First we have to interleave the numbers into pairs and then choose the appropriate character that represents the number pair.

| Start C | 66 | 73 | 90 | STOP
weighting |  | 1 | 2 | 3 |
values | 105 | 66 | 73 | 90 |
totals | 105 | 66 | 146 | 270 |

1. Calculate Total: 105 + (66*1) + (73*2) + (90*3) = 587
2. Calculate Checksum: 587 divided by 103 = 5 remainder of 72. Check digit = value of 72. The character to print for the value of 72 is ASCII 104.

Therefore to print the data "667390" as a barcode, you would need to type: ALT 0205, b, i, z, h, ALT 0206 or ÍbizhÎ . Click here for more information on printing fonts with extended ASCII characters or use our font automation tools.

Visual Basic Sample Code for a Code 128 Application

The following Visual Basic Source Code is used to print a Code 128 B barcode and calculate the check character. You may use this code in your application as long as the copyright notice is not removed. If you plan to test this code you must install the appropriate font.

Specifications

The X dimension (X is the width of the narrow bar) is listed below for various point sizes.

Our Code 128 fonts have been specially designed to be able to produce dependable and scannable barcodes when printed at large and small point sizes. With a 600 DPI laser printer, the Code 128 font can be printed as small as 6 points if the scanner supports reading it. Printed with a HP Laserjet at 600 DPI, we have been able to dependably scan our Code 128 font printed at 6 points with the CCD scanner we sell at our IDAutomation.com site. Excluding the start and stop characters, you can achieve slightly more than 20 CPI print density when printing at 6 points. Keep in mind though, the Code 128 fonts should be printed at 12 points or larger for open systems.

Point Size | Approximate X dimension
48 | .85 mm | .032"
36 | .63 mm | .024"
24 | .42 mm | .016"
16 | .28 mm | .011"
12 | .21 mm | .008"
8 | .14 mm | .006"
6 | .105 mm | .004"

Installation Instructions

For the most up to date installation procedures for other operating systems please visit our Technical Support Site. Macintosh users should refer to the "readme" file in the Macintosh folder of the ZIP file package.

To install the Code 128 barcode font in Windows:

- Click on Start, Select settings and click on Control Panel.
- Click on Fonts, Click on File in your main tool bar, Select Install New Font.
- Select the folder where you placed the Code 128 barcode font.
- The Code 128 barcode font will appear and look like this: AdvC128b (true type) - select this font and Click on OK.
- Click Start and choose to shut down and restart your computer.
- The font should be active when you restart your computer.
- To create the correct output for the Code 128 barcode font you will need to type in the corresponding letter.

If you have any questions or need assistance, please contact us.

Copyright © IDAutomation.com, Inc. 1999-2001. All trademarks are the property of their respective owners.

[Return to BizFonts.com | Data Sheet | Order NOW]