在国家标准GB/T12904中,商品条形码(barc0def0rc0mm0dity)被定义为用于标识国际通用的商品代码的一种模块组合型条形码。
EAN/UPC码作为一种消费单元代码,被用于在全球范围内惟一标识一种商品。
一、UPC条形码
1970年,美国超级市场委员会制定了通用商品代码UPC码,它是世界上最早出现并投入应用的商品条形码,在北美地区得以广泛应用。美国统一编码委员会(UCC)于1973年建立了UPC条形码系统,并全面实现了该码制的标准化。UPC条形码成功地应用于商业流通领域中,对条形码的应用和普及起到了极大的推动作用。
UPC码在技术上与EAN码完全一致,它的编码方法也是模块组合法,也是定长、纯数字型条形码。UPC码有5种版本,常用的商品条形码版本为UPC—A码和UPC—E码。UPC—A码是标准的UPC通用商品条形码版本,UPC—E码为UPC—A的压缩版。
(一)UPC—A码
UPC—A码(表3)供人识读的数字代码只有12位,它的代码结构由厂商识别代码(6位,包括系统字符1位)、商品项目代码(5位)和校验码(1位)共三部分组成。
UPC—A码的代码结构中没有前缀码,它的系统字符为一位数字,用以标识商品类别。带有规则包装的商品,其系统字符一般为“0,6或7”。
UPC—A码有以下特点:
·每个字符是由两个条两个空共7个单位元素宽度组成,可用7位二进制数表示。
·被中间符分为左右两个部分,两侧编码的规则是不同的,左侧为奇,右侧为偶。奇表示条的元素宽度和是3或5,为奇数;偶表示条的元素宽度和是2或4,为偶数。
·起始符、终止符、中间符长于数字符。
·从空白区开始,由95+18共113个模块组成,每个模块长0.33mm,条形码符号共长113×0.33=37.29mm。
·校验码的产生:校验码=N×10_A的最小差值。其中N表示为10的N倍;A值的算法为:从国别码开始从左到右顺序取数(不包括校验码):
A=(偶数码值相加和)+(奇数码值相加和)×3例如表3中的条形码的校验码为“8”。
(二)UPC—E码
UPC—E码是UPC—A码的缩短版,是UPC—A码系统字符为0时,通过一定规则压缩而得到的。其编码方式是采用消零技术将UPC—A条形码实行整体压缩组成短码,只由国别号与产品号组成,以方便使用。
UPC—E条形码有如下特点:
·由6位数字码与起始符和终止符组成,无中间符。
·UPC—E条形码的6位数字码分为3位奇、3位偶,且它的排列方法取决于隐含着的将短码恢复成UPC—A条形码后所得校验码的值。
·只用于国别码为“0”的商品。
·起始符为101,终止符为010101。
二、EAN条形码
UPC码的使用成功促使了欧洲编码系统(EAN)的产生。EAN码是1977年欧共体按美国UPC条形码的标准制定的欧洲物品编码,到1981年,EAN已发展成为一个国际性的组织,且EAN码与UPC码兼容,两者表示的字符集都为数字0~9,字符的编码结构也相同,均采用4种元素制度,即每个条或空可以由1、2、3或4倍的元素宽度组成。
EAN码是国际物品编码协会在全球推广应用的商品条形码,EAN码是国际通用符号体系,是一种无含义、定长的纯数字型条形码,主要用于商品标识。在实际应用中,EAN码有两种版本,标准版和缩短版。标准版由13位数字组成,称为EAN—13码或长码;缩短版EAN码由8位数字组成,称为EAN—8码或者短码。
EAN码由前缀码、厂商识别码、商品项目代码和校验码组成。
前缀码是国际EAN组织标识各会员组织的代码,我国为690、691和692;厂商代码是EAN编码组织在EAN分配的前缀码的基础上分配给厂商的代码;商品项目代码由厂商自行编码;校验码用于校验代码的正确性。在编制商品项目代码时,厂商必须遵守商品编码的基本原则:对同一商品项目的商品必须编制相同的商品项目代码;对不同的商品项目必须编制不同的商品项目代码;保证商品项目与其标识代码一一对应,即一个商品项目只有一个代码,一个代码只标识一个商品项目。两种条形码的最后一位为校验位,由前面的12位或7位数字计算得出。两种版本的编码方式可参考国家标准GB—12094—1998。
(一)EAN条形码符号标准版——EAN—13码
1.基本结构
表示13位数字的EAN条形码(EAN—13)称为标准版的EAN条形码,EAN—13码是按照“模块组合法”进行编码的。它的符号结构由8部分组成。
2.编码规则
起始符:101。
中间分隔符:01010。
终止符:101。
表8A、B、C中的“0”和“1”分别表示具有一个模块宽度的“空”
和“条”。
因为左侧数据编码方式有两种,要按照前置码选其中一种。
3.EAN标准码的尺寸
长:全部37.29mm;条形码31.35mm。
高:数据符条形码22.85/23.18mm;起始符/分隔符/终止符24.50mm;全部26.26mm。
放大倍数:0.8~2.0。
4.EAN—13码的特点·结构类似于UPC—A条形码,国别号2~3位,厂商码4位,产品码5位,校验码1位。
·左面的第一个前缀数字不用条形码表示,此数字隐含了左侧数字不同的奇偶表示法。
·前6位采用左侧符规则,后6位采用右侧符规则。
·从空白区开始共95+18个模块,每个模块长0.33mm,条形码符号总宽度为113×0.33=37.29mm。
·起始符与终止符相同,均为两个细条(101),中间分隔符为01010。
·我国的EAN—13条形码国别代码已经开通使用的有690~692。
5.数字含义
EAN—13码由13位数字组成。根据EAN规范,这13位数字分别赋予了不同的含义。
厂商识别代码由7~9位数字组成,用于对厂商的惟一标识。
厂商代码是各国的EAN编码组织在EAN分配的成员前缀码(X13,X12,X11)的基础上分配给厂商的代码。前缀码是标识EAN所属成员的代码,由EAN统一管理和分配,以确保前缀码在国际范围内的惟一性。商品项目代码由3~5位数字组成,用以标识商品的代码。
商品项目代码由厂商自行编码。在编制商品项目代码时,厂商必须遵守商品编码的基本原则:对同一商品项目的商品必须编制相同的商品项目代码;对不同的商品项目必须编制不同的商品项目代码;保证商品项目与其标识代码一一对应,即一个商品项目只有一个代码,一个代码只标识一个商品项目。校验码用以校验代码的正误,由一位数字组成。
校验码是根据条形码字符的数值按一定的数学算法计算得出的,计算的步骤如下:
·从序号2开始,将所有偶数位的数字代码求和,得出S1;·S1×3=S2;·从序号3开始,将所有奇数位的数字求和,得出S3;·S3+S2=S4;·C=10_S4,得到校验码C的值。并且当S4的个位数为0时,C=0。
中国(不包括台湾、香港和澳门地区)于1991年加入了国际物品编码协会,EAN分配给中国内地的前缀码是690~692。
以690、691为前缀码的EAN—13码只能分别对10000个制造厂商进行编码(因为制造厂商代码只有4位,制造厂商代码只能从0000~9999这一万组数字中进行分配)。每一个制造厂商可以对自己生产的10万种商品进行编码(因为产品代码为5位,可以在00000~99999这10万组数字中进行分配)。
在这种结构的代码中,厂商识别代码由7位调整为8位,相应地制造厂商识别代码的容量就由1万家扩大到10万家;商品项目的识别代码由5位调整为4位,每个厂商就只能对自己生产的1万种商品进行编码。
如听装健力宝饮料的条形码为6901010101098,其中690代表我国EAN组织,1010代表广东健力宝公司,10109是听装饮料的商品代码。这样的编码方式就保证了无论在何时何地,6901010101098就惟一对应该种商品。
另外,图书和期刊作为特殊的商品也采用了EAN—13表示ISBN和ISSN。前缀977被用于期刊号ISSN,图书号ISBN用978为前缀,我国被分配使用7开头的ISBN号,因此我国出版社出版的图书上的条形码全部为9787开头。
(二)EAN条形码符号压缩版——EAN—8码
1.基本结构
EAN—8码是EAN—13码的压缩版,由8位数字组成,用于包装面积较小的商品上。与EAN—13码相比,EAN—8码没有制造厂商代码,仅有前缀码、商品项目代码和校验码。
EAN—8码的结构。
2.EAN缩短码的尺寸
长:条形码22.11mm;全部26.73mm。
高:数据符条形码18.23/18.56mm;起始符/分隔符/终止符19.88mm;全部21.64mm。
放大倍数:0.8~2.0。
在EAN标准版中,前置符不用条形码符表示。在缩短版中,前置符包括在左侧数据符中,用条形码符表示,并且左侧数据符均用A组编码规则,右侧数据符均用B组编码规则。
在中国,凡需使用EAN—8码的商品生产厂家,需将本企业欲使用EAN—8码的商品目录及其外包装(或设计稿)报至中国物品编码中心或其分支机构,由中国物品编码中心统一赋码。
3.EAN—8码的特点
·由8位数据字符组成,前2位为国别码,后5位为产品码,最后1位是校验码。
·从空白区开始共有67+14个模块,每个模块为0.33mm,所以EAN—8码符号总宽度为81×0.33=26.73mm。
·其8位数据被中间符分为左右各4个数字,左右两侧编码规则与EAN—13条形码相同。
(三)校验码计算方法
标准版和缩短版的校验码计算方法相同。计算步骤如下:
·从代码位置序号2开始,所有偶数位的数字代码求和为a1。
·将a1乘以3为a2。
·从代码位置序号3开始,所有奇数位的数字代码求和为b。
·将a2和b相加为c。
·取c的个位数d。
·用10减去d即为校验位数值。
(四)EAN128码。
EAN128码是由国际物品编码协会和美国统一代码委员会联合开发,共同采用的一种特定的条形码符号。它是一种连续型、非定长、有含义的高密度代码,用于表示生产日期、批号、数量、规格、保质期、收货地等更多的商品信息。
21C0de30f9(39码)
39码的特点:
·每一字符由5个条和4个空共9个元素组成,字符之间有位空。
·能表示数字、字母和其他一些符号共44个字符:0~9,A~Z,_、·、space、*、S、/、+、%。
·每一字符是由2个宽条、3个窄条、1个宽空、3个窄空组成,是具有两种元素的代码。
·通常用“*”号作为起始、终止符,校验码不用。
·宽元素二进制逻辑值为“1”,窄元素的逻辑值为“0”;宽窄元素的宽度比值A的范围为:2/15A53/1;代码密度介于3~9.4个字符/25.4mm(1英寸)。
·空白区是窄条的10倍。
·条形码的长度是可变化的。
·具有自检功能,用于工业、图书以及票证自动化管理上。
39码是Intermec公司于1975年推出的一种条形码,它可表示数字、英文字母以及_、·、S、/、+、%、(空格)和*共44个符号,其中“*”仅作为起始符和终止符。
39码且有编码规则简单、误码率低、所能表示字符个数多等特点,因此在各个领域有着极为广泛的应用,主要用于工业、图书及票证的自动化管理。我国也制定了相应的国家标准(GB12908—1991)。
39码仅有两种单元宽度——分别为宽单元和窄单元。宽单元的宽度为窄单元的1~3倍,一般多选用2倍、2.5倍或3倍。39码的每一个条形码字符由9个单元组成,其中有3个宽单元,其余是窄单元,因此称为39码。
22C0de93码
C0de93码与39码具有相同的字符集,但它的密度要比39码高,所以在面积不足的情况下,可以用93码代替39码。
93码有如下特点:
·符号由两侧静区、起始符、数据字符、校验符和终止符组成。
·每个字符均由3条3空共9个元素宽度组成,每个元素可以是1、2、3或4倍的单位元素宽度。
·条形码的起始符为“□”,其二进制码为101011110;终止符在起始符后加1个条,即“□|”。
23C0de128码
C0de128码的特点:
·表示高密度数据,字符串。
·字符串可变长。
·符号内含校验码。
·有三种不同版本:A、B和C。
·可用128个字符分别在A、B或C三个字符串集合中。
·用于工业、仓库、零售批发等管理。
C0de128码可表示从ASCII0到ASCII127共128个字符,故称128码。
24C0dabar(库德巴条形码)
库德巴条形码的特点:
·可表示数字0~9,字符S、_、:、/、·、+,还有只能用做起始/终止符的A、B、C、D四个字符,可任意组合。
·可变长度。
·没有校验位。
·空白区比窄条宽10倍。
·非连续性条形码,每个字符表示为4条3空。
·广泛应用于物料管理、图书馆、血站和当前的机场包裹发送。
25Interleaved2—0f—5(I20f5)
I20f5的特点:
·只能表示数字0~9。
·可变长度。
·连续性条形码,所有条与空都表示代码,第一个数字由条开始,第二个数字由空组成。
·空白区比窄条宽10倍。
·应用于商品批发、仓库、机场、生产/包装识别及工业管理。
·条形码的识读率高,适用于固定扫描器可靠扫描。
·在所有一维条形码中的密度最高。
26Industrial25码
Industrial25码只能表示数字,有两种单元宽度。每个条形码字符由5个条组成,其中2个宽条,其余为窄条。这种条形码的空不表示信息,只用来分隔条,一般取与窄条相同的宽度。符号的起始符为110,终止符为101。Industrial25码字符二进制表示法如表。
27Interleaved25码(交叉25码)
交叉25码是一种条和空都表示信息的条形码,交叉25码有两种单元宽度,每一个条形码字符由5个单元组成,其中2个宽单元,3个窄单元。在一个交叉25码符号中,组成条形码符号的字符个数为偶数,当字符个数是奇数时,应在左侧补0变为偶数。
条形码字符从左到右,奇数位置字符用条表示,偶数位字符用空表示。
交叉25码的字符集包括数字0~9。
28Matrix25码(矩阵25码)
矩阵25码只能表示数字0~9。
29用条形码特征对照表
30常用条形码符号
31二维条形码的定义