(57)【要約】【課題】アプリケーションがバーコード補正機能を備えていなくても、この補正を行えるようにする。【解決手段】プリンタドライバ４０の検出部４８が、バッファ記憶部４４に格納されているアプリケーション非依存言語の描画データから、想定した複数のバー描画方法のいずれでバーコードの各バーを描画する１つ以上の命令を検出し、プリンタドライバ４０の変換部４９が、入力装置１７２で入力された各モジュールのバー幅補正値に基づいて、補正後のバーコードが描画されるように、検出した１つ以上の命令を長方形描画命令に変換するとともにそのオペランドを変更する。【選択図】図１
2011248460.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションから描画インターフェイスを介して供給されるアプリケーション非依存言語の描画データを、前処理部で処理した後、頁記述言語の印刷データに変換するバーコード補正装置において、該前処理部は、
バーコードのバーサイズ補正値を入力する補正値入力手段と、
該描画データから、バーコードの各バーを描画する１つ以上の命令を第１バーコード描画命令群として検出するバーコード描画命令群検出手段と、
該バーサイズ補正値に基づいて、補正後のバーコードが描画されるように、該第１バーコード描画命令群を第２バーコード描画命令群に変換するバーコード描画命令群変換手段と、
を有することを特徴とするバーコード補正装置１。
【請求項２】
該バーコード描画命令群検出手段は、想定した複数のバー描画方法のいずれであるかを検出する、
ことを特徴とする請求項１に記載のバーコード補正装置。
【請求項３】
該第２バーコード描画命令群は、該複数のバー描画方法のうちの特定の１つに基づいている、
ことを特徴とする請求項２に記載のバーコード補正装置。
【請求項４】
該バーサイズ補正値は、バー幅の補正値であり、
該バーコード描画命令群変換手段は、バーの幅方向両側の補正値が互いに等しくなるように、該第２バーコード描画命令群を生成する、
ことを特徴とする請求項１乃至３のいずれか１つに記載のバーコード補正装置。
【請求項５】
アプリケーションから描画インターフェイスを介して供給されるアプリケーション非依存言語の描画データを、コンピュータが、前処理した後、頁記述言語の印刷データに変換するバーコード補正方法において、該コンピュータが該前処理において、
バーコードのバーサイズ補正値を入力させ、
該描画データから、バーコードの各バーを描画する１つ以上の命令を第１バーコード描画命令群として検出し、
該バーサイズ補正値に基づいて、補正後のバーコードが描画されるように、該第１バーコード描画命令群を第２バーコード描画命令群に変換する、
ことを特徴とするバーコード補正方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、バーコード補正装置及び方法に係り、特に、アプリケーションから、オペレーティングシステムの描画インターフェイスを介して供給されるアプリケーション非依存言語の描画データを、前処理部で処理した後、頁記述言語の印刷データに変換するプリンタドライバを備えたバーコード補正装置及び方法に関する。
【背景技術】
【０００２】
バーコードリーダによるバーコードの読取率や誤読率は、バーコードラベルの品質が大きく影響する。バーコードは、ＪＡＮ（Japanese Article Number）などの規格に基づくバーとスペースで構成され、それぞれ１乃至４モジュールの４種類の相対幅を有する。
【０００３】
ラベルに印刷されるバーの幅は、プリンタの解像度、現像剤及び用紙などにより変動する。レーザプリンタの場合には、トナーの状態、濃度、温度及び湿度などにより、インクジェットプリンタの場合には、用紙やインクの品質に依存するインクの滲みの程度により、サーマルプリンタの場合には、ヘッドの温度等により、印刷されるバーの幅が変動する。
【０００４】
下記特許文献１には、テスト用バーコード印刷結果をスキャナで読み取って、印刷アプリケーションにフィードバックを行ない、その結果に基づきバー及びスペースの幅や高さをアプリケーション側で補正する構成が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平９−３００５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、アプリケーション開発者が、特定の機種のプリンタに基づいてプログラミングを行い、そのアプリケーションが、印刷結果をフィードバックしてバー幅を調整するバーコード補正機能を備えていない場合には、プリンタ、現像剤又は用紙を種類が異なるものに取り替えることにより、バーの幅を調整しなければならない。
【０００７】
本発明の目的は、このような問題点に鑑み、アプリケーションがバーコード補正機能を備えていなくても、この補正を行うことが可能なバーコード補正装置及び方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の第１態様では、アプリケーションから描画インターフェイスを介して供給されるアプリケーション非依存言語の描画データを、前処理部で処理した後、頁記述言語の印刷データに変換するバーコード補正装置において、該前処理部は、
バーコードのバーサイズ補正値を入力する補正値入力手段と、
該描画データから、バーコードの各バーを描画する１つ以上の命令を第１バーコード描画命令群として検出するバーコード描画命令群検出手段と、
該バーサイズ補正値に基づいて、補正後のバーコードが描画されるように、該第１バーコード描画命令群を第２バーコード描画命令群に変換するバーコード描画命令群変換手段とを有する。
【０００９】
本発明によるバーコード補正装置及び方法の第２態様では、第１態様において、該バーコード描画命令群検出手段は、想定した複数のバー描画方法のいずれであるかを検出する。
【００１０】
本発明によるバーコード補正装置及び方法の第３態様では、第２態様において、該第２バーコード描画命令群は、該複数のバー描画方法のうちの特定の１つに基づいている。
【００１１】
本発明によるバーコード補正装置及び方法の第４態様では、第１乃至３態様のいずれか１つにおいて、該バーサイズ補正値は、バー幅の補正値であり、
該バーコード描画命令群変換手段は、バーの幅方向両側の補正値が互いに等しくなるように、該第２バーコード描画命令群を生成する。
【発明の効果】
【００１２】
上記第１態様の構成によれば、アプリケーション非依存言語の描画データから、バーコードの各バーを描画する１つ以上の命令を第１バーコード描画命令群として検出し、入力されたバーサイズ補正値に基づいて、補正後のバーコードが描画されるように、該第１バーコード描画命令群を第２バーコード描画命令群に変換するので、アプリケーションがバーコード補正機能を備えていなくても、この補正を行うことができるという効果を奏する。
【００１３】
上記第２態様の構成によれば、想定した複数のバー描画方法のいずれであるかを検出するので、より多くのプリケーションで作成されたバーコードに対応可能であるという効果を奏する。
【００１４】
上記第３態様の構成によれば、補正処理を簡単化することができるという効果を奏する。
【００１５】
上記第４態様の構成によれば、バーの幅方向両側の補正値が互いに等しくなるように補正するので、補正値設定が容易になるという効果を奏する。
【図面の簡単な説明】
【００１６】
【図１】主にプリンタドライバのソフトウェア構成を示す機能ブロック図である。
【図２】図１のバーコード描画命令群検出部及びバーコード描画命令群変換部による処理を示す概略フローチャートである。
【図３】印刷条件におけるオプションの一部として表示されるバーコード補正値設定画面の説明図である。
【図４】（Ａ）〜（Ｄ）はアプリケーション非依存言語の描画命令によるバー描画方法の態様説明図、（Ｅ）はバー補正説明図である。
【図５】本発明の実施例１に係る画像形成システムのハードウェア構成を示す概略ブロック図である。
【実施例１】
【００１７】
図５は、本発明の実施例１に係る画像形成システムのハードウェア構成を示す概略ブロック図である。
【００１８】
このシステムでは、ホストコンピュータ１０と画像形成装置２０とがＬＡＮ３０で結合されている。
【００１９】
ホストコンピュータ１０では、ＣＰＵ１１がインターフェイス１２を介してＰＲＯＭ１３、ＤＲＡＭ１４、ハードディスクドライブ１５、ネットワークインターフェイス１６及び会話型入出力装置１７に結合されている。図５では、簡単化の為に、複数種のインターフェイスを１つのブロック１２で表している。
【００２０】
ＰＲＯＭ１３は、例えばフラッシュメモリであり、ＢＩＯＳが格納されている。ＤＲＡＭ１４は、主記憶装置として用いられる。ハードディスクドライブ１５には、仮想記憶方式のＯＳ（オペレーティングシステム）、各種ドライバ及びアプリケーション並びにデータが格納されている。ネットワークインターフェイス１６は、ＬＡＮ３０に結合されている。会話型入出力装置１Ａは、例えば入力装置としてのキーボード及びポインティングデバイスと、表示装置とを備えている。
【００２１】
図１は、主にプリンタドライバ４０のソフトウェア構成を示す機能ブロック図である。
【００２２】
アプリケーション４１を起動させて、対話的に文書を作成した後、印刷を選択すると、プリンタドライバ４０が起動されて、そのユーザインターフェイス部４２により、会話型入出力装置１７の表示装置１７１に印刷条件設定画面（不図示）が表示され、その中のオプションボタンを会話型入出力装置１７の入力装置１７２でクリックすると、図３に示すようなバーコード印刷に関する設定がオプションの一部として表示される。
【００２３】
バーコードを試し印刷した後、その補正を行う場合には、この設定画面の「バーコード印刷」チェックボックスにチェックをいれ、幅が１〜４モジュール（１Ｍ〜４Ｍ）の４種類のバーの補正値を、入力する。図３の場合、０．０１ミリを単位とする整数値を入力する。「ＯＫ」ボタンをクリックすると、入力値が確定してユーザインターフェイス部４２に保存される。
【００２４】
印刷実行ボタンをクリックすると、アプリケーション４１はこれに応答して、文書データを描画インターフェイス４３でアプリケーション非依存言語の描画データに変換する。描画インターフェイス４３は、例えばＷｉｎｄｏｗｓ（登録商標）ＯＳのＧＤＩ（グラフィック・デバイス・インターフェイス）である。この描画データは、プリンタドライバ４０で用いられるバッファ記憶部４４に格納される。プリンタドライバ４０は、バッファ記憶部４４内の描画データを前処理部４５で前処理した後、ＰＤＬ（頁記述言語）変換部４６でＰＤＬ言語の印刷データに変換し、通信制御部４７でネットワークインターフェイス１６を制御してこの印刷データを画像形成装置２０に送信する。
【００２５】
前処理部４５では、バッファ記憶部４４内のバーコード描画命令群を検出する。バー描画方法は、一般にアプリケーション４１により異なるが、描画インターフェイス４３がアプリケーション非依存言語であるので、方法の数が限定され、そのいずれに対しても補正可能にしている。
【００２６】
この描画方法には、図４（Ａ）〜（Ｄ）に示すようなものがある。すなわち、長方形描画命令でその内部を黒で塗り潰す方法と、多角形描画命令で内部を黒で塗り潰す方法と、直線描画命令でバーの長手方向に直線を複数蜜に並べて描画する方法と、直線描画命令でバーの幅方向に直線を複数蜜に並べて描画する方法とがある。
【００２７】
本実施例１では、補正処理を簡単化するため、図４（Ｂ）〜（Ｄ）の場合には、図４（Ａ）の長方形描画命令に変換し、そのオペランドを、ユーザインターフェイス部４２に保持されている上記補正値で補正し、バッファ記憶部４４内の対応する命令又は命令群を、この補正されたオペランドを持つ長方形描画命令に置き換える。
【００２８】
図２は、図１のバーコード描画命令群検出部４８及びバーコード描画命令群変換部４９による処理を示す概略フローチャートである。ステップＳ０〜Ｓ２はバーコード描画命令群検出部４８での処理であり、ステップＳ３〜Ｓ６はバーコード描画命令群変換部４９での処理である。以下、括弧内は図２中のステップ識別符号である。
【００２９】
（Ｓ０）図３の「バーコード印刷」チェックボックスにチェックが入っていればステップＳ１へ進み、そうでなければＰＤＬ変換部４６に制御を移す。
【００３０】
（Ｓ１）図３に示す幅１〜４モジュールのバーの補正値が全て０であればＰＤＬ変換部４６に制御を移し、そうでなければステップＳ２へ進む。
【００３１】
（Ｓ２）図４（Ａ）〜（Ｄ）のいずれかの形式のバー描画命令を検出する。
【００３２】
（Ｓ３）バー描画命令（又は命令群）が長方形描画命令であればステップＳ５へ進み、そうでなければステップＳ４へ進む。
【００３３】
（Ｓ４）バー描画命令（又は命令群）を長方形描画命令、例えばＧＤＩの、
Rectangle(hDC , Left, Top, Right, Bottom)
に変換する。ここに、hDCは、デバイスコンテキストのハンドルであり、（Left, Top)は長方形の左上頂点のＸ−Ｙ座標、(Right, Bottom)は長方形の右下頂点のＸ−Ｙ座標である。
【００３４】
（Ｓ５）長方形描画命令のオペランドを上記補正値で、図４（Ｅ）に示すように元の幅の長方形に対しバーの幅方向両側の補正値が互いに等しくなるように補正する。例えば、幅１Ｍ〜４Ｍの補正値がホストコンピュータ１０、画像形成装置２０、ＬＡＮ３０、アプリケーション４１である場合、それぞれ上記オペランドに対し、
Rectangle(hDC , Left-(int)(5*U), Top, Right+(int)(5*U), Bottom)
Rectangle(hDC , Left-(int)(10*U), Top, Right+(int)(10*U), Bottom)
Rectangle(hDC , Left-(int)(15*U), Top, Right+(int)(15*U), Bottom)
Rectangle(hDC , Left-(int)(20*U), Top, Right+(int)(20*U), Bottom)
と補正する。ここに、Uは補正単位０．０１ｍｍを描画インターフェイス４３の単位に換算する係数であり、(int)は整数化演算子である。
【００３５】
（Ｓ６）未処理のバー描画命令があればステップＳ２へ戻り、そうでなければＰＤＬ変換部４６に制御を移す。
【００３６】
本実施例１の構成によれば、プリンタドライバ４０の検出部４８が、バッファ記憶部４４に格納されているアプリケーション非依存言語の描画データから、バーコードの各バーを描画する１つ以上の命令を検出し、プリンタドライバ４０の変換部４９が、入力装置１７２で入力された各モジュールのバー幅補正値に基づいて、補正後のバーコードが描画されるように、検出した１つ以上の命令を長方形描画命令に変換するとともにそのオペランドを変更するので、アプリケーションがバーコード補正機能を備えていなくても、この補正を行うことができるという効果を奏する。
【００３７】
また、検出部４８が、想定した複数のバー描画方法のいずれであるかを検出するので、より多くのプリケーションで作成されたバーコードに対応可能であるという効果を奏する。
【００３８】
さらに、変換部４９が、検出した１つ以上の命令を長方形描画命令に変換するので、補正処理を簡単化することができるという効果を奏する。
【００３９】
以上において、本発明の好適な実施例を説明したが、本発明には他にも種々の変形例が含まれ、上記実施例で述べた各構成要素の機能を実現する他の構成を用いたもの、当業者であればこれらの構成又は機能から想到するであろう他の構成も、本発明に含まれる。
【００４０】
例えば、上記実施例ではバーの幅方向両側の補正値が互いに等しくなるように補正する場合を説明したが、例えば特開２００９−２６９３６８号公報に開示されているように、バーの幅方向一方側のスペース幅に応じて該バーの該一方側の辺位置を補正し、バーの幅方向他方側のスペース幅に応じて該バーの該他方側の辺位置を補正する構成であってもよい。
【００４１】
また、バーの高さも、バー幅補正値の平均値に比例した値で補正する構成であってもよい。
【符号の説明】
【００４２】
１０  ホストコンピュータ
１１  ＣＰＵ
１２  インターフェイス
１３  ＰＲＯＭ
１４  ＤＲＡＭ
１５  ハードディスクドライブ
１６  ネットワークインターフェイス
１７  会話型入出力装置
１７１  表示装置
１７２  入力装置
２０  画像形成装置
３０  ＬＡＮ
４０  プリンタドライバ
４１  アプリケーション
４２  ユーザインターフェイス部
４３  描画インターフェイス
４４  バッファ記憶部
４５  前処理部
【図１】
2011248460.tif 000003
【図２】
2011248460.tif 000004
【図３】
2011248460.tif 000005
【図４】
2011248460.tif 000006
【図５】
2011248460.tif 000007