http://blog.sina.com.cn/tian79959261[订阅][手机订阅]
个人资料
tian

评论
读取中...
图片幻灯
音乐播放器
电视机
访客
读取中...
好友
读取中...
友情链接
阿连的BLOG

大学里的老搭档

子翔的BLOG

人们都称他为院长

↑彭★倞倞倞的BLOG

颇受争议的人

小芳BLOG

目前最爽的人

巍巍的BLOG

很有才华的人

大雄的BLOG

最有正事的人

小敏的BLOG

心地善良

死猫的BLOG

小学,高中同学,好朋友

依安人

哈尔滨依安人

双双的BLOG

猴精的弟妹

阿坤的BLOG

有能力的老四

春梅的BLOG

很朴实的人

博文
Code39码编码方式(2008-11-24 21:04)
  39码的每一个字元编码方式,都是藉由九条不同排列的线条编码而得。可区分成如表 2之四种类型:

表 2 39码的字元编码方式

5b.GIF (1991 bytes)

 

Code39码的编码规则:   

1、每五条线表示一个字符;

2、粗线表示1,细线表示0;

3、线条间的间隙宽的表示1,窄的表示0;

4、五条线加上它们之间的四条间隙就是九位二进制编码,而且这九位中必定有三位是1,所以称为39码;

5、条形码

Code39码(2008-11-24 20:58)

    Code39码是西元1974年发展出来的条码系统,是一种可供使用者双向扫瞄的分散式条码,也就是说相临两资料码之间,必须包含一个不具任何意义的空白(或细白,其逻辑值为0),且其具有支援文数字的能力,故应用较一般一维条码广泛,目前较主要利用於工业产品、商业资料及医院用的保健资料,它的最大优点是码数没有强制的限定,可用大写英文字母码,且检查码可忽略不计。

标准的39码是由起始安全空间、起始码、资料码、可忽略不计的检查码、终止安全空间及终止码所构成(徐绍文,1985),以Z135+这个资料为例,其所编成的39码如图 1所示:

5-1.gif (2293 bytes)
图 1 39码的结构

 

ISSN码的Delphi实现(2008-11-24 20:36)

unit UnitEAN;

interface

uses Graphics, Windows, SysUtils, Dialogs;

const
  //EAN 左资料码 A 类编码
  EAN_A: array [0..9] of String =
  ( '0001101', '0011001', '0010011', '0111101', '0100011'
  , '0110001', '0101111', '0111011', '0110111', '0001011'
  );

  //EAN 左资料码 B 类编码
  EAN_B: array [0..9] of String =
  ( '0100111', '0110011', '0011011', '0100001', '0011101'
  , '0111001', '0000101', '0010001', '0001001', '0010111'
  );

  //EAN 右资料码 C 类编码
  EAN_C: array [0..9] of String =
  ( '1110010', '1100110', '1101100', '1000010', '1011100'
  , '1001110', '1010000', '1000100', '1001000', '1110100'
  );

//EAN 检查码
function EANCheck(InChar: String): String;
//EAN-13 转换二进制码
function EAN_13Convert(ConvertStr: String): String;

//输出ISSN码
procedure Cr

ISSN码(2008-11-24 20:34)
    国际标准期刊号 ( International Standard Serial Number,简称 ISSN ),是根据国际标准组织 1975年制订之 ISO-3297 的规定,由设於法国巴黎的国际期刊资料系统中心 ( International Serial Data System - ISDS International Centre)所赋予申请登记的每一种刊物一个具有识别作用且通行国际间的统一编号。

「期刊」是指任何一系列定期或不定期连续出版的刊物,它们通常以一定的刊名发行,以「年月日」,「年月」或数字标明卷、号、期数。市面上常见的期刊、杂志、丛刊、年刊等大都属於国际标准期刊号的编号与编码范围。每一种期刊在注册登记时,就得到一个永久专属的 ISSN ,一个 ISSN 只对应一个刊名;而一个刊名也只有一个 ISSN 。 所以当该刊名变更时,就得另申请一个 ISSN 。 如果期刊停刊,那麽被删除的 ISSN 也不会被其他期刊再使用。因此,国际期刊资料系统中心在分配 ISSN 时,必须为该期刊编订一个有别於其他期刊刊名的识别题名 ( Key Title )。

 

ISBN码的Delphi实现(2008-11-24 11:10)

unit UnitEAN;

interface

uses Graphics, Windows, SysUtils, Dialogs;

const
  //EAN 左资料码 A 类编码
  EAN_A: array [0..9] of String =
  ( '0001101', '0011001', '0010011', '0111101', '0100011'
  , '0110001', '0101111', '0111011', '0110111', '0001011'
  );

  //EAN 左资料码 B 类编码
  EAN_B: array [0..9] of String =
  ( '0100111', '0110011', '0011011', '0100001', '0011101'
  , '0111001', '0000101', '0010001', '0001001', '0010111'
  );

  //EAN 右资料码 C 类编码
  EAN_C: array [0..9] of String =
  ( '1110010', '1100110', '1101100', '1000010', '1011100'
  , '1001110', '1010000', '1000100', '1001000', '1110100'
  );

//EAN 检查码
function EANCheck(InChar: String): String;
//EAN-13 转换二进制码
function EAN_13Convert(ConvertStr: String): String;
//输出ISBN码
procedure Cre

ISBN码(2008-11-24 10:34)
  国际标准书号 ( International Standard Book Number,简称 ISBN ),是为因应图书出版、管理的需要,并便於国际间出版品的交流与统计所发展的一套国际统一的编号制度,由一组冠有“ISBN”代号(978)的十位数码所组成,用以识别出版品所属国别地区或语言、出版机构、书名、版本及装订方式。这组号码也可以说是图书的代表号码。国际标准书号有助於简化图书发行及管理手续,便於出版品统计及国际交流。世界各地的出版机构、书商、及图书馆都可以利用国际标准书号迅速而有效的识别某一本书及其版本、装订形式。不论原书是以何种文字书写,都可用电报或电话传真订购,并以电脑作业处理。

  制作条码时,EAN码中图书类的代码是978,亦即只要将EAN的国家代码部分改为978,再重新计算检查码,即为ISBN条码,其馀处理均相同,图为ISBN的结构图。简单来说,ISBN与EAN的对应关系为:978 + ISBN前9码 + EAN检查码。

图 ISBN码结构

ISBN 码 / ISSN 码(2008-11-24 10:31)
  ISBN与ISSNEAN的用途很广,除了我国的商品条码CAN以及日本商品条码JAN外,目前国际认可的书籍代号与期刊号的条码,也都是由EAN变身而来的。书籍的国际认可代号称为国际标准书号(International Standard Book Number, ISBN),期刊的国际认可代号则称为国际标准期刊号(International Standard Serial Number, ISSN),原本ISBN与ISSN的条码编号申请是独立於国家EAN编号系统的,不过1991年国际标准书号总部为提倡图书与期刊条码化,函告各出版社,其出版品的ISBN与ISSN可并入EAN系统,不必再向该国EAN负责机构申请条码编号,也不需要再付任何费用。
EAN-8码Delphi实现(2008-11-23 23:18)

unit UnitEAN;

interface

uses Graphics, Windows, SysUtils, Dialogs;

const
  //EAN 左资料码 A 类编码
  EAN_A: array [0..9] of String =
  ( '0001101', '0011001', '0010011', '0111101', '0100011'
  , '0110001', '0101111', '0111011', '0110111', '0001011'
  );

  //EAN 左资料码 B 类编码
  EAN_B: array [0..9] of String =
  ( '0100111', '0110011', '0011011', '0100001', '0011101'
  , '0111001', '0000101', '0010001', '0001001', '0010111'
  );

  //EAN 右资料码 C 类编码
  EAN_C: array [0..9] of String =
  ( '1110010', '1100110', '1101100', '1000010', '1011100'
  , '1001110', '1010000', '1000100', '1001000', '1110100'
  );

//EAN 检查码
function EANCheck(InChar: String): String;

//EAN-8 转换二进制码
function EAN_8Convert(ConvertStr: String): String;
//输出EAN-8码
procedure Cre

日记 [2008年11月23日](2008-11-23 23:06)

EAN-8码的结构

    EAN缩短码共有8位数,当包装面积小於120平方公分以下无法使用标准码时,可以申请使用缩短码。其结构与编码方式如图 1所示。包括:

  1. 国家号码与标准码同。
  2. 厂商单项产品号码,系每一项需使用缩短码的产品均需逐一申请个别号码。
  3. 检查码的计算方式与标准码相同。

 

EAN-13码的delphi实现(2008-11-23 22:42)

unit UnitEAN;

interface

uses Graphics, Windows, SysUtils, Dialogs;

const
  //EAN 左资料码 A 类编码
  EAN_A: array [0..9] of String =
  ( '0001101', '0011001', '0010011', '0111101', '0100011'
  , '0110001', '0101111', '0111011', '0110111', '0001011'
  );

  //EAN 左资料码 B 类编码
  EAN_B: array [0..9] of String =
  ( '0100111', '0110011', '0011011', '0100001', '0011101'
  , '0111001', '0000101', '0010001', '0001001', '0010111'
  );

  //EAN 右资料码 C 类编码
  EAN_C: array [0..9] of String =
  ( '1110010', '1100110', '1101100', '1000010', '1011100'
  , '1001110', '1010000', '1000100', '1001000', '1110100'
  );

//EAN 检查码
function EANCheck(InChar: String): String;
//EAN-13 转换二进制码
function EAN_13Convert(ConvertStr: String): String;
//输出EAN-13码
procedure C