(57)【要約】【課題】上位装置のアプリケーションで生成したバーコードを印刷する印刷システムにおいて、バーコードを矩形塗潰しと輪郭線とで描画する場合であっても隙間が発生しないようにする。【解決手段】輪郭線データ２７を矩形塗潰し描画２９方向にずらして補正して線描画する輪郭線矩形塗潰し処理部１７ａを設けた。或いは、矩形塗潰し描画の輪郭を輪郭線として線描画する矩形塗潰し線描画処理部１７ｂを設けた。或いは、輪郭線と矩形塗潰し描画データを一つの矩形塗潰しデータとしての描画データに変換する矩形合わせ塗潰し描画処理部１７ｃを設けた。或いは、輪郭線と矩形塗潰し描画データを一つの線データとして描画データに変換する矩形合わせ線描画処理部１７ｄを設けた。【選択図】図１
2008217537.tif 000002
【特許請求の範囲】
【請求項１】
印刷データを生成するアプリケーションを有する上位装置と、当該上位装置から供給される印刷データを受信して印刷処理を行う印刷装置とからなり、前記アプリケーションにて生成された管理コードを、塗潰し部分と当該輪郭線として前記印刷装置にて印刷する印刷システムにおいて、
前記輪郭線を前記塗潰し部分の方向に座標を補正する輪郭線補正手段と、
前記輪郭線を描画する輪郭線描画手段と、
前記塗潰し部分を塗潰して描画する塗潰し描画手段と、を具備し、
前記輪郭線補正手段により前記輪郭線を補正して前記輪郭線描画手段および塗潰し描画手段により描画するようにしたことを特徴とする印刷システム。
【請求項２】
輪郭線補正手段および輪郭線描画手段は、前記輪郭線を、辺に分割し、各辺につき塗潰し部分の方向に座標補正して描画するようにしたことを特徴とする請求項１記載の印刷システム。
【請求項３】
印刷データを生成するアプリケーションを有する上位装置と、当該上位装置から供給される印刷データを受信して印刷処理を行う印刷装置とからなり、前記アプリケーションにて生成された管理コードを、塗潰し部分と当該輪郭線として前記印刷装置にて印刷する印刷システムにおいて、
前記輪郭線を描画する輪郭線描画手段と、
前記塗潰し部分を塗潰して描画する塗潰し描画手段と、を具備し、
前記輪郭線は、前記輪郭線描画手段により描画し、前記塗潰し部分は、前記塗潰し部分の輪郭を輪郭線として前記輪郭線描画手段により描画するとともに、前記塗潰し部分を前記塗潰し描画手段により塗潰すようにしたことを特徴とする印刷システム。
【請求項４】
印刷データを生成するアプリケーションを有する上位装置と、当該上位装置から供給される印刷データを受信して印刷処理を行う印刷装置とからなり、前記アプリケーションにて生成された管理コードを、塗潰し部分と当該輪郭線として前記印刷装置にて印刷する印刷システムにおいて、
前記輪郭線を描画する輪郭線描画手段と
前記塗潰し部分を塗潰して描画する塗潰し描画手段と、を具備し、
前記輪郭線は、前記輪郭線描画手段により前記輪郭線の描画結果の輪郭を塗潰し座標とし、前記塗潰し部分とともに前記塗潰し描画手段により描画するようにしたことを特徴とする印刷システム。
【請求項５】
印刷データを生成するアプリケーションを有する上位装置と、当該上位装置から供給される印刷データを受信して印刷処理を行う印刷装置とからなり、前記アプリケーションにて生成された管理コードを、塗潰し部分と当該輪郭線として前記印刷装置にて印刷する印刷システムにおいて、
所定の範囲を線により網羅して描画する線描画手段を具備し、
前記塗潰し部分および前記輪郭線の範囲を、前記線描画手段により描画するようにしたことを特徴とする印刷システム。
【請求項６】
前記線描画手段は、線描画の始点を所定の範囲の隅のいずれかとし、周回しながら中心に向かうようにしたことを特徴とする請求項５記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、上位装置のアプリケーションで生成した管理コードの印刷データを印刷装置で印刷する印刷システムに関する。
【背景技術】
【０００２】
従来、バーコード印刷を行う印刷システムにおいては、上位装置のアプリケーションで生成したバーコードの印刷データをプリンタで印刷処理するものがある。このようなシステムでは、アプリケーションで生成した印刷データを、ＯＳを介してプリンタドライバに供給し、さらにプリンタドライバからプリンタに印刷データを出力してバーコードを印刷するようにしたものがある。この例として、例えば、特開平１１−２２１９４６号公報に開示されるものがある。
【０００３】
アプリケーションで生成したバーコードの印刷データを印刷する場合、次の二通りの方法でプリンタドライバに供給される。すなわち、図３０に示すように、矩形の塗潰し２０で各バーを描画指定する方法と、図３１に示すように、矩形の塗潰し２０と輪郭線２１により各バーを描画指定する方法である。
【０００４】
プリンタドライバやプリンタでは、輪郭線として極細線が指定された場合、この極細線に対して太くする補正を行っている。例えば、極細線の太さが１ドット（１／３００インチ、１／６００インチまたは１／１２００インチ）である場合、印刷された線がはっきりしないので、プリンタドライバやプリンタで２ドットまたは３ドットの太さに補正している。
【０００５】
輪郭線の太さを補正して印刷した状態を図３２に示す。同図に示すように、輪郭線２１を太くして印刷した場合（２３）、各バー自体の太さが輪郭線を太くしない場合（２２）に比べて太くなり、その結果バーコードの読み取り精度が低下する。
【０００６】
そこで、プリンタドライバに、図３６の設定画面２５に示すように、細い線の場合、補正するかしないを設定する項目を設けて、ユーザがバーコードを印刷する場合は、四角形の破線で示したチェック欄２６の「細い線を補正する」のチェックを外して印刷するようにしている。
【０００７】
しかしながら、上記「細い線を補正する」のチェックをしたままの場合では、次に記載するように矩形塗潰し２０と輪郭線２１の描画方法が異なるため、輪郭線描画と矩形塗潰しにずれが発生し、印刷に隙間が発生する場合がある。
【０００８】
すなわち、前記チェックをしたままの場合では、描画指示として受信する輪郭線描画２７と矩形塗潰し描画２９のうち、矩形塗潰し描画２９は図３５に示したようにそのまま描画される。一方、輪郭線描画２７は、図３４左側の破線のように描画するのが理想的であるが、当該位置にドットを配置することができず、０．５ドット分の端数が切り捨てられ、同図右側のように０．５ドット分左上方向にシフトして描画される。
【０００９】
その結果、図３５に示したように、輪郭線描画２７と矩形塗潰し描画２９との間に隙間３０ｘが発生してしまうことになる。
【００１０】
この問題を解決するために、プリンタドライバにて、横向き、縦向きなどの用紙印刷走行方向や指定された回転角度、マルチページ印刷などの用紙レイアウトに応じて前述の矩形塗潰し２０と輪郭線２１の位置ずれを補正し、矩形塗潰し２０と輪郭線２１の間に隙間が発生しないようにしている。
【特許文献１】特開平１１−２２１９４６号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記従来の印刷システムでは、印刷するオペレータが手差しにより印刷する場合などのように用紙の走行方向をプリンタドライバにて判断できない場合では、バーコードを矩形塗潰し２０と輪郭線２１で描画すると、輪郭線２１の描画座標の補正を正しく行うことができず、矩形塗潰し２０と輪郭線２１の間に隙間が空いてしまうという問題があった。
【００１２】
上記の問題は、１次元バーコードに比べ、２次元バーコードなどのより精密な印刷結果が要求されるバーコードでは顕著に読取り精度に影響し、例えば、図３３に示すような描画指定の場合で、矩形塗潰し２０と輪郭線２１の描画位置が１ドット（１／３００インチ若しくは１／６００インチ）ずれても、読取り精度が低下する。プリンタのトナーが薄くなった場合では、矩形塗潰し２０と輪郭線２１にさらに隙間が空いてしまう場合もあり、読取り精度がさらに低下することがあった。
【課題を解決するための手段】
【００１３】
本発明は、前述の課題を解決するため次の構成を採用する。すなわち、印刷データを生成するアプリケーションを有する上位装置と、当該上位装置から供給される印刷データを受信して印刷処理を行う印刷装置とからなり、前記アプリケーションにて生成された管理コードを、塗潰し部分と当該輪郭線として前記印刷装置にて印刷する印刷システムにおいて、前記輪郭線を前記塗潰し部分の方向に座標を補正する輪郭線補正手段と、前記輪郭線を描画する輪郭線描画手段と、前記塗潰し部分を塗潰して描画する塗潰し描画手段と、を具備し、前記輪郭線補正手段により前記輪郭線を補正して前記輪郭線描画手段および塗潰し描画手段により描画するようにした。
【発明の効果】
【００１４】
本発明の印刷システムによれば、輪郭線を塗潰し部分の方向に座標を補正する輪郭線補正手段と、前記輪郭線を描画する輪郭線描画手段と、前記塗潰し部分を塗潰して描画する塗潰し描画手段と、を具備し、前記輪郭線補正手段により前記輪郭線を補正して前記輪郭線描画手段および塗潰し描画手段により描画するようにしたので、用紙の向きや用紙レイアウト等を考慮することなく、隙間も発生しない精度の高いバーコード印刷をすることができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明に係わる実施の形態例を、図面を用いて説明する。図面に共通する要素には同一の符号を付す。
【実施例１】
【００１６】
（構成）
図１に実施例１の印刷システムの構成を示すブロック図を示す。同図に示したように実施例１の印刷システム１９は、上位装置としてのホストコンピュータ（以下、「ホストＰＣ」という）（１８）と、プリンタ１３から構成される。
【００１７】
ホストＰＣ（１８）には、アプリケーション（以下、「ＡＰ」という）（１）、ＧＤＩ（４）（Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  ＩｎｔｅｒＦａｃｅ）、プリンタドライバ６およびプリントスプーラ１２が具備されている。
【００１８】
ホストＰＣ（１８）にインストールされているＡＰ（１）からバーコードを含んだ印刷を行う場合、ＡＰ（１）の印刷設定部２にてプリンタを指定し、印刷データ生成部３にて、印刷データを生成する。ＡＰ（１）はプリンタ１３の装置データや解像度、印刷レイアウトなどのデータをプリンタドライバ６から取得し、印刷データを生成する。
【００１９】
また、ＡＰ（１）で生成された印刷データや印刷設定データは、ホストＰＣ（１８）のＧＤＩ（Ｇｒａｐｈｉｃｓ  Ｄｅｖｉｃｅ  ＩｎｔｅｒＦａｃｅ）（４）の関数であるＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ Ｐｒｏｇｒａｍｍｉｎｇ Ｉｎｔｅｒｆａｃｅ）（５）にて、プリンタドライバ６と印刷データや印刷設定データのやりとりを行い作成される。
【００２０】
ＧＤＩ（４）は、ＡＰ（１）が描画する場合や、印刷装置などのデバイスデータを取得する場合に呼び出すＤＬＬ（ダイナミックリンクライブラリ）モジュールである。ＡＰＩ（５）は、ＧＤＩ（４）が持っている関数でホストＰＣ（１８）のオペレーションシステムが公開している。このＡＰＩ（５）を介して、ＡＰ（１）とホストＰＣ（１８）はデータのやりとりを行う。
【００２１】
印刷を行う場合、ＡＰ（１）がプリンタドライバ６からＧＤＩ（４）を介して受け取ったＤｅｖｍｏｄｅ構造体のデータをもとに、ＡＰ（１）で作成された印刷データや印刷設定データは、ＧＤＩ（４）を介してプリンタドライバ６に渡される。
【００２２】
ここで、Ｄｅｖｍｏｄｅ構造体とは、プリンタ１３または図示しないディスプレイデバイスの初期設定や環境についてのデータを収めるもので、プリンタドライバ６は、プリンタ１３が印刷可能なデータであるページレイアウトや解像度などのデータをドライバ設定部７から取得し、また、ＡＰ（１）からＧＤＩ（４）を介して渡されたデータをもとに、ドライバ設定部７にて作成する。
【００２３】
また、プリンタドライバ６にはドライバＵＩ（ユーザインタフェース）表示部９が具備されており、このドライバＵＩ表示部９にて印刷設定を表示変更することができる。バーコードの細い輪郭線の補正を行う場合もドライバＵＩ表示部９にて設定できるが、本実施例では、細い線の補正は行わない設定としておく。
【００２４】
描画データ解析部８は、ＡＰ（１）とＧＤＩ（４）から渡された印刷データや印刷設定データをもとに、印刷するデータがバーコードの印刷データであるか、バーコード以外の印刷データであるかどうかの解析を行い、バーコードの印刷データかどうかを判断するものである。
【００２５】
描画データ生成部１０は、バーコードのデータの場合とバーコード以外のデータの場合に分けて印刷データの生成の制御を行い、プリンタ１３が印刷できる形式にデータを作成するものである。
【００２６】
輪郭線矩形塗潰し処理部１７ａは、描画データ解析部８にてバーコードデータと判断された輪郭線指定のあるバーコードデータの輪郭線を、矩形塗潰しデータに変換するものである。
【００２７】
描画データ出力部１１は、描画データ生成部１０で生成された印刷データをプリントスプーラ１２に出力するものである。
【００２８】
プリントスプーラ１２は、複数の印刷要求を受け付けることが可能で、印刷データをプリンタ１３に送る前に一時的に貯めておき、順次印刷データをプリンタ１３に送るものである。
【００２９】
プリンタ１３には、データ受信部１４、データ展開部１５および印刷部１６が具備されており、データ受信部１４はプリンタドライバ６が作成した印刷データをプリントスプーラ１２より受信するものであり、受信した印刷データはデータ展開部１５にて展開され、印刷部１６にて印刷される。
【００３０】
（動作）
以上の構成により、実施例１の印刷システム１９は以下のように動作する。本動作を図２ないし図１０を用いて以下詳細に説明する。
【００３１】
最初に、図２に示すフローチャートを用いて、バーコードが含まれる印刷データを印刷する動作について説明する。
【００３２】
オペレータの操作により印刷する場合は、まず、ＡＰ（１）の印刷を選択し（ステップＳ１）、ＡＰ（１）の印刷設定部２にてプリンタドライバ６を指定する（ステップＳ２）。
【００３３】
ＡＰ（１）の印刷を実行すると（ステップＳ３）、印刷実行の指示がＡＰ（１）からホストＰＣ（１８）のＧＤＩ（４）を介してプリンタドライバ６に送信され、プリンタドライバ６は、印刷データがバーコード印刷かどうかを判断する（ステップＳ４）。
【００３４】
そして、バーコード印刷の場合は、細線補正なしで印刷データを生成し（ステップＳ５）、バーコード印刷でない場合は、細線補正を行い、印刷データを生成する（ステップＳ６）。
【００３５】
印刷データが生成されると、生成されたデータがプリントスプーラ１２を介してプリンタ１３へ送られ、印刷が行われる（ステップＳ７）。そして、印刷終了かどうかを判断し（ステップＳ８）、未処理の印刷データがある場合はステップＳ４ないしステップＳ７の動作が繰り返される。
【００３６】
従来、印刷データにバーコード印刷が含まれている場合、図３６に示したプリンタドライバ６の設定画面２５にて「極細線を補正する」のチェック欄２６のチェックを外し極細線の補正をしないようにする必要があったが、上記印刷方法により、「極細線の補正する」の設定操作を行うことなく、読取り精度の高いバーコード印刷が可能となる。
【００３７】
次に、前述した図２のステップＳ４にて行う、印刷データがバーコードかどうか判断する動作について図３のバーコードデータ判定方法の説明図と図４の動作フローチャートを用いて説明する。
【００３８】
印刷データがバーコードかどうか判定は、プリンタドライバ６の描画データ解析部８にて行われる。図３に示したように、矩形塗潰し２０の描画と輪郭線２１の描画が隣接した場合、かつ矩形塗潰し２０の色データと隣接した輪郭線２１の色データが同じ場合、描画データ解析部８にてバーコード印刷とみなされる。その際、輪郭線２１のデータは補正しないで印刷データを生成する。
【００３９】
矩形塗潰し２０と輪郭線２１が隣接しているかどうかは、ＡＰ（１）から印刷位置が座標として指定されるのでその座標から判断できる。また、描画データの色データも、ＡＰ（１）から印刷データの一部として指定されるので同一かどうかの判断ができる。
【００４０】
次に、図４を用いてバーコードを印刷する動作について説明する。まず、プリンタドライバ６は、ＡＰ（１）からの描画指定の印刷指示が来ると（ステップＳ１１）、印刷するためのデータを取得する。
【００４１】
印刷データには印刷位置を示す座標データが含まれており、ＡＰ（１）から取得した描画指定が矩形塗潰し描画かどうか判断される（ステップＳ１２）。矩形塗潰し描画と判断された場合は、矩形塗潰しデータの座標を保存する（ステップ１３）。
【００４２】
次に、線描画かどうか判定し（ステップＳ１４）、線描画の場合には線データの座標を保存する（ステップＳ１５）。
【００４３】
矩形塗潰し描画と線描画の両方が存在した場合、保存していた座標データが隣接しているかを比較する（ステップＳ１６）。
【００４４】
矩形塗潰しと線の隣接の定義は、矩形塗潰し描画の頂点を結んだ座標と線描画の座標が同一の場合と、線描画の座標が矩形塗潰し描画の頂点を結んだ座標に対して１ドット外側の場合の２つのパターンとし、矩形塗潰し描画と輪郭線描画が隣接しているかどうかの判定方法を図３を用いて具体的に説明する。
【００４５】
図３において、矩形塗潰し２０の頂点２０ａと頂点２０ｂとを結んだ線２０ｅの座標と、輪郭線２１の頂点２１ａと頂点２１ｂとを結んだ線２１ｅの座標が同一で、矩形塗潰し２０の頂点２０ｂと頂点２０ｃとを結んだ線２０ｆの座標と、輪郭線２１の頂点２１ｂと頂点２１ｃとを結んだ線２１ｆの座標が同一で、同様に、頂点２０ｃと頂点２０ｄとを結んだ線２０ｇの座標と、頂点２１ｃと頂点２１ｄとを結んだ線２１ｇの座標が同一で、かつ、頂点２０ｄと頂点２０ａとを結んだ線２０ｈの座標と、頂点２１ｄと頂点２１ａとを結んだ線２１ｈの座標が同一である場合、矩形と線が隣接していると判断する。
【００４６】
また、本実施例では、矩形塗潰し２０の頂点を結んでできる各線２０ｅ、２０ｆ、２０ｇ、２０ｈの座標に対して、輪郭線２１の各線を結んでできる各線２１ｅ、２１ｆ、２１ｇ、２１ｈの座標が１ドットだけ外側にずれている場合も隣接しているものと判断する。
【００４７】
前述した定義により、矩形塗潰し描画と線描画が隣接している場合、かつ、ＡＰ（１）にて印刷データの一部として指定された各描画データの色データが同一である場合はバーコードの印刷と判断し、細線補正しないで描画データを作成し（ステップＳ１７）、輪郭線を矩形塗潰しデータに変換する（ステップＳ１９）。
【００４８】
そして、変換された矩形塗潰しデータと保存されていた矩形塗潰しデータを重ね合わせ、バーコードデータとする（ステップＳ２０）。
【００４９】
矩形塗潰し描画と線描画が隣接していない場合、すなわちバーコードデータでない場合は、細線補正して描画データを生成する（ステップＳ１８）。
【００５０】
印刷データが生成されると、生成されたデータがプリンストプーラ１２を介してプリンタ１３へ送られ、印刷が行われる（ステップＳ２１）。そして、印刷終了かどうかを判断し（ステップＳ２２）、未処理の印刷データがある場合はステップＳ１１に戻り、ステップＳ１１ないしステップＳ２２の動作を繰り返す。
【００５１】
次に、前述ステップＳ１９の輪郭線を矩形塗潰しデータに変換する処理の概要を図５の動作フローチャートを用いて説明する。
【００５２】
まず、ＡＰ（１）より送られてきた印刷データが描画データ解析部８にてバーコードの輪郭線と判断した場合、その輪郭線の座標を取得する（ステップＳ３１）。取得した輪郭線座標をもとに、輪郭線矩形塗潰し処理部１７ａにて輪郭線を矩形塗潰し描画に変換し（ステップＳ３２）、矩形塗潰しデータに変換する。
【００５３】
通常、バーコードの輪郭線は４辺あるので、全ての辺について輪郭線矩形塗潰し処理を終了したかどうかを判定し（ステップＳ３３）、終了していない場合は、ステップＳ３１に戻り、ステップＳ３１ないしステップＳ３３の動作を繰り返し４辺の輪郭線について矩形塗潰し描画への変換を行う。
【００５４】
以上の輪郭線矩形塗潰し処理について、図６ないし図１０の動作説明図を用いて詳細に説明する。図６は描画指示される輪郭線データ２７と矩形塗潰しデータ２９を表しており、図７ないし図１０が、輪郭線矩形塗潰し処理部１７ａにて輪郭線データ２７を矩形塗潰しデータに変換し、描画する過程を表している。なお、矩形塗潰しデータ２９については、その内側を図６に示したように矩形塗潰し描画２９ａとして描画する。
【００５５】
まず、図６に示すように、描画データ解析部８にてバーコードの輪郭線と判断した輪郭線データ２７を始点（１，１）、通過点（５，１）、通過点（５，５）、終点（１，５）として抽出し、当該輪郭線データ２７をもとに、輪郭線矩形塗潰し処理部１７ａにて４辺について以下のような座標補正を行い、矩形塗潰し処理データに変換する。
【００５６】
すなわち、輪郭線データは線の始点、通過点、終点および線の太さを表すデータによりＡＰ（１）から送信されてくるので、この取得した輪郭線描画２７の座標をもとに０．５ドットずつ矩形塗潰し描画２９ａの方向に加算して輪郭線矩形塗潰し座標を算出する。本例のように図６に示した描画指示データでは、輪郭線データ２７の右下方向に矩形塗潰し描画２９ａがあるので、右下方向に０．５ドットずつ輪郭線データ２７を補正する。
【００５７】
その結果、輪郭線の左辺の輪郭線データ（１，１）（１，５）は０．５ドットずつ右下方向に補正され、図７の一点鎖線で示したように位置補正され、当該一点鎖線の辺のドットを塗り潰すための輪郭線矩形塗潰しデータ（１，１，２，６）に変換し、同様に右辺の輪郭線データ（５，１）（５，５）が０．５ドットずつ右下方向に補正され、これを塗り潰す輪郭線矩形塗潰しデータ（５，１，６，６）に変換する。
【００５８】
同様に、図８に示したように、上辺の輪郭線データ、下側の輪郭線データを、輪郭線矩形塗潰しデータ（１，１，６，２）と輪郭線矩形塗潰しデータ（１，５，６，６）に変換し、これらの座標の矩形内部を塗り潰すことにより、４つの輪郭線矩形塗潰し描画２８ａないし２８ｄのように描画する。
【００５９】
そして、図９に示したように、輪郭線矩形塗潰し描画２８ａないし２８ｄと矩形塗潰し描画２９ａを重ね合わせことにより、図１０に示したように隙間のない所望とする大きさの矩形塗潰し描画３０ａを得ることができる。
【００６０】
なお、塗潰し描画が重なる部分については、ピクセルレベルのビットの操作であるＲＯＰ（ラスタオペレーション）により、プリンタ１３に対して排他的な論理演算による操作により二重描画とならないようにすればよい。
【００６１】
以上の説明では、輪郭線の４辺をそれぞれ矩形塗潰し処理を行うように説明したが、輪郭線の４辺に分割することなく４辺全体を同様に座標補正し、線描画するようにしてもよい。
【００６２】
（実施例１の効果）
以上詳細に述べたように、実施例１のバーコード印刷方法によれば、描画指示される輪郭線データを０．５ドット分、矩形塗潰し描画方向に輪郭線をずらして輪郭線を塗り潰す輪郭線矩形塗潰し処理部を設けたので、用紙の向きや用紙レイアウトを考慮することなく、隙間も発生しない精度の高いバーコード印刷をすることができる。
【実施例２】
【００６３】
（構成）
印刷システムの構成を示すブロック図を図１１に示す。同図に示したように実施例２の印刷システムでは、実施例１の輪郭線矩形塗潰し処理部１７ａの代わりに矩形塗潰し線描画処理部１７ｂを設けた構成としている。
【００６４】
矩形塗潰し線描画処理部１７ｂは、描画データ解析部８にてバーコードデータと判断された輪郭線指定のあるバーコードデータの矩形塗潰し部分を、線描画データに変換する処理を行うものである。その他の構成については、実施例１と同様であるので簡略化のためにその説明を省略する。
【００６５】
（動作）
以上の構成により、実施例２の印刷システム１９は以下のように動作する。  なお、バーコード印刷の印刷操作手順ついては図２を用いて説明した実施例１と同様であり、バーコードデータ判定方法についても図３を用いて説明した実施例１と同様であるので、簡略化のためにその詳細な説明を省略する。以下、実施例２の印刷システムの動作を図１２ないし図１８を用いて詳細に説明する。
【００６６】
最初に、図１２を用いてバーコードを印刷する動作について説明する。同図に示したように、まず、プリンタドライバ６は、ＡＰ（１）からの描画指定の印刷指示が来ると、印刷するためのデータを取得する（ステップＳ４１）。
【００６７】
印刷データには印刷位置を示す座標データが含まれており、ＡＰから取得した描画指定が矩形塗潰し描画かどうか判断され、矩形塗潰し描画と判断された場合は、矩形塗潰しデータの座標を保存し、次に、線描画かどうか判定し、線描画の場合には線データの座標を保存する（ステップＳ４２〜Ｓ４５）。
【００６８】
矩形塗潰し描画と線描画の両方が存在した場合、保存していた座標データが隣接しているかを比較し（ステップＳ４６）、矩形塗潰し描画と線描画が隣接している場合、かつＡＰ（１）にて印刷データの一部として指定された各描画データの色データが同一である場合は、バーコードの印刷と判断し、細線補正しないで描画データを作成し（ステップＳ４７）、後述のように矩形塗潰し描画を線描画データに変換する（ステップＳ４９）。
【００６９】
そして、変換された線描画データによる描画と保存されていた矩形塗潰しデータによる描画とを重ね合わせ、バーコードデータとする（ステップＳ５０）。
【００７０】
矩形塗潰し描画と線描画が隣接していない場合、すなわち、バーコードデータでない場合は、細線補正して描画データを生成する（ステップＳ４８）。
【００７１】
そして、印刷データが生成されると、生成されたデータがプリンストプーラ１２を介してプリンタ１３へ送られ、印刷が終了したかどうかを判断し（ステップＳ５１・Ｓ５２）、未処理の印刷データがある場合はステップＳ４１に戻り、ステップＳ４１ないしステップＳ５２の動作を繰り返す。
【００７２】
次に、矩形塗潰し描画を線描画に変換する矩形塗潰し線描画変換処理の概要を図１３の動作フローチャートを用いて説明する。
【００７３】
まず、描画データ解析部８にてバーコードの輪郭線と判断した場合、矩形塗潰し部分の座標を取得する（ステップＳ６１）。取得した座標をもとに、矩形塗潰し線描画処理部１７ｂにて詳細後述の矩形変換をし（ステップＳ６２）、線描画データとする。
【００７４】
そして、矩形変換終了かどうかを判断し（ステップＳ６３）、矩形塗潰し部分が残っている場合は、ステップＳ６１に戻り、ステップＳ６１ないしステップＳ６３の動作を繰り返す。
【００７５】
次に、前述ステップＳ６２の矩形塗潰し描画を線描画に変換する矩形変換処理について、図１４ないし図１６の説明図を用いて詳細に説明する。なお、プリンタドライバ６が受信する描画指示データは、実施例１の図６と同様の描画指示データを受信した例として以下説明する。
【００７６】
ところで、線描画に変換するためには、始点、通過点、終点の座標データが必要であり、矩形の場合、通過点の座標データは２箇所必要となる。例えば、図１４に示したように、矩形塗潰しデータ２９（２，２，５，５）を線描画データに変換するために、その輪郭座標に相当するものとして、始点として（２，２）、第１の通過点座標として（５，２）、第２の通過点座標として（５，５）、終点として（２，５）を抽出する。
【００７７】
そして、抽出された始点、通過および終点の座標データに基づき線描画変換を行うのであるが、当該線上にドットを配置することができず、０．５ドットの端数が発生するため、これを切り捨てることにより左上方向にシフトして線描画が行われ、同図右側の線描画３１のように描画される。
【００７８】
同様に、図１５に示したように、輪郭線データ２７についても、線描画を行うことにより左上側にシフトして同図右側に示した線描画３２のように描画される。そして、前述の線描画３１と当該線描画３２を重ね合わせることにより、図１６左側の描画が得られ、同図右側の矩形塗潰し描画２９をさらに重ね合わせることにより図１７に示したように矩形塗潰し描画３０ｂが得られる。
【００７９】
（実施例２の効果）
以上詳細に述べたように、実施例２の印刷システムによれば、矩形塗潰し描画の輪郭を輪郭線として線描画する矩形塗潰し線描画処理部を設け、輪郭線と矩形塗潰しが同じ方向に座標ずれするようにしたので、用紙の向きや、用紙レイアウトよるバーコード印刷時の輪郭線と矩形塗潰しのずれが、同じ方向にずれるようになり、隙間のない精度の高いバーコード印刷を行うことができる。
【実施例３】
【００８０】
（構成）
印刷システムの構成を示すブロック図を図１８に示す。同図に示したように実施例３の印刷システムでは、実施例１の輪郭線矩形塗潰し処理部１７ａの代わりに矩形合わせ塗潰し描画処理部１７ｃを設けた構成としている。
【００８１】
矩形合わせ塗潰し描画処理部１７ｃは、描画データ解析部８にてバーコードデータと判断された輪郭線指定のあるバーコードデータについて輪郭線部分と矩形塗潰しとを合わせて一つの矩形塗潰し描画データへ変換する処理を行うものである。その他の構成については、実施例１および実施例２と同様であるので簡略化のためにその説明を省略する。
【００８２】
（動作）
以上の構成により、実施例３の印刷システム１９は以下のように動作する。なお、実施例２と同様に、バーコード印刷の際の印刷操作手順ついては図２を用いて説明した実施例１と同様であり、バーコードデータ判定方法についても図３を用いて説明した実施例１と同様であるので、簡略化のためにその詳細な説明を省略する。以下、実施例３の印刷システムの動作を図１９ないし図２３を用いて詳細に説明する。
【００８３】
最初に、図１９を用いてバーコードを印刷する動作について説明する。同図に示したように、まず、プリンタドライバ６は、ＡＰ（１）からの描画指定の印刷指示が来ると、印刷するためのデータを取得する（ステップＳ７１）。
【００８４】
印刷データには印刷位置を示す座標データが含まれており、ＡＰ（１）から取得した描画指定が矩形塗潰し描画かどうか判断され、矩形塗潰し描画と判断された場合は、矩形塗潰しデータの座標を保存し、次に、線描画かどうか判定し、線の描画の場合には線描画データの座標を保存する（ステップＳ７２〜Ｓ７５）。
【００８５】
矩形塗潰しと線の描画の両方が存在した場合、保存していた座標データが隣接しているかを比較し（ステップＳ７６）、矩形塗潰し描画と線描画が隣接している場合、かつ、ＡＰ（１）にて印刷データの一部として指定された各描画データの色データが同一である場合は、バーコードの印刷と判断して、細線補正しないで描画データを作成し（ステップＳ７７）、矩形塗潰し描画と輪郭線を一つの矩形塗潰しデータにする矩形合わせ塗潰し描画処理部１７ｃにて描画処理を行う（ステップＳ７９）。
【００８６】
矩形塗潰しと線の描画が隣接していない場合、すなわちバーコードデータでない場合は、細線補正して描画データを生成する（ステップＳ７８）。
【００８７】
そして、印刷データが生成されると、生成されたデータがプリンストプーラ１２を介してプリンタ１３へ送られ、印刷が行われ、印刷終了かどうかを判断し（ステップＳ８０・Ｓ８１）、未処理の印刷データがある場合はステップＳ７１に戻り、ステップＳ７１ないしステップＳ８１の動作を繰り返す。
【００８８】
次に、矩形塗潰し描画と線描画を合わせて一つの矩形塗潰し描画データに変換する矩形合わせ塗潰し描画処理の概要を図２０の動作フローチャートを用いて説明する。
【００８９】
まず、描画データ解析部８にてバーコードの輪郭線と判断した場合、輪郭線の座標を取得し（ステップＳ９１）、次に、矩形塗潰し部分の座標を取得する（ステップＳ９２）。そして、取得した輪郭線と矩形塗潰し部分の座標をもとに一つの矩形座標に変換し、矩形塗潰しデータとする（ステップＳ９３）。
【００９０】
そして、矩形合わせ塗潰し描画処理をすべて終了したかどうかを判断し（ステップＳ９４）、未処理の輪郭線と矩形塗潰し部分が残っている場合は、ステップＳ９１に戻り、ステップＳ９１ないしステップＳ９３の動作を繰り返す。
【００９１】
前述ステップＳ９３の輪郭線と矩形塗潰し部分を一つの矩形に変換し矩形塗潰しデータに変換する処理について、図２１ないし図２３の動作説明図を用いて詳細に説明する。なお、実施例２と同様、プリンタドライバ６が受信する描画指示データは、実施例１の図６と同様の描画指示データを受信した例として以下説明する。
【００９２】
輪郭線２７を矩形塗潰しに変換するには、前述実施例２にて図１５を用いて説明した輪郭線の線描画のように同図右側の線描画３２と同様の図２２の左側の線描画３２を得、当該線描画３２の輪郭座標、すなわち（０，０，５，５）を矩形塗潰しデータとする。そして、当該矩形塗潰しデータ（０，０，５，５）と同図右側の矩形塗潰し描画２９、すなわち（２，２，５，５）とを１つの矩形塗潰し描画として扱う。
【００９３】
本例の場合、（２，２，５，５）は（０，０，５，５）の内側に配置されているので、結果的に図２３に示したように１つの矩形塗潰し描画３１ａとして描画される。
【００９４】
なお、以上の説明では、実施例２の輪郭線の線描画をし、当該線描画の輪郭を矩形塗潰しデータとして取扱うように説明したが、実施例１の図７ないし図９を用いて説明した輪郭線矩形塗潰し処理を用いて輪郭線矩形塗潰し描画２８のように描画し、当該輪郭線矩形塗潰し描画２８の輪郭を矩形塗潰しデータとして取扱うようにしてもよい。
【００９５】
（実施例３の効果）
以上詳細に述べたように、実施例３の印刷システムによれば、輪郭線と矩形塗潰し描画データを一つの矩形塗潰しデータとしての描画データに変換する矩形合わせ塗潰し描画処理部を設け、輪郭線と矩形塗潰しが同じ方向に座標ずれするようにしたので、用紙の向きや、用紙レイアウトよるバーコード印刷時の輪郭線と矩形塗潰しのずれの発生を防止でき、隙間のない精度の高いバーコード印刷を行うことができる。
【実施例４】
【００９６】
（構成）
印刷システムの構成を示すブロック図を図２４に示す。同図に示したように実施例４の印刷システムでは、実施例１の輪郭線矩形塗潰し処理部１７ａの代わりに矩形合わせ矩形合わせ線描画処理部１７ｄを設けた構成としている。
【００９７】
矩形合わせ線描画処理部１７ｄは、描画データ解析部８にてバーコードデータと判断された輪郭線指定のあるバーコードデータについて矩形塗潰しと輪郭線部分を合わせて一つの線描画データへ変換する処理を行うものである。その他の構成については、実施例１と同様であるので簡略化のためにその説明を省略する。
【００９８】
（動作）
以上の構成により、実施例４の印刷システム１９は以下のように動作する。なお、実施例２および実施例３と同様、バーコード印刷の際の印刷操作手順ついては図２を用いて説明した実施例１と同様であり、バーコードデータ判定方法についても図３を用いて説明した実施例１と同様であるので、簡略化のためにその詳細な説明を省略する。以下、実施例４の印刷システムの動作を図２５ないし図２８を用いて詳細に説明する。
【００９９】
最初に、図２５を用いてバーコードを印刷する動作について説明する。同図に示したように、プリンタドライバ６は、ＡＰ（１）からの描画指定の印刷指示が来ると（ステップＳ１０１）、印刷するためのデータを取得する。
【０１００】
印刷データには印刷位置を示す座標データが含まれており、ＡＰ（１）から取得した描画指定が矩形塗潰し描画かどうか判断され、矩形塗潰し描画と判断された場合は、矩形塗潰しデータの座標を保存し、次に、線の描画かどうか判定し、線の描画の場合には線描画データの座標を保存する（ステップＳ１０２〜Ｓ１０５）。
【０１０１】
そして、矩形塗潰し描画と線の描画の両方が存在した場合、保存していた座標データ隣接しているかを比較し（ステップＳ１０６）、矩形塗潰し描画と線描画が隣接している場合、かつ、ＡＰ（１）にて印刷データの一部として指定された各描画データの色データが同一である場合は、バーコードの印刷と判断して細線補正しないで描画データを作成し（ステップＳ１０７）、矩形塗潰し描画と輪郭線を一つの線データにする詳細後述の矩形合わせ線描画処理部１７ｄにて矩形合わせ線描画処理を行う（ステップＳ１０９）。
【０１０２】
矩形塗潰し描画と線の描画が隣接していない場合、すなわちバーコードデータでない場合は、細線補正して描画データを生成する（ステップＳ１０８）。
【０１０３】
そして、印刷データが生成されると、生成されたデータがプリンストプーラ１２を介してプリンタ１３へ送られ、印刷が行われ、未処理の印刷データがあるかどうかを判断し（ステップＳ１１０・Ｓ１１１）、未処理の印刷データがある場合はステップＳ１０１に戻り、ステップＳ１０１ないしステップＳ１１１の動作を繰り返す。
【０１０４】
次に、前述ステップＳ１０９の矩形塗潰し描画と線描画を合わせて一つの線描画データに変換する矩形合わせ線描画処理の概要を図２６の動作フローチャートを用いて説明する。
【０１０５】
まず、描画データ解析部８にてバーコード輪郭線と判断した場合、輪郭線の座標を取得し（ステップＳ１２１）、次に、矩形塗潰し部分の座標を取得する（ステップＳ１２２）。そして、取得した輪郭線と矩形塗潰し部分の座標をもとに、一つの線描画データに変換し、矩形塗潰しデータとする（ステップＳ１２３）。
【０１０６】
そして、矩形合わせ線描画処理をすべて終了したかどうかを判断し（ステップＳ１２４）、未処理の輪郭線と矩形塗潰し部分が残っている場合は、ステップＳ１２１に戻り、ステップＳ１２１ないしステップＳ１２３の動作を繰り返す。
【０１０７】
次に、前述ステップＳ１２３の輪郭線と矩形塗潰し部分を一つの線描画データに変換に変換する処理について、図２７および図２８の動作説明図を用いて詳細に説明する。なお、プリンタドライバ６が受信する描画指示データは、実施例１の図６と同様の描画指示データを受信した例として以下説明する。
【０１０８】
実施例４の場合の輪郭線２７の線描画は、図２７左側に示した輪郭線データ２７である（１，１，５，５）に基づき、始点を例えば左下の（１，５）として選出し、同右側線の描画３４ａのように、輪郭線の範囲内を重なることなく中心に向かって線として描画する。すなわち、（１，５）、（１，１）、（５，１）、（５，５）、（２，５）、（２，２）、（４，２）、（４，４）、（３，４）、（３，３）として描画する。
【０１０９】
そして、線として描画された結果に基づき、或いは線の描画とともに、図２８に示したように線描画３３を行う。このとき、実施例２にて説明したように、線の描画位置にはドットを描画できず０．５ドットの端数が発生しこれを切り捨て処理するので左上方向に０．５ドットシフトして描画される。
【０１１０】
一方、図示していないが、プリンタドライバ６が受信する図６の矩形塗潰しデータ２９、すなわち（２，２，５，５）は、図２８右側のように輪郭線２７の線描画の範囲内に含まれるので、１つの線描画３３として取扱われることとなる。
【０１１１】
なお、以上の説明では、図２８左側に示したように、輪郭線の四隅のうち１点を始点として選出し、当該輪郭線の範囲内を重なることなく中心に向かって線として描画するように説明したが、輪郭線内を重なることなく線として描画できれば、どのような描画を行ってもよい。例えば、図２９の線の描画３４ｂに示したように線として描画するようにしてもよい。
【０１１２】
（実施例４の効果）
以上詳細に述べたように、実施例４の印刷システムによれば、輪郭線と矩形塗潰し描画データを一つの線データとして描画データに変換する矩形合わせ線描画処理部を設け、輪郭線と矩形塗潰しが同じ方向に座標ずれするようにしたので、用紙の向きや、用紙レイアウトよるバーコード印刷時の輪郭線と矩形塗潰しのずれがなくなり、隙間のない精度の高いバーコード印刷を行うことができる。
【産業上の利用可能性】
【０１１３】
以上述べたように、本発明は、上位装置のアプリケーションで生成した管理コードの印刷データを印刷装置にて印刷する印刷システムに広く用いることができる。
【図面の簡単な説明】
【０１１４】
【図１】実施例１の印刷システムの構成を示すブロック図である。
【図２】実施例１のバーコード印刷の操作手順の説明図である。
【図３】実施例１のバーコードデータ判定方法の説明図である。
【図４】実施例１の印刷処理の動作フローチャート図である。
【図５】実施例１の輪郭線矩形塗潰し処理の動作フローチャート図である。
【図６】描画指示される輪郭線データと矩形塗潰しデータの例示図である。
【図７】実施例１の輪郭線矩形塗潰し描画処理の説明図である。
【図８】実施例１の輪郭線矩形塗潰し描画処理の説明図である。
【図９】実施例１の輪郭線矩形塗潰し描画と矩形塗潰し描画の重ね合わせの説明図である。
【図１０】実施例１の描画処理後の描画結果を示す図である。
【図１１】実施例２の印刷システムの構成を示すブロック図である。
【図１２】実施例２の印刷処理の動作フローチャート図である。
【図１３】実施例２の矩形塗潰し描画を線描画へ変換する動作フローチャート図である。
【図１４】実施例２の矩形塗潰し線描画変換処理の説明図である。
【図１５】実施例２の矩形塗潰し線描画変換処理の説明図である。
【図１６】実施例２の線描画と矩形塗潰し描画の重ね合わせの説明図である。
【図１７】実施例２の線描画と矩形塗潰し描画の重ね合わせの描画結果を示す図である。
【図１８】実施例３の印刷システムの構成を示すブロック図である。
【図１９】実施例３の印刷処理の動作フローチャート図である。
【図２０】実施例３の輪郭線矩形塗潰し変換の動作ローチャート図である。
【図２１】実施例３の矩形合わせ塗潰し描画処理の説明図である。
【図２２】実施例３の矩形合わせ塗潰し描画処理の説明図である。
【図２３】実施例３の矩形合わせ塗潰し描画処理の説明図である。
【図２４】実施例４の印刷システムの構成を示すブロック図である。
【図２５】実施例４の印刷処理の動作フローチャート図である。
【図２６】実施例４の矩形合わせ線描画処理部の動作フローチャート図である。
【図２７】実施例４の矩形合わせ塗潰し描画処理の説明図である。
【図２８】実施例４の矩形合わせ塗潰し描画処理の説明図である。
【図２９】実施例４の矩形合わせ塗潰し描画処理の変形例である。
【図３０】矩形の塗潰しを示す図である。
【図３１】矩形の塗潰しと輪郭線を示す図である。
【図３２】矩形の塗潰しと輪郭線の細線補正を示す図である。
【図３３】従来の印刷システムによる不具合を示す図である。
【図３４】従来の印刷システムによる不具合を示す図である。
【図３５】従来の印刷システムによる不具合を示す図である。
【図３６】細線補正のドライバ設定の画面例である。
【符号の説明】
【０１１５】
１  アプリケーション（ＡＰ）
６  プリンタドライバ
８  描画データ解析部
１３  プリンタ
１７ａ  輪郭線矩形塗潰し処理部
１７ｂ  矩形塗潰し線描画処理部
１７ｃ  矩形合わせ塗潰し描画処理部
１７ｄ  矩形合わせ矩形合わせ線描画処理部
１８  ホストＰＣ
１９  印刷システム
２７  輪郭線データ
２８  輪郭線矩形塗潰し描画
２９  矩形塗潰しデータ
２９ａ、３０ａ、３０ｂ、３１ａ  矩形塗潰し描画
３０ｘ  隙間
３１、３２、３３  線描画
３４ａ、３４ｂ  線の描画
【図１】
2008217537.tif 000003
【図２】
2008217537.tif 000004
【図３】
2008217537.tif 000005
【図４】
2008217537.tif 000006
【図５】
2008217537.tif 000007
【図６】
2008217537.tif 000008
【図７】
2008217537.tif 000009
【図８】
2008217537.tif 000010
【図９】
2008217537.tif 000011
【図１０】
2008217537.tif 000012
【図１１】
2008217537.tif 000013
【図１２】
2008217537.tif 000014
【図１３】
2008217537.tif 000015
【図１４】
2008217537.tif 000016
【図１５】
2008217537.tif 000017
【図１６】
2008217537.tif 000018
【図１７】
2008217537.tif 000019
【図１８】
2008217537.tif 000020
【図１９】
2008217537.tif 000021
【図２０】
2008217537.tif 000022
【図２１】
2008217537.tif 000023
【図２２】
2008217537.tif 000024
【図２３】
2008217537.tif 000025
【図２４】
2008217537.tif 000026
【図２５】
2008217537.tif 000027
【図２６】
2008217537.tif 000028
【図２７】
2008217537.tif 000029
【図２８】
2008217537.tif 000030
【図２９】
2008217537.tif 000031
【図３０】
2008217537.tif 000032
【図３１】
2008217537.tif 000033
【図３２】
2008217537.tif 000034
【図３３】
2008217537.tif 000035
【図３４】
2008217537.tif 000036
【図３５】
2008217537.tif 000037
【図３６】
2008217537.tif 000038