JPH10171913A - 16ビットキャラクターをエンコード可能なバーコード、及び該バーコードの印刷及び読取り装置及び方法 - Google Patents

16ビットキャラクターをエンコード可能なバーコード、及び該バーコードの印刷及び読取り装置及び方法

Info

Publication number
JPH10171913A
JPH10171913A JP9262602A JP26260297A JPH10171913A JP H10171913 A JPH10171913 A JP H10171913A JP 9262602 A JP9262602 A JP 9262602A JP 26260297 A JP26260297 A JP 26260297A JP H10171913 A JPH10171913 A JP H10171913A
Authority
JP
Japan
Prior art keywords
character
symbol
characters
code
group
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9262602A
Other languages
English (en)
Inventor
Sprague H Ackley
スプレイグ アックリー エイチ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intermec Technologies Corp
Original Assignee
Intermec Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Intermec Corp filed Critical Intermec Corp
Publication of JPH10171913A publication Critical patent/JPH10171913A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06018Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking one-dimensional coding
    • G06K19/06028Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking one-dimensional coding using bar codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K1/00Methods or arrangements for marking the record carrier in digital fashion
    • G06K1/12Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching
    • G06K1/121Methods or arrangements for marking the record carrier in digital fashion otherwise than by punching by printing code marks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light

Abstract

(57)【要約】 【課題】 ユニコードのような既知の16ビットデータ
キャラクタエンコード規格において人間が読める各キャ
ラクタに対し1つの記号キャラクタを直接エンコードす
るバーコード記号表示法を提供する。 【解決手段】 バーコード記号表示法は、各記号として
6つのバー及び6つのスペースを使用し、各記号キャラ
クタに対して21モジュールの全巾を有し、従って、
(21,6)記号表示法である。6モジュールより大き
な巾をもつ記号キャラクタのバー及びスペースは、6よ
り多い隣接する1ワイドエレメントの境界ストリングと
同様に、排除される。その結果、記号表示は、ワンドで
走査可能であり、容易に印刷でき、そして焦点ずれした
ときに読み取ることができる。パリティコードを使用し
て、記号キャラクタ間のハミング距離を最大にすること
により記号表示のデータ機密性を改善することができ
る。この記号表示法は、80,077個のデータキャラ
クタをエンコードする。素数個の記号キャラクタを使用
することにより、健全なエラー修正及びエラー検出能力
が与えられる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、新規な機械読み取
り可能な記号表示法、及びこの記号表示法のもとでバー
コード記号を読み取り又は印刷するための装置及び方法
に係る。
【0002】
【従来の技術】バーコード記号表示法は、ケルモード氏
により米国特許第1,985,035号に最初に開示さ
れ、そしてその短期間の後の1930年代に、ウェスチ
ングハウスに譲渡されたヤング氏の米国特許第2,02
0,925号において発展された。これらの初期の記号
表示法は、反射度の低い多数の単一巾のエレメント即ち
「バー」が反射度の高いエレメント即ち「スペース」で
分離されたものを形成することにより印刷された。「エ
レメント」とは、バー又はスペースである。これら初期
の記号表示法、及び今日使用されている多数の「バーコ
ード記号表示法」は、所与の記号のデータが1つの軸即
ち方向に沿ってデコードされるので、「直線的記号表示
法」と称することができる。直線的記号表示法のような
記号表示法は、「データキャラクタ」(例えば人間が読
み取り可能なキャラクタ)を「記号キャラクタ」として
エンコードし、これら記号キャラクタは、特定のデータ
キャラクタをエンコードするためのパターンの独特のグ
ループを形成する交互のバー及びスペースの一般的に平
行な配列体である。データキャラクタは、人間が読むこ
とのできるキャラクタを含むだけでなく、ある種の機能
的データを与えるスタート、ストップ又はシフトキャラ
クタのような特殊な機能的キャラクタも含む。所定巾内
のバー及びスペースの各独特のグループ又はパターン
は、特定の記号キャラクタ、ひいては、特定のデータキ
ャラクタ(1つ又は複数)を定義する。
【0003】既知のUPC記号表示法は、IBMのサビ
ア及びローレルにより1974年に(7,2)「n,k
コード」として一般的に説明された。「n,kコード」
は、各記号キャラクタが「k」個のバー及びスペースを
有しそしてその全長が「n」モジュール長さであるよう
な記号表示法として定義される。それ故、UPC記号表
示法は、各記号キャラクタにおいて2つのバー及び2つ
のスペースをエンコードし、各記号キャラクタは、モジ
ュール長さが7である。「モジュール」とは、バーコー
ド記号表示法における最も狭い公称巾単位の尺度である
(1ワイドのバー又はスペース)。「公称」とは、印刷
エラー等に関わりなく特定のパラメータの意図された値
を指す。一般的な計数技術のもとで、7モジュールにお
いて遷移が生じ得る6つの位置がありそして2つのバー
及び2つのスペースに対して3つの内部遷移があること
を理解することにより、考えられる記号キャラクタの数
を見つけることができる。それ故、UPC記号表示法に
対する独特の記号キャラクタの数は、単に6から3を選
ぶことで、20に等しい。同様に、(11,3)記号表
示法であるコード128記号表示法のもとでは、252
の独特の記号キャラクタを使用できる(10から5を選
ぶ)。
【0004】UPC、EAN、コード11及びコードバ
ーとして知られているバーコード記号表示法は、全て、
数値データキャラクタと、「+」及び「−」のような若
干の特殊なキャラクタのみをサポートするバーコード記
号表示法の標準である。UPC記号表示法は、バーコー
ドの標準であると共に、標準的な用途(顧客商品)にお
いて業界に採用されているという点で工業標準でもあ
る。バーコード標準のコード39は、最初に開発された
アルファニューメリックバーコード記号表示法の標準で
ある。しかしながら、これは、43キャラクタに制限さ
れる。
【0005】コード93は、コード39の改良である。
コード93は、4エレメント巾を用いた連続バーコード
記号表示法である。コード93の各記号は、黒又は白
(バー又はスペース)の9モジュールを有する。コード
93規格の各記号は、3つのバー及び3つのスペース
(6つのエレメント)を含み、その全長は、9モジュー
ル長さである。従って、記号当たり9つのモジュールと
3つのバーを有するコード93は、56個の考えられる
キャラクタ(8から5を選ぶ)を有する(9,3)記号
表示法である。縁から縁までデコードするという理由
で、コード93記号表示法規格は、48個の独特の記号
しか定義せず、従って、そのキャラクタセットの47個
のキャラクタとスタート/ストップコードを定義できる
だけである。47個のキャラクタは、数値キャラクタ0
−9と、アルファニューメリックキャラクタA−Zと、
幾つかの付加的な記号と、4つのシフトコードとを含
む。
【0006】コンピュータ業界では、それ自身のキャラ
クタエンコード標準、即ち情報交換用のアメリカ標準コ
ード(ASCII)が使用される。ASCIIは、12
8個のキャラクタ及び記号を含むキャラクタセットを定
義する。ASCIIの各キャラクタは、独特の7ビット
コードにより表される。コード39及びコード93は5
0未満のキャラクタに制限されるので、これらの規格
は、各ASCIIキャラクタを独特に表すには不充分で
ある。しかしながら、コード93の4つのシフトコード
は、この規格で128個の全てのASCIIキャラクタ
を明確に表すことができるようにする。1つの欠点は、
単一のASCIIキャラクタを表すのに、一連の2つの
コード93記号が必要とされることである。従って、A
SCIIキャラクタセットのキャラクタを表すバーコー
ドラベルは、コード93キャラクタセットのキャラクタ
を表すラベルの2倍の長さになる。
【0007】完全なASCIIキャラクタセットをエン
コードするために、コード128のような新規なバーコ
ード記号表示法規格が開発されたが、これらの規格は、
あるキャラクタを表すのにシフトコード又は他の先行記
号を必要とすることを含む幾つかの欠点がある。これら
の記号表示法は、全て、ASCIIキャラクタセット全
体を処理するのに長い処理時間及び大きなオーバーヘッ
ドを必要とする。
【0008】コンピュータ産業は、ASCIIキャラク
タセットの限界を越えて成長した。コンピュータマーケ
ットが成長するにつれて、ASCIIキャラクタセット
では定義されない付加的な言語をサポートする必要性も
現れた。関連言語においてキャラクタのクラスターを受
け入れるために新たなキャラクタセットが開発されてい
る。オリジナルの7ビットASCIIキャラクタセット
は、8ビットに拡張され、従って、付加的な128個の
キャラクタ又はデータ値を与える。付加的なキャラクタ
として許されたこの付加的な128のデータ値(上位1
28)は、表示されるべき関連ロマンス言語(即ち、フ
ランス語、ドイツ語、スペイン語、等)に存在する。
【0009】しかしながら、コンピュータマーケットが
国際的に成長するにつれて、更に多くの言語をキャラク
タセットに含ませることが必要になった。特に、アジア
のマーケットは、数千の独特のキャラクタをサポートす
るコンピュータに使用可能なキャラクタセットを必要と
する。これらキャラクタの各々を独特に定義するため
に、16ビットのエンコード規格が必要とされる。
【0010】ユニコード、JISC−6226−198
3等の多数の16ビットエンコード規格が最近開発され
ている。ユニコードキャラクタエンコード規格は、固定
長さの均一テキスト及びキャラクタのエンコード規格で
ある。ユニコード規格は、65,536個までのキャラ
クタを含むことができ、現在では、ギリシャ語、ヘブラ
イ語、ラテン語、日本語、中国語、韓国語及び台湾語を
含む世界的スクリプトに28,000以上のキャラクタ
マップを含むことができる。ユニコード規格はASCI
Iキャラクタセットにおいてモデリングされる。ユニコ
ードキャラクタ値は、言語に関わりなく、一貫して16
ビットの長さであり、従って、いかなる言語のいかなる
キャラクタを指定するのにも、エスケープシーケンスや
コントロールコードを必要としない。ユニコードキャラ
クタエンコード法は、記号、アルファベット文字及び表
意文字を等しく処理し、従って、種々のコンピュータア
プリケーションに同時に且つ等しい設備で使用すること
ができる。ユニコードキャラクタエンコード法を用いて
キャラクタを表すが、テキストを表示又は印刷しないコ
ンピュータプログラムは、新たなスクリプト又はキャラ
クタが導入されたときに不変に保持することができる。
【0011】
【発明が解決しようとする課題】新たなコンピュータオ
ペレーティングシステム、例えば、ワシントン州、レド
モンドのマイクロソフト者により製造されたWINDO
WS NTは、これらの包括的な16ビットコード規格
をサポートし始めている。しかしながら、データ収集業
界は、コンピュータ業界と歩調を合わせられずにいる。
16ビットのコンピュータキャラクタコードをバーコー
ド記号に容易にエンコードするためのシステムが現在の
ところ存在しない。それ故、これら16ビットのコンピ
ュータキャラクタ規格をデータ収集業界、特にバーコー
ド記号表示法に対してサポートする必要が生じている。
【0012】更に、ほとんどのアルファニューメリック
バーコード記号表示法は、長い一連の数字をエンコード
するのに使用したときに不充分である。例えば、コード
93を使用して一連の10進数をエンコードするときに
は、26個のアルファベット文字を表す26個のバーコ
ード記号は使用されない。それ故、これらのアルファニ
ューメリックバーコード記号表示法で長い一連の数字を
効率的に表示できることが要望される。
【0013】良く知られたように、ほぼ全ての記号表示
法のもとでエンコードされるデータキャラクタは、レー
ザスキャナ又は他のバーコード読取装置によりデコード
されたときにエラーを生じることがある。エラーを減少
するために、ある記号表示法は、チェックキャラクタを
含んでいる。「チェックキャラクタ」とは、所与のバー
コード記号内(通常は記号キャラクタの終りであるが、
この機能にとって位置は重要でない)に含まれた記号キ
ャラクタであり、その値は、記号が正しくデコードされ
たかどうかを判断する数学的チェックを実行するのに使
用される。
【0014】例えば、既知のコード39記号表示法は、
記号において最後の記号キャラクタとして含ませること
のできる任意のモジュロ43チェックキャラクタを有す
る。コード39のチェックキャラクタは、オリジナルメ
ッセージにおける各データキャラクタごとにキャラクタ
値を決定し、全てのキャラクタ値を一緒に加算し、そし
てその和を43で除算することにより計算される。チェ
ックキャラクタは、このような除算から生じる残余とな
り、メッセージからエンコードされるラベルの端に添付
される。「キャラクタ値」又は「記号コード」は、所与
の記号表示法におけるデータキャラクタを表す数であ
る。例えば、コード39記号表示法では、データキャラ
クタ「A」は、キャラクタ値「10」を有する。
【0015】コード39記号表示法は、素数の記号キャ
ラクタである43個の記号キャラクタを使用する。それ
故、モジュロ43の数学関係を使用してチェックキャラ
クタを発生する場合には、所与の一連のデータキャラク
タに対する独特のチェックキャラクタが常に得られる。
しかしながら、UPC記号表示法は、モジュロ10のチ
ェックキャラクタを使用している。10は、係数1、2
及び5をもつ非素数であり、従って、モジュロ10のチ
ェックは、若干のエラーを検出する。その結果として、
UPC記号表示法のアプリケーション環境は、チェック
機構のこのような欠点を補償するためにルックアップテ
ーブルを含むデータベースを使用する。
【0016】他の記号表示法は、エラー修正キャラクタ
を用いることにより、チェックキャラクタの使用に改善
を与える。チェックキャラクタと同様のエラー修正キャ
ラクタが、記号又はラベルにおける他の記号キャラクタ
から数学的に計算される。エラー修正キャラクタは、削
除修正、エラー修正及び/又はエラー検出に指定された
ラベルにおける記号キャラクタである。削除は、欠落、
未走査、又はデコード不能の記号キャラクタであり、記
号キャラクタの位置は分かっているが、その値は未知で
ある。削除は、コントラストが不充分な記号の部分、読
取装置の視野から外れる記号、又は抹消された部分から
生じる。エラーは、誤ってデコードされるか又は誤って
配置された記号キャラクタで、その記号キャラクタの位
置及び値は、両方とも未知である。エラーは、記号が印
刷されるときのランダムな汚れや空所から生じる。
【0017】エラーについては、エラー修正キャラクタ
により、読取装置は、記号におけるこれらのキャラクタ
を使用して、未知の値及び位置をもつエラーを探索しそ
して修正することができる。各エラーを修正するには、
2つのエラー修正キャラクタが必要とされ、一方のエラ
ー修正キャラクタは、エラーのある記号キャラクタを位
置決めするものであり、そして第2のエラー修正キャラ
クタは、そのエラーのある記号キャラクタがどんな値で
なければならないかを決定するものである。削除につい
ては、エラー修正キャラクタにより、読取装置は、これ
らのキャラクタを使用して、既知の位置をもつエラーの
ある又は欠落した記号キャラクタを修正することができ
る。従って、各削除ごとに1つのエラー修正キャラクタ
しか必要とされない。
【0018】コード・ワン及びPDF417のようなあ
る記号表示法は、多数のエラー修正キャラクタを有す
る。例えば、コード・ワン記号表示法は、特に、記号キ
ャラクタの27%−50%がエラー修正に割り当てられ
るように設計される。従って、コード・ワン記号表示法
は、単にチェックキャラクタを使用するだけの他の記号
表示法よりも数学的に何桁も精度が高い非常に確実なデ
コード法である。しかしながら、このようなエラー修正
キャラクタは、当然、ラベルの付加的なエリアを必要と
し、それ故、ラベルの情報密度を減少する。更に、コー
ド・ワン及びPDF417の記号表示法は、エリア又は
スタック型の記号表示法である。従って、それらは、非
常に精巧で、ひいては、読取装置がそれらをデコードす
るのに経費高となる。
【0019】典型的なバーコードスキャナは、可変巾の
バー及びスペースを有するバーコードから異なるアナロ
グ波形を発生することによりバーコードを読み取る。ス
キャナが最小の1ワイドのエレメントを充分に分析でき
ないときは、それより巾の広いエレメント(即ち、2ワ
イド以上の巾のエレメント)しか分析されない。バー又
はスペースは、スキャナが所与のバー又はスペースに対
応する波形の山又は谷を識別できる場合に「分析」され
る。全般的に、公知の記号表示法の全ての欠点を克服
し、未分析又は焦点ずれのときにもデコードすることが
でき、且つ非常に機密性の高い記号表示法を提供するこ
とが要望される。
【0020】
【課題を解決するための手段】本発明は、16ビットの
エンコード規格で表されたキャラクタを新たな16ビッ
ト記号表示へとエンコードすることにより、上記問題を
解消すると共に、付加的な利点を提供する。16ビット
キャラクタを表すバーコード記号を人間が読めるキャラ
クタへ及びその逆にデコードするための方法について以
下に説明する。本発明は、国際的なキャラクタをエンコ
ードしてバーコードラベルに印刷し、これを後でバーコ
ード読取装置で読み取ることができるようにする。
【0021】本発明による新規なバーコード記号表示法
は、ユニコードのような既知の16ビットデータキャラ
クタエンコード規格において人間が読める各キャラクタ
ごとに1つの記号キャラクタを直接的にエンコードす
る。この記号表示法は、各記号に6つのバー及び6つの
スペースを使用し、各記号キャラクタに対して21モジ
ュールの全巾を有し、従って、(21,6)記号表示法
である。巾が6モジュールより大きい記号キャラクタの
バー及びスペースは、6つの隣接する1ワイドエレメン
トより大きいストリングとして排除される。その結果、
この記号表示法はワンドで走査可能であり、容易に印刷
でき、そして焦点ずれしたときに読み取ることができ
る。記号キャラクタ間のハミング距離を最大にし、従っ
て、記号表示法のデータ機密性を改善し得るように、パ
リティコードが使用される(例えば、各記号キャラクタ
の全てのバーの全巾は、偶数に等しい)。その結果、本
発明の記号表示法は、好ましくは、80,077個のデ
ータキャラクタをエンコードする。素数個の記号キャラ
クタを使用することにより、この記号表示法は、健全な
エラー修正及びエラー検出能力を発揮する。エンコード
されたデータキャラクタは、ユニコードキャラクタを含
むだけでなく、圧縮された3及び4桁の数値キャラクタ
と、単一の独特の記号キャラクタとして各々エンコード
されるアルファニューメリックキャラクタの圧縮対も含
む。この記号表示法のもとでのスタートキャラクタのセ
ットは、所与のラベルのスタートを指示するだけでな
く、そのデータキャラクタをエンコードもし、そして異
なるキャラクタセットへ変化するか又はそれにラッチす
るように使用することができる。
【0022】本発明は、16ビットのエンコード規格で
表されたキャラクタを、バーコード記号により各16ビ
ットコードを独特に表すように形成される独特のバーコ
ード記号表示へとエンコードする。このエンコード方法
は、選択されたキャラクタに対し少なくとも16ビット
を有するキャラクタコードを決定し、そのキャラクタコ
ードをバーコードに変換し、そしてそのバーコードのコ
ードに対応するバーコード記号を印刷するという段階を
備えている。16ビットキャラクタコードをバーコード
のコードに変換する段階は、ルックアップテーブルから
バーコードのコードを形成するか、又はあるアルゴリズ
ムを経てそれを発生するという段階を含む。上記方法に
より印刷されたバーコード記号を読み取るために逆の方
法が実行される。
【0023】
【発明の実施の形態】本発明の他の特徴及びそれに関連
した効果は、添付図面を参照した以下の詳細な説明より
明らかとなろう。ここで一般的に使用するものとして、
次のような定義を適用する。「データキャラクタ」と
は、記号、数字、アルファベット文字、及び表意文字を
含む人間が読めるキャラクタ、並びにファンクションコ
ードや、シフトコード等の読めないデータを指し;「数
値ストリング」とは、通常は10進数字のような一連の
数字を指し;「16ビットコード」又は「16ビットキ
ャラクタコード」とは、ユニコードのような16ビット
キャラクタエンコード規格におけるキャラクタの16進
又は10進表示を指し;「バーコード記号表示」とは、
データキャラクタのセットを独特に表すための機械読み
取り可能なキャラクタ又は記号キャラクタのセットを指
し;「バーコード規格」とは、データ収集の分野で認め
られた又はその分野で一般に使用されるバーコード記号
表示法(例えば、コード128)を指し;「記号コー
ド」とは、バーコード記号表示におけるデータキャラク
タを表す通常の数字のようなコードを指し;「記号キャ
ラクタ」とは、特定のデータキャラクタを表すためにバ
ーコード記号表示法に使用される独特の幾何学的形状又
はバー/スペースのパターンを指し;そして「カウン
ト」とは、バーコード記号表示におけるデータキャラク
タに対応する記号キャラクタを読み取るときに形成され
る独特の1組の電気信号を指すものとする。
【0024】例えば、16ビットキャラクタのエンコー
ド規格「ユニコード」においては、データキャラクタ
「A」は、16進表示法では16ビットコード「004
1」によりそして10進では「65」により表される。
データキャラクタ「A」は、バーコード規格「コード9
3」においては、「10」の記号コードを有する。コー
ド93における記号コード10は、2モジュール巾のバ
ーの後に、1モジュール巾のスペース、1モジュール巾
のバー、1モジュール巾のスペース、1モジュール巾の
バー及び3モジュール巾のスペースが続くパターンを有
する記号キャラクタに対応する。この記号の印刷に関連
したカウントは、一般的に、各プリンタにとって独特で
あり、サーマルプリンタの場合には、プリンタを通るラ
ベルの方向に対してバーが垂直に配置されて感熱紙が通
過するときにプリンタの加熱素子を適切に作動するため
のバーとスペースとの間の遷移の間の時間インターバル
を表す。或いは又、カウントは、プリンタを通るラベル
の方向とバーが平行であるときには、どのドット即ちサ
ーマルプリント素子を作動するかを指示することもでき
る。
【0025】「Han Ma」とも称される本発明の新
規なバーコード記号表示法は、16ビットキャラクタコ
ードにおける各16ビットコードを記号キャラクタによ
って独特に表すように形成される。本発明の記号表示法
は、例えば、ユニコード規格において16ビットキャラ
クタコードを表すために少なくとも65,536個の記
号キャラクタを有していなければならない。16ビット
キャラクタコードを表すために少なくとも65,536
個の記号キャラクタを有するために、20−22モジュ
ールの記号キャラクタセットが使用される。以下のテー
ブル1は、合理的な範囲のk(即ち、各記号キャラクタ
におけるバー/スペースの数)を有する記号表示に対し
て使用できるキャラクタの全数を示す。 テーブル1 n,kセットに対して考えられるキャラクタの全数 n=20ないし22、k=4ないし8 n k(記号キャラクタ当たりのバー/スペースの数) (記号キャラクタ 当たりの全モジ 4 5 6 7 8 ュール数) 20 50,388 92,378 75,582 27,132 3,876 21 77,520 167,960 167,960 77,520 15,504 22 116,280 293,930 352,716 203,490 54,264 テーブル1から明らかなように、20モジュール、並び
に記号キャラクタ当たり5及び6バー(及びスペース)
を使用するセットは、各々、92,378までのデータ
キャラクタ及び75,582までのキャラクタを表すこ
とができる。これら「20型のセット」は、ユニコード
データキャラクタエンコード規格において65,536
個の16ビットコードを表すのに充分である。しかしな
がら、21モジュールを有するセットが好ましい。とい
うのは、記号キャラクタの数が多いと(167,960
まで)、改良されたデータ機密性、エラー修正、及び以
下に述べる他の利点が得られるからである。
【0026】このような大きなセットは、パリティコー
ドを使用できるようにする。当業者に明らかなように、
記号キャラクタ間のハミング距離は、ハミング距離1の
全ての記号キャラクタを排除しそして残りの記号キャラ
クタのみを記号表示に使用することにより最大にするこ
とができる。本発明の記号表示法は、例えば、各記号キ
ャラクタにおける全てのバーのモジュールの和を偶数に
等しくすることによりパリティをその記号キャラクタセ
ットに使用する。
【0027】パリティがない状態では、読み取りの機密
性の対応する減少を相殺するために第2のエラー検出又
はチェックキャラクタが必要とされる。その結果、記号
表示法は1モジュール/記号キャラクタしかセーブしな
いので、1つのチェックキャラクタのみのパリティを有
する記号表示法のもとでエンコードされた同じメッセー
ジと同等になるためには、非パリティ記号表示法のもと
でエンコードされた20以上のデータキャラクタのメッ
セージ又はストリングが必要となる。従って、本発明の
記号表示法は、特にデータキャラクタの短いストリング
に対しパリティを使用することにより情報密度を改善す
る。
【0028】更に、パリティは、記号キャラクタのスト
リングにおけるエラーの位置が分かるようにすることに
より、1つの記号キャラクタでエラー修正を行うことが
できる。例えば、ラベルにおける1つの記号キャラクタ
が奇数パリティを有する場合に、読取装置は、そのキャ
ラクタにエラーがあることを確認する。従って、以下に
述べる単一エラー修正キャラクタは、エラーのある記号
キャラクタを修正し、そしてそれを置き換えることがで
きる。本発明は、パリティを使用するので、131,0
72(2x65,536)以上の記号キャラクタの数を
もつテーブル1のセットしか使用できない。(21,
5)及び(21,6)のセットが適当であり、n=22
の3つのセット及びn>22のセットも全て同様であ
る。しかし、できるだけ短い記号キャラクタを与えるた
めに(情報密度を高めるために)、本発明の記号表示法
は、n=21のセットを使用する。n=21の2つのセ
ットのうち、(21,5)セットは、不所望に大きなエ
レメントを伴う多数の記号キャラクタを有する(以下に
述べる)。従って、本発明では、(21,6)セットの
使用が好ましい。
【0029】(21,6)セットから使用できる16
7,690の記号キャラクタのうち、パリティの必要性
のために本発明の記号表示法では約半分が未使用であ
る。加えて、6モジュールより大きな全ての記号キャラ
クタは、好ましくは除去される。最大6モジュール巾の
エレメントが好ましい。というのは、サーマルプリンタ
のプリントヘッドは、巾6モジュールより大きなバーを
印刷するときには過熱状態になるからである。又、6モ
ジュールより大きなスペースは、読取装置により、記号
又はラベルの終りとして(即ち静寂ゾーンとして)解釈
される。更に、非常に巾の広いエレメントを排除するこ
とにより、本発明の記号表示法は、著しい加速歪を伴う
ことなく、ワンドをベースとするバーコード読取装置を
用いて容易にデコードすることができる。6モジュール
より大きなエレメントを有する全ての記号キャラクタが
排除された場合には、81,796個のデータキャラク
タを表すことができる。このデータキャラクタの数は、
ユニコンにより表されたデータキャラクタの数より大き
い。
【0030】焦点ずれしたデコード動作を最大限に容易
にするために、単一巾エレメントの長いストリングの発
生を制限するのが更に望ましい。本発明者の「未分析の
バーコードプロファイルをデコードする方法及び装置(M
ethod and Apparatus for Decoding Unresolved Bar Co
de Profiles)」と題する米国特許第5,389,770
号;「未分析の多巾バーコード記号表示プロファイルを
デコードする方法及び装置(Method and Apparatus for
Decoding Unresolved Milti-Width Bar Code Symbology
Profiles)」と題する第5,486,689号;及び
「未分析の複雑な多巾バーコード記号表示プロファイル
をデコードする方法及び装置(Method andApparatus for
Decoding Unresolved Complex Milti-Width Bar Code
SymbologyProfiles)」と題する第5,514,858号
に説明されたように、焦点ずれした記号プロファイル
は、分析されたワイドエレメント間に「失われた」1ワ
イドエレメントの数を決定することによりデコードする
ことができる。1ワイドエレメントの数が、例えば12
を越える場合には、これら特許に開示されたデコード技
術のもとでは問題が増加する。同様に、12より多い1
ワイドエレメントのストリングは、デコードするのが困
難であり(例えば、ワンド型の読取装置を使用して)、
そして6ワイドエレメントより大きな同じ読み取り裕度
を有する。
【0031】それ故、本発明の記号表示法は、記号キャ
ラクタのいずれかの端に隣接1ワイドエレメントを6個
より多く有する全ての記号キャラクタを排除する。その
結果として、任意のラベルにおける1ワイドエレメント
の最も長いストリングは12となる(2つの隣接する記
号キャラクタの場合に、その一方は、6個の1ワイドエ
レメントで終り、そして他方は、6個の1ワイドエレメ
ントで始まる)。従って、(21,6)セットのもとで
は、記号キャラクタのいずれかの端に6個より多くの1
ワイドエレメントを有する全ての記号キャラクタが排除
された後に、全部で80,130個の記号キャラクタが
使用できる。
【0032】本発明の記号表示法は、好ましくは、上記
特徴を保持しながら、(21,6)セットに最大素数の
記号キャラクタを使用する。素数の記号キャラクタを使
用することにより、本発明の記号表示法は、最も強力な
チェック機能を有し、そしてエラー修正を容易にする。
スタートキャラクタ(以下に述べる)の設計により、全
部で80,130個の記号キャラクタが48キャラクタ
だけ減少されて、80,082個の使用可能な記号キャ
ラクタを生じる。80,082未満の最大の素数は、8
0,077であり、これが、本発明の記号表示法のもと
での全記号キャラクタ数である。
【0033】80,077個の記号キャラクタから6
5,536個のユニコードデータキャラクタを減算する
と、14,594個の付加的な記号キャラクタが与えら
れる。本発明の記号表示法は、好ましくは、この残りの
記号キャラクタのうちの11,000を使用して高密度
の数値をエンコードし、そしてその残りは、2倍密度の
アルファニューメリックキャラクタをエンコードするの
に用いられる。いずれかの残りのキャラクタは、以下に
述べるように、多数のスタートキャラクタ及び特殊なキ
ャラクタに使用される。
【0034】スタートキャラクタは、自動弁別エラーを
回避するために他の記号表示法とは独特であるよう選択
される。更に、スタートキャラクタは、各記号キャラク
タの最初の部分は同じであるが、最後の部分が異なるよ
うに、記号キャラクタのサブセットとなるよう選択され
る。これは、本発明の記号表示法を他の記号表示法から
識別しそして走査の方向を決定するのに加えて、データ
及び/又は他の機能をスタートキャラクタにおいて実行
できるようにする。
【0035】適当なスタートキャラクタは、(21,
6)セットに対する以下のルーチンのもとで発生された
記号キャラクタの端において発生する。理想的には、ス
タートキャラクタは、全ダブルアルファニューメリック
セット(以下に述べる)からのいかなる記号キャラクタ
も含むことができねばならない。(21,6)セットに
おいて発生される最後のキャラクタは、64・・・(6
モジュール巾のバーの後に4モジュール巾のスペースが
続く)で始まる。このような記号キャラクタのうちの3
つだけが(21,6)セットに存在する。63・・・で
始まる記号キャラクタは、21個のキャラクタのみを生
じ、622・・・で始まる記号キャラクタは、24個の
記号キャラクタを生じ、そして621・・・で始まる記
号キャラクタは、76個の記号キャラクタを生じる。そ
れ故、本発明の記号表示法は、全てがシーケンス621
・・・(6ワイドバーの後に2ワイドスペースがそして
その後に1ワイドバーが続く)で始まるようなスタート
キャラクタを使用する。他の記号キャラクタ(64・・
・、63・・・及び62・・・で始まる)は、破棄さ
れ、従って、スタートキャラクタは、本発明の記号表示
では最後の記号キャラクタである。スタートキャラクタ
を記号表示の最後の記号キャラクタとして与えることに
より、本発明の記号表示は、非常に迅速にデコードしそ
して処理することができる。というのは、読取装置が、
スタートキャラクタを探索してデコードした後に、全て
の高い値の記号キャラクタ(80,007より大きな記
号コードを有する記号キャラクタ)を無視できるからで
ある。
【0036】本発明の記号表示のストップキャラクタ
は、情報密度を高めるためにできるだけ短くされる。同
時に、ストップキャラクタは、それ自身を他の既知のス
トップキャラクタ及び記号表示における他の記号キャラ
クタから区別する。それ故、本発明の記号表示は、単一
の3モジュール巾のバーを有するストップキャラクタを
使用する。3モジュール巾に過ぎないことにより、ラベ
ルの第1のバーは6モジュール巾であるが、ストップキ
ャラクタは、スタートキャラクタの第1のバーのサイズ
の丁度半分である。これは、本発明の記号表示のもとで
エンコードされたラベルを読取装置が容易に見つけるこ
とができ、第1のバーが最後のバーのサイズの約2倍で
ある場合には、本発明の記号表示のもとでエンコードさ
れたラベルは、読取装置によって探し易いものである。
更に、読取装置は、ラベルにおける最初と最後のバーの
既知の巾から記号のX寸法を容易に決定することができ
る。更に、読取装置は、最初と最後のバーの間の巾の変
化を測定することにより加速歪を決定することができ
る。更に、読取装置は、スタート又はストップバーとそ
の隣接記号キャラクタとの巾の比を比較して、その比が
各々2/7又は1/7であることを確認することができ
る。これは、現在読み取られているラベルが本発明の記
号表示法のもとでエンコードされたラベルであることを
読取装置が良好にチェックできるようにする。
【0037】ユニコードのキャラクタコードをエンコー
ドするのに記号キャラクタのうちの65,536が使用
され、そして高密度の数値をエンコードするのに11,
000が使用されるので、3,470の記号キャラクタ
が残る。この残りの記号キャラクタは、倍密度のアルフ
ァニューメリックキャラクタに使用され、本発明の記号
表示の情報密度が更に改善される。倍密度のアルファニ
ューメリックキャラクタをエンコードすることにより、
単一記号キャラクタが2つのアルファニューメリックキ
ャラクタ(アルファベットデータ文字A−Z、数値デー
タ文字0−9、及び他のデータキャラクタ)を表すこと
ができる。592 は3,481であり、そして582
3,364であるから、本発明の記号表示は、残りの
3,470個の記号キャラクタにおいて58個の倍密度
キャラクタをエンコードすることができる。その後に残
された記号キャラクタは、以下に述べるように、非デフ
ォールトキャラクタセットにフラグを立てるといった特
殊な目的に使用される。一般に、以下のテーブル2は、
本発明の記号表示のもとでの全80,077個の記号キ
ャラクタの割り当てを示す。
【0038】 テーブル2 本発明の記号表示のもとでの 80,077の記号キャラクタの使用 記号キャラ 記号表示のもとでの割り当てられた使用 クタの量 (データキャラクタセット) 65536 16ビットキャラクタセット(ユニコードのような) 10000 4桁の数値圧縮キャラクタ 1000 3桁の数値圧縮キャラクタ 3364 2キャラクタアルファニューメリック圧縮 (58キャラクタセット) 106 特殊なマルチファンクションキャラクタ 71 スタートキャラクタ
【0039】既知のBASICプログラミング言語で書
かれた以下の例示的なコンピュータソフトウェアプログ
ラム「HanCode9」は、ここに特定する設計及び
本発明の特徴に準ずる本発明の記号表示の完全な記号キ
ャラクタセットを発生する。 HANCODE9, BAS basic Software Program Algorithmically generates the Han Ma character set. REM hancode9 6 ele wid 23 April 96 DEFINT A-M, O-Z o=5; p=5; q=1; r=1; s=1; t=1; u=1; v=2; w=1; x=1; y=1; z=1 'string of element (symbol character) to be decoded n=0 FOR a=1 TO 6 'runs each bar and space pattern for 1 to 6 FOR b=1 TO 6 FOR c=1 TO 6 FOR d=1 TO 6 FOR e=1 TO 6 FOR f=1 TO 6 FOR g=1 TO 6 FOR h=1 TO 6 FOR i=1 TO 6 FOR j=1 TO 6 FOR k=1 TO 6 FOR l=1 TO 6 100 IF a+b+c+d+e+f+g+h+i+j+k+l>21 THEN 'main filter to define (21,6) set if sum of element is >21, eliminate as a symbole character IF l>1 THEN IF k>6 THEN k=k+1; l=1; GOTO 100 END IF IF k>1 THEN IF j>6 THEN j=j+1; k=1; l=1; GOTO 100 END IF IF j>1 THEN IF i>6 THEN i=i+1; j=1; k=1; l=1; GOTO 100 END IF IF i>1 THEN IF h>6 THEN h=h+1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF h>1 THEN IF g>6 THEN g=g+1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF g>1 THEN IF f>6 THEN f=f+1; g=1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF f>1 THEN IF e>6 THEN e=e+1; f=1; g=1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF e>1 THEN IF d>6 THEN d=d+1; e=1; f=1; g=1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF d>1 THEN IF c>6 THEN c=c+1; d=1; e=1; f=1; g=1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF c>1 THEN IF b>6 THEN b=b+1; c=1; d=1; e=1; f=1; g=1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF IF b>1 THEN IF a>6 THEN a=a+1; b=1; c=1; d=1; e=1; f=1; g=1; h=1; i=1; j=1; k=1; l=1; GOTO 100 END IF END IF IF a+b+c+d+e+f+g+h+i+j+k+l=21 THEN 'begin to define symbology where sum of element width equals 21 m=a+c+e+g+i+k 'define sum of bars in each symbol character IF INT(m/2)=m/2 THEN 'accept only even parity IF a+b+c+d+e+f>6 THEN 'ignore symbol characters have >6 1-wide elements at the beginning IF g+h+i+j+k+l>6 THEN 'ignore symbol...at the end IF n=74544 THEN PRINT n, a;b;c;d;e;f;g;h;i;j;k;l 'prints a valid character pattern END IF END IF END IF END IF GOTO 300 'if do not wish to decode IF a=o THEN 'decode text to confirn that symbol character matches above criteria IF b=p THEN IF c=q THEN IF d=r THEN IF e=s THEN IF f=t THEN IF g=u THEN IF h=v THEN IF i=w THEN IF j=x THEN IF k=y THEN IF l=z THEN BEEP PRINT "Decode is": n: "." END END IF END IF END IF END IF END IF END IF END IF END IF END IF END IF END IF END IF 300 NEXT l 'determine next symbol character NEXT k NEXT j NEXT i NEXT h NEXT g NEXT f NEXT e NEXT d NEXT c NEXT b NEXT a
【0040】上記ルーチンHanCode9は、111
112111155の初期記号キャラクタを発生し、こ
こで、第1の数は、第1のバーにおけるモジュールの数
を示し、第2の数は、第1のスペースにおけるモジュー
ルの数を示し、等々となる。この記号キャラクタは、第
1の4桁の数値圧縮キャラクタに指定されるのが好まし
い。データキャラクタの上記割り当てられたセットの各
々における最後のキャラクタは、以下のテーブル3に示
されている。
【0041】 テーブル3 本発明の記号表示のもとでの 80,077の記号キャラクタの指定 記号キャラ 記号コード データキャラ セットの最後の クタの量 範囲 クタセット 記号キャラクタ 11000 1-11000 桁 112111322313 3364 11001-14364 ダブルアルファ 112213321221 ニューメリック 65536 14365-79900 16ビットキャラクタ 611312211111 106 79901-80006 指定済 614111121111 71 80007-80077 スタートキャラクタ 621221111112
【0042】テーブル3のもとでの記号キャラクタの指
定は、任意であり、例示の目的で簡単にされている。4
桁の数値圧縮キャラクタセットの後に、3桁の数値圧縮
セットが続く。両方の数値圧縮セットは、長い桁のスト
リングをエンコードする高密度手段を与える。58個の
2キャラクタアルファニューメリック圧縮セットは、例
えば、コード128規格における同じ最初の58個のキ
ャラクタに従う。16ビットキャラクタコードは、ユニ
コードセットからのものである。71個のスタート記号
キャラクタは、先ず、58個のアルファニューメリック
データキャラクタより成るのが好ましい。それに続くス
タート記号キャラクタは、次の通りである。即ち、パッ
ドデータキャラクタ、ファンクション1のパッドデータ
キャラクタ、ファンクション1のデータキャラクタに後
続する数値0−9、及び最後にMH10.8.3のヘッ
ダ/トレイラー。パッドデータキャラクタは、本質的に
ナルデータキャラクタである。ファンクション1のパッ
ドデータキャラクタ及び10個のファンクション1の0
−9データキャラクタは、各々、産業に関連した特殊な
ファンクションを果たすのに使用できる。或いは、スタ
ートキャラクタ及び指定済キャラクタは、シフト又はラ
ッチキャラクタとして使用するか、又はコード128規
格のような他の記号表示規格により使用されるファンク
ションへ移行しそしてそれを模擬するか、或いは別のキ
ャラクタセットを定義することができる。MH10.
8.3ヘッダ/トレイラーは、全ヘッダ及びトレイラー
へ拡張されそして当業者に良く知られた標準フォーマッ
トに従うANSI 2Dの記号表示規格である。
【0043】本発明の記号表示法は、素数個の記号キャ
ラクタを使用するので、本発明は、記号キャラクタのパ
リティの自己チェック特性に加えて、健全なエラー検出
機構を使用することができる。本発明のエラー検出機構
は、チェックキャラクタの次の記号キャラクタの記号コ
ードに1を乗算し、次の記号キャラクタの記号コードに
2を乗算し、そしてこのパターンのもとで左へと続ける
ことを含む。一般に、記号キャラクタのストリング又は
ラベルのチェックキャラクタe1 は、次の式に基づいて
決定される。
【0044】 e1 =(Sn *n)+(Sn-1 *(n−1)) +(Sn-2 *(n−2))・・・ (1) 但し、Sは、各記号キャラクタの記号コードであり、S
n は、第1(最も左)の記号キャラクタの記号コードで
あり、そしてnは、所与のラベルにおける記号キャラク
タの数である。スタートキャラクタは、本発明の記号表
示法のもとでエラー検出キャラクタとして使用すること
ができ、このようなエンコードされたラベルは、いずれ
も、読取装置により容易に探索及びデコードすることが
できる。スタートキャラクタは、本発明の記号表示法の
もとでエラー検出されそしてエラー修正される。スター
トキャラクタは、データキャラクタを含むので、これは
特に有効である。式(1)のもとでのエラー修正及び検
出の計算は、記号コードが値0で始まることを必要とす
る。本発明の記号表示法の実施形態のもとでは、記号コ
ードが値1で始まる。それ故、式(1)の記号コードS
は、実際には、実施形態のもとでの記号コードより1だ
け小さくなければならない。
【0045】従来のBASICプログラミング言語で書
かれた以下の例示的なコンピュータソフトウェアプログ
ラムは、エラー検出及び修正キャラクタe1 を計算す
る。 HANECC. BAS Basic Software Calculates the error detection and correction characters for Han Ma symbology. REM hanecc. bas Han Code ECC calculation. modulo 80077 10july96 by sackley DEFLNG C.E.N PRINT "Define character values. Enter (-1) when done" : PRINT INPUT "Start Character ? ", c1 INPUT "Next Character ? ", c2 INPUT "Next Character ? ", c3: IF c3<0 THEN n=2: GOTO 1900 INPUT "Next Character ? ", c4: IF c4<0 THEN n=3: GOTO 1800 INPUT "Next Character ? ", c5: IF c5<0 THEN n=4: GOTO 1700 INPUT "Next Character ? ", c6: IF c6<0 THEN n=5: GOTO 1600 INPUT "Next Character ? ", c7: IF c7<0 THEN n=6: GOTO 1500 INPUT "Next Character ? ", c8: IF c8<0 THEN n=7: GOTO 1400 INPUT "Next Character ? ", c9: IF c9<0 THEN n=8: GOTO 1300 INPUT "Next Character ? ", c10: IF c10<0 THEN n=9: GOTO 1200 INPUT "Next Character ? ", c11: IF c11<0 THEN n=10: GOTO 1100 INPUT "Next Character ? ", c12: IF c12<0 THEN n=11: GOTO 1000 INPUT "Next Character ? ", c13: IF c13<0 THEN n=12: GOTO 900 INPUT "Next Character ? ", c14: IF c14<0 THEN n=13: GOTO 800 INPUT "Next Character ? ", c15: IF c15<0 THEN n=14: GOTO 700 INPUT "Next Character ? ", c16: IF c16<0 THEN n=15: GOTO 600 600 e1=(e1+c15*(n-14)) MOD 80077 700 e1=(e1+c14*(n-13)) MOD 80077 800 e1=(e1+c13*(n-12)) MOD 80077 900 e1=(e1+c12*(n-11)) MOD 80077 1000 e1=(e1+c11*(n-10)) MOD 80077 1100 e1=(e1+c10*(n-9)) MOD 80077 1200 e1=(e1+c9*(n-8)) MOD 80077 1300 e1=(e1+c8*(n-7)) MOD 80077 1400 e1=(e1+c7*(n-6)) MOD 80077 1500 e1=(e1+c6*(n-5)) MOD 80077 1600 e1=(e1+c5*(n-4)) MOD 80077 1700 e1=(e1+c4*(n-3)) MOD 80077 1800 e1=(e1+c3*(n-2)) MOD 80077 1900 e1=(e1+c1*n+C2*(n-1))MOD 80077 PRINT "The ECC character is"; e1
【0046】非常に高いデータの機密性又は単一記号キ
ャラクタのエラー修正を容易に行うようにラベルに別の
キャラクタを追加することができる。それ故、本発明の
記号表示法は、エラー修正直線的バーコード記号表示法
である。重み付け機構は、上記の同じ式(1)を使用す
るという点で、エラー検出キャラクタに対するものと同
じである。この方法は、誤ったキャラクタパリティによ
り単一記号キャラクタの位置が分かっているとすれば、
単に一次方程式の単一の解を使用するだけで、単一記号
キャラクタエラーの正しい値を決定する。
【0047】図1は、本発明の記号キャラクタ印刷装置
100を示す。この装置は、プリンタ102と、中央処
理ユニット(CPU)104と、メモリ106と、キー
ボード107と、二次記憶装置108とを備えている。
プリンタ102は、バーコード及び人間が読めるデータ
キャラクタを印刷することのできる一般的に知られた形
式のものである。当業者であれば、任意のプリンタの中
から、本発明に適したプリンタを選択することができよ
う。CPU104は、ポート又はライン109によりホ
ストコンピュータ105又は他の装置又はアプリケーシ
ョンに電気的に接続される。CPU104は、メモリ1
06及び/又は二次記憶装置108に記憶されたルーチ
ン(図2)を実行するもので、16ビットデータキャラ
クタコードを、プリンタ102へ送られるカウントに変
換する。プリンタ102は、これらのカウントを解読
し、そして通常はバーコードラベルの形態の印刷記号キ
ャラクタに変換する。「ラベル」とは、一般的に、そこ
に1つ以上の記号キャラクタ及び/又はデータキャラク
タを印刷又は形成するのに適した紙、布、プラスチッ
ク、金属、又は他の柔軟な又は堅固な材料を指す。しか
しながら、当業者であれば、「ラベル」という用語は、
消費者向け製品のパッケージのような物体上に印刷され
た記号キャラクタを指すことも理解されよう。
【0048】印刷ラベルは、記号キャラクタ及びそれに
対応する人間が読めるデータキャラクタの両方を含むこ
とができる。本発明により印刷又は読み取られるラベル
101が図3に例示されている。好ましい実施形態で
は、標準的な16ビットデータキャラクタエンコード規
格、例えば、ユニコード、JISC−6226−198
3、ビッグ・ファイブ(BF)又はKSC5609−1
987が本発明によって使用される。JISC−622
6−1983規格は、漢字及びカタカナのデータキャラ
クタを16ビットコードにマップする日本工業規格のキ
ャラクタセットである。このデータキャラクタ規格は、
上記のように、とりわけ、漢字及びカタカナのデータキ
ャラクタを含むユニコードと同様である。しかしなが
ら、JISC−6226−1983規格の各データキャ
ラクタには、ユニコード規格における同等のデータキャ
ラクタに対して異なる16ビットコードが指定されてい
る。
【0049】図2は、多数の記号キャラクタ及びそれに
対応するデータキャラクタを有するバーコードラベルを
印刷するために図1の印刷装置100により実行される
段階を示している。ステップ110において、例えば、
キーボード107を用いて、データキャラクタのストリ
ングが選択され、入力され又は決定される。又、データ
キャラクタのストリングは、ホストコンピュータ105
からライン109を経てCPU104へ入力することも
できる。キーボード107のキーを押すと、キーストロ
ークが「走査コード」に変換され、これは、キーボード
から、キーボードが接続された装置(例えば、印刷装置
100又はホストコンピュータ105)へ送信される。
この走査コードは、キーボードの押圧された特定のキー
を表し、ASCII又はユニコードのようなデータキャ
ラクタセットの特定のキャラクタ又はコードには関連し
ていない。
【0050】ステップ112において、CPU104
は、選択されたキャラクタを、アルファベットキャラク
タ、数値キャラクタ、16ビットキャラクタ等のデータ
キャラクタの種々のセットに分割し又はパーズする。デ
ータパーズ技術は、当該技術において良く知られてい
る。ステップ114において、CPU104は、ファン
クションキャラクタのような特殊なキャラクタ(スター
トキャラクタ又は特殊なキャラクタとしてエンコードで
きる)を定義する。ステップ116において、CPU1
04は、選択されたデータキャラクタに基づき記号キャ
ラクタの最適なストリングを決定する。例えば、2つ以
上の連続するデータキャラクタがニュメリックである場
合には、CPU104は、記号キャラクタの数を減少
し、ひいては、形成されるラベルの情報密度を高めるた
めに、ニューメリック圧縮キャラクタを使用しなければ
ならないことを決定する。
【0051】ステップ118において、CPU104
は、各データキャラクタに対する記号コードを決定す
る。データキャラクタ及びそれに対応する記号コードの
テーブルは、好ましくは、対応する記号キャラクタのカ
ウントと共に、二次記憶装置108に記憶される。或い
は、記号コードは、データキャラクタの知識から自動的
に計算することもできる(HanCode9ルーチンに
ついて上記したように)。ステップ120において、C
PU104は、式(1)の上記チェックキャラクタルー
チンを使用することによりチェックキャラクタを発生す
る。ステップ122において、CPU104は、印刷さ
れるべき記号キャラクタの数に部分的に基づいて、記号
に適したX寸法を選択する。ステップ124において、
CPU104は、記号を人間が読めるデータキャラクタ
で印刷するといった他のフォーマットオプション、又は
当業者に知られた他のフォーマットオプションを選択す
る。ステップ126において、CPU104は、適当な
コード及び他の信号をプリンタ102へ出力し、プリン
タは、次いで、記号を一連の記号キャラクタ(及びおそ
らくはデータキャラクタ)として印刷して、バーコード
ラベルを形成する。
【0052】図4は、ルーチン111のステップ118
のもとで行われる特定のステップを詳細に示すフローチ
ャートである。ステップ110においてデータキャラク
タのストリングが決定された後に、CPU104は、ス
テップ172において、所与のデータキャラクタに対す
るキャラクタコードをルックアップする。CPU104
は、走査コードをこのような規格のもとで対応するAS
CIIコード又はユニコード(16ビットコード)に変
換する。CPU104は、ルックアップテーブルを有し
ているか、又は所与のデータキャラクタに対して16ビ
ットコード又は他のコードをアルゴリズム的に発生す
る。例えば、ユニコードデータキャラクタをエンコード
するときに、各データキャラクタは、ユニコード規格の
もとで各データキャラクタに対して独特の16ビットコ
ードを有する。
【0053】ステップ174において、CPU104
は、本発明の記号表示において16ビットコードを表す
独特な記号コードを、メモリ106又は二次記憶装置1
08に記憶されたルックアップテーブルから検索する。
或いは又、記号コードは、データキャラクタの値に基づ
いてアルゴリズム的に発生することもできる。例えば、
所与のデータキャラクタがユニコード規格の対応値を有
する場合に、それに対応する記号コードは、単に、ユニ
コード値に定数を加えたものとなる。
【0054】ステップ176において、CPU104
は、各記号コードを表す記号キャラクタを印刷するため
のカウントを検索する。適当なスタートキャラクタ及び
ストップキャラクタのカウントも検索される。メモリ1
06又は二次記憶装置108は記号コード及び対応する
カウントを記憶する。
【0055】好ましい実施形態においては、記号キャラ
クタは、人間が読めるデータキャラクタと共に印刷する
ことができる。それ故、ステップ176において、CP
U104は、データキャラクタを印刷するのに必要なデ
ータキャラクタフォントを検索する。フォントデータ
は、各記号キャラクタにより表された独特なデータキャ
ラクタを印刷するのに必要な特定のデータをプリンタ1
02に与える。ドットマトリクス型のプリンタ(図示せ
ず)では、フォントデータは、独特のデータキャラクタ
をいかに印刷するかをプリンタに命令する。フォントデ
ータは、メモリ106又は二次記憶装置108に記憶さ
れる。
【0056】ステップ178において、CPU104
は、ステップ110で最初に選択されたストリングの全
てのデータキャラクタが変換されたかどうか決定する。
付加的なデータキャラクタがストリングに残された場合
には、次のデータキャラクタに対する独特の16ビット
コード又は他のコードがステップ172において見つか
り、それに対応する記号コードがステップ174におい
て見つかり、そして特定のフォント及び記号キャラクタ
カウントがステップ176において検索される。このプ
ロセスは、全てのデータキャラクタが変換されるまで繰
り返される。その後、ステップ126において、バーコ
ードが、記号キャラクタ及びそれに関連した人間か読め
るデータキャラクタと共に、プリンタにより印刷され
る。
【0057】図5は、16ビットコード規格のもとにあ
るデータキャラクタを、図4に示す段階を使用すること
により、記号キャラクタ及び人間が読めるデータキャラ
クタの両方を有するバーコードラベルへと変換するとこ
ろを示す。この変換は、選択されたデータキャラクタで
始まる(ブロック180)。データキャラクタは、ユニ
コードのような16ビットエンコード規格で指定された
16ビットコードに変換される(ブロック182)。デ
ータキャラクタに対する16ビットコードは、記号コー
ドに変換される(ブロック184)。記号コードは、次
いで、記号コードの印刷に必要なバー及びスペースを表
すカウントへと変換される(ブロック186)。バー及
びスペースに関連したカウントは、次いで、記号キャラ
クタ(ブロック188)として印刷され、バーコードラ
ベル(ブロック190)が形成される。
【0058】人間が読める各々の対応するデータキャラ
クタも、記号キャラクタと共に印刷される。ここに述べ
るように、各16ビットコードは、独特のデータキャラ
クタを表す。16ビットコードは、独特のデータキャラ
クタを印刷するに必要なフォントデータにマップされる
(ブロック192)。フォントデータは、次いで、人間
が読めるデータキャラクタ(ブロック194)として印
刷され、バーコードラベル(ブロック190)が形成さ
れる。例えば、データキャラクタがドットマトリクスプ
リンタで印刷される場合には、フォントデータは、デー
タキャラクタを印刷するようにドットマトリクスプリン
タを駆動するのに適した信号である。このデータキャラ
クタは、図3に示すように、本発明の記号表示法の記号
キャラクタ(即ちブロック188)と一緒に、完成した
バーコードラベル(ブロック190)に印刷される。カ
ウント及びフォントデータは、各データキャラクタが変
換されたときに記憶され、次いで、全てのデータキャラ
クタが変換された後に、全ラベルが印刷される。或いは
又、記号キャラクタ及びデータキャラクタは、人間が読
める各データキャラクタが、バーコードラベル上に印刷
される記号キャラクタ及びデータキャラクタへと変換さ
れるときに、順次に印刷される。
【0059】上記の段階は、印刷装置100により実行
され、上記BASICルーチン及びエラー修正及び検出
のもとで形成された例示的な記号キャラクタセット、並
びにあるアルファニューメリックデータキャラクタをも
つラベルが形成される。図3のラベル101は、人間が
識別する用途で使用することもできる。ラベル101に
エンコードされたデータキャラクタは、「H85299
301 Miew Mnn Shaun」であり、ここ
で、「名前」は、実際には、16ビットコード3349
4、25991及び23665によりユニコードキャラ
クタセットで表された3つの中国文字である。ユニコー
ドデータキャラクタは、14363及びそれらのユニコ
ード16ビットコードにより本発明の記号表示の記号コ
ードによって表される。ラベル101の第1データキャ
ラクタは、40番目のスタートキャラクタである「H」
をエンコードする。本発明の記号表示及びユニコードの
キャラクタセットの両方の記号コードは、値1でスター
トするので、通常、チェックキャラクタは0で始まる値
で計算されるが、チェックキャラクタの値は、通常の数
よりも1だけ小さい。従って、エンコードされるべきデ
ータは、次のようになる。
【0060】 テーブル4 図3の例示的ラベルの記号コードに 対するチェックキャラクタ値及び重み 記号コード 80047 8530 9302 47858 40355 38029 チェックキャラクタ値 80046 8592 9301 47857 40354 28028 重み 6 5 4 3 2 1
【0061】上記重み値を用いて計算されたラベル10
1のエラー修正キャラクタは、21662である。チェ
ックキャラクタは、7で終わる重み値の新たなストリン
グを用いて計算され、27208である。記号コード
は、次いで、上記BASICルーチンに入力され、次の
記号キャラクタが発生される。 テーブル5 図3のラベルの記号キャラクタに対する記号コード 及びそれに対応するバー/スペースパターン 記号コード バー/スペースパターン b s b s b s b s b s b s 80047 (スタートキャラクタ) 6 2 1 1 2 1 1 1 1 1 1 3 8530 1 1 1 3 2 1 4 2 1 1 3 1 9302 1 1 1 4 1 1 2 2 2 1 1 4 47858 2 1 1 2 2 3 3 2 1 3 1 1 40355 1 4 1 1 2 2 1 1 2 2 3 1 38029 1 3 2 1 3 1 1 3 2 2 1 1 21663 1 1 5 1 1 4 1 3 1 1 1 1 27208 1 2 1 3 1 1 2 2 2 4 1 1 ストップ 3
【0062】図3は、対応するデータキャラクタ(即
ち、人間の識別番号及び名前)と共に10ミルのX寸法
で印刷されたラベルを示す。この形成されたラベルは、
実際に識別番号及び名前の両方をエンコードし、そして
エラー修正及び強力なエラー検出能力を有している。
【0063】又、本発明の記号表示は、図6に示すバー
コード読取装置140のようなバーコード読取装置を用
いて容易に読み取ることができる。読取装置140は、
標準的なバーコードリーダー142を有する。バーコー
ドリーダー142は、レーザスキャナ、ラスタ化レー
ザ、又はワンドベースの光学トランスジューサのような
電気−光学装置143を備えている。或いは、リーダー
142の電気−光学装置143は、受け取った光を電気
信号に変換できる一次元又は二次元CCD、半導体アレ
ー、ビジコン又は他の領域イメージ装置を含むことがで
きる。又、リーダー142の電気−光学装置143は、
LED、フラッシュバルブ、赤外線光源、又は他の発光
素子のような光源を含むこともできる。ここで一般的に
用いられる「リーダー」という用語は、バーコードから
受け取った変調光を電気信号に変換することのできる装
置を指す。リーダーは、当業者に明らかであり、本発明
に用いるのに適したリーダーを選択することができよ
う。バーコードリーダー142で読み取られたデータ
は、CPU144に入力される。CPU144にはメモ
リ146及び二次記憶装置148が接続されている。バ
ーコードリーダー142へのデータ入力は、CPU14
4で処理され、そしてポートライン149によりホスト
コンピュータ147或いは他の装置又はアプリケーショ
ンへ出力される。
【0064】図7は、本発明の記号表示法による記号キ
ャラクタを有するバーコード記号を読み取るために図6
の読取装置140によりルーチン150のもとで実行さ
れる段階を示している。ステップ151において、バー
コードリーダー142は、バーコードラベルの記号キャ
ラクタを走査し又は像形成し、そして一連のカウントを
決定する。当業者に明らかなように、記号キャラクタに
おけるバーとバーとの間の遷移は、読取装置140内の
タイマーとあいまって、読み取られた記号キャラクタの
カウントを決定する。これらカウントは、次いで、所与
の記号におけるエレメントの巾を決定するのに使用され
る。ステップ152において、CPU144は、カウン
トを分析し、記号の両側の静寂ゾーンを探索する。
【0065】ステップ154において、CPU144
は、12エレメント巾の最初のストリングを表す最初の
12セットのカウントを選択する。ステップ156にお
いて、CPU144は、最初の12セットのカウントを
21で除算し、その結果を正規化して、個々のエレメン
トの巾を推定する。ステップ158において、CPU1
44は、最初の12エレメントの巾を、1つのスタート
キャラクタに対するストリングの巾及びストップキャラ
クタに対する逆方向ストリングの巾と比較する。ストリ
ングの最後の12エレメントが1つのスタートキャラク
タからの逆方向の12エレメントに対応する場合には、
CPU144は、記号が逆に走査されたことを認識し、
それ故、記号を右から左へ(通常の左から右へではな
く)読み取るべきであることを認識する。ステップ15
8において、CPU144は、スタートキャラクタにエ
ンコードされたデータキャラクタ、ファンクションキャ
ラクタ又はパッドキャラクタを決定するために多数のス
タートキャラクタのどれが探索されたかも決定する。
【0066】ステップ160において、CPU144
は、次の12エレメントを選択し、そしてステップ16
2において、エレメント(カウント)の和を21で除算
し、その結果を正規化する。ステップ164において、
CPU144は、選択された12エレメントに対する記
号コードを決定する。又、ステップ164において、C
PU144は、選択された12エレメントのパリティも
チェックする。バーの和が偶数に等しい場合は、パリテ
ィがチェックされる。ステップ166において、CPU
144は、ラベルが付加的なエレメントを含むかどうか
決定し、もしそうであれば、ステップ160へ戻り、全
ての記号キャラクタが記号コードに変換されるまで、ス
テップ160ないし164を再び実行する。
【0067】ステップ168において、CPU144
は、無効/デコード不能の記号キャラクタが発生された
かどうか決定する。ある記号キャラクタがデコード不能
であると決定された場合には、ルーチンはステップ16
0へ戻り、CPU144は、記号内の個々のエレメント
に対する縁−縁(エレメント対)デコード動作のような
他の既知のデコード方法を実行する。或いは又、ステッ
プ168において、CPU144は、当業者に良く知ら
れたバー/バー又はスペース/スペース比較、或いはフ
ァクタRデコード方法を実行する。
【0068】又、ステップ168において、CPU14
4は、記号キャラクタの焦点が合っているかどうかを照
合又は決定する。CPU144は、記号キャラクタに対
してバーコードリーダー142で発生された信号を分析
して、CPUが巾広のエレメントは認識できるが1ワイ
ドエレメントを認識し損なったかどうか決定する。CP
U144は、1つ以上の記号キャラクタにおいて1ワイ
ドエレメントを認識できない場合には、デコードルーチ
ンを中止し、焦点外れデータをCPUへ送り、又は記号
が焦点ずれしていることをユーザに警告するといった他
の機能を実行する。CPU144は、これが充分にプロ
グラムされている場合には、本発明者の上記特許に基づ
いて焦点ずれしたデータをデコードすることができる。
【0069】記号が焦点にあるか、又はCPU144が
焦点ずれしたデータをデコードし、従って、全ての記号
が有効である(即ち、データキャラクタへとマップされ
る)場合には、ステップ170において、CPUは、最
後の記号キャラクタに基づきチェック計算を実行する。
CPU144は、全ての記号コードを上記のチェックキ
ャラクタ計算方法に適用し、その結果がチェックキャラ
クタの記号コードに等しいかどうか決定する。もしそう
でなければ、CPU144は、エラー修正を実行する。
或いは又、CPU144は、パリティがチェックされる
ときに、ステップ164のもとでエラー修正を行うこと
ができる。もしそうであれば、ステップ171におい
て、CPU144は、適当なデータがどこに記憶された
かに基づきメモリ146又は二次記憶装置148から適
当なデータキャラクタを検索することにより、記号コー
ドをルックアップテーブルに基づくデータキャラクタに
変換する。次いで、データキャラクタは、表示される
か、CPU144により他のアプリケーションに使用さ
れるか、又はライン149を経てホストコンピュータ1
47へ出力される。或いは又、CPU144は、ライン
149を経てホストコンピュータ147へ記号コードを
単に出力し、ホストコンピュータが対応データキャラク
タへの変換を実行することもできる。
【0070】図8は、図7に示す段階を使用することに
より、バーコードラベルをデータキャラクタ又はデータ
キャラクタのストリングに変換するところを示す。この
変換は、ラベル101のような多数の記号キャラクタを
有するバーコードラベルで始まる(ブロック200)。
ラベル101が読み取られ、そしてこのラベルのバー及
びスペースに関連したカウントがバーコードリーダー1
42及びCPU144により決定される(ブロック20
2)。カウントは、記号コード(ブロック204)に変
換される。各記号コードは、次いで、例えば、16ビッ
トコード、数値ストリング等へと変換される(ブロック
206)。16ビットコードは、それに対応する人間が
読める独特のデータキャラクタへとマップされる(ブロ
ック208)。次いで、データキャラクタは、適当なア
プリケーション(例えば、コンピュータスクリーン上で
の表示)に用いるためにCPU144により出力され
る。
【0071】図9及び10を参照すれば、本発明の記号
表示法は、上記の利点を与えるだけでなく、改良された
情報密度又は効率も与える。図9のラベル及び図10の
ラベルは、両方とも、0.20インチのX寸法で印刷さ
れる。3桁及び4桁の圧縮された数値データキャラクタ
セットを与えることにより、本発明の記号表示法の効率
は、4桁データキャラクタの倍数で最大となり、従っ
て、密度は、コード128より更に優れたものとなる。
コード128は、桁当たり5.5モジュールの密度を有
するが、本発明の記号表示法は、桁当たり5.25モジ
ュールをエンコードできる。最大効率以下では、データ
キャラクタの他のストリングに対し、本発明の記号表示
法の密度は、コード128より若干低いだけである。以
下のテーブル4は、長い数値桁のストリングに対して現
在最も密度の高い直線的記号表示法であるコード128
に比して、本発明の記号表示法(Han Ma)の数値
記号キャラクタ密度を要約するものである。以下のテー
ブルは、両方の場合の記号表示法に対し適当なスタート
キャラクタの使用を仮定している。
【0072】 テーブル6 桁のストリングをエンコードする際のコード128と 本発明の記号表示法との効率の比較 桁の量 1 2 3 4 5 6 7 8 9 10 11 Han Ma 0 10.5 7 5.25 5.25 7 6 5.25 5.25 6.3 5.75 コード128 11 11 11 11 8.8 5.5 7.86 5.5 7.33 5.5 7
【0073】図9に示すように、コード128のラベル
220と、本発明の記号表示法のもとでエンコードされ
たラベル222は、UCC SSCC−18規格のもと
で数値桁の標準ストリング(数値ストリング00000
521775138957172)をエンコードするも
のとして示されている。図示されたように、本発明の記
号表示法によるラベル222は、コード128のもとで
エンコードされたラベル220よりも若干大きいだけで
ある。
【0074】本発明の記号表示法のダブルアルファニュ
ーメリックデータキャラクタセットは、記号キャラクタ
当たり10.5モジュールであり、これは、記号キャラ
クタ当たり11モジュールのコード128より若干良好
であるが、データキャラクタ当たり9モジュールのコー
ド93より低い。コード128は、小さいサイズのデー
タキャラクタセットを有するコード93に比して大きな
サイズのキャラクタセットをエンコードすることができ
る。全体的に、本発明の記号表示法のアルファベット及
び数字の密度は、既知のコード128及びコード93規
格の密度とある程度同等である。しかしながら、本発明
の記号表示法のもとで16ビットキャラクタがエンコー
ドされるときには、コード93は、キャラクタ当たり2
7モジュールまでを必要とし、一方、コード128は、
キャラクタ当たり33モジュールまでを必要とする(そ
のデータキャラクタセット内で16ビットデータキャラ
クタをエンコードできる場合)。本発明の記号表示法
は、16ビットキャラクタをエンコードするのに21モ
ジュールしか必要としない。
【0075】図10に示すように、コード128規格の
もとでエンコードされたラベル224と、本発明の記号
表示法のもとでエンコードされたラベル226は、「A
123BC5678DE9012」の混合アルファベッ
ト及び数値データキャラクタをエンコードする。図10
に示すように、本発明の記号表示法のもとでエンコード
されたラベル226は、実質的に短く、それ故、コード
128規格のもとでエンコードされたラベル224より
も情報密度が高い。
【0076】当業者に明らかなように、本発明の種々の
別の実施形態が考えられる。第1の別の実施形態は、上
記の80,077記号キャラクタセットよりも大きなキ
ャラクタセットを有する。上記のように、本発明の記号
表示法は、パリティを含み、7ワイド(又はそれより大
きい)エレメントを含まず、そして記号キャラクタのい
ずれかの端に6個より多くの1ワイドエレメントのスト
リングを含まないのが好ましい。上記の記号表示法は、
上記ソフトウェアルーチンHanCode9のもとで最
後に発生された記号キャラクタとしてスタートキャラク
タを配置することにより幾つかの効果を得るが、第1の
別の実施形態は、付加的な記号キャラクタを与える。こ
の第1の別の実施形態のもとでは、記号キャラクタの指
定は、テーブル3と実質的に同じであるが、621・・
・スタートキャラクタが全部使用され、従って、記号コ
ード範囲は、80,082まで延びる。従って、このセ
ットの最後の記号キャラクタは、6213112111
11であり、これは、このような記号キャラクタの76
の量を与える。
【0077】第1の別の実施形態のもとでは、更に48
個の記号キャラクタが使用できる。しかしながら、上記
のように、本発明の記号表示法は、素数個の記号キャラ
クタを使用するのが好ましい。80,130未満の最大
の素数は、80,111である。従って、第1の別の実
施形態のもとでは、最後の19個の記号キャラクタが破
棄される。上記ソフトウェアルーチンHanCode9
は、第1の別の実施形態のこの記号表示を発生するよう
に容易に適用することができる。このように適用された
ソフトウェアルーチンのもとでは、ルーチンにより発生
される最後の記号キャラクタは、6311111211
21となり、これは、記号コード80,111に対応す
る。
【0078】第2の別の実施形態では、首尾良くデコー
ドする大きな可能性を許す記号表示法が提供される。上
記したように、1つの良く知られたデコード方法は、
「縁−縁」デコードであるか、又はエレメント対デコー
ドである。このようなデコード方法は、記号表示に不明
瞭な記号キャラクタがない場合には、特に実施が容易で
ある。記号表示の各記号キャラクタが少なくとも1つの
1ワイドバーを有する場合には、不明瞭さは実質的に排
除される。
【0079】上記ソフトウェアプログラムHanCod
e9は、第2の別の実施形態では、命令を置き換えるこ
とにより変更される。 次のような命令を伴う。 IF a+b+c+d+e+f+g+h+i+j+k+l=21 THEN m=a+c+e+g+i+k IF INT(m/2)=m/2 THEN IF a+b+c+d+e+f>6 THEN IF g+h+i+j+k+l>6 THEN 200 IF((a=1 OR c=1) OR (e=1 OR g=1) OR (i=1 OR k=1) THEN n=n+1 IF n=79948 THEN PRINT n, a;b;c;d;e;f;g;h;i;j;k;l End IF End IF End IF End IF End IF
【0080】HanCode9ルーチンに対する上記変
更において200で示された論理的ステートメントは、
各記号キャラクタが少なくとも1つの1ワイドバーを有
していなければならないという制約を付加する。この制
約の結果として、第2の別の実施形態のもとでの記号キ
ャラクタの全数は、79,948に減少される。79,
948未満の最大の素数は、79,943である。デー
タをエンコードするに充分なスタートキャラクタをもつ
ために、2倍圧縮のアルファニューメリック記号キャラ
クタの数が58から57へと減少され、全部で3,24
9のこのような記号キャラクタを与える。変更されたH
anCode9ルーチンは、次の記号キャラクタを発生
し、これは、次のように指定される。 テーブル7 本発明の記号表示法のもとでの 80077の記号キャラクタの指定 記号キャラ 記号コード データキャラ セットの最後の クタの量 範囲 クタセット 記号キャラクタ 11000 1-11000 桁 112111322313 3249 11001-14249 ダブルアルファ 112212512211 ニューメリック 65536 14250-79785 16ビットキャラクタ 612211111212 39 79786-79824 指定済 614111121111 76 79825-79900 スタートキャラクタ 621311211111 43 79901-79943 指定済 632111111112 発生される第1の記号キャラクタは、上記の記号表示と
同様に、111112111155である。
【0081】第3の別の実施形態は、上記記号表示に対
して新たなストップパターンを与える。上記の単一の3
ワイドバーは、本発明の記号表示のデコードを許すのに
充分であるが、読取装置140が全ての情報に対し所与
のラベルのスタートキャラクタに依存しなければならな
い。第3の別の実施形態は、第1の3ワイドバーから1
ワイドスペースだけ分離された第2の3ワイドバーを与
える(即ち、パターン313を生じる)ことにより、ス
トップキャラクタを拡張する。従って、4つの付加的な
モジュールを単に加えるだけで、改良されたストップキ
ャラクタが与えられる。第3の別の実施形態のストップ
キャラクタは、他の記号表示法から容易に区別できるの
に加えて、本発明の記号表示の逆方向走査を明確に識別
するよう充分に区別できるものである。このような2バ
ーのストップキャラクタは、所与のラベルのX寸法を測
定するのに良く適しており、従って、加速度を良好に測
定する。更に、ストップキャラクタにおけるエレメント
の和は7であり、これは、21の整数の約数である。最
後に、このパターンは、焦点ずれした読み取り状態にお
いて容易に弁別することができる。
【0082】以上に述べたように、本発明は、16ビッ
トデータキャラクタコード又は数値ストリングで表され
たデータキャラクタを記号キャラクタへエンコードし、
そしてこれらの記号をデータキャラクタ又は数値ストリ
ングへ変換して戻す効率的な手段を提供することが当業
者に明らかであろう。上記のシステムは、データ収集市
場に存在する16ビットデータキャラクタのエンコード
規格をサポートし、従って、世界的な用途において使用
することができる。従って、上記の記号表示法及びシス
テムは、コンピュータフォーマットのデータをバーコー
ドフォーマットへそしてその逆に容易に変換することが
できる。上記の記号表示法及びシステムは、長い数値及
びアルファベットストリングを本発明の記号表示法によ
り効率的に且つコンパクトに表すことができる。本発明
の記号表示法は、簡単なコンピュータプログラムルーチ
ンを用いてアルゴリズム的に決定することができる。本
発明の記号表示法のスタートキャラクタは、機能的に拡
張されており、そしてスタート及びストップキャラクタ
は、他の記号表示法に対して独特なものである。本発明
の記号表示法のキャラクタセットは、記号キャラクタの
ストリングに添付される自己チェックキャラクタを有
し、そして素数個のキャラクタを使用して、高レベルの
エラー検出を与える一方、エラー修正も与える。本発明
の記号表示は、ワンドで走査することができ、容易に印
刷でき、そして焦点ずれしたときに既知の技術のもとで
デコードすることができる。
【0083】この開示の一部分は、発明者及び譲受人
(版権所有者)が版権の保護を請求する資料を含んでい
る。版権所有者は、特許商標庁のファイル又は記録に現
れるように特許文書又は特許開示を誰かがファクシミリ
再現することに意義を唱えるものではないが、他の全て
の版権は保存されるものとする。
【0084】本発明の特定の実施形態及び例を説明の目
的で上記したが、本発明の精神及び範囲から逸脱せず
に、種々の変更がなされ得る。例えば、メモリ106又
は146が充分に大きなものであって、バーコードラベ
ルをエンコード、デコード、印刷又は読み取るためにC
PU104又は144に必要とされる全てのデータを含
むことができる場合には、二次記憶装置108又は14
8が不要であり、排除される。或いは又、CPU104
又は144に必要とされるデータを二次記憶装置108
又は148に収容して、大きなメモリ106又は146
の必要性を排除するか、又はこのメモリの必要性を完全
に排除することもできる。更に、印刷装置100又は読
取装置140は、限定されたデータキャラクタセットの
みを使用してもよい。このデータキャラクタサブセット
を表すためにCPU104又は144に必要とされるデ
ータだけがメモリ106又は146に記憶される。二次
記憶装置108又は148不要であり、従って、排除さ
れる。
【0085】記号表示法に関わりなく、(21,6)記
号表示法のもとでの記号キャラクタは、テーブル3につ
いて上記したものとは異なるデータキャラクタセットに
割り当てることができる。当業者であれば、上記の基準
の幾つか又は全部を使用するが、必ずしも上記実施形態
で特に述べたものではない(21,6)記号表示法を形
成できるであろう。このような(21,6)記号表示法
は、データキャラクタを異なる形態で対応する記号キャ
ラクタに対して指定することができ、そしてこのような
指定を擬似ランダムに実行することもできる。データキ
ャラクタを記号キャラクタに対してこのように擬似ラン
ダムに指定する状態のもとでは、記号表示法は、バー及
びスペースの同様のパターンに一致する同様のデータ形
式の発生を減少し、従って、所与のエレメントの巾の若
干の変化が異なるデータキャラクタとして読み取られる
(例えば、16ビットキャラクタ対圧縮された数値キャ
ラクタ)。
【0086】ラベルのエラーを修正する能力を更に改善
するためにラベルに付加的なエラー修正キャラクタを追
加することができる。ファンクション1のスタートキャ
ラクタ、又はいずれかの指定された記号キャラクタは、
他の16ビットキャラクタのような他のデータキャラク
タセットをエンコードするモードにラッチさせるのに使
用できる。例えば、標準記号キャラクタセットがユニコ
ードキャラクタをエンコードする場合には、ラッチされ
たセットは、JISC−6226−1983キャラクタ
をエンコードすることができる。更に、本発明は、上記
の米国特許及び/又は特許出願の教示を組み込んで、付
加的な利点及び機能を発揮することができる。例えば、
1995年5月4日に出願された「健全なスタート/ス
トップキャラクタ及びエラー検出機構を用いた全キャラ
クタセットを伴う単一巾のバーコード記号表示法(Singl
e Width Barcode Symbology With Full Character Set
Utilizing Robust Start/Stop Characters And Error D
etection Scheme)」と題する本発明者の米国特許出願第
08/433,835号に教示されたように、本発明の
記号表示法は、2ワイドのエレメント間にサンドイッチ
された1ワイドエレメントを有するスタートキャラクタ
を使用して、ラベルが焦点ずれしているかどうか決定す
ることができる。上記した米国特許及び特許出願は、参
考としてここに援用するものである。
【0087】以上に述べた詳細な説明に鑑み、本発明に
対して上記及び他の変更をなすことができる。一般に、
特許請求の範囲に使用した用語は、本発明をここに開示
した特定の実施形態に限定するためのものではなく、少
なくとも16ビットキャラクタコードを直接エンコード
するための全ての装置、方法及び記号表示法を包含する
ものとする。従って、本発明は、ここでの開示によって
制限されず、その範囲は、特許請求の範囲によってのみ
制限されるものとする。
【図面の簡単な説明】
【図1】本発明のバーコード記号印刷装置のブロック図
である。
【図2】16ビットのキャラクタコードを各々独特に表
すバーコード記号を印刷するために図1の印刷装置によ
って実行される基本的な段階を示すフローチャートであ
る。
【図3】人間が読めるキャラクタを有し、本発明により
印刷され又は読み取られるバーコード記号キャラクタを
有したラベルを例示する図である。
【図4】図2のフローチャートの段階のもとで実行され
る多数の段階を示すフローチャートである。
【図5】キャラクタから図1の装置で印刷されるバーコ
ード記号へのデータの変換を示すデータ変換図である。
【図6】本発明のバーコード記号読取装置のブロック図
である。
【図7】16ビットキャラクタコードを表すバーコード
記号を読み取るために図6の読取装置で実行される基本
的な段階を示すフローチャートである。
【図8】図5の装置で読み取られたバーコード記号から
キャラクタへのデータの変換を示すデータ変換図であ
る。
【図9】どちらもデータキャラクタ000005217
75138957172のストリングをエンコードする
コード128規格及び本発明の記号表示法によるラベル
を例示した図である。
【図10】どちらもデータキャラクタA1234BC5
678DE9012のストリングをエンコードするコー
ド128規格及び本発明の記号表示法によるラベルを例
示した図である。

Claims (40)

    【特許請求の範囲】
  1. 【請求項1】 データキャラクタを機械読み取り可能な
    記号に変換する方法であって、各記号は、暗い形状部
    と、それらの形状部間の明るいスペースとのパターンを
    有し、人間が読める選択されたキャラクタは、少なくと
    も16ビットのキャラクタコードにより表され、上記方
    法は、 選択された単一データキャラクタに対して少なくとも1
    6ビットを有するキャラクタコードを決定し、選択され
    たデータキャラクタ及び選択された単一キャラクタコー
    ドは、6,400以上のデータキャラクタの標準セット
    から選択され、データキャラクタのセットにおける各キ
    ャラクタは、それに対応するキャラクタコードを有し、 選択された単一キャラクタコードを単一の選択された記
    号コードへと変換し、そして上記単一の選択された記号
    コードに対応する単一記号を印刷し、この単一記号及び
    単一の選択された記号コードは、記号表示における記号
    のセットから選択され、上記記号表示における記号のセ
    ット内の記号の数は、人間が読めるキャラクタのセット
    におけるデータキャラクタの数に少なくとも等しいこと
    を特徴とする方法。
  2. 【請求項2】 上記決定し、変換しそして印刷する段階
    は、データキャラクタの選択されたストリングにおける
    各データキャラクタに対して繰り返される請求項1に記
    載の方法。
  3. 【請求項3】 上記変換段階は、記憶された記号コード
    のテーブルから記号コードを検索する段階を含む請求項
    1に記載の方法。
  4. 【請求項4】 上記データキャラクタの標準セットは、
    ユニコード規格であり、キャラクタコード決定する上記
    段階は、ユニコード規格から16ビットコードを決定す
    る請求項1に記載の方法。
  5. 【請求項5】 印刷された単一記号と共に、人間が読め
    る選択された単一のキャラクタを印刷する段階を更に備
    え、人間が読めるキャラクタは、上記選択された単一の
    データキャラクタに対応する請求項1に記載の方法。
  6. 【請求項6】 複数の桁を選択し、 上記複数の桁を単一記号コードに変換し、そして上記単
    一記号コードに対応する単一の付加的な記号を印刷し、
    この単一の付加的な記号及び単一記号コードは、記号表
    示から選択される、という段階を更に備えた請求項1に
    記載の方法。
  7. 【請求項7】 スタート記号を印刷する段階を更に備
    え、このスタート記号は、記号表示におけるスタート記
    号のセットから選択され、スタート記号の各々は、スタ
    ート記号のセットにおける各スタート記号と同一の第1
    部分と、スタート記号のセットにおける各スタート記号
    に対して独特の第2部分とを有し、この独特の部分は、
    少なくとも1つのデータキャラクタをエンコードする請
    求項1に記載の方法。
  8. 【請求項8】 印刷段階において上記記号表示の各記号
    は、素数の記号を有する記号のセットから選択される請
    求項1に記載の方法。
  9. 【請求項9】 キャラクタコードに基づいてチェック値
    を計算し、そして計算されたチェック値に対応するチェ
    ック記号を印刷し、チェック記号及びチェック値は、記
    号表示から選択される請求項1に記載の方法。
  10. 【請求項10】 上記印刷段階は、単一の選択された記
    号コードに基づき、単一記号に対して、暗い形状部と、
    これら形状部間の明るいスペースとの選択されたパター
    ンをアルゴリズム的に発生することを含む請求項1に記
    載の方法。
  11. 【請求項11】 表面に少なくとも1つのバーコード記
    号を印刷する方法であって、順次マークの隣接配置グル
    ープを与える段階を備え、上記グループは、そのグルー
    プ内に選択的に離された間隔で6個のマークを含み、こ
    れらのマークは、第1の巾の整数倍である複数の異なる
    巾から選択され、そして各グループ内に6個のブランク
    間隔を含み、ブランク間隔の各々は、第2の巾の整数倍
    である複数の異なる巾から選択され、各グループは、そ
    の全巾が上記第1の巾又は第2の巾の21倍に実質的に
    等しいことを特徴とする方法。
  12. 【請求項12】 順次マークの隣接配置グループを与え
    る上記段階は、マークと、マーク間のブランク間隔との
    81,796個までの異なるグループを与えることを含
    み、これは、81,796個までの異なるパターンを表
    す請求項11に記載の方法。
  13. 【請求項13】 順次マークの隣接配置グループを与え
    る上記段階は、チェックキャラクタを表す順次マークの
    1つのグループを記号に与えることを含み、この1つの
    グループは、マーク及びブランク間隔の81,796個
    のグループのうちの80,130の1つから選択される
    請求項11に記載の方法。
  14. 【請求項14】 順次マークの隣接配置グループを与え
    る上記段階は、複数の異なる巾をもつ順次マーク及びブ
    ランク間隔のグループを与えることを含み、上記複数の
    異なる巾は、各々第1及び第2の巾の6倍以下である請
    求項11に記載の方法。
  15. 【請求項15】 順次マークの隣接配置グループを与え
    る上記段階は、16ビットコード規格のもとでデータキ
    ャラクタのセットを識別する順次マークの少なくとも6
    5,536のグループを与えることを含む請求項11に
    記載の方法。
  16. 【請求項16】 順次マークの隣接配置グループを与え
    る上記段階は、スタートキャラクタを表す順次マークの
    複数のグループを与えることを含み、各スタートキャラ
    クタの第1部分は同一であるが、第2部分は、各スター
    トキャラクタに対して独特であり、そしてその独特の部
    分は、少なくとも1つのデータキャラクタをエンコード
    する請求項11に記載の方法。
  17. 【請求項17】 順次マークの隣接配置グループを与え
    る上記段階は、順次マーク及びブランク間隔の各グルー
    プを、そのグループのいずれかの端に各々第1及び第2
    の巾の1倍を有する6個以下の隣接マーク及びブランク
    間隔を有するものとして与える請求項11に記載の方
    法。
  18. 【請求項18】 順次マークの隣接配置グループを与え
    る上記段階は、順次マークのグループを自動的に発生す
    る段階を含み、マーク及びブランク間隔の複数の異なる
    巾は、各々第1及び第2の巾の6倍以下であり、そして
    各々のグループは、そのグループのいずれかの端に各々
    第1及び第2の巾の1倍を有する7個未満の隣接マーク
    及びブランク間隔を有する請求項11に記載の方法。
  19. 【請求項19】 順次マークの隣接配置グループを与え
    る上記段階は、他の記号表示規格に対して独特のスター
    トキャラクタを表す順次マークの複数のグループを与え
    ることを含む請求項11に記載の方法。
  20. 【請求項20】 上記与える段階における第1及び第2
    の巾は、ほぼ等しい請求項11に記載の方法。
  21. 【請求項21】 順次マークの隣接配置グループを与え
    る上記段階は、3つ以上の数値データキャラクタを各々
    識別する順次マークのグループの少なくとも1つのセッ
    トを与えることを含む請求項11に記載の方法。
  22. 【請求項22】 順次マークの隣接配置グループを与え
    る上記段階は、第1及び第2のエラー修正キャラクタを
    表す順次マークの第1及び第2グループを記号に与える
    ことを含む請求項11に記載の方法。
  23. 【請求項23】 順次マークの隣接配置グループを与え
    る上記段階は、80,111個のグループを与えること
    を含む請求項11に記載の方法。
  24. 【請求項24】 順次マークの隣接配置グループを与え
    る上記段階は、各グループを、第1巾の1倍の少なくと
    も1つのマークを有するものとして与えることを含む請
    求項11に記載の方法。
  25. 【請求項25】 複数の隣接配置されたバーと、それら
    バー間のスペースとを有するバーコード構造体におい
    て、少なくとも4つのバー及び4つのスペースのグルー
    プが個々のデータキャラクタを画成し、各グループは、
    各々第1及び第2の巾の整数倍である複数の異なる巾か
    ら選択された少なくとも4つのバー及び4つのスペース
    を有し、そして各グループは、その全巾が第1又は第2
    の巾の少なくとも20倍に実質的に等しいことを特徴と
    するバーコード構造体。
  26. 【請求項26】 バー及びスペースのグループは、8
    1,796個までの異なるデータキャラクタを表す8
    1,796個までのグループを与える請求項25に記載
    のバーコード構造体。
  27. 【請求項27】 バー及びスペースのグループは、チェ
    ックキャラクタを表す1つのグループを与え、この1つ
    のグループは、バー及びスペースの81,796個のグ
    ループのうちの少なくとも65,536の1つから選択
    される請求項25に記載のバーコード構造体。
  28. 【請求項28】 上記複数の異なる巾は、第1又は第2
    の巾の6倍以下である請求項25に記載のバーコード構
    造体。
  29. 【請求項29】 上記グループは、16ビットコード規
    格のもとでデータキャラクタのセットを識別するバー及
    びスペースの少なくとも65,536個のグループを与
    える請求項25に記載のバーコード構造体。
  30. 【請求項30】 バー及びスペースの上記グループは、
    スタートキャラクタを表す複数のグループを与え、各ス
    タートキャラクタの第1部分は、同一であるが、その第
    2部分は、各スタートキャラクタに対して独特であり、
    そしてこの独特の部分は、少なくとも1つのデータキャ
    ラクタをエンコードする請求項25に記載のバーコード
    構造体。
  31. 【請求項31】 各グループは、そのグループのいずれ
    かの端に、各々第1及び第2の巾の1倍のせいぜい6つ
    の隣接バー及びスペースを有する請求項25に記載のバ
    ーコード構造体。
  32. 【請求項32】 バー及びスペースの上記複数のグルー
    プは、他の記号表示規格に対して独特のスタートキャラ
    クタを表す請求項25に記載のバーコード構造体。
  33. 【請求項33】 上記第1及び第2の巾は、ほぼ等しい
    請求項25に記載のバーコード構造体。
  34. 【請求項34】 バー及びスペースのグループの少なく
    とも1セットは、データキャラクタの数値圧縮を識別す
    る請求項25に記載のバーコード構造体。
  35. 【請求項35】 各グループは、6個のバー及び6個の
    スペースを含み、そしてその全巾は、各々第1及び第2
    の巾の21倍に実質的に等しく、上記グループは、8
    0,077個までの異なるデータキャラクタを表す8
    0,077個までの異なるグループを与える請求項25
    に記載のバーコード構造体。
  36. 【請求項36】 バー及びスペースの上記グループは、
    第1及び第2のエラー修正キャラクタを表す第1及び第
    2のグループを与える請求項25に記載のバーコード構
    造体。
  37. 【請求項37】 各グループは、第1の巾の1倍の少な
    くとも1つのバーを有する請求項25に記載のバーコー
    ド構造体。
  38. 【請求項38】 表面に形成されたバーコードラベルを
    デコードする方法において、 バーコードラベルを像形成して、そこから複数の記号キ
    ャラクタの各々の信号表示を発生し、 上記信号を分析して、6個のバー及び6個のスペースで
    各々表された記号キャラクタを識別し、各バー及び各ス
    ペースは、各々第1及び第2の巾の整数倍から選択さ
    れ、そして各記号キャラクタは、その全巾が第1又は第
    2の巾の21倍にほぼ等しく、そして各記号キャラクタ
    をそれに対応する記号コードに変換する、という段階を
    備えたことを特徴とする方法。
  39. 【請求項39】 複数の隣接配置されたバーと、それら
    バー間のスペースとを有するバーコード構造体におい
    て、バー及びスペースのグループが個々のデータキャラ
    クタを定義し、バー及びスペースのグループのサブセッ
    トは、スタートキャラクタのセットを定義し、そのサブ
    セットにおける各グループは、そのサブセットにおける
    他のグループの各々と同一の第1部分と、サブセットに
    おける各グループに対して独特の第2部分とを有し、こ
    の独特の部分は、少なくとも1つのデータキャラクタを
    エンコードすることを特徴とするバーコード構造体。
  40. 【請求項40】 少なくとも3つの桁を有する選択され
    た数値ストリングを機械読み取り可能な記号へと変換す
    る方法において、 上記選択された数値ストリングにおける少なくとも3つ
    の桁に対し単一の選択された記号コードを発生し、そし
    て上記単一の選択された記号コードに対応する単一の記
    号を印刷し、この単一の記号及び上記単一の選択された
    記号コードは、記号表示における記号のセットから選択
    されることを特徴とする方法。
JP9262602A 1996-08-21 1997-08-21 16ビットキャラクターをエンコード可能なバーコード、及び該バーコードの印刷及び読取り装置及び方法 Pending JPH10171913A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/701,304 US5811781A (en) 1993-11-05 1996-08-21 Bar code symbology capable of encoding 16-bit characters, and method and apparatus for printing and reading same
US08/701304 1996-08-21

Publications (1)

Publication Number Publication Date
JPH10171913A true JPH10171913A (ja) 1998-06-26

Family

ID=24816827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9262602A Pending JPH10171913A (ja) 1996-08-21 1997-08-21 16ビットキャラクターをエンコード可能なバーコード、及び該バーコードの印刷及び読取り装置及び方法

Country Status (3)

Country Link
US (2) US5811781A (ja)
JP (1) JPH10171913A (ja)
DE (1) DE19736202A1 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6321986B1 (en) * 1993-11-05 2001-11-27 Intermec Ip Corporation Robust machine-readable symbology and method and apparatus for printing and reading same
US6149059A (en) * 1993-11-05 2000-11-21 Intermec Ip Corporation Bar code symbology capable of encoding bytes, words, 16-bit characters, etc. and method and apparatus for printing and reading same
US6422476B1 (en) 1993-11-05 2002-07-23 Intermec Ip Corp. Method, apparatus and character set for encoding and decoding data characters in data carriers, such as RFID tags
US6371375B1 (en) 1995-09-25 2002-04-16 Intermec Ip Corp. Method and apparatus for associating data with a wireless memory device
US5798513A (en) * 1996-12-03 1998-08-25 Intermec Corporation Method and apparatus for decoding unresolved profiles produced from relief formed symbols
US6056195A (en) * 1997-12-23 2000-05-02 Spain; Wanda Hudgins Method and apparatus for printing bar coded labels in different languages
US6279828B1 (en) * 1999-03-01 2001-08-28 Shawwen Fann One dimensional bar coding for multibyte character
US6398113B1 (en) * 1999-12-23 2002-06-04 Ncr Corporation System and methods for collaborative bar code error detection and correction
US6717580B1 (en) * 2000-02-02 2004-04-06 America Online, Inc. Method and apparatus using a list of <minimum, size, gap, offset > quadruple to encode unicode characters in an upper/lowercase mapping
US20010035964A1 (en) * 2000-04-20 2001-11-01 Hiroyasu Kurashina Tape cartridge, tape printing method, tape printing apparatus, and label-producing method
US6540143B1 (en) * 2000-05-19 2003-04-01 Fujitsu Limited System and method for recovering bar code errors
AU2001263225A1 (en) * 2000-05-30 2001-12-11 Digital:Convergence Corporation Unique bar code
KR20010111097A (ko) * 2000-06-07 2001-12-17 이수용 영문전용 바코드 프린터를 이용한 한글 인쇄를 위한 시스템
US20020016750A1 (en) * 2000-06-20 2002-02-07 Olivier Attia System and method for scan-based input, storage and retrieval of information over an interactive communication network
US6732932B2 (en) * 2000-10-12 2004-05-11 Symbol Technologies, Inc. Bar code symbology with integrated user-interface graphic pattern
US6928225B2 (en) * 2001-04-03 2005-08-09 Schott Glas Method and assembly for mounting at least one optical fiber
JP4803906B2 (ja) * 2001-06-07 2011-10-26 株式会社キーエンス 光学式情報読取装置の設定用バーコードの生成方法、光学式情報読取装置の設定変更方法、設定用バーコード生成プログラムおよび記録媒体
US6607130B2 (en) * 2001-09-14 2003-08-19 Microworks, Inc. System and method for printing application and printer independent bar codes
US6705218B2 (en) * 2001-12-20 2004-03-16 The Jolt Company, Inc. Method and apparatus for printing a beverage label having a static part and a variable part
US7025269B2 (en) * 2003-04-24 2006-04-11 Watson Label Products Corp. Barcodes including embedded security features and space saving interleaved text
US7156311B2 (en) * 2003-07-16 2007-01-02 Scanbuy, Inc. System and method for decoding and analyzing barcodes using a mobile device
EP1667054A1 (en) * 2003-09-17 2006-06-07 Tsube Sangyou Kabushiki Kaisha Recognition code based on combination of element cells and recognition code sheet
US7387250B2 (en) * 2003-12-04 2008-06-17 Scanbuy, Inc. System and method for on the spot purchasing by scanning barcodes from screens with a mobile device
US7175096B2 (en) 2003-12-18 2007-02-13 Electronic Data Systems Corporation Data glyph format
JP4079891B2 (ja) * 2004-01-29 2008-04-23 株式会社キングジム バーコードデータ作成システム、バーコードデータ作成方法、及び、バーコードデータ作成プログラム
US7341456B2 (en) * 2004-03-25 2008-03-11 Mcadams John B Braille type device, system, and method
US7296747B2 (en) 2004-04-20 2007-11-20 Michael Rohs Visual code system for camera-equipped mobile devices and applications thereof
US7309015B2 (en) * 2004-07-14 2007-12-18 Scanbuy, Inc. Mobile device gateway providing access to instant information
US7710598B2 (en) * 2004-08-23 2010-05-04 Harrison Jr Shelton E Polychromatic encoding system, method and device
JP4254724B2 (ja) * 2005-02-16 2009-04-15 株式会社デンソーウェーブ バーコード読取り方法及びコンピュータプログラム
US7905409B2 (en) * 2005-05-20 2011-03-15 Senshin Capital, Llc Print medium feature encoding and decoding
EP1938483B1 (en) 2005-09-21 2015-07-08 Intermec IP Corp. Stochastic communication protocol method and system for radio frequency identification (rfid) tags based on coalition formation, such as for tag-to-tag communication
JP2007114837A (ja) * 2005-10-18 2007-05-10 Seiko Epson Corp Hri文字付きバーコードの生成方法、hri文字付きバーコードの生成装置、印刷装置、プログラム
US7431213B2 (en) * 2005-11-15 2008-10-07 Xerox Corporation Barcode printing system
US8016187B2 (en) * 2006-02-21 2011-09-13 Scanbury, Inc. Mobile payment system using barcode capture
US8120461B2 (en) 2006-04-03 2012-02-21 Intermec Ip Corp. Automatic data collection device, method and article
US8150163B2 (en) 2006-04-12 2012-04-03 Scanbuy, Inc. System and method for recovering image detail from multiple image frames in real-time
US7738717B1 (en) * 2006-06-27 2010-06-15 Verizon Services Corp. Systems and methods for optimizing bit utilization in data encoding
US8002173B2 (en) 2006-07-11 2011-08-23 Intermec Ip Corp. Automatic data collection device, method and article
US7546955B2 (en) * 2007-03-16 2009-06-16 Intermec Ip Corp. Systems, devices, and methods for reading machine-readable characters and human-readable characters
US8011596B2 (en) * 2008-02-13 2011-09-06 Hand Held Products, Inc. Machine readable 2D symbology printable on demand
US20100078482A1 (en) * 2008-09-26 2010-04-01 United States Of America As Represented By The Secretary Of The Army Dynamic Barcode System
WO2011006201A1 (en) * 2009-07-14 2011-01-20 Dpid Pty. Ltd. Apparatus and method for managing register of unique identifiers
US20120193424A1 (en) * 2011-01-31 2012-08-02 King Abdul Aziz City For Science And Technology Method of encoding and decoding data on a matrix code symbol
US8670976B2 (en) * 2011-03-31 2014-03-11 King Abdulaziz City for Science & Technology System and methods for encoding and decoding multi-lingual text in a matrix code symbol
WO2016185823A1 (ja) * 2015-05-19 2016-11-24 日本電信電話株式会社 光通信システム及び光通信方法
JP7419084B2 (ja) * 2020-01-28 2024-01-22 東芝テック株式会社 リーダ、方法、プログラム
CN115034346B (zh) * 2022-06-01 2023-04-07 浙江省标准化研究院(金砖国家标准化(浙江)研究中心、浙江省物品编码中心) 基于gs1编码的产品唯一赋码方法、装置、存储介质

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4079482A (en) * 1976-05-27 1978-03-21 Yeh Chan H Electronic data processing of Chinese characters
US4307293A (en) * 1980-08-04 1981-12-22 Burroughs Corporation Optical reader kit for letter sorting machines
DE3330261A1 (de) * 1983-08-22 1985-03-07 Gregor GmbH & Co. KG, Wien Verfahren zum codieren bzw. dekodieren von informationen, vorrichtung zum aufbringen der codierten information auf eine druckform bzw. zum uebertragen der information von der druckform auf einen anderen informationstraeger und die druckform selbst
US5204515A (en) * 1987-07-11 1993-04-20 Teiryo Sangyo Co., Ltd. Method of reading identification code sheets using borders to determine scan angle
ATE114376T1 (de) * 1987-07-11 1994-12-15 Hirokazu Yoshida Verfahren zum lesen von blättern mit identifikationscode.
FR2635207B1 (fr) * 1988-08-02 1990-10-19 Sud Systemes Procede et dispositif de traitement d'un signal electrique analogique en vue d'obtenir un signal binaire parametrable representatif de sa composante significative
CA2011296A1 (en) * 1989-05-15 1990-11-15 Douglas C. Bossen Presence/absence bar code
US5612531A (en) * 1993-03-08 1997-03-18 Symbol Technologies, Inc. Bar code reader with multiple sensitivity modes using variable thresholding comparisons
JP2738098B2 (ja) * 1990-01-08 1998-04-08 株式会社デンソー 光走査装置
US5387783A (en) * 1992-04-30 1995-02-07 Postalsoft, Inc. Method and apparatus for inserting and printing barcoded zip codes
US5420403A (en) * 1992-05-26 1995-05-30 Canada Post Corporation Mail encoding and processing system
US5298731A (en) * 1992-12-23 1994-03-29 International Business Machines Corporation Method for printing and reading for orthogonal bar code patterns
US5557092A (en) * 1993-11-05 1996-09-17 Intermec Corporation Apparatus and method for 16-bit and numeric data collection using bar code symbologies
FR2715751A1 (fr) * 1994-01-28 1995-08-04 Canon Research Centre France S Procédé de codage d'informations sous forme de codes à barres, procédé de lecture de ces derniers et dispositifs mettant en Óoeuvre ces procédés.
US5602382A (en) * 1994-10-31 1997-02-11 Canada Post Corporation Mail piece bar code having a data content identifier
US5619027A (en) * 1995-05-04 1997-04-08 Intermec Corporation Single width bar code symbology with full character set utilizing robust start/stop characters and error detection scheme
US5539191A (en) * 1995-06-22 1996-07-23 Intermec Corporation Method and apparatus for decoding unresolved bar code profiles using edge finding circuitry
US5777310A (en) * 1995-11-06 1998-07-07 Intermec Corporation Problem reduction with low level information integration in bar code decoding
US5767498A (en) * 1996-09-17 1998-06-16 Ncr Corporation Bar code error scanner

Also Published As

Publication number Publication date
US5939700A (en) 1999-08-17
US5811781A (en) 1998-09-22
DE19736202A1 (de) 1998-02-26

Similar Documents

Publication Publication Date Title
JPH10171913A (ja) 16ビットキャラクターをエンコード可能なバーコード、及び該バーコードの印刷及び読取り装置及び方法
US6321986B1 (en) Robust machine-readable symbology and method and apparatus for printing and reading same
US6024289A (en) Method and apparatus for encoding and decoding single byte characters in double byte character set of machine-readable symbologies, such as bar code symbologies
US6186406B1 (en) Bar code symbology capable of encoding bytes, words, 16-bit characters, etc. and method and apparatus for printing and reading same
US6012638A (en) Machine-readable symbology and method and apparatus for printing and reading same
US5619027A (en) Single width bar code symbology with full character set utilizing robust start/stop characters and error detection scheme
US6070805A (en) Distortion resistant double-data correcting color transition barcode and method of generating and using same
US6902114B2 (en) Setting bar code of optical information reader, method for generating the same, method for changing setting of optical information reader and computer-readable medium
JP4122629B2 (ja) 2次元コードの生成方法
US6279828B1 (en) One dimensional bar coding for multibyte character
EP0439682B1 (en) High density two dimensional symbology
US5862270A (en) Clock free two-dimensional barcode and method for printing and reading the same
US6446868B1 (en) Scanning system for decoding two-dimensional barcode symbologies with a one-dimensional general purpose scanner
US5557092A (en) Apparatus and method for 16-bit and numeric data collection using bar code symbologies
US5553084A (en) Error correction enhancement for code one and other machine-readable symbologies
EP0312026A2 (en) Multitrack bar code and associated decoding method
HUT50410A (en) Method and device for coding and decoding bar codes
JPH06199078A (ja) 符号化したデータを有する記録体
IE62337B1 (en) Dynamically variable machine readable binary code and method for reading and producing thereof
US5627358A (en) System and method for reading two-dimensional barcodes
WO1998047101A9 (en) Robust machine-readable symbology and method and apparatus for printing and reading same
JPH09504633A (ja) バーコードシンボル表記法を使用する16ビット用及び数値データ収集用装置及び方法
GB2291524A (en) Reading bar-codes
JP2007304890A (ja) 2次元コードの読取り方法、及び、電子文書作成装置
US6761314B2 (en) Bar code symbology for consumer scanning applications