(57)【要約】【課題】同一印刷行のイメージ開始位置とイメージ終了位置が色毎に相違するカラーイメージを正しく印刷する。【解決手段】プリンタは、１印刷行の全範囲のイメージデータを格納できる容量をもつ色別のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃを備え、各色の１印刷行分のイメージデータを格納する際、各色イメージデータの開始位置に相当する開始アドレス１０７Ｙ，１０７Ｍ，１０７Ｃから格納を開始して、各色イメージデータの終了位置に相当する終了アドレス１０８Ｙ，１０８Ｍ，１０８Ｃで格納を終える。次に、全色のイメージデータの開始アドレス１０７Ｙ，１０７Ｍ，１０７Ｃのうちの最小アドレス１０９から、終了アドレス１０８Ｙ，１０８Ｍ，１０８Ｃのうちの最大アドレス１１０までを読み出しアドレス範囲１１１として、各色バッファ６３Ｙ，６３Ｍ，６３Ｃの読み出しアドレス範囲１１１から各色イメージデータを読み出して印刷ヘッドへ転送する。【選択図】図９
2008055917.tif 000002
【特許請求の範囲】
【請求項１】
印刷ヘッドと、
前記印刷ヘッドを主走査方向に移動させる移動機構と、
１印刷行分の色別のイメージデータをそれぞれ記憶する複数のイメージバッファと、
前記主走査方向における前記１印刷行の各色イメージの開始位置から終了位置までの範囲に対応する各色イメージバッファの記憶領域に、前記１印刷行分の各色イメージデータを格納するデータ格納手段と、
前記各色イメージバッファ内に格納された前記各色イメージデータの開始アドレスと終了アドレスを検出し、そして、検出した前記開始アドレスのうちの最先頭アドレスと、検出した前記終了アドレスのうちの最後尾アドレスとを検出するアドレス検出手段と、
検出した前記最先頭アドレスから前記最後尾アドレスまでのアドレス範囲に対応する前記主走査方向の位置範囲を前記印刷ヘッドが連続移動するように、前記移動機構を制御する移動制御手段と、
前記各色イメージバッファの前記最先頭アドレスから前記最後尾アドレスまでの記憶領域から前記各色のイメージデータを読み出して、読み出したイメージデータを前記印刷ヘッドの連続移動に同期して前記印刷ヘッドに供給するヘッド駆動手段と、を備えたカラープリンタ。
【請求項２】
前記アドレス検出手段は、前記各色イメージバッファ内に格納された前記各色イメージデータの両端部にヌル領域が存在するか調べ、存在する場合には前記ヌル領域を除外して各色の正味のイメージデータの開始アドレスと終了アドレスを確定し、確定した前記正味のイメージデータの開始アドレスから前記最先頭アドレスを決定し、確定した前記正味のイメージデータの終了アドレスから前記最後尾アドレスを決定する請求項１に記載のカラープリンタ。
【請求項３】
前記移動制御手段は、１印刷行の印刷が終了したときに次の印刷行における前記印刷ヘッドを連続移動させる位置範囲が未だ決まっていない場合、前記１印刷行の印刷が終了した後に前記印刷ヘッドを所定の位置へ移動させるよう、前記移動機構を制御する請求項１記載のカラープリンタ。
【請求項４】
印刷ヘッドと、前記印刷ヘッドを主走査方向に移動させる移動機構とを備えたカラープリンタの動作方法において、
１印刷行分の色別のイメージデータの前記主走査方向における開始位置と終了位置を検出し、検出した開始位置の中の最先頭位置と、検出した終了位置の中の最後尾位置とを決定するステップと、
前記最先頭位置から前記最後尾位置までの位置範囲を前記印刷ヘッドが連続移動するステップと、
前記印刷ヘッドが前記各色イメージデータの前記開始位置から前記終了位置までを連続移動しているときに、前記各色イメージデータを用いて前記印刷ヘッドを駆動するステップとを備えたカラープリンタの動作方法。
【請求項５】
前記最先頭位置から前記最後尾位置を決定するステップでは、前記１印刷行分の各色のイメージデータの両端部にヌル領域が存在するならば、前記ヌル領域を前記各色のイメージデータから除外することにより、各色の正味のイメージデータの開始位置と終了位置を確定し、確定した前記正味のイメージデータの開始位置の中から前記最先頭位置を決定し、確定した前記正味のイメージデータの終了位置の中から前記最後尾位置を決定する請求項４に記載の方法。
【請求項６】
１印刷行の印刷が終了したときに次の印刷行における前記印刷ヘッドを連続移動させる範囲が未だ決まっていない場合、前記１印刷行の印刷が終了した後に前記印刷ヘッドを所定の位置へ移動させるステップを更に備える請求項４記載のカラープリンタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷媒体表面を印刷ヘッドによって走査しつつ複数色の着色剤を付着させてイメージを形成するカラープリンタに関する。
【背景技術】
【０００２】
この種のカラープリンタは、図１に示すように、キャリッジ２１に搭載された印刷ヘッド２３が用紙（印刷媒体）２５表面を主走査方向２７（例えば、水平方向）に移動しつつ、例えばイエロー（Ｙ）、マゼンタ（Ｍ）、シアン（Ｃ）などの各色の１印刷行分のイメージデータを読み込み、各色データに従って各色の着色剤を用紙２５に付着させていくことにより、１印刷行のカラーイメージ２９を形成する。次に、印刷ヘッドは用紙２５に対して所定距離だけ副走査方向３１へ移動し、かつ次の主走査の開始位置に移動して、そして再び主走査を行いつつ次の印刷行のイメージデータを読み込んで次の印刷行のカラーイメージを形成する。
【０００３】
このような印刷ヘッドの駆動方法の従来技術として、特公平４−２８２３１号公報に記載のものが知られている。この従来の方法は、同じ印刷行であってもイメージのカラム数（ドット数又は文字数、要するにイメージの長さ）が色毎に異なる場合が存在し、その場合にはカラム数の多い方の色のイメージを完全に印刷できないという問題を解決するために、レジスタに格納されたデータから色別に１印刷行分のカラム数を計数して、計数したカラム数のうち最大のカラム数を選択し、この最大のカラム数分だけ印刷ヘッドを主走査方向へ連続移動させ、その後にリターンするように、キャリッジを制御する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
実際のカラーイメージでは、１印字行のイメージの開始位置及び終了位置が色毎に異なる場合がある。例えば図２に示すように、同一印刷行のＹ、Ｍ、Ｃの３色のイメージデータ４１Ｙ，４１Ｍ，４１Ｃは、それぞれの開始位置４３Ｙ，４３Ｍ，４３Ｃで相違し、終了位置４５Ｙ，４５Ｍ，４５Ｃでも相違する。このような場合、上述した従来技術ではカラーイメージを正しく印刷することができない。上述した従来技術は、色別の１印刷行分のカラム数（つまり、各色イメージデータの開始位置から終了位置までの長さ）の中の最大のカラム数分だけ印刷ヘッドを連続移動させるものであるが、図２に例示したような色毎にイメージの開始位置が相違する場合には、各色イメージデータのカラム数からでは、印刷ヘッドが移動すべき範囲つまり１印刷行の印刷範囲を割り出すことができないからである。
【０００５】
従って、本発明の目的は、同一印刷行のイメージ開始位置とイメージ終了位置が色毎に相違するカラーイメージを正しく印刷することができるカラープリンタを提供することにある。
【課題を解決するための手段】
【０００６】
本発明のカラープリンタは、印刷ヘッドと、この印刷ヘッドを主走査方向に移動させる移動機構と、１印刷行分の色別のイメージデータをそれぞれ記憶する複数のイメージバッファとを備える。そして、主走査方向における１印刷行の各色イメージの開始位置から終了位置までの範囲に対応する各色イメージバッファの記憶領域に、１印刷行分の各色イメージデータが格納される。各色イメージバッファに格納された各色イメージデータの開始アドレスと終了アドレスが検出され、次に、検出された開始アドレスのうちの最先頭アドレスと、検出された終了アドレスのうちの最後尾アドレスとが検出される。そして、検出された最先頭アドレスから最後尾アドレスまでのアドレス範囲に対応する主走査方向の位置範囲を印刷ヘッドが連続移動するように、移動機構が制御される。また、各色イメージバッファの最先頭アドレスから最後尾アドレスまでの記憶領域から各色イメージデータが読み出され、印刷ヘッドの連続移動に同期して印刷ヘッドに供給される。
【０００７】
このカラープリンタによれば、色毎にイメージの開始位置及び終了位置が相違していても、開始位置の中の最先頭の位置から終了位置の中の最後尾の位置までの範囲を印刷ヘッドが移動して、この範囲に対応するイメージバッファのアドレス範囲から各色イメージデータを読み出して印刷ヘッドに供給するので、完全なカラーイメージを正しく印刷することができる。
【０００８】
好適な実施形態では、各色イメージバッファ内に各色イメージデータを一旦、格納した後、その各色イメージデータの両端部にヌル領域が存在するかを調べ、存在する場合にはそのヌル領域を除外して各色の正味のイメージデータの開始アドレスと終了アドレスを確定する。そして、確定した正味のイメージデータの開始アドレスから最先頭アドレスを選び、また、確定した正味のイメージデータの終了アドレスから最後尾アドレスを選ぶ。これにより、正味のイメージデータが存在する範囲だけ印刷ヘッドが連続移動すれば済むので、各印刷行の印刷時間が短縮される。
【０００９】
好適な実施形態では、１印刷行の印刷が終了したときに次の印刷行における印刷ヘッドを連続移動させる位置範囲が未だ決まっていない場合、その１印刷行の印刷が終了した後に印刷ヘッドを所定の位置へ移動させる。所定位置とは、例えば、今印刷の終わった行の開始位置、或いは、０桁目の位置などである。これは、特に、単方向印刷で、且つどの印刷行も同じ又は近い位置から印刷を開始するような場合に、印刷速度を高める上で有効である。
【００１０】
本発明に従うカラープリンタの動作方法は、１印刷行分の色別のイメージデータの主走査方向における開始位置と終了位置を検出し、検出した開始位置の中の最先頭位置と、検出した終了位置の中の最後尾位置とを決定するステップと、最先頭位置から最後尾位置までの位置範囲を印刷ヘッドが連続移動するステップと、印刷ヘッドが各色イメージデータの開始位置から終了位置までを連続移動しているときに、各色イメージデータを用いて印刷ヘッドを駆動するステップとを備える。
【００１１】
好適な実施形態では、最先頭位置から最後尾位置を決定する際、１印刷行分の各色のイメージデータの両端部にヌル領域が存在するならば、そのヌル領域を各色のイメージデータから除外することにより、各色の正味のイメージデータの開始位置と終了位置を確定し、その確定した正味のイメージデータの開始位置と終了位置の中から最先頭位置と最後尾位置を決定する。
【００１２】
好適な実施形態では、１印刷行の印刷が終了したときに次の印刷行における印刷ヘッドを連続移動させる範囲が未だ決まっていない場合、１印刷行の印刷が終了した後に印刷ヘッドを所定の位置へ移動させる。
【００１３】
本発明の動作方法によれば、同一印刷行のイメージ開始位置とイメージ終了位置が色毎に相違していても、カラーイメージを正しく印刷することができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照して本発明の一実施形態にかかるカラープリンタを説明する。実際のカラープリンタは４色、６色、７色などの多数の着色剤を用いるものが存在するが、説明を分りやすくするため、この実施形態のカラープリンタはＹ、Ｍ、Ｃの３色の着色剤を用いるものとする。
【００１５】
このカラープリンタは、図１に示したようなキャリッジ２１及びこれに搭載された印刷ヘッド２３を備える。図３（Ａ）又は（Ｂ）に示すように、印刷ヘッド２３は、例えばＹ、Ｍ、Ｃの３色の色別ヘッド部２３Ｙ，２３Ｍ，２３Ｃを有し、各色別ヘッド部２３Ｙ，２３Ｍ，２３Ｃは夫々の色の着色剤を用紙に付着させるための多数のドット形成素子（例えば、インクジェットプリンタのインクジェットノズル、ワイヤインパクトドットプリンタのインパクトワイヤ、熱転写プリンタの発熱素子など）３３Ｙ，３３Ｍ，３３Ｃを有している。なお、３色の色別ヘッド部２３Ｙ，２３Ｍ，２３Ｃは、図３（Ａ）の例では副走査方向３１に配列され、図３（Ｂ）の例では主走査方向２７に配列されているが、これらは単なる例示であって、様々な配列形態が考え得る。
【００１６】
図１に示すように、印刷ヘッド２３は、キャリッジ２１によって運ばれて用紙（印刷媒体）２５表面を主走査方向（水平方向）２７に移動しつつ、Ｙ、Ｍ、Ｃの３色の１印刷行のイメージデータを読み込み３色の着色剤を用紙２５に付着させていくことにより、１印刷行分のカラーイメージ２９を形成していく。１印刷行のイメージを形成し終わると、用紙が副走査方向（垂直方向）へ送られて、印刷ヘッド２３は用紙２５の次の印刷行の垂直位置まで移動し、かつ、印刷ヘッド２３は次の印刷行の印刷開始位置まで主走査方向へ移動し、その後に次の印刷行のイメージの印刷を行う。
【００１７】
図４及び図５はそれぞれ、このカラープリンタがもつコントローラのハードウェア構成及びその機能的構成を示す。
【００１８】
図４に示すように、このプリンタ１００のコントローラは、ホスト装置５１と通信して印刷コマンドを受信するホストインタフェース回路５３、ホスト装置５１から受信した印刷コマンドに基づいて後述するような印刷処理を行うＣＰＵ５５、このＣＰＵのためのプログラムを格納したＲＯＭ５７、受信した印刷コマンドを一時蓄える受信バッファ６１や１印刷行のイメージデータを蓄えるイメージバッファ６３やワークエリアなどとして使用されるＲＡＭ９５、及びＣＰＵ５５の制御の下で紙送モータ６７やキャリッジモータ６９や印刷ヘッド２３などのメカニズムを駆動するメカニズムドライバ６５を備える。周知のとおり、紙送りモータ６７は用紙２５の副走査方向への送りを行い、キャリッジモータ６９はキャリッジ２１を主走査方向へ走行させる。イメージバッファ６３は、図５に示すように、Ｙ、Ｍ、Ｃの３色用のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃに分けられている。
【００１９】
このようなハード構成をもつコントローラは、これを機能的に見ると図５に示すように、受信部７１、コマンド解釈部７３、Ｙ、Ｍ、Ｃの３色用のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃ、３色用のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃ、３色用のヘッドドライバ７７Ｙ，７７Ｍ，７７Ｃ、印刷範囲決定部７９、紙送制御部８１、及びキャリッジモータドライバ８３を備える。
【００２０】
受信部７１は、ホスト装置５１から印刷コマンドを受信してこれを図４に示した受信バッファ６１に蓄積する。コマンド解釈部７３は、受信バッファ６１から印刷コマンドを順番に読み出し、これを解釈してその結果に応じ、例えばその印刷コマンドが１印刷行のイメージデータを送ってきたコマンドであるならば、その送られてきた１印刷行のＹ、Ｍ、Ｃ各色のイメージデータを、印刷ヘッド２３へ転送できる形式に変換したり必要な補正を施すなどした上で各色用のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃに書き込んだり、或いは、その印刷コマンドが次の紙送りを指示するものであるならば、紙送制御部８１に紙送命令を与える、などの動作を行う。
【００２１】
各色のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃは、各色のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃにそれぞれアクセスして、そこに格納されている１印刷行分の各色のイメージデータの開始アドレス（各色イメージの開始位置に相当する）と終了アドレス（各色イメージの終了位置に相当する）を検出し、その開始アドレスと終了アドレスを記憶する。印刷範囲決定部７９は、３色のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃが記憶した３色のイメージデータの開始及び終了アドレスに基づいて、印刷ヘッド２３へ各色イメージデータを転送する際にその各色イメージデータを各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃから読み出すべきアドレス範囲（以下、「読み出しアドレス範囲」といい、これは、印刷ヘッド２３を実際に走行させて印刷を行うべき水平方向の「印刷範囲」に相当する。）を決定する。そして、印刷範囲決定部７９は、その決定した「読み出しアドレス範囲」を各色のヘッドドライバ７７Ｙ，７７Ｍ，７７Ｃに指定してこれを起動すると共に、その決定した「読み出しアドレス範囲」に相当する水平方向（主走査方向）の「印刷範囲」を印印刷ヘッド２３が連続移動するように、キャリッジモータドライバ８３を介してキャリッジモータ６９を起動し制御する。
【００２２】
各色のヘッドドライバ７７Ｙ，７７Ｍ，７７Ｃは、印刷ヘッド２３が上記印刷範囲を連続移動している間、各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃの上記読出アドレス範囲からアドレス順に各色イメージデータを読み出して印刷ヘッド２３の各色ヘッド部２３Ｙ，２３Ｍ，２３Ｃに転送することにより、各色ヘッド部２３Ｙ，２３Ｍ，２３Ｃに印刷動作を行わせる。
【００２３】
紙送制御部８１は、コマンド解釈部７３からの紙送命令に応答して、用紙２５を垂直方向に送る。
【００２４】
以上の構成の下でのコントローラの動作を以下により具体的に説明する。
【００２５】
図６は、ホスト装置５１からプリンタ１００に送られて来る１印刷行分の印刷コマンドのセットの構成を示す。
【００２６】
図６に示すように、１印刷行分の印刷コマンドセットには、まず、各色のイメージデータを送ってくるイメージデータコマンドが３色分含まれる。１色分のイメージデータコマンドには、そのコマンドコード（図示せず）と、「色」を指定するパラメータと、水平方向（主走査方向）の「イメージ開始位置」を指定するパラメータと、「イメージデータ長」（イメージデータのデータ量）を指定するパラメータと、その色の「イメージデータ」それ自体とから構成される。この１色分のイメージデータコマンドの後に「キャリッジリターン」（ＣＲ）のコマンドが付く。この１色分のイメージデータコマンドとＣＲコマンドの組が、Ｙ、Ｍ、Ｃの３色分繰り返される。その後に、次の印刷行の「垂直位置」（副走査方向の位置）を指定した紙送りコマンドが続く。以上で、１印刷行分の印刷コマンドのセットが構成される。
【００２７】
図６に示したような１印刷行分の印刷コマンドのセットがホスト装置５１からプリンタ１００に送り込まれると、プリンタ１００のコマンド解釈部７３がその受信した各コマンドを受信順に解釈していく。最初に、各色のイメージデータコマンドを解釈することで、コマンド解釈部７３は、各色のイメージデータを各色のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃに格納する。
【００２８】
図７は、１印刷行分の印刷コマンドセットの受信が終了し、コマンド解釈部７３が３色の１印刷行分のイメージデータを３色のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃに格納し終わったときの、イメージバッファ６３Ｙ，６３Ｍ，６３Ｃの状態を示す。
【００２９】
図７に示すように、各色のイメージバッファ６３Ｙ，６３Ｍ、６３Ｃは、水平方向の印刷可能全範囲（つまり、印刷ヘッド２３が移動しながらイメージ形成することができる全移動範囲であり、例えば、第０桁〜第８０桁。）分の記憶領域をそれぞれもつ。コマンド解釈部７３は、各色のイメージデータコマンドを受けると、そのコマンドで指定された「イメージ開始位置」に対応する各色イメージバッファ６３Ｙ，６３Ｍ、６３Ｃのアドレス（以下、「イメージ開始アドレス」という）１０２Ｙ，１０２Ｍ，１０２Ｃから、各色の１印刷行分のイメージデータの各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃへの格納を開始する。そして、上記イメージ開始アドレス１０２Ｙ，１０２Ｍ，１０２Ｃにコマンドで指定された「イメージデータ長」を加えたアドレス（以下、「イメージ終了アドレス」という）１０３Ｙ，１０３Ｍ，１０３Ｃで、各色イメージデータの格納が終了する。結果として、図７に示すように、各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃ内のイメージ開始アドレス１０２Ｙ，１０２Ｍ，１０２Ｃからイメージ終了アドレス１０３Ｙ，１０３Ｍ，１０３Ｃまでの記憶領域１０４Ｙ，１０４Ｍ，１０４Ｃに、各色イメージデータが格納される。当然、各イメージバッファ６３Ｙ，６３Ｍ，６３Ｃ中のイメージ開始アドレス１０２Ｙ，１０２Ｍ，１０２Ｃよりアドレスの小さい記憶領域１０５Ｙ，１０５Ｍ，１０５Ｃと、イメージ終了アドレス１０３Ｙ，１０３Ｍ，１０３Ｃよりアドレスの大きい記憶領域１０６Ｙ，１０６Ｍ，１０６Ｃは、イメージデータが格納されていない空領域（ヌル領域）である。
【００３０】
このように各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃに各色の１印刷行分のイメージデータが格納されると、次に、各色のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃが、各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃにアクセスして、図８に示す空領域のスキャン操作を行う。
【００３１】
すなわち、図８に示すように、各色のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃは、各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃをイメージ開始アドレス１０２Ｙ，１０２Ｍ，１０２Ｃからアドレス増方向へ、及びイメージ終了アドレス１０３Ｙ，１０３Ｍ，１０３Ｃからアドレス減方向へスキャンして、各バッファに格納した各色イメージデータの両端部分に印刷の必要の無い空白のイメージデータ（ヌルデータ）が格納されている空領域（ヌル領域）が無いかチェックする。そのようなヌル領域があれば、そのヌル領域をイメージデータから除外して、実際に印刷の必要のある正味のイメージデータのイメージ開始アドレス１０７Ｙ，１０７Ｍ，１０７Ｃとイメージ終了位置１０８Ｙ，１０８Ｍ，１０８Ｃを確定する。確定したイメージ開始位置１０７Ｙ，１０７Ｍ，１０７Ｃとイメージ終了位置１０８Ｙ，１０８Ｍ，１０８Ｃの外側の記憶領域はヌルデータのみのヌル領域である。各色のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃは、確定した正味のイメージ開始アドレス１０７Ｙ，１０７Ｍ，１０７Ｃとイメージ終了位置１０８Ｙ，１０８Ｍ，１０８Ｃを記憶する。
【００３２】
次に、プリンタ１００の印刷範囲決定部７９が、各色のイメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃが記憶した正味のイメージ開始アドレス１０７Ｙ，１０７Ｍ，１０７Ｃとイメージ終了位置１０８Ｙ，１０８Ｍ，１０８Ｃに基づいて、図９に示すようにして、３色のイメージバッファ６３Ｙ，６３Ｍ，６３Ｃの読み出しアドレス範囲を決定する。
【００３３】
すなわち、図９に示すように、イメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃが記憶した３色の正味のイメージ開始アドレス１０７Ｙ，１０７Ｍ，１０７Ｃを比較して、その中の最小のアドレスつまり正味のイメージデータの最先頭アドレス１０９（図示の例ではＭのイメージ開始アドレス１０７Ｍ）を選択する。また、イメージ範囲検出部７５Ｙ，７５Ｍ，７５Ｃが記憶した３色の正味のイメージ終了アドレス１０８Ｙ，１０８Ｍ，１０８Ｃを比較して、その中の最大のアドレスつまり正味のイメージデータの最後尾アドレス１１０（図示の例ではＣのイメージ開始アドレス１０８Ｃ）を選択する。この最先頭アドレス１０９から最後尾アドレス１１０までのアドレス範囲が、イメージバッファ６３Ｙ，６３Ｍ，６３Ｃの読み出しアドレス範囲１１１となる。図９に示すように、この読み出しアドレス範囲１１１にはＹ、Ｍ、Ｃの３色の正味のイメージデータが完全に含まれているから、この読み出しアドレス範囲１１１のイメージデータ（正味のイメージデータと、その前又は後のヌルデータを含む）を印刷ヘッド２３に転送すれば、正しくカラーイメージが形成できることになる。
【００３４】
以上のように読み出しアドレス範囲１１１（つまり、正味のイメージデータの最先頭アドレス１０９と最後尾アドレス１１０）を決定した後、印刷範囲決定部７９は、その最先頭アドレス１０９と最後尾アドレス１１０を各色ヘッドドライバ７７Ｙ，７７Ｍ，７７Ｃに指定して、各色ヘッドドライバ７７Ｙ，７７Ｍ，７７Ｃを起動する。各色ヘッドドライバ７７Ｙ，７７Ｍ，７７Ｃは、各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃの読み出しアドレス範囲１１１（つまり、最先頭アドレス１０９から最後尾アドレス１１０までの範囲）からアドレス順に各色イメージデータを読み出して、各色ヘッド部２３Ｙ，２３Ｍ，２３Ｃに転送する。
【００３５】
このイメージデータの転送と同期して、印刷範囲決定部７９は、最先頭アドレス１０９に対応する水平方向（主走査方向）の印刷開始位置１１３から、最後尾アドレス１１０に対応する水平方向の印刷終了位置１１４までの範囲１１５（つまり、上述した「印刷範囲」）を印刷ヘッド２３が連続移動するように、キャリッジモータドライバ８３を介してキャリッジモータ６９を駆動し制御する。この場合、印刷開始位置１１３が決定できた時点で、まず、前の印刷行の終了位置で止まっている印刷ヘッド２３を印刷開始位置１１３まで移動させ、その後に、上記イメージデータの転送と同期して印刷ヘッド２３を印刷開始位置１１３から印刷終了位置１１４まで連続移動させる。結果として、印刷ヘッド２３は、印刷開始位置１１３から印刷終了位置１１４まで連続移動しつつ、各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃの読み出しアドレス範囲１１１から転送されてきた３色のイメージデータに基づいて、用紙２５上にカラーイメージを形成していく。
なお、双方向印刷を行う場合には、上に説明したデータ転送及びヘッド移動動作と、それとは逆方向の動作、つまり、最後尾アドレス１１０から最先頭アドレス１０９へ逆アドレス順にイメージデータを読み出し印刷ヘッド２３へ転送しつつ、印刷終了位置１１４から印刷開始位置１１３へ印刷ヘッド２３を連続移動させる動作とを、交互に行う。
【００３６】
以上のように、３色の正味のカラーイメージデータの最先頭アドレス１０９と最後尾アドレス１１０までの読み出しアドレス範囲１１１から、３色のイメージデータを読み出して印刷ヘッド２３へ転送すると共に、その読み出しアドレス範囲１１１に対応する印刷範囲１１５を印刷ヘッド２３が連続移動することにより、各色イメージデータの開始位置及び終了位置が色毎に異なっていても、正しくカラーイメージを印刷することができる。しかも、必要最低限の範囲だけ印刷ヘッド２３を連続移動させるので１印刷行の印刷時間も短い。
【００３７】
こうして１印刷行の印刷が終わった後、プリンタ１００のコマンド解釈部７３は、次の印刷行の垂直位置を指定した紙送りコマンドに従って、用紙２５上の次の印字行の垂直位置に印刷ヘッド２３が位置するように、紙送り制御部８１を介して紙送りモータ６７を駆動して用紙２５を垂直方向（副走査方向）に送る。なお、この紙送りは、次の印刷行の印印刷開始位置１１３へ印刷ヘッド２３を移動させるときに、これと一緒に行ってもよい。
【００３８】
１つの印刷行の印刷が終了した後、次の印刷行の印刷のためにキャリッジの移動と紙送りをどのタイミングでどのように行うかについては、幾つものバリーエーションが考え得る。例えば、単方向印刷の場合であって、どの印刷行も同じ位置又は近い位置から印刷を開始すること可能性が高い場合、イメージデータの転送量が多い又はプリンタの処理速度が遅いなどの理由で１印刷行の印刷終了時点で次の印刷行のイメージデータが未だ準備できてなければ、その１印刷行の印刷終了後、すぐさま今印刷し終わった印刷行の開始位置へキャリッジを移動させるようにしてもよい。そうすると、次の印刷行のイメージデータが準備でき次第、即座に又は僅かな遅れだけで次行の印刷を開始することができる。その場合、キャリッジ移動時に次印刷行までの紙送り量が確定していれば、キャリッジ移動と同じに紙送りを行うことができる。また、キャリッジの移動先は、前行の開始位置ではなしに、０桁位置でもよい。そうすると、次行開始位置が異なっている場合の無駄なロジカルシークを無くすることが可能である。
【００３９】
以上、本発明の一実施形態を説明したが、これらの実施形態はあくまで本発明の説明のための例示であり、本発明をこれら実施形態にのみ限定する趣旨ではない。従って、本発明は、上記実施形態以外の様々な形態でも実施することができるものである。例えば、図３（Ｂ）に示すように、各色のヘッド部２３Ｙ，２３Ｍ，２３Ｃが主走査方向に並んでいる場合には、各色ヘッド間の距離に相当するオフセットを、各色のヘッド部２３Ｙ，２３Ｍ，２３Ｃの駆動タイミング又は各色イメージバッファ６３Ｙ，６３Ｍ，６３Ｃからの読み出しアドレス範囲に適用する必要がある。
【図面の簡単な説明】
【００４０】
【図１】本発明が適用されるカラープリンタの印刷ヘッドを移動させるための機械構成を示す斜視図。
【図２】色毎にイメージデータの開始位置と終了位置が異なる例を示す説明図。
【図３】印刷ヘッドの正面図。
【図４】本発明の一実施形態にかかるカラープリンタのコントローラのハードウェア構成を示すブロック図。
【図５】同コントローラの機能的構成を示すブロック図。
【図６】１印刷行分の印刷コマンドのセットの構成を示す説明図。
【図７】１印刷行分のイメージデータが格納し終えた段階のイメージバッファの状態を示す説明図。
【図８】イメージバッファの空領域スキャンの様子を示す説明図。
【図９】読み出しアドレス範囲及び印刷範囲を決定する様子を示す説明図。
【符号の説明】
【００４１】
２１…キャリッジ、２３…印刷ヘッド、６３…イメージバッファ、７３…コマンド解釈部、７５…イメージ範囲検出部、７７…ヘッドドライバ、７９…印刷範囲決定部、１０２…イメージ開始アドレス、１０３…イメージ終了アドレス、１０７…正味のイメージ開始アドレス、１０８…正味のイメージ終了アドレス、１０９…正味のイメージの最先頭アドレス、１１０…正味のイメージの最後尾アドレス、１１１…読み出しアドレス範囲、１１３…印刷開始位置、１１４…印刷終了位置、１１５…印刷範囲。
【図１】
2008055917.tif 000003
【図２】
2008055917.tif 000004
【図３】
2008055917.tif 000005
【図４】
2008055917.tif 000006
【図５】
2008055917.tif 000007
【図６】
2008055917.tif 000008
【図７】
2008055917.tif 000009
【図８】
2008055917.tif 000010
【図９】
2008055917.tif 000011