(57)【要約】    【課題】  印刷が高速に行えるプリンタドライバを提供する。    【解決手段】  プリンタドライバ１０を、少なくとも１つの非白ピクセルデータを含むラスタデータについては、ハーフトーンデータを生成して出力モジュールに渡し、白ピクセルデータのみを含むラスタデータについては、ハーフトーンデータを生成せずに、その存在を空白ラスタ数として出力モジュールに通知するハーフトーンモジュールと、ハーフトーンモジュールから渡された白ラスタ数とハーフトーンデータとに基づき、各ハーフトーンデータが、プリンタへの供給が不必要な白ハーフトーンデータであるか否かをチェックすることなく、印刷データを生成する出力モジュールとを含むものとする。    【選択図】  図４
2006202300.tif 000002
【特許請求の範囲】
【請求項１】
印刷データを生成してプリンタに供給するためのプリンタドライバであって、
コンピュータに、
生成すべき印刷物の内容を示す複数のラスタデータに対して、各ラスタデータが全てのピクセルが白であることを示す白ラスタデータであるか否かを判断する判断ステップと、
この判断ステップにより白ラスタデータではないと判断された各ラスタデータに対して所定の処理を施すことにより各ラスタデータのハーフトーンデータを生成するハーフトーンデータ生成ステップと、
前記ハーフトーンデータ生成ステップにて生成されたハーフトーンデータ群と各ハーフトーンデータが描画内容を表している位置を示す情報とを含む印刷データを生成する印刷データ生成ステップ
とを、実行させることを特徴とするプリンタドライバ。
【請求項２】
前記判断ステップは、白ラスタデータではないと判断したラスタデータについては、白ではない最初のピクセルの位置を特定し、
前記ハーフトーンデータ生成ステップは、前記判断ステップにより白ラスタデータではないと判断された各ラスタデータのハーフトーンデータを生成する際に、各ラスタデータ内の，前記判断ステップにて特定された位置のピクセル以降のピクセル群に関するデータに対してのみハーフトーン化処理を行う
ことを特徴とする請求項１記載のプリンタドライバ。
【請求項３】
印刷のために使用される印刷データを生成するための印刷データ生成方法であって、
生成すべき印刷物の内容を表す複数のラスタデータに対して、各ラスタデータが全てのピクセルが白であることを表している白ラスタデータであるか否かを判断する判断ステップと、
この判断ステップにより白ラスタデータではないと判断された各ラスタデータに所定の処理を施すことによりハーフトーンデータを生成するハーフトーンデータ生成ステップと、
前記ハーフトーンデータ生成ステップにて生成されたハーフトーンデータ群と各ハーフトーンデータが描画内容を表しているラインの位置を示す情報とを含む印刷データを生成する印刷データ生成ステップ
とを、含むことを特徴とする印刷データ生成方法。
【請求項４】
前記判断ステップは、白ラスタデータではないと判断したラスタデータに関しては、白ではない最初のピクセルの位置を特定し、
前記ハーフトーンデータ生成ステップは、前記判断ステップにより白ラスタデータではないと判断された各ラスタデータのハーフトーンデータを生成する際に、各ラスタデータ内の，前記判断ステップにて特定された位置のピクセル以降のピクセル群に関するデータに対してのみハーフトーン化処理を行う
ことを特徴とする請求項３記載の印刷データ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタに供給する印刷データを生成するためにコンピュータ上で実行されるプリンタドライバと、印刷データを生成するための印刷データ生成方法とに、関する。
【背景技術】
【０００２】
インクジェットプリンタの中には、描画を行う必要がないライン（全ピクセルが白ピクセルであるライン）に関するデータを含まない印刷データに基づいて印刷を行うものが、存在している。
【０００３】
以下、図５を用いて、そのようなインクジェットプリンタ用の既存のプリンタドライバ８０の構成及び動作を、説明する。
【０００４】
図示したように、このプリンタドライバ８０には、生成すべき印刷物のＲＧＢイメージデータを生成するイメージ化モジュールと、イメージ化モジュールにより生成されたＲＧＢイメージデータ内の各ラスタデータのハーフトーンデータを生成するハーフトーンモジュールと、ハーフトーンモジュールにより生成されたハーフトーンデータ群に基づいて実際の描画（インク滴の吐出）が不必要なハーフトーンデータ（以下、白ハーフトーンデータと表記する）を含まない印刷データを生成する出力モジュールとが、含まれている。なお、ラスタデータとは、１ライン分のＲＧＢイメージデータのことである。また、ハーフトーンデータとは、インクジェットプリンタ内の印字ヘッドの１ライン分の描画内容を規定するデータ（印字ヘッドの各色のドットのＯＮ／ＯＦＦデータの集合）のことである。このハーフトーンデータの生成は、ラスタデータを構成している各ＲＧＢピクセルデータを、ルックアップテーブル（ＬＵＴ）を利用してハーフトーンピクセルデータ（印字ヘッドが吐出可能な各色のインクのＯＮ／ＯＦＦデータ）に変換することにより、行われている。
【０００５】
すなわち、このプリンタドライバ８０は、印刷時に、全てのラスタデータについてハーフトーンデータが生成された後に、各ハーフトーンデータが白ハーフトーンデータであるか否かが判断されることにより、白ハーフトーンデータを含まない印刷データが生成されるものとなっている。
【０００６】
上記説明から明らかなように、プリンタドライバ８０は、印刷時に、実際には使用されないラスターデータ（白ラスタデータ）を生成する処理、換言すれば、無駄な処理が、行われるものとなっている。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
そこで、本発明の課題は、上記のような無駄な処理が伴わない手順で印刷データを生成することができるプリンタドライバ及び印刷データ生成方法を、提供することにある。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明のプリンタドライバは、コンピュータに、生成すべき印刷物の内容を表す複数のラスタデータに対して、各ラスタデータが全てのピクセルが白であることを表している白ラスタデータであるか否かを判断する判断ステップと、この判断ステップにより白ラスタデータではないと判断された各ラスタデータに所定の処理を施すことによりハーフトーンデータを生成するハーフトーンデータ生成ステップと、ハーフトーンデータ生成ステップにて生成されたハーフトーンデータ群と各ハーフトーンデータが描画内容を表しているラインの位置を示す情報とを含む印刷データを生成する印刷データ生成ステップとを実行させることが出来るように、作成される。
【０００９】
すなわち、本発明のプリンタドライバを用いた場合、各ラスタデータ（１ライン分のイメージデータ）がハーフトーンデータの生成が必要なデータであるかが判断されて、ハーフトーンデータの生成が必要なラスタデータに対してのみ、ハーフトーンデータを生成する処理が行われる。従って、本発明のプリンタドライバを用いれば、ハーフトーンデータの生成が省略されることがある分、ハーフトーンデータの生成後に各ハーフトーンデータが白ハーフトーンデータであるか否かが判断されている既存のプリンタドライバよりも、高速に印刷データを生成できることになる。
【００１０】
なお、本発明のプリンタドライバを実現する際には、白ラスタデータではないと判断したラスタデータに関しては白ではないピクセルが最初に現れる位置を特定する判断ステップを採用し、判断ステップにより白ラスタデータではないと判断された各ラスタデータのハーフトーンデータを生成する際に、各ラスタデータ内の，判断ステップにて特定された位置のピクセル以降のピクセル群に関するデータに対してのみハーフトーン化処理を行うハーフトーンデータ生成ステップを採用しておくことが出来る。
【００１１】
判断ステップ、ハーフトーンデータ生成ステップとして、このようなステップを採用したプリンタドライバによれば、各ラインの先頭部分に存在する連続した白ピクセル群に対して、その実行に或る程度の時間が必要とされるハーフトーン化処理が行われなくなる分、高速に印刷データの生成が完了することになる。
【００１２】
そして、本発明の印刷データ生成方法は、生成すべき印刷物の内容を表す複数のラスタデータに対して、各ラスタデータが全てのピクセルが白であることを表している白ラスタデータであるか否かを判断する判断ステップと、この判断ステップにより白ラスタデータではないと判断された各ラスタデータに所定の処理を施すことによりハーフトーンデータを生成するハーフトーンデータ生成ステップと、このハーフトーンデータ生成ステップにて生成されたハーフトーンデータ群と各ハーフトーンデータが描画内容表しているラインの位置を示す情報とを含む印刷データを生成する印刷データ生成ステップとを、含む。
【００１３】
すなわち、本発明の印刷データ生成方法は、本発明のプリンタドライバが実行されたコンピュータにおける印刷データの生成手順と同じ手順で印刷データが生成される方法となっている。従って、この印刷データ生成方法を用いれば、実際の描画を必要としないハーフトーンデータを含まない印刷データを従来よりも高速に生成できることになる。
【発明の効果】
【００１４】
本発明のプリンタドライバ、印刷データ生成方法を用いれば、ハーフトーンデータを含まない印刷データを高速に生成できるので、実際に描画が必要な部分の少ない印刷物の印刷を特に高速に行えることになる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態を、図面を参照して詳細に説明する。
図１に模式的に示したように、本発明の一実施形態に係るプリンタドライバ１０は、インクジェットプリンタ５０を利用するホストコンピュータ６０にインストールされるプログラムである。なお、プリンタドライバ１０のユーザへの提供は、ＣＤ−ＲＯＭ等の可搬型記録媒体２０に記録された形や、Ｗｅｂサイトからのダウンロード（図示せず）によって、行われる。
【００１６】
また、本実施形態のプリンタドライバ１０には、既に説明した既存のプリンタドライバ８０（図５参照）と同様に、イメージ化モジュール、ハーフトーンモジュール及び出力モジュールが、含まれている。ただし、プリンタドライバ１０に含まれるハーフトーンモジュールは、プリンタドライバ８０に含まれるハーフトーンモジュールとは異なる手順で、ハーフトーンデータを生成するものとなっている。
【００１７】
具体的には、ハーフトーンモジュールは、図２及び図３にその手順を示したハーフトーンデータ生成処理を、イメージ化モジュールによってバンド毎に生成されるＲＧＢイメージデータ（以下、バンド単位イメージデータと表記する）に対して実行することにより、１ページ分のハーフトーンデータを生成するものとなっている。
【００１８】
すなわち、或るバンド単位イメージデータの処理を開始したハーフトーンモジュールは、まず、そのバンド単位イメージデータ内の最初のラスタデータ（１ライン分のＲＧＢイメージデータ）を処理対象ラスタデータとして取得する（ステップＳ１０１）。
【００１９】
次いで、ハーフトーンモジュールは、処理対象ラスタデータ内の最初（或いは次）のピクセルデータを取得（ステップＳ１０２）して、当該ピクセルデータが、ピクセルが白であることを示している白ピクセルデータであるか否かを判断する（ステップＳ１０３）。
【００２０】
そして、ハーフトーンモジュールは、取得したピクセルデータが白ピクセルデータであった場合（ステップＳ１０３；ＹＥＳ）には、処理対象ラスタデータ内の全ピクセルデータに対する処理が完了したか否かを判断する（ステップＳ１０４）。そして、ハーフトーンモジュールは、処理対象ラスタデータ内の全ピクセルデータに対する処理が完了していなかった場合（ステップＳ１０４；ＮＯ）には、ステップＳ１０２に戻って、処理対象ラスタデータ内の次のピクセルデータが白ピクセルデータであるか否かのチェックを行う。
【００２１】
このような処理（ステップＳ１０２〜Ｓ１０４の処理）を繰り返している間に、白ピクセルデータではないピクセルデータ（以下、非白ピクセルデータと表記する）を見出した場合（ステップＳ１０３；ＮＯ）、ハーフトーンモジュールは、処理対象ラスタデータからハーフトーンデータを生成する処理（ステップＳ１０５）を実行する。この処理時、ハーフトーンモジュールは、見出した非白ピクセルデータ以降のピクセルデータ群に対してのみ、実際のハーフトーン化処理（ＬＵＴを参照してＲＧＢピクセルデータをハーフトーンピクセルデータに変換する処理）を行い、見出した非白ピクセルデータよりも前のピクセルデータ群（すなわち、白ピクセルデータ群）に対しては、各ピクセルデータを白を意味するハーフトーンピクセルデータに変換する処理を行う。
【００２２】
ステップＳ１０５の処理の終了後、ハーフトーンモジュールは、出力モジュールに未だ渡していないハーフトーンデータ（以下、未提供ハーフトーンデータと表記する）の数が予め定められている規定数に達したか否かを判断する（ステップＳ１０６）。そして、ハーフトーンモジュールは、未提供ハーフトーンデータの数が規定数に達していなかった場合（ステップＳ１０６；ＮＯ）には、１バンド分のラスタデータの処理が完了したか否かを判断（ステップＳ１１１）し、１バンド分のラスタデータの処理が完了していなかった場合（ステップＳ１１１；ＮＯ）には、処理を行っているバンド単位イメージデータ内の次のラスタデータに対して、ステップＳ１０１からの処理を実行する。
【００２３】
一方、未提供ハーフトーンデータの数が規定数となっていた場合（ステップＳ１０６；ＹＥＳ）、ハーフトーンモジュールは、その規定数のラスタデータと空白ラスタ数とを出力モジュールに渡した後に空白ラスタ数を“０”とする処理（ステップＳ１０７）を行う。このステップＳ１０７で出力モジュールに渡される空白ラスタ数は、それと同時に出力モジュールに渡されるラスタデータ群の前に存在していた連続した白ラスタデータの総数を示す情報である。なお、この空白ラスタ数の変更（カウント）は、後述するステップＳ１１０（図３）にて行われる。また、流れ図への表記は省略してあるが、ハーフトーンモジュールは、ページの先頭部分に関するバンド単位イメージデータに対するハーフトーンデータ生成処理の開始時に、空白ラスタ数を、“０”或いは当該バンド単位イメージデータの開始位置（当該バンド単位イメージデータと印字領域の先頭との間に存在するライン数）を示す値に初期化する。
【００２４】
ステップＳ１０２〜Ｓ１０４の処理を処理対象ラスタデータ内の最終のピクセルデータまで行っても非白ピクセルデータが見出せなかった場合（ステップＳ１０４；ＹＥＳ）、ハーフトーンモジュールは、未提供ハーフトーンデータが残っているか否かを判断する（図３：ステップＳ１０８）。そして、ハーフトーンモジュールは、未提供ハーフトーンデータが残っていた場合（ステップＳ１０８；ＹＥＳ）には、それらの未提供ハーフトーンデータと空白ラスタ数とを出力モジュールに渡した後に空白ラスタ数を“１”に変更する処理（ステップＳ１０９）を行う。その後、ハーフトーンモジュールは、ステップＳ１１１（図２）以降の処理を実行する。一方、未提供ハーフトーンデータが残っていなかった場合（ステップＳ１０８；ＮＯ）、ハーフトーンモジュールは、空白ラスタ数を“１”インクリメント（ステップＳ１１０）した後に、ステップＳ１１１以降の処理を実行する。
【００２５】
そして、１バンド分のラスタデータについてステップＳ１０１〜Ｓ１１０の処理が完了したとき（ステップＳ１１１；ＹＥＳ）に、ハーフトーンモジュールは、未提供ハーフトーンデータが残っているか否かを判断（ステップＳ１１２）し、残っていなかった場合（ステップＳ１１２；ＮＯ）には、即座に、処理対象となっているバンド単位イメージデータに対するハーフトーンデータ生成処理を終える。
【００２６】
また、未提供ハーフトーンデータが残っていた場合（ステップＳ１１２；ＹＥＳ）、ハーフトーンモジュールは、未提供ハーフトーンデータと空白ラスタ数とを出力モジュールに渡した後に空白ラスタ数を“０”とする処理（ステップＳ１１３）を行ってから、処理対象となっているバンド単位イメージデータに対するハーフトーンデータ生成処理を終える。
【００２７】
一方、プリンタドライバ１０に含まれる出力モジュールは、ハーフトーンモジュールから、空白ラスタ数と幾つか（規定数以下）のハーフトーンデータとを渡されたとき、渡された幾つかのハーフトーンデータを、自身が確保し管理しているバッファ（メモリの一記憶領域）に記憶する。この際、出力モジュールは、ハーフトーンモジュールから渡された空白ラスタ数を、それまでの処理により内容が確定しているラインの後方に位置する描画を行う必要がない連続したラインの数として取り扱うとともに、ハーフトーンモジュールから渡された幾つかのラスタデータをその描画を行う必要がない連続したラインの直後に位置するライン群に関するデータとして取り扱う。要するに、出力モジュールは、ハーフトーンモジュールから渡された空白ラスタ数に基づき、それと同時に渡されたハーフトーンデータ群がどのラインから始まるライン群に関するデータであるかを把握する。
【００２８】
そして、出力モジュールは、当該バッファに記憶されているハーフトーンデータ群、すなわち、非白ハーフトーンデータ群を、それらの位置情報と共に含む印刷データを生成してインクジェットプリンタ５０に供給する。
【００２９】
以上、説明したように、本プリンタドライバ１０には、白ハーフトーンデータを出力モジュールに渡さないハーフトーンモジュールと、ハーフトーンモジュールから渡されたハーフトーンデータ群（非白ハーフトーンデータ群）に基づき、各ハーフトーンデータが白ハーフトーンデータであるか否かをチェックすることなく、印刷データを生成する出力モジュールとが、含まれている。
【００３０】
このため、本プリンタドライバ１０を用いれば、従来のプリンタドライバ８０を用いた場合には、図４（Ａ）に模式的に示した手順で生成されていた印刷データが、図４（Ｂ）に模式的に示した手順で生成されることになる。
【００３１】
すなわち、従来のプリンタドライバ１０では、図４（Ａ）に示してあるように、全てのラスタデータについてハーフトーンデータが生成されてから、各ラスタデータが白ハーフトーンデータであるか非白ハーフトーンデータであるかがチェックされていたが、本プリンタドライバ１０では、図４（Ｂ）に示してあるように、各ラスタデータがハーフトーンデータの生成が必要な非白ラスタデータであるか否かがチェックされた後に、非白ラスタデータに対してのみ、ハーフトーンデータを生成する処理が行われる。
【００３２】
そして、ラスタデータが白ラスタデータであるか非白ラスタデータであるかのチェックは、ハーフトーンデータが白ハーフトーンデータであるか非白ハーフトーンデータであるかのチェックと同程度の時間で終了するので、結局、本プリンタドライバ１０を用いれば、白ハーフトーンデータの生成が省略され、かつ、出力モジュールに渡されるデータ量が少なくなる分、従来のプリンタドライバ８０よりも短時間で（高速に）印刷データの生成が完了することになる。従って、本プリンタドライバ１０を用いれば、実際に描画が必要な部分の少ない印刷物の印刷を特に高速に行えることになる。
【００３３】
＜変形形態＞
本発明の一実施形態として説明したプリンタドライバ１０は、コンピュータにインストールされる，インクジェットプリンタ５０用のプログラムであったが、本発明の実現方法は、上記したものに限られない。例えば、プリンタドライバ１０を、インクジェットプリンタ５０以外のプリンタ用のものに変形しても良い。また、コンピュータに装着される拡張ボードとして、プリンタドライバ１０と同じ手順の処理を実行するものを製造することにより、本発明の実現しても良く、プリンタドライバ１０と同じ手順の処理が、ハードウェア或いはソフトウェアにより、プリンタ側で行われるようにすることによって、本発明を実現しても良い。
【図面の簡単な説明】
【００３４】
【図１】本発明の一実施形態に係るプリンタドライバの使用形態の説明図である。
【図２】実施形態に係るプリンタドライバに含まれるハーフトーンモジュールにより実行されるハーフトーンデータ生成処理の流れ図である。
【図３】実施形態に係るプリンタドライバに含まれるハーフトーンモジュールにより実行されるハーフトーンデータ生成処理の流れ図である。
【図４】実施形態に係るプリンタドライバによる印刷データ生成手順（Ｂ）と、従来のプリンタドライバによる印刷データ生成手順（Ａ）との違いを説明するための図である。
【図５】従来のプリンタドライバによる印刷データ生成手順の説明図である。
【符号の説明】
【００３５】
１０  プリンタドライバ
２０  可搬型記録媒体
５０  インクジェットプリンタ
６０  ホストコンピュータ
【図１】
2006202300.tif 000003
【図２】
2006202300.tif 000004
【図３】
2006202300.tif 000005
【図４】
2006202300.tif 000006
【図５】
2006202300.tif 000007