Barcode 128 Eot

About 100 types of barcodes are available in the world. The following is an introduction to CODE128 and GS1-128 barcodes.

The one guide you need to learn all about barcodes!

CODE 128 is the barcode developed by Computer Identics Corporation (U.S.A.) in 1981. CODE 128 can represent all 128 ASCII code characters (numbers, upper case/lower case letters, symbols and control codes). Barcodesoft Code128 barcode fonts are available in true type, PostScript, PCL, SVG, Open Type (eot), and Web Open Font Format (woff / woff2). Users can embed Code128 fonts into Adobe PDF files. Here is the list of Barcodesoft Code128 Barcode Fonts.

This guide provides an easy-to-understand explanation of the structures and standards of 1D codes such as EAN, CODE39, and CODE128.

CODE 128

CODE 128 is the barcode developed by Computer Identics Corporation (U.S.A.) in 1981.
CODE 128 can represent all 128 ASCII code characters (numbers, upper case/lower case letters, symbols and control codes). Since it can represent all characters (except Japanese kanji, hiragana and katakana) that can be used with a computer keyboard, it is a computer friendly barcode.

Barcode

CODE 128 Composition

The basic composition is as follows:

  • ・There are 4 types of bar size.
  • ・One character is represented by 3 bars and 3 spaces (total six elements).
  • ・A start character has three types; 'CODE-A', 'CODE-B' and 'CODE-C'. The type of start character determines the character composition of subsequent characters. (See the table of character composition on page 41. For example, when CODE A is used as a start character, the characters in the CODE-A column can be represented.)
  • ・When CODE-C is used, 2-digits numbers can be represented by one type of bar pattern. This allows the very high data density.
  • ・When code set characters (CODE-A, CODE-B and CODE-C) are used, the barcode started with the start character of CODE-A can be changed to use the characters in the CODE-B or CODE-C column in the middle of barcode processing.
  • ・When 'SHIFT' is used, only one character next to the SHIFT can be changed to the character in the next column (A to B, B to C, C to A). (Similar to the SHIFT key operation of on the computer keyboard)
  • ・'Modulus 103' is used as a check digit.

CODE 128 Character Composition

Numerical
value
CODE
A
CODE
B
CODE
C
Bar patternNumerical
value
CODE
A
CODE
B
CODE
C
Bar pattern
0SPSP0054VV54
1!!0155WW55
2''0256XX56
3##0357YY57
4$$0458ZZ58
5%%0559[[59
6&&066060
7''0761]]61
8((0862^^62
9))0963__63
101064NUL64
11++1165SOHa65
12,,1266STXb66
13--1367ETXc67
14..1468EOTd68
15//1569ENQe69
16001670ACKf70
17111771BELg71
18221872BSh72
19331973HTi73
20442074LFj74
21552175VTk75
22662276FFl76
23772377CRm77
24882478SOn78
25992579SIo79
262680DLEp80
27;;2781DC1q81
28<<2882DC2r82
29==2983DC3s83
30>>3084DC4t84
31??3185NAKu85
32@@3286SYNv86
33AA3387ETBw87
34BB3488CANx88
35CC3589EMy89
36DD3690SUBz90
37EE3791ESC{91
38FF3892FS92
39GG3993GS}93
40HH4094RS94
41II4195USDEL95
42JJ4296FNC 3FNC 396
43KK4397FNC 2FNC 297
44LL4498SHIFTSHIFT98
45MM4599CODE CCODE C99
46NN46100CODE BFNC 4CODE B
47OO47101FNC 4CODE ACODE A
48PP48102FNC 1FNC 1FNC 1
49QQ49103START(CODE A)
50RR50104START(CODE B)
51SS51105START(CODE C)
52TT52
53UU53STOP

CODE 128 Features

  • ・CODE 128 barcode can include all 128 ASCII code characters (including control codes such as [ESC], [STX], [ETX], [CR] and [LF]).
  • ・When CODE-C is used as the start character, one bar pattern can represent 2-digits numbers. This allows very efficient barcode composition. If the barcode data has 12 or more digits, CODE 128 provides smaller size than ITF.
  • ・Since CODE 128 uses 4 types of bar size, printers with high print quality are required. CODE 128 is not suitable for printing with dot matrix printers and FA ink-jet printers and for flexographic printing on corrugated cardboards.

CODE 128 Applications

Use of CODE-C as the start code allows CODE 128 to provide the barcode with very high data density, if only numbers are handled.
GS1-128 makes use of the characteristics of CODE 128 and is currently used in many industrial applications. With GS1-128, various data are included in the barcode, such as manufacturing date of the product, open date, weight, size, lot number, destination, customer's account, etc..

CODE 128 is used in the following industries:
U.S.A. apparel industry
U.S.A. food process industry
U.S.A. drugs and medical equipment industry
Food industries in Australia and New Zealand
European drugs and medical instruments industry

GS1-128

What Is GS1-128?

GS1-128 is the barcode that provides various data including distribution and business transaction data in addition to the data provided by the JAN code and the standard distribution code (ITF) currently available.

Following data can be included in GS1-128 barcode:

・Package number
・Quantity in package
・Weight, capacity and cubic capacity
・Manufacturing date and validity of quality

128

・Lot number
・Location number (destination)
・Customer's account code
・Customer's order number

Necessary data is used to form the barcode label for the various applications.

For example, On-line purchasing/ordering using EDI (the system for exchanging electronic data between companies), management of open date for foods, management of drugs validity, simplifying the work for checking incoming products, sorting packages for every destination, etc.. (The following label is a sample from a food manufacturer.)

Background of GS1-128 Establishment

JAN code and the standard distribution code (ITF) are the barcodes for indicating the product itself and its quantity and not for the data such as manufacturing date, package number, validity of quality and order number.
While CODE 39 allows such data to be included in the barcode, the exchange of such data between companies is not allowed because the definition and the number of digits of the data are different.
GS1-128 is established as the world universal barcode for common use, with the items and the number of digits of the data and the type of the barcode being standardized.

GS1-128 Composition

The basic composition of GS1-128 is as follows:

  • ・Code 128 is used as the barcode.
  • ・In order to separate the required data such as weight and open data, the 'application identifier (AI)' is added which is followed by the data. If more than one data is represented, each data shall be linked.
  • Although application identifiers are parenthesized, the parentheses are not included in the barcode data. They are used just for presentation.

In the sample above, following the application identifier '01', 14-digits code is assigned to identify the delivery container (minimum package unit for corrugated cardboard boxes). Following the application identifier '15', the data representing the validity of quality (consumption validity or drug validity) is given to show August 27, '95. Following the last application identifier '30', the data representing the delivery quantity is given to show 3 pieces.
There are about 100 application identifiers except the above. The required data is selected and included in the barcodes by users.

GS1-128 is not intended to represent fixed data, but the data is selectable by the user. Therefore, for consistent use of GS1-128 among companies, the standards for the barcode system with the data available shall be prepared by the respective industry and the groups of companies involved.

  • ・In order to distinguish GS1-128 from CODE 128, it is required to give [FNC 1](function 1) following the start code (CODE-A to C).
  • ・Even if the number of digits for the data following the application identifier is a variable-length, [FNC 1] is given to separate the data.
  • ・With GS1-128 being added to EAN code and the standard distribution code (ITF), it can be used as the code to add more data.

GS1-128 is designed to represent the application identifiers and the products relative data or the transaction data of the companies using CODE 128.
In other words, GS1-128 is the standard for the applications to represent the various data. CODE 128 is the standard just for the barcode itself. The difference between GS1-128 and CODE 128 is whether it represents the application or not.
Since GS1-128 uses the barcode composition of CODE 128, any barcode reader that can read CODE 128 can be used to read the GS1-128 data.

Application Identifier

Application Identifier

There are 100 types of application identifiers that can be classified as follows. Some of the data following each application identifier has a fixed number of digits (standard carton ID, date and unit of measurement), while the others have an undefined number of digits (lot number, serial number, quantity in package, quantity and order number).

ClassificationContentApplication identifier
Package style・Carton numbers are indicated on the corrugated cardboard box that contain the mixed products.
・Carton numbers are indicated on all corrugated cardboard boxes that are piled up on pallets.
・For use of ASN (Advanced Shipment Notice) with indication on SCM label (See page 51)
00 'Standard carton ID'
Products management・The corrugated cardboard box meets the delivery requirements and no standard distribution symbol ITF is indicated.01 'Delivery container code'
• Refurbished products and modified products20
• Products dates (manufacturing date, packaged date and warranty period) are indicated.11~17
• Product lot number10
• Product serial number21
Measurement
indication
• Weight, cubic capacity and capacity are indicated on the corrugated cardboard box that contains the measured products (foods and fresh fish).310~369
Administration• Customer's order number400
• Product consignment number401
• Location number (companies, offices and specific places)410~421
• Internal use and any data set by companies90~99

Typical application identifiers

Application identifierContentData's number of digits
00Standard carton IDNumbers with 18 digits

'00' is the identifier that gives the package serial number to every corrugated cardboard box and pallet for delivery. Therefore, a different number is given for every delivery.
The data has 18 digits with the following composition:

Package type1 digit
Universal company code7 digits
Package serial number for every delivery9 digits
Check digit (modulus 10/3 weight)1 digit

'Package type' is as follows:

Package type
0Case or carton
1Pallet (larger than case and carton)
2Container (larger than pallet)
3Any package type other than above
4According to internal requirements (for internal use)
5According to mutual requirements among the companies concerned
6~9No use allowed

'Universal company code' is indicated by 'country code' + 'manufacturer code' for the companies who registered JAN. For the companies who did not register JAN, it is required to obtain the universal business account code.

'Standard carton ID' is called SSCC-18 (Serial Shipping Container Code) in Europe and America.

Application identifierContentData's number of digits
01Delivery container codeNumbers with 14 digits

The same composition of the standard distribution code (ITF) is generally applied to '01'. It consists of the EAN code of the packaged product and the package indicator that indicates the product quantity.

Package indicator1digit
EAN code12 digits
Check digit (Modulus 10/3 weight)1 digit

'Package indicator' is as follows:

Package indicator
0Corrugated cardboard boxes that contain the mixed products
1~8Corrugated cardboard box for one-item that contains the same quantity. Setting within the range of 1 to 8. In many cases, 1 is set.
9The corrugated cardboard box that contains the different quantity for one-item

Since 'delivery container code' has the same data composition as for the EAN code and the standard distribution code, it can be used only on the condition that EAN and standard distribution codes are not printed on corrugated cardboard boxes.

'Delivery container code' is called SCC-14 (Shipping Container Code) in Europe and America.

Application identifierContentFormat
10Batch number or lot numberWithin 20 alphanumeric characters

'10' is the application identifier to indicate the batch number and the lot number of the product. 20 alphanumeric characters (variable-length) or less are available.

Application identifierContentFormat
11Manufacturing date (YYMMDD)Numbers with 6 digits
13Packaged date (YYMMDD)Numbers with 6 digits
15Validity of quality (YYMMDD)Numbers with 6 digits
17Validity for sale (YYMMDD)Numbers with 6 digits

The data of various dates are indicated.
For the validity of quality, the important data necessary for management are indicated. For example, 'open date' of foods and 'drugs validity' of drugs.

Application identifierContentFormat
400Administration number (customer's order number)Within 30 alphanumeric characters
411Location number (customer's account code)Numbers with 13 digits

These are the application identifiers to indicate the administration data such as 'order number' of customers and 'customer's account code'.

Application identifierContentFormat
410Location number (destination code)Numbers with 13 digits
420Location number (destination postal code)Within 9 alphanumeric characters

They are used for sorting goods according to destinations. '410' is the application identifier that allows the sorting for every company with EAN company codes being used.
'420' is the application identifier that allows the sorting for every delivery destination with postal numbers being used.

The sample shows that AI '420' and the postal number '22071' representing the domestic delivery location are used for door-to-door delivery service.

Barcode 128 Eot

Code128 Barcode

Code128 barcode is currently one of the most widely used barcode. The reason is that this barcode can support the full ASCII character set, is flexible and can support very dense (number of characters per inch) barcode. Under the industry specifications, this barcode supports three different variations : Code 128 A, Code 128 B and Code 128 C. Each of the variations is targeted for specific purposes and switching between the different variations is possible with additional control characters. With the switching, the specifications also cater to an Auto mode to help users create the barcode easily. The Auto mode allows the barcode software to auto detect the data, determine the most optimized variation and, if required, switch between the variations automatically. It is recommended to use the Barcode Generator, the Excel Add in or other tools provided by Aeromium for the Auto mode.

Generating this barcode using the Barcode Generator

The easiest way to create this barcode is to use the Barcode Generator included in the installation package. Simply goto the Start Menu and launch Aeromium Barcode Fonts > Barcode Generator. This software automatesand simplifies the creation of the barcodes for you. After the barcode is created, you can simply copyand paste the barcode into your documents.
Generating this barcode using the Barcode Generator
Generating this barcode in Excel

Code 128 Barcode Fonts

The following is the list of fonts with varying heights supported by Aeromium. All the different variations of this barcode use the same set of fonts below.
FontCode128H1.ttf
FontCode128H2.ttf
FontCode128H3.ttf (Default Font)
FontCode128H4.ttf
FontCode128H5.ttf
FontCode128H6.ttf

Barcode 128 Excel

Using this Barcode Manually

Code 128 A
The following table lists the characters supported by the Code 128 A barcode. The first column represents your data characters to be encoded by the barcode. The second column represents the barcode font characters to use. The Barcode Generator and Excel Macros will automatically help translate the data to the barcode font character and compute the check character. The characters for mode (variation) switching are also included in the table below. It is recommended to use the Barcode Generator, the Excel Add in or other tools provided by Aeromium for the Auto mode. This is to prevent human errors when creating the barcodes.
Data to be EncodedFont Character to useValues used for calculating Check Character
' '' ' (Space)0
'!''!'1
''''2
'#''#'3
'$''$'4
'%''%'5
'&''&'6
''''7
'(''('8
')'')'9
'*''*'10
'+''+'11
','','12
'-''-'13
'.''.'14
'/''/'15
'0''0'16
'1''1'17
'2''2'18
'3''3'19
'4''4'20
'5''5'21
'6''6'22
'7''7'23
'8''8'24
'9''9'25
':'':'26
';'';'27
'<''<'28
'=''='29
'>''>'30
'?''?'31
'@''@'32
'A''A'33
'B''B'34
'C''C'35
'D''D'36
'E''E'37
'F''F'38
'G''G'39
'H''H'40
'I''I'41
'J''J'42
'K''K'43
'L''L'44
'M''M'45
'N''N'46
'O''O'47
'P''P'48
'Q''Q'49
'R''R'50
'S''S'51
'T''T'52
'U''U'53
'V''V'54
'W''W'55
'X''X'56
'Y''Y'57
'Z''Z'58
'[''['59
''60
']'']'61
'^''^'62
'_''_'63
NUL'`'64
SOH'a'65
STX'b'66
ETX'c'67
EOT'd'68
ENQ'e'69
ACK'f'70
BEL'g'71
BS'h'72
HT'i'73
LF'j'74
VT'k'75
FF'l'76
CR'm'77
SO'n'78
SI'o'79
DLE'p'80
DC1'q'81
DC2'r'82
DC3's'83
DC4't'84
NAK'u'85
SYN'v'86
ETB'w'87
CAN'x'88
EM'y'89
SUB'z'90
ESC'{'91
FS'|'92
GS'}'93
RS'~'94
USASCII 17695
FNC3ASCII 17796
FNC2ASCII 17897
ShiftASCII 17998
Code CASCII 18099
Code BASCII 181100
FNC4ASCII 182101
FNC1ASCII 183102
Start AASCII 184103
Start BASCII 185104
Start CASCII 186105
StopASCII 187106

Code 128 B
The following table lists the characters supported by the Code 128 B barcode. The first column represents your data characters to be encoded by the barcode. The second column represents the barcode font characters to use.Excel
Data to be EncodedFont Character to useValues used for calculating Check Character
' '' ' (Space)0
'!''!'1
''''2
'#''#'3
'$''$'4
'%''%'5
'&''&'6
''''7
'(''('8
')'')'9
'*''*'10
'+''+'11
','','12
'-''-'13
'.''.'14
'/''/'15
'0''0'16
'1''1'17
'2''2'18
'3''3'19
'4''4'20
'5''5'21
'6''6'22
'7''7'23
'8''8'24
'9''9'25
':'':'26
';'';'27
'<''<'28
'=''='29
'>''>'30
'?''?'31
'@''@'32
'A''A'33
'B''B'34
'C''C'35
'D''D'36
'E''E'37
'F''F'38
'G''G'39
'H''H'40
'I''I'41
'J''J'42
'K''K'43
'L''L'44
'M''M'45
'N''N'46
'O''O'47
'P''P'48
'Q''Q'49
'R''R'50
'S''S'51
'T''T'52
'U''U'53
'V''V'54
'W''W'55
'X''X'56
'Y''Y'57
'Z''Z'58
'[''['59
''60
']'']'61
'^''^'62
'_''_'63
'`''`'64
'a''a'65
'b''b'66
'c''c'67
'd''d'68
'e''e'69
'f''f'70
'g''g'71
'h''h'72
'i''i'73
'j''j'74
'k''k'75
'l''l'76
'm''m'77
'n''n'78
'o''o'79
'p''p'80
'q''q'81
'r''r'82
's''s'83
't''t'84
'u''u'85
'v''v'86
'w''w'87
'x''x'88
'y''y'89
'z''z'90
'{''{'91
'|''|'92
'}''}'93
'~''~'94
DELASCII 17695
FNC3ASCII 17796
FNC2ASCII 17897
ShiftASCII 17998
Code CASCII 18099
FNC4ASCII 181100
Code AASCII 182101
FNC1ASCII 183102
Start AASCII 184103
Start BASCII 185104
Start CASCII 186105
StopASCII 187106

Code 128 C
The following table lists the characters supported by the Code 128 C barcode. The first column represents your data characters to be encoded by the barcode. The second column represents the barcode font characters to use.
Data to be EncodedFont Character to useValues used for calculating Check Character
00' ' (Space)0
01'!'1
02''2
03'#'3
04'$'4
05'%'5
06'&'6
07''7
08'('8
09')'9
10'*'10
11'+'11
12','12
13'-'13
14'.'14
15'/'15
16'0'16
17'1'17
18'2'18
19'3'19
20'4'20
21'5'21
22'6'22
23'7'23
24'8'24
25'9'25
26':'26
27';'27
28'<'28
29'='29
30'>'30
31'?'31
32'@'32
33'A'33
34'B'34
35'C'35
36'D'36
37'E'37
38'F'38
39'G'39
40'H'40
41'I'41
42'J'42
43'K'43
44'L'44
45'M'45
46'N'46
47'O'47
48'P'48
49'Q'49
50'R'50
51'S'51
52'T'52
53'U'53
54'V'54
55'W'55
56'X'56
57'Y'57
58'Z'58
59'['59
60'60
61']'61
62'^'62
63'_'63
64'`'64
65'a'65
66'b'66
67'c'67
68'd'68
69'e'69
70'f'70
71'g'71
72'h'72
73'i'73
74'j'74
75'k'75
76'l'76
77'm'77
78'n'78
79'o'79
80'p'80
81'q'81
82'r'82
83's'83
84't'84
85'u'85
86'v'86
87'w'87
88'x'88
89'y'89
90'z'90
91'{'91
92'|'92
93'}'93
94'~'94
95ASCII 17695
96ASCII 17796
97ASCII 17897
98ASCII 17998
99ASCII 18099
Code BASCII 181100
Code AASCII 182101
FNC1ASCII 183102
Start AASCII 184103
Start BASCII 185104
Start CASCII 186105
StopASCII 187106

Examples
Code 128A
To encode the data 'TESTIT' without the check digit manually, simply key in '[ASCII 184]TESTITm[ASCII 187]' and select the FontCode128H3.ttf font. The output is as follows :
The 'm' is the check character and its computation is illustrated in the next section below. [ASCII 184] is the start character of Code 128 A while [ASCII 187] is the stop character of Code 128 A.
Code 128BBarcode 128 excel font
To encode the data 'testit' without the check digit manually, simply key in '[ASCII 185]testit=[ASCII 187]' and select the FontCode128H3.ttf font. The output is as follows :
The '=' is the check character and it's computation is illustrated in the next section below. [ASCII 185] is the start character of Code 128 B while [ASCII 187] is the stop character of Code 128 B.
Code 128C
To encode the data '12345678' without the check digit manually, simply key in '[ASCII 186],BXnO[ASCII 186]' and select the FontCode128H3.ttf font. The output is as follows :
',' represents '12'
'B' represents '34'
'X' represents '56'
'n' represents '78'

Barcode 128 Excel Font

The 'O' is the check character and it's computation is illustrated in the next section below. [ASCII 186] is the start character of Code 128 C while [ASCII 187] is the stop character of Code 128 C.

How to compute the check digit

Code 128A

Barcode 128 Encoding


Data - TESTIT
Data to be EncodedTESTIT
Multiply each of the character (the Code 128 value) with an increasing weight.
Check Character Values523751524152
Weight*1*2*3*4*5*6
Sum :(52*1) + (37*2) + (51*3) + (52*4) + (41*5) + (52*6) = 1004
For Code 128A barcode, add 103 to the sum above
Total1004 + 103 = 1107
Check Character (Modulo 103) :1107 % 103 = 77 (which is represented by the character 'm')

Code 128B
Data - testit
Data to be EncodedTESTIT
Multiply each of the character (the Code 128 value) with an increasing weight.
Check Character Values846983847384
Weight*1*2*3*4*5*6
Sum :(84*1) + (69*2) + (83*3) + (84*4) + (73*5) + (84*6) = 1676
For Code 128B barcode, add 104 to the sum above
Total1676 + 104 = 1780
Check Character (Modulo 103) :1780 % 103 = 29 (which is represented by the character '=')

Barcode 128 Auto


Code 128C
Data - 12345678
Data to be Encoded12345678
Multiply each of the character (the Code 128 value) with an increasing weight.
Check Character Values12345678
Weight*1*2*3*4
Sum :(12*1) + (34*2) + (56*3) + (78*4) = 560
For Code 128C barcode, add 105 to the sum above
Total560 + 105 = 665
Check Character (Modulo 103) :665 % 103 = 47 (which is represented by the character 'O')

Back to Barcode Fonts.