説明

バーコード生成システムおよびバーコード生成プログラム

【課題】インクジェット印刷装置において専用のテストチャートを用いることなく、任意のバーコード印刷物にて補正テーブルを作成することで、個々の使用条件に合った適正なバーコード生成を可能とする。
【解決手段】インクジェット印刷装置による任意のバーコード印刷出力物402の読み取り結果および印刷条件に基づき、バーコード解析部504は各バー幅の実測値に対応して当該バーを構成するドット数を推定する。さらに各バー幅の実測値と推定されたドット数との関係に基づいて、1ドット単位のドット数と黒バーおよび白バーの幅とを対応づけた補正テーブル507を生成する。バーコード生成部508は、バーコードの種類および基準となるバーの幅情報の入力に応じて補正テーブル507を参照し、当該種類の印刷後のバーコードの黒バーおよび白バーの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白バー幅のドット数を選定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記録ヘッドを用いて画像の記録を行う印刷装置でバーコードを印刷するためのデータを生成するバーコード生成システムおよびバーコード生成プログラムに関する。
【背景技術】
【0002】
一般に、インクジェット記録ヘッドを用いたバーコード生成システムでは、さまざまな印刷媒体(メディア)に対して非接触で画像を形成することができるという利点がある。一方、白バーは隣接する2本の黒バーの間の非記録部により構成されるので、紙面上でインク滴が滲む現象により、バーコードの黒バーが太くなり、それに隣り合う白バー(すなわち白スペース)が細くなる傾向にある。本来、バーコードの対応する黒バーと白バーは同じ幅である必要がある為、このバーの太り細りはバーコードの読取り精度に大きく影響を与え、時には読取り不可能なバーコードになってしまうという問題があった。
【0003】
この問題を解決するために、予めドットの滲みを見越してバーコードの白バーを大きくした構成にするバーコード補正方法や、黒バー部分を滲みにくくする方法が提案されている(特許文献1)。
【0004】
また、このインクの滲む度合いは紙の素材に大きく起因する為、紙の種類(紙種)によってバーコードが読めなくなるという問題もあった。
【0005】
この問題に対しては、紙の種類ごとに黒バーと白バーのドット数を予めテーブルとして用意することにより紙種の違いをカバーする技術が提案されている(特許文献2)。
【0006】
さらに、インクの滲み具合に関わる要因は紙の素材だけでなく、インクの種類や記録ヘッドの個体差、使用環境など様々な要因が関与し合っており、これら使用条件の違いによってもバーコードが読めなくなる場合があるという問題もあった。
【0007】
この問題に対しては、補正値の異なるバーコードを幾つも作成して実際に印刷し、バーコード検証機で読み取ることにより個々の使用環境に合ったバーコード生成を可能にする技術が提案されている(特許文献3)。
【0008】
また、予め定められた所定のテストパターンを出力させ、それを読み取り補正データを作成し、画像出力条件を補正するデータを更新する方法も提案されている(特許文献4)。
【特許文献1】特開2003−237059号公報
【特許文献2】特開平08−123886号公報
【特許文献3】特開平08−044807号公報
【特許文献4】特開2001−001616号公報
【発明の開示】
【発明が解決しようとする課題】
【0009】
しかしながら、特許文献1記載のバーコード生成システムは、ドットの滲み具合が予め判っている場合は有効であるが、紙種の変更などに対応できないという課題が残っている。
【0010】
また、特許文献2記載のバーコード生成システムでは、紙種が新規追加される度に、ソフトウエアのバーコード補正テーブルも追加修正しなければならない課題があった。
【0011】
さらに、特許文献3記載のバーコード生成システムでは、実際に使用するバーコードの条件、つまりEAN128やCODE39などのバーコード種類や、バーコード化する数値の桁数やサイズなどの各パラメータに対して補正値を微調整した非常に多くのバーコードを作成して印刷し、検証機による読取り結果を比較する手法であり、適正なバーコード条件を決定する為には印刷に使用する用紙や時間を多く浪費するという課題があった。
【0012】
また、1パスで印刷を行うインクジェット印刷装置においては、吐出されたインクの主滴から切り離された副滴(サテライトともいう)によって、同じドット幅でバーコードを構成しようとしても搬送方向に対して並行に構成した場合と、垂直に構成した場合のバー幅が異なってしまう為、各バーコード種類に対して一様な補正値ではバーコードの方向によって本来行うべき補正値とはずれてしまう恐れもあった。
【0013】
さらに、幅の細いバーコード印刷においては、幅の太いバーコードと比較して許容される寸法が非常に小さく、ドットの若干の大きさズレや形状の変化、使用環境や印刷用紙の変化でバーコードの品質が大きく悪化してしまうという課題もあった。その為、特に細い幅のバーコードを印刷しようとした場合において、従来の条件と滲み率が大きく異なる用紙が追加されると、補正範囲を広げた検証用バーコードをさらに追加する必要があり、検証パターンのメンテナンス面での課題もあった。
【0014】
さらに、特許文献4のように所定のテストパターンを用いて画像補正を行う場合において、所定のパターンはシステム内にあらかじめ用意しておく必要があり、パターンが複数ある場合はその分システムの記憶容量を使ってしまうことになる。また、所定のパターンで印刷を行わなくてはならない為、補正を行うたびに用紙やインクを余計に使用してしまうという問題もあった。
【0015】
本発明はこのような背景においてなされたものであり、その目的は、インクジェット印刷装置において専用のテストチャートを用いることなく、任意のバーコード印刷物にて補正テーブルを作成することで、個々の使用条件に合った適正なバーコード生成が可能なバーコード生成システムおよびバーコード生成プログラムを提供することにある。
【課題を解決するための手段】
【0016】
本発明によるバーコード生成システムは、インクを吐出するノズルと、前記ノズルからインクを吐出することにより画像を形成するインクジェット印刷装置によりバーコードを生成するバーコード生成システムにおいて、バーコードのイメージを読み取る読み取り手段と、前記印刷装置の印刷条件を入力する印刷条件入力手段と、前記印刷装置で印刷出力した任意のバーコードについて前記読み取り手段の読み取り結果および前記印刷条件に基づき、各バー幅の実測値に対応して当該バーを構成するドット数を推定するバーコード解析手段と、前記各バー幅の実測値と前記推定されたドット数との関係に基づいて、1ドット単位のドット数と前記黒バーおよび白バーの幅とを対応づけた補正テーブルを生成する補正テーブル生成手段と、バーコードの種類およびその複数のバー幅のうち基準となるバーの幅情報の入力に応じて、前記補正テーブルを参照し、当該種類の印刷後のバーコードの黒バーおよび白バーの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白バー幅のドット数を選定するバー幅補正手段とを備えたものである。
【0017】
この構成では、専用のテストパターンを用いることなく、任意のバーコードの印刷出力物を用いて補正テーブルを作成する。そのために、読み取り手段により印刷出力物のイメージを読み取り、この読み取り結果をバーコード解析手段が解析して、各バー幅の実測値を求め、この実測値に対応して当該バーを構成するドット数を推定する。一旦、補正テーブルが生成されれば、バーコードの生成に先だってバー幅補正手段が補正テーブルを参照し、当該種類の印刷後のバーコードの黒バーおよび白バーの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白バー幅のドット数を選定する。
【0018】
前記印刷条件は、少なくとも前記インクジェット印刷装置の印刷解像度である。
【0019】
前記補正テーブルは縦方向と横方向のバーコードについて別個に用意され、前記バー幅補正手段はバーコードの方向に応じて別個にバー幅を補正するようにしてもよい。これにより、バー幅に対する副滴の影響が排除される。
【0020】
本発明によるバーコード生成プログラムは、バーコードを印刷するためのバーコード構成情報を生成するバーコード生成プログラムであって、インクジェット印刷装置で印刷されたバーコードのイメージを読み取るステップと、前記インクジェット印刷装置の印刷条件の入力を受け付けるステップと、前記インクジェット印刷装置で印刷出力した任意のバーコードの読み取り結果および前記印刷条件に基づき、各バー幅の実測値に対応して当該バーを構成するドット数を推定するステップと、前記各バー幅の実測値と前記推定されたドット数との関係に基づいて、1ドット単位のドット数と前記黒バーおよび白バーの幅とを対応づけた補正テーブルを生成するステップと、バーコードの種類およびその複数のバー幅のうち基準となるバーの幅情報の入力に応じて、前記補正テーブルを参照し、当該種類の印刷後のバーコードの黒バーおよび白バーの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白バー幅のドット数を選定するステップとをコンピュータに実行させるものである。
【0021】
本発明のさらに他の構成および作用効果については以下の記載のとおりである。
【発明の効果】
【0022】
本発明によれば、印刷装置の設置環境や装置の個体差、紙の種類などユーザ個々の使用環境条件に合致した適正なバーコードの生成を行うための補正テーブルの作成を、特別なテストチャートを用いることなく、任意のバーコードによって行うことができる。したがって、テストチャートを作成するための用紙、インク、時間の浪費をなくすことが可能となる。
【発明を実施するための最良の形態】
【0023】
以下、図面を参照して本発明の実施の形態について詳細に説明する。尚、以下の実施の形態に記載されている構成要素はあくまで例示であり、本発明の範囲をそれらのみに限定する趣旨のものではない。
【0024】
図1に、本実施の形態におけるバーコード生成システムの概略構成を示す。このシステムは情報処理装置(ホストコンピュータ)100とイメージスキャナ110と印刷装置200とにより構成される。
【0025】
本実施の形態における印刷装置200は、熱エネルギーを利用したインク吐出方式を採用したインクジェット印刷装置であり、印刷媒体の一種としての用紙103を搬送する搬送ユニット106と、用紙103の搬送速度を検出するエンコーダ104と、画像データを記録するインクジェット記録方式の記録ユニット101で構成される。この記録ユニット101は、USBなどのインタフェースケーブル102を介して情報処理装置100と接続されている。情報処理装置100はパーソナルコンピュータ(PC)などの装置であり、この装置から印刷装置200に対して、画像データの転送やクリーニングなどの制御コマンドの転送が行われる。情報処理装置100には、その周辺装置の一つとして、後述するように、記録ユニット101で実際に記録されたバーコードを光学的に読み取るためのバーコード読み取り部の一例であるイメージスキャナ110が接続される。
【0026】
記録ユニット101による画像データの記録は、搬送ユニット106における用紙センサ(図示せず)からの用紙検出信号をトリガにして、エンコーダ104の用紙速度信号に同期しながら、搬送された用紙103に対してインク滴を吐出することにより行われる。記録内容は、任意であるが、図1の例では1次元バーコード105である。
【0027】
なお、エンコーダ104を用いずに、記録ユニット101とは独立した搬送装置により用紙等の印刷媒体をユーザが指定する任意の速度で搬送する構成であってもよい。
【0028】
図2は、図1のシステムにおける情報処理装置100と印刷装置200の制御ハードウェアの構成例を示すブロック図である。
【0029】
情報処理装置100は、中央処理装置(CPU)等により構成される制御部111を備える。制御部111は、記憶部112に格納されている制御プログラムを実行し、各部を制御する。本発明の「補正テーブル生成手段」および「バー幅補正手段」は制御部111により実現される。記憶部112は、ROM,RAM,HDD等の任意の記憶装置を含みうる。表示部113はLCD,CRT等のディスプレイを含み、ユーザに対して表示画面上に情報を提示する。操作部114は、キーボード、マウス等を含み、ユーザからの操作や情報の入力を受け付ける部位であり、本発明における印刷条件およびバーコード条件を入力する条件入力手段を構成する。USBインタフェース115は、情報処理装置100を印刷装置200と接続するためのプリンタインタフェースの一例として示してある。但し、プリンタインタフェースはUSBに限るものではない。
【0030】
印刷装置200の制御部201は、中央処理装置(CPU)202を備え、このCPU202により不揮発性メモリとしてのROM203に格納されている制御プログラムを実行し、各部を制御する。また、制御部201は、CPU202により各種データ処理のワークエリアや受信バッファとして使用されるメモリとしてのRAM204や、制御回路209を介して画像展開部として使用されるイメージメモリ205を備える。更に、CPU202は、制御回路209を介して、記録ヘッド214〜217を駆動するヘッド駆動回路210や、各記録ヘッドを記録に適正な状態に保つためのクリーニング動作や記録動作を制御する各種モータ206を駆動するモータドライバ211、記録ヘッド下に給紙を行うための搬送制御I/F207の入出力インターフェース制御部(I/O)212を制御する構成となっている。本例では、図1内のエンコーダ104は搬送制御I/F207に含まれているものとする。
【0031】
また、印刷装置200は、基本的に、外部装置である情報処理装置100から送信された画像データやクリーニングコマンドなどをインタフェースケーブル102を介して受信するUSBコントローラ208を有し、この受信した各種コマンドに従って動作する。
【0032】
図3は、記録ユニット101で、バーコードのような黒バーと白バーにて構成されるパターンを記録した場合の概略の拡大図である。黒バーは黒インクで記録された直線要素であり、白バーは記録の空白部で構成される直線要素であり、上述のように白スペースともいう。この図の例では、ライン21,22,23の順で、記録を行ったものとする。図3の例では、ライン21により細バーを構成し、ライン22,23により太バーを構成している。
【0033】
インクジェット印刷装置では、記録されるドットのサイズは、インクという液体を吐出させて画像を形成するという特性上、使用環境や記録ヘッドの個体差、インクの種類などの条件に依存するインクの吐出量と、用紙の素材に依存する滲み率によって変化する。通常、ある範囲内の使用環境を想定し、対印刷媒体との関係から吐出量を設定し、インクのドットサイズを決定している。しかし、産業用途等の過酷な記録条件や設置環境、ヘッドの個体差、紙種などの影響で、にじみ、吐出量が変化する。その結果、図3にケース1、ケース2として示したように印刷されたドットサイズが変化することがある。ドットサイズが変化すると、ドット間のスペースが規定値に対し増減することとなり、その結果、バーコードの読取り不良や、最悪ケースでは読めなくなるといった場合が生じる。
【0034】
また、仮に上記のようなにじみ方のばらつき要因がないとしても、インクをにじませて画像を形成している以上、同じドット数で黒バーと白スペースを形成しても両者は同じ幅にはならない。インクジェット印刷装置におけるバーコードの生成になんらかの補正が必要なのはこの為である。
【0035】
図4はインクジェット印刷装置における副滴が用紙に着弾するまでの時間経過に応じた状態を表した模式図である。記録ヘッド(ここでは記録ヘッド214)からインクが吐出されるとき、画像を形成するインクの主滴40が用紙103に着弾した後に、主滴40から遅れて主滴40の残りである副滴41が用紙に着弾する。この副滴41は主滴40よりもサイズが小さい。記録ヘッド214に対して相対的に用紙103が一方向(図の右方向)に搬送されるとき、副滴41は主滴40の着弾に対して必ず用紙搬送方向の後ろ側に形成されてしまう。ここでは用紙の全幅に亘って並んだ複数のノズルからなるノズル列を有するライン型の記録ヘッドを想定しているが、いわゆる用紙の搬送方向と直交する方向に主走査されるシリアル型の記録ヘッドにおいても同様の副滴41による影響がありうる。すなわち、副滴41は主滴40の着弾に対して必ずヘッド走査方向の後ろ側に形成されてしまう。
【0036】
図5(a)は、インクジェット印刷装置においてノズル列223に対して平行のバーを有するバーコードを記録する際に発生する副滴の状態を図にしたものである。これはライン型の記録ヘッドに対して用紙をA方向に搬送した場合を示している。上述のように、副滴41は主滴40の着弾に対して必ず用紙搬送方向の後ろ側に形成されてしまう為、用紙搬送方向に対して垂直(すなわちノズル列に対して平行)のバーで構成されるバーコードは、主滴ドット列221に隣接する副滴ドット列220の影響により黒バーの幅が白スペースの幅に対して極端に大きくなってしまうおそれがあった。
【0037】
図5(b)は、インクジェット印刷装置において用紙搬送方向に平行(すなわちノズル列223に対して垂直)のバーを有するバーコードを記録する際に発生する副滴の状態を図にしたものである。図5(a)に場合に比べて図5(b)のバーコードは、副滴ドット列が主滴ドット列の線上に重なり、大半の副滴は主滴ドット列に重なり相殺されてしまう。また、この場合の副滴が主滴に対してずれる方向はバー幅に影響しない方向である。その為、副滴が発生しても、黒バー幅が白スペース幅(すなわち白バー幅)よりも極端に大きくなってしまうということはない。
【0038】
このように、ノズル列223に対してバーコードの方向が90度変わっただけで、例えば白スペースではL2>L1と、同じドット数で構成しようとしても異なる幅の白スペースが構成されてしまう。すなわち、副滴が発生するインクジェット印刷装置においてバーコードを印刷する場合は、バーコードの方向によっても黒バー幅と、白スペース幅が異なる為、それぞれの場合に対して適正なバーコードの生成を行う必要がある。
【0039】
図6は、本実施の形態におけるバーコード生成システムの装置構成を示したものである。印刷装置200は上述のようにインタフェースケーブル102を介して情報処理装置100と接続される。イメージスキャナ110はインタフェースケーブル805を介して情報処理装置100と接続される。このような実際の使用環境下(装置、環境、用紙等)にある印刷装置200にて印刷されたバーコードを含む印刷出力物402を、イメージスキャナ110にセットして読み取る。これにより、バーコード生成システムを含む情報処理装置100はUSBケーブル102を介してバーコードを含む印刷出力物402のバーコード部分の各バー幅の実サイズ情報を得ることができる。情報処理装置100には、本実施の形態の処理の結果として、補正テーブル507、バーコード補正値1100が得られ、保存される。
【0040】
図7は、本実施の形態のバーコード生成システムのブロック図である。
【0041】
実際の使用環境下にある印刷装置200によって印刷されたバーコード502を含む印刷出力物402を、バーコード読み取り部503(本実施の形態ではイメージスキャナ110)によって読み取る。読み取られたバーコード画像は、バーコード解析部504によって、各黒バー、白スペースの幅がそれぞれ測定される。さらに、測定された各黒バー、白スペースの幅と、バーコード入力部505によって入力された印刷条件を考慮して、各黒バー幅と白スペース幅を構成しているドット数がいくつであるかが算出される。印刷条件には、使用する印刷装置200の印刷解像度、ドット径、バーコードの方向(向き)が含まれる。
【0042】
このようにして算出された各黒バー幅と、白スペース幅に対応するドット数から使用環境に合わせた補正テーブル507が作成され、システム内のメモリ506(例えば図2に示したROM203のような再書き込み可能な不揮発性メモリ)に記憶される。
【0043】
実際にバーコードを生成する場合は、バーコード入力部505から生成したいバーコードの条件を入力する。このバーコード条件には、バーコードの種類、大きさ(サイズ)、方向が含まれる。入力されたナローバーの幅、もしくはドット数からバーコード生成部508によって、黒バーと白スペースが同じ幅になるようなドット数を、前述した補正テーブル507から参照して採用することによってバーコードの生成が行われる。このようにして、ユーザの使用環境に合わせたバーコードの生成を行うことが可能になる。
【0044】
図8は、任意のバーコードを印刷出力物402から読み取って得られた、バーコードの黒バーおよび白スペースの幅の測定結果800の一例を示している。バーコードは黒バー、白スペースが交互に構成されている為、黒バー(B)と白スペース(S)の幅(μm)とが交互に求められている。
【0045】
図9は、図8の測定結果800の各数値を、黒バーおよび白スペースのおのおのについて、ヒストグラム化したグラフと、そのグラフから推定される黒バーおよび白スペースの幅を示している。1次元バーコードは幅は2種類のものと、4種類あるものが存在する。本実施の形態では4種類の幅を持つバーコードについて説明する。2種類の幅のバーコードの場合でも同様である。
【0046】
実際の印刷出力物のバーコードの幅の測定結果がインクの滲み等の程度によりばらつきが生じるが、バーの幅が4種類ある場合、図9に示すように、イメージスキャナによって読み取られた各黒バー幅と白スペース幅の測定結果も4カ所に集中して現れる。そこで、これらの読み取られた各黒バー幅と白スペース幅を集計することにより、図9で表したように、幅が×1倍、×2倍、×3倍、×4倍の部分を識別するとともに、各幅におけるドット数を求めるとともに、その実際の印刷幅を求めることができる。印刷幅は各ドット数について印刷幅の複数の実測値から算出する。ここでは各幅につき、その複数の実測値の平均値を取る。平均値の代わりにヒストグラムの最頻値を利用してもよい。このようにして、×1倍、×2倍、×3倍、×4倍の各黒バー、白スペース幅が実際の印刷装置において何ドットで構成されているかを求めるとともに、その印刷幅を求め、後述の補正テーブルを作成する。
【0047】
次に、各黒バー、白スペースの実測幅からそれらの指示幅のドット数を推定する方法について説明する。
【0048】
図10は600dpiの印刷解像度におけるドット径の大きさについて説明するための図である。
【0049】
600dpiの場合、直交二軸(XY)方向の各軸共に1インチ600ドットの打ち込みが可能である。したがって、1インチ25.4mm÷600dpi=42.5μmのドット間隔となる。この解像度で隣接して打ち込んだ2ドットが最も離れた場合は図10に示すように、両点を結ぶ線分がX軸(またはY軸)から45度傾いた場合である。ベタ印刷を行うためには、図10のような場合にも両ドットは接する必要がある。なぜなら、ドットとドットの間に隙間がある場合、ドット間に白い部分が発生してしまいベタにならなくなってしまう恐れがあるからである。したがって、42.5μm四方のエリアを離間することなくドットで埋めるには、ばらつきを考慮しないで考えると、当該正方形のエリアの対角2点を中心とした2ドットの外縁が少なくとも当該エリアの中心であるA点まで伸びてドットが形成されていれば足りる。そのときのドット径(直径)をRとすると、R=42.5mm×√2=60.1μmである。
【0050】
ただし、実際にドット径を決定する際には、着弾位置のズレや、吐出量のばらつき等を考慮し、ドット径を前述の最低値より+20μm程度大きくして、各ばらつきが発生してもベタ印刷部に白い部分が発生しないようにしている。
【0051】
実測値の一例として、黒バー幅がL=264μm、白スペースが122μmであった場合、これらの黒バーと白スペース幅は何ドットの打ち込みまたは非打ち込みで構成されているかを算出する方法を以下に述べる。
【0052】
図11(a)は黒バー幅からドット数を算出する方法を説明し、図11(b)は白スペース幅からドット数(非印字ドット数)を算出する方法を説明するための図である。今、Y軸(またはX軸)に沿って黒バーおよび白スペースが形成されているとする。
【0053】
図11(a)のように、実測された黒バーの幅がL=264μmである場合、ドットは42.5μm間隔で構成されていることから、ドット径がR=80μmとすると、L=264μm−ドット径80μm=184μmをドット間隔42.4μm(25.4mm÷600dpi)で割ったものがドット間隔の個数である。この個数に1を足した値が、そのバーを構成しているドット数であると推定される。本例では、黒バー幅L=264μmは(264μm−80μm)÷42.4μm+1ドット=4.32ドットと推定できる。
【0054】
同様に、図11(b)のように実測された白スペースの幅がL=122μmである場合、L=122μm+ドット径80μm=202μmをドット間隔42.5μmで割ったものから1ドット引いた値が白ドット数であると推定される。本例では、白スペース幅L=122μmについては、(122μm+80μm)÷42.4μm―1ドット=3.75ドットと推定できる。このように実測された黒バー、白スペースの幅と、印刷装置の解像度から、実測幅が何ドットで構成されているかを推定することが可能になる。
【0055】
なお、ドット径は読み取ったバーコードの方向によって変更するようにしてもよい。
【0056】
図12(a)はイメージスキャナによる4値バーコードの実測値から求めた各黒バー、白スペース幅の平均値を示している。図12(b)は図12(a)の各黒バー、白スペースの幅の実測値を基に図11で説明した計算方法により4種類の幅の黒バー幅および白スペース幅のドット数をそれぞれ推定したものである。この段階ではドット数は小数で表されている。
【0057】
図12(c)は図12(b)で算出された各黒バー、白スペースの構成ドット数の小数点以下の数値を丸めて整数にしたものである。この丸めの際、黒バーに対しては切り捨て、白スペースに対して切り上げたものである。小数点以下の丸めの方法としては、切り上げ、切り捨て、四捨五入等が考えられるが、特にインクジェット印刷装置においてバーコード印刷をする場合はドットがにじみ黒バーが太くなり、その分白スペースの幅が細くなる傾向があることから、黒バーを切り捨て、白バーを切り上げた方がより安定したバーコード品位になると思われる。
【0058】
ただし、後述する補正テーブルを参照する段階で、小数の丸めを行うことができるので、必ずしもこの段階で丸めを行う必要はない。
【0059】
図13は、実測された黒バー、白スペース幅(μm)と、図12で説明したように算出された推定ドット数(小数)の関係をプロットしたグラフである。バーコードの方向(各バーの方向が水平か垂直か)によって、上述した副滴の影響の有無により結果が異なるので、バーコードの方向に対応した二組の結果が得られる。
【0060】
このように解析された4種類の幅から求めた4点において、任意のバー幅とドット数の関係が導かれる。このグラフから、1ドット単位で各バー幅とドット数の関係を算出することが可能となる。すなわち、イメージスキャナで読み取った任意のバーコードに含まれないドット数の黒バー、白スペースの関係を推定することができる。これにより、所定のテストチャート等を用いることなく、さまざまなバー幅に対応可能なバーコードの補正テーブルが、印刷済みの任意のバーコードによって作成できることになる。また、ユーザに対してテストチャートを印刷する用紙やインクの無駄も無くすことが可能となる。
【0061】
図14は図13で作成されたグラフから推定したドット数と、黒バー幅および白スペース幅の関係を1ドット単位で規定した補正テーブル507の構成例を示している。この補正テーブル507はバーコードの方向(縦方向と横方向)に応じて二つ設けることができる。補正テーブル507は、印刷媒体の種類によってさらに別個に設けるようにしてもよい。あるいは、印刷媒体の種類によって、補正テーブル507の補正値を修正する係数をあらかじめ定めておいてもよい。いずれにせよ、バーコードの方向や印刷媒体の種類等に対応可能とすることにより、多種多様な環境においても安定した品位のバーコード生成が可能となる。
【0062】
図15は、本実施の形態のバーコード生成システムで得られたバーコード補正値の例を示す。
【0063】
1次元バーコードは、大きく分けてバイナリレベルとマルチレベルの2種類に分類できる。バイナリレベルのバーコードとは、2種類の黒バーと2類の白スペースで構成されたバーコードであり、1:2の比率で構成される。代表的なバーコードとしては、Code39、ITFなどがある。マルチレベルのバーコードとは、4種類の黒バーと4種類の白スペースで構成されたバーコードであり、1:2:3:4の比率で構成される。代表的なバーコードとして、JAN、EAN128、Code128などがある。例えば、マルチレベルのバーコードを補正する場合、図14で示した黒バーと白スペースの補正テーブル507から、1:2:3:4となる黒バーのドット数を選び、且つ黒バーと白スペースの実サイズ幅が同じとなるドット数を選ぶことによって読取り品位の高い適正なバーコードを作成することが可能である。
【0064】
図15(a)は細バー5ドットのCode39の補正されたドット構成を示す。細バー幅5ドットは、図14の補正テーブル507から250μmである。細スペースは、細バーと同じ幅サイズ250μmに最も近いドット数を表から探し出すことにより、8ドットと決定される。太バー及び太スペースは、細太比1:2により、250μm×2=500μmのドット数を補正テーブル507から探し出し、太バー11ドット、太スペース14ドットと決定される。これにより、バーコード読取り率の重要ファクターの一つである『細バー幅×2=太バー幅』、及び『黒バー幅=白スペース幅』を印刷媒体(紙面)上の実サイズで保証することができる。
【0065】
図15(b)は細バー4ドットのEAN128の補正されたドット構成を示す。細バー幅4ドットは、210μmなので、1:2:3:4となる4値の各黒バーの幅サイズは、210μm、420μm、630μm,840μmである。図14の補正テーブル507から各々の幅サイズとなるドット数は、4ドット、9ドット、14ドット、19ドットと決定する。同様に、210μm、420μm、630μm,840μmのスペース幅は、7ドット、12ドット、17ドット、22ドットと決定できる。任意のバーコードの黒バーおよび白スペースの実際の幅は各4種類の幅しか測定していないが、図13のグラフから推定された図14の補正テーブル507からさまざまな種類の幅も、印刷環境に即した条件で適切に決定することができる。これにより、バーコード読取り率の重要ファクターの一つである『1:2:3:4の比率』、及び『黒バー幅=白スペース幅』が紙面上の実サイズで保証することができる。
【0066】
このように、図14で説明した補正テーブル507を用いてバイナリレベルのバーコードCode39及びマルチレベルのバーコードEAN128について、それぞれ図15(a)(b)に、ノズル列に対して垂直および水平に構成されるバーコードの各バーの種類に対応するバーおよびスペースの補正ドット数が得られる。
【0067】
図16は本実施の形態におけるバーコード生成アプリケーションにおいて用いるバーコード入力部505の一要素であるバーコード生成画面1600の一例を示している。
【0068】
バーコード生成アプリケーションは、印刷出力物(チャート)を読み取る前に印刷を行った印刷装置の解像度1601、ドット径1602、バーコード方向1603をユーザに入力させる。但し、後述するように、ドット径1602はユーザの入力によらず解像度1601から決定するようにしてもよい。バーコードの方向もイメージスキャナの読取結果から自動的に判断するようにしてもよい。「チャート読込」ボタン1604がユーザにより指示されたとき、イメージスキャナにセットされた任意のバーコードの記録出力を読み取り、読み取ったイメージに基づく各要素幅のドット数と実測値に基づいて図14に示したような補正テーブル507を作成する。
【0069】
その後、「バーコード生成」ボタン1605が操作可能となる。「バーコード生成」ボタン1605がユーザにより指示されると、入力画面でユーザが指定したバーコード種類1606と細バーのドット数1607に合致した適正なバーコード補正値を求めて、バーコード構成情報画面1608を出力する。「細バーのドット数」1607は、複数のバー幅のうち基準となるバーの幅情報である。入力バーコード構成情報画面1608は、バイナリレベルのバーコードの場合を示している。この場合、バーの方向の選択結果に応じて、その細バー(ナローバー)1609、細スペース(ナロースペース)1610、太バー(ワイドバー)1611、太スペース(ワイドスペース)1612の各表示欄に適正な構成ドット数を表示する。「OK」ボタンにより情報処理装置内の記憶部に当該バーコードの構成情報(適正な構成ドット数等)が記憶される。記憶された情報は以降のバーコード記録に利用される。
【0070】
なお、バーコード生成画面1600においてバーコードの方向が選択できるのは、両方向の補正テーブル507が作成済みである場合であり、片方しか補正テーブル507を作成していない状態でその方向のバーコードの生成を選択した場合は警告を出し、新たに補正テーブル507を作成する必要がある。ただし印刷方向によってバーコードの品位が変化しない印刷装置を使用する場合は、片方の補正テーブル507だけで両方向のバーコード生成を行っても構わない。また、バーコード方向選択はバーコード生成画面1600で行うようにしたが、バーコード構成情報画面1608で行う構成としてもよい。
【0071】
図17は本実施の形態において、テストチャート等を使用せず任意のバーコード印刷出力物を使用することによって補正テーブル507を作成するまでの処理を表したフローチャートである。
【0072】
まず、バーコード入力部505によって印刷条件(解像度、ドット径等)を確認する(S11)。ついで、ユーザに任意のバーコードを印刷した印刷出力物をイメージスキャナにセットし、バーコードを読み取ることを勧誘する(S12)。読み取りの結果、黒バー、白スペース幅の実測値を求める(S13)。求められた値は各黒バー、白スペース、幅の種類の個数によって分類され、2値あるいは4値のバーコードの決定を行う(S14)。2値、4値の決定についてはバーコード入力部505のソフト上に選択ボタンを設け、ユーザに設定させるようにしてもよい。検出された各黒バー、白スペースの幅を、幅の種類ごとに(例えば平均値として)求め(S15)、それぞれに対して構成ドット数(すなわち何ドットで印刷されていたか)を前述した計算によって推定する(S16)。この推定されたドット数と、各黒バー、白スペース幅の平均値の関係から図13で説明したようなグラフを作成し、図14で説明したような1ドット単位の補正テーブル507の作成を行う(S17)。作成された補正テーブル507はバーコード生成システム内のメモリに記憶される(S18)。
【0073】
なお、バーコードの異なる方向については、別個に印刷出力物を読み取り、上記の処理を繰り返して行う。この代わりに、異なる方向のバーコードを一緒に印刷した印刷出力物を同時に読みとって、個別に処理をすることにより同時に両方向の補正テーブルを作成するようにしてもよい。異なる種類の印刷媒体については、それぞれの印刷媒体の印刷出力物を読みとって上記の処理を繰り返して行う。その場合、別個の補正テーブルを作成してもよいし、上述のように修正係数を求めて記憶しておくようにしてもよい。
【0074】
このようにして記憶された補正テーブル507を用いることで、今後任意のサイズ、種類のバーコードを作成する際でも使用印刷媒体に即した適正な黒バーと白スペースの幅を維持したバーコード生成が可能となる。
【0075】
図18は実際に本システムを使用して、適正な補正が施されたバーコードを生成するときに、バーコード生成システム内で行う処理のフローチャートである。このフローチャートの処理の実行手順を表すプログラムは例えば情報処理装置100の記憶部112内に格納され、制御部111がこれを解釈実行することにより、この処理が実現される。
【0076】
まず、図16に示したバーコード生成画面1600においてユーザから作成したい任意のバーコードのナローバードット数を選択もしくは入力(S21)、バーコード種類の選択(S22)、バーコードの方向の選択(S23)を受ける。ついで、バーコード作成ボタンが押されると(S24)、前述したすでに作成済みの補正テーブル507を参照し(S25)、バーコード種類、方向に適した黒バーおよび白スペースの適正なドット数を決定する(S26)。すなわち、バーコードの種類およびその複数のバー幅のうち基準となるバーの幅情報の入力に応じて、かつ、指定されたバーコード方向に応じて、補正テーブル507を参照し、当該種類の印刷後のバーコードの黒バーおよび白スペースの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白スペース幅のドット数を選定する。決定されたドット数は例えばバーコード構成情報画面1608に示したように表示される(S27)。
【0077】
なお、上記の説明では、バーコード入力部に印刷装置の解像度およびドット径を入力することで、任意の測定された黒バー、白スペースの幅から構成ドット数を算出したが、ドット径が分からない場合は解像度からある程度ドット径を推定することが可能である。例えば解像度が600dpiの場合、1インチ25.4mm÷600dpi=42.5μm(0.5μm間隔の数値とする)となる。図10で説明したようにベタ印刷時に白い部分がないようにするには42.5×√2=約60μmである。この数値にばらつきインク吐出ばらつき分10μm、着弾ばらつき10μ分、計20μmを足した80μmが実際のドット径の目安とすることができる。
【0078】
同様に1200dpiの場合は、1インチ25.4mm÷1200dpi=21μmとなる。この場合、21μm×√2=約30μmが最小ドット径であり、この数値にインク吐出ばらつき5μm、着弾ばらつき5μm分、計10μm足した40μmが実際のドット径の目安となる。
【0079】
あらかじめ印刷装置の特性に適合したドット径と印刷解像度の関係をテーブル化してバーコード生成システム内に格納しておけば、ユーザがドット径を知らなくても印刷装置の解像度を入力することで、上記と同様の結果を得ることができる。
【0080】
以上説明したように、本実施の形態によれば、印刷装置の設置環境や装置の個体差、紙の種類などユーザ個々の使用環境条件に合致した適正なバーコードの生成が可能なバーコード生成システムにおいて、特別なテストチャートを印刷することなくユーザ任意のバーコードを使用して補正テーブルを作成することが可能となる。
【0081】
以上、本発明の好適な実施の形態について説明したが、上記で言及した以外にも種々の変形、変更を行うことが可能である。
【0082】
例えば、本実施の形態では記録ヘッドを固定し、用紙が動作することにより画像を形成する場合の印刷装置について述べたが、用紙が固定されて記録ヘッドが動作させることにより画像を形成するタイプの印刷装置にも本発明は適用可能である。また、バーコードとして1次元バーコードについて説明したが、2次元バーコードに適用することも可能である。
【0083】
上記実施の形態で説明した機能をコンピュータで実現するための、コンピュータにインストールされるプログラムコード自体も本発明を構成するものである。つまり、本発明における特許請求の範囲に記載した要件を満たす機能を実現するバーコード生成プログラムも本願発明に含まれる。なお、プログラムとしては、プロセッサが直接に解釈し実行可能なオブジェクトコードプログラム、および、インタプリタにより実行されるプログラム、OSまたはアプリケーション上で動作するスクリプトデータ形式のプログラム等、プログラムの形態は問わない。また、プログラムを供給するための「記録媒体」としては、例えば、磁気記憶媒体(フレキシブルディスク、ハードディスク、磁気テープ等)、光ディスク(MOやPD等の光磁気ディスク、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、DVD−R、DVD−RW、DVD+RW等)、半導体ストレージ、紙テープ、などを挙げることができる。
【図面の簡単な説明】
【0084】
【図1】本発明の実施の形態におけるバーコード生成システムの概略構成を示す図である。
【図2】図1のシステムにおける情報処理装置と印刷装置の制御ハードウェアの構成例を示すブロック図である。
【図3】印刷装置の記録ユニットで、バーコードのような黒バーと白バーにて構成されるパターンを記録した場合の概略の拡大図である。
【図4】インクジェット印刷装置における副滴が用紙に着弾するまでの時間経過に応じた状態を表した模式図である。
【図5】インクジェット印刷装置においてノズル列に対して平行のバーを有するバーコードおよび垂直のバーを有するバーコードのそれぞれを記録する際に発生する副滴の状態を示した図である。
【図6】本発明の実施の形態におけるバーコード生成システムの装置構成を示した図である。
【図7】本発明の実施の形態のバーコード生成システムのブロック図である。
【図8】本発明の実施の形態において任意のバーコードを印刷出力物から読み取って得られた、バーコードの黒バーおよび白スペースの幅の測定結果の一例を示した図である。
【図9】図8の測定結果の各数値を、黒バーおよび白スペースのおのおのについて、ヒストグラム化したグラフと、そのグラフから推定される黒バーおよび白スペースの幅を示した図である。
【図10】600dpiの印刷解像度におけるドット径の大きさについて説明するための図である。
【図11】黒バー幅および白スペース幅からそれぞれのドット数を算出する方法を説明するための図である。
【図12】本発明の実施の形態において、イメージスキャナによる4値バーコードの実測値から求めた各黒バー、白スペース幅の平均値、およびこれらに基づいて4種類の幅の黒バー幅および白スペース幅のドット数の推定値を説明するための図である。
【図13】本発明の実施の形態において、実測された黒バー、白スペース幅(μm)と、算出された推定ドット数(小数)の関係をプロットしたグラフである。
【図14】図13で作成されたグラフから推定したドット数と、黒バー幅および白スペース幅の関係を規定した補正テーブルの構成例を示す図である。
【図15】本発明の実施の形態のバーコード生成システムで得られたバーコード補正値の例を示す図である。
【図16】本発明の実施の形態におけるバーコード生成アプリケーションにおいて用いるバーコード入力部の一要素であるバーコード生成画面の一例を示す図である。
【図17】本発明の実施の形態において、テストチャート等を使用せず任意のバーコードを使用することによって補正テーブルを作成するまでの処理を表したフローチャートである。
【図18】本発明の実施の形態において、適正な補正が施されたバーコードを生成するときに、バーコード生成システム内で行う処理のフローチャートである。
【符号の説明】
【0085】
100…情報処理装置
101…記録ユニット
102…インタフェースケーブル
103…用紙
104…エンコーダ
105…2次元バーコード
106…搬送ユニット
110…イメージスキャナ
111…制御部
112…記憶部
113…表示部
114…操作部
115…インタフェース
200…印刷装置
201…制御部
205…イメージメモリ
206…各種モータ
208…コントローラ
209…制御回路
210…ヘッド駆動回路
211…モータドライバ
214…記録ヘッド
220…副滴ドット列
221…主滴ドット列
223…ノズル列
402…印刷出力物
502…バーコード
503…バーコード読み取り部
504…バーコード解析部
505…バーコード入力部
506…メモリ
507…補正テーブル
508…バーコード生成部
800…測定結果
805…インタフェースケーブル
1100…バーコード補正値
1600…バーコード生成画面
1601…解像度
1602…ドット径
1603…バーコード方向
1604,1605…ボタン
1606…バーコード種類
1607…ドット数
1608…バーコード構成情報画面
1609…細バー(ナローバー)
1610…細スペース(ナロースペース)
1611…太バー(ワイドバー)
1612…太スペース(ワイドスペース)

【特許請求の範囲】
【請求項1】
インクを吐出するノズルと、前記ノズルからインクを吐出することにより画像を形成するインクジェット印刷装置によりバーコードを生成するバーコード生成システムにおいて、
バーコードのイメージを読み取る読み取り手段と、
前記印刷装置の印刷条件を入力する印刷条件入力手段と、
前記印刷装置で印刷出力した任意のバーコードについて前記読み取り手段の読み取り結果および前記印刷条件に基づき、各バー幅の実測値に対応して当該バーを構成するドット数を推定するバーコード解析手段と、
前記各バー幅の実測値と前記推定されたドット数との関係に基づいて、1ドット単位のドット数と前記黒バーおよび白バーの幅とを対応づけた補正テーブルを生成する補正テーブル生成手段と、
バーコードの種類およびその複数のバー幅のうち基準となるバーの幅情報の入力に応じて、前記補正テーブルを参照し、当該種類の印刷後のバーコードの黒バーおよび白バーの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白バー幅のドット数を選定するバー幅補正手段と
を備えたバーコード生成システム。
【請求項2】
前記白バーは隣接する2本の黒バーの間の非記録部により構成される請求項1に記載のバーコード生成システム。
【請求項3】
前記印刷条件は、少なくとも前記インクジェット印刷装置の印刷解像度である請求項1または2に記載のバーコード生成システム。
【請求項4】
前記補正テーブルは縦方向と横方向のバーコードについて別個に用意され、前記バー幅補正手段はバーコードの方向に応じて別個にバー幅を補正する請求項1、2または3に記載のバーコード生成システム。
【請求項5】
バーコードを印刷するためのバーコード構成情報を生成するバーコード生成プログラムであって、
インクジェット印刷装置で印刷されたバーコードのイメージを読み取るステップと、
前記インクジェット印刷装置の印刷条件の入力を受け付けるステップと、
前記インクジェット印刷装置で印刷出力した任意のバーコードの読み取り結果および前記印刷条件に基づき、各バー幅の実測値に対応して当該バーを構成するドット数を推定するステップと、
前記各バー幅の実測値と前記推定されたドット数との関係に基づいて、1ドット単位のドット数と前記黒バーおよび白バーの幅とを対応づけた補正テーブルを生成するステップと、
バーコードの種類およびその複数のバー幅のうち基準となるバーの幅情報の入力に応じて、前記補正テーブルを参照し、当該種類の印刷後のバーコードの黒バーおよび白バーの幅が規定の大きさに一致または接近するように、印刷時に設定されるべき黒バー幅と白バー幅のドット数を選定するステップと
をコンピュータに実行させるバーコード生成プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図17】
image rotate

【図18】
image rotate

【図6】
image rotate

【図16】
image rotate


【公開番号】特開2009−282692(P2009−282692A)
【公開日】平成21年12月3日(2009.12.3)
【国際特許分類】
【出願番号】特願2008−133341(P2008−133341)
【出願日】平成20年5月21日(2008.5.21)
【出願人】(000208743)キヤノンファインテック株式会社 (1,218)