1、常用一维条形码编码规则常用一维条形码139码(CODE39)39码可以包含数字及英文字母。除了超市、零售业的应用中使用UPC/EAN码外,几乎在其他饿应用环境中,都是使用39码。39码是目前使用最广泛的条码规格,支持39码的软硬件设备也最齐全。1.1特征能表示44个字符,A-Z、0-9、SPACE、-、.、$、/、+、%、*分散式,条码组之间使用细白条分隔两种宽度自我检查有扩展模式 Full ASCII Mode检查码字符可有可无,视需求而定1.2组成各个字符有9条黑白相间,粗细不同的线条组成,其中6条为黑白细条3条黑白粗条一串字符必须在头尾加上起始字符和结束字符“*”1.3校验方法CODE3
2、9字符012345678值012345678字符9ABCDEFGH值91011121314151617字符IJKLMNOPQ值181920212223242526字符RSTUVWXYZ值272829303132333435字符-.SPACE$/+%值36373839404142找到输入字符串每个字符对应值,求和,除以43, 取余数。1.4条码说明1.5编码表P.S.在程序中可以使用“11”表示宽黑条,1表示细黑条,“00”表示宽白条,“0”表示细白条。那么字符1就可以表示为110100101011。使用此方法建立一个编码表,每个字符可以长度为12的“01”字符串来表示。1.6典型CODE39条
3、码1.7CODE39的扩展码扩展码表同CODE93。但是扩展方式不同,39码使用$,/,+.%与其26个大写字母组合,表示ASCII码表中的其他字符。条空表示方式和校验方式 与标准39码相同。93码中使用的控制码与26个大写字母的组合。293码(CODE93)2.1组成字母:A-Z,数字:0-9,符号:SPACE, - , . , $ , / , +, %, 控制码:$ , / , +, %,起始结束码:每个字由9个模组成,包括3条粗细黑条及3条粗细白条。每一黑条或白条有可能为1.2.3.4模组成2.2特征用4个控制码 $, %, /, + 组合其他字母或符号,可编程FULL ASCII字母,
4、读码器读到上面4个控制码的组合时候,送出的字尾所对应的ASCII。有2个检验码C和K。2.3校验方法先查出资料所对应值,对应值的表如下字符012345678值012345678字符9ABCDEFGH值91011121314151617字符IJKLMNOPQ值181920212223242526字符RSTUVWXYZ值272829303132333435字符-.SPACE$/+%值36373839404142检查码C由资料的最右边一位用1-20顺序排列,若资料超过20位,在从1-20起算,顺序号作为权值,分别乘以对应值,求和,除以47,取余数检查码K由C位用1-15顺序排列,若资料差偶偶15位,
5、再从1-15起算,顺序号作为权值,分别乘以对应值,求和,除以47,取余数举例:资料C O D E SP 9 3 “C” “K”资料对应值12 24 13 14 38 9 3C 排列顺序7 6 5 4 3 2 1K 排列顺序8 7 6 5 4 3 2 1(1x3) + (2x9) + (3x38) + (4x14) + (5x13) + (6x24) + (7x12) = 484C = 484 47 = 10 14 (余数)则 C = 14 = E (对应值)(1x14) + (2x3) + (3x9) + (4x38) + (5x14) + (6x13) + (7x24) + (8x12)=
6、611K = 611 47 = 13 0 (余数)則 K = 0 = 0 (对应值)2.4条码说明2.5编码表P.S.程序编码中,结束符号模块比起始符号多一个“1”;使用控制符组合字母所表示的字符,编码时需要分解成控制符和大写字母两个模块。比如字符NUL可分解成控制符%和U,条空为“111011010 和 1100101102.6典型CODE93条码3128码(CODE128)3.1特征能表示106种字元3个字符集连续式四种宽度三种字符集可串联使用使用检查码3.2组成提供128个ASCII的所有字符有A、B、C三种不同模组C组数字专用模组,可从00-99编码,缩短编码长度A、B、C三种模组依资
7、料结构,可混合编码每个字由3条粗细黑条及3条粗细白条组成,但每个模组都是12各个单元宽度三组模组起始码不同,但结束码相同。3.3校验方法首先为字符串标志条码(码字)从起始符开始,自左向右为每个条码字符编号为每一个字符分配权数,起始符和第一个字符的权数位1, 以后依次增加每个字符的权数与码值相乘所有乘积求和第5步的结果除以103求余数码值等于余数的字符即为校验符;3.4编码表P.S.程序中可用“1“表示一个单元宽度的黑条,“0”表示一个单元宽度的白条。则上图中的Value=0的条空可表示为110110011000。终止符有13个模块宽度。条空表示为1100011101011,末尾多两个“11”;
8、3.5典型CODE128码3.6条码说明例如,某128码的值为ROC12345,则其逻辑和条码如下模块数值逻辑型态B 式Start11010010000 B 式R11000101110 B 式O 10001110110 B 式C 10001000110 B 式I 10011100110 B 式转 C 式10111011110 C 式23 11101101110 C 式45 10111011000 C 式Stop 1100011101011 某一个128码的值为5418781,则其逻辑及条码如下模块数值逻辑型态C Start 11010011100 C 54 11101011000 C 18 1
9、1001110010 C 78 11000010100 C 14 11000100010 C Stop 1100011101011 4EAN-128EAN-128码,现称GS1-128码,是专用于GS1系统中的条码,可以标注商品的附加信息,在山品信息的标志、茶品的跟踪与追溯中有广泛的用途。EAN-128码来自于CODE-128码,在字符集、条空规则上与CODE-128完全一致。4.1组成EAN-128码组成同CODE-128应用标识符使用分隔符码字FNC1表示4.2特征同CODE-128;4.3条码说明如果字符串起始的字符是超过4个的数字字符时,应该采用START C。数据中间如果有4个或4个
10、以上连续的数字也要变换为字符集C。如果数据中的应用标识符使用的是预定义程度的AI,则可以省去数据后的分隔符。例子例1(01)16903128100250(13)091020(15)100420 用条码可以表示为 |START C|FNC1|01|16|90|31|28|10|02|50|13|09|10|20|15|10|04|20|校验码|STOP|例2(02)16903128100250(37)100(10)091000S|START C|FNC1|02|16|90|31|28|10|02|50|37|10|CODE B| 0 |CODE C|FNC1|10|09|10|00|CODE B
11、|S|校验符|STOP|5标准2 of 5 (INDUSTRY 2 OF 5 STANDARD)5.1组成:由5条黑条组成,其中有3条细黑条,2条宽黑条黑条与黑条之间及字与字之间偶用一白条分隔,所以白细条不表示资料起始及结束码不同数字095.2特征一串资料可以改变程度,但只有数字可编粗细比例1: 3,允许误差25%分散式无验证码5.3编码表 P.S. 程序中:“1”表示1个黑条宽度单元,因为粗细比是1:3,显然粗黑条表示为“111”,又因为每两个黑条使用细白条分隔,所以上表中数字1可以表示为:“1110101010111”6交错式25码(INTERLEAVED25)6.1组成由5条粗细黑条组成
12、,其中3条细黑条,2条宽黑条由5条粗细白条组成,其中3条西白条,2条宽白条黑条置于奇数位,白条置于偶数位,故又称交错式2OF5起始码和结束码不同只能表示09必须偶数位配对6.2特性资料程度一定是偶数只能表示数字09连续式不一定使用检验码粗细比1:2或1:3,误差10%粗细印刷比例若误差太大,可能解错码6.3校验方法交叉25码的校验位计算方法依然是 Mod 10 :1.字符个数为偶数时为:10的倍数-(奇数位的数字之和从左至右)+(偶数位数字之和)*3个位数 2.字符个数为奇数时为:10的倍数-(偶数位的数字之和从左至右)+(奇数位数字之和)*3个位数如: 514362的校验位为10*X-(5+
13、4+6)+3*(1+3+2)=7(因加校验位后个数为奇数,故前面加0后为05143627。 76534的校验位为10*X-(6+3)+3*(7+5+4)=36.4条码说明6.5编码表P.S.程序中,可以N表示窄条,W表示宽条,因为黑条白条的相对位置固定,所以上表其实是一个pattern表。比如字母1表示为W N N N W。虽然粗细比允许1:3,考虑到解错码的可能性,建议粗条使用2个单位宽度。 因为交错式25码必须是成对的数字,所以可以把相邻两个数字作为一个模块。比如条码1234,可以分组为12 | 34; 取“12”为例,1在奇数位置,为黑条,对应pattern为WNNNW,2在偶数位置,为
14、白条,对应pattern为NWNNW,那么12合起来作为一个模块,混合pattern为WNNWNNNNWW,这个pattern里,奇数位的W表示粗黑条,奇数位的N表示细黑条,偶数位的W表示粗白条,偶数位的N表示细白条,因此12的条空表示为:110100101011006.6典型交错式25码7CODABAR码7.1组成由7条黑白相间、粗细不同的黑白条组成,其中包括4条黑条,3条白条字与字之间为一细白条4个起始和结束码,可互相配对,但一般都用相同。数字:09, 特别符号:-、$、=、/、.、+, 起始/结束码:A、B、C、D7.2特征四种不同的起始/结束码分散式18种宽度不使用检查码起始/结束码可
15、以用来传递信息7.3校验方法对应值之和,MOD16步骤一.假设条形码数据码为 A37859B步骤二.将各别字元相对值加总 16+3+7+8+5+9+17=65步骤三.用为基数来除以相对值加总 65/16=4.1步骤四.再以减掉余数,以求出相对值 16-1=157.4编码表S1-S4:黑条 L1-L3:白条0:窄, 1:宽7.5典型CODABAR码8UPC-A(和EAN-8)UPC-A与EAN-8的编码方式相同,资料长度不同8.1特性资料长度固定-12位只能用来表示数字 09固定使用一位 检查码连续式使用四种宽度8.2组成每一个字由7个ELEMENTS组成有4中粗细黑白条混合编码左护线101,
16、中心弧线吗 01010, 右护线码 1018.3校验方法X3YZ ,10Z检查号码X 为奇数位之和,Y 为偶数位之总和Z 为奇数 + 偶数之总和的个位数8.4条码说明8.5编码表DECIMAL LEFT (A) 互補RIGHT (C) (ODD PARITY 0) ( EVEN PARITY ) 0 0001101 1110010 1 0011001 1100110 2 0010011 1101100 3 0111101 1000010 4 0100011 1011100 5 0110001 1001110 6 0101111 1010000 7 011
17、1011 1000100 8 0110111 1001000 9 0001011 1110100 8.6典型UPC-A和EAN-8码9EAN-139.1特性资料长度固定, 13为只能用来表示数字资源固定使用一位 检查码连续式使用四种宽度左护线码101, 中心护线码01010, 右护线码1019.2校验方法XY3Z 10Z檢查號碼X 为奇数位之和,Y 为偶数位之总和Z 为奇数 + 偶数之总和的个位数9.3编码表EAN-13的右半部编码如下表DECIMAL RIGHT (C) 0 1110010 1 1100110 2 1101100 3 1000010 4 1011100 5 1001110 6
18、 1010000 7 1000100 8 1001000 9 1110100 EAN-13的左半部编码步骤如下:1.先查出EAN13最前面的国码数字2.根据国码数字查下表,O代表ODD PARITY, E 代表EVEN PARITYPARITY PATTERN 1 00E0EE 2 00EE0E 3 00EEE0 4 0E00EE 5 0EE00E 6 0EEE00 7 0E0E0E 8 0E0EE0 9 0EE0E0 3.上表的PARITY PATTERN也代表EAN左半部6为数中每位PARITY PATTERN4.依照PARITY PATTERN对照下表壳得出左边的编码CHARACTER
19、VALUE ODD PARITY (0) EVEN PARITY (E) 0 0001101 0100111 1 0011001 0110011 2 0010011 0011011 3 0111101 0100001 4 0100011 0011101 5 0110001 0111001 6 0101111 0000101 7 0111011 0010001 8 0110111 0001001 9 0001011 0010111 10UPC-E10.1特性资料长度固定,6位只能用来表示数字使用一位检查码连续式使用四种宽度每个UPC-E码都有一个相对应的UPC-A吗存在左护线码为101, 有护线码为 01010110.2编码步骤1依下表把断码先变成原来的长码(UPC-A)2由UPC-A算出检查码之值3依检查码之值对照下表取得PATTERN4依据上表的数字再对照下表即可得UPC-E的编码
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1