一维条形码 code128 的全面介绍

Code128条形码:一种高密度、全字符集的一维条码 根据实心模块和空心模块的排列组合方式,Code128 条形码可以表示 107 个字符,其中 103 个字符是可打印的 ASCII 字符,另外还有 4 个特殊的字符用于开始、停止和检验码。Code128 条形码是一种高密度、高可靠性、全字符集的一维条码,它能够表示所有的 ASCII 字符,包括数字、大小写字母、符号和控制字符等等。总之,Code128 条形码作为一种高密度、全字符集的一维条码,具有高可靠性、安全性强等优点,在各种行业中得到了广泛的应用。Code128条形码:一种高密度、全字符集的一维条码。 阅读详情
AI摘要

本文详细介绍了Code128条形码的编码格式,包括Code128A、B、C及Auto四种字符集,解析了条形码的读取规则和结构,并探讨了如何通过JavaScript生成条码。此外,还提供了在线生成条码的资源链接。

0:code128,编码格式:


Code128A字符集 包括大写字母、数字、常用标点符号和一些控制符。

Code128B字符集 包括大小写字母、数字、常用标点符号。

Code128C字符集 为纯数字序列。

Code128Auto 是将上述三种字符集最佳优化组合。


1:Code128编码规则:开始位 + [FNC1(为EAN128码时加)] + 数据位 + 检验位 + 结束位


2:条形码如何读取:

请看下面的图:

Code128条形码
从左往右是黑白相间的条形码,黑的叫“条”(B),白的叫“空”(S)。
如果你仔细看,条和空都有4种不同的宽度。我们将它从细到粗赋予1、2、3、4这几个值。
然后我们开始按照粗细的值来阅读条码、结果如下:
211232231131221213131222212222221224121213121211321132331112
注意这个结果是黑白相间的。别只顾着读“条”忘了都空。这边总共有61位。
Code128码有一个头一个尾。
尾总是2331112,这代表Code128已经结束。其余的部分是6位为一个块,包括头。
头有3种:A)211412 B)211214 C)211232 。这分别表示此Code128是什么类型的。(ABC其中一种)
我们将我们读出来的码,去掉头和尾,重新分一次块:
231131 | 221213 | 131222 | 212222 | 221224 | 121213 | 121211 | 32113
正好是6位为一块。其中最后一个块(除去尾段)是校验位,用于检查该条形码是否被正确编码。
然后,我们有一个字符表。(应该说是我有这张表)这张字符对应各个编号是表示的什么。
我们这个是Code128C型。C型码是纯数字的,每个块对应2位数字。
查表可得 50 09 05 00 01 91 91 。
有了这些知识,我们就可以尝试去写一个程序去生成条形码和识别条形码。
其实生成是比较简单的,而识别就比较麻烦了。通常超市是使用条码枪,通过光学原理来条码识别的,因为黑白条纹的反光特性不一样。
要是用软件对图像进行识别,会有些麻烦。但是,这正是我们要做的。

3:生成条码:

可以通过js来生成条码,这里面可以制定是A,B,C 哪一种 http://blog.youkuaiyun.com/rodulf/article/details/51276889

也可以通过在线生成:http://www.qinms.com/webapp/barcode/index.aspx


4:两种生成条码的方法是使用的不同的算法的:

例如:


通过js 来生成的:



通过js生成的:




Code128编码表:

ID

Code128A

Code128B

Code128C

BandCode

编码值

0

SP 

SP

0

212222

bbsbbssbbss

1

!

!

1

222122

bbssbbsbbss

2

"

"

2

222221

bbssbbssbbs

3

#

#

3

121223

bssbssbbsss

4

$

$

4

121322

bssbsssbbss

5

%

%

5

131222

bsssbssbbss

6

&

&

6

122213

bssbbssbsss

7

'

'

7

122312

bssbbsssbss

8

(

(

8

132212

bsssbbssbss

9

)

)

9

221213

bbssbssbsss

10

*

*

10

221312

bbssbsssbss

11

+

+

11

231212

bbsssbssbss

12

,

,

12

112232

bsbbssbbbss

13

-

-

13

122132

bssbbsbbbss

14

.

.

14

122231

bssbbssbbbs

15

/

/

15

113222

bsbbbssbbss

16

0

0

16

123122

bssbbbsbbss

17

1

1

17

123221

bssbbbssbbs

18

2

2

18

223211

bbssbbbssbs

19

3

3

19

221132

bbssbsbbbss

20

4

4

20

221231

bbssbssbbbs

21

5

5

21

213212

bbsbbbssbss

22

6

6

22

223112

bbssbbbsbss

23

7

7

23

312131

bbbsbbsbbbs

24

8

8

24

311222

bbbsbssbbss

25

9

9

25

321122

bbbssbsbbss

26

:

:

26

321221

bbbssbssbbs

27

;

;

27

312212

bbbsbbssbss

28

< 

< 

28

322112

bbbssbbsbss

29

=

=

29

322211

bbbssbbssbs

30

> 

> 

30

212123

bbsbbsbbsss

31

?

?

31

212321

bbsbbsssbbs

32

@

@

32

232121

bbsssbbsbbs

33

A

A

33

111323

bsbsssbbsss

34

B

B

34

131123

bsssbsbbsss

35

C

C

35

131321

bsssbsssbbs

36

D

D

36

112313

bsbbsssbsss

37

E

E

37

132113

bsssbbsbsss

38

F

F

38

132311

bsssbbsssbs

39

G

G

39

211313

bbsbsssbsss

40

H

H

40

231113

bbsssbsbsss

41

I

I

41

231311

bbsssbsssbs

42

J

J

42

112133

bsbbsbbbsss

43

K

K

43

112331

bsbbsssbbbs

44

L

L

44

132131

bsssbbsbbbs

45

M

M

45

113123

bsbbbsbbsss

46

N

N

46

113321

bsbbbsssbbs

47

O

O

47

133121

bsssbbbsbbs

48

P

P

48

313121

bbbsbbbsbbs

49

Q

Q

49

211331

bbsbsssbbbs

50

R

R

50

231131

bbsssbsbbbs

51

S

S

51

213113

bbsbbbsbsss

52

T

T

52

213311

bbsbbbsssbs

53

U

U

53

213131

bbsbbbsbbbs

54

V

V

54

311123

bbbsbsbbsss

55

W

W

55

311321

bbbsbsssbbs

56

X

X

56

331121

bbbsssbsbbs

57

Y

Y

57

312113

bbbsbbsbsss

58

Z

Z

58

312311

bbbsbbsssbs

59

[

[

59

332111

bbbsssbbsbs

60

\

\

60

314111

bbbsbbbbsbs

61

]

]

61

221411

bbssbssssbs

62

^

^

62

431111

bbbbsssbsbs

63

_

_

63

111224

bsbssbbssss

64

NUL

`

64

111422

bsbssssbbss

65

SOH

a

65

121124

bssbsbbssss

66

STX

b

66

121421

bssbssssbbs

67

ETX

c

67

141122

bssssbsbbss

68

EOT

d

68

141221

bssssbssbbs

69

ENQ

e

69

112214

bsbbssbssss

70

ACK

f

70

112412

bsbbssssbss

71

BEL

g

71

122114

bssbbsbssss

72

BS

h

72

122411

bssbbssssbs

73

HT

i

73

142112

bssssbbsbss

74

LF

j

74

142211

bssssbbssbs

75

VT

k

75

241211

bbssssbssbs

76

FF

I

76

221114

bbssbsbssss

77

CR

m

77

413111

bbbbsbbbsbs

78

SO

n

78

241112

bbssssbsbss

79

SI

o

79

134111

bsssbbbbsbs

80

DLE

p

80

111242

bsbssbbbbss

81

DC1

q

81

121142

bssbsbbbbss

82

DC2

r

82

121241

bssbssbbbbs

83

DC3

s

83

114212

bsbbbbssbss

84

DC4

t

84

124112

bssbbbbsbss

85

NAK

u

85

124211

bssbbbbssbs

86

SYN

v

86

411212

bbbbsbssbss

87

ETB

w

87

421112

bbbbssbsbss

88

CAN

x

88

421211

bbbbssbssbs

89

EM

y

89

212141

bbsbbsbbbbs

90

SUB

z

90

214121

bbsbbbbsbbs

91

ESC

{

91

412121

bbbbsbbsbbs

92

FS

|

92

111143

bsbsbbbbsss

93

GS

}

93

111341

bsbsssbbbbs

94

RS

~

94

131141

bsssbsbbbbs

95

US

DEL

95

114113

bsbbbbsbsss

96

FNC3

FNC3

96

114311

bsbbbbsssbs

97

FNC2

FNC2

97

411113

bbbbsbsbsss

98

SHIFT

SHIFT

98

411311

bbbbsbsssbs

99

CODEC

CODEC

99

113141

bsbbbsbbbbs

100

CODEB

FNC4

CODEB

114131

bsbbbbsbbbs

101

FNC4

CODEA

CODEA

311141

bbbsbsbbbbs

102

FNC1

FNC1

FNC1

411131

bbbbsbsbbbs

103

StartA

StartA

StartA

211412

bbsbssssbss

104

StartB

StartB

StartB

211214

bbsbssbssss

105

StartC

StartC

StartC

211232

bbsbssbbbss

106

Stop

Stop

Stop

2331112

bbsssbbbsbsbb



Code128A字符集 包括大写字母、数字、常用标点符号和一些控制符。

Code128B字符集 包括大小写字母、数字、常用标点符号。

Code128C字符集 为纯数字序列。
Code128条码生成与打印流程详解 Code128条码是广泛应用于物流、库存管理和工业自动化等领域的高密度条码标准。它能够表示所有128个ASCII字符,包括数字、大小写字母以及控制字符,尤其适用于需要编码大量信息的场景。其特点在于拥有较高的数据密度和较好的错误检测能力,相比于其他条码格式,Code128能以更短的长度编码更多的数据。Code128条码的三个子集A、B和C,为不同类型的编码需求提供了灵活性。每个子集使用一组独特的起始码,由不同的字符集组成。子集A包含大写字母、数字以及控制字符,常用于表示标准的ASCII字符集。 阅读详情

相关推荐

用Delphi自研一维条形码控件:从Code128原理到扫码枪实战

一维条形码是供应链、仓储和零售系统中不可或缺的数据载体,其本质是由宽度不一的条与空组成的模块序列。理解编码原理是正确实现的基础,例如Code128通过起始符、数据符和校验位计算模块串,而EAN-13则采用交替乘1和3的校验算法。掌握这些硬规则后,开发者可以基于VCL轻量封装自定义控件,避免商业控件在授权、兼容性上的困扰,同时确保扫码枪识别率。在实际工程中,静区宽度、模块尺寸、DPI换算等细节直接影响打印效果与扫描成功率。本文以Delphi为技术栈,完整拆解了一维条形码控件的设计思路与踩坑记录,适合进销存、门

weixin_31102231的博客 243

CODE 128条形码详细介绍

CODE 128 是由Computer Identics Corporation(美国)在1981年研制的。CODE 128条形码可以表示全部128个ASCII码字符(数字、字母的大、小写、符号和控制符)。由于可以表示所有电脑键盘上的字符(除了日语的日本汉字、平假名、片假名),因而是可以在电脑上方便应用的条形码。 CODE 128条码基本构成: 条码大小有4种。 用3个条和3个空(共六个单元)代表一个字符。 起始符有三种,"CODE-A"、"CODE-B"和"CODE-C"。起始符的类型决定..

sqxskj的博客 1万+

Delphi自绘一维条形码控件:Code128编码与打印实现

一维条形码是生产系统与物流标签中最常见的自动识别载体,其可读性取决于编码规则、模块宽度与静区设计。Code128因支持完整ASCII字符集和高密度编码,成为业务单据中最常用的码制之一。在Delphi环境中,通过编码表与条空模式算法自行实现条形码控件,能摆脱第三方组件的黑匣子依赖,并精确控制打印DPI换算、静区尺寸与条高,确保扫码枪首次识别率。实际工程中需掌握校验位计算、Code C切换、毫米转像素规则,并注意热敏纸与高密度场景的参数调整。该方案涵盖从编码实现到绘制与打印避坑的完整经验,适合需要构建稳定可靠标

weixin_30522983的博客 162

一维条形码Code128的编码与生成

近期疫情形势还是比较严峻的,在此向奋战在一线的医务工作者致敬!武汉加油,全国加油! 最近笔者接了一个项目需要生成条形码并给出配套的解码程序,研究了几个小时以后有了一定成果,记录一下@_@ Code128条码编码规则 CODE128条码应该来说是应用比较广泛的一类条码编码,由于其可以表示0~127的数据故称为Code128。事实上Code128分为3类:128A、128B、128C,其特性如下 ...

庸手著文章 1万+

Delphi自研一维条形码控件:Code 128/39/EAN-13编码绘制与打印实战

一维条形码是物流仓储与MES系统中数据采集的基础技术,常见码制包括Code 128、Code 39和EAN-13。本文从编码原理出发,解析各码制的字符集、校验位和模块序列生成方法,并结合Delphi的TCanvas绘制机制,讲解如何不依赖第三方库,自研轻量级条形码控件。通过设计编码层、绘制层与控件外观层分离的架构,实现屏幕预览、图片导出和打印机矢量输出的统一适配。同时介绍属性封装、设计期安装及批量标签打印的工程实践,并针对静区不足、模块过窄、DPI适配等常见扫码失败问题给出排查方案。适用于需要在Delphi

weixin_32932149的博客 359

javascript网页输出Code128条码

javascript实现页面输出Code128条码;div绘图模式;无需字体库; 使用方法: Barcode.create({options}).encode("string", type).tostring(); options: barWidth: 条码宽度,必须为1px的整数倍; barHeight:条码高度 type:"A" or "B" or "C" 可以不指定,则自动判断; 例:$('divid').innerHTML = Barcode.create().encode("1234567890abcdef").tostring(); 例: coder = Barcod

制作Code128B一维条形码的综合教程

制作Code128B一维条形码的综合教程Code128B的制作新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 Code128B的制作 你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用M

sdustzk的博客 2765

GS1-128条形码和相关的AI及FNC1的详解 v1.0

1 什么是GS1 4 2 为何叫GS1-128 5 3 GS1-128符号集的解释 6 3.1 GS1-128条码的格式 6 3.2 GS1-128和Code 128之间的联系与区别 8 4 AI的解释 8 5 FNC1的详细解释 15 5.1 FNC1是什么 15 5.2 第一个FNC1不应该传输出来 15 5.3 具体实现也可以用某个ASCII字符来表示第一个FNC1 16 5.4 FNC1被当做为GS的时候,应该传输出来 17 5.5 FNC1的总结 18 5.6 举例说明FNC1 18 6 引用文章 20 图表 图表 1 GS1-128格式-文字版 6 图表 2 GS1-128格式-表格版 7 图表 3 GS1-128条形码符号集的结构 7 图表 4 GS1-128 AI表 – 1/5 10 图表 5 GS1-128 AI表 – 2/5 11 图表 6 GS1-128 AI表 – 3/5 12 图表 7 GS1-128 AI表 – 4/5 13 图表 8 GS1-128 AI表 – 5/5 14 图表 9 GS1-128条形码符号集结构文字版 -FNC1 16

一维条形码CODE128编码及字符集CODE A、B、C解析

在进行一维条形码打印的编程中知道了条形码有一种类型是code128,也是比较常用的,具体的字符集有3种,分别为A、B、C,这三种的说明如下: A格式:数字、大写字母和控制字符组成的字符串,如ABC、ABC123 B格式:数字、大小写字母和字符组成的字符串,如Abc123、a-123(B) C格式:双位数字组成的字符串,如1234、00008182。 一般来说,如果条幅内容是大写英文字母,用

猪哥的专栏 2万+

基于VisionMaster的药丸外观缺陷机器视觉检测系统实战解析

机器视觉作为工业自动化的核心技术,通过图像采集与智能分析替代人眼,实现高精度、高效率的在线检测。其核心原理在于利用相机、镜头、光源等硬件获取目标图像,再通过图像处理算法提取特征并进行识别与判断。这项技术的核心价值在于能够大幅提升生产质量与效率,尤其在需要高速、高精度且重复性强的检测场景中优势显著。在制药、食品、电子等行业的表面缺陷检测、尺寸测量、字符识别等环节应用广泛。本文聚焦于制药行业的药丸外观缺陷检测这一具体应用,深入探讨了如何利用海康威视VisionMaster视觉平台,结合**Blob分析**与**

weixin_32903229的博客 313

php 一维码生成_php实现生成code128条形码的方法详解

本文实例讲述了php实现生成code128条形码的方法。分享给大家供大家参考,具体如下:效果图:class BarCode128 {const STARTA = 103;const STARTB = 104;const STARTC = 105;const STOP = 106;private $unit_width = 1; //单位宽度 缺省1个象素private $is_set_height...

weixin_33162074的博客 640

正点原子RK3588 Android 12镜像构建实战:从环境配置到烧录验证全指南

本文提供了一份基于正点原子RK3588开发板的Android 12镜像构建全流程实战指南。内容涵盖从Ubuntu环境配置、SDK获取、编译内核与系统,到最终镜像打包与烧录验证的完整步骤,并分享了内核驱动定制与系统优化技巧,旨在帮助开发者高效完成瑞芯微RK3588平台的系统定制工作。

grass的博客 811

java批量数字转条形码_Code128和Code39条形码的区别

无论是Code128条形码还是Code39条形码应用都是非常广泛,而且二者在条码生成器中制作方法也大致相同,那么Code128条形码和Code39条形码具体有什么区别呢?Code128条形码:Code128条形码是一种高密度的一维条码,可表示从ASCII0到ASCII127共128个字符(其中包含数字,字母,符号),故称128码。Code128码特点:1、可表示高密度数据和字符串;2、每个字符由3...

weixin_29607511的博客 1004

滴滴数据分析80道面试题及参考答案

常见的模型评价指标有准确率、召回率、F1 值、均方误差、均方根误差、R 方等。准确率是指模型预测正确的样本数占总样本数的比例,它反映了模型预测的准确性。召回率是指模型预测为正例的样本中实际为正例的比例,它衡量了模型对正例的捕捉能力。F1 值是准确率和召回率的调和平均数,综合考虑了两者的平衡。均方误差是预测值与真实值之差的平方的平均值,它衡量了模型预测值与真实值的平均偏离程度。均方根误差是均方误差的平方根,与均方误差类似,但更直观地反映了误差的大小。

大模型大数据攻城狮的专栏 1698

支付宝个人年度账单爬虫实战:从扫码登录到数据解析的全链路解析

作为一名数据爱好者或量化分析师,获取自己的支付宝年度账单不仅是对个人消费行为的深度复盘,更是实现"数据自主权"的第一步。print(f"{row['year']}年: 收入{row['total_income']:.2f} | 支出{row['total_expense']:.2f} | 结余{row['net_savings']:.2f}"){"category": "餐饮", "amount": 12000, "count": 345},"""打开登录页,等待用户扫码,返回Cookie字典"""

2201_76125261的博客 329

zbar 二维码和一维码

https://blog.youkuaiyun.com/kucoffee12/article/details/88900476

lbaihao的专栏 332

DLMS/COSEM协议的理解体会

DLMS是通信协议,COSEM是电表建模规范。HDLC帧基本格式为0x7e......

一个bug是bug,多个bug能work 8312

9、傅里叶变换:连续时间与离散时间信号分析的核心工具

本文深入探讨了傅里叶变换在连续时间和离散时间信号分析中的核心作用,详细介绍了连续时间傅里叶变换(CTFT)和离散时间傅里叶变换(DTFT)的定义、性质及其应用。文章涵盖了傅里叶级数到傅里叶变换的推导过程、常见变换对、系统分析中的关键性质,并讨论了采样后频谱的周期延拓与混叠问题。此外,还展示了傅里叶变换在滤波器设计、通信系统调制解调等实际场景中的应用,最后展望了其在图像处理、生物医学等领域的广阔前景。

jump7的博客 67

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

js-jquery-001-条形码概述

一、概述 百度百科   条形码(barcode)是将宽度不等的多个黑条和空白,按照一定的编码规则排列,用以表达一组信息的图形标识符。   通用商品条形码一般由前缀部分、制造厂商代码、商品代码和校验码组成。商品条形码中的 前缀码是用来标识国家或地区的代码,赋码权在国际物品编码协会,如 00-09代表美国、加拿大。45、49代表 日本。69代表中国大陆,471 代表中国台湾地区,489...

dilv4062的博客 1026

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Delphi代码实现一维条形码控件

Delphi代码实现一维条形码控件 去发现同类优质开源项目:https://gitcode.com/ 简介 本资源包含了一个支持Delphi 6版本的一维条形码控件压缩文件,它能够无需任何插件即可实现一维条形码的生成功能。该控件支持包括Code39、Code128在内的几乎所有格式的一维码,并提供条形码生成后的打印功能。 特点 支持Delphi 6版本 无需插件即可使用 支持多种一维码格式,包括...

gitblog_06755的博客 338

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Delphi代码实现一维条形码控件:项目的核心功能/场景

Delphi代码实现一维条形码控件:项目的核心功能/场景 去发现同类优质开源项目:https://gitcode.com/ Delphi环境下的一维条形码控件,助力高效生成多种格式条码。 项目介绍 在现代软件开发中,一维条形码的生成与打印是许多应用场景中不可或缺的功能。Delphi代码实现一维条形码控件,正是为了满足这一需求而诞生。该项目是一个开源资源,提供了一种简单、高效的方法来生成一维条形码,...

gitblog_06776的博客 1033

在 PDF 文档中创建一维条形码-MESCIUS GcPDF

.NET PDF 组件中的一维条码创建是指通过 .NET 应用程序直接在 PDF 文档中生成线性条码(例如 Code 39、Code 128 或 EAN-13)的功能。此功能允许开发人员将条码生成集成到标签、库存跟踪和文档索引等任务的自动化工作流程中。通过将机器可读数据嵌入 PDF,它可以提高数据准确性,加快扫描速度,并支持与后端系统的无缝集成,而无需外部条码工具或库。

控件与插件之大全 307
上一篇: js 生成一维码(条形码)
下一篇: mysql 主主互备
千雅爸爸
博客等级 码龄18年 292粉丝 639原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值