条码知识之九:EAN-128条码(上)
EAN-128码,现称GS1-128码,是专用于GS1系统中的条码,可以标注商品的附加信息,在商品信息的标识、产品的跟踪与追溯中有广泛的用途。
EAN-128码来自于CODE-128码,在字符集、条空规则上与CODE-128码完全一致,因此我们需要先来介绍一下CODE-128码。
CODE-128码是一种用模块组配法编制的条码,三套字符集共可以表示128个符号,故称128码,字符集包含数字,大小写英文字母、符号、控制符和00-99的100个双位数的数字。每个字符的条码符号由三条三空11个模块组成,终止符为四条三空13个模块。下图是三个字符集的字符与条空结构对照表。由图中可以看出,与商品条码的三个子集不同,三个字符集共用一套条空结构,每一个字符集都有107个符号,每一个符号都有一个字符值。字符集A和字符集B中的字符大部分是重叠的,只有字符值64以后的符号不同,字符集A中包含了控制符,而字符集B中包含了小写字母;字符集C除了最后七个辅助字符外,只包含了100个双位数的数字,由00-99,其对应的字符值与字符本身相同。

CODE-128码的编码规则:一个CODE-128条码由左空白区、起始符、数据字符、校验符、终止符、右空白区和供人识读的字符构成。
1、起始符有三个,分别是START A,START B和START C,起始符说明了该条码中的数据使用的字符集。当表示的数据是四个或四个以上连续的数字时,必须使用START C,以缩短条码的长度。
2、校验符由起始符和数据区的字符值决定,其计算方法参见之前的《校验码的计算》一文。CODE-128码的校验符是条码本身的特性,它不是数据的一部分,因此校验符不会在供人识读的数据中出现。
3、终止符STOP由四条三空13个模块构成,三个字符集的终止符是同一个符号。
由于字符集B中包含了比较丰富的字符,所以表示由英文字母和符号构成的数据时通常都会选用B字符集,如果只用大写字母则选字符集A和字符集B是一样的。
编码示例:(1)BEIJING'08 (2) GS1-CHINA (3)20091020
(1) |START A| B | E | I | J | I | N | G | ' | 0 | 8 |校验符|STOP| (使用A字符集)
把以上字符对应的条空结构连接起来就构成了一个表示BEIJING'08的条码符号。
(2) |START B| G | S | 1 | - | C | H | I | N | A |校验符|STOP| (使用B字符集)
(3) |START C|20|09|10|20|校验符|STOP| (使用C字符集)
*注意使用C字符集的(3)与使用A字符集的(1)中表示数字的不同点,AB字符集只能表示单个的数字,而C字符集每一个条码符号都表示2位数字。
CODE-128条码允许在条码中间改变使用的字符集,这个功能依靠另外三个辅助字符来完成:CODE A,CODE B,CODE C。例如POSTCODE450002用128条码表示:
|START A| P | O | S | T | C | O | D | E | 4 | 5 | 0 | 0 | 0 | 2 |校验符|STOP|
全部使用A字符集,一共要使用17个码字。如果把数字部分改用C字符集就会缩短条码的长度,使用15个码字:
|START A| P | O | S | T | C | O | D | E |CODE C| 45 | 00 | 02 |校验符|STOP|
另一个辅助字符SHIFT可以使其后的一个字符从字符集A进入字符集B或从字符集B进入字符集A,之后的第二个字符及以后的符号仍然回到原字符集,它不能进入或退出字符集C。例:
|START B| C | h | i | n | a |SHIFT| CR | W | o | r | l | d |校验符|STOP|
该条码在阅读时可以产生以下效果:
China
World
原因是SHIFT让其后的一个字符CR使用了字符集A,而CR是计算机中的回车键,即在读出China后产生一个回车键再读World。
条码知识之九:EAN-128条码(上)的更多相关文章
- 条码知识之十:EAN-128条码(下)
国际物品编码协会(EAN)和美国统一代码委员会(UCC)将CODE-128码引入EAN/UCC系统,并作如下规定:起始符由一个START A/B/C 加一个辅助字符FNC1构成,以区别普通的CODE- ...
- BarTender如何将条码下的数字嵌入到条码中
现今社会,在各种包装箱子.书籍.超市商品等东西上面,必不可少的绝对要数条形码或者二维码了.有时候,根据客户的需求或者其他条件限制等原因,我们需要将BarTender 2016条码下的数字嵌入到条码中. ...
- ERP条码解决方案,金蝶盘点机条码解决方案,应用PDA的信息化管理能给我们的生产管理带来怎么样的变化的探讨
ERP条码解决方案,金蝶盘点机条码解决方案,应用PDA的信息化管理能给我们的生产管理带来怎么样的变化的探讨. 当前越来越多的大大小小的中国企业已经接受了ERP的思想,大多数的商店,企业,工厂都会上一套 ...
- 剑指Offer - 九度1523 - 从上往下打印二叉树
剑指Offer - 九度1523 - 从上往下打印二叉树2013-12-01 00:35 题目描述: 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 输入: 输入可能包含多个测试样例,输入以E ...
- GPT分区基础知识及如何在GPT分区上安装WIN7
大硬盘和WIN8系统,让我们从传统的BIOS+MBR模式升级到UEFI+GPT模式,现在购买的主流电脑,都是预装WIN8系统,为了更好的支持2TB硬盘,更快速的启动win8,预装系统都采取了GPT分区 ...
- Java开发知识之Java中的集合上List接口以及子类讲解.
Java开发知识之Java中的集合类 一丶什么是集合类 如果你学习说数据结构,那么学习集合就很简单. 因为集合就是存储数据的结构. 例如 有链表结构 (list ) 还有 map结构.等等. 集合类就 ...
- 十九、多文件上传(ajaxFileupload实现多文件上传功能)
来源于https://www.jb51.net/article/128647.htm 打开google 搜索"ajaxFileupload' ‘多文件上传"可以搜到许许多多类似的, ...
- Java基础知识陷阱(九)
本文发表于本人博客. 今天我来说说关于JAVA多线程知识,有错误请指出.大家都知道JAVA在服务端上处理也有很大优势,很多公司也有在服务器跑JAVA进程,这说明JAVA在处理这个多线程以及并发下也有一 ...
- java从基础知识(九)I/O
java中的流可以从不同的角度进行分类 按流的方向:输入流.输出流(注意这里的输入(read).输出是相对于程序而言的(writer),个人认为从读.写角度理解更为直观) 按处理数据单位:字节流.字符 ...
随机推荐
- .Net时间计算函数,统计某一天是一年的第几周,这一周从哪天开始到哪天结束
/// <summary> /// 计算某年第一周的天数 /// </summary> /// <param name="dt& ...
- HDU 11488 Hyper Prefix Sets (字符串-Trie树)
H Hyper Prefix Sets Prefix goodness of a set string is length of longest common prefix*number of str ...
- SSDP协议的Android实现以及使用
前面一篇博客里面已经介绍过SSDP协议原理,本篇博客将实现实现Android上的SSDP协议. 关键技术分析:1.发送广播:须要发送送广播,所以须要使用MulticastSocket.SocketAd ...
- xml 充当简易数据库
后台: 写入节点 public static void Update(string path, string node, string attribute, string value) { try { ...
- handlebar.js使用
官方网站:http://handlebarsjs.com/ 下载及查看使用帮助,或者用百度cdn引用 一.定义模板 <script id="entry-template" t ...
- 5.4 RegExp类型
ECMAScript通过RegExp类型来支持正则表达式.使用下面类似Perl的语法,就可以创建一个正则表达式. var expression=/pattern/flags; 复制代码 其中的模式(p ...
- javascriptDOM编程艺术_学习笔记_知识点 动态创建标记
传统技术:document.write 和 innerHTML 深入剖析DOM方法:createElement.createTextNode.appendChild 和 insertBefore ...
- codeforces 616E. Sum of Remainders 数学
题目链接 给两个数n, m. 求n%1+n%2+.......+n%m的值. 首先, n%i = n-n/i*i, 那么原式转化为n*m-sigma(i:1 to m)(n/i*i). 然后我们可以发 ...
- IOS 学习笔记(1) 视图UIViewController
1.UIViewController *newController=[[UIViewController alloc] initWithNibName:@"XXX" bundle: ...
- JS 原型 & 继承
理解原型链 先看看http://www.ituring.com.cn/article/56184和http://www.cavabiao.com/prototype-and-inherit-of-ja ...