(57)【特許請求の範囲】
【請求項１】
複数の記録素子を有する記録ヘッドを用い、画像データに応じて画像記録を行う記録装置への画像データ転送方法において、
所定の条件に応じた前記記録装置の記録動作について、画像データの各ラスタラインとその記録に使用される記録素子とを対応させて各ラスタラインの画像データに対して画像処理を行うか否かと、ヌルラスタを前記記録ヘッドによる走査を行うことなくスキップする前記記録装置のヌルスキップ動作と、をシミュレートするシミュレートステップと、
前記シミュレートされた結果に基づいて画像データの各ラスタラインとその記録に使用される記録素子とを対応させ、前記対応付けられた各ラスタラインの画像データを画像処理する画像処理ステップと、
前記画像処理された画像データを前記記録装置に転送するステップと、を有し、
前記シミュレートステップは、画像処理を行うラスタラインは前記記録装置のヌルスキップを行わないラスタラインとすることを特徴とする画像データ転送方法。
【請求項２】
前記シミュレートステップは、各ラスタラインを前記記録ヘッドによる複数の主走査で完成させる前記記録装置のマルチパス印字をシミュレートし、
前記画像処理ステップは、シミュレートされた結果に基づいて画像データの各ラスタラインとその記録に使用される複数の記録素子の組み合わせとを対応させ、前記複数の記録素子の組合せの情報に基づいて各ラスタラインの画像データの濃度補正を行うことを特徴とする請求項１記載の画像データ転送方法。
【請求項３】
前記シミュレートステップは、記録に使用される前記複数の記録素子の整数分の１に対応した量の副走査を行うことにより、各ラスタラインを前記記録ヘッドによる複数の主走査で完成させる前記記録装置のマルチパス印字をシミュレートすることを特徴とする請求項２記載の画像データ転送方法。
【請求項４】
前記シミュレートステップは、画像モードに応じて前記記録装置のマルチパス印字をシミュレートすることを特徴とする請求項３記載の画像データ転送方法。
【請求項５】
前記シミュレートステップは、画像データに応じて変化する前記記録装置の記録動作をシミュレートすることを特徴とする請求項１記載の画像データ転送方法。
【請求項６】
前記画像処理ステップは、記録素子情報に基づいて記録素子に対応付けられた各ラスタラインの画像データの濃度補正を行うことを特徴とする請求項１記載の画像データ転送方法。
【請求項７】
前記シミュレートステップは、複数色の画像記録が可能な複数の前記記録ヘッドを有し、当該複数の記録ヘッドの往復走査のいずれにおいても画像記録を行い得ると共に、ヌルラスタを前記複数の記録ヘッドによる走査を行うことなくスキップする前記記録装置のヌルスキップをシミュレートし、
前記画像処理ステップは、記録素子に対応付けられた各ラスタラインの記録方向に応じて各ラスタラインの画像データの画像処理を行うことを特徴とする請求項５記載の画像データ転送方法。
【請求項８】
前記シミュレートステップは、複写色の画像記録が可能な複数の前記記録ヘッドを有し、当該複数の記録ヘッドの往復走査のいずれにおいても画像記録を行い得ると共に、各走査ライン間のブレークに基づいて記録方向が決定される前記記録装置の双方向記録動作をシミュレートし、
前記画像処理ステップは、記録素子に対応付けられた各ラスタラインの記録方向に応じて各ラスタラインの画像データの画像処理を行うことを特徴とする請求項５記載の画像データ転送方法。
【請求項９】
前記シミュレートステップは、複数色の画像記録が可能な複数の前記記録ヘッドを有し、黒とカラーの画像データの混在に応じて変化する前記記録装置の記録動作をシミュレートすることを特徴とする請求項５記載の画像データ転送方法。
【請求項１０】
前記シミュレートステップは、黒とカラーの記録ヘッドの記録素子数が異なり、黒とカラーの画像データの混在に応じて変化する前記記録装置の記録動作をシミュレートすることを特徴とする請求項９記載の画像データ転送方法。
【請求項１１】
前記シミュレートステップは、複数色の画像記録が可能な複数の前記記録ヘッドを有し、黒の画像データとカラーの画像データとの境界に応じて変化する前記記録装置の記録動作をシミュレートすることを特徴とする請求項５記載の画像データ転送方法。
【請求項１２】
前記シミュレートステップは、環境条件に応じて変化する前記記録装置の記録動作をシミュレートすることを特徴とする請求項１記載の画像データ転送方法。
【請求項１３】
前記記録ヘッドはインクを吐出することを特徴とする請求項１乃至１２の何れかに記載の画像データ転送方法。
【請求項１４】
情報処理装置によって読み取り可能にプログラムを格納した記録媒体であって、前記プログラムは、
複数の記録素子を有する記録ヘッドを用い、画像データに応じて画像記録を行う記録装置への画像データを転送するための処理であって、
所定の条件に応じた前記記録装置の記録動作について、画像データの各ラスタラインとその記録に使用される記録素子とを対応させて各ラスタラインの画像データに対して画像処理を行うか否かと、ヌルラスタを前記記録ヘッドによる走査を行うことなくスキップする前記記録装置のヌルスキップ動作と、をシミュレートするシミュレートステップと、
前記シミュレートされた結果に基づいて画像データの各ラスタラインとその記録に使用される記録素子とを対応させ、前記対応付けられた各ラスタラインの画像データを画像処理する画像処理ステップと、
前記画像処理された画像データを前記記録装置に転送するステップと、を前記情報処理装置に実行させるプログラムであり、
前記シミュレートステップは、画像処理を行うラスタラインは前記記録装置のヌルスキップを行わないラスタラインとすることを特徴とする記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、複数の記録素子を有する記録ヘッドを用い、画像データに応じて画像記録を行う記録装置へ画像データを転送する画像データ転送方法及び記録媒体に関する。
【０００２】
【従来の技術】
従来、紙、ＯＨＰ用シートなどの記録媒体に対して記録を行う画像形成装置は、種々の記録方式による記録ヘッドを搭載した形態で提案されている。この記録ヘッドには、ワイヤードット方式、感熱方式、熱転写方式、インクジェット方式によるものなどがある。特に、インクジェット方式は、低騒音、低ランニングコスト、小型化及びカラー化が容易などの利点を有することから、プリンタ、ファックス、複写機等へ広範に応用されている。
【０００３】
インクジェット記録装置の記録ヘッドには、複数のインク吐出口（ノズル）が記録媒体の搬送方向に平行な方向に並ぶように形成され、これら複数の吐出口を介してインク滴が吐出される。
【０００４】
このような複数のノズルを有した記録ヘッドを用いて記録を行うインクジェット記録装置においては、製造上の問題あるいは経年変化によって各ノズル間に吐出性能（吐出量、吐出方向）の違いが発生し、これにより印刷画像上に濃度ムラ、濃度スジが発生することもある。
【０００５】
これを解決するために、特開平５−２２０９７７号公報では、各ノズル毎に濃度補正データを用意し、この濃度補正データを用いて元画像の各ラスタ信号をノズル単位に濃度補正することによって、画像上の濃度ムラ、濃度スジを解消するようにしたヘッドシェーディング手法が示されている。
【０００６】
この特開平５−２２０９７７号公報で示されるヘッドシェーディンクは、読取装置によって原稿を読み取った元画像をインクジェット記録装置によって記録媒体上に画像形成する複写機に適用したものであるが、勿論、この手法をプリンタシステムに適用することは可能である。一般に、プリンタシステムにおいては、ホストコンピュータが種々の画像ファイルやアプリケーションからの多値画像データを取得し、これをプリンタドライバが２値画像データに変換してプリンタに供給し、供給された画像データに基づいてプリンタが画像を形成している。
【０００７】
従って、ホストコンピュータ、特にプリンタドライバがプリンタの記録ヘッドの特性、即ち、濃度補正データを予め取得しておくことで、２値画像データに変換する前にプリンタドライバが多値画像データを記録ヘッドの特性に応じて濃度補正することが可能となる。
【０００８】
一方で、プリンタシステムは高速化、高画質化記録のために種々の記録動作を行っている。高画質化記録の一例として、いわゆるマルチパス印字と呼ばれる記録方法がある。これは、紙送り量を使用ノズルの１／ｎにし、主走査時に１／ｎに相補的に間引いたデータでｎ回印字することで、１ラスタラインを複数（ｎ個）のノズルを用いて印字するものである。マルチパス印字によれば、紙送りの誤差、ノズル毎の吐出特性（吐出量、吐出方向）の違い、さらには紙質によるインク吸収速度の違いなどによる濃淡のムラを解消して、画像品質を向上させることが可能となる。
【０００９】
また、高速化記録の一例として、いわゆるヌル（空白）スキップと呼ばれる記録方法がある。これは、画像データの供給を受けたプリンタにおいて、プリンタ画像データがない（空白の）ラスタラインに対しては記録ヘッドを主走査させることなく紙送りのみを行うことによって、記録の高速化を図るものである。
【００１０】
【発明が解決しようとする課題】
しかしながら、上述のヘッドシェーディング手法は、ノズル単位に濃度補正データを持ってノズルと画像データを単純に対応付けて濃度補正を行うものであるので、この手法は、通常とは異なる紙送りを行う、マルチパス印字あるいはヌル（空白）スキップが行われるプリンタ装置にはそのまま用いることはできない。
【００１１】
すなわち、マルチパス印字の際には、１ラスタラインを複数のノズルを用いて記録するが、上述のヘッドシェーディング手法では、各ノズル個々の特性を考慮した濃度補正テーブルを各ノズル別に備えるようにしているので、この方式をそのまま用いると、印字の際には実際には１ラスタラインに複数のノズルが使用されているにもかかわらず、各ラスタラインに関する濃度補正は１つのノズルに対応する濃度補正テーブルを用いて行われることになり、濃度補正テーブルが実際使われているノズルに整合しなくなって、画像品質を向上させるという所期の目的が達成されなくなる。
【００１２】
一方、濃度補正を行った後の２値画像データに基づいてプリンタがヌルスキップを行うと、濃度補正を行った画像データが補正対象のノズルとは異なったノズルによって記録される、つまり実際の印字ノズルに整合しなくなる。さらには、元画像を忠実に再現することもできなくなる。すなわち、濃度補正前の段階ではヌルラインではなかったラスタが、濃度補正あるいは２値化処理が加えられることによってヌルラインになることがあり、このようなラスタをヌルスキップさせると、上述のような不具合が発生してしまう。
【００１３】
上述の問題は、プリンタドライバから多値画像データをプリンタに供給し、プリンタ側にて記録ヘッドの特性に応じて濃度補正を行えば解決することが可能となる。しかしながら、この手法では、プリンタドライバから多値画像データをプリンタに供給することとなるので、画像データの伝送時間が増大すると共に、プリンタにおいて濃度補正と２値化処理を行う必要があるため、現実的ではない。
【００１４】
そこで、本発明は上述の課題を解決するためになされたもので、記録装置が種々の記録動作を行っても高画質な画像を記録することが可能な画像データ転送方法およびおよびこの制御プログラムを格納した記録媒体を提供することを目的とする。
【００１５】
【課題を解決するための手段】
そこでこの発明では、複数の記録素子を有する記録ヘッドを用い、画像データに応じて画像記録を行う記録装置への画像データ転送方法において、所定の条件に応じた前記記録装置の記録動作について、画像データの各ラスタラインとその記録に使用される記録素子とを対応させて各ラスタラインの画像データに対して画像処理を行うか否かと、ヌルラスタを前記記録ヘッドによる走査を行うことなくスキップする前記記録装置のヌルスキップ動作と、をシミュレートするシミュレートステップと、前記シミュレートされた結果に基づいて画像データの各ラスタラインとその記録に使用される記録素子とを対応させ、前記対応付けられた各ラスタラインの画像データを画像処理する画像処理ステップと、前記画像処理された画像データを前記記録装置に転送するステップと、を有し、前記シミュレートステップは、画像処理を行うラスタラインは前記記録装置のヌルスキップを行わないラスタラインとすることを特徴とする。
【００１６】
この発明では、前記シミュレートステップでは、例えば、マルチパス印字、ヌルラスタスキップ、カラー混在画像、黒−カラー混在画像、ブレーク画像、さらには環境条件の変化などに対応する記録装置の記録動作をシミュレートし、該シミュレートされた結果に基づいて画像データの各ラスタラインとその記録に使用される記録素子とを対応させ、該記録素子に対応付けられた各ラスタラインの画像データを画像処理し、この画像処理された画像データを前記記録装置に転送するようにしている。
【００１７】
【発明の実施の形態】
以下、添付図面を参照してこの発明の実施形態を説明する。
【００１８】
（実施例１）
図１は本発明の実施形態に関しての全体的なシステム構成を示すもので、このシステムは、情報処理装置としてのホストコンピュータ１と、プリンタ装置としてのインクジェット記録装置２とを備えている。
【００１９】
図１において、ホストコンピュータ１は、ＣＰＵ１０と、メモリ１１と、ハードディスクなどの外部記憶部１２と、キーボード，マウスなどの入力部１３と、プリンタ装置２とのインターフェース１４などを備えている。ＣＰＵ１０は、メモリ１１に格納された印刷プログラムを実行することで、元画像データに色処理、濃度補正処理、量子化（２値化）処理などの画像処理を施す。この印刷プログラムは、通常は、所謂プリンタドライバとして、外部記憶部１２に記憶されたり、或いは外部装置から供給されるようになっており、アプリケーションプラグラムによって印刷指令が出力されると、これら外部記憶部１２あるいは外部装置からプリンタドライバの印刷プログラムがメモリ１１に転送されるようになっている。ホストコンピュータ１はインターフェース１４を介してプリンタ装置２と接続されており、プリンタドライバの印刷プログラムに従って色処理、量子化処理を施した画像データをプリンタ装置２に送信して印刷記録を行わせる。
【００２０】
すなわちこの場合は、ホストコンピュータ１側にセットされる当該プリンタ装置２用のプリンタドライバによって、ラスタライズ処理および色変換処理、出力γ処理、量子化処理などの各種の画像処理を実行することで、印刷すべき元画像データをホストコンピュータ１側でプリンタ装置の記録ヘッドで直接使用することができるビットイメージの２値データまで変換し、この変換したデータをプリンタ装置に出力するようにしている。以下、このようにホストコンピュータ側で上記各種の画像処理を行うことをホスト展開機能と呼ぶ。
【００２１】
次に、図２を用いてホストコンピュータ１側のプリンタドライバによって行われるホスト展開処理などの本発明の主要部の機能について説明する。
【００２２】
ホスト展開処理は、色処理部４０で行われる色処理と、量子化処理部４４で行われる２値化処理に分けられ、アプリケーションプログラム等から与えられるＲ，Ｇ，Ｂの各色８ビット（256階調）の元画像データを、Ｃ，Ｍ，Ｙ，Ｋの各色１ビットの２値データに変換して出力するまでの処理をいう。マルチパス印字が行われる際には、間引き処理部４７によって、マルチパス数Ｎpに対応する間引き処理が行われる。また、ヌルスキップが行われる際には、出力γ補正処理部４３において、濃度補正を行っていないラスタライン、すなわち濃度補正前のラスタデータが全て“０”のライン、を識別させる未補正フラグＦc（未濃度補正のときにオン）をラスタ番号に対応付けてプリンタ装置１側へ送信する処理が行われる。これは、濃度補正後にヌルラスタラインになった場合は、そのラスタに既に補正テーブルが割り当てられており、それ以降のラスタとノズルの関係を保つ必要があることを示すためである。
【００２３】
色処理部４０には、ラスタライズされたＲ，Ｇ，Ｂ各色８ビットの元画像データが入力される。Ｒ，Ｇ，Ｂ各色８ビットの元画像データは、まず３次元のルックアップテーブル４１（以下ＬＵＴと略す）により色空間変換処理（前段色処理）が施され、Ｒ´，Ｇ´，Ｂ´の各色８ビットのデータに変換される。この色空間変換処理は、入力画像の色空間（カラースペース）と出力装置の再現色空間の差を補正するために行われる。
【００２４】
色空間変換処理を施された各色８ビットのデータＲ´，Ｇ´，Ｂ´は、次の３次元ＬＵＴ４２によりＣ（シアン），Ｍ（マゼンタ），Ｙ（イエロー），Ｋ（ブラック）の各色８ビットのデータに変換される。この処理は色変換処理（後段色処理）と称され、入力系のＲＧＢ系データから出力系のＣＭＹＫ系データに変換するものである。すなわち、この後段色処理は、加法混色の３原色（ＲＧＢ）である入力データを、プリンタなどの光の反射で色を表現する場合に用いられる減法混色の３原色（ＣＭＹ）に変換するものである。
【００２５】
前段色処理および後段色処理に用いられる３次元ＬＵＴ４１，４２は、離散的にデータを保持しており、そのデータ出力の際には補間処理が利用される。
【００２６】
後段色処理が施されたＣ，Ｍ，Ｙ，Ｋの各色８ビットのデータは、１次元ＬＵＴを有する出力γ補正処理部４３で濃度補正処理（出力γ補正）が施される。即ち、単位面積当たりの印字ドット数と出力濃度特性（反射濃度など）との関係は通常は線形関係とはならないので、出力γ補正を施すことで、Ｃ，Ｍ，Ｙ，Ｋの８ビットの入力レベルと、その時の出力特性との線形関係とを補償する。
【００２７】
この１次元ＬＵＴには、γ補正テーブル生成記憶部４６によって、当該印刷モード（マルチパス印字処理、ヌルスキップ処理など）に対応する最適なγ補正テーブルが設定記憶されるようになっている。その詳細は後述する。
【００２８】
また、ヌルスキップが行われる際には、出力γ補正処理部４３では、濃度補正処理前の多値印字データに基づいて、各ラスタラインがヌル（空白（零）データ）であるか否かを判定し、この判定結果に基づいて濃度補正を行うラスタラインを決定するようにしており、前述のとおり濃度補正を行っていないラスタラインを識別させる未補正フラグＦc（濃度補正を行っていないときにオン）をラスタ番号に対応付けてプリンタ装置２へ出力する。
【００２９】
色処理部４０から出力されるＣ，Ｍ，Ｙ，Ｋ各色の８ビットの多値データは量子化処理部４４の２値化処理部４５に入力される。２値化処理部４５では、周知の誤差拡散法を用いて、入力されたＣ，Ｍ，Ｙ，Ｋの各色分の８ビットの多値データをＣ，Ｍ，Ｙ，Ｋ各色分の１ビットの２値データに量子化する。
【００３０】
間引き処理部４７は、マルチパス印字が行われるときに機能するもので、２値化処理部４５から出力される各ラスタ毎の２値データをマルチパス数Ｎpに応じたデューディ（パス数Ｎpが２のときは５０％のデューティ）で間引きし、間引きしたデータをＮp回に分けて、プリンタ装置２に出力する。なお、間引き処理は、プリンタ装置２によって行うことも可能である。
【００３１】
図３はインクジェット記録装置２の機構部の構成を概念的に示すもので、紙或いはプラスチックシートなどの記録媒体２０は、給紙ローラ（不図示）によって一枚ずつ供給され、一定間隔を隔てて配置された第１搬送ローラ対２１及び第２搬送ローラ対２２によって矢印Ａ方向に搬送される。これらローラ対２１，２２は、ステッピングモータによって駆動される。
【００３２】
キャリッジ２３には、インクジェット式の記録ヘッド２４およびインクタンク（図示せず）が装填されている。この場合、記録ヘッド２４はカラー記録用のもので、イエロー、マゼンタ、シアン、ブラックに対応する４個のヘッド２４Ｙ、２４Ｍ、２４Ｃ、２４Ｋを備えている。キャリッジ２３には、ベルト２５及びプーリ２６ａ，２６ｂを介してキャリッジモータ２７が連結しており、キャリッジ２３はキャリッジモータ２７を駆動源としてガイドシャフト２８に沿って矢印Ｂ方向に往復走査するように構成されている。
【００３３】
各記録ヘッド２４Ｙ、２４Ｍ、２４Ｃ、２４Ｋには、複数のノズルが用紙搬送方向Ａに平行な方向に列設（この場合は一列とする）されており、これら複数のノズルを介してインク滴が吐出される。この場合は、熱エネルギー源としての電気熱変換体を各ノズルに対応して設け，これらの電気熱変換体を駆動することによってインクに膜沸騰を生じさせてインクを吐出する方式のものを採用するようにしている。
【００３４】
この構成によれば、記録ヘッド２４は、矢印Ｂ方向に移動しながら画信号に応じてインクを記録媒体１に吐出して記録媒体２０上にインク像を形成する。記録ヘッド２４がホームポジションに戻ったときに、このホームポジションに設けられたヘッド回復装置２９により記録ヘッド２４のノズルの目づまりが解消される。この回復装置２９は、必要に応じて適宜のタイミングで駆動される。記録ヘッド２４のスキャンによって１バンド分の記録を終了した後に、搬送ローラ対２１，２２によって所定量の紙送り（ピッチ搬送）が行われる。このような動作を繰り返すことによって、記録媒体２０上に記録が行われる。
【００３５】
つぎに、図４を用いてインクジェット記録装置２の制御系の構成について説明する。この制御系においては、コントローラ３０は、例えばマイクロプロセッサ等のＣＰＵ３０ａ、該ＣＰＵ３０ａの制御プログラムや各種データを格納しているＲＯＭ３０ｃ、及びＣＰＵ３０ａのワークエリアとして使用されると共にホストコンピュータ１から入力された印字データなどの各種データの一時保管等を行うＲＡＭ３０ｂ等を備えている。
【００３６】
また、このインクジェット記録装置２は、キャリッジモータ２７、給紙モータ３１、第１搬送ローラ対駆動用のモータ３２および第２搬送ローラ対駆動用のモータ３３などの複数のモータを備えており、これら各モータはインターフェース３４およびモータドライブ回路３５を介したコントローラ３０の制御によって動作される。
【００３７】
記録ヘッド２４には、複数のノズルを介してインクを吐出させるために複数の電気変換素子３６が各ノズル毎に備えられており、これら複数の電気熱変換素子３６はインターフェース３４およびヘッドドライブ回路３７を介したコントローラ３０の制御に基づき画信号に応じてオンオフ駆動される。
【００３８】
コントローラ３０は、インターフェース３４を介して操作パネル３８からの各種印刷情報（例えば文字ピッチ、文字種類等）を受け入れるとともに、インターフェース３４を介してホストコンピュータ１から印字データを受入する。
【００３９】
ここで、プリンタ装置２のコントローラ３０には、ホストコンピュータ１から入力された２値印字データおよび前記未補正フラグを用いて、ヌルスキップを実行させるラスタラインを判定するヌルスキップ判定部５０を備えている。このヌルスキップ判定部５０は、濃度補正処理および２値化処理が加えられた後の最終的な２値印字データに基づいて、ヌルスキップを実行させるラスタラインを判定するものである。また、濃度補正処理前はヌルではなかったラスタラインが、濃度補正処理または２値化処理が加えられることで、ヌルラスタラインになることがあるので、ヌルスキップ判定部４８では、濃度補正処理および２値化処理が加えられた後の最終的な２値印字データに基づいて、ヌルスキップを実行させるラスタラインを判定し、このヌルスキップの判定の際には、ホストコンピュータ１から入力された未補正フラグＦcを参照するようにしている。これは、濃度補正前はヌルではなく、濃度補正処理の後にヌルとなったラスタをスキップしてしまうと、各ノズル毎に用意された複数の濃度補正テーブルが実際使われているノズルに整合しなくなるばかりか、元画像を忠実に再現することもできなくなるからであり、このようなラスタはスキップさせない。
【００４０】
つぎに、プリンタ装置２側でマルチパス印字を行う場合の、ホストコンピュータ１側での前処理の概略について説明する。
【００４１】
プリンタ装置２側で実行されるマルチパス印字を、ホストコンピュータ１側でシミュレートするには、
（a）接続されたインクジェット記録装置２の記録ヘッドの全使用ノズル数Ｎn
（b）マルチパス印字のパス数（記録ヘッドの分割数）Ｎp
が必要になる。
【００４２】
全ノズル数Ｎnに関しては、プリンタ装置２側に予めこのＮnに関するデータを記憶させておき、この記憶データＮnをプリンタ装置２から受け取ることで実現できる。なお、インクタンクの交換の際に、インクタンク（カートリッジ）のみを交換する形式と、記録ヘッド自体を交換する形式のものがあり、前者の場合はプリンタ装置２本体側にＮnに関するデータを記憶させ、後者の場合は記録ヘッド自体にＮnに関するデータを記憶させるようにすればよい。また、ホストコンピュータ１のプリンタドライバ側に、プリンタ機種毎または記録ヘッドのタイプ毎に全ノズル数Ｎnに関する情報が記憶されたテーブルを用意し、プリンタ装置又は記録ヘッドから機種またはヘッドタイプの情報を受け取ることで、接続されたプリンタ装置２の全ノズル数を識別することもできる。
【００４３】
マルチパス数Ｎpに関しては、ホストコンピュータ１のプリンタドライバのユーザインターフェース（ＵＩ）画面を介した、ユーザによる直接または間接の選択によって決定されるので、ホストコンピュータ１は元々この情報を持っていることになり、プリンタ装置２と情報のやり取りを行う必要はない。たとえば、上記ＵＩ画面の印刷モードを選択する画面においては、文章／表、ＤＴＰ印刷、イメージ処理などの印刷モードを選択する部分があり、この選択画面で、適宜の印刷モードが選択されると、マルチパス数Ｎpが１パス、２パス、４パス、…などのうちの１つに一義的に決められる。すなわち、プリンタドライバにおいては、マルチパス数Ｎpと印刷モードとの対応関係を予め記憶しており、選択された印刷モードに対応するマルチパス数Ｎpを選択し、この選択したパス数Ｎpによるマルチパス印字をプリンタ装置２に実行させる。上述のとおり、本例では、間引き処理と紙送り量は、プリンタドライバが指定しているが、マルチパス数Ｎpをプリンタ装置２に知らせることにより、プリンタ装置２自身が間引き処理と紙送り量の指定を行うようにしてもよい。
【００４４】
マルチパス印字用の出力γ補正テーブルを、次のようにしてセットする。
【００４５】
第１の方式では、当該プリンタドライバがカバーしている全てのプリンタ機種について、全てのノズル数Ｎnおよびパス数Ｎpの組み合わせに対応する標準的な補正テーブルをプリンタドライバに予め夫々設定記憶しておき、プリンタ装置２側から得られたノズル数Ｎnの情報と、前述のようにして得られたパス数Ｎpの情報とに対応する補正テーブルを選択する。
【００４６】
第２の方式では、インク交換の際に、インクカートリッジのみを交換する形式の場合は、プリンタ装置本体のメモリに当該プリンタ装置の記録ヘッドに対応するマルチパス印字用の補正テーブルを、各ノズル数Ｎnおよび各パス数Ｎpに応じて複数個予め工場出荷段階で記憶させる。また、インク交換の際に、記録ヘッドも共に交換する形式のものでは、これらインクタンク及び記録ヘッドを一体的に構成した記録ヘッドモジュールのメモリに当該記録ヘッドに対応するマルチパス印字用の補正テーブルを、各パス数Ｎpに応じて複数個予め工場出荷段階から記憶させる。これらの第２の方式では、ホストコンピュータ１は、プリンタ装置あるいは記録ヘッドに記憶された補正テーブルから当該マルチパス印字に対応するものを選択して、選択したものをプリンタ装置２側から受け取ることになる。
【００４７】
第３の方式では、まず先の第１の方式あるいは第２の方式などの手法を用いて、当該マルチパス印字に対応する複数種類（異なる補正データを持つ）の補正テーブルを得る。そして、このような異なる補正データをそれぞれ用いて実際にγ補正を行い、これらのγ補正結果を用いてマルチパス印字を行って、各γ補正に対応するテストパターンを印字させる。そして、印字した複数のテストパターンのなかで記録品質が最もよいものをユーザに選択させ、この選択されたテストパターンに対応する補正テーブルを採用する。この第３の方式では、工場出荷後にもγ補正テーブルを変更することができるので、ノズル特性の経年変化などにも好適に対処することができる。
【００４８】
一方、プリンタ装置２側では、マルチパス印字が行われる場合、ホストコンピュータ１側から入力された濃度補正済みで間引き処理済みの２値印字データに基づいて記録ヘッドの駆動制御を実行するとともに、ノズル数Ｎnを指定されたパス数Ｎpで割ったＮn／Ｎpを１ピッチとする記録媒体の搬送制御を行う。
【００４９】
つぎに、ヌルスキップを行う場合にも濃度補正を行うための、ホストコンピュータ１側での前処理について説明する。
【００５０】
出力γ補正処理のアルゴリズムを決定するために、ヌルスキップをシミュレートするには、ホストコンピュータ１側では、接続された当該機種のインクジェット記録装置２で採用されている最低スキップラスタライン数を知る必要がある。この最低スキップライン数としては、１ラスタ毎、８ラスタ単位、記録ヘッドのノズル数単位、ノズル数Ｎn／パス数Ｎpに対応するラスタ数（マルチパス印字を行う場合）などがある。したがって、プリンタ装置２側に予めこの最低スキップライン数ｍに関するデータを記憶させておき、この記憶データｍをプリンタ装置２から受け取るようにする。なお、文章／表印字、ＤＴＰ印刷、イメージ処理などの印刷モードに応じて最低スキップライン数が一義的に決められている方式のものでは、プリンタ装置２側から最低スキップラスタライン数の情報を受け取ることは必要ない。
【００５１】
また、最低スキップライン数ｍに応じてヌルスキップの際の出力γ補正の処理内容が異なるので、ホストコンピュータ１のプリンタドライバに、これら各最低スキップライン数ｍに対応する出力γ補正処理のプログラムを夫々予め記憶させておき、ホストコンピュータ１では、プリンタ装置２側から得られた当該プリンタ装置の最低スキップライン数ｍに対応する出力γ補正処理を実行させる。
【００５２】
〔マルチパス印字処理〕
次に、ホストコンピュータ１側で行われる濃度補正処理およびプリンタ装置２側で行われるマルチパス印字処理についてより具体的に説明する。ここでは、１つの記録ヘッドに２５６ノズルが並設され（Ｎn＝２５６）、マルチパス印字は２パス印字を行うものとする（Ｎp＝２）。この場合、２５６ノズルで２パス印字を行うので、先頭の第１ラスタは第１ノズルと第１２８ノズル、第２ラスタは第２ノズルと第１２９ノズル、…、というようなノズルの組み合わせで、画像が形成される。したがって、この場合、吐出量や吐出方向の違いによるラスタ単位の濃度分布は１２８ラスタ周期で発生することになる。
【００５３】
最初に、プリンタ装置２側で行われるマルチパス印字をシミュレートすることによって、ホストコンピュータ１側が行う濃度補正処理について図５を用いて説明する。
【００５４】
出力γ補正処理は、図４の出力γ補正処理部４３で行われるが、この場合は、２５６ノズルで２パス印字がおこなわれるので、１２８ラスタ分、１２８個の補正テーブルが各色Ｙ，Ｍ，Ｃ，Ｋ毎に、１次元ＬＵＴにセットされる。出力γ補正処理部４３に入力されるＣ，Ｍ，Ｙ，Ｋ各色のデータが８ビット（２５６階調）の多値データであるので、これに対応して１次元ＬＵＴの各補正テーブルも２５６階調の多値データとする。上記１２８個の補正テーブルは、第１ノズルと第１２９ノズルの双方の吐出特性が考慮されて第１ノズルおよび第１２９ノズルで共用の１つのラスタライン用の第１補正テーブル（テーブル番号Ｎt＝１とする）と、同様に第２ノズルと第１３０ノズルで共用の第２補正テーブル（テーブル番号Ｎt＝２とする）と、第３ノズルと第１３１ノズルで共用の第３補正テーブル（テーブル番号Ｎt＝３とする）と、……、第１２７ノズルと第２５６ノズルで共用の第１２８補正テーブル（テーブル番号Ｎt＝１２８とする）とを備えている。
【００５５】
出力γ補正処理部４３では、これら１２８個の補正テーブルを用いて出力γ補正はつぎのようにして実行する。
【００５６】
まず、テーブル番号Ｎtおよび処理するラスタ番号Ｎrを夫々０に初期化する（ステップ１００）。つぎに、テーブル番号Ｎtを次式を用いて＋１する（ステップ１０１）。
【００５７】
Ｎt＝（Ｎt＋１）％（Ｎn／Ｎp）
Ｎn：ノズル数（この場合、Ｎn＝２５６）
Ｎp：パス数（この場合、Ｎp＝２）
上式において、「％」は、商を自然数とする除算（Ｎt＋１）÷（Ｎn／Ｎp）の剰余を示しており、この式はテーブル番号Ｎtを１から１２８まで順次インクリメントさせる動作を何回も繰り返させるために用いている。上式において、最初は、右辺のＮt＝０であるので、左辺のＮtは１となる。
【００５８】
つぎに、ラスタ番号Ｎrを＋１する（ステップ１０２）。この段階で、Ｎt＝１，Ｎr＝１となる。したがって、ラスタ番号Ｎr＝１のラスタデータに対して、テーブル番号Ｎt＝１の補正テーブルを使用して出力γ補正を実行する（ステップ１０３）。
【００５９】
つぎに、例えば１ページ分に対応する全てのラスタデータに関する濃度補正が終了したか否かを判断する（ステップ１０４）。この段階では、ステップ１０４の判断はNOであるので、つぎに、ステップ１０１および１０２の手順を再実行することで、テーブル番号Ｎtおよびラスタ番号Ｎrを＋１した後、ステップ１０３の手順を実行することで、今度はラスタ番号Ｎr＝２のラスタデータに対して、テーブル番号Ｎt＝２の補正テーブルを使用して出力γ補正を実行する。
【００６０】
以下は同様であり、Ｎr＝１〜１２８までの１２８個のラスタデータに対して１２８個の別々の補正テーブルを用いて順次出力γ補正を実行していく。
【００６１】
テーブル番号Ｎtは、ステップ１０１の処理により１から１２８までインクリメントされる動作が繰り返される一方、ラスタ番号Ｎrはステップ１０４で濃度補正処理の終了が判定されるまでは単に＋１ずつインクリメントされるに過ぎない。
【００６２】
したがって、つぎのＮr＝１２９〜２５６までの１２８個のラスタデータに対しても、前記と同じ１２８個の補正テーブルを用いた出力γ補正が順次実行されることになる。以下、ステップ１０４において全てのラスタデータに関する濃度補正が終了したと判断されるまで、同様の処理が繰り返される。
【００６３】
このようにして、出力γ補正処理部４３で出力γ補正が施されたデータは、量子化処理部４４で２値化され、さらに間引き処理部４７で間引き処理（この場合は２パス印字であるので１／２ずつに間引かれる）が加えられた後、プリンタ装置２へ出力される。
【００６４】
次に、図６および図７を用いてプリンタ装置２で行われる印字動作について説明する。図６はプリンタ装置２のコントローラ３０で行われる印字搬送制御の処理手順を示すもので、図７はその印字および用紙搬送動作の具体例を模式的に示すものである。
【００６５】
プリンタ装置２のコントローラ３０は、最初に、領域カウンタのカウント値ｎを１にセットする（ステップ１１０）。１領域は、ノズル数／パス数に対応するラスタブロックであり、この場合１領域は１２８ラスタである。
【００６６】
つぎに、コントローラ３０は、ホストコンピュータ１から入力された印字データを調べることによって、領域カウンタのカウント値ｎで指定された領域ｎに印字データが存在するか否か、すなわち領域１が全てヌルであるか否かを判別する（ステップ１１１）。そして、印字データが存在すると判別されると、記録ヘッドをスキャンし、２５６ノズル分の印字動作を実行させる（ステップ１１２）。この印字動作が終了すると、今回のマルチパス印字に対応する紙送りを実行させる（ステップ１１３）。今回は、２パス印字であるので、１ピッチは１２８ノズル分となる。つぎに、領域カウンタｎを＋１する（ステップ１１４）。
【００６７】
一方、ステップ１１１の判定において、領域ｎに印字データが存在しないと判別されると、つぎに（ｎ−ｄ）領域までに印字データが存在するか否かを判別する。ｄ＝Ｎp−１であり、２パス印字の場合は１つ前の１つの領域（ｎ−１）が調べられ、３パス印字の場合は、２つ前の領域までの２つの領域（ｎ−１）および領域（ｎ−２）が調べられる。
【００６８】
この判定の結果、印字データがあると判断された場合は、記録ヘッドをスキャンし、２５６ノズル分の印字動作を実行させる（ステップ１１２）。
【００６９】
しかし、上記判定の結果、印字データが存在しないと判断されると、記録ヘッドのスキャンを行わないで、１記録ヘッド分すなわち２５６ノズル分の紙送りのみ実行する（ステップ１１７）。すなわちこの場合は、通常の搬送動作より１２８ノズル分だけ搬送動作をスキップさせるようにしている。
【００７０】
なお、図６の場合は、ノズル数Ｎn／パス数Ｎpを最低単位としてヌルスキップ動作を行うようにしているので、どのようなヌルスキップを行っても、各濃度補正データと実印字ラスタとの対応関係が崩れることはないので、ホストコンピュータ１側では、プリンタ装置２側で行うヌルスキップをシミュレートしていない。
【００７１】
つぎに、図７の具体例を用いて説明する。図７では、領域１、領域４および領域５に印字データが存在し、領域２および領域３には印字データが存在しないものとする。
【００７２】
領域１にはデータが存在するので、ｎ＝１のときにはステップ１１１の判断はYESとなって、１スキャン目の間引きデータが印字される（ステップ１１２）。最初の領域１の場合は、記録ヘッドの下側の１２８個のノズルを使用して間引きデータが印字される。続いて、１２８ラスタ分の紙送りが実行された後（ステップ１１３）、領域カウンタｎが＋１され、ｎ＝２となる。
【００７３】
領域２では、印字データは存在しないため、ステップ１１１の判断はNOとなって、つぎにステップ１１６において、領域（ｎ−１）、すなわち領域１に印字データが存在したか否かを判別する。この場合、領域１には、印字データが存在しているので、記録ヘッドをスキャンし、２５６ノズル分の印字動作を実行させる（ステップ１１２）。この際、領域１にデータが存在して、領域２にはデータが存在していないので、結果的に記録ヘッドの上側の１２８個のノズルに対応する電気熱変換素子のみが駆動されて、領域１の間引き印字データの残りデータ分のみが印字されることになる。続いて、１２８ラスタ分の紙送りが実行された後（ステップ１１３）、領域カウンタｎが＋１され、ｎ＝３となる。
【００７４】
領域３では、印字データは存在しないため、ステップ１１１の判断はNOとなって、つぎにステップ１１６において、領域（ｎ−１）、すなわち領域２に印字データが存在したか否かを判別する。この場合、領域２には、印字データが存在していないので、今回は記録ヘッドの２５６個のノズルに対応する２５６ラスタ全てヌルデータであると判断し、記録ヘッドのスキャンを行わないで、１記録ヘッド分、すなわち２５６ノズル分の紙送りのみを実行して、ヌルスキップさせる（ステップ１１７）。続いて、領域カウンタｎが＋１され、ｎ＝４となる。
【００７５】
領域４にはデータが存在するので、ステップ１１１の判断はYESとなり、記録ヘッドをスキャンし、２５６ノズル分の印字動作を実行させる（ステップ１１２）。この際、領域３にデータが存在せず、領域４にはデータが存在しているので、結果的に記録ヘッドの下側の１２８個のノズルに対応する電熱変換素子のみが駆動されて、領域４の間引き印字データが印字されることになる。続いて、１２８ラスタ分の紙送りが実行された後（ステップ１１３）、領域カウンタｎが＋１され、ｎ＝５となる。
【００７６】
領域５にはデータが存在するので、ステップ１１１の判断はYESとなり、記録ヘッドをスキャンし、２５６ノズル分の印字動作を実行させる（ステップ１１２）。この際、領域４および領域５にはデータが存在しているので、記録ヘッドの上下の２５６個のノズルに対応する電熱変換素子が駆動されて、領域４の間引き印字データの残りデータ分及び領域５の間引き印字データが印字されることになる。続いて、１２８ラスタ分の紙送りが実行された後（ステップ１１３）、領域カウンタｎが＋１され、ｎ＝６となる。
【００７７】
領域６には、実際にはデータが存在しないが、ステップ１１１の判断において印字データが存在しないものとして判断させる。したがって、ステップ１１６において、領域（ｎ−１）、すなわち領域５に印字データが存在したか否かを判別する。この場合、領域５には、印字データが存在しているので、記録ヘッドをスキャンし、２５６ノズル分の印字動作を実行させる（ステップ１１２）。この際、領域５にデータが存在して、領域６にはデータが存在していないので、結果的に記録ヘッドの上側の１２８個のノズルに対応する電熱変換素子のみが駆動されて、領域５の間引き印字データの残りデータ分のみが印字されることになる。続いて、１２８ラスタ分の紙送りが実行された後（ステップ１１３）、領域カウンタｎが＋１され、ｎ＝７となる。
【００７８】
この場合は、ｎ＝７となった段階で、ステップ１１５において処理終了と判定されることにする。
【００７９】
この図５〜図７を用いて説明したように、プリンタ装置２側で行うマルチパス印字をホストコンピュータ1側でシミュレートしているため、マルチパス印字の際の１ライン分の記録に用いる複数のノズルの組み合わせ毎に各別の濃度補正データを用意し、これらの濃度補正データを用いて濃度補正を行うことで、各濃度補正テーブルが実際の印字ノズル（複数のノズルの組み合わせ）と完全に整合するようになり、マルチパス印字が行われる場合においても、濃度ムラ、濃度すじをなくし、画像品質を向上することができる。また、プリンタ装置２側では、ヌル領域を検出してヌルスキップを行うようにしているので、より高速な印字が可能となる。
【００８０】
〔ヌルスキップ処理〕
次に、他の実施形態を示す図８〜図１０を用いてプリンタ装置２側においてヌルスキップ処理が行われる場合のホストコンピュータ1側での濃度補正処理について具体的に説明する。ここでは、先の実施形態同様、１つの記録ヘッドに２５６ノズルが並設されるものとし、またプリンタ装置２側で行われるヌルスキップの最低単位は１ラスタラインであるとする。また、この場合、簡単化のために、マルチパス印字は行わないものとする。
【００８１】
最初に、図８を用いて、上記プリンタ装置２側で行われるヌルスキップ処理をシミュレートすることによって、ホストコンピュータ１の出力γ補正処理部４３（図４）で行われる濃度補正処理について説明する。
【００８２】
この場合は２５６ノズルで１パス印字が行われるので、γ補正テーブル生成記憶部４６によって通常どおりの２５６ラスタ分の補正テーブルが各色Ｙ，Ｍ，Ｃ，Ｋ毎に、１次元ＬＵＴとしてセットされる。
【００８３】
まず、テーブル番号Ｎtを０に初期化し、また処理するラスタ番号Ｎrを１に初期化する（ステップ２００）。つぎに、このＮr＝１のラスタラインがヌルであるか否かを判定する（ステップ２０１）。このヌル判定は、前述したように、３次元ＬＵＴ４２から出力される多値データを用いて行われる。
【００８４】
このＮｒ＝１のラスタラインがヌルでない場合は、テーブル番号Ｎtを前述と同様の式
Ｎt＝（Ｎt＋１）％（Ｎn／Ｎp）
を用いて＋１する（ステップ２０２）。上式では、マルチパス印字とヌルスキップの双方が行われる一般式を示している。この場合はマルチパス印字を行わないので、Ｎp＝１である。この段階で、Ｎt＝１，Ｎr＝１となる。そして、ラスタ番号Ｎr＝１のラスタデータに対して、テーブル番号Ｎt＝１の補正テーブルを使用して出力γ補正を実行する（ステップ２０３）。
【００８５】
この補正動作終了後、ラスタ番号Ｎrを＋１する（ステップ２０４）。つぎに、例えば１ページ分に対応する全てのラスタデータに関する濃度補正が終了したか否かを判断する（ステップ２０５）。この段階では、ステップ２０５の判断はNOであるので、手順はステップ２０６に移行する。ステップ２０６においては、Ｎn／Ｎp個のノズル数分（この場合２５６個）の出力γ補正動作が終了したか否かを判定する。この段階では、まだ１個分の濃度補正しか行っていないので、ステップ２０６の判断はNOとなり、手順はステップ２０２に移行する。
【００８６】
そして、ステップ２０２の手順を再実行することで、テーブル番号Ｎtを＋１した後、ステップ２０３の手順を実行することで、今度はラスタ番号Ｎr＝２のラスタデータに対して、テーブル番号Ｎt＝２の補正テーブルを使用して出力γ補正を実行する。
【００８７】
このように、ステップ２０１の判断が一旦YESとなった場合は、ステップ２０２〜２０６のループをＮt／Ｎp回（この場合２５６回）繰り返すことで、ステップ２０１の判断がYESとなった段階でのラスタ番号Ｎｒ以降の、２５６ラスタ分の濃度補正を順次実行していく。
【００８８】
そして、Ｎt／Ｎp分のラスタラインの補正が終了すると（ステップ２０６）、テーブルナンバＮtを０にセットして（ステップ２０７）、手順をステップ２０１に復帰させる。
【００８９】
ステップ２０１において、当該ラスタ番号Ｎrのラスタデータがヌルであると判断された場合は、未濃度補正フラグＦcをオンにする（ステップ２１０）。このフラグＦcは、ヌルスキップ判定部４８でヌルスキップの有無を判定する際に使用される。つぎに、テーブル番号Ｎtを０に初期化した後（ステップ２１１）、ラスタ番号Ｎtを＋１する（ステップ２１２）。すなわち、未濃度補正フラグＦcをオンにしたラスタラインに関しては、濃度補正処理は行わない。ヌルラスタを補正する必要がないからである。ステップ２１１でテーブル番号Ｎtを０に初期化するのは、プリンタ装置２側でヌルラスタをスキップした後の印字領域において、先頭のラスタは第１ノズルが印字することから、ノズルとγ補正テーブルとを整合させるためである。
【００９０】
つぎに、全てのラスタデータに関する濃度補正が終了したか否かを判断し（ステップ２１３）、終了していれば処理を終了し、そうでなければ手順をステップ２０１に復帰させる。
【００９１】
このような処理を、全ラスタに関して実行する。そして、未補正フラグＦcはラスタ番号Ｎrに対応付けられてプリンタ装置２へ出力される。
【００９２】
つぎに、図８の処理内容を、図１０に示した具体例を用いて説明する。
【００９３】
図１０の場合は、第１ラスタ〜第１０ラスタ、第４４９ラスタ〜第４６０ラスタ、第６８０ラスタ〜第７０５ラスタ、第１０２６ラスタ〜第１２８０ラスタに、濃度補正前の多値印字データの段階で、零以外のデータ（ヌルではない）が存在するとし、それ以外は、図８のステップ２０１でヌルであると判断されるラスタラインであるとする。
【００９４】
図１０においては、第１ラスタ（Ｎr＝１）には、印字データが存在するので、Ｎr＝１のときステップ２０１の判断はYESとなり、これにより、ステップ２０２〜２０６のループが２５６回繰り返されることで、第１ラスタ（Ｎr＝１）〜第２５６ラスタ（Ｎｒ＝２５６）までの２５６ラスタ分の濃度補正が順次実行される。
【００９５】
つぎに、第２５７ラスタ（Ｎr＝２５７）〜第４４８ラスタ（Ｎr＝４４８）は、ヌルであるので、ステップ２１０〜ステップ２１３が繰り返されることで、これら各ラスタにはオンのフラグＦcが付与されるのみで、出力γ補正は行われない。
【００９６】
つぎに、第４４９ラスタには、印字データが存在するので、Ｎr＝４４９のときステップ２０１の判断はYESとなり、これにより、ステップ２０２〜２０６のループが２５６回繰り返されることで、第４４９ラスタ（Ｎr＝４４９）〜第７０５ラスタ（Ｎｒ＝７０５）までの２５６ラスタ分の濃度補正が順次実行される。このとき、第４４９ラスタはヌルスキップのために第１ノズルによって印字されるので、第４４９ラスタに対する濃度補正は、テーブル番号Ｎt＝１によって行われる。
【００９７】
次に、第７０６ラスタ（Ｎr＝７０６）〜第１０２５ラスタ（Ｎr＝１０２５）はヌルであるので、ステップ２０１〜ステップ２１３が繰り返されることで、これら各ラスタにはオンのフラグＦcが付与されるのみで、出力γ補正は行われない。
【００９８】
つぎに、第１０２６ラスタには、印字データが存在するので（多値段階では）、Ｎr＝１０２６のときステップ２０１の判断はYESとなり、これにより、ステップ２０２〜２０６のループが２５６回繰り返されることで、第１０２６ラスタ（Ｎr＝１０２６）〜第１２８０ラスタ（Ｎｒ＝１２８０）までの２５６ラスタ分の濃度補正が順次実行される。
【００９９】
次に、図９を用いて、プリンタ装置２のコントローラ３０で行われるヌルスキップ判定処理およびヌルスキップ印字制御動作について説明する。
【０１００】
コントローラ３０のヌルスキップ判定部５０では、ホストコンピュータ１から入力される２値の印字データに基づいてヌルスキップを行うか否かを各ラスタライン毎に判定する。まず、ヌルスキップ判定部４８は、判別ラスタ番号Ｎdrを１にセットする（ステップ２２０）。つぎに、このＮdr＝１のラスタがヌルラインであるか否かを判定する（ステップ２２１）。
【０１０１】
この判定の結果、当該ラスタラインがヌルでない場合は、記録ヘッドをスキャンし、当該ラスタラインから連続するノズル数Ｎn分のラスタの印字動作を実行させる（ステップ２２２）。つぎに、ノズル数Ｎn分の紙送りを実行し（ステップ２２３）、さらに判別ラスタ番号Ｎrをノズル数Ｎnだけ加算する（ステップ２２４）。
【０１０２】
一方、前記ステップ２２１の判定で、当該ラスタラインＮdrがヌルであると判定された場合は、一般的には、ヌルスキップを行っているが、本実施形態では、濃度補正されたラスタとそれに対応するノズルの関係を保つために、濃度補正された結果、ヌルデータとなったラスタに対してはスキップを行わない。これを行うため、ホストコンピュータ１からの前記未補正フラグＦcを参照し、当該ラスタラインの未補正フラグＦcのオン／オフを判定している（ステップ２２６）。そして、フラグＦcがオフの場合は、ヌルスキップを行うことなく、手順をステップ２２２に移行させ、前記同様、記録ヘッドをスキャンし、当該ラスタラインから連続するノズル数Ｎn分のラスタの印字動作を実行させ、ノズル数Ｎn分の紙送りを実行し、さらに判別ラスタ番号Ｎdrをノズル数Ｎnだけ加算する（ステップ２２２〜２２４）。
【０１０３】
しかし、ステップ２２６の判定で、フラグＦcがオンの場合は、ホストコンピュータ１側でも、プリンタ装置２側でヌルスキップを行うことをシミュレートしているので、１ラスタ分の紙送りのみを実行して１ラスタスキップする（ステップ２２７）。そして、判別ラスタ番号Ｎdrを＋１する（ステップ２２８）。
【０１０４】
このような処理を全ラスタに対して実行する（ステップ２２５）。
【０１０５】
つぎに、図９の処理内容を先の図１０に示した具体例を用いて説明する。
【０１０６】
図１０において、第１ラスタ（Ｎdr＝１）は、印字データが存在しているので、Ｎdr＝１のときステップ２２１の判断はNOとなり、これによりステップ２２２の手順が実行されることで、第１ラスタ（Ｎdr＝１）〜第２５６ラスタ（Ｎdｒ＝２５６）までの２５６ラスタ分の印字動作が実行される。勿論、この際、実際に印字データが存在する第１〜第１０ラスタに対応するノズルのみが駆動されて、第１〜第１０ラスタにのみ画像データが形成される。このスキャンの後、用紙が２５６ラスタ分搬送される（ステップ２２３）。
【０１０７】
つぎに、第２５７ラスタ（Ｎdr＝２５７）〜第４４８ラスタ（Ｎdr＝４４８）はヌルであり、かつフラグＦcがオンであるので、これらのラスタはヌルスキップされる。
【０１０８】
つぎに、第４４９ラスタは、印字データが存在しているので、Ｎdr＝４４９のときステップ２２１の判断はNOとなり、これによりステップ２２２の手順が実行されて記録ヘッドが１スキャンされることで、第４４９ラスタ（Ｎdr＝４４９）〜第７０５ラスタ（Ｎdｒ＝７０５）までの２５６ラスタ分の印字動作が実行される。勿論、この際、実際に印字データが存在する第４４９〜第４６０ラスタ、第６８０〜第７０５ラスタにのみ画像データが形成される。このスキャンの後、用紙が２５６ラスタ分搬送される（ステップ２２３）。
【０１０９】
つぎに、第７０６ラスタ（Ｎdr＝７０６）〜第１０２５ラスタ（Ｎdr＝１０２５）はヌルであり、かつフラグＦcがオンであるので、これらのラスタはヌルスキップされる。
【０１１０】
第１０２６ラスタ〜第１１００ラスタは、ヌルであるが、フラグＦcがオフであるので、Ｎr＝１０２６のときステップ２２６の判断はNOとなり、これによりステップ２２２の手順が実行されて記録ヘッドが１スキャンされることで、第１０２６ラスタ（Ｎdr＝１０２６）〜第１２８０ラスタ（Ｎdｒ＝１２８０）までの２５６ラスタ分の印字動作が実行される。このスキャンの後、用紙が２５６ラスタ分搬送される（ステップ２２３）。すなわち、第１０２６ラスタ〜第１１００ラスタは、フラグＦcによって濃度補正後にヌルとなったものと判定されるので、これらのラスタがヌルスキップされることはない。
【０１１１】
このようにこの実施形態においては、プリンタ装置２側でヌルスキップを行う場合でも、ホストコンピュータ１側でその記録動作をシミュレートしているので、各ノズル毎に用意された複数の濃度補正テーブルと実際の印字ノズルとを常に整合させて濃度補正を行うことができる。
【０１１２】
因みに、図１０の場合は、１２８０ラスタ分のデータを本来であれば５スキャン必要なのに対して、３スキャンの印字動作で完成させることが可能となる。
【０１１３】
すなわち、先の図５〜図７の実施形態では、１領域、１２８ラスタ単位でヌルの有無を判別してヌルスキップを実行するか否かを決定するようにしていたので、１２８ラスタ以下のヌルラスタデータが存在した場合にも、無駄なスキャンを実行する必要があったが、本実施形態では、１ラスタ単位のヌルスキップが可能となるので、より高速に印字動作をなし得る。
【０１１４】
ところで、ヌルスキップの最低ラスタ数をｍ（≧２、たとえばｍ＝８，１６など）とする場合は、プリンタ装置２のコントローラ３０で図１１に示すようなヌルスキップ印字処理を行うようにすればよい。また、同様に、ホストコンピュータ１側でもその記録動作をシミュレートすることにより、適切な濃度補正を行うことが可能となる。
【０１１５】
この図１１のフローチャートは、先の図９のフローチャートのステップ２２６〜２２８をステップ２３０〜２３３に置換したものである。ホストコンピュータ１からは、前記同様、未補正フラグＦcが各ラスタラインに対応付けられて入力される。
【０１１６】
すなわち、図１１においては、ステップ２０１の判定がYESの場合、当該ラスタＮrから前記所定数（ｍ）の連続するラスタラインが全てヌルか否かを識別し（ステップ２３０）、これら連続するラスタラインの何れかがヌルでない場合は、ステップ２２２〜２２４の処理を実行させることで、記録ヘッドを１スキャンし、当該ラスタラインＮrからノズル数分Ｎnの連続するラスタに関して印字動作を実行させ、ノズル数Ｎn分の紙送りを実行し、さらに判別ラスタ番号Ｎdrをノズル数Ｎnだけ加算する。
【０１１７】
しかし、当該ラスタＮrから前記所定数（ｍ）の連続するラスタラインが全てヌルであると判定された場合は、これらｍ個のラスタラインについての未補正フラグＦcが全てオンか否かを判別する（ステップ２３１）。そして、これらｍ個のフラグの何れかでもオフの場合は、前記同様、ステップ２２２〜２２４の処理を実行させる。
【０１１８】
また、前記ｍ個のフラグの全てがオンの場合は、ｍラスタ分の紙送りのみを実行してｍラスタをスキップさせる（ステップ２３２）。そして、判別ラスタ番号Ｎdrを＋ｍする（ステップ２３３）。
【０１１９】
なお、マルチパス印字を行ってかつ１ラスタあるいはｍラスタ単位のヌルスキップを行わせる場合は、ホストコンピュータ１では、図８に示したように、Ｎn／Ｎp単位の濃度補正を行いかつ未補正フラグＦcをラスタ番号に対応付けて出力し、プリンタ装置側では、この未補正フラグＦcを参照してヌルスキップ判定を行うようにすればよい。
【０１２０】
また、上記実施形態においては、ホストコンピュータ１側から入力された未補正フラグＦcを参照することで、プリンタ装置２のコントローラ３０でヌルスキップを行うか否かを最終的に判定するようにした。ホストコンピュータ１で２値化処理部４５の出力をγ補正処理部４３にフィードバックし、２値化によってヌルデータになったラスタ以降をスキップして再度γ補正処理を行ってもよい。この場合、プリンタ装置２のヌルスキップ動作を完全にシミュレートできるので、プリンタ装置２へ未補正フラグＦcなどの制御情報を送出する必要がなくなる。
【０１２１】
（実施例２）
実施例２として、黒とカラーのそれぞれの記録ヘッド２４Ｙ，２４Ｍ，２４Ｃ，２４Ｋが同数の記録素子を有する場合に、ホストコンピュータ１側がプリンタ装置２の記録動作をシミュレートし、その情報に基づいて画像データの各ラスタ毎に画像処理して、画像記録を行う一例について説明する。
【０１２２】
ここでは、図１２に示すように、黒、シアン、マゼンタ、イエローの４色の記録ヘッド２４Ｙ，２４Ｍ，２４Ｃ，２４Ｋを用いる。各色の記録ヘッドはそれぞれ同数の記録素子を持っていて、それぞれ独自に画像データに応じて記録を行うことができる。ここでは、各色の記録素子数は、それぞれ８個としており、各色同時に同じ幅の画像データの記録が行える構成である。この記録素子の幅、つまり８ラスタの画像データで記録される画像を１ラインと定義する。
【０１２３】
本実施例のプリンタ装置２側での記録動作は以下のようになる。まず、黒の画像データのみの場合は、１回の走査記録で画像を完成するので、黒の記録ヘッドのＫ１〜Ｋ８の全ての記録素子を用いて記録を行う。一方、カラーの画像データが混在している場合は、複数回の走査記録で画像を完成する。ここでは各色、２回の走査記録で画像を完成するため、カラーの画像データに対して、先頭のラスタを記録素子（Ｋ１，Ｋ５）、（Ｃ１，Ｃ５）、（Ｍ１，Ｍ５）、（Ｙ１，Ｙ５）を割り当て、記録を行う。この場合、プリンタ装置２側では副走査量を１／２とすることで、１つのラスタに記録素子を２つ割り当てて記録する。このように、本実施例のプリンタ装置２側では、画像データに応じて、印字モード（走査記録回数、副方向の走査量）が設定される。
【０１２４】
次に、ホストコンピュータ１側でプリンタ装置２側の記録動作をシミュレートし、画像データに画像処理を施す方法を説明する。
【０１２５】
まず、黒のみの画像データでは、黒の記録ヘッドのＫ１〜Ｋ８の全ての記録素子を用いてプリンタ装置２が記録を行うので、ホストコンピュータ１側ではこれをシミュレートする。そこで、画像データに対して、先頭のラスタに記録素子Ｋ１を割り当て、この記録素子に適切な画像処理が行われる。ここで画像処理は、上述の濃度補正処理及び量子化処理を意味する。そして、このラスタに対して、記録素子Ｋ１の画像処理が行われたことを、ラスタ上に記憶する。従って、画像処理が行われた画像データは、量子化された印字データと記録素子情報から構成される。
【０１２６】
次のラスタは記録素子Ｋ２を割り当て、この記録素子に適切な画像処理を行い、そのラスタ上に記録素子情報を記憶し、更に次のラスタは記録素子Ｋ３を割り当て、同様にこの記録素子に適切な画像処理を行い、そのラスタ上に記録素子情報を記憶する。このように記録素子Ｋ８まで、ラスタ毎に記録素子に応じた画像処理を行う。これで、全画像素子分、ここでは８ラスタ分、つまり１ライン分の画像処理が終了する。次のラスタは再度、記録素子Ｋ１を割り当て、この記録素子に適切な画像処理が行われる。
【０１２７】
以上のようにして、記録素子数を１周期として、この周期で順次、ラスタ毎に記録素子に応じて画像処理を行い、記録素子情報を記憶する処理を繰り返す。
【０１２８】
次にカラーの画像データが混在している場合は、上述のとおりプリンタ装置２では２回の走査記録で画像を完成するので、ホストコンピュータ１側ではこれをシミュレートする。
【０１２９】
詳細には、プリンタ装置２では、カラーの画像データに対して、先頭のラスタに記録素子：（Ｋ１，Ｋ５）、（Ｃ１，Ｃ５）、（Ｍ１，Ｍ５）、（Ｙ１，Ｙ５）を割り当てて記録を行うので、ホストコンピュータ１側ではこれをシミュレートする。
【０１３０】
そこで、ホストコンピュータ１側ではカラーの画像データに対して先頭のラスタに記録素子（Ｋ１，Ｋ５）、（Ｃ１，Ｃ５）、（Ｍ１，Ｍ５）、（Ｙ１，Ｙ５）を割り当てて、これらの記録素子毎に適切な画像処理を色毎に行い、記録素子情報をラスタ上に記憶する。ここで、１つのラスタを複数の記録素子で記録する場合は、濃度補正データから判断し、２つの記録素子の補正値の平均値を用いる。なお、２つの記録素子の補正値の大きい方を優先してもよい。
【０１３１】
次のラスタは記録素子（Ｋ２，Ｋ６）、（Ｃ２，Ｃ６）、（Ｍ２，Ｍ６）、（Ｙ２，Ｙ６）を割り当て、これらの記録素子毎に適切な画像処理が各色毎に行い、記録素子情報をラスタ上に記憶する。このようにして、記録素子（Ｋ４，Ｋ８）、（Ｃ４，Ｃ８）、（Ｍ４，Ｍ８）、（Ｙ４，Ｙ８）まで、ラスタ毎に記録素子に応じた画像処理を行う。これを１周期として、この周期で順次、ラスタ毎に記録素子に応じて画像処理を行い、記録素子情報を記憶する処理を繰り返す。このように、印字モードに合わせて、ラスタ毎に画像処理を行っていく。
【０１３２】
以上のようにして、ホストコンピュータ１側では、画像データに応じてプリンタ装置２側が行う記録動作をシミュレートしているので、プリンタ装置２側で画像データに応じてラスタの記録に使用する記録素子の割り当てが変更されても、それに対応した記録素子に応じて画像処理を行うことが可能となる。
【０１３３】
なお、ラスタ毎に記録素子情報を記憶しホストコンピュータ１からプリンタ装置２に送出することで、プリンタ装置は、記録素子情報に基づいて記録動作を制御することもできるので、処理負荷を軽減することが出来る。また、記録素子情報だけでなく、走査記録回数、副方向の走査量等の印字モード情報を付加しておくことで、プリンタ装置は処理負荷を軽減して記録動作を制御できる。
【０１３４】
ここで、画像データによっては黒のみの部分とカラーが混在する部分がある。この場合に、上記のような一定周期での画像記録を行っていくと、ヌルデータがある場合や、黒のみの画像とカラー混在画像の境界部に於いて、不適切な副走査や効率の低下を引き起こして、スループットの低下を誘発してしまう可能性がある。そこで、本実施例のプリンタ装置２側では、黒のみの部分とカラーが混在する場合を考慮して、１ラスタだけの画像データから判断するのではなく、複数ラスタ分の画像データから記録モードを設定している。
【０１３５】
具体的には、各ラスタに記録素子を割り当てる前に、１ライン分以上の画像データを一時保管する画像データバッファを用いて、その中に黒のみの画像であれば、１ライン毎での画像処理を継続して行い、カラーが混在する場合は、カラーが存在するラスタを優先して、カラーの周期に合わせる。これに伴って、ホストコンピュータ１側では、このプリンタ装置２側の記録動作をシミュレートし、ラスタの記録に割り当てられる記録素子に応じて画像処理を行うことを可能としている。
【０１３６】
図１３に、１ラインの中で黒のみの画像データの場合と、黒のみの部分とカラーが混在する画像データの場合をシミュレートする一例を示す。黒のみの画像データの場合を示す同図（ａ）では、１ライン毎に一定周期で、Ｋ１〜Ｋ８の記録素子を各ラスタに割り当てて画像処理を行う。
【０１３７】
これに対して、カラー混在の画像データの場合を示す同図（ｂ）において、ライン中にカラーが存在しない場合、即ち黒のみの画像データでは同図（ａ）と同様に１ライン毎に一定周期で、Ｋ１〜Ｋ８の記録素子を各ラスタに割り当てて画像処理を行なう。一方、１ライン中にカラーが混在する画像データでは、混在する画像データのラスタをカラーの先頭ラスタとし、ラスタ毎に対応する記録素子に応じて画像処理を行う。
【０１３８】
ここで、着目ラインにおいては、混在するカラー画像データの先頭をカラーの先頭ラスタとし、記録素子（Ｋ１，Ｋ５）、（Ｃ１，Ｃ５）、（Ｍ１，Ｍ５）、（Ｙ１，Ｙ５）を割り当てる。このため、着目ラインの先頭ラスタには記録素子Ｋ３が割り当てられることになり、着目ラインを１回の記録走査で記録できるのはＫ３〜Ｋ８までの６ラスタ分となる。
【０１３９】
このように、本実施例ではプリンタ装置２が１ライン分の画像データを一時保管するバッファを用いて先読みをしているので、５回の走査記録で画像を完成している。同様に、ホストコンピュータ１側でもこれをシミュレートして、画像処理を行っている。
【０１４０】
図１４に、本実施例のホストコンピュータ１側において、各ラスタに記録素子を割り当てて画像処理を行うために、プリンタ装置２側の記録動作をシミュレートするアルゴリズムのフローチャートの一例を示す。
【０１４１】
まず、ステップ３０１で１ライン分の画像データを一時保管する画像データバッファに読み込む。次に、ステップ３０２では、読み込んだ画像データの中にカラーの画像データが含まれているか否か判断する。ここで、カラーの画像データは存在する場合は、ステップ３０３でカラーの画像データの先頭ラスタに記録素子の周期を合わせて、記録素子の割り当てを行う。一方、ステップ３０２において、読み込んだ画像データの中にカラーの画像データは存在しない、つまり黒のみの画像データの場合は、ステップ３０４で黒の画像データの先頭ラスタに記録素子の周期を合わせて、記録素子の割り当てを行う。ステップ３０５では、割り当てられた記録素子に対応させて、各ラスタ毎に画像処理を行う。最後に、ステップ３０６で未処理の画像データがあるか判断して、未処理の画像データがあればステップ３０１に戻る。未処理の画像データが無ければ、本アルゴリズムを終了する。
【０１４２】
以上のとおり、画像データに応じて各ラスタ毎に記録素子を割り当てて記録動作を行うプリンタ装置２の動作をシミュレートしているので、ホストコンピュータ１側で各ラスタ毎に使用する記録素子が特定できるため、使用される記録素子に応じた画像処理を行うことが可能となる。この結果、高品位の画像をプリンタ装置２が形成することができる。
【０１４３】
（実施例３）
実施例３として、記録素子の数が黒とカラーのそれぞれで異なる記録ヘッドを用いるプリンタ装置２の記録動作をシミュレートして、その情報に基づいて画像データの各ラスタ毎に画像処理して、画像記録を行う一例について説明する。ここでは、特に黒文字の高速記録が行えるように、黒の記録素子を多くしている場合について説明する。
【０１４４】
ここでは、図１５に示す黒、シアン、マゼンタ、イエローの４色の記録ヘッド２４Ｙ，２４Ｍ，２４Ｃ，２４Ｋを用いる。黒の記録ヘッドとシアン、マゼンタ、イエローの記録ヘッドは異なる数の記録素子を持っていて、それぞれ独自に画像データに応じて記録を行うことができる。説明の簡単のために、黒の記録素子数は１６個、シアン、マゼンタ、イエローの記録素子はそれぞれ８個としており、記録する画像データに応じて、記録する画像データの幅を設定して記録が行える構成である。黒のみの画像データの場合は１回の走査で記録できるのが１６ラスタであり、カラーの画像データの場合は１回の走査で記録できるのが８ラスタであり、この記録素子の幅、つまり１回の記録走査で記録される画像を１ラインと定義する。
【０１４５】
本実施例のプリンタ装置２の記録動作は以下のようになる。まず、黒の画像データのみの場合は、１回の記録走査は黒の記録ヘッドの記録素子の幅で記録を行い、カラーの画像データが混在している場合はカラーの記録素子の幅で記録を行う。画像データに応じて、記録幅が異なる場合であり、それぞれの記録素子の数に合わせて副走査量を設定する場合である。
【０１４６】
上記プリンタ装置２の記録動作をシミュレートして、画像処理を行うホストコンピュータ１側の処理について説明する。
【０１４７】
まず、黒のみの画像データでは黒の記録ヘッドのＫ１〜Ｋ１６の全ての記録素子を用いて記録を行うので、画像データに対して、先頭のラスタを記録素子Ｋ１を割り当て、この記録素子に適切な画像処理が行われる。ここで画像処理は、濃度補正処理及び量子化処理を意味する。そして、このラスタに対して、記録素子Ｋ１の画像処理が行われたことを、ラスタ上に記憶する。従って、画像処理が行われた画像データは、量子化された印字データと記録素子情報から構成される。次のラスタは記録素子Ｋ２を割り当て、この記録素子に適切な画像処理を行い、そのラスタ上に記録素子情報を記憶し、更に次のラスタは記録素子Ｋ３を割り当て、同様にこの記録素子に適切な画像処理を行い、そのラスタ上に記録素子情報を記憶する。このように記録素子Ｋ１６まで、ラスタ毎に記録素子に応じた画像処理を行う。これで、全画像素子分、ここでは１６ラスタ分、つまり１ライン分の画像処理が終了する。
【０１４８】
次のラスタは再度、記録素子Ｋ１を割り当て、この記録素子に適切な画像処理が行われる。以上のようにして、記録素子数を１周期として、この周期で順次、ラスタ毎に記録素子に応じて画像処理を行い、記録素子情報を記憶する処理を繰り返す。
【０１４９】
次にカラーの画像データが混在している場合は、カラーの記録素子の幅で画像記録を行っていく。カラーの画像データに対して、先頭のラスタを記録素子Ｋ９，Ｃ１，Ｍ１，Ｙ１、を割り当て、これらの記録素子毎に適切な画像処理を各色に行い、記録素子情報をラスタ上に記憶する。次のラスタは記録素子Ｋ１０，Ｃ２，Ｍ２，Ｙ２を割り当て、これらの記録素子毎に適切な画像処理を各色に行い、記録素子情報をラスタ上に記憶する。
【０１５０】
このようにして、記録素子Ｋ１６，Ｃ８，Ｍ８，Ｙ８まで、ラスタ毎に記録素子に応じた画像処理を行う。これを１周期として、この周期で順次、ラスタ毎に記録素子に応じて画像処理を行い、記録素子情報を記憶する処理を繰り返す。このように、副走査量に合わせて、ラスタ毎に画像処理を行っていく。
【０１５１】
以上のようにして、画像データに応じてプリンタ装置２で変更される記録動作をシミュレートすることにより、プリンタ装置２で実際に使用される記録素子とラスタの対応をホストコンピュータ１側にて取ることが可能となる。そして、ラスタ毎にプリンタ装置２で使用される記録素子に対して、画像処理を行うことが可能となる。
【０１５２】
なお、ホストコンピュータ１からプリンタ装置２に、ラスタ毎に記録素子情報を送出することで、プリンタ装置２は、記録素子情報に基づいて記録動作を制御することもできるので、処理負荷を軽減することが出来る。
【０１５３】
ここで、画像データによっては黒のみの部分とカラーが混在する場合がある。そこで、上述の実施例と同様に、本実施例のプリンタ装置２側では、複数ラスタ分の画像データから記録モードを設定している。
【０１５４】
図１６に、１ラインの中で黒のみの画像データの場合と、黒のみの部分とカラーが混在する画像データの場合をシミュレートする一例を示す。黒のみの画像データの場合を示す同図（ａ）では、１ライン毎に一定周期で、Ｋ１〜Ｋ１６の記録素子を各ラスタに割り当てて画像処理を行う。
【０１５５】
これに対して、カラー混在の画像データの場合を示す同図（ｂ）において、ライン中にカラーが存在しない場合、黒のみの画像データでは同図（ａ）と同様に１ライン毎に一定周期で、Ｋ１〜Ｋ１６の記録素子を各ラスタに割り当てて画像処理を行なう。一方、１ライン中にカラーが混在する画像データでは、混在する画像データのラスタをカラーの先頭ラスタとし、ラスタ毎に対応する記録素子に応じて画像処理を行う。
【０１５６】
ここで、着目ラインにおいては、混在するカラー画像データの先頭をカラーの先頭ラスタとし、記録素子Ｋ９，Ｃ１，Ｍ１，Ｙ１、を割り当てる。このため、着目ラインの先頭ラスタには記録素子Ｋ７が割り当てられてられることになり、着目ラインを１回の記録走査で記録できるのはＫ７〜Ｋ１６までの１０ラスタ分となる。
【０１５７】
このように、本実施例ではプリンタ装置２が１ライン分の画像データを一時保管するバッファを用いて先読みをしているので、５回の走査記録で画像を完成している。同様に、ホストコンピュータ１側でもこれをシミュレートして、画像処理を行っている。
【０１５８】
なお、プリンタ装置２が１ライン分以上の画像データを一時保管する画像データバッファを有しない場合は、着目ラインの先頭ラスタには無条件で記録素子Ｋ１が割り当てられ、１回の記録走査で記録できるのは、カラーが混在する画像データに依存してしまうので、図１６（ｂ）の場合は、着目ラインの先頭ラスタおよびその次のラスタに割り当てられるのは、記録素子Ｋ１〜Ｋ２となる。すなわちこの場合は、黒とカラーとの記録素子の数の違いに起因して、黒のみの画像データとカラーが混在する画像データとで記録走査を別々に行う必要があり、走査回数が増加してしまう。このようなプリンタ装置２が存在する場合は、ホストコンピュータ１側では、プリンタ装置２の画像データバッファの有無を知ることによって、プリンタ装置２の記録動作をシミュレートすることが可能となる。
【０１５９】
本実施例に於ける各ラスタに記録素子を割り当てるためのプリンタ装置２の記録動作をシミュレートするアルゴリズムは、図１４のフローチャートと同等である。
【０１６０】
上述のとおり、本実施例では、色毎に記録素子の数が異なる記録ヘッドを用い、画像データに応じて記録走査毎に副走査量を設定するプリンタ装置の記録動作をシミュレートしているので、プリンタ装置がラスタの記録に使用する記録素子に対応して画像処理を行うことが可能となる。
【０１６１】
本実施例の変形例として、同様の記録素子の構成に於いて黒とカラーとの境界にじみ等の画像弊害を考慮して、黒の記録素子とカラーの記録素子とで同一ラスタヘの記録を同時に行うことを避けて、黒とカラーとで記録を順次行う場合について説明する。
【０１６２】
黒のみの画像データでは、黒の記録ヘッドのＫ１〜Ｋ１６の全ての記録素子を用いて記録を行うので、同様に画像処理を行っていく。カラーの画像データが混在している場合は、カラーの記録素子の幅で画像記録を行っていく。カラーの画像データに対して、先頭のラスタを記録素子Ｋ９，Ｃ１，Ｍ１，Ｙ１、を割り当て、これらの記録素子毎に適切な画像処理を各色に行い、記録素子情報をラスタ上に記憶する。次のラスタは記録素子Ｋ１０，Ｃ２，Ｍ２，Ｙ２を割り当て、これらの記録素子毎に適切な画像処理を各色に行い、記録素子情報をラスタ上に記憶する。このようにして、記録素子Ｋ１６，Ｃ８，Ｍ８，Ｙ８まで、ラスタ毎に記録素子に応じた画像処理を行う。これを１周期としてこの周期で順次、ラスタ毎に記録素子に応じて画像処理を行い、記象素子情報を記憶する処理を繰り返す。このように、副走査量に合わせて、ラスタ毎に画像処理を行っていく。
【０１６３】
以上のようにして、黒とカラーとで記録を順次行う記録方法に於いても、プリンタ装置の記録動作をシミュレートすることで、ラスタと記録素子の対応を取りつつ画像処理を行うことが可能となる。
【０１６４】
（実施例４）
実施例４として、記録素子の数が黒とカラーのそれぞれで異なる記録ヘッドを用いるプリンタ装置２の記録動作をシミュレートして、その情報に基づいて画像データの各ラスタ毎に画像処理して、画像記録を行う一例について説明する。ここでは、特に黒文字の高速記録が行えるように、黒の記録素子を多くしている場合について説明する。なお、ここでは、プリンタ装置２が１ライン分以上の画像データを一時保管する画像データバッファを用いない場合について説明する。
【０１６５】
図１７に本実施例のプリンタ装置２が用いる記録ヘッドの構成の一例を示す。先に示した図１５とは、黒の記録ヘッドとシアン、マゼンタ、イエローの記録ヘッドとの副走査方向の配置関係が相違している。
【０１６６】
本実施例のプリンタ装置２の記録動作は以下のようになる。まず、黒の画像データのみの場合は、１回の記録走査は、黒の記録ヘッドの記録素子の幅で記録を行い、カラーの画像データが混在している場合はカラーの記録素子の幅で記録を行う。画像データに応じて、記録幅が異なる場合であり、それぞれの記録素子の数に合わせて副走査量を設定する場合である。
【０１６７】
上記プリンタ装置２の記録動作をシミュレートして、画像処理を行うホストコンピュータ１側の処理について、説明する。まず、黒のみの画像データでは、先の実施例と同様に、黒の記録ヘッドのＫ１〜Ｋ１６の全ての記録素子を用いて記録を行うので、画像データに対して、先頭のラスタを記録素子Ｋ１を割り当て、この記録素子に適切な画像処理が行われる。
【０１６８】
次にカラーの画像データが混在している場合は、カラーの記録素子の幅で画像記録を行っていく。カラーの画像データに対して、先頭のラスタを記録素子Ｋ１，Ｃ１，Ｍ１，Ｙ１、を割り当て、これらの記録素子毎に適切な画像処理を各色に行い、記録素子情報をラスタ上に記憶する。次のラスタは記録素子Ｋ２，Ｃ２，Ｍ２，Ｙ２を割り当て、これらの記録素子毎に適切な画像処理を各色に行い、記録素子情報をラスタ上に記憶する。このようにして、記録素子Ｋ８，Ｃ８，Ｍ８，Ｙ８まで、ラスタ毎に記録素子に応じた画像処理を行う。これを１周期として、この周期で順次、ラスタ毎に記録素子に応じて画像処理を行い、記録素子情報を記憶する処理を操り返す。このように、副走査量に合わせて、ラスタ毎に画像処理を行っていく。
【０１６９】
ここで、画像データによっては黒のみの部分とカラーが混在する。そこで、上述の実施例と同様に、一定周期での画像処理ではなく、画像データに応じて周期を変更している。
【０１７０】
図１８に、１ラインの中で黒のみの画像データの場合と、黒のみの部分とカラーが混在する画像データの場合をシミュレートする一例を示す。黒のみの画像データの場合を示す同図（ａ）では、１ライン毎に一定周期で、Ｋ１〜Ｋ１６の記録素子を各ラスタに割り当てて画像処理を行う。
【０１７１】
これに対して、カラー混在の画像データの場合を示す同図（ｂ）において、ライン中にカラーが存在しない場合、黒のみの画像データでは同図（ａ）と同様に１ライン毎に一定周期で、Ｋ１〜Ｋ１６の記録素子を各ラスタに割り当てて画像処理を行う。一方、１ライン中にカラーが混在する画像データでは、混在する画像データでもラスタを黒及びカラーの先頭ラスタとして取り扱い、ラスタ毎に対応する記録素子に応じて画像処理を行う。黒とカラーとの記録素子の数の違いはあるが、１ライン内での常に黒とカラーとの先頭ラスタを合わせることが可能な記録ヘッドの構成を取っている。このため、プリンタ装置２において、１ライン分以上の画像データを一時保管する画像データバッファを用いなくても、各記録走査毎に副走査量を異ならせることが可能となる。
【０１７２】
また、このプリンタ装置２側の記録動作を、ホストコンピュータ１側でシミュレートすることにより、記録素子に応じた画像処理が可能となる。
【０１７３】
以上説明してきたように、本実施形態においても、画像データに応じて記録動作が変更されるプリンタ装置２をシミュレートすることにより、ラスタにその記録に使用する記録素子を割り当てて画像処理を行うことが可能となる。
【０１７４】
（実施例５）
実施例５として、本発明を記録素子が不良で、記録が正常に行えない場合の濃度補完及び不吐補完に適用した場合に関して説明する。濃度補正や不吐補完とは、使用する記録素子の中で、インク吐出量が十分でなかったり不吐出のために、必要な画素濃度を出せない場合、他の記録素子での記録でその不足分の濃度を補うことで、画像品位の劣化を抑制するものである。
【０１７５】
これは、異なる記録素子によりマルチパス記録を行う場合に可能となる。単純な一定周期の記録動作では各ラスタに対応する記録素子の組み合わせは一定であるが、画像データによりプリンタ装置２の印字モードが切り替わる場合は、各ラスタに対応する記録素子の組合せが変動することになる。そこで、ホストコンピュータ１側でプリンタ装置２の記録動作をシミュレートすることにより、各ラスタに対応した記録素子毎に画像処理を行うことが可能となる。
【０１７６】
図１９に記録走査回数が異なる記録動作の一例を示す。この実施例では、記録素子Ｎ12のインク吐出量が十分でなく、必要な画素濃度を出せないために、他の記録素子で記録画素の濃度の補間を行う必要がある場合を説明する。
【０１７７】
まず、同図（ａ）に示した２パス記録では、記録領域に対して２回の記録走査で画像記録を完成する。ここで、着目ラスタは、記録素子：Ｎ6，Ｎ12で記録が行われる。Ｎ12で記録される画素の濃度が正常な記録素子のものに比べて約５０％程度だとすると、着目ラスタの画像濃度は、Ｎ6で記録される画像とＮ12で記録される画像との平均的な画像濃度になるので、（（0.5+1.0）/2=）７５％程度となる。従って、濃度補完するためには、着目ラスタに対して（1.0/0.75=）１３３％程度、濃度アップする補正を実施する必要がある。
【０１７８】
一方、同図（ｂ）に示した３パス記録では、記録領域に対して３回の記録走査で画像記録を完成する。ここで、着目ラスタは、記録素子：Ｎ4，Ｎ8，Ｎ12で記録が行われる。Ｎ12で記録される画素の濃度が正常な記録素子のものに比べて約５０％程度だとすると、着目ラスタの画像濃度は、Ｎ4で記録される画像とＮ8で記録される画像とＮ12で記録される画像との平均的な画像濃度になるので、（（0.5+1.0+1.0）/3=）８３％程度となる。従って、濃度補完するためには、着目ラスタに対して（1.0/0.83=）１２０％程度、濃度アップする補正を実施する必要がある。
【０１７９】
以上のように、同じ記録ヘッドを用いても、印字モードが異なると、画像処理に於ける濃度の補正値が異なる。この点を考慮して、本実施例では、記録装置が実施する印字モードに応じて、記録動作をシミュレートして、各ラスタ毎に画像処理を行っている。
【０１８０】
なお、２パスと３パスの印字モードは、画像データ、例えば文字画像かイメージ画像かに基づいて決定される画像品位を示すモードや、記録媒体の種類、例えば記録媒体の定着性等に応じて選択される。パスが多い方が濃度ムラの低減効果が高く、また１回のパスで単位面積に打ち込まれるインクの量が少ないために定着性が向上するためである。
【０１８１】
また、記録素子の不良で記録が完全に行えない場合、つまり、不吐の記録素子が存在する場合がある。これは、その記録素子の記録される画素の濃度がない、つまり記録される画素の濃度が正常な記録素子のものに比べて０％程度である。他の記録素子で記録画素の濃度の補完を最大限行うことで補正を実施することができる。例えば、同図（ａ）の２パス記録では２００％程度の濃度アップの補正を、同図（ｂ）の３パス記録では１５０％程度の補正が必要となる。
【０１８２】
図２０に、本実施例のプリンタ装置２の記録動作をシミュレートして、各ラスタ毎に画像処理を行うアルゴリズムのフローチャートの一例を示す。
【０１８３】
まず、ステップ４０１で１ラスタの画像データを一時保管する画像データバッファ等に読み込む。次に、ステップ４０２で読み込んだ画像データが実施される印字モードを判断する。ここで、プリンタ装置２において印字モード１が実施される場合は、ステップ４０３で印字モード１の画像処理を選択する。ここで、画像処理は印字モード１で、このラスタに対応する記録素子の組み合わせにより画像処理を行う。
【０１８４】
プリンタ装置２で印字モード２が実施される場合は、ステップ４０４で印字モード２の画像処理を選択し、印字モード３が実施される場合は、ステップ４０５で印字モード３の画像処理を選択し、それぞれ、対応する記録素子の組み合わせにより画像処理を行う。次に、ステップ４０６で、割り当てられた記録素子に対応させて、各ラスタ毎に画像処理を行う。最後に、ステップ４０７で未処理の画像データがあるか判断して、未処理の画像データがあれば、ステップ４０１に戻る。未処理の画像データが無ければ、本アルゴリズムを終了する。これにより、プリンタ装置２で実行される印字モードの記録動作をシミュレートすることにより、各ラスタ毎に記録素子を割り当てて各ラスタ毎に画像処理を行うことが可能となる。
【０１８５】
なお、各記録素子の濃度特性の情報は、公知の手法によってホストコンピュータ１側が取得している。公知の手法とは、例えば、記録ヘッドの製造時に各記録素子の濃度特性を測定し、記録ヘッドに設けられたＲＯＭ等の不揮発性の記録媒体に測定した濃度特性を格納しておき、これをホストコンピュータ１がプリンタ装置２から双方向インターフェースを用いて取得するものがある。
【０１８６】
以上説明したように、印字モードに応じてマルチパスの回数が変化するプリンタ装置２に対しても、その記録動作をホストコンピュータ１例でシミュレートすることにより、ラスタにその記録に使用する記録素子の組み合わせを割り当てて画像処理、ここでは、濃度補正又は不吐補完処理を行うことが可能となる。
【０１８７】
（実施例６）
実施例６として、本発明を黒とカラーとの境界においてインクの特性上にじみを発生してしまう場合に、境界部を検出して、黒−カラー境界がある場合には、印字モードを変更して、画像記録を行う記録方法に適用した場合について説明する。
【０１８８】
まず、境界検出の結果に応じて印字モードを変更する記録方法に関して説明する。記録ヘッドは図１２に示した各色８つの記録素子を持っている構成とする。また、本実施例のプリンタ装置２では、黒−カラー境界が存在する場合を考慮して、１ラスタだけの画像データから判断するのではなく、複数ラスタ分の画像データから記録動作を決定する。従って、ホストコンピュータ１でも各ラスタに記録素子を割り当てる前に、１ライン分以上の画像データを一時保管する画像データバッファを用いて、プリンタ装置２の記録動作をシミュレートしている。即ち、黒−カラー境界が存在するか判断して境界の存在により印字モードを決定し、印字モードに応じて各ラスタに記録素子を割り当て、各ラスタ毎に画像処理を行う。
【０１８９】
図２１に、１ラインの中で黒−カラー境界がない場合と、１ラインの中で黒−カラー境界がある場合とをシミュレートする一例を示す。黒−カラー境界がない同図（ａ）では、１ライン毎に一定周期で、Ｋ１〜Ｋ８，Ｃ１〜Ｃ８，Ｍ１〜Ｍ８，Ｙ１〜Ｙ８の記録素子を各ラスタに割り当てて画像処理を行う。
【０１９０】
これに対して、黒−カラー境界が存在する場合を示す同図（ｂ）において、１ライン中に黒−カラー境界が存在しない場合では、同図（ａ）と同様に１ライン毎に一定周期で、Ｋ１〜Ｋ８、Ｃ１〜Ｃ８、Ｍ１〜Ｍ８，Ｙ１〜Ｙ８の記録素子を各ラスタに割り当てて画像処理を行う。一方、黒−カラー境界が存在する画像データ領域では、黒−カラー境界が存在する画像データのラスタを２パス記録の先頭ラスタとし、ラスタ毎に対応する記録素子に応じて画像処理を行う。
【０１９１】
ここで、着目ラインにおいては黒−カラー境界の先頭を先頭ラスタとし、記録素子：（Ｋ１，Ｋ５）、（Ｃ１，Ｃ５）、（Ｍ１，Ｍ５）、（Ｙ１，Ｙ５）を割り当てる。このため、着目ラインの先頭ラスタには記録素子：Ｋ３が割り当てられることになり、着目ラインを１回の記録走査で記録できるのはＫ３〜Ｋ８までの６ラスタ分となる。
【０１９２】
図２２に本実施例で実施される黒−カラー境界検知のアルゴリズムのフローチャートの一例を示す。
【０１９３】
まず、ステップ５０１で画像データを読み込む。ここで読み込むデータ量は、画像データを一時保管するデータバッファの量にもよるが、本実施例では８ラスタ分の画像データを１回のルーチンで処理している。次に、ステップ５０２でインクのにじみに対応させて黒データのボールド処理を行う。ここで、ボールド処理はデータを特定の方向にシフトさせながら、０Ｒ処理を行うものである。この場合、方向を上下およびその左右とする事で、処理するデータを上下及びその左右に膨らませた画像データ、つまりボールドさせた画像データに変換できる。例えば、ボールド量を上下及びその左右に４画素分とした場合、１画素に着目すれば、ボールド後の画像データは、９×９画素分に対応することになる。
【０１９４】
ステップ５０３で各カラーデータと黒のボールドデータとのＡＮＤ処理を行う。この場合、ＡＮＤ処理するエリアは、黒のデータより上下に４ラスタずつ多めの画像データ分に対応するものとする。次に、ステップ５０４で各色毎に上記エリア中で上記ＡＮＤ条件が成立するドット数をカウントし、このカウント値があるしきい値以上であれば、ステップ５０５で、その８ラスタを境界部であると判断する。更に、ステップ５０６で、境界部であるという境界情報を８ラスタ毎に記憶して、本アルゴリズムを終了する。
【０１９５】
次に、境界情報、つまり黒−カラーの境界が存在するか否かの情報に応じて、印字モードを変更する場合のアルゴリズムの一例について説明する。
【０１９６】
図２３に、黒−カラーの境界に応じて印字モードを設定するプリンタ装置２の記録動作をシミュレートして、各ラスタにその記録に使用する記録素子を割り当てて画像処理をするアルゴリズムのフローチャートの一例を示す。
【０１９７】
まず、ステップ６０１で１ライン分の画像データを一時保管する画像データバッファに読み込む、次に、ステップ６０２で読み込んだ画像データの中に黒−カラー境界が含まれているか否か判断する。ここで、境界が存在する場合は、ステップ６０３で境界がある画像の印字モードを設定する。この印字モードに応じて、副走査量が決まる。また、ステップ６０２で読み込んだ画像データの中に、境界が存在しない場合は、ステップ６０４で境界がない画像の印字モードを設定する。
【０１９８】
次に、ステップ６０５で、設定された印字モードをシミュレートすることにより、各ラスタに割り当てられた記録素子に対応させて、各ラスタ毎に画像処理を行う。最後に、ステップ６０６で未処理の画像データかあるか判断して、未処理の画像データがあれば、ステップ６０１に戻る。未処理の画像データが無ければ、本アルゴリズムを終了する。
【０１９９】
これにより、黒−カラー境界により印字モードが設定されるプリンタ装置２に対しても、プリンタ装置２の記録動作をホストコンピュータ１がシミュレートすることによって、各ラスタにその記録に使用する記録素子を割り当てて、画像処理を行うことが可能となる。
【０２００】
（実施例７）
実施例７として、本発明を２次色を双方向で記録する際に各ラスタ毎に画像処理するものに適用した場合について説明する。
【０２０１】
一般的に、図１２に示したような記録ヘッドの構成で、２次色を双方向記録を行った場合、インク滴の打ち込み順番で発色が異なり、副走査の送り量毎の色ムラになってしまう。これは、先に吐出されたインクに後で吐出したインクを重ねた場合、その重なり部分に於いては先に吐出されたインクよりも後に打たれたインクの方が紙面の厚み方向に沈む傾向にある。
【０２０２】
図２４はこの現象を模式的に示す断面図である。この現象は、吐出されたインク中の染料等の色材が被記録媒体と物理的且つ化学的に結合する際、被記録媒体と色材との結合は有限であり、従って、色材の種類によって結合力に大きな差がない限り、先に吐出されたインクの色材と被記録媒体との結合が優先されて被記録媒体の表面に多く残ることを示している。一方、後から吐出されたインクの色材は被記録媒体表面では結合しにくく、紙面の厚み方向に沈んで結合すると考えられる。更に、被記録媒体内部で繊維レベルでのインクの挙動を考えた場合、一度インク中の染料等と結合した繊維は、全く結合していない状態に比べて親水性が強くなっており、そのため、親水性の強い部分に隣接して着弾したインク滴は、前のインク滴が着弾している方向に引き寄せられる傾向がある。
【０２０３】
図２５に２次色（青）を双方向で記録する場合の一例を示す。記録ヘッドはシアンとマゼンタの２つとしている。この２つの記録ヘッドで往復記録を行ない、往路記録では、被記録媒体に対して、マゼンタ、シアンの順番で記録する。これにより、マゼンタが強い青が形成される。一方、復路記録では、シアン、マゼンタの順番で記録する。これにより、シアンが強い青が形成される。
【０２０４】
そこで、往復記録で形成される色調を合わせるために、往路記録のラスタに対しては、先打ちのマゼンタの記録素子に対して濃度補正処理を行い、濃度を抑制する画像処理を行う。一方、復路記録のラスタに対しては、先打ちのシアンの記録素子に対して濃度補正を行い、濃度を抑制する画像処理を行う。これにより、２次色を往復記録する場合、先に記録するインクを少なく、つまり濃度を抑制することで、色ムラの発生を低減できる。
【０２０５】
なお、濃度補正処理に代えて色変換処理、例えば、ＵＣＲ（下色除去）処理やマスキング処理を変更することにより、両方向での色ムラを補正しても良い。
【０２０６】
ここで、上記実施例１で説明したように、プリンタ装置２では記録速度を向上させるために、画像データにヌルラスタが存在するとそれを走査することなくスキップする（紙送りのみ）場合がある。この場合、プリンタ装置２で行うヌルラスタスキップをシミュレートしておかなければ、各ラスタとそのラスタの記録に使用する記録素子との対応が一致しなくなってしまう。
【０２０７】
そこで、本実施形態ではホストコンピュータ１側でプリンタ装置２が行うヌルラスタスキップ動作をシミュレートすることで、往路記録のラスタと復路記録のラスタの記録に使用される記録素子の対応をとっている。ヌルラスタスキップのシミュレートについては、先の実施例と同様であるので説明を省略する。
【０２０８】
以上説明したように、２次色を記録する場合に、往復記録を行うプリンタ装置２においてヌルラスタがスキップされ、画像データによってラスタとその記録に使用される記録素子の関係が変化する場合でも、本実施形態ではそのプリンタ装置２の記録動作をホストコンピュータ１がシミュレートすることで、往復記録における各ラスタとそれの記録に使用する記録素子を割り当てて画像処理を行うことが可能となり、２次色の色ムラの発生を低減することができる。
【０２０９】
また、本実施形態の変形例として、ヌルラスタスキップを含む印字動作に代えてブレーク検出による双方向と単方向印字の切換動作がある。ブレークとはあるラインと次のラインに切れ目または空白が存在するため連続性がないこと、つまり両ラインの間に双方向走査に起因するレジずれが生じても、視覚上目立たない部分が存在することを意味する。これに着目し、ラインとラインにブレークが検出された場合は双方向で印字し、そうでない場合は単方向で印字することにより、印字品位と印字速度を両立させた技術である。
【０２１０】
変形例においては、プリンタ装置２で行うブレーク検出に基づく双方向印字動作をシミュレートすることにより、あるラインが往路で記録されるのか復路で記録されるのかを判断し、それに応じた画像処理をホストコンピュータ１側にて行うものである。この変形例によっても、往復記録を行うプリンタ装置２において双方向または単方向印字が行われ、画像データによってラスタとその記録に使用される記録素子の関係が変化する場合でも、そのプリンタ装置２の記録動作をホストコンピュータ１がシミュレートすることで、往復記録における各ラスタとそれの記録に使用する記録素子を割り当てて画俊処理を行うことが可能となり、２次色の色ムラの発生を低減することができる。
【０２１１】
本発明の上述の実施例では、マルチパス印字、ヌルラスタスキップ、カラー混在画像、黒−カラー境界画像、ブレーク画像によってプリンタ装置２の記録動作が変化し、これに起因して各ラスタとそのラスタの記録に使用される記録素子の対応が変化する場合に、ホストコンピュータ１側でこれをシミュレートする場合について説明したが、本発明はこれらに限定されるものではない。即ち、上述の各実施例の組合せは勿論、プリンタ装置２の環境条件、例えば気温や湿度に応じてプリンタ装置２の記録動作が変化する場合や、プリンタ装置２のスイッチやプリンタドライバによって設定される記録モードに応じて記録動作が変化する場合など、画像データ以外の条件で記録動作が変化する場合でも、これをシミュレートするものであっても良い。つまり、プリンタ装置２が与えられた条件に応じて記録動作を変化させる場合、同様の条件をホストコンピュータ１が取得することにより、プリンタ装置２の記録動作をシミュレートするものであればよい。
【０２１２】
また、ラスタに対応して行う画像処理として、本発明の上述の実施例では処理の目的に応じて濃度補正処理やＵＣＲ処理、マスキング処理を採用したが、処理の目的によっては階調補正（γ補正）処理などでも良い。
【０２１３】
以上の実施例によれば、プリンタ装置２は何らの変更を加えることなくホストコンピュータ１側、つまり、プリンタドライバを変更するのみで各種記録動作を行うプリンタ装置２における画像品位を向上させることが出来るので、プリンタ装置２のバージョンアップ等にも容易に対応することが可能となる。
【０２１４】
（他の実施形態）
本発明は上述のように、複数の機器（たとえばホストコンピュータ、インターフェース機器、リーダ、プリンタ等）から構成されるシステムに適用しても一つの機器（たとえば複写機、ファクシミリ装置）からなる装置に適用してもよい。
【０２１５】
また、前述した実施形態の各種機能を実現するように各種のデバイスを動作させるように該各種デバイスと接続された装置あるいはシステム内のコンピュータに、前記実施形態機能を実現するためのソフトウェアのプログラムコードを供給し、そのシステムあるいは装置のコンピュータ（ＣＰＵあるいはＭＰＵ）を格納されたプログラムに従って前記各種デバイスを動作させることによって実施したものも本発明の範疇に含まれる。
【０２１６】
またこの場合、前記ソフトウェアのプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコード自体、およびそのプログラムコードをコンピュータに供給するための手段、例えばかかるプログラムコードを格納した記憶媒体は本発明を構成する。
【０２１７】
かかるプログラムコードを格納する記憶媒体としては例えばフロッピーディスク、ハードディスク、光ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。
【０２１８】
またコンピュータが供給されたプログラムコードを実行することにより、前述の実施形態の機能が実現されるだけではなく、そのプログラムコードがコンピュータにおいて稼働しているＯＳ（オペレーティングシステム）、あるいは他のアプリケーションソフト等と共同して前述の実施形態の機能が実現される場合にもかかるプログラムコードは本発明の実施形態に含まれることは言うまでもない。
【０２１９】
さらに供給されたプログラムコードが、コンピュータの機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに格納された後そのプログラムコードの指示に基づいてその機能拡張ボードや機能格納ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も本発明に含まれることは言うまでもない。
【０２２０】
【発明の効果】
この発明では、複数の記録素子を有する記録ヘッドを用い、画像データに応じて画像記録を行う記録装置への画像データ転送方法において、所定の条件に応じた前記記録装置の記録動作について、画像データの各ラスタラインとその記録に使用される記録素子とを対応させて各ラスタラインの画像データに対して画像処理を行うか否かと、ヌルラスタを前記記録ヘッドによる走査を行うことなくスキップする前記記録装置のヌルスキップ動作と、をシミュレートするシミュレートステップと、前記シミュレートされた結果に基づいて画像データの各ラスタラインとその記録に使用される記録素子とを対応させ、前記対応付けられた各ラスタラインの画像データを画像処理する画像処理ステップと、前記画像処理された画像データを前記記録装置に転送するステップと、を有し、前記シミュレートステップは、画像処理を行うラスタラインは前記記録装置のヌルスキップを行わないラスタラインとするようにしているので、記録装置が種々の記録動作を行っても高画質の画像を記録することができる。また、記録装置側は何らの変更を加えることなくホストコンピュータ側、すなわちプリンタドライバを変更するのみで、各種記録を行う記録装置における画像品位を向上させることができるので、記録装置のバージョンアップなどにも容易に対応することが可能になる。
【図面の簡単な説明】
【図１】この発明を適用する記録装置の全体的システム構成を示すブロック図である。
【図２】ホストコンピュータ側の本発明にかかわる構成を示すブロック図である。
【図３】インクジェット記録装置の主要部の機構を示す斜視図である。
【図４】インクジェット記録装置の制御系の構成例を示すブロック図である。
【図５】マルチパス印字をシミュレートすることによってホストコンピュータ側が行うラスタ濃度補正処理を説明するフローチャートである。
【図６】マルチパス印字が行われる際のプリンタ装置での印字処理を説明するフローチャートである。
【図７】マルチパス印字処理の具体例を示す模式図である。
【図８】ヌルスキップをシミュレートすることによってホストコンピュータ側が行うラスタ濃度補正処理を説明するフローチャートである。
【図９】ヌルスキップが行われる際のプリンタ装置での印字処理を説明するフローチャートである。
【図１０】ヌルスキップ処理の具体例を示す模式図である。
【図１１】ｍラスタ単位のヌルスキップが行われる際の印字処理を説明するフローチャートである。
【図１２】記録ヘッドの一例を示す模式図である。
【図１３】図１２の記録ヘッドを用いて黒ラインと黒−カラー混在ラインが混在する画像データをシミュレートする場合の具体例を示す模式図である。
【図１４】黒ラインと黒−カラー混在ラインが混在する画像データをシミュレートして各ラスタに記録素子を割り当てる際のホストコンピュータ側でのアルゴリズムを示すフローチャートである。
【図１５】記録ヘッドの他の例を示す模式図である。
【図１６】図１５の記録ヘッドを用いて黒ラインと黒−カラー混在ラインが混在する画像データをシミュレートする場合の具体例を示す模式図である。
【図１７】記録ヘッドの他の例を示す模式図である。
【図１８】図１７の記録ヘッドを用いて黒ラインと黒−カラー混在ラインが混在する画像データをシミュレートする場合の具体例を示す模式図である。
【図１９】２パス印字および３パス印字の記録動作を示す図である。
【図２０】プリンタ装置の印字モードをシミュレートして各ラスタに記録素子を割り当てる際のホストコンピュータ側でのアルゴリズムを示すフローチャートである。
【図２１】黒−カラー境界が存在しない場合の画像データおよび前記境界が存在する画像データをシミュレートする場合の具体例を示す模式図である。
【図２２】黒−カラー境界が存在の有無を検出するためのアルゴリズムを示すフローチャートである。
【図２３】黒−カラー境界の存在の有無に応じて印字モードを変更する際のアルゴリズムを示すフローチャートである。
【図２４】後吐出インクの沈み込み現象を示す図である。
【図２５】往路記録と復路記録でインクの吐出の順番を変化させた具体例を示す模式図である。
【符号の説明】
１  ホストコンピュータ（情報処理装置）
２  プリンタ装置（インクジェット記録装置）
２０  記録媒体
２３  キャリッジ
２４  記録ヘッド
３０  コントローラ
４３  出力γ補正処理部
４４  量子化処理部
４５  ２値化処理部
４６  γ補正テーブル生成記憶部
４７  間引き処理部
５０  ヌルスキップ判定部
【図１】
0004006132.tif 000002
【図２】
0004006132.tif 000003
【図３】
0004006132.tif 000004
【図４】
0004006132.tif 000005
【図５】
0004006132.tif 000006
【図６】
0004006132.tif 000007
【図７】
0004006132.tif 000008
【図８】
0004006132.tif 000009
【図９】
0004006132.tif 000010
【図１０】
0004006132.tif 000011
【図１１】
0004006132.tif 000012
【図１２】
0004006132.tif 000013
【図１３】
0004006132.tif 000014
【図１４】
0004006132.tif 000015
【図１５】
0004006132.tif 000016
【図１６】
0004006132.tif 000017
【図１７】
0004006132.tif 000018
【図１８】
0004006132.tif 000019
【図１９】
0004006132.tif 000020
【図２０】
0004006132.tif 000021
【図２１】
0004006132.tif 000022
【図２２】
0004006132.tif 000023
【図２３】
0004006132.tif 000024
【図２４】
0004006132.tif 000025
【図２５】
0004006132.tif 000026