(57)【要約】【課題】低解像度プリンタでのバーコード印刷においても高品質の印刷が可能なプリンタドライバ、印刷制御方法、及びプリンタシステムを提供する。【解決手段】１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得してプリンタに出力するプリンタドライバにおいて、印刷データ中に含まれる印刷バーコードイメージのキャラクタコードを識別し、キャラクタコードに対応するバーコードイメージに基づいて印刷バーコードイメージを補正する。【選択図】図１
2011076359.tif 000002
【特許請求の範囲】
【請求項１】
１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得してプリンタに出力するプリンタドライバにおいて、
前記印刷データ中に含まれる印刷バーコードイメージのキャラクタコードを識別し、該キャラクタコードに対応するバーコードイメージに基づいて前記印刷バーコードイメージを補正することを特徴とするプリンタドライバ。
【請求項２】
前記印刷バーコードイメージの前記バーの種類を、前記キャラクタコードに対応するバーコードイメージの前記バーの種類に合うように前記印刷バーコードイメージを補正することを特徴とする請求項１記載のプリンタドライバ。
【請求項３】
前記印刷バーコードイメージの前記バーの幅を、前記バーの種類毎に同じドットの数になるように補正することを特徴とする請求項１または２記載のプリンタドライバ。
【請求項４】
前記印刷バーコードイメージの前記バーの幅を、前記印刷バーコードイメージから検出した前記バーの種類毎に最も出現頻度の高い前記バーの幅のドットの数になるように補正することを特徴とする請求項１から３の何れかに記載のプリンタドライバ。
【請求項５】
１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得して印刷する印刷制御方法において、
前記印刷データ中に印刷バーコードイメージのキャラクタコードを識別するステップ、該キャラクタコードに対応するバーコードイメージに基づいて前記印刷バーコードイメージを補正するステップを有することを特徴とする印刷制御方法。
【請求項６】
バーコードを印刷可能なプリンタと、１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得して前記プリンタに出力するプリンタドライバと、を有するプリンタシステムにおいて、
前記プリンタドライバは、
前記印刷データ中に含まれる印刷バーコードイメージのキャラクタコードを識別し、該キャラクタコードに対応するバーコードイメージに基づいて前記印刷バーコードイメージを補正することを特徴とするプリンタシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタドライバ、印刷制御方法、及びプリンタシステムに関する。
【背景技術】
【０００２】
近年、ＩＴ(Information Technology)の進展に伴い、事業所だけでなく、家庭でもコンピュータが普及してきている。これに伴いプリンタの需要も増大し、種々のプリンタが開発されており、製造コストを抑えるため３００ｄｐｉ以下の低解像度のプリンタも高解像度のプリンタと共に販売されている。
このような低解像度のプリンタでバーコードイメージを印刷することも多々行われるようになってきた。
【０００３】
バーコードの種類にはＪＡＮ、ＮＷ−７、ＩＴＦ、ＣＯＤＥ３９等が挙げられる。
ここで、プリンタで印刷しやすいモジュール構成を有するバーコードの規格であるＮＷ−７について説明する。
ＮＷ−７は、１９７２年にモナークマーキング社によって開発された２ｏｆ５に次ぐ比較的初期のバーコードの規格である。病院等での血液の管理、宅配便の配送伝票、図書館等での図書の管理、会員カード、書留郵便の管理等、数字の連番印刷が必要なものに利用される。
【０００４】
ＮＷ−７は、Ｎａｒｒｏ（狭い）と、Ｗｉｄｅ（広い）との２種類の、４本のバー（黒バー）と３本のスペース（白バーともいう）（合計７本）で１つのキャラクタ（文字）を表すため、ＮＷ−７と呼ばれる。バーコードの始まりと終わりには、Ａ、Ｂ、Ｃ、Ｄ（ａ、ｂ、ｃ、ｄ）のいずれかが付けられる（スタート／ストップキャラクタ）。
キャラクタとしては、０〜９までの数字、６個の特殊記号（−、＄、：、／、．、＋）、及び４個のスタート・ストップコード（Ａ〜Ｄ）が挙げられる。
ＮＷ−７は、ＩＴＦに比べて、桁落ちが少なく、ＣＯＤＥ３９に比べてサイズが小さい。
【０００５】
ところで、この種の低解像度のプリンタドライバではアプリケーションソフトウェア（以下アプリケーションと表記）から送られてきたバーコードイメージをそのまま印刷しているため、バーコード中の太バーや細バーの幅にバラツキが生じ、バーコードリーダで読み取ると、エラーが生じることがあった。
【０００６】
このバーコードエラーについての対策が特許文献１に開示されている。
特許文献１に記載の発明は、「プログラム」に関するものであり、具体的には「コンピュータに、バーコード情報を含む画像データに基づいてバーコードの印刷データを作成する作成手順と、作成手順によって作成した印刷データを補正する補正手順と、補正手順によって補正した印刷データを印刷装置へ出力する出力手順とを実行させるためのプログラム」である。
【０００７】
特許文献１に記載の発明によれば、印刷装置の経時変化及び環境変動、印刷装置の経時変化、環境変動、バーコードの方向にかかわらず、常に安定した線幅の黒バーと白バーの線幅を再現して印刷することができるとしている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−２９３９１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１に記載の発明は、印刷枚数、温度変化、湿度変化、バーコードの方向に応じてバーコードの補正を行うものであり、低解像度のプリンタのプリンタドライバに基づくエラーについての問題を解決したものではない。
【００１０】
ここで、一般的なアプリケーションで作成したバーコードイメージは印刷したときに各バーの幅にバラツキがあり、バーコードリーダで読み取ったときに読み取り率が低い、または読めないという現象が発生する。
バー幅がばらつく原因は、ＯＳ(Operation System)がイメージを作成する際に、アプリケーション上で指定されたサイズからドットに変換するときに端数が発生するためであり、解像度が低いプリンタに顕著に見られる。
イメージはＯＳで作成されるため、プリンタドライバに渡された時点でバー幅がばらついている。
【００１１】
（例）１６０ｄｐｉのプリンタでは１ドットは０．１５８７ｍｍであり、１ｍｍ幅のドットを印刷すると、６ドット（０．９５２２ｍｍ）と７ドット（１．１１０９ｍｍ）で印刷される部分が生じる。
１２００ｄｐｉでは１ドットの幅が０．０２１１ｍｍであり、４７ドット（０．９９１７ｍｍ）と４８ドット（１．０１２８ｍｍ）で印刷される部分が生じるが、解像度が高いため影響が少ない。
【００１２】
アプリケーションの中にはプリンタの解像度を加味し、バー幅のバラツキが発生しない高品質のバーコードイメージを作成できるものもあるが、アプリケーションに依存せず高品質のバーコードイメージを出力することが望まれる。
【００１３】
そこで、本発明の目的は、低解像度プリンタでのバーコード印刷においても高品質の印刷が可能なプリンタドライバ、印刷制御方法、及びプリンタシステムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明のプリンタドライバは、１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得してプリンタに出力するプリンタドライバにおいて、前記印刷データ中に含まれる印刷バーコードイメージのキャラクタコードを識別し、該キャラクタコードに対応するバーコードイメージに基づいて前記印刷バーコードイメージを補正することを特徴とする。
【００１５】
本発明の印刷制御方法は、１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得して印刷する印刷制御方法において、前記印刷データ中に印刷バーコードイメージのキャラクタコードを識別するステップ、該キャラクタコードに対応するバーコードイメージに基づいて前記印刷バーコードイメージを補正するステップを有することを特徴とする。
【００１６】
本発明のプリンタシステムは、バーコードを印刷可能なプリンタと、１以上の種類のバーからなるバーコードを含む印刷データをアプリケーションから取得して前記プリンタに出力するプリンタドライバと、を有するプリンタシステムにおいて、前記プリンタドライバは、前記印刷データ中に含まれる印刷バーコードイメージのキャラクタコードを識別し、該キャラクタコードに対応するバーコードイメージに基づいて前記印刷バーコードイメージを補正することを特徴とする。
【発明の効果】
【００１７】
本発明によれば、バーコードイメージの種別及びキャラクタコードを決定し、バー幅にバラツキが有るか否かを判定し、バラツキがある場合にそのバラツキを補正し、補正したイメージデータを出力することにより、低解像度のプリンタであっても正確なバーコードを印刷することができ、高品質化を図ることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明に係るプリンタシステムの一実施の形態を示す概念図である。
【図２】図１に示したプリンタシステムのうちのプリンタドライバの動作を説明するためのフローチャートの一例である。
【図３】（ａ）は、アプリケーション２０から送られてくるバーコードパターンのイメージデータの一例であり、（ｂ）は、プリンタドライバ４０で補正されたバーコードパターンのデータである。
【図４】（ａ）は、アプリケーション２０から送られてくるバーコードパターンのイメージデータの他の一例であり、（ｂ）は、プリンタドライバ４０で補正されたバーコードパターンのデータである。
【発明を実施するための形態】
【００１９】
次に本発明の実施の形態について図面を参照して説明する。
＜構  成＞
図１は、本発明に係るプリンタシステムの一実施の形態を示す概念図である。
同図に示すプリンタシステムは、制御部としてのＰＣ(Personal Computer)１０と、プリンタ５０とで構成されており、ＰＣ１０は、アプリケーション２０と、スプーラ３０と、プリンタドライバ４０とを有する。
【００２０】
アプリケーション２０は、印刷データを作成する機能を有する。
【００２１】
プリンタドライバ４０は、イメージデータ（ラスタデータ）の解析及び補正を行う。すなわち、プリンタドライバ４０は、アプリケーション２０から取得した印刷データ中にバーコードイメージが有るか否かを判定し、バーコードイメージが有る場合に、バーコードイメージの種別及びキャラクタコードを決定し、バー幅にバラツキが有るか否かを判定し、バラツキがある場合にそのバラツキを補正し、補正したイメージデータを出力する機能を有する（バラツキが無い場合には印刷データをそのままプリンタに出力する）。
【００２２】
また、プリンタドライバ４０は、印刷バーコードイメージのバーの幅を、印刷バーコードイメージから検出したバーの種類毎に最も出現頻度の高いバーの幅のドットの数になるように補正する機能を有する。
【００２３】
プリンタドライバ４０は、バーコードイメージが有るか否かの判定は、アプリケーション２０から取得したラスタデータから、バーコードのデータパターンを検索する際に、バーコードの各パターンデータのテーブルを参照し、そのパターンがラスタデータのドット列と一致するか否かで判定する。
【００２４】
プリンタドライバ４０は、印刷データ中のキャラクタコード、スタートコード、ストップコードがサーチパターンとほぼ一致するか、または一致したバーコードパターンの横ドット列が数行にわたり続いている場合にバーコードとみなす。
すなわち、プリンタドライバ４０は、
以下の条件をすべて満たすものを対象とする。
・キャラクタコード、スタートコード、ストップコードがサーチパターンと一致または±1ドットの差であること。
・一致したバーコードパターンの横ドット列が数行にわたり続いていること。
【００２５】
つまり、プリンタドライバ４０は、アプリケーション２０からプリンタドライバ４０に渡されたラスタデータから、既存のバーコードリーダのバーコード判定方法を流用し、バーコードパターンを検索するのである。
【００２６】
プリンタドライバ４０は、バーコードの太バー及び細バーからなるバーコードイメージをキャラクタデータ毎にサーチし、バーコードイメージのドットの数が少ない場合にはドットを追加すると共に余分なデータを削除し、バーコードイメージのドットの数が多い場合にはドットを削除すると共に不足分のデータを追加する。過不足無い場合にはそのまま印刷データをプリンタに出力する。
【００２７】
スプーラ３０は、同時に発生した複数の処理要求を一時的にせき止め、順次処理を進めるように管理する機能を有する。
【００２８】
＜動  作＞
次に、図１に示したプリンタシステムの動作について図面を参照して説明する。
図２は、図１に示したプリンタシステムのうちのプリンタドライバの動作を説明するためのフローチャートの一例である。
プリンタドライバ４０は、アプリケーション２０から印刷データを取得する（ステップＳ１）。
プリンタドライバ４０は、バーコードパターンが存在するか否かを（パターンテーブルと比較）判断する（ステップＳ２）。
プリンタドライバ４０は、バーコードパターンが存在すると判断した場合（ステップＳ２／Ｙｅｓ）、複数行にわたって同じバーコードパターンがあるか否かを判断する（ステップＳ３）。
【００２９】
プリンタドライバ４０は、複数行にわたって同じバーコードパターンがあると判断した場合（ステップＳ３／Ｙｅｓ）、バーコード有りと判断し（ステップＳ４）、バーコード種別、キャラクタコードを決定し（ステップＳ５）、各バー（細バー、太バー、もしくは中バー）の太さを検出する（ステップＳ６）。
プリンタドライバ４０は、各バーの太さを検出すると、細バー、太バー、（中バー）を形成するドットの数にバラツキがあるか否かを判断する（ステップＳ７）。
プリンタドライバ４０は、各バーを形成するドットの数にバラツキがあると判断した場合（ステップＳ７／Ｙｅｓ）、補正を実行し（キャラクタコードから補正するバー幅を決定する：ステップＳ８）、印刷データをプリンタ５０に出力する。
印刷データを受け取ったプリンタ５０は、バーコードを用紙６０に印刷する（ステップＳ９）。
【００３０】
プリンタドライバ４０は、バーコードパターンが存在しないと判断した場合（ステップＳ２／Ｎｏ）、複数行にわたって同じバーコードパターンが有ると判断した場合（ステップＳ３／Ｎｏ）、及び細バー、太バー、（中バー）のドットの数にバラツキが無いと判断した場合（ステップＳ７／Ｎｏ）は、印刷データをそのままプリンタ５０に出力し、プリンタ５０は印刷を行う。
【００３１】
以上において、本実施の形態によれば、低解像度のプリンタであっても正確なバーコードを印刷することができ、高品質化を図ることができる。
【００３２】
＜プログラム＞
以上で説明した本発明にかかるプリンタシステムは、コンピュータで処理を実行させるプログラムによって実現されている。コンピュータとしては、例えばパーソナルコンピュータやワークステーションなどの汎用的なものが挙げられるが、本発明はこれに限定されるものではない。よって、一例として、プログラムにより本発明を実現する場合の説明を以下で行う。
【００３３】
例えば、
アプリケーションソフトウェアがインストールされ、所定の解像度以下のプリンタの制御用のプログラムにおいて、
コンピュータに、
(1)スプーラが、アプリケーションからの印刷データを一時的に保存し、順次実行させる手順、
(2)プリンタドライバが、スプーラからの印刷データ中にバーコードイメージが有るか否かを判定する手順、
(3)バーコードイメージが有る場合に、バーコードイメージの種別及びキャラクタコードを決定する手順、
(4)バー幅にバラツキが有るか否かを判定する手順、
(5)バラツキがある場合にそのバラツキを補正する手順、
(6)プリンタ本体が、プリンタドライバからの補正された印刷データに基づいて印刷する手順、
を実行させるプログラムが挙げられる。
【００３４】
これにより、プログラムが実行可能なコンピュータ環境さえあれば、どこにおいても本発明にかかるプリンタシステムを実現することができる。
【００３５】
＜記憶媒体＞
このようなプログラムは、コンピュータに読み取り可能な記憶媒体に記憶されていてもよい。
ここで、記憶媒体としては、例えば、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、フレキシブルディスク（ＦＤ）、ＣＤ−Ｒ（CD Recordable）、ＤＶＤ（Digital Versatile Disk）などのコンピュータで読み取り可能な記憶媒体、フラッシュメモリ、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＦｅＲＡＭ（強誘電体メモリ）等の半導体メモリやＨＤＤ（Hard Disc Drive）が挙げられる。
【００３６】
なお、上述した実施の形態は、本発明の好適な実施の形態の一例を示すものであり、本発明はそれに限定されることなく、その要旨を逸脱しない範囲内において、種々変形実施が可能である。例えば、プリンタ本体のファームウェアで同様の処理を行うことで同様の結果を印刷できる。
【実施例】
【００３７】
次に本発明に係るプリンタドライバの制御方法についての一実施例について説明する。
図３（ａ）は、アプリケーション２０から送られてくるバーコードパターンのイメージデータの一例であり、図３（ｂ）は、プリンタドライバ４０で補正されたバーコードパターンのデータである。
サーチパターンが、以下のような
‘1’「110011001111000011」と、‘A'「11001111000011000011」とでキャラクタデータ毎にサーチすると、‘A'は完全に一致するが、‘1'は１ドット異なって検出される。
サーチパターンから異なる部分は本来４ドットの部分が３ドットであることがわかるため、プリンタドライバ４０は、４ドットに補正し、ストップコードから終端を検出して補正した分を削除する。
この補正により、低解像度のプリンタであっても正確なバーコードを印刷することができ、高品質化を図ることができる。
【００３８】
図４（ａ）は、アプリケーション２０から送られてくるバーコードパターンのイメージデータの他の一例であり、図４（ｂ）は、プリンタドライバ４０で補正されたバーコードパターンのデータである。
サーチパターンが、以下のような
‘1'「 110011001111000011」と、‘A'「11001111000011000011」とでキャラクタデータ毎サーチすると、‘A'は完全に一致するが、‘1'は１ドット異なって検出される。
サーチパターンから異なる部分は本来４ドットの部分が５ドットであることがわかるため、プリンタドライバ４０は、４ドットへ補正し、ストップコードから終端を検出して補正した分を追加する。
この補正により、低解像度のプリンタであっても正確なバーコードを印刷することができ、高品質化を図ることができる。
【００３９】
＜効  果＞
バーコードイメージ生成機能をもつアプリケーションであれば読み取り精度の高いバーコードを印刷することが可能となる。
【産業上の利用可能性】
【００４０】
本発明は、バーコードやＱＲコードの印刷に利用することができる。
【符号の説明】
【００４１】
１０    制御部
２０    アプリケーション
３０    スプーラ
４０    プリンタドライバ
５０    プリンタ
６０    用紙
【図１】
2011076359.tif 000003
【図２】
2011076359.tif 000004
【図３】
2011076359.tif 000005
【図４】
2011076359.tif 000006