(57)【要約】【課題】  記録ヘッドの１回の走査で記録可能な記録データのデータ量よりも容量が少ない記録データを格納するためのメモリを備える安価な記録装置で、メモリを効率良く使用して記録を行う。【解決手段】  ホスト装置において、記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成し、記録データを記録装置に送信するようにし、記録装置において再スキャン動作が所定回数行われたことを表す所定の信号を所定回数受信したことを示すフラグが設定されていれば（Ｓ１３０）、当該記録ジョブ又は当該ページの残りの記録データについて、記録データを生成する際に、１回の走査で記録する記録データを、モノクロデータと他のカラーデータと分割して（Ｓ１３１）、ブロックのサイズを小さくする。【選択図】  図１３
2005056342.tif 000002
【特許請求の範囲】
【請求項１】
記録ヘッドを記録媒体上で走査させて記録を行う記録装置と、前記記録装置に記録データを送信するホスト装置とを含む記録システムであって、
前記ホスト装置は、
前記記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成する記録データ生成手段と、
前記記録データを前記記録装置に送信する送信手段と、を備え、
前記記録装置は、
前記記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少なく、前記ホスト装置から送信された記録データを格納するためのメモリと、
前記ホスト装置より受信した記録データを前記ブロックを単位として前記メモリに格納する格納制御手段と、
前記メモリに所定数のブロックの記録データが格納されたときに、前記走査を開始させるように制御する走査制御手段と、
前記走査の間に前記ホスト装置からの前記記録データの送信が間に合わないときに前記走査を一旦中断し、前記メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を実行させる再スキャン手段と、
前記再スキャン動作が所定回数行われたときに、前記ホスト装置に所定の信号を送信する通知手段と、を備えており、
前記ホスト装置は、前記所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、前記記録データ生成手段が、前記１回の走査で記録する記録データを、前記走査方向に加えて他のパラメータに基づいて再分割して、前記ブロックのサイズを小さくして生成するように制御することを特徴とする記録システム。
【請求項２】
前記記録装置は、複数色の記録剤を使用してカラー記録を行う記録装置であり、前記他のパラメータは、使用する記録材の色を含むことを特徴とする請求項１に記載の記録システム。
【請求項３】
前記複数色がブラックと他の複数の色を含み、前記前記記録データ生成手段は、前記記録データをブラックの記録データと他の複数色の記録データとに再分割することを特徴とする請求項２に記載の記録システム。
【請求項４】
前記前記記録データ生成手段は、前記記録データを各色の記録データに再分割することを特徴とする請求項２に記載の記録システム。
【請求項５】
前記記録ヘッドは、走査方向と交差する方向に配列された複数の記録素子を有し、前記他のパラメータは、副走査方向の分割数を含むことを特徴とする請求項１に記載の記録システム。
【請求項６】
前記副走査方向の分割数を、ユーザが設定可能であることを特徴とする請求項５に記載の記録システム。
【請求項７】
前記記録データ生成手段が、前記副走査方向の分割数を、１回の走査で記録する記録データの量に基づいて設定することを特徴とする請求項５に記載の記録システム。
【請求項８】
前記記録データ生成手段は、前記記録ヘッドによって記録されるデータを含むブロックに対する記録データのみを生成することを特徴とする請求項１から７のいずれか１項に記載の記録システム。
【請求項９】
前記格納制御手段は、前記記録ヘッドによって記録されるデータを含むブロックのみを前記メモリに格納することを特徴とする請求項１から７のいずれか１項に記載の記録システム。
【請求項１０】
記録ヘッドを記録媒体上で走査させて記録を行い、記録データを格納するためのメモリとして、前記記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少ないメモリを有し、前記走査の間に前記メモリへの前記記録データの格納が間に合わないときに前記走査を一旦中断し、前記メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を行うように構成された記録装置に接続されるホスト装置にインストールされ、前記記録装置に記録データ及び制御データを送信して駆動を制御するプリンタドライバであって、
前記記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成し、
前記記録データを前記記録装置に送信し、
前記記録装置において前記再スキャン動作が所定回数行われたことを表す所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、前記１回の走査で記録する記録データを、前記走査方向に加えて他のパラメータに基づいて再分割して、前記ブロックのサイズを小さくして生成することを特徴とするプリンタドライバ。
【請求項１１】
記録ヘッドを記録媒体上で走査させて記録を行い、記録データを格納するためのメモリとして、前記記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少ないメモリを有し、前記走査の間に前記メモリへの前記記録データの格納が間に合わないときに前記走査を一旦中断し、前記メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を行うように構成された記録装置に接続されるホスト装置における記録データ生成方法であって、
前記記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成する記録データ生成工程と、
前記記録データを前記記録装置に送信する送信工程と、
前記記録装置において前記再スキャン動作が所定回数行われたことを表す所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、前記記録データ生成工程で、前記１回の走査で記録する記録データを、前記走査方向に加えて他のパラメータに基づいて再分割して、前記ブロックのサイズを小さくするブロックサイズ変更工程と、を備えることを特徴とする記録データ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は記録システム、プリンタドライバ及び記録データ生成方法に関し、特に、ホスト装置から送信された記録データに従って記録ヘッドを記録媒体上で走査させて記録を行い、記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少ない記録データを格納するためのメモリを有する記録装置に対する記録データの生成に関するものである。
【背景技術】
【０００２】
インクジェット記録装置は、低騒音、低コスト、低ランニングコストであり、かつ装置の小型化が容易であるため、一般的なプリンタ装置や複写機等において広く利用されている。
【０００３】
このうちシリアル式のインクジェット記録装置は、記録ヘッドを記録媒体上で主走査方向に往復移動させ、画像を記録する毎にその記録幅（副走査方向の長さ）に応じた長さだけ副走査方向に記録紙を搬送させ、このような動作を繰り返して１頁の記録を行う記録装置である。
【０００４】
このような記録装置では、少なくとも１回の主走査で記録する記録データの全てをメモリ（プリントバッファ）に格納し、１回の主走査で記録すべき記録データの全てが確定されプリントバッファに格納された後に、記録ヘッドの主走査を開始するように制御するのが一般的である。このため、高価なメモリを多く必要とし、装置のコストが高くなってしまうという問題が生じる。
【０００５】
そこで、例えば、特許文献１（特開昭５８−１４６９２９号公報）には、１回の主走査分の記録データを格納できるメモリ容量よりも少ないメモリ容量のメモリをプリントバッファとして使用する記録装置が提案されており、該文献には、記録データを格納したプリントバッファのアドレスを管理して、そのプリントバッファに格納された記録データに基づいて記録を行う技術が記載されている。
【０００６】
また、特許文献２（特開平１１−２５９２４８号公報）には、１回の主走査分の記録データが確定されるのを待たずに記録ヘッドの主走査を開始するプリンタ装置が提案されている。しかしながら、この文献に記載されたプリンタ装置では、記録ヘッドを主走査させながら記録している間には必ず、その主走査による記録を完了するのに十分な記録データが送られてくることを前提としている。即ち、記録ヘッドの主走査に間に合うように記録データが供給されることが前提となっている。
【特許文献１】特開昭５８−１４６９２９号公報
【特許文献２】特開平１１−２５９２４８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に記載された技術では、メモリを効率的に使うことができず、また、記録中の動作に対して記録データの転送が間に合わない場合にどのように動作するのかが開示されていない。
【０００８】
また、特許文献２に記載された技術では、記録データを供給しているホストコンピュータは、その記録中には、プリンタ装置に対して記録ヘッドの走査に間に合うように記録データを供給する必要がある。
【０００９】
しかしながら、通常ホストコンピュータとして使用されるパーソナルコンピュータには、一般的にウインドウシステムが組込まれており、汎用性のあるマルチタスク処理が可能なように構成されている。このためホストコンピュータにおける処理が、記録データの生成及び転送に専念できるという保証がなく、上述したような、プリンタ装置への記録データの転送を保証することが困難になってきている。
【００１０】
更に、プリンタ装置への記録データの転送を保証するためには、ホストコンピュータ内のプリンタドライバの処理についてデータ転送を保証する仕様に変更する必要があるが、このような保証を行うと、そのＯＳの有する汎用的なマルチタスク機能を阻害することにもなってしまう。
【００１１】
本発明は以上のような状況を鑑みてなされたものであり、記録ヘッドの１回の走査で記録可能な記録データのデータ量よりも容量が少ない記録データを格納するためのメモリを備える安価な記録装置で、メモリを効率良く使用して記録を行うことができる、記録システム、プリンタドライバ及び記録データ生成方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記目的を達成するために本発明の一態様としての記録システムは、記録ヘッドを記録媒体上で走査させて記録を行う記録装置と、前記記録装置に記録データを送信するホスト装置とを含む記録システムであって、
前記ホスト装置は、
前記記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成する記録データ生成手段と、
前記記録データを前記記録装置に送信する送信手段と、を備え、
前記記録装置は、
前記記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少なく、前記ホスト装置から送信された記録データを格納するためのメモリと、
前記ホスト装置より受信した記録データを前記ブロックを単位として前記メモリに格納する格納制御手段と、
前記メモリに所定数のブロックの記録データが格納されたときに、前記走査を開始させるように制御する走査制御手段と、
前記走査の間に前記ホスト装置からの前記記録データの送信が間に合わないときに前記走査を一旦中断し、前記メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を実行させる再スキャン手段と、
前記再スキャン動作が所定回数行われたときに、前記ホスト装置に所定の信号を送信する通知手段と、を備えており、
前記ホスト装置は、前記所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、前記記録データ生成手段が、前記１回の走査で記録する記録データを、前記走査方向に加えて他のパラメータに基づいて再分割して、前記ブロックのサイズを小さくして生成するように制御する。
【００１３】
また、上記目的を達成する本発明の別の態様としてのプリンタドライバは、記録ヘッドを記録媒体上で走査させて記録を行い、記録データを格納するためのメモリとして、前記記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少ないメモリを有し、前記走査の間に前記メモリへの前記記録データの格納が間に合わないときに前記走査を一旦中断し、前記メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を行うように構成された記録装置に接続されるホスト装置にインストールされ、前記記録装置に記録データ及び制御データを送信して駆動を制御するプリンタドライバであって、
前記記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成し、
前記記録データを前記記録装置に送信し、
前記記録装置において前記再スキャン動作が所定回数行われたことを表す所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、前記１回の走査で記録する記録データを、前記走査方向に加えて他のパラメータに基づいて再分割して、前記ブロックのサイズを小さくして生成する。
【００１４】
上記目的を達成する本発明の更に別の態様としての記録データ生成方法は、記録ヘッドを記録媒体上で走査させて記録を行い、記録データを格納するためのメモリとして、前記記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少ないメモリを有し、前記走査の間に前記メモリへの前記記録データの格納が間に合わないときに前記走査を一旦中断し、前記メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を行うように構成された記録装置に接続されるホスト装置における記録データ生成方法であって、
前記記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成する記録データ生成工程と、
前記記録データを前記記録装置に送信する送信工程と、
前記記録装置において前記再スキャン動作が所定回数行われたことを表す所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、前記記録データ生成工程で、前記１回の走査で記録する記録データを、前記走査方向に加えて他のパラメータに基づいて再分割して、前記ブロックのサイズを小さくするブロックサイズ変更工程と、を備えている。
【００１５】
すなわち、本発明では、記録ヘッドを記録媒体上で走査させて記録を行い、記録データを格納するためのメモリとして、記録ヘッドが１回の走査で記録可能な記録データのデータ量よりも容量が少ないメモリを有し、走査の間にメモリへの記録データの格納が間に合わないときに走査を一旦中断し、メモリに後続するブロックの記録データが格納された後に該中断した走査を再開する再スキャン動作を行うように構成された記録装置に接続されるホスト装置において、記録ヘッドが１回の走査で記録する記録データを、少なくとも走査方向に分割したブロックを単位として生成し、記録データを記録装置に送信するようにし、記録装置において再スキャン動作が所定回数行われたことを表す所定の信号を所定回数受信したときに、当該記録ジョブ又は当該ページの残りの記録データについて、記録データを生成する際に、１回の走査で記録する記録データを、走査方向に加えて他のパラメータに基づいて再分割して、ブロックのサイズを小さくする。
【００１６】
このようにすると、記録装置において再スキャン記録が所定回数発生した際に、ホスト装置で生成する記録データのブロックサイズが小さくなるので、記録データの生成及び送信に起因する再スキャン記録の発生を防止することができる。
【００１７】
従って、記録データを格納するためのメモリとして、容量が少ないメモリを用いる安価な構成の記録装置で、メモリを効率良く使用すると共に画質の劣化を少なくすることができる。
【００１８】
なお、記録装置が、複数色の記録剤を使用してカラー記録を行う記録装置であるとき、他のパラメータとしては、使用する記録材の色を含むのが好ましく、この場合、複数色がブラックと他の複数の色を含んでいれば、記録データをブラックの記録データと他の複数色の記録データとに再分割する、あるいは記録データを各色の記録データに再分割するのが好適である。
【００１９】
また、記録ヘッドが、走査方向と交差する方向に配列された複数の記録素子を有する場合には、副走査方向の分割数に基づいて記録データを再分割するのが好ましく、この場合、副走査方向の分割数を、ユーザが設定可能、あるいは１回の走査で記録する記録データの量に基づいて設定するようにするのが好適である。
【００２０】
更に、記録ヘッドによって記録されるデータを含むブロックに対する記録データのみを生成する、あるいは記録ヘッドによって記録されるデータを含むブロックのみをメモリに格納するようにするのが好ましい。
【発明の効果】
【００２１】
本発明によれば、記録装置において再スキャン記録が所定回数発生した際に、ホスト装置で生成する記録データのブロックサイズが小さくなるので、記録データの生成及び送信に起因する再スキャン記録の発生を防止することができる。
【００２２】
従って、記録データを格納するためのメモリとして、容量が少ないメモリを用いる安価な構成の記録装置で、メモリを効率良く使用すると共に画質の劣化を少なくすることができる。
【発明を実施するための最良の形態】
【００２３】
以下、添付図面を参照して本発明の好適な実施の形態を詳細に説明する。尚、以下で説明する実施形態では、本発明に係る記録装置としてインクジェット記録装置を例に説明するが、本発明はこれらに限定されるものでなく、記録ヘッドを記録媒体上で走査させて記録を行う記録装置であれば、例えば、サーマルプリンタ、ワイヤドットプリンタなどの他の方式の記録装置にも適用できる。
【００２４】
なお、本明細書において「格納」とは「記憶」と同様に、メモリ領域にデータを書き込む、あるいは転送する処理を表している。
【００２５】
＜第１の実施形態＞
図１は、本発明の第１の実施形態に係るインクジェット記録装置の概略構成を示す斜視図である。
【００２６】
本実施形態のインクジェット記録装置１００の給紙位置に挿入された記録媒体１０５は、送りローラ１０６の回転によって矢印Ｐ方向に送られ、記録ヘッド１０４による記録領域へ搬送される。この記録領域における記録媒体１０５の下部には、プラテン１０７が設けられている。キャリッジ１０１は、２つのガイド軸１０２と１０３によって、それらの軸方向に沿って移動可能に支持されており、不図示のキャリッジモータの駆動により、記録領域を含む走査領域を、主走査方向である矢印Ｑ１，Ｑ２で示す方向に沿って往復走査する。キャリッジ１０１による１回の主走査が終了すると、記録媒体１０５を矢印Ｐ方向である副走査方向に一定量（記録ヘッド１０４による記録幅に相当する距離）だけ搬送し、次の主走査に備える。これらの主走査と副走査を繰り返して１頁の記録を行う。
【００２７】
図１において、キャリッジ１０１に登載された記録ヘッド１０４は、インクを吐出可能な吐出口（ノズル）とインクを収容するインクタンクとを含んでおり、記録ヘッド１０４の吐出口は、下方に位置する記録媒体１０５上にインクを吐出して記録するように、吐出口を下に向けてキャリッジ１０１上に搭載されている。
【００２８】
また、１０８はスイッチと表示部を備える操作部で、スイッチは記録装置１００の電源のオン／オフの切り替えや各種記録モードの設定等に使用され、表示部は記録装置１００の状態を表示可能に構成されている。
【００２９】
記録ヘッド１０４は、Ｂｋ（ブラック），Ｃ（シアン），Ｍ（マゼンタ），Ｙ（イエロー）の４色を記録可能であり、Ｂｋ，Ｃ，Ｍ，Ｙの各色のヘッドの吐出口の数はそれぞれ１２８個であり、各色の吐出口の配置ピッチは副走査方向に対して６００ｄｐｉ（１／６００インチ）で、その間隔は約４２ミクロンである。また、この記録ヘッド１０４の駆動周波数は１５ｋＨｚであり、主走査方向に対して６００ｄｐｉの解像度で記録可能である。従って、記録動作時のキャリッジ１０１の主走査方向への移動速度は２５［inch／sec］である。
【００３０】
また、記録ヘッド１０４の各吐出口付近には、インク滴を吐出するために熱エネルギーを発生する発熱体が設けられている。この発熱体の発熱により急速に加熱されたノズル内のインクは膜沸騰により気泡を形成し、この気泡の圧力によりインク滴が記録媒体１０５の方向に向かって吐出口から吐出され、記録媒体１０５上に文字や画像を記録する。このような電気・熱変換体である発熱体を使用したインクジェット記録方法は、インク滴の吐出時に、熱エネルギーの印加により形成される気泡を使用しているため、通称、バブルジェット（登録商標）記録方法と呼ばれている。
【００３１】
尚、本実施形態は、この方式のインクジェットヘッドに限定されることは無く、例えば圧電素子を使用したインク吐出方式の記録ヘッドでも良い。
【００３２】
図２は、本実施形態に係るインクジェット記録装置１００の主要部の構成を示すブロック図である。
【００３３】
ホスト装置５００からインクジェット記録装置１００に対して記録すべき文字や画像データが送信されると、そのデータは受信バッファ４０１に蓄えられる。また、このデータ受信時には、正しくデータが転送されているかどうかを確認するためのデータ、及びインクジェット記録装置１００の動作状態を知らせるデータが記録装置１００からホスト装置５００に送信される。
【００３４】
こうして受信バッファ４０１に蓄えられたデータは、ＣＰＵ４０２の制御の下に、記録ヘッド１０４が主走査した時に記録を行うための記録データに加工されてＲＡＭ４０３のプリントバッファ４２０に格納される。このプリントバッファ４２０に格納された記録データは、記録ヘッドコントロール部４１０の制御により記録ヘッド１０４に転送され、この記録データに基づいて記録ヘッド１０４が駆動されて文字や画像が記録される。また、記録ヘッドコントロール部４１０は、記録ヘッド１０４の状態を示す温度情報等を検出してＣＰＵ４０２に送信する。これによりＣＰＵ４０２は、記録ヘッドコントロール部４１０に対して記録ヘッドの状態に応じた制御情報を伝達し、これにより記録ヘッド１０４を、その状態に応じて駆動制御することができる。
【００３５】
機械コントロール部４０４は、ＣＰＵ４０２からの指令により記録ヘッド１０４の主走査や記録媒体の搬送を行う機械部４０５を制御し、機械部４０５にはキャリッジモータやラインフィードモータ等のモータも設けられている。センサ／ＳＷコントロール部４０６は、各種センサやＳＷ（スイッチ）を有するセンサ／スイッチ（ＳＷ）部４０７からの信号をＣＰＵ４０２に送信する。表示素子コントロール部４０８は、ＣＰＵ４０２からの指令に応じて操作パネル１０８のＬＥＤや液晶表示素子等を有する表示部４０９への表示を制御する。尚、上述のスイッチ部、表示部４０９は、前述の操作部１０８に設けられている。
【００３６】
本実施形態に係るインクジェット記録装置１００では、ＲＡＭ４０３のプリントバッファ４２０の容量は、記録ヘッドの１回の主走査で記録する記録データの全てを格納するのに必要な容量よりも少ない。
【００３７】
以下では、本実施形態に係るインクジェット記録装置１００によって、記録ヘッド１０４におけるＢｋ，Ｃ，Ｍ，Ｙ各色のヘッドの吐出口（ノズル）をそれぞれ１２８個使用して１パスで画像を記録する場合で説明する。
【００３８】
１回の主走査で記録する全ての記録データを格納できるプリントバッファの容量を、記録幅を８インチとし、これを６００ｄｐｉの密度で記録する場合で考えると、
８［インチ］×６００［ｄｐｉ］×１２８［個］×４［色］＝３００［ｋバイト］
のメモリ容量が必要になる。
【００３９】
これに対して本実施形態では、プリントバッファ４２０のメモリ容量を、全幅８インチに対応する４８００ドットに対して、それより少ない幅で、かつその１／２より大きい幅である２５６０ドット分とした。これにより、プリントバッファ４２０の必要なメモリ容量は、
２５６０［ドット］×１２８［個］×４［色］＝１６０［ｋバイト］
となり、全幅の記録データを格納可能なメモリ容量（３００ｋバイト）に比べて約１／２のメモリ容量となる。
【００４０】
次に、このプリントバッファ４２０におけるデータ構成について説明する。
【００４１】
各色の記録データは、Ｂｋ，Ｃ，Ｍ，Ｙの色毎に区別して格納されており、副走査方向の長さが１２８ドットで、主走査方向に５１２ドットを記録する４色分の記録データを示す矩形状のブロック単位で、この記録データをプリントバッファ４２０に格納する構成としている。
【００４２】
この時の各ブロックの最大サイズは、１色当り１２８×５１２ドット＝６５，５３６ドット＝８，１９２バイト＝８ｋバイトとなり、４色分で３２ｋバイトとなる。各ブロックの縦方向のサイズは、１６のｎ１倍（ｎ１は、１以上の整数）で設定可能であり、本実施形態では、上述したように各色の記録ヘッドの吐出口数に対応させてｎ１＝８とし、１２８（＝１６×８）とした。また、各ブロックの横方向のサイズは、２ｎ２（ｎ２は、０以上の整数）で設定可能であり、本実施形態では、ｎ２＝９として、２９＝５１２とした。従って、本実施形態に係るプリントバッファ４２０は、記録媒体１０５の記録幅（８インチ）に対して、主走査方向に少なくとも、２５６０／５１２＝５［個］のブロックに分割されている構成となる。
【００４３】
図３は、Ａ４サイズの記録媒体１０５に幅（主走査方向の長さ）８インチのデータを１スキャン（主走査）で記録する時に、プリントバッファ４２０に設定されるブロックの様子を示す概念図である。
【００４４】
本実施形態に係るインクジェット記録装置では、主走査方向に記録する解像度が６００ｄｐｉであるので、８インチの全幅を記録するには、幅５１２ドットのブロック３００が１０個（４８００／５１２＝９．３７５）必要である。しかし本実施形態では、プリントバッファ４２０のメモリ容量は、上述したように、幅２５６０ドット分しか有していないため、このプリントバッファ４２０に格納できる記録データのブロック３００の数は最小で５個となる。
【００４５】
また、上述したプリントバッファ４２０の構成において、更に、記録のための記録ヘッド１０４の主走査において、各色毎に、記録データが存在しないブロックにおいてはプリントバッファ４２０内にメモリ領域を確保せず、代りにゼロフラグを立てて代用し、記録時に、ゼロフラグが存在した場合には、当該ブロックをヌルデータとして扱うようにすることで、プリントバッファ４２０の使用するメモリ容量を節約している。これについては以下に詳しく説明する。
【００４６】
図４（Ａ）は、あるブロックにおける各色に対応する記録データが格納されている状態を説明する図で、ここでは黒（Ｂｋ），シアン（Ｃ），マゼンタ（Ｍ），イエロー（Ｙ）の順に、それぞれ最大１２８×５１２ドット分のデータが格納できるようになっている。
【００４７】
図４（Ｂ）は、マゼンタ（Ｍ）のドットを記録する記録データが存在しない場合を示し、この場合には、黒（Ｂｋ），シアン（Ｃ）に続いてイエロー（Ｙ）の記録データが格納されており、このブロックのメモリ容量は、１２８×５１２×３ドット分に縮小されている。
【００４８】
このような場合、本実施形態では各色毎に記録データの有無をブロック色情報によって表す。すなわち、図４（Ａ）では、全ての色データが存在するため、ブロック色情報は、Ｂｋ，Ｃ，Ｍ，Ｙ＝（１１１１）（４ビット）となるのに対し、図４（Ｂ）の例では、マゼンタの記録データが存在しないため、ブロック色情報は、Ｂｋ，Ｃ，Ｍ，Ｙ＝（１１０１）（４ビット）となる。
【００４９】
このようにすることにより、記録データを詰めてプリントバッファ４２０に格納できるため、プリントバッファ４２０における各ブロックの使用領域を節約できる。
【００５０】
更に、各色の記録データが存在している場合でも、１２８×５１２ドットの全体に亙って記録データが存在する可能性が低いため、１ブロック内における各色の記録データをより細かく小ブロックに分割し、各小ブロック毎に、ドットを記録する記録データの存在の有無を調べ、ドットを記録する記録データが存在しない小ブロックに該当するメモリエリアを詰めてプリントバッファ４２０に格納する。これにより、より多くの有効な記録データをプリントバッファ４２０に格納できるようにしている。
【００５１】
図５は、図４で示したＢｋ，Ｃ，Ｍ，Ｙの各ブロックをさらに、１６ドット単位に分けて小ブロック化し、各小ブロック毎に、ドットを記録する記録データの存在の有無を表す小ブロック情報を設ける例を説明する図である。
【００５２】
ここでは、各ブロックの各色の記録データを、縦方向（副走査方向）に吐出口の数に対応して１６ドット単位で、横方向（走査方向）は５１２ドットの幅に分割した８個（番号０〜７）の小ブロックに分割している。ブロックを分割する際の縦方向のサイズは、ｎ３（ｎ３は１以上の整数）ドット単位で設定可能であり、本実施形態では、ｎ３＝１６ドットとした。
【００５３】
そして、各小ブロック単位で、ドットを記録する記録データの有無を判別し、その記録データが存在しない小ブロックに対してはメモリ領域を確保せず、ゼロフラグを立てて代用する。そして、その小ブロックの記録時には、ゼロフラグが存在した場合には、当該小ブロックをその小ブロックに対応する吐出口の記録データをヌルデータとすることにより、プリントバッファ４２０の使用するメモリ容量を抑えて記録を行っている。
【００５４】
図５の例では、番号が２〜４の小ブロックだけにしか記録データが存在しないので、残りの小ブロックの格納エリアはプリントバッファ４２０内に確保されず、番号が２〜４の小ブロックだけが確保される。これにより、プリントバッファ４２０の使用するメモリ容量が節約できる。尚、図５において、縦方向は吐出口の配列方向に対応しており、本実施の形態に係る記録ヘッド１０４の吐出口の数は１２８個であるので、ｎ３＝１６より８つの小ブロックに分割されることになる。この図５では、番号２〜４の小ブロックに、ドットを記録する記録データが格納されているが、これは記録ヘッド１０４の３３〜８０番目の吐出口（ノズル）に対応している。
【００５５】
又、本実施形態では、シアンの小ブロック情報として、ドットを記録する記録データが存在している小ブロックに対応するビット位置にのみ「１」をセットし、その他の小ブロックに対応するビット位置に「０」をセットした小ブロック情報がＲＡＭ４０３に格納される。図５の例では、８つの小ブロックに分割しているので、小ブロック情報は、各色のブロック毎に８ビットの情報としてＲＡＭ４０３に格納される。尚、この小ブロック情報は、ドットを記録する記録データが存在している小ブロックの開始番号と終了番号（図５の例では番号２と４）に対応するビットに「１」を設定するようにしても良い。
【００５６】
このようにして、格納する記録データの量を節約することにより、プリントバッファ４２０に格納するブロックデータの量を減少させることができ、これにより、メモリ容量が制限されているプリントバッファ４２０（本実施形態では１６０ｋＢ）に格納できるブロックの数を増やすことができる。
【００５７】
図６（Ａ）及び（Ｂ）は、このようなプリントバッファ４２０における記録データの管理を説明する図である。尚、この図６（Ａ）のプリントバッファ４２０及び図６（Ｂ）の管理テーブルは前述のＲＡＭ４０３に設けられている。
【００５８】
図６（Ａ）は、１６０ｋバイトのプリントバッファ４２０に、それぞれが最大３２ｋバイトのブロック（ブロック１〜５）を格納した状態を示す図である。
【００５９】
しかし、前述したように各ブロックのサイズは、そのブロックの各色の記録データの量に応じて変化するため、図６（Ｂ）に示すように、各ブロック毎に、そのブロックのプリントバッファ４２０内における先頭アドレス及び最終アドレス、各色毎の記録データの有無を示すブロック色情報（４ビット）、及び各色毎の小ブロックにおける記録データ有無を示す小ブロック情報（８ビット）が格納されている。図６（Ｂ）ではブロック１に対する管理テーブルを示しているが、他のブロックに関しても同様の管理テーブルが設けられる。
【００６０】
上述したプリントバッファ４２０の構成においては、記録を行う際、ホスト装置５００から送信される１回の主走査分の記録データをプリントバッファ４２０に格納できないため、記録データの一部が確定した時点で記録ヘッド１０４の主走査を開始し、記録が終了したブロックを次の記録データを格納するためのブロックとして使用する。
【００６１】
具体的には、図７及び図９のフローチャートを参照して、以下に動作を詳しく説明する。
【００６２】
図７は、本実施形態に係るインクジェット記録装置１００における、１回の主走査に関するデータ受信及び記録動作を説明するフローチャートで、この処理を実行するプログラムはＲＯＭ４１１に格納されている。
【００６３】
まずステップＳ１で、ホスト装置５００より記録データを受信するとステップＳ２に進み、その受信した記録データを受信バッファ４０１に格納する。
【００６４】
尚、ここではホスト装置５００から、上記のように各ブロック単位で各色の記録データが伝送される際、ドットを記録する記録データが存在しない色成分の記録データや上記の縦方向に分割した小ブロックの記録データは、ブロック、小ブロックが詰められ、容量が節約されたブロックデータとして伝送される。また、記録データが存在しないこともホスト装置５００よりブロック色情報や小ブロック情報として通知される。
【００６５】
次に、ステップＳ３に進み、受信バッファ４０１に格納された記録データをブロック単位でプリントバッファ４２０に格納する。
【００６６】
そしてステップＳ４に進み、所定の数（本実施形態では「５」）のブロックの記録データがプリントバッファ４２０に格納されたか、或いはプリントバッファ４２０に、これ以上、ブロックデータが格納できなくなったかを判定し、所定ブロック数に達していないと判定された場合、Ｓ１に戻り、ホスト装置５００からの記録データの受信処理を実行する。こうしてステップＳ４の条件を満足するとステップＳ５に進み、キャリッジモータの回転駆動を開始してキャリッジ１０１（記録ヘッド１０４）の走査を開始する。
【００６７】
次にステップＳ６に進み、プリントバッファ４２０に格納されている１ブロック分の記録データの記録処理を実行する。この１ブロックの記録処理については図９のフローチャートを参照して詳しく後述する。
【００６８】
こうして１ブロック分の記録データの記録が終了するとステップＳ７に進み、記録ヘッド１０４の１回の走査による記録が終了したか否かを判定する。１回の走査分の記録が終了していないと判定された場合にはステップＳ８に進み、プリントバッファ４２０に既に１回の走査分の記録データが既に格納されているか否かを判定する。
【００６９】
ステップＳ８で１回の走査分の記録データが既に格納されていると判定されれば、現在の走査において、これ以上プリントバッファ４２０に記録データを格納する必要が無いため、ステップＳ６に戻って前述の処理を実行する。
【００７０】
一方、ステップＳ８でプリントバッファ４２０に１回の走査分の記録データがまだ格納されていないと判定された場合はステップＳ９に進み、記録済みのブロックの記録データが格納されていたエリアを解放し、その解放したエリアに後続のブロックの記録データを格納する。尚、この時、その解放されたメモリエリアの容量よりも後続のブロックの記録データの容量の方が大きくて、そのブロックの記録データを格納できない場合は、更に次のブロックの記録が終了するのを待って、その後続のブロックの記録データが格納できるだけの空エリアが確保された時点で、そのブロックの記録データをプリントバッファ４２０に格納する。
【００７１】
そして、このステップＳ９の処理が終了するとステップＳ６に戻り、次のブロックの記録データに基づいて１ブロック分の記録データの記録を行う。
【００７２】
以上の処理を繰り返してステップＳ７で、記録ヘッド１０４による１回の走査分の記録が終了したと判定された場合、ステップＳ１０に進み、キャリッジ１０１（記録ヘッド１０４）の走査を停止させて、ステップＳ１１に進み、その１回の走査で記録した画像の幅（副走査方向の長さ）に対応する距離だけ記録媒体を副走査方向に搬送する。
【００７３】
尚、ステップＳ５以降で記録処理が開始された後でも、ホスト装置５００からの記録データの受信処理は並行して実行されており、その受信処理で受信バッファ４０１に格納された記録データが、ステップＳ９でプリントバッファ４２０に格納されることになる。
【００７４】
図９は、図７のステップＳ６における、プリントバッファ４２０に格納されている記録データに基づく１ブロック分の記録処理を詳細に示すフローチャートである。
【００７５】
まずステップＳ６１で、１ブロック分の４色の記録データをプリントバッファ４２０から読み出し、ＲＡＭ４０３に格納されている図６（Ｂ）に関して説明した管理テーブルを参照してステップＳ６２で、ブロック色情報が「０」である色情報があるかどうかを判定する。ブロック色情報が「０」である色情報があると判定されればステップＳ６３に進み、該当する色ブロックの記録データを全て「０（ヌル）」にした記録データを生成して、ステップＳ６４に進む。
【００７６】
一方ステップＳ６２で、ブロック色情報が「０」である色情報がないと判定された場合には、ステップＳ６３をスキップしてステップＳ６４に進む。
【００７７】
ステップＳ６４では、小ブロック情報が「０」である色情報があるかどうかを判定する。小ブロック情報が「０」である色情報があると判定されればステップＳ６５に進み、該当する色ブロックのその小ブロックに対応する記録データを全て「０」（ヌル）にした記録データを生成してステップＳ６６に進む。
【００７８】
一方ステップＳ６４で、ブロック色情報が「０」である色情報がないと判定された場合にはステップＳ６５をスキップしてステップＳ６６に進む。
【００７９】
ステップＳ６６では、１ブロック分の４色のイメージデータをバッファ（ＲＡＭ４０３）に展開する。次に、ステップＳ６７に進み、次の記録タイミングで記録するデータを記録ヘッド１０４に転送し、ステップＳ６８で記録ヘッド１０４が記録位置に到達したかを調べ、記録位置に到達するとステップＳ６９に進み、記録ヘッド１０４を駆動して記録を行う。
【００８０】
そしてステップＳ７０で、１ブロック分に相当する５１２ドット分の記録ヘッド１０４による走査或いは記録が行われたか、即ち、１ブロック分の記録が終了したか否かを判定し、終了していないと判定された場合にはステップＳ６７に戻り、次の記録タイミングで記録すべき記録データを記録ヘッド１０４に転送する。
【００８１】
以上の処理を繰り返して、ステップＳ７０で１ブロック分の記録が終了したと判定された場合に処理を終了する。
【００８２】
図１０は、前述した１回の主走査での記録動作に伴うプリントバッファ４２０のデータ及び記録媒体１０５への記録の様子を説明する図である。
【００８３】
図１０において、（ａ）〜（ｅ）は記録媒体１０５に記録されるブロックを模式的に示していおり、（ｆ）〜（ｊ）はプリントバッファ４２０の各ブロックに格納されているブロック番号を、（ａ）〜（ｅ）に対応させて示している。
【００８４】
上述のように本実施形態では、プリントバッファ４２０に所定の数（例えば５個とする）のブロック分の記録データが格納された時点（ｆ）で、記録ヘッド１０４の主走査を開始する（ａ）。そして、最初のブロック１に相当する５１２ドット分記録ヘッドが走査してブロック１に格納された記録データの記録を終了すると（ｂ）、プリントバッファ４２０における、そのブロック１が格納されていたメモリエリアにブロック６の記録データを格納する（ｇ）。
【００８５】
続いて、次の５１２ドット分記録ヘッドが走査してブロック２の記録が終了すると（ｃ）、そのブロック２のメモリエリアにブロック７の記録データを格納する（ｈ）。同様にして、次の５１２ドット分記録ヘッドが走査してブロック３の記録が終了すると（ｄ）、そのブロック３のメモリエリアにブロック７の記録データを格納する（ｉ）。
【００８６】
以下、順次、記録済みのブロックのメモリエリアを循環的に再利用しながら記録ヘッドの走査によって記録を続行する。（ｅ）はブロック２の記録が終了した状態を示しており、この時点でプリントバッファ４２０に格納されている記録データは、（ｊ）に示すようにブロック１０の記録データだけである。
【００８７】
以上のようにして、最終のブロック１０の記録データの記録を終了すると、その記録ヘッド１０４の主走査を終了する。
【００８８】
尚、このようして記録ヘッド１０４の主走査が終了した後、次の主走査は記録ヘッド１０４を前回とは逆の方向に走査させて記録を行うようにしてもよく、或いは記録ヘッド１０４を一旦ホーム位置に戻して、前回と同じ方向に記録ヘッド１０４を走査させて記録を行うようにしてもよい。
【００８９】
このように、記録ヘッドの１回の主走査中において、記録済みのブロックの記録データを格納していたメモリエリアを解放して、受信した次のブロックの記録データを、そのメモリエリアに格納するようにすると、次のブロックの記録データの受信が当該ブロックの記録に間に合わない場合が起こり得る。即ち、記録ヘッド１０４が、そのブロックの記録位置にまで走査してきているにも拘わらず、そのブロックに対応するエリアを記録できない事態が発生する可能性がある。
【００９０】
この場合、本実施形態では、受信が間に合わないブロックの直前までのブロックの記録データに基づく記録を完了させて、一旦、記録ヘッドの走査を終了させる。そして、記録ヘッドを停止させている間に、記録に間に合わなかったブロックを含むそれ以降の記録データを受信し、所定量以上のブロックの記録データの受信が完了した後、再度、記録ヘッドの主走査を開始して、その受信が間に合わなかったブロック以降の記録データに基づく記録を行って、１回の主走査による記録を完了させる（このような記録を「再スキャン記録」と呼ぶ）。
【００９１】
このような「再スキャン記録」が発生するのは、ブロックに対応する記録データの受信が、記録ヘッドの主走査に間に合わないためであるが、このような事態が生じる原因としては、ホスト装置５００における記録データ生成処理の遅延や、ＵＳＢやセントロニクス・インターフェース等のホスト装置５００と記録装置１００とを接続するインターフェースでの記録データの転送遅延などが考えられる。
【００９２】
このような「再スキャン記録」が一度でも発生すると、同じ印刷ジョブ内で、再度「再スキャン記録」が発生する可能性がある。こうして記録装置１００で「再スキャン記録」が行われると、インクおよび記録媒体の特性や、記録ヘッド１０４をＱ１、Ｑ２方向に走査させるキャリッジモータの機械的精度の影響等により、記録された画像の品位が劣化することがある。
【００９３】
図８は、本実施形態における「再スキャン記録」に係る処理を示すフローチャートであり、この処理は図７のステップＳ８でＮｏと判定された後に実行される。
【００９４】
図７のステップＳ８で、記録ヘッド１０４による１回の主走査で記録される記録データ全てがまだプリントバッファ４２０に格納されていないと判定された場合、図８のステップＳ１００に進み、次に記録されるべきブロックの記録データがプリントバッファ４２０に格納されているかどうか、即ち、引続き次のブロックが記録可能かどうかを判定する。
【００９５】
記録可能であると判定された場合には、図７のステップＳ９に進み、記録済みのブロックの記録データが格納されていたメモリエリアを解放して、そこに、順次ブロックの記録データを格納する。
【００９６】
一方、ステップＳ１００で、次に記録されるべきブロックの記録データが揃っていないと判定された場合には、ステップＳ１０１に進み、記録ヘッド１０４の走査を停止する。そしてステップＳ１０２で、その時の記録ヘッド１０４の位置を記憶する。なお、記録ヘッドの位置は、１ブロックが５１２ドット分であるため、記録済みのブロック数に基づいて容易に算出できる。
【００９７】
その後、ステップＳ１０３で、記録ヘッド１０４を現在の主走査の開始位置まで戻して停止させる。そしてステップＳ１０４に進み、この処理と並行して実行されているホスト装置５００からのデータ受信処理により、所定数のブロックに相当する記録データの生成が終了するまで待機し、生成済みとなったらステップＳ１０５に進み、記録ヘッド１０４の走査を開始して、ステップＳ１０２で記憶されたヘッド位置まで記録ヘッド１０４を移動する。
【００９８】
尚、ステップＳ１０１で記録ヘッド１０４の走査を停止した後、ステップＳ１０３の処理を実行せずに、ステップＳ１０５で、キャリッジ１０１が記録領域での走査速度まで加速するのに要する距離だけキャリッジ１０１（記録ヘッド１０４）を戻して、ステップＳ６で、主走査方向に記録ヘッド１０４を加速して停止した位置から記録を行うようにしてもよい。
【００９９】
図１１は、文字列「あいうえお」を記録する時に、文字「え」を記録している途中でブロックデータが間に合わなくなった場合の記録結果の例を示している。図１１において、（ａ）は１回目の走査で記録された部分を示し、（ｂ）は一旦記録を停止し、再度、文字「え」の途中から記録を行った「再スキャン記録」で記録された部分を示している。（ｃ）は、（ａ）及び（ｂ）での記録結果を示しており、通常の１回の走査で記録された場合と比較して、再スキャン記録でのつなぎ目となる文字「え」に空白部分が表れ、記録画像に劣化が生じている。
【０１００】
また、図示した例のように、つなぎ目に空白や重なりが生じる場合以外にも、インクジェット記録装置では、再スキャン記録ではノズルからインクを吐出せずに記録再開位置まで移動するので吐出口付近のインク濃度が上昇するため、つなぎ目の前後で記録画像の濃度差が生じやすくなり、これも記録画像の品質劣化の一因となる。
【０１０１】
このような「再スキャン記録」での記録画像の劣化を防止するために、本実施形態においては、インクジェット記録装置１００において、１つの印刷ジョブもしくは１ページの記録において、ｎ４回（ｎ４は１以上の整数）「再スキャン記録」が発生した場合、インクジェット記録装置１００とホスト装置５００とを接続するインタフェースを介してホスト装置５００に対して「再スキャン記録」が発生した旨を通知する。
【０１０２】
これは前述した図８のフローチャートのステップＳ１０３とＳ１０４の間に、ブロックの記録が間に合わなくなった回数を計数するステップと、この回数が所定値（ｎ４）に達した場合に「再スキャン記録」が発生したことをホスト装置５００に通知するステップを追加することで対処できる。
【０１０３】
またこの場合、ホスト装置５００では、インクジェット記録装置１００から「再スキャン記録」が発生したことを表す通知を受けた回数がｎ５回（ｎ５は１以上の整数）になると、その印刷ジョブもしくは現在記録中のページの以降の記録データに対して、１回の主走査の記録データを、モノクロ（Ｂｋ）の記録データとカラー（Ｃ，Ｍ，Ｙ）の記録データとに分割し、その分割した記録データを２回に分けてインクジェット記録装置１００に送信する。
【０１０４】
具体的には、まず、ホスト装置５００は、当該１回の主走査のモノクロ（Ｂｋ）記録データについて、ブロックデータを作成する。この場合、ブロックデータは、Ｂｋのみのデータとなるため、Ｃ，Ｍ，Ｙはヌルフラグのみとなり、１ブロックで必要なメモリ容量を減らすことができる。そのため、より多くのブロックデータを記録装置内のプリントバッファに格納することが可能となり、「再スキャン記録」の発生を抑えることができる。具体的には、本実施形態においては、モノクロデータのみであれば、１回の主走査で記録するデータ量は、４８００×１２８／８＝７５ｋＢｙｔｅとなり、１６０ｋＢｙｔｅのプリンタバッファ内に、全記録幅８インチのブロックデータを格納可能である。
【０１０５】
そしてインクジェット記録装置１００は、図７に示したフローチャートに従って、受信したモノクロデータを記録する主走査を実行する。
【０１０６】
次に、ホスト装置は、同様にして当該１回の主走査のカラー（Ｃ，Ｍ，Ｙ）記録データについて、ブロックデータを作成する。このときはＢｋがヌルフラグのみとなり、メモリ量を減らすことができ、「再スキャン記録」の発生を防止することができる。
【０１０７】
図１２は、ホスト装置５００における「再スキャン記録」の発生通知を受けた場合の処理を示すフローチャートである。ここでは、ステップＳ１２０で、「再スキャン記録」の発生通知を受信するとステップＳ１２１に進み、その回数をカウントする。そしてステップＳ１２２に進み、その回数が所定回数（ｎ５）になったかどうかを判定し、所定回数になったと判定されるとステップＳ１２３に進み、「再スキャン記録」の発生を示すフラグをオンにする。
【０１０８】
図１３は、ホスト装置５００における、このフラグに応じた記録データの生成及び記録装置１００への送信処理を説明するフローチャートである。まずステップＳ１３０で、フラグがオンかどうかを判定し、オンであればステップＳ１３１に進み、次の１回の主走査で記録する画像データをモノクロ記録データとカラー記録データに分割する。
【０１０９】
次にステップＳ１３２に進み、まず分割したモノクロ記録データのブロックデータを生成し、生成されたブロックデータを記録装置１００に送信する。そしてステップＳ１３３で、モノクロデータの１回の主走査による記録が終了したかどうかを判定し、終了していないと判定された場合にはステップＳ１３２に戻り、次のブロック分の記録データを生成して記録装置１００に送信する。
【０１１０】
ステップＳ１３３で、モノクロデータの１回の主走査による記録が終了したと判定された場合にはステップＳ１３４に進み、分割したカラーの記録データのブロックデータを生成し、生成されたブロックデータを記録装置１００に送信する。そしてステップＳ１３５で、カラーデータの１回の主走査による記録が終了したかどうかを判定し、終了していないと判定された場合にはステップＳ１３４に戻り、次のブロック分の記録データを生成して記録装置１００に送信する。
【０１１１】
こうして、ステップＳ１３５でカラーデータの１回の主走査による記録が終了したと判定されると、モノクロデータおよびカラーデータ両方の１回の主走査による記録が終了したこととなり、ステップＳ１３６に進み、現在実行中の印刷ジョブが終了したかどうかを判定する。終了していないと判定された場合にはステップＳ１３０に戻り、次の主走査で記録する記録データの転送処理に進む。このような処理を繰り返して、ステップＳ１３６で現在の印刷ジョブが終了したと判定された場合には、ステップＳ１３７に進み、フラグをオフにして処理を終了する。
【０１１２】
また、ステップＳ１３０で、フラグがオフであると判定された場合にはステップＳ１３８に進み、１回の主走査によって記録する画像データから、ブロック単位で記録データを生成し、その生成したブロックの記録データを順次記録装置１００に送信する。そしてステップＳ１３９で、１回の主走査による記録が終了したかどうかを判定し、終了していないと判定された場合にはステップＳ１３８に戻り、次のブロック分の記録データを生成して記録装置１００に送信する。
【０１１３】
こうして、ステップＳ１３９で１回の主走査による記録が終了したと判定された場合にはステップＳ１３６に進み、現在実行中の印刷ジョブが終了したかどうかを判定し、終了していないと判定された場合にはステップＳ１３０に戻り、次の主走査の記録データの転送処理に進む。こうしてステップＳ１３６で現在の印刷ジョブが終了下と判定された場合には、ステップＳ１３７に進み、フラグをオフにして処理を終了する。
【０１１４】
以上説明したように本実施形態の記録方法は、例えば、同じあるいは類似した画像データの記録を複数ページに亙って行う場合に有効である。つまり、１ページ目で「再スキャン記録」が発生した場合には、以降のページの記録を行う際には、ホスト装置５００から予め分割した記録データを送信して、モノクロの記録とカラーの記録とを異なった走査で記録するようにすることにより、再スキャン記録の発生を防止し、記録画像の品質劣化を防ぐことができる。
【０１１５】
また、ホスト装置５００と記録装置１００との間のデータ送信の状態によっても、「再スキャン記録」の発生頻度が変わるが、データ送信状態に起因して「再スキャン記録」が発生した場合においても、ホスト装置５００から、予め分割した記録データを送信して記録を行うことで、記録画像の品質劣化を防止することができる。
【０１１６】
なお、インクジェット記録装置１００における「再スキャン記録」の発生を通知するときの「再スキャン記録」の発生回数（ｎ４）、及び、ホスト装置５００における１回の主走査の記録データを分割するときの「再スキャン記録」の通知の受信回数（ｎ５）を、それぞれユーザが設定可能としてもよい。その場合、この回数の設定は、記録装置１００のセンサ／ＳＷコントロール部４０７に付随するＳＷ（スイッチ）を用いたり、記録データを送信するホスト装置５００の入力手段（ユーザインタフェース）等を用いるようにしてもよい。
【０１１７】
＜第２の実施形態＞
以下、本発明に係る第２の実施形態について説明する。以下の説明では上記第１の実施形態と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【０１１８】
上記第１の実施形態では、ホスト装置が「再スキャン記録」の通知を所定回数（ｎ５）受信した場合、１回の主走査の記録データをモノクロデータとカラーデータとに分割して記録装置に送信するようにしたが、本実施形態では、ホスト装置が「再スキャン記録」の通知を所定回数受信した場合、１回の主走査の記録データを記録に使用する各色毎に分割して記録装置に送信する。
【０１１９】
本実施形態では、記録データを構成する色として、Ｂｋ，Ｃ，Ｍ，Ｙの４色を使用する。ホスト装置は、上述した「再スキャン記録」の発生を示すフラグがオンになっている場合に、その印刷ジョブもしくは現在記録中のページの以降の記録データに対して、１回の主走査の記録データを、Ｂｋの記録データ、Ｃの記録データ、Ｍの記録データ、Ｙの記録データの４つの記録データに分割し、その分割した記録データを各色毎に計４回に分けてインクジェット記録装置１００に送信する。
【０１２０】
具体的には、まず、ホスト装置５００は、当該１回の主走査のモノクロ（Ｂｋ）記録データについて、ブロックデータを作成する。この場合、ブロックデータは、Ｂｋのみのデータとなるため、Ｃ，Ｍ，Ｙはヌルフラグのみとなり、１ブロックで必要なメモリ容量を減らすことができる。そのため、より多くのブロックデータを記録装置内のプリントバッファに格納することが可能となり、「再スキャン記録」の発生を抑えることができる。具体的には、本実施形態においては、モノクロデータのみであれば、１回の主走査で記録するデータ量は、４８００×１２８／８＝７５ｋＢｙｔｅとなり、１６０ｋＢｙｔｅのプリンタバッファ内に、全記録幅８インチのブロックデータを格納可能である。
【０１２１】
そしてインクジェット記録装置１００は、図７に示したフローチャートに従って、受信したモノクロデータを記録する主走査を実行する。
【０１２２】
次に、ホスト装置は、同様にして当該１回の主走査のＹの記録データについて、ブロックデータを作成する。このときはＢｋ，Ｍ，Ｃがヌルフラグのみとなり、メモリ量を減らすことができ、「再スキャン記録」の発生を防止することができる。同様にして、Ｍの記録データ及びＣの記録データについてブロックデータを順次作成して記録装置に送信する。
【０１２３】
本実施形態のホスト装置５００における、このフラグに応じた記録データの生成及び記録装置１００への送信処理は、図１３のフローチャートのステップＳ１３４及びＳ１３５の処理を、Ｙ，Ｍ，Ｃに対してそれぞれ３回実行するように変更したものとなる。
【０１２４】
なお、ホスト装置から記録装置へブロックデータを送信する順番は、上記のＢｋ，Ｙ，Ｍ，Ｃの順番に限定されず、記録する画像に応じて適宜選択されてもよいし、ホスト装置のユーザインタフェース等を介してユーザが指定できるようにしてもよい。
【０１２５】
以上説明したように本実施形態によれば、再スキャン記録が所定回数発生した際に、各色毎に異なった主走査で記録するようにするため、ブロックサイズが小さくなり、記録データの生成及び送信に起因する再スキャン記録の発生を一層確実に防止することができる。
【０１２６】
＜第３の実施形態＞
以下、本発明に係る第３の実施形態について説明する。以下の説明では上記第１及び第２の実施形態と同様な部分については説明を省略し、本実施形態の特徴的な部分を中心に説明する。
【０１２７】
上記第１及び第２の実施形態では、ホスト装置が「再スキャン記録」の通知を受信した場合、１回の主走査の記録データを色毎に分割して記録装置に送信するようにしたが、本実施形態では、ホスト装置が「再スキャン記録」の通知を受信した場合、１回の主走査の記録データを縦方向（副走査方向）に複数個に分割して記録装置に送信する。
【０１２８】
以下、記録データを縦方向に２つに分割する場合を例に挙げて説明する。ホスト装置が、上記の「再スキャン記録」の発生を示すフラグがオンになっていると判定した場合、その印刷ジョブもしくは現在記録中のページの以降の記録データに対して、１回の主走査の記録データを、各色毎に、縦方向（副走査方向）に１６ドットを単位として分割した８個の小ブロックのうち、縦方向の上半分の小ブロック（番号０〜３）に対応した記録データと、縦方向の下半分の小ブロック（番号４〜７）に対応した記録データとの２つの記録データに分割し、それぞれの記録データ毎にブロックデータの作成を行う。
【０１２９】
図１４は、上下２つに分割された記録データから生成されたブロックデータの例を示している。図１４（Ａ）は、上半分の記録データから生成されたブロックデータを示しており、番号０〜３の小ブロックのみに記録データが存在し、番号４〜７の小ブロックには記録データが存在しない。このため、番号４〜７の部分のメモリ容量が節約できる。その際、番号０〜３の小ブロックに記録データが存在し、番号４〜７の小ブロックに記録データが存在しないことを８ビットの小ブロック情報（００００１１１１）で示す。
【０１３０】
同様に、図１４（Ｂ）は、縦方向の下半分の記録データから生成されたブロックデータを示しており、番号４〜７の小ブロックのみに記録データが存在し、番号０〜３の小ブロックには記録データが存在しない。このため、番号０〜３の部分のメモリ容量が節約できる。その際、番号４〜７の小ブロックに記録データが存在し、番号０〜３の小ブロックに記録データが存在しないことを８ビットの小ブロック情報（１１１１００００）で示す。
【０１３１】
本実施形態のホスト装置５００における、このフラグに応じた記録データの生成及び記録装置１００への送信処理は、図１３のフローチャートにおいて、ステップＳ１３１で１回の主走査の記録データを縦方向に上下２つの記録データに分割し、ステップＳ１３２及びＳ１３３で上半分の記録データに対する処理を行い、ステップＳ１３４及びＳ１３５で下半分の記録データの対する処理を行うように変更したものとなる。
【０１３２】
以上説明した例では、１回の主走査の記録データを、縦方向（副走査方向）で上下２つに分割しているが、分割数は２つに限るものではなく、小ブロックの数と同じ数（＝８）まで分割することができる。ただし、分割数は小ブロックの数の約数であるのが好ましい。また、その１回の主走査で記録する記録データのデータ量に応じて、分割する数を変えるようにしてもよい。この場合、１回の走査で記録するデータ量を所定の値と比較して、所定の値より多い場合には４つに分割し、所定の値以下である場合には２つに分割するようにすれば、必要以上に分割数を多くして記録時間が長くなるのを防止することが可能となる。
【０１３３】
以上説明したように本実施形態によれば、再スキャン記録が所定回数発生した際に、記録データを副走査方向に複数に分割して複数回の主走査で記録するようにするため、記録データの生成及び送信に起因する再スキャン記録の発生を一層確実に防止することができる。
【０１３４】
＜他の実施形態＞
なお、本発明は、複数の機器（例えばホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【０１３５】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【０１３６】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１３７】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１３８】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１３９】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０１４０】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明した（図７から図９および／または図１２、図１３に示す）フローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【０１４１】
【図１】本発明の第１の実施形態に係るインクジェット記録装置の概略構成を示す斜視図である。
【図２】図１のインクジェット記録装置の主要部の構成を示すブロック図である。
【図３】本発明に係るインクジェット記録装置のプリントバッファに設定されるブロックの様子を示す概念図である。
【図４】１ブロックにおける各色毎の記録データの格納状態を説明する図である。
【図５】シアンの記録データのブロックを小ブロックに分けた構成を示す概念図である。
【図６】本発明に係るインクジェット記録装置におけるプリントバッファのブロック構成とその管理テーブルを説明する図である。
【図７】第１の実施形態に係るインクジェット記録装置における１回の主走査に関するデータ受信及び記録動作を説明するフローチャートである。
【図８】本発明の実施の形態に係るインクジェット記録装置における再スキャン記録での処理を示すフローチャートである。
【図９】図８のステップＳ６における、１ブロック分の記録データの記録処理を示すフローチャートである。
【図１０】本発明に係るインクジェット記録装置における１回の主走査での記録動作に伴うプリントバッファのデータ及び記録媒体への記録の様子を説明する図である。
【図１１】再スキャン記録による記録画像の劣化を説明する図である。
【図１２】第１の実施形態に係るホスト装置における再スキャン記録の発生を通知された場合の処理を示すフローチャートである。
【図１３】第１の実施形態に係るホスト装置における記録データの送信処理を示すフローチャートである。
【図１４】第３の実施形態において再スキャン記録が通知された際に、上下２つに分割された記録データから生成されたブロックデータの例を示す概念図である。
【図１】
2005056342.tif 000003
【図２】
2005056342.tif 000004
【図３】
2005056342.tif 000005
【図４】
2005056342.tif 000006
【図５】
2005056342.tif 000007
【図６】
2005056342.tif 000008
【図７】
2005056342.tif 000009
【図８】
2005056342.tif 000010
【図９】
2005056342.tif 000011
【図１０】
2005056342.tif 000012
【図１１】
2005056342.tif 000013
【図１２】
2005056342.tif 000014
【図１３】
2005056342.tif 000015
【図１４】
2005056342.tif 000016