Code 128 条码生成器

输入零件号、批号或货位,这个 Code 128 条码生成器画出最短的条码,列出每个符号和校验符,并把条宽对齐到标签打印机的点阵。

  • 最短码集,或指定 A、B、C
  • 算出校验符
  • Tab、回车和 FNC1
  • SVG、PDF、EPS 和 PNG

Code 128 条码生成器

条码

支持字母、数字和符号(ASCII),最多 80 个字符。

插入
Code 128

条码预览会显示在这里。

放到标签上
  • 可免费商用
  • 无需注册
  • 没有水印
  • 全部在浏览器中完成

这个条码是怎么组成的

14 个符号 · 含静区 176 个模块

  • Start B104
  • P48
  • A33
  • C35
  • K43
  • -13
  • A33
  • I41
  • -13
  • Code C99
  • 2020
  • 2626
  • 校验54
  • 终止106
  • A 码集:大写、数字、控制字符
  • B 码集:大写、小写、数字
  • C 码集:每个符号两位数字

各码集的宽度

码集符号数宽度
自动(最短)当前1458.1 mm
只用 A 码集1561.7 mm
只用 B 码集1561.7 mm
只用 C 码集不适合这段数据

校验符的计算

符号码集值权重值 × 权重
Start BB1041104
PB48148
AB33266
CB353105
KB434172
-B13565
AB336198
IB417287
-B138104
Code CB999891
20C2010200
26C2611286

和为 2526。2526 mod 103 = 54:校验符的值是 54。

尺寸

模块 0.33 mm(13 mil)

mm

样式

条码颜色
#
背景颜色
#

可商用,不用注册,没有水印。

种条空图案,下面的值表全部列出
107
A、B、C,自动组合成最短的条码
3 个码集
dpi:条宽取整到整数个点
203 到 600
SVG、PDF、EPS 和 300 dpi 以上的 PNG
4 种文件

怎样做 Code 128 条码

三步从数据走到一扫就通过的条码。

要编码的数据

LOT42{TAB}QTY12{CR}
插入{TAB}{CR}{LF}{FNC1}

把道理讲清楚的 Code 128 条码生成器

每个条码都附带原因:每一段用哪个码集,校验符怎么加出来,条宽怎样对上你的打印机。

  • Start B
  • S
  • K
  • U
  • -
  • Code C
  • 20
  • 26
  • 10
  • 31
  • Code B
  • -
  • A
  • 校验 57
  • 终止
  • A 码集:大写、数字、控制字符
  • B 码集:大写、小写、数字
  • C 码集:每个符号两位数字

每个码集都上了颜色

预览下方,每个符号按它的码集着色:A、B 或 C。哪里为一串数字切到 C 码集、哪里切回来,省了几个符号,一眼就能看到。

B 码集的 PACK

符号值权重值 × 权重
Start B1041104
P48148
A33266
C353105
K434172

和为 495。495 mod 103 = 83:校验符的值是 83。

校验符的计算

表里逐个列出符号、值、权重和乘积,再给出总和与总和 mod 103。边输入边更新,用的就是条码里实际的值。

  • Start A
  • L
  • O
  • T
  • 4
  • 2
  • HT
  • Q
  • T
  • Y
  • 1
  • 2
  • CR
  • 校验 67
  • 终止

设成键盘模式的扫码枪会输入:

LOT42 ⇥ QTY12 ⏎

能扫出来的 Tab、回车和 FNC1

设成键盘模式的扫码枪会按条码输入 Tab 或回车,扫一次就填好一张表。FNC1 用来结束 GS1 的变长字段。每个都是一个按钮,附一句白话说明。

选的模块宽:0.33 mm(13 mil)

打印机(dpi)每个模块的点数模块宽
203 dpi30.375 mm · 14.8 mil
300 dpi40.339 mm · 13.3 mil
600 dpi80.339 mm · 13.3 mil

条宽对齐你的打印机

热敏标签打印机按整数个点打印。选 203、300 或 600 dpi,每个模块都取整到整数个点,每根条打出来宽度一样;模块宽同时显示毫米和 mil。

BIN-A01
BIN-A02
BIN-A03
BIN-A04
BIN-A05
BIN-A06

每张标签一个编号,模块宽都一样

整张流水号标签

点"放到标签上",条码按同样的模块宽交给标签制作器。那里可以递增编号或读一份清单,每张标签一个号,打在 Letter 或 A4 标签纸上。

(00)106141411234567897
  • Start C
  • FNC1
  • 00
  • 10
  • 61
  • 41
  • 41
  • 12
  • 34
  • 56
  • 78
  • 97
  • 校验 34
  • 终止

GS1-128:起始符后跟 FNC1,再是 (00) 和 18 位的 SSCC

GS1-128 也在这里

做物流标签时切到 GS1-128:在括号里输入应用标识符,校验位和日期会被检查,起始符后和字段之间自动加 FNC1。

Code 128 条码样例

这个生成器画的四个 Code 128 条码样例,按码集着色,附符号和校验符。

Pack-AI-2026

B 码集的文字

15 个符号 · Start B · 校验 58

文字:Pack-AI-2026

大写、小写和数字都在 B 码集,一个字符一个符号。

0123456789

C 码集压缩的数字

8 个符号 · Start C · 校验 73

数字:0123456789

十位数字在 C 码集两位一组:五个数据符号。

PO-55871234-A

字母加数字:B,再 C,再 B

14 个符号 · Start B · 校验 34

混合:PO-55871234-A

字母用 B 码集,八位数字用 C 码集,再回到 B。

sku-red-xl

B 码集的小写字母

13 个符号 · Start B · 校验 98

小写:sku-red-xl

小写字母在 B 码集,这个条码一直不用切换。

什么是 Code 128?

Code 128 是一种一维条码,能装下全部 128 个 ASCII 字符:大写、小写、数字、标点和控制字符。它在这样大的字符范围里仍然很紧凑,所以仓库、快递、实验室和工厂凡是编码里既有字母又有数字的地方都用它。

从左到右依次是静区、起始符、数据、校验符、终止符和另一侧的静区。每个符号 11 个模块宽,由 3 条 3 空组成,每条每空 1 到 4 个模块;终止符连同最后一条共 13 个模块。两侧静区各 10 个模块。

每个符号总是 11 个模块,所以条码的宽度直接由符号数和你选的模块宽决定:这个生成器把两者都标出来。

静区
起始
数据
校验
终止
静区

每个符号 11 个模块宽,3 条 3 空;终止符 13 个模块

Code 128 的 A、B、C 三个码集

它有三个码集,共用同样的 107 种图案。A 码集有大写字母、数字、标点和 Tab、回车这样的控制字符;B 码集有大写、小写、数字和标点;C 码集每个符号装两位数字,00 到 99。

条码可以从任何一个码集开始,用 Code A、Code B、Code C 符号切换,或者在 A、B 之间用 Shift 临时换一个字符。一串数字在开头或结尾有四位以上、在中间有六位以上时,切到 C 码集才划算。比如 X00Y 留在 B 码集共 7 个符号;098x1234567y23 中间的数字用 C 码集,共 16 个符号。

这个生成器的"自动"每次都为你的数据算出最短的组合,宽度表则显示只用一个码集要多占多少。

X00Y7 个符号 · 含静区 99 个模块

  • Start B
  • X
  • 0
  • 0
  • Y
  • 校验 56
  • 终止

098x1234567y2316 个符号 · 含静区 198 个模块

  • Start B
  • 0
  • 9
  • 8
  • x
  • 1
  • Code C
  • 23
  • 45
  • 67
  • Code B
  • y
  • 2
  • 3
  • 校验 101
  • 终止
  • A 码集:大写、数字、控制字符
  • B 码集:大写、小写、数字
  • C 码集:每个符号两位数字

Code 128 校验符怎么算

校验符是加权和 mod 103。取起始符的值,加上后面每个符号的值乘以它的位置(起始符后的第一个符号位置是 1),再除以 103:余数就是校验符的值,印在终止符前面。

以 A 码集的 PJJ123C 为例:起始 103,加上 48 × 1、42 × 2、42 × 3、17 × 4、18 × 5、19 × 6 和 35 × 7,总和 878,878 mod 103 等于 54。扫码枪做同样的加法,校验符对得上才读出,这样就能发现读错的条。

校验符只在条里。扫码枪不输出它,条码下面的文字也只印你的数据。

A 码集的 PJJ123C

符号值权重值 × 权重
Start A1031103
P48148
J42284
J423126
117468
218590
3196114
C357245

和为 878。878 mod 103 = 54:校验符的值是 54。

Code 128 值表

全部 107 个值在 A、B、C 码集里的含义,以及条和空的宽度。0 到 95 是 A、B 码集的字符,0 到 99 是 C 码集的两位数字,96 到 102 是 A、B 码集的功能字符(C 码集是 100 到 102),103 到 105 是三个起始符,106 是终止符。

Code 128 的值 0 到 106 在 A、B、C 码集里的含义
值A 码集B 码集C 码集条和空
0SPSP00212222
1!!01222122
2""02222221
3##03121223
4$$04121322
5%%05131222
6&&06122213
7''07122312
8((08132212
9))09221213
10**10221312
11++11231212
12,,12112232
13--13122132
14..14122231
15//15113222
160016123122
171117123221
182218223211
193319221132
204420221231
215521213212
226622223112
237723312131
248824311222
259925321122
26::26321221
27;;27312212
28<<28322112
29==29322211
30>>30212123
31??31212321
32@@32232121
33AA33111323
34BB34131123
35CC35131321
36DD36112313
37EE37132113
38FF38132311
39GG39211313
40HH40231113
41II41231311
42JJ42112133
43KK43112331
44LL44132131
45MM45113123
46NN46113321
47OO47133121
48PP48313121
49QQ49211331
50RR50231131
51SS51213113
52TT52213311
53UU53213131
54VV54311123
55WW55311321
56XX56331121
57YY57312113
58ZZ58312311
59[[59332111
60\\60314111
61]]61221411
62^^62431111
63__63111224
64NUL`64111422
65SOHa65121124
66STXb66121421
67ETXc67141122
68EOTd68141221
69ENQe69112214
70ACKf70112412
71BELg71122114
72BSh72122411
73HTi73142112
74LFj74142211
75VTk75241211
76FFl76221114
77CRm77413111
78SOn78241112
79SIo79134111
80DLEp80111242
81DC1q81121142
82DC2r82121241
83DC3s83114212
84DC4t84124112
85NAKu85124211
86SYNv86411212
87ETBw87421112
88CANx88421211
89EMy89212141
90SUBz90214121
91ESC{91412121
92FS|92111143
93GS}93111341
94RS~94131141
95USDEL95114113
96FNC3FNC396114311
97FNC2FNC297411113
98Shift BShift A98411311
99Code CCode C99113141
100Code BFNC4Code B114131
101FNC4Code ACode A311141
102FNC1FNC1FNC1411131
103Start AStart AStart A211412
104Start BStart BStart B211214
105Start CStart CStart C211232
106StopStopStop2331112

Code 128 和 GS1-128

GS1-128 就是按 GS1 规则使用的同一种条码:起始符后紧跟 FNC1,然后是应用标识符,比如 (00) 是 SSCC,(01) 是 GTIN,(10) 是批号,(17) 是有效期。变长字段后面还有字段时,以一个 FNC1 结束,扫码枪把它输出为 GS 字符。

GS1 对物流标签的规定:数据最多 48 个字符,连同静区宽度不超过 165.10 mm,模块宽从 0.495 mm 起。自己的零件号、货位和资产用普通的这种条码就好;在公司之间流转的纸箱和托盘,用 GS1-128。

怎样设尺寸并打印 Code 128 条码

模块是最窄的条,它决定整个条码的大小。多数标签用 0.25 到 0.5 mm;0.33 mm 约等于 13 mil。低于 7.5 mil 时很多扫码枪读不好,生成器会提醒。

203 dpi 的热敏打印机每个点 0.125 mm,所以 0.33 mm 的模块会变成 3 个点,0.375 mm。在生成器里选上打印机,打印前模块就取整到整数个点,每根条宽度一致。两侧各留 10 个模块的静区,条高至少 6.35 mm,或条码长度的 15%,取较大的一个。

在 Word 或 Excel 里用这种条码的字体,要用公式补上起始符、校验符和终止符。这个生成器导出的 PNG 或 SVG 已经包含它们:像普通图片一样按 100% 插入即可。

模块宽mil203 dpi300 dpi600 dpi
0.25 mm9.82 点 · 0.25 mm3 点 · 0.254 mm6 点 · 0.254 mm
0.33 mm133 点 · 0.375 mm4 点 · 0.339 mm8 点 · 0.339 mm
0.5 mm19.74 点 · 0.5 mm6 点 · 0.508 mm12 点 · 0.508 mm

取整到整数个点,每根条打出来宽度一样。两侧各留 10 个模块的空白。

谁在用这个 Code 128 条码生成器

零售商品之外,最常用的就是这种条码:零件、地点、纸箱和样品。

发货和收货

纸箱和托盘标签用 GS1-128 承载 SSCC,这是供应商、承运商和门店之间通用的物流标签标准。

仓库和库房

BIN-A01-03 这样的货位、货架和库位标签字母数字混排,编成条码只要很少的符号。

资产和工具管理

笔记本电脑、工具和治具贴上条码资产标签,任何扫码枪和大多数手机应用都能读。

实验室和生产

样品管、批次和工单贴上带日期和流水号的条码,用热敏打印机成卷打印。

Code 128 条码生成器常见问题

打印 Code 128 之前大家常问的问题。

打开 Code 128 条码生成器

这个 Code 128 条码生成器免费吗?

免费。每个 Code 128 和 GS1-128 条码都可以免费制作,下载 SVG、PDF、EPS 或 PNG,可商用,不用注册,没有水印。

这种条码能装哪些字符?

全部 128 个 ASCII 字符:大写、小写、数字、标点和 Tab、回车这样的控制字符,另有用于 GS1 数据的功能字符 FNC1。

Code 128 条码能有多长?

标准没有固定长度;每多一个字符(或 C 码集的两位数字)宽度增加 11 个模块,实际长度由你的标签决定。GS1-128 最多 48 个数据字符。

Code 128 的 A、B、C 有什么区别?

它们是同一种条码的三个码集。A 有大写、数字和控制字符,B 有大写、小写和数字,C 每个符号装两位数字。自动会把它们组合成最短的条码。

扫码枪会读出校验符吗?

会核对,但不输出。扫码枪做同样的加权和 mod 103,对上了就只把你的数据发出来。

打印前能看到 Code 128 条码样例吗?

能:预览就是实际尺寸的真实条码,本页的样例也展示了文字、数字、混合和小写四种情况及它们的校验符。

物流标签用 Code 128 还是 GS1-128?

发给客户或承运商的纸箱和托盘用 GS1-128:它承载 SSCC 等对方要读的应用标识符。自己的货位、零件和资产用不带 GS1 规则的普通条码。

标签打印机该用多宽的模块?

在生成器里选上打印机的 dpi,模块会取整到整数个点:0.33 mm 的模块在 203 dpi 下是 3 个点(0.375 mm)。保持 7.5 mil 以上,扫起来最稳。

能做一整张带流水号的条码标签吗?

能。点"放到标签上",标签制作器按同样的模块宽放好条码,递增编号或读你的清单,每张标签一个号,打在 Letter 或 A4 标签纸上。

现在就做你的 Code 128 条码

输入数据,用自动得到最短的条码,下载按你的打印机取整的条码,附校验符。