商品的条形码的前缀部分代表的是其生产地区,销售地区,还是有其他的含义呢?

商品的条形码的前缀部分代表的是其生产地区,销售地区,还是有其他的含义呢?

最近正好对条形码很感兴趣,试着歪楼回答下这个问题,希望看完这个答案你可以把周围商品的条码直接目测读出,不用看下面的数字~~

发现百度百科解释的还是比较清楚的,也可参考:http://baike.baidu.com/view/69679.htm?subLemmaId=69679&fromenter=EAN13

现在我们通常见到的条形码是EAN-13(European Article Number,欧洲物品编码),共13位组成。其中前3位是国家代码,中间4位是生产商代码,后5位是产品代码,最后一位是校验码。前3位的国家代码中690到695为中国,977到979为为期刊、书籍。因此正常情况下,条码的开头不是6就是9。详细的国家代码如下:https://en.wikipedia.org/wiki/List_of_GS1_country_codes

先说下如何根据前12位数字得到最后一位的校验码。首先EAN中每一位的权重为3或1,而不论EAN-8或是EAN-13都要保证最后一位的权重为3,其他位权重依次交换1和3。故EAN-13各位权重如下:

以692530371058为例计算校验码:

6*1+9*3+2*1+5*3+3*1+0*3+3*1+7*3+1*1+0*3+5*1+8*3=107

107除以10余数为7,再用10减去7为3,这样就得到了校验码为3。

这样,最后形成的码为6925303710583

如果没有余数,则校验码记0。

下面说数字的编译。得到的13位数字中分为三组:第1位单独为第一组,2-7位为第二组,8-13位为第三组。第1位并不编译成条纹状码,第二组与第三组编译成码,两组间有分隔符。条形码上分白条和黑条,白条反射,黑条吸收,分别对应0和1。白条和黑条按宽度分别有1个宽度(整个条码中最细)、2个宽度、3个宽度和4个宽度(整个条码中最粗),简记为1、2、3和4。每一位数字会被编译成两个白条和两个黑条相间共7个宽度的条码。因此目测条码时切记每位读出的条码总长为7宽度,如1321。数字编译时分别有L码、G码和R码三种方式。具体如下:

其中L码与R码互为反码,G码与R码互为镜像(顺序颠倒),因此只要记住一种编码两外两种也就出来了。

例如数字3按L码编译为1白4黑1白1黑;数字5按G码编译为1白3黑2白1黑;数字8按R码编译为1黑2白1黑3白。既然每个数字有三种编译方式,那么生成条码时如何确定采用何种码编译呢?下面会说。

最后就是整个条形码的生成了。整个条形码由左侧空白区、起始符、左侧数据符、中间分隔符、右侧数据符、校验符、终止符、右侧空白区。

起始符为1黑1白1黑,即条码一开始较长的部分;中间分隔符为1白1黑1白1黑1白(目测读码要注意这里与起始符和终止符不同,两边分别多了1白,不要被误读),为条码中间较长的部分;终止符与起始符一样,是条码最后较长的部分。

左侧数据符就是之前说的2-7位,右侧数据符和校验符对应8-13位。分隔符右侧的数字全部采用R码编译(R码的特点是黑白黑白,因此分隔符右侧的1白可以明显用眼睛看出从哪开始),分隔符左侧的6位数字采用的编码则和第1位数字有关,如下:

例如,如果第1位是6,则2-7位编码依次为LGGGLL。以之前的6925303710583为例,最终的条码为:

(101)(0001011)(0011011)(0111001)(0100001)(0001101)(0111101)(01010)(1000100)(1100110)(1110010)(1001110)(1001000)(1000010)(101)

效果如下:

这样就成功啦~~

当然在目测的时候,第1位必须由2-7位的LG码得排序方式得到,不过由于国内都是以6或9开头,读之前确定是书籍则9否则为6,这样就不需上表确定第1位了。

由于LGR码是一一对应的,所以目测的时候无需弄清是按何种方式的LG顺序排列,也可根据7个宽度条纹确定数字~这样你只需要知道LGR三种方式中的一种,再推出另外两种,最后根据目测的每位数字7个宽度条纹排列就可以读出所有的12位数,再在前面加6或9就可以得到正确的条码啦~还有别忘了怎么算校验码哦~你可以自己试着读条形码啦~上课时候找个带条码的就能玩啦~很打发时间啊~

http://baike.baidu.com/view/69679.htm?subLemmaId=69679&fromenter=EAN13

https://en.wikipedia.org/wiki/EAN-13#Calculation