Code 39条形码编码规则
条码CODE39码编码规则
条码CODE39码编码规则CODE39码是一种常用的条码,它由一系列不同宽度的黑白条纹构成。
CODE39码编码规则主要包括字符集、字符编码、起始符和终止符等方面。
1.字符集:CODE39码包括数字0-9、大写字母A-Z以及一些特殊字符如空格、$、%、+、-、/、:。
总共有43个字符可供使用。
2.字符编码:CODE39码使用5个条纹表示一个字符,其中包括3个宽条纹和2个窄条纹。
每个字符的编码由9个条纹组成,包括1个起始符、1个终止符和7个数据符。
3.起始符:起始符是CODE39码的开头,用于标识条码的开始。
起始符由一宽四窄五宽的条纹组成,具体编码为"*"。
4.终止符:终止符是CODE39码的结尾,用于标识条码的结束。
终止符由三宽一窄一宽的条纹组成,具体编码为"*"。
5.数据符:6.校验位:CODE39码可以附加一个校验位,用于增强条码的可靠性。
校验位是根据数据符的值计算出来的,具体方法是将数据符对应的值相加,然后取余数。
校验位是一个额外的数据符,用于在解码时检查条码的准确性。
7.编码长度:CODE39码没有固定的编码长度限制,可以根据需要自由设置条码的长度。
编码长度的确定需要考虑到条码的可读性和使用环境等因素。
总结:CODE39码是一种常用的条码,它具有简单、可靠和易于识别等特点。
CODE39码的编码规则主要包括字符集、字符编码、起始符和终止符等方面,并可以附加校验位提高识别准确性。
了解CODE39码的编码规则可以帮助我们更好地应用条码技术。
code39的c语言 -回复
code39的c语言-回复Code 39是一种编码格式,常用于条形码和标签打印中。
它基于39个不同的字符,由数字0-9、大写字母A-Z和特殊字符组成。
本文将逐步回答与Code 39相关的问题,包括其原理、用途和实现方法。
Code 39是一种线性条形码,由焦点成图案的宽窄条组成。
它是一种可见的编码系统,可以使用红外扫描仪或摄像头来读取。
每个字符由9个元素组成,其中5个是宽度变化的“条”,而另外4个则是“空”,用于分隔字符。
通过将这些条和空结合在一起,就可以形成表达不同字符的编码。
Code 39与其他一些编码系统相比,具有一些特殊的优点。
首先,Code 39的字符集相对较小,仅由39个字符组成。
这使得它比其他编码系统更简单,更易于实现和读取。
其次,Code 39的错误检测能力较强。
它使用了一种称为“校验字符”的技术,可以检测到并进行纠正错误。
最后,Code 39可以容纳更多的数据。
它可以编码字母、数字和一些特殊字符,可以满足不同领域中的各种需求。
在实际应用中,Code 39广泛用于各种场景。
一种常见的应用是商品条形码。
在零售行业,商品条码可以用于快速和准确地识别商品信息,加快结账过程。
此外,Code 39还可以用于库存管理、物流跟踪和价格标签等方面。
它还被用于医药行业,例如药品标签和病历号码。
在制造业中,Code39可以用于标识和追踪零件和产品。
为了实现Code 39编码,我们可以使用各种编程语言,其中包括C语言。
C语言是一种通用的程序设计语言,对于处理字符串和位操作非常有优势。
在C语言中,我们可以通过以下步骤来生成Code 39编码:1. 定义Code 39字符集:首先,我们需要定义Code 39的字符集,包括数字、大写字母和特殊字符。
这些字符将用于生成Code 39编码。
2. 计算验证码:Code 39使用一种校验字符的技术,来检测和修正错误。
校验字符是基于全部字符的算法得出的,我们需要根据定义的字符集计算校验字符,并将其添加到编码中。
常用一维条形码编码规则
常用一维条形码编码规则一维条形码是一种广泛使用的编码规则,用于在商品、邮件、文件等物品上标识和跟踪信息。
下面是一些常用的一维条形码编码规则。
1. UPC(Universal Product Code):UPC是一种广泛应用于北美市场的编码规则。
它使用12个数字字符表示产品的标识号码,通常用于商品的销售和库存管理。
2. EAN(European Article Number):EAN是一种在欧洲和全球范围内广泛使用的编码规则。
与UPC类似,EAN也使用13个数字字符表示产品的标识号码。
3. Code 39:Code 39是一种常用的字母和数字字符编码规则。
它可编码字母、数字和一些特殊字符,如空格、减号等。
Code 39条形码由一个起始字符、数据字符和一个终止字符组成。
4. Code 128:Code 128是一种高密度编码规则,它能编码所有ASCII字符(128个字符)。
Code 128条形码具有可变长度和高容错性,并且可以同时编码数字、字母和符号。
5. Codabar:Codabar是一种常用的编码规则,适用于一些特定的应用场景,如图书馆、银行、物流等。
Codabar条形码可编码数字、字母和一些特殊字符。
6. ITF(Interleaved 2 of 5):ITF是一种高密度编码规则,常用于包装和运输行业的标识。
它可以编码数字,但不支持字母和特殊字符。
ITF条形码由两个数字字符和一个空格字符组成,可以同时表示两个数字。
7. MSI Plessey:MSI Plessey是一种数字编码规则,常用于库存管理和数据跟踪。
它可以编码数字字符,并具有高容错性能。
8. Pharmacode:Pharmacode是一种特殊的编码规则,主要用于药品标识。
Pharmacode条形码由数字字符组成,用于唯一标识药品包装。
以上是一些常用的一维条形码编码规则。
不同的规则适用于不同的应用场景,具有不同的特点和优势。
选择合适的编码规则有助于提高条形码的可读性和可靠性。
条码编码规则
条码编码规则
常见的条码编码规则包括以下几种:
UPC:UPC是一种广泛应用于北美零售业的条码编码规则。
它由12个数字组成,其中前面6位是厂商代码,后面6位是产品代码。
EAN:EAN是一种在欧洲广泛使用的条码编码规则。
它和UPC类似,也是由13个数字组成,前面3位是国家代码,接着是厂商代码,最后是产品代码。
Code 39:Code 39是一种常见的字母数字条码编码规则。
它可以编码数字0-9、大写字母A-Z和一些特殊字符,总共有43个字符。
Code 39条码通常用于库存管理和物流领域。
Code 128:Code 128是一种高密度、可变长度的条码编码规则。
它可以编码全部ASCII字符集,包括数字、字母、符号和控制字符。
Code 128条码广泛应用于物流和运输行业。
QR码:QR码是一种二维码编码规则。
它可以编码更多的信息,包括文本、URL、联系方式等。
QR码具有高容错性和快速读取的特点,广泛应用于移动支付、广告推广等领域。
这些条码编码规则根据不同的应用场景和需求而设计,用于标识和追踪商品、管理库存、提供信息等。
不同的条码规则在编码方式、长度和所能表示的信息范围上有所差异,选择合适的规则取决于具体的应用需求。
如何设置Code39码的起始码和终止码星号
如何设置Code39码的起始码和终止码星号
Code 39码支持26个英文大写字母(A-Z),十个数字(0-9),以及符号(-、.、_(空)、*、$、/、+、%)。
可以对任意长度的数据进行编码,Code 39码用于物流跟踪、生产线流程等方面,是比较常用的条形码类型之一。
39码的起始码和终止码为固定的星号“*”,即39码前后各有一个星号“*”来标识条形码的开始和结束。
下面我们就介绍如何设置这个起始码和终止码。
在软件中生成Code 39码时,点击条码按钮,在画布上绘制一个条形码,在弹出的界面中设置条码的类型和数据。
软件生成的Code 39码默认是显示起始*号和结束*号的。
,如果想要隐藏,只需将软件右下方的显示起始*号和结束*号的勾选取消即可。
以上就是把39码的起始码和终止码星号“*”隐藏或者显示的方法。
而39码的起始码和终止码星号“*”无论是显示还是隐藏,39码的扫描结果都是一样的。
Code39码
39码39码是公元1974年发展出来的条形码系统,是一种可供使用者双向扫瞄的分布式条形码,也就是说相临两数据码之间,必须包含一个不具任何意义的空白(或细白,其逻辑值为0),且其具有支持文数字的能力,故应用较一般一维条形码广泛,目前较主要利用于工业产品、商业数据及医院用的保健资料,它的最大优点是码数没有强制的限定,可用大写英文字母码,且检查码可忽略不计。
标准的39码是由起始安全空间、起始码、数据码、可忽略不计的检查码、终止安全空间及终止码所构成(徐绍文,1985),以Z135+这个资料为例,其所编成的39码如下所示:39码的结构综合来说,39码具有以下特性:1.条形码的长度没有限制,可随着需求作弹性调整。
但在规划长度的大小时,应考虑条形码阅读机所能允许的范围,避免扫瞄时无法读取完整的数据。
2.起始码和终止码必须固定为“* ”字符。
3.允许条形码扫瞄器进行双向的扫瞄处理。
4.由于39码具有自我检查能力,故检查码可有可无,不一定要设定。
5.条形码占用的空间较大。
可表示的资料包含有:0~9的数字,A~Z的英文字母,以及“+”、“-”、“*”、“/”、“%”、“$”、“.”等特殊符号,再加上空格符“”,共计44组编码,并可组合出128个ASCII CODE的字符符号,如下所示。
ASCII CODE字符符号与39码对照表39码编码方式三九码的每一个字符编码方式,都是藉由九条不同排列的线条编码而得。
可区分成如之四种类型:39码的字符编码方式(一) 英文字母部分26个英文字母所对应的39码逻辑值如所示。
39码编码对映表(英文字母部分)(二) 数字与特殊符号部分39码也可表示数字0~9以及特殊符号,其对应的逻辑值如所示。
39码编码对映表(英文字母部分39码检查码的计算39码的检查码必须搭配「检查码相对值对照表」,如表所示,将查出的相对值累加后再除以43,得到的余数再查出相对的编码字符,即为检查码字符。
例如要算出 *S123$5* 这笔数据的检查码,其计算过程如下:步骤1 参考检查码相对值对照表,找出编码字符相对值参考表,得到各编码字符的相对值为:S 的相对值为28; 1 的相对值为1;2 的相对值为 2;3 的相对值为3;$ 的相对值为39 ; 5 的相对值为5。
条形码的编码规则
条形码的编码规则1. 编码格式:条形码通常采用一组不同宽度的黑白条纹来表示数据。
常用的条形码有EAN-13(十三位欧洲商品条码)、UPC-A(美国商品条码)、Code39(字母数字条形码)等。
2. 字符集:条形码可以编码数字、字母、符号等字符。
不同的条形码规格支持不同的字符集,如EAN-13支持0-9的数字字符,UPC-A支持0-9的数字字符和-X的符号,Code39支持数字、大写字母和-,.+/%字符。
3.校验码:为了保证数据的准确性,条形码通常包含一个校验码。
校验码的计算方法可以有多种,例如通过对字符进行加权求和、取模运算等。
校验码可以用于验证条形码是否被正确扫描或打印。
4.编码结构:条形码的编码结构通常包括起始字符、数据字符、校验字符和终止字符。
起始字符用于标识条形码的格式和字符集,数据字符用于表示实际的数据,校验字符用于验证数据的准确性,终止字符则表示编码的结束。
5.编码密度:条形码编码密度指的是每个单位长度内可以编码的字符个数。
编码密度的选择取决于需要编码的数据长度和可用空间的限制。
一般来说,编码密度越高,则可以编码的字符越多,但相应地,扫描和打印的精度要求也越高。
6.打印要求:条形码的打印质量直接影响扫描的准确性。
打印条形码时需要注意保证条纹的清晰度和对比度,避免模糊或重叠。
同时,打印设备需要满足一定的分辨率和精度要求,以确保条形码的可读性。
7.多格式支持:条形码的编码规则往往受到标准和规范的约束,而不同的应用场景可能需要使用不同格式的条形码。
因此,在实际应用中,需要根据具体需求选择合适的条形码格式,并确保条形码的编码规则与扫描设备的兼容性。
总之,条形码的编码规则涉及到编码格式、字符集、校验码、编码结构、编码密度、打印要求和多格式支持等多个方面。
在实际应用中,需要根据具体需求选择合适的条形码规格,并按照编码规则进行正确的编码和打印操作。
只有这样才能保证条形码的可靠性和准确性,从而实现条形码在物流、零售、生产等领域的广泛应用。
CODE编码方式中文
C OD E39编码方式CODE 39 背景资料Code 39,待开发的第??一个字母数字的符号,是仍然被广泛使用,尤其是在非零售环境。
它是由美国国防部使用的标准条形码,是由卫生行业条码委员会(HIBCC)也可用于。
39码也被称为“3 9中的代码”和“美元3”。
一个典型的代码39条码是:Code 39是一个离散的,可变长度的符号。
这是自我检查,在一个单一的的打印缺陷,不能转置成另一种有效的字符的字符。
计算校验和位数由于39码是自我检查,校验位通常是没有必要的。
然而,在应用要求的精度非常高的水平的一个模43校验位数字可能会增加。
1. 要计算的可选校验数字,请按照下列步骤。
1。
以条形码的每个字符的值(0到42)。
启动和停止字符不包括在校验和计算。
2. 萨姆在步骤1中所描述的每个字符的每个值的值。
3. 43,从第2步划分的结果。
4. 在第3步师的其余部分将被追加到前停止字符的数据电文的校验字符。
编码符号一旦校验数字已计算,我们知道整个消息必须在酒吧和空间编码。
继续我们的例子中,我们会从零编码,Code 39条码使用我们在上面的例子:一个67位数的校验HI345678。
在下面的文本,我们将讨论通过条码的编码,考虑到数字“1”代表“暗”或“bar”,而“0”的条形码代表“轻”或“空间”部分条形码。
因此,数字1101代表一个双宽条(11),由一个单一的广阔的空间(0)单宽条(1),。
这将是印在条码:一个Code 39条码的架构一个Code 39条码具有以下结构:1。
一个起始字符- 星号(*)字符。
2。
从下表中的编码字符的任何数。
3。
一个可选的校验和数字计算上文所述,从下表编码。
4。
一个终止符,这是第二个星号字符。
CODE 39码的编码表此表显示了如何来编码每一个Code 39条码的数字。
请注意,“宽度编码”列的“N”和“W”为宽窄的表示,而“条码编码”列表示的条形码如何将实际编码所描述的上述“编码符号”。
记住,每个字符的开始和结束与酒吧,因而总是启动的“条码编码”和“1”结尾。
条码生成代码(Code39码)
条码⽣成代码(Code39码)的『Code 39条形码介绍』 code39条码能表⽰字母、数字和其它⼀些符号共43个字符:A -Z, 0-9, -.$/ + %, space等,其主要特点如下: ◆条码的长度是可变化的 ◆通常⽤“*”号作为起始、终⽌符 ◆校验码不⽤ ◆代码密度介于3 - 9.4个字符/每英⼨ ◆空⽩区是窄条的10倍 ◆⽤于⼯业、图书、以及票证⾃动化管理上三九码是Intermec公司于1975年推出的⼀种条码,它可表⽰数字、英⽂字母以及“-”、“.”、“/”、“ ”、“%”、“$”、“ ”(空格)和“*”共44个符号,其中“*”仅作为启始符和终⽌符。
三九码且有编码规则简单、误码率低、所能表⽰字符个数多等特点,因此在各个领域有着极为⼴泛的应⽤。
我国也制定了相应的国家标准(GB12908-91)。
三九码仅有两种单元宽度——分别为宽单元和窄单元。
宽单元这宽度为窄单元的1到3倍,⼀般多选⽤2倍、2.5倍或3倍。
三九码的每⼀个条码字符由九个单元组成,其中有三个宽单元,其余是窄单元,因此称为三九码。
我国有的图书馆使⽤的39码使⽤了特殊的校验字符,条码软件都可打印适⽤于图书馆的39码。
代码原创: LovlyPuppy实现该功能分两个类,第⼀个类 DrawImageBord.csusing System.Drawing;using System.Drawing.Imaging;public abstract class DrawImageBord...{protected virtual string BordRuleName...{get ...{ return string.Empty; }}protected virtual System.Collections.Hashtable Roles...{get ...{ return new System.Collections.Hashtable(); }}string drawString;int width = 800; //画布的宽度(可计算)int height = 36;//1CMint unitWidth = 1; //int currentLocation = 0;public DrawImageBord(string s)...{drawString = s;}public virtual void Draw(System.IO.Stream target)...{Bitmap bm = new Bitmap(width, height);Graphics g = Graphics.FromImage(bm);g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.Default;g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias;//画布和边的设定g.Clear(Color.White);g.DrawRectangle(Pens.White, 0, 0, width, height);for(int i = 0; i < drawString.Length; i++)...{this.DrawString(drawString[i].ToString(), g);}bm.Save(target, ImageFormat.Jpeg);}protected virtual void DrawString(string s, Graphics g)...{System.Collections.Hashtable hash = this.Roles;object o = hash[s];if (o == null) return;char[] chars = o.ToString().ToCharArray();if (chars.Length > 9) return;SolidBrush blackBrush = new SolidBrush(Color.Black);SolidBrush witeBrush = new SolidBrush(Color.White);for(int i = 0; i < 5; i++)...{//画第⼀个 0 ⿊条if (chars[i] == '0')...{Rectangle re1 = new Rectangle(currentLocation, 0, unitWidth, height);g.FillRectangle(blackBrush, re1);currentLocation += unitWidth;}else...{Rectangle re1 = new Rectangle(currentLocation, 0, 3 * unitWidth, height);g.FillRectangle(blackBrush, re1);currentLocation += 3 * unitWidth;}//画第6个 5 ⽩条if ((i + 5) < 9)...{if (chars[i+5] == '0')...{Rectangle re1 = new Rectangle(currentLocation, 0, unitWidth, height);g.FillRectangle(witeBrush, re1);currentLocation += unitWidth;}else...{Rectangle re1 = new Rectangle(currentLocation, 0, 3 * unitWidth, height);g.FillRectangle(witeBrush, re1);currentLocation += 3 * unitWidth;}}}Rectangle re2 = new Rectangle(currentLocation, 0, unitWidth, height);g.FillRectangle(witeBrush, re2);currentLocation += unitWidth;}}第⼆个类CODE39DrawImageBord.cs 继承DrawImageBord.csusing System;using System.Data;using System.Configuration;using System.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;/**//**//**//// <summary>/// CODE39DrawImageBord 的摘要说明/// </summary>public class CODE39DrawImageBord : DrawImageBord......{private System.Collections.Hashtable hash = new System.Collections.Hashtable();protected override string BordRuleName......{get ......{ return "CODE39"; }}public CODE39DrawImageBord(string s): base(s)......{}protected override System.Collections.Hashtable Roles......{get......{if (hash.Count > 0) return hash;hash.Add("0", "001100100");hash.Add("1", "100010100");hash.Add("2", "010010100");hash.Add("3", "110000100");hash.Add("4", "001010100");hash.Add("5", "101000100");hash.Add("6", "011000100");hash.Add("7", "000110100");hash.Add("8", "100100100");hash.Add("9", "010100100");hash.Add("A", "100010010");hash.Add("B", "010010010");hash.Add("C", "110000010");hash.Add("D", "001010010");hash.Add("E", "101000010");hash.Add("F", "011000010");hash.Add("G", "000110010");hash.Add("H", "100100010");hash.Add("I", "010100010");hash.Add("J", "001100010");hash.Add("K", "100010001");hash.Add("L", "010010001");hash.Add("M", "110000001");hash.Add("N", "001010001");hash.Add("O", "101000001");hash.Add("P", "011000001");hash.Add("Q", "000110001");hash.Add("R", "100100001");hash.Add("S", "010100001");hash.Add("T", "001100001");hash.Add("U", "100011000");hash.Add("V", "010011000");hash.Add("W", "110001000");hash.Add("X", "001011000");hash.Add("Y", "101001000");hash.Add("Z", "011001000");hash.Add("-", "000111000");hash.Add("%", "100101000");hash.Add("$", "010101000");hash.Add("*", "001101000");return hash;}}}调⽤的⽅法:protected void Page_Load(object sender, EventArgs e)...{CODE39DrawImageBord dr = new CODE39DrawImageBord("*3949178*"); dr.Draw(Response.OutputStream);}--显⽰结果:--显⽰结果:补充说明:⽣成的这个条码,并没有⽤扫描枪去识别,以后我会⽤Symbol DS6608数字扫描器来识别它的准确性.。
条码编码规则
条码编码规则1. 引言条码编码规则是指在商品销售、物流运输和库存管理等领域中,为了实现自动化识别和数据采集而制定的一套编码规范。
条码编码规则可以确保商品信息的准确传递和快速处理,提高工作效率和减少错误率。
本文将介绍常见的条码编码规则,包括EAN-13、CODE39、CODE128等,并详细解释其结构、含义及应用场景。
2. EAN-13EAN-13(European Article Number)是一种常用的商品条形码编码规则,主要用于表示商品的国际通用代码。
它由13个数字组成,每个数字代表不同的含义。
2.1 结构EAN-13条形码由以下几部分组成:•前三位:国家代码,表示商品所属国家或地区。
•中间六位:厂商代码,表示商品生产厂商。
•最后四位:商品代码,表示具体的产品型号或批次。
2.2 含义EAN-13条形码中的每个数字都有特定的含义。
例如,第一位数字代表商品类型(0~8为普通商品,9为内部使用),第二到第七位数字代表厂商代码等。
2.3 应用场景EAN-13条形码广泛应用于商品销售和库存管理等领域。
商店使用扫描枪扫描商品条码,系统可以自动识别商品信息,并实现快速结账和库存管理。
3. CODE39CODE39是一种常见的字母数字条码编码规则,适用于需要较短编码的场景,如物流运输和图书馆管理等。
3.1 结构CODE39条形码由宽窄不等的黑白条组成,每个字符由9个元素组成(5个窄条和4个宽条)。
CODE39编码规则共有43个字符可供使用,包括26个大写字母、10个数字和7个特殊字符。
3.2 含义每个CODE39条形码字符都有对应的含义。
例如,“A”代表大写字母A,“1”代表数字1。
CODE39还包含了起始符、终止符和校验位等特殊字符,以确保数据的完整性和准确性。
3.3 应用场景CODE39条形码广泛应用于物流运输、图书馆管理和资产追踪等领域。
通过扫描CODE39条形码,可以快速获取物品信息并进行相应操作。
CODE39编码方式(中文)
CODE 39 编码方式CODE 39 背景资料Code 39,待开发的第一个字母数字的符号,是仍然被广泛使用,尤其是在非零售环境。
它是由美国国防部使用的标准条形码,是由卫生行业条码委员会(HIBCC)也可用于。
39码也被称为“3 9中的代码”和“美元3”。
一个典型的代码39条码是:Code 39是一个离散的,可变长度的符号。
这是自我检查,在一个单一的的打印缺陷,不能转置成另一种有效的字符的字符。
计算校验和位数由于39码是自我检查,校验位通常是没有必要的。
然而,在应用要求的精度非常高的水平的一个模43校验位数字可能会增加。
1. 要计算的可选校验数字,请按照下列步骤。
1。
以条形码的每个字符的值(0到42)。
启动和停止字符不包括在校验和计算。
2. 萨姆在步骤1中所描述的每个字符的每个值的值。
3. 43,从第2步划分的结果。
4. 在第3步师的其余部分将被追加到前停止字符的数据电文的校验字符。
编码符号一旦校验数字已计算,我们知道整个消息必须在酒吧和空间编码。
继续我们的例子中,我们会从零编码,Code 39条码使用我们在上面的例子:一个67位数的校验HI345678。
在下面的文本,我们将讨论通过条码的编码,考虑到数字“1”代表“暗”或“bar”,而“0”的条形码代表“轻”或“空间”部分条形码。
因此,数字1101代表一个双宽条(11),由一个单一的广阔的空间(0)单宽条(1),。
这将是印在条码:一个Code 39条码的架构一个Code 39条码具有以下结构:1。
一个起始字符- 星号(*)字符。
2。
从下表中的编码字符的任何数。
3。
一个可选的校验和数字计算上文所述,从下表编码。
4。
一个终止符,这是第二个星号字符。
CODE 39码的编码表此表显示了如何来编码每一个Code 39条码的数字。
请注意,“宽度编码”列的“N”和“W”为宽窄的表示,而“条码编码”列表示的条形码如何将实际编码所描述的上述“编码符号”。
记住,每个字符的开始和结束与酒吧,因而总是启动的“条码编码”和“1”结尾。
条形码生成软件中Code 39码介绍及其制作
条形码生成软件中Code 39码介绍及其制作Code 39码是最常用的条码类型之一,它支持大写26个英文字母,0-9个数字,还有一些特殊字符等43个字符。
它被广泛运用在物流跟踪,生成线流程,还有公司企业内容管理等方面,是使用最广泛的条码类型之一。
在大多数的条码打印软件或标签制作软件中都有这种条码类型。
而且这种条码一般在条码打印软件中会表现出两种类型。
一种是code 39码,另一种就是支持字符类型更全面的 code 39 extended。
当然在不同的条码打印软件中code 39的叫法也不同。
一、Code 39码字符集Code 39码也称作3 of 9 code,多应用与企业内部,物流,生成流程上,它支持的字符集有:A-Z这26个大写字母,0-9十个阿拉伯数字,连接号(-),句号(.),空格,美圆符号($),斜扛(/),加号(+)以及百分号(%)共计43个字符,标准的code 39码不支持小写的英文字母这点要注意。
但是有些用户就会发现在制作39码时有些code 39也是可以支持小写英文字符的,这就涉及到code 39码的校验位和另一种类型code 39 full ASCII。
二、Code 39码的校验码及类型。
一般情况下code 39码是不需要校验码,不过于精度要求高的,条码字符类型超出code 39字符集的,就可以使用支持全ASCII码的code 39 full ASCII类型。
在条码打印软件中不同的条码打印软件对于标准的code 39码或者是code 39 full ASCII叫法不同,它们的区别在于code 39 full ASCII支持的字符包含了ASCII全部字符。
三、Code 39码在条码打印软件中的制作之前提过在不同的条码打印软件中code 39码的叫法不同。
在领跑标签条码打印软件中有code 39码和Extended Code 39,其中Extended Code 39就相当于文中介绍code 39 full ASCII码都是支持全ASCII字符。
39码CODE3939码可以包含...
常用一维条形码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 校验方法1.4 条码说明1.5 编码表P.S.在程序中可以使用“11”表示宽黑条,‘1’表示细黑条,“00”表示宽白条,“0”表示细白条。
那么字符1就可以表示为110100101011。
使用此方法建立一个编码表,每个字符可以长度为12的“01”字符串来表示。
1.6 典型CODE39条码1.7 CODE39的扩展码扩展码表同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个控制码的组合时候,送出的字尾所对应的ASCII。
◆有2个检验码C和K。
2.3 校验方法◆先查出资料所对应值,对应值的表如下顺序号作为权值,分别乘以对应值,求和,除以47,取余数◆检查码K由C位用1-15顺序排列,若资料差偶偶15位,再从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)= 611K = 611 ÷47 = 13……0 (余数)則K = 0 = 0 (对应值)2.4 条码说明2.5 编码表P.S.程序编码中,结束符号模块比起始符号多一个“1”;使用控制符组合字母所表示的字符,编码时需要分解成控制符和大写字母两个模块。
Code39条形码编码规则
Code39条形码编码规则Code 39条形码分为标准型Code 39(Standard Code 39)及完全型Code 39(Full ASCII Code 39).标准型Code 39表示的资料内容,包括有A~Z大写英文字母,0~9数字,以及一些特殊符号,共计有44个字符.而Full ASCII Code 39除上述标准型Code 39之44个字符外,再搭配,"/","%","$","+"等前置符号即可扩充成128个字符(含一个起始和结束字符).例如标准形Code 39无英文字母小写,只有大写若大写前加上一个"+",就变成英文小写+A -------> a+B -------> b详细全部的Full ASCII Code 39字符,列于Code 39 Full ASCII表中Code 39编码方式Code 39条形码只有二种粗细比例线,也就是说较粗的线条是细线条的2~3倍,举例说明,如下图标.若细条形码长度x=1mm时,则粗条形码长度应为R=2mm ~ 3mm之间才适当.Code 39检查码Code 39的检查码,可打印可不打印,端看使用者取舍.以下为获得检查码之步骤:步骤一.假设有一Code 39条形码为 "ANDY"步骤二.将各字符相对值相加总 10+23+13+34=80步骤三.用基数43去除加总,取得余数 80/43=1 (37)37即check digit之相对值.步骤四.取相对值之对应值,即为check digit之字符 37-->"." 因此加入check digit之条形码为"ANDY."Code 39特性综合说明1.Code 39起始码/结束码为"*".2.数据字符数总共有43个,搭配"/","%","+","$",可扩展成Full ASCII Code 39字符数变成128个.3.每一字符间有一间隙Gap区隔开来.4.检查码(Check Digit)由计算公式而得.5.检查码(Check Digit)可打印可不打印.6.条形码长度较长,打印允许长度有限制,易超过条形码读取机所能读取之宽度.。
39码条码规则
39码条码规则39码基本知识◆39码是国内常见的条形码之一,三九码39码是在公元1974年发展出来的条形码系统。
三九码之所以在国内常见的原因有两个,一个是因为三九码的限制很少,而且支持文数字;另一个则是它很适用在非正式场合中。
◆三九码的长度,没有强迫性的限制,随着使用者的需求,可自由地调整。
唯在规划时,应该考虑到条形码阅读机(Barcode Reader)所能容许的范围为限,才不致于会有无法读取完整的问题发生。
◆三九码所能表示的资料内容,包含有:0~9 的数字,大写A~Z 的英文字母,「+」,「-」,「*」,「/」,「%」,「$」,「.」,以及空格符(Space)等,共44组编码。
◆三九码在读取方面,允许读码机进行双向的扫瞄读取;也就是说,如果使用者把三九码倒着读取也是得到相同的结果。
◆三九码的检查码,可有可无;使用者可自行斟酌使用。
◆三九码所占用的空间较一般条形码来的宽大。
◆三九码的起始码与终止码均为* 字符。
39码结构特性◆三九码的构成元素如下:起始码 + 资料码 + 终止码◆图解1:起始码下面条形码的蓝色的部份为起始码◆图解2:资料码下面条形码的蓝色的部份为资料码◆图解3:终止码下面条形码的蓝色的部份为终止码39码特殊应用39码的缺点是只能表示 0~9、大写 A~Z、及8个特殊字符等,共44个字符。
但......难道我们就不能显示小写的字母或其它的字符吗??答案是可以的。
在39码的规则里,尚有一个方法可以显示出ASCII 128个字符;那就是搭配我们所提到的8个特殊字符「+」,「-」,「*」,「/」,「%」,「$」,「.」。
但是这种方法必需是您的读码机有提供读取Code 39 Full ASCII 的功能才可以喔!!下面看看每一个字符的对照表及使用原理。
原理:◆状况一:当读码机尚未设定成 Code 39 Full ASCII 功能时......读码机读取到下列的条形码时,会显示出 +U+V◆状况二:当读码机设定成 Code 39 Full ASCII 功能时......码机读取到下列的条形码时,会显示出小写 uv。
常用一维条形码编码规则
常用一维条形码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校验方法找到输入字符串每个字符对应值,求和,除以43,取余数。
1.4条码说明1.5编码表P.S.在程序中可以使用“11”表示宽黑条,‘1’表示细黑条,“00”表示宽白条,“0”表示细白条。
那么字符1就可以表示为110100101011。
使用此方法建立一个编码表,每个字符可以长度为12的“01”字符串来表示。
1.6典型CODE39条码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个控制码的组合时候,送出的字尾所对应的ASCII。
◆有2个检验码C和K。
2.3校验方法◆先查出资料所对应值,对应值的表如下顺序号作为权值,分别乘以对应值,求和,除以47,取余数◆检查码K由C位用1-15顺序排列,若资料差偶偶15位,再从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)= 611K = 611 ÷ 47 = 13…… 0 (余数)則 K = 0 = 0 (对应值)2.4条码说明2.5编码表P.S.程序编码中,结束符号模块比起始符号多一个“1”;使用控制符组合字母所表示的字符,编码时需要分解成控制符和大写字母两个模块。
code39的c语言 -回复
code39的c语言-回复Code 39是一种常见的线性条码标准,由美国的Intermec公司于1974年推出。
它是一种字母数字混合编码系统,用于将数据编码成可读的条码。
Code 39的编码规则相对简单,但功能强大,被广泛应用于零售、物流等领域。
首先,让我们深入了解Code 39的基本概念和编码方法。
Code 39由宽度不等的9条条码组成,其中3条是宽线,6条是窄线,宽窄线的组合表示不同的字符。
每个字符由5个线和4个间隙组成,每个线或间隙的宽度可以是宽度模块(wide module)的1到3倍。
Code 39共有43个字符,包括数字、大写字母、特殊符号和一个检查字符。
在Code 39中,每个字符都由9个元素(bar或space)组成,其中5个是线(bar),4个是间隙(space)。
元素的宽度由宽度模块(wide module)定义,宽度模块是最小可以编码的宽度单位。
例如,如果宽度模块是3像素,那么一个宽线的宽度就是3个像素,一个窄线的宽度就是1个像素。
根据这个规则,我们可以得到Code 39中每个字符的编码。
编码一个字符有两个步骤,首先是转换字符成十进制数字,然后将十进制数字转换成二进制编码。
假设我们要编码字符"A"。
首先,我们查看Code 39的字符集,发现"A"对应的十进制数字是10。
然后,我们将数字10转换成二进制编码,得到"01010"。
接下来,我们将编码中的每个0和1转换成相应的线和间隙,得到最终的Code 39条码。
除了基本的字符编码外,Code 39还有一些特殊字符和一位检查字符。
特殊字符可以用来表示控制指令或提供扩展功能。
检查字符是用来验证条码是否正确扫描的,它是根据已编码字符的位置计算出来的。
如果检查字符正确,那么整个条码就被认为是有效的。
在实际应用中,我们需要一个能够生成Code 39条码的编程语言。
C语言是非常适合的选择,因为它是一种强大而灵活的编程语言,具有广泛的应用范围。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Code 39条形码分为标准型Code 39(Standard Code 39)及完全型Code 39(Full ASCII Code 39).
标准型Code 39表示的资料内容,包括有A~Z大写英文字母,0~9数字,以及一些特殊符号,共计有44个字符.
而Full ASCII Code 39除上述标准型Code 39之44个字符外,再搭配,"/","%","$","+"等前置符号即可扩充成128个字符(含一个起始和结束字符).
例如标准形Code 39无英文字母小写,只有大写
若大写前加上一个"+",就变成英文小写
+A -------> a
+B -------> b
详细全部的Full ASCII Code 39字符,列于Code 39 Full ASCII表中
Code 39编码方式
Code 39条形码只有二种粗细比例线,也就是说较粗的线条是细线条的2~3倍,举例说明,如下图标.
若细条形码长度x=1mm时,则粗条形码长度应为R=2mm ~ 3mm之间才适当.
Code 39检查码
Code 39的检查码,可打印可不打印,端看使用者取舍.
以下为获得检查码之步骤:
步骤一.假设有一Code 39条形码为 "ANDY"
步骤二.将各字符相对值相加总 10+23+13+34=80
步骤三.用基数43去除加总,取得余数 80/43=1 (37)
37即check digit之相对值.
步骤四.取相对值之对应值,即为check digit之字符 37-->"." 因此加入check digit之条形码为"ANDY."
Code 39特性综合说明
1.Code 39起始码/结束码为"*".
2.数据字符数总共有43个,搭配"/","%","+","$",可扩展成
Full ASCII Code 39字符数变成128个.
3.每一字符间有一间隙Gap区隔开来.
4.检查码(Check Digit)由计算公式而得.
5.检查码(Check Digit)可打印可不打印.
6.条形码长度较长,打印允许长度有限制,易超过条形码读取机所能读取之宽度.。