(57)【要約】【課題】  印刷装置側に必要な記憶容量を抑制しながら画像を迅速に印刷する。【解決手段】  画素を所定の複数個ずつ画素群にまとめ、画素群内に形成するドットの個数を決定し、個数データに印刷装置に供給する。印刷装置では、個数データを画素毎にドット形成の有無を表すドットデータに変換してバッファに蓄えておき、バッファのデータでヘッドを駆動することによって画像を印刷する。個数データの変換に際しては、画素群毎に少なくとも１回は複数パスのドットデータをバッファに蓄える。こうすれば個数データを変換して得られた全画素のドットデータを記憶せずに済むので、印刷装置側に必要な記憶容量を大きく抑制することが可能となる。【選択図】  図１
2005086660.tif 000002
【特許請求の範囲】
【請求項１】
画像データに所定の画像処理を施す画像処理装置と、該画像処理の結果に基づいてドットを形成することにより印刷媒体上に画像を印刷する印刷装置と、を備える印刷システムであって、
前記画像処理装置は、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を、前記画像データに基づいて決定するドット個数決定手段と、
前記画素群毎に決定したドット個数のデータたる個数データを、前記印刷装置に出力する個数データ出力手段と
を備えており、
前記印刷装置は、
前記印刷媒体上で往復動する度に複数のドットを互いに間隔を空けて形成しながら、該往復動を所定の複数回行うことによってドットの列たるラスタを形成するヘッドと、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する画素組検出手段と、
前記個数データを受け取って記憶しておく個数データ記憶手段と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶するドットデータ記憶手段と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給するドットデータ供給手段と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成するドット形成手段と
を備え、
前記ドットデータ記憶手段は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する手段であることを特徴とする印刷システム。
【請求項２】
請求項１記載の印刷システムであって、
前記ドットデータ記憶手段は、前記Ｍ組のドットデータとして、少なくとも前記画素群内では続けてドットが形成される複数の画素組についてのドットデータを、同時に記憶する手段である印刷システム。
【請求項３】
請求項２記載の印刷システムであって、
前記ドットデータ記憶手段は、前記Ｍ組のドットデータとして、少なくとも前記画素群内で最後に残った複数の画素組についてのドットデータを、同時に記憶する手段である印刷システム。
【請求項４】
請求項１ないし請求項３のいずれかに記載の印刷システムであって、
前記ドットデータ記憶手段は、前記画素群内で各画素にドットが形成される画素の序列に基づき、前記個数データを前記ドットデータに変換して記憶する手段である印刷システム。
【請求項５】
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら、画像を印刷する印刷装置であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する個数データ記憶手段と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する画素組検出手段と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶するドットデータ記憶手段と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給するドットデータ供給手段と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成するドット形成手段と
を備え、
前記ドットデータ記憶手段は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する手段であることを特徴とする印刷装置。
【請求項６】
請求項５記載の印刷装置であって、
前記ドットデータ記憶手段は、前記Ｍ組のドットデータとして、少なくとも前記画素群内では続けてドットが形成される複数の画素組についてのドットデータを、同時に記憶する手段である印刷装置。
【請求項７】
請求項６記載の印刷装置であって、
前記ドットデータ記憶手段は、前記Ｍ組のドットデータとして、少なくとも前記画素群内で最後に残った複数の画素組についてのドットデータを、同時に記憶する手段である印刷装置。
【請求項８】
印刷媒体上を往復動しながら互いに間隔を空けて複数のドットを形成するヘッドを画像データに基づいて駆動しつつ、該往復動を所定の複数回行うことによりドットの列たるラスタを形成しながら画像を印刷する印刷方法であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を前記画像データに基づいて決定する第１の工程と、
前記決定したドットの個数を前記画素群毎に記憶しておく第２の工程と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する第３の工程と、
前記画素群毎に記憶されているドットの個数に基づいて、画素毎にドット形成の有無を表すドットデータを決定し、前記画素組に含まれる各画素についての該ドットデータを記憶する第４の工程と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する第５の工程と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する第６の工程と
を備え、
前記第４の工程は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する工程であることを特徴とする印刷方法。
【請求項９】
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら、画像を印刷する印刷方法であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する工程（Ａ）と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する工程（Ｂ）と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶する工程（Ｃ）と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する工程（Ｄ）と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する工程（Ｅ）と
を備え、
前記工程（Ｃ）は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する工程であることを特徴とする印刷方法。
【請求項１０】
印刷媒体上を往復動しながら互いに間隔を空けて複数のドットを形成するヘッドを画像データに基づいて駆動しつつ、該往復動を所定の複数回行うことによりドットの列たるラスタを形成しながら画像を印刷する方法を、コンピュータを用いて実現するためのプログラムであって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を前記画像データに基づいて決定する第１の機能と、
前記決定したドットの個数を前記画素群毎に記憶しておく第２の機能と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する第３の機能と、
前記画素群毎に記憶されているドットの個数に基づいて、画素毎にドット形成の有無を表すドットデータを決定し、前記画素組に含まれる各画素についての該ドットデータを記憶する第４の機能と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する第５の機能と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する第６の機能と
をコンピュータを用いて実現するとともに、
前記第４の機能は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する機能であることを特徴とするプログラム。
【請求項１１】
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら画像を印刷する方法を、コンピュータを用いて実現するためのプログラムであって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する機能（Ａ）と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する機能（Ｂ）と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶する機能（Ｃ）と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する機能（Ｄ）と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する機能（Ｅ）と
をコンピュータを用いて実現するとともに、
前記機能（Ｃ）は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する機能であることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、画像データに所定の画像処理を施して画像を印刷する技術に関し、詳しくは、画像処理が施された画像データを印刷装置に迅速に転送することによって、画像を迅速に印刷する技術に関する。
【背景技術】
【０００２】
印刷媒体上にドットを形成することで画像を印刷する印刷装置は、各種画像機器の出力装置として広く使用されている。これら印刷装置では、画像は画素と呼ばれる小さな領域に細分された状態で扱われており、ドットはこれら画素に形成される。こうした印刷装置は、個々の画素についてはドットを形成するか否かのいずれかの状態しか表現し得ないが、画像全体としてみればドットが密に形成されている領域や、まばらに形成されている領域を生じさせることが可能である。例えば、印刷用紙上に黒いインクのドットを形成する場合、ドットが密に形成されている領域は暗く見えるし、逆にドットがまばらに形成されている領域は明るく見える。従って、表現しようとする画像の階調値に合わせてドットの形成密度を適切に制御してやれば、多階調の画像を印刷することが可能である。
【０００３】
こうした印刷装置では、画像の階調値に応じた適切な密度でドットを形成するために、通常、次のような方法が用いられる。先ず、印刷しようとする画像に所定の画像処理を施して、画像データを画素毎にドット形成の有無を表すデータに変換する。画像に適切な画像処理を施してやれば、画像データの階調値に応じてドットが適切な密度で形成されるようなデータを生成することができる。次いで、得られたドット形成の有無を示すデータを印刷装置に供給する。印刷装置では、こうして送られてきたデータに従って各画素にドットを形成する。こうすれば、画像データの階調値に応じて適切な密度でドットを形成することができ、所望の画像を印刷することが可能となる。
【０００４】
このような方法で画像を印刷していることから、画像を構成する画素の数が多くなると、画像処理を行ったデータの受け渡しに時間がかかってしまい、迅速な印刷を行うことが困難となる。特に近年では、画質の向上や大型化の要請に伴って画像を構成する画素数が増加する傾向にあり（例えば、特許文献１）、画像を迅速に印刷することが次第に困難となりつつある。
【０００５】
こうした問題を解決するために、本願の発明者は、複数個の画素を画素群にまとめて、画素群内に形成するドット個数を求め、画素毎にドット形成の有無を表すデータの代わりにドット個数のデータ（以下では、個数データと呼ぶことがあるものとする）を印刷装置に供給して画像を印刷する技術を開発して、既に出願済みである（特願２００３−８７１７６号）。かかる出願済みの技術では、印刷装置は画素群毎にドット個数のデータを受け取ると、このデータを画素群に含まれる画素についてのドット形成の有無を表すデータに復元した後、得られたデータに従ってドットを形成することにより画像を印刷する。画素毎のドット形成の有無を表すデータの代わりに、ドット個数のデータを画像処理装置から印刷装置に供給することとすれば、画素数が多くなっても迅速にデータを供給することができるので、画像を迅速に印刷することが可能となる。
【０００６】
【特許文献１】特開２０００−１１５７１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、こうした出願済みの技術によれば、画像を迅速に印刷することは可能となるものの、印刷装置の側で必要な記憶容量が増加してしまうと言う問題があった。すなわち、ドットを形成して画像を印刷する方式のこうした印刷装置では、主に画質上の要請から、例え連続した画素にドットを形成する場合でも、これらドットを続けて一度に形成するのではなく、互いに間隔を空けて飛び飛びの位置にドットを形成しながら、複数回に分けて形成することが通常行われている。従って、画像処理装置から画素群に形成するドット個数のデータを受け取り、このデータを画素毎にドット形成の有無を表すデータに変換しても、直ちにドットが形成される画素を除いては展開したデータを一旦記憶しておくことになる。
【０００８】
もちろん、これら展開したデータが記憶されている全ての画素にドットを形成してしまえば、データを破棄することも可能となる。しかし、実際には全画素にドットを形成する前に、次の画素群の画素にドットを形成する必要が生じて、新たな画素群についてのドット個数のデータを受け取り、これを画素毎にドット形成の有無を表すデータに展開する必要が生じる。こうして新たに展開したデータの内、一部の画素については直ちにドットが形成されるものの、残りの画素についてはドットが形成されるまでデータを記憶しておくことになる。このように、画素群に形成するドット個数のデータを、画素毎にドット形成の有無を表すデータに展開しても直ちに使用されるのは一部のデータだけであり、少なくとも残りのデータについては使用されるまで記憶しておかなければならい。結局、記憶しておかなければならない画素数が増加してしまい、印刷装置に大きな記憶容量を用意しておく必要が生じるのである。
【０００９】
この発明は、従来技術におけるこうした課題を解決するためになされたものであり、印刷装置側に必要な記憶容量を増加させることなく、画像を迅速に印刷することが可能な技術の提供を目的とする。
【課題を解決するための手段】
【００１０】
上述した課題の少なくとも一部を解決するために、本発明の印刷システムは次の構成を採用した。すなわち、
画像データに所定の画像処理を施す画像処理装置と、該画像処理の結果に基づいてドットを形成することにより印刷媒体上に画像を印刷する印刷装置と、を備える印刷システムであって、
前記画像処理装置は、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を、前記画像データに基づいて決定するドット個数決定手段と、
前記画素群毎に決定したドット個数のデータたる個数データを、前記印刷装置に出力する個数データ出力手段と
を備えており、
前記印刷装置は、
前記印刷媒体上で往復動する度に複数のドットを互いに間隔を空けて形成しながら、該往復動を所定の複数回行うことによってドットの列たるラスタを形成するヘッドと、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する画素組検出手段と、
前記個数データを受け取って記憶しておく個数データ記憶手段と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶するドットデータ記憶手段と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給するドットデータ供給手段と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成するドット形成手段と
を備え、
前記ドットデータ記憶手段は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する手段であることを特徴とする。
【００１１】
また、上記の印刷システム対応する本発明の印刷方法は、
印刷媒体上を往復動しながら互いに間隔を空けて複数のドットを形成するヘッドを画像データに基づいて駆動しつつ、該往復動を所定の複数回行うことによりドットの列たるラスタを形成しながら画像を印刷する印刷方法であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を前記画像データに基づいて決定する第１の工程と、
前記決定したドットの個数を前記画素群毎に記憶しておく第２の工程と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する第３の工程と、
前記画素群毎に記憶されているドットの個数に基づいて、画素毎にドット形成の有無を表すドットデータを決定し、前記画素組に含まれる各画素についての該ドットデータを記憶する第４の工程と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する第５の工程と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する第６の工程と
を備え、
前記第４の工程は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する工程であることを特徴とする。
【００１２】
かかる本発明の印刷システムおよび印刷方法においては、印刷媒体上にドットを形成しながらヘッドを往復動させ、ラスタを所定の複数回の往復動に分けて形成しながら画像を印刷する。画像の印刷に際しては、ヘッドが各回の往復動でドットを形成する複数の画素を、各々の往復動に対応する画素組として検出し、該画素組に含まれる各画素についてのドットデータを、前記個数データから生成して記憶する。そして、得られたドットデータを前記の往復動に合わせてヘッドに供給しながら、印刷媒体上にドットを形成することによって画像を印刷する。ここで、ドットデータを記憶するに際して、画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する。
【００１３】
画素群に含まれる全画素のドットデータを一度に生成するものとした場合、ラスタを複数回の往復動に分けて形成している関係上、多くの画素のドットデータを長い間記憶しておかなければならず、多大な記憶容量が必要となる。かといって、ヘッドの往復動に合わせて該当する画素組のドットデータのみを記憶したのでは、ヘッドが往復動する度に個数データをドットデータに変換しなければならず、変換効率が低下してしまう。これに対して本願発明では、画素群毎に少なくとも１回は、２組以上の画素組についてのドットデータを生成して記憶しておく。こうすれば、画素群に含まれる全ての画素組のドットデータを記憶するのでない限り、一度に必要な記憶容量を抑制することが可能であり、また、画素群毎に個数データをドットデータに変換する回数を減らすことができるので、変換効率の低下も抑制することが可能となる。
【００１４】
もちろん、同時に複数の画素組についてのドットデータを記憶した場合、直ちにドットを形成する画素組を除いて他の画素組のドットデータについては、ドットが形成されるまでの間、記憶しておかなければならず、そのための記憶容量が必要となる。しかし、全ての画素組のドットデータを記憶する場合に比べれば、必要な記憶容量を抑制することが可能である。
【００１５】
尚、画素組のドットデータを記憶するに際しては、個数データを変換して画素群に含まれる全画素のドットデータを生成した後、目的とする画素組の画素についてだけドットデータを記憶しても良く、あるいは目的とする画素組の画素についてだけ、個数データをドットデータに変換して記憶することも可能である。
【００１６】
こうした印刷システムにおいては、少なくとも画素群内では続けてドットが形成される複数の画素組については、変換されたドットデータを同時に記憶することとしても良い。
【００１７】
同時に記憶しておく複数組のドットデータが、画素群内では続けてドットが形成される画素組のデータであれば、例え連続してドットが形成される画素組ではなくとも、ドットデータはほどなくヘッドに供給されることになるので、ドットデータを記憶しておくために要する容量を抑制することができる。
【００１８】
あるいは、同時に記憶する複数組のドットデータとして、次のような画素組のドットデータを記憶することとしても良い。すなわち、画素群に含まれるドットデータを画素組ずつヘッドに供給しながらドットを形成して行き、最後の複数の画素組（ある時点で画素群に残っている全ての画素組）についてのドットデータを、同時に記憶することとしてもよい。
【００１９】
画素群には未だドットデータに変換されていない画素組が、例えば２組しか残っていないものとすると、これら画素組のドットデータを記憶しておけば、もはやその画素群についての個数データを記憶しておく必要はない。すなわち、個数データの記憶に要していた分だけ少ない記憶容量で、画素組２組分のドットデータを記憶することができる。このことから明らかなように、画素群内で最後にドットが形成される複数組の画素組については、ドットデータを同時に変換して記憶することとすれば、ドットデータの記憶のために要する容量の増加を抑制することが可能となる。
【００２０】
上記の印刷システムにおいては、個数データを変換して、画素群内に形成するドット個数からドットデータを求めるに際して、該画素群内で各画素にドットが形成される画素の序列に基づいてドットを形成する画素を決定することとしてもよい。
【００２１】
画素群内でドットが形成される画素の序列、すなわち画素群内で何番目にドットが形成される画素であるかについての情報が分かれば、画素群内に形成するドットの個数から、簡便にドットデータを得ることができるので好適である。
【００２２】
また、従来技術の有する前述した課題の少なくとも一部を解決するために、本発明の印刷装置は次の構成を採用した。すなわち、
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら、画像を印刷する印刷装置であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する個数データ記憶手段と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する画素組検出手段と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶するドットデータ記憶手段と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給するドットデータ供給手段と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成するドット形成手段と
を備え、
前記ドットデータ記憶手段は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する手段であることを特徴とする。
【００２３】
更に、上記の印刷装置に対応する本発明の印刷方法は、
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら、画像を印刷する印刷方法であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する工程（Ａ）と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する工程（Ｂ）と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶する工程（Ｃ）と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する工程（Ｄ）と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する工程（Ｅ）と
を備え、
前記工程（Ｃ）は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する工程であることを特徴とする。
【００２４】
こうした本発明の印刷装置および印刷方法においても、印刷媒体上にドットを形成しながらヘッドを往復動させ、ラスタを所定の複数回の往復動に分けて形成しながら画像を印刷する。印刷に際しては、個数データをドットデータに変換して画素組毎に記憶しておき、ヘッドの往復動に合わせてドットデータをヘッドに供給してドットを形成する。ドットデータを記憶するに際して、画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する。
【００２５】
こうすれば、画素群に含まれる全ての画素組のドットデータを同時に記憶する必要がないので、必要な記憶容量を抑制することができる。また、少なくとも１回は、複数の画素組のドットデータを同時に記憶しているので、個数データをドットデータに変換する回数を減らすことができ、変換効率の低下も抑制することが可能である。
【００２６】
こうした印刷装置においては、少なくとも前記画素群内では続けてドットが形成される複数の画素組については、前記変換されたドットデータを同時に記憶することとしてもよい。
【００２７】
これら複数組の画素組が、画素群内では続けてドットが形成される画素組であれば、例え連続してドットが形成される画素組ではなくとも、ドットデータはほどなくヘッドに供給されることになるので、ドットデータを記憶しておくために要する容量を抑制することができる。
【００２８】
ドットデータが同時に記憶する複数組としては、画素群に最後に残った複数の画素組としてもよい。すなわち、ドットデータを画素組の単位でヘッドに供給していき、ある時点で画素群に残っている全ての画素組を、ドットデータを同時に記憶するＭ組の画素組としてもよい。
【００２９】
画素群には未だドットデータに変換されていない画素組がＭ組しか残っていない場合、これら画素組のドットデータを記憶しておけば、もはやその画素群についての個数データを記憶しておく必要はない。従って、このような場合には、これらＭ組のドットデータを同時に記憶することとすれば、必要な記憶容量の増加を招くことなく、迅速にドットデータに変換することが可能である。
【００３０】
更に本発明は、上述した印刷方法を実現するためのプログラムをコンピュータに読み込ませることで、コンピュータを用いて実現することも可能である。従って、本発明は次のようなプログラム、あるいは該プログラムを記録した記録媒体としての態様も含んでいる。すなわち、上述した印刷方法に対応する本発明の第１のグログラムは、
印刷媒体上を往復動しながら互いに間隔を空けて複数のドットを形成するヘッドを画像データに基づいて駆動しつつ、該往復動を所定の複数回行うことによりドットの列たるラスタを形成しながら画像を印刷する方法を、コンピュータを用いて実現するためのプログラムであって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を前記画像データに基づいて決定する第１の機能と、
前記決定したドットの個数を前記画素群毎に記憶しておく第２の機能と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する第３の機能と、
前記画素群毎に記憶されているドットの個数に基づいて、画素毎にドット形成の有無を表すドットデータを決定し、前記画素組に含まれる各画素についての該ドットデータを記憶する第４の機能と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する第５の機能と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する第６の機能と
をコンピュータを用いて実現するとともに、
前記第４の機能は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する機能であることを特徴とする。
【００３１】
また、上記の第１のプログラムに対応する本発明の第１の記録媒体は、
印刷媒体上を往復動しながら互いに間隔を空けて複数のドットを形成するヘッドを画像データに基づいて駆動しつつ、該往復動を所定の複数回行うことによりドットの列たるラスタを形成しながら画像を印刷する方法を実現するためのプログラムを、コンピュータで読み取り可能に記録した記録媒体であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群について、該画素群内に形成されるドットの個数を前記画像データに基づいて決定する第１の機能と、
前記決定したドットの個数を前記画素群毎に記憶しておく第２の機能と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する第３の機能と、
前記画素群毎に記憶されているドットの個数に基づいて、画素毎にドット形成の有無を表すドットデータを決定し、前記画素組に含まれる各画素についての該ドットデータを記憶する第４の機能と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する第５の機能と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する第６の機能と
をコンピュータを用いて実現するプログラムを記憶しているとともに、
前記第４の機能は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する機能であることを特徴とする。
【００３２】
更に、上述した印刷装置に対応する本発明の第２のプログラムは、
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら画像を印刷する方法を、コンピュータを用いて実現するためのプログラムであって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する機能（Ａ）と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する機能（Ｂ）と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶する機能（Ｃ）と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する機能（Ｄ）と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する機能（Ｅ）と
をコンピュータを用いて実現するとともに、
前記機能（Ｃ）は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する機能であることを特徴とする。
【００３３】
更に、上述した印刷方法に対応する本発明の第２の記録媒体は、
ヘッドを印刷媒体上で往復動させる度に互いに間隔を空けて複数のドットを形成し、該往復動を所定の複数回行うことによってドットの列たるラスタを形成しながら画像を印刷する方法を実現するためのプログラムを、コンピュータで読み取り可能に記録した記録媒体であって、
前記画像を構成する複数の画素が所定の複数個ずつまとめられた画素群毎に、該画素群内に形成すべきドットの個数を表す個数データを受け取って記憶する機能（Ａ）と、
前記ヘッドが各回の往復動でドットを形成する複数の画素を、該各々の往復動に対応する画素組として検出する機能（Ｂ）と、
前記記憶されている個数データを、画素毎にドット形成の有無を表すデータたるドットデータに変換し、前記画素組に含まれる各画素についての該ドットデータを記憶する機能（Ｃ）と、
前記記憶されたドットデータを、前記往復動に合わせて前記ヘッドに供給する機能（Ｄ）と、
前記供給されたドットデータに基づいて前記ヘッドを駆動することにより、前記印刷媒体上にドットを形成する機能（Ｅ）と
をコンピュータを用いて実現するプログラムを記憶しているとともに、
前記機能（Ｃ）は、前記画素群毎に少なくとも１回は、Ｍ組（Ｍは、２以上且つ、該画素群に含まれる前記画素組の組数たるＮ未満の整数）の画素組について、前記変換されたドットデータを同時に記憶する機能であることを特徴とする。
【００３４】
これらプログラム、あるいは記録媒体に記録されたプログラムをコンピュータに読み込ませ、該コンピュータを用いて上記の各種機能を実現すれば、印刷装置側に必要な記録容量を低減しながら、迅速に画像を印刷することが可能となる。
【発明を実施するための最良の形態】
【００３５】
以下では、上述した本願発明の内容を明確にするために、次のような順序に従って実施例に基づき説明する。
Ａ．発明の概要：
Ｂ．装置構成：
Ｃ．画像印刷処理の概要：
Ｄ．個数データ生成処理：
Ｅ．個数データデコード処理：
Ｆ．変形例：
【００３６】
Ａ．発明の概要：
実施例についての詳細な説明に入る前に、図１を参照しながら、本発明の概要について説明しておく。図１は、本発明の印刷装置および印刷システムの概要を例示した説明図である。本印刷システムは、画像処理装置としてのコンピュータ１０と、プリンタ２０などから構成されており、コンピュータ１０に所定のプログラムがロードされて実行されることにより、これらコンピュータ１０およびプリンタ２０などが全体として一体の印刷システムとして機能する。プリンタ２０には、微細なインク滴を吐出するヘッド２２が備えられており、印刷媒体上の適切な位置でヘッド２２から印刷媒体に向かってインク滴を吐出してやれば、任意の箇所にインクのドットを形成することができる。こうした機能を利用して、プリンタ２０は、印刷媒体上でヘッド２２を往復動させながらインク滴を吐出し、印刷媒体上に適切な分布でインクドットを形成することによって画像を印刷している。このように、プリンタ２０ではインクドットを形成することで画像を印刷する関係上、印刷しようとする画像に予め所定の画像処理を施して、画像中のどの画素にドットを形成すればよいかを示すデータに変換しておく必要がある。こうした画像処理は、通常はプリンタ２０とは別体に設けられたコンピュータ１０によって行われ、得られたデータをコンピュータ１０からプリンタ２０に供給することによって画像を印刷している。
【００３７】
このように、コンピュータ１０で画像処理を行い、得られたデータをプリンタ２０に供給して画像を印刷する印刷システムでは、画素数が増加して画像のデータが大きくなると、プリンタ２０への供給に時間がかかってしまうので画像を迅速に印刷することが困難となる。そこで、図１に例示した印刷システムのコンピュータ１０では、画素を所定の複数個ずつ画素群としてまとめて画素群内に形成するドット個数を決定し、得られた個数データをプリンタ２０に供給する。図１に示したドット個数決定モジュール１２は、印刷しようとする画像に所定の画像処理を施すことによって、画素群内に形成するドット個数を画素群毎に決定する処理を行う。
【００３８】
ドット個数決定モジュール１２の隣に一点鎖線で囲って示した枠内には、このモジュールが、画素群内に形成するドットの個数を決定する様子を概念的に示している。ここで、枠内に示した小さな矩形は画素を示しており、画素内に表示された黒丸は、その画素にドットが形成されることを表している。ドットを形成する画素は、いわゆる誤差拡散法やディザ法などの周知の画像処理方法を画像データに適用して決定することができる。図１に例示したドット個数決定モジュール１２では、縦横２列ずつの４つの画素を画素群としてまとめて、画素群内に形成するドットの個数を決定する。例えば、一点鎖線で囲った枠内の一番左端にある画素群については、画素群内に形成するドットの個数は１個であり、左から２番目の画素群内に形成するドットの個数は０個で、一番右端の画素群内に形成するドットの個数は２個と、画素群毎にドットの個数を決定する。個数データ出力モジュール１４は、こうして画素群毎に決定したドットの個数を個数データとしてプリンタ２０に向かって出力する。ドット形成の有無を画素毎に出力するよりも、このように画素群内に形成されるドットの個数を出力した方がデータ量を少なくすることができるので、プリンタ２０にデータを迅速に供給することが可能である。
【００３９】
プリンタ２０では、こうして受け取った個数データを、画素毎にドット形成の有無を表したデータに変換した後、得られたデータに従ってヘッド２２を駆動することによって画像を印刷する。ここで、図１に示したプリンタ２０では、コンピュータ１０から受け取った個数データを、画素毎にドット形成の有無を表すデータに直ちに変換するのではなく、一旦、バッファメモリ２４に記憶しておく。そして、印刷媒体上で往復動しながらドットを形成するヘッド２２の動きに合わせて個数データをドット形成の有無を表すデータに変換し、得られたドットデータを用いてヘッド２２を駆動することにより画像を印刷する。すなわち、ドットデータ記憶モジュール２６で個数データをドットデータに変換して記憶しておき、ヘッド２２の往復動に合わせてヘッド駆動モジュール２８に供給することでヘッド２２を駆動して、印刷媒体上の適切な位置にドットを形成する。ドットデータ記憶モジュール２６には画素組検出部が設けられており、ここでは、ヘッド２２が往復動する度にドットを形成する複数の画素たる画素組を検出する。個数データ変換部は個数データをドットデータに変換して、画素組に含まれる各画素についてのドットデータをドットデータ記憶メモリに記憶しておく。こうして記憶された画素組のドットデータをヘッド駆動モジュール２８に供給することによって、印刷媒体上に画像が印刷される。
【００４０】
ここで、ドットデータを記憶メモリに記憶するに際しては、画素群毎に少なくとも１回は、複数の画素組を、但し画素群に含まれる画素組の個数よりは少ない個数の画素組を、ドットデータに変換して記憶する。こうすれば、画素群に含まれる全ての画素組をドットデータに変換する場合よりも、ドットデータ記憶メモリの記憶容量を抑制することができる。もちろん、全ての画素組をドットデータに変換する場合に比べて頻度に個数データを変換しなければならないが、ヘッド２２が往復動する度に個数データをドットデータに変換する場合よりも、変換の頻度を少なくなる。従って、プリンタ２０に搭載すべきメモリの記憶容量を抑制しながら、迅速に画像を印刷することが可能となる。以下では、こうした印刷システムおよびプリンタについて、実施例に基づき詳細に説明する。
【００４１】
Ｂ．装置構成：
図２は、本実施例の印刷制御装置としてのコンピュータ１００の構成を示す説明図である。コンピュータ１００は、ＣＰＵ１０２を中心に、ＲＯＭ１０４やＲＡＭ１０６などを、バス１１６で互いに接続して構成された周知のコンピュータである。コンピュータ１００には、フレキシブルディスク１２４やコンパクトディスク１２６などからデータを読み込むためのディスクコントローラＤＤＣ１０９や、周辺機器とデータの授受を行うための周辺機器インターフェースＰＩＦ１０８、ＣＲＴ１１４を駆動するためのビデオインターフェースＶＩＦ１１２等が接続されている。ＰＩＦ１０８には、ハードディスク１１８や、後述するプリンタ２００等が接続されている。また、デジタルカメラ１２０や、カラースキャナ１２２等をＰＩＦ１０８に接続すれば、デジタルカメラ１２０やカラースキャナ１２２で取り込んだ画像を印刷することも可能である。また、ネットワークインターフェースカードＮＩＣ１１０を装着すれば、コンピュータ１００を通信回線３００に接続して、通信回線に接続された記憶装置３１０に記憶されているデータを取得することもできる。
【００４２】
図３は、本実施例のプリンタ２００の概略構成を示す説明図である。プリンタ２００はシアン，マゼンタ，イエロ，ブラックの４色インクのドットを形成可能なインクジェットプリンタである。もちろん、これら４色のインクに加えて、染料濃度の低いシアン（淡シアン）インクと染料濃度の低いマゼンタ（淡マゼンタ）インクとを含めた合計６色のインクドットを形成可能なインクジェットプリンタを用いることもできる。尚、以下では、シアンインク，マゼンタインク，イエロインク，ブラックインクを、必要に応じて、それぞれＣインク，Ｍインク，Ｙインク，Ｋインクと略称するものとする。
【００４３】
プリンタ２００は、図示するように、キャリッジ２４０に搭載された印字ヘッド２４１を駆動してインクの吐出およびドット形成を行う機構と、このキャリッジ２４０をキャリッジモータ２３０によってプラテン２３６の軸方向に往復動させる機構と、紙送りモータ２３５によって印刷用紙Ｐを搬送する機構と、ドットの形成やキャリッジ２４０の移動および印刷用紙の搬送を制御する制御回路２６０などから構成されている。
【００４４】
キャリッジ２４０には、Ｋインクを収納するインクカートリッジ２４２と、Ｃインク，Ｍインク，Ｙインクの各種インクを収納するインクカートリッジ２４３とが装着されている。キャリッジ２４０にインクカートリッジ２４２，２４３を装着すると、カートリッジ内の各インクは図示しない導入管を通じて、印字ヘッド２４１の下面に設けられた各色毎のインク吐出用ヘッド２４４ないし２４７に供給される。各色毎のインク吐出用ヘッド２４４ないし２４７は、こうして供給されたインクを用いてインク滴を吐出して、印刷媒体上にインクドットを形成する。
【００４５】
制御回路２６０は、ＣＰＵを中心として、ＲＯＭや、ＲＡＭ、周辺機器インターフェースＰＩＦ等に加えて、デジタルデータをアナログ信号に変換するＤ／Ａ変換器２６２や、印字ヘッド２４１に供給するデータを一時的に蓄えておく駆動バッファ２６１等から構成されている。もちろん、ＣＰＵを搭載せずに、ハードウェアあるいはファームウェアによって同様の機能を実現することとしても良い。制御回路２６０は、キャリッジモータ２３０および紙送りモータ２３５の動作を制御することによって、キャリッジ２４０の主走査動作および副走査動作の制御を行う。また、キャリッジ２４０の主走査および副走査に合わせて、適切なタイミングで印字ヘッド２４１を駆動する。印字ヘッド２４１の駆動は、Ｄ／Ａ変換器２６２から駆動信号を供給するとともに、駆動バッファ２６１から制御データを供給することによって行う。駆動信号および制御データを供給して印字ヘッド２４１を駆動し、インク滴を吐出するメカニズムについては別図を用いて後述する。こうして制御回路２６０の制御の下で、各色のインク吐出用ヘッド２４４ないし２４７からは、適切なタイミングでインク滴が吐出され、その結果、印刷用紙Ｐ上にインクドットが形成されて、カラー画像が印刷される。
【００４６】
尚、各色のインク吐出ヘッドからインク滴を吐出する方法には、種々の方法を適用することができる。すなわち、ピエゾ素子を用いてインクを吐出する方式や、インク通路に配置したヒータでインク通路内に泡（バブル）を発生させてインク滴を吐出する方法などを用いることができる。また、インクを吐出する代わりに、熱転写などの現象を利用して印刷用紙上にインクドットを形成する方式や、静電気を利用して各色のトナー粉を印刷媒体上に付着させる方式のプリンタを使用することも可能である。
【００４７】
図４は、各色のインク吐出用ヘッド２４４ないし２４７の底面に、インク滴を吐出する複数のノズルＮｚが形成されている様子を示した説明図である。図示するように、各色のインク吐出用ヘッドの底面には、各色毎のインク滴を吐出する４組のノズル列が形成されており、１組のノズル列には、４８個のノズルＮｚがノズルピッチｐの間隔を空けて千鳥状に配列されている。これらノズルは、制御回路２６０から供給される駆動信号および制御データに従って、一斉にインク滴を吐出する。このメカニズムについて、図５を参照しながら説明する。
【００４８】
図５は、インク吐出用ヘッド２４４ないし２４７が駆動信号および制御データに従って、インク滴を吐出するメカニズムを概念的に示した説明図である。図４に示したように、インク吐出用ヘッドの底面には複数のノズルＮｚが設けられており、それぞれのノズルは駆動バッファ２６１に接続されている。Ｄ／Ａ変換器２６２が駆動信号を出力すると、駆動信号は全てのノズルＮｚに一斉に供給される。とは言え、駆動信号が供給されるだけで直ちにノズルＮｚが駆動されるわけではない。駆動信号によって実際に駆動されるのは、駆動信号を受けたときに、駆動バッファ２６１からノズルが選択されていることを意味する制御データ「１」が供給されているノズルＮｚのみであり、これらのノズルだけがインク滴を吐出してドットを形成する。逆に言えば、駆動バッファ２６１からノズルが選択されていないことを意味する制御データ「０」が供給されているノズルＮｚは、駆動信号が供給されていても実際には駆動されず、インク滴を吐出することはない。このように、インク吐出用ヘッド２４４ないし２４７に設けられた複数のノズルＮｚの中で、制御データによって選択されたノズルのみが、インク滴を吐出することになる。
【００４９】
図３に示した制御回路２６０は、インク滴の吐出を制御するための制御データと、駆動信号とを、キャリッジ２４０の主走査および副走査に同期させながらインク吐出用ヘッド２４４〜２４７に出力する。こうすることで、印刷用紙Ｐ上の適切な位置にインクドットが形成されて、その結果、画像が印刷されることになる。
【００５０】
Ｃ．画像印刷処理の概要：
このようにインク滴の吐出を制御するために用いられる制御データは、印刷しようとする画像に所定の画像処理を施すことによって生成される。図６は、本実施例において、制御データを生成して画像を印刷する処理（画像印刷処理）の流れを示したフローチャートである。後述するように、本実施例の画像印刷処理は、前半部分の処理はコンピュータ１００に内蔵されたＣＰＵの機能を用いて実行され、後半部分の処理はプリンタ２００の制御回路２６０に内蔵されたＣＰＵの機能を用いて実行される。以下、図６に従って、画像印刷処理の概要について説明する。
【００５１】
コンピュータ１００は、画像印刷処理を開始すると、先ず初めに、変換すべき画像データの読み込みを開始する（ステップＳ１００）。ここでは、画像データはＲＧＢカラー画像データであるものとして説明するが、カラー画像データに限らず、モノクロ画像データについても同様に適用することができる。
【００５２】
カラー画像データの読み込みに続いて、色変換処理を行う（ステップＳ１０２）。色変換処理とは、Ｒ，Ｇ，Ｂの階調値の組合せによって表現されているＲＧＢカラー画像データを、印刷のために使用される各色の階調値の組合せによって表現された画像データに変換する処理である。前述したように、プリンタ２０はＣ，Ｍ，Ｙ，Ｋの４色のインクを用いて画像を印刷している。そこで、本実施例の色変換処理ではＲＧＢ各色によって表現された画像データを、Ｃ，Ｍ，Ｙ，Ｋの各色の階調値によって表現されたデータに変換する処理を行う。色変換処理は、色変換テーブル（ＬＵＴ）と呼ばれる３次元の数表を参照することによって行う。ＬＵＴには、ＲＧＢカラー画像データに対して、色変換によって得られるＣ，Ｍ，Ｙ，Ｋ各色の階調値が予め記憶されているので、このＬＵＴを参照しながら変換すれば、迅速に色変換することが可能である。
【００５３】
色変換処理を終了すると、解像度変換処理を開始する（ステップＳ１０４）。解像度変換処理とは、画像データの解像度を、プリンタ２００が印刷を行う解像度（印刷解像度）に変換する処理である。
【００５４】
一般に、印刷画質を向上させるためには、画素の大きさを小さくして、より高い解像度で印刷することが効果的である。しかし、印刷解像度を高くするからと言って、必ずしも、元の画像データの解像度も高くする必要があるわけではない。何故なら、ドットを形成して画像を印刷する場合は、個々の画素ではドットを形成するか否かの２通りしか取り得ない。もちろん、プリンタの中には、ドットの大きさなどを変えたり、あるいはドットの形成に使用するインクの濃度を変更するといった方法により、ドット単独でも、より多く状態を表現可能としたものも存在する。しかし、このようなプリンタにおいても、画素あたりに表現可能な階調数は高々数階調に過ぎない。これに対して、読み込む画像データは、仮に１バイトのデータとしても、画素あたりに２５６階調を表現することが可能である。このように、画素あたりに表現可能な階調が大きく異なっていることから、印刷解像度を、読み込む画像データの解像度よりも高解像度に設定しただけで、印刷画質を向上させることが可能である。このような理由から、図５のステップＳ１０４では、画像データの解像度をより高解像度の印刷解像度に変換する処理を行うのである。
【００５５】
図７は、第１実施例において行われる解像度変換の様子を示す説明図である。尚、前述したように色変換によって、Ｃ，Ｍ，Ｙ，Ｋの各色毎の画像データが得られるが、以降に説明する処理は、これら各色の画像データのいずれに対しても同様に行われる。そこで、説明の煩雑化を避けるために、以下では色を特定せずに説明する。
【００５６】
図７（ａ）は、色変換後の画像データの一部を拡大して模式的に表したものである。図７（ａ）中に示した複数の矩形は、それぞれが画素を模式的に表したものであり、矩形の中に表示された数値は、各画素に割り当てられた階調値を表している。図示されているように、画像データは、格子状に配列された画素の各々に階調値が割り当てられたデータとなっている。こうした画像データの解像度をより高い解像度に変換するためには、画素間で補間演算を行うことによって新たな画素を生成しても良いが、本実施例では最も簡便な手法として、画素をより小さな画素に分割することで解像度変換を行う。
【００５７】
図７（ｂ）は、画素を分割することで解像度を変換している様子を示す説明図である。図示した例では、それぞれの画素を、主走査方向（図上では左右方向）に４分割し、副走査方向（図上では上下方向）に２分割することで、１つの画素を８つの画素に分割している。図７（ｂ）中に示した破線は、画素が分割されていることを表したものである。こうして生成した小さな画素には、分割前の元の画素の階調値と同じ階調値が割り当てられている。以上のような処理を施すことにより、画像データの解像度は、主走査方向には４倍の解像度に、副走査方向には２倍の解像度に変換されることになる。もちろん、解像度の増加割合は必要に応じて種々の割合に設定することが可能である。
【００５８】
以上のようにして、画像データの解像度を印刷解像度に変換したら、コンピュータ１００は、個数データ生成処理を開始する（ステップＳ１０６）。個数データ生成処理とは、次のような処理である。色変換後の画像データは、画素毎に階調値が割り当てられた階調データである。これに対してプリンタ２００は、ドットが画像データの階調値に応じた適切な密度で形成されるように、画素にドットを形成することによって画像を印刷する。従って、階調データを、画素毎にドット形成の有無を表すデータに変換した後、プリンタ２００に転送する必要がある。また、ドット形成の有無を示すデータを、プリンタ２００に画素単位で転送したのでは、画素数が多くなるに従って転送に要する時間が増加してしまうので、画像を迅速に印刷することが困難となる。そこで、本実施例の画像印刷処理では、画素を所定の複数個ずつ画素群としてまとめ、画素群内に形成されるドット個数のデータをプリンタ２００に転送している。ここで、画素群内に形成されるドット個数のデータは、予め画像データを、画素毎のドット形成の有無を示すデータに変換した後に、複数の画素を画素群としてまとめることで得ることができる。あるいは、初めに複数の画素を画素群にまとめた後、画素群内の各画素に形成されるドットの個数を決定することも可能である。ステップＳ１０６の個数データ生成処理では、こうして画素群内に形成されるドット個数のデータ（個数データ）を生成して、得られた個数データをプリンタ２０に転送する処理を行う。個数データ生成処理の詳細については後述する。
【００５９】
プリンタ２００の制御回路２６０に内蔵されたＣＰＵは、コンピュータ１００から出力された個数データを受け取ると、個数データデコード処理を開始する（ステップＳ１０８）。個数データデコード処理とは、次のような処理である。上述したようにプリンタ２００は、画素毎にドット形成の有無を表すデータに基づいて画像を印刷する。ところが本実施例のコンピュータ１００は、画素毎にドット形成の有無を示すデータの代わりに、画素群内に形成すべきドット個数を表す個数データを出力する。そこで、先ず、この個数データを、画素毎にドット形成の有無を表すデータに変換する処理が必要となる。本明細書中では、画素毎にドット形成の有無を表すデータをドットデータと呼ぶ。個数データをドットデータに変換する方法については後述する。そして、得られたドットデータを、インク吐出用ヘッド２４４〜２４７が主走査する動きにあわせて制御データとして駆動バッファ２６１から出力することで、インク滴が吐出され印刷媒体上に画像が印刷される。個数データデコード処理とは、個数データからドットデータを求め、インク吐出用ヘッド２４４〜２４７の主走査にあわせて、駆動バッファ２６１から制御データとして出力する処理である。詳細には後述するが、本実施例の個数データデコード処理では、各画素群の個数データを１度に変換して全てのドットデータを記憶するのではなく、ヘッドの往復動を考慮して複数回に分けて個数データを変換し、ドットデータを記憶している。このため、プリンタ２００に搭載すべきメモリ容量を抑制しながら、個数データをドットデータに迅速に変換して速やかに画像を印刷することが可能となっている。
【００６０】
説明の便宜から、以下では先ず個数データ生成処理について説明し、次いで、本実施例の個数データデコード処理の内容と、かかる個数データデコード処理を行うことでプリンタ２０に搭載すべきメモリ容量を低減することが可能な理由とについて説明する。
【００６１】
Ｄ．個数データ生成処理：
図８は、個数データ生成処理の流れを示すフローチャートである。以下では、フローチャートに従って、個数データ生成処理について簡単に説明する。
【００６２】
個数データ生成処理を開始すると、先ず初めに所定の複数個の画素をまとめて画素群を生成する（ステップＳ２００）。ここでは、解像度変換処理において１つの画素を８つの画素に分割していることから、同一の画素を分割して得られた８つの画素を画素群としてまとめることとする。例えば、図７（ａ）中で左上隅の画素に着目すると、この画素は図７（ｂ）の左上方に示したように、縦２列横４列の８つ画素に分割されているから、ステップＳ２００では、これら８つの画素をまとめて画素群を生成する。尚、画素群としてまとめる画素は、互いに隣接する画素である必要はなく、所定の位置関係にあればどのような画素でも画素群としてまとめることができる。
【００６３】
また、このように同一の画素から分割された画素を画素群としてまとめる場合は、図６の解像度変換処理（図７参照）を省略することも可能である。この場合は、以下の説明中で、「画素群」とある部分を「解像度変換を行う前の画素」と読み替えることにより、ほぼ同様な処理を行うことができる。
【００６４】
次いで、画素群としてまとめた画素の中から、ドット形成の有無を判断するために着目する画素（着目画素）を１つ設定する（ステップＳ２０２）。そして、着目画素に割り当てられた階調値とディザマトリックスの閾値とを比較することにより、着目画素についてのドット形成の有無を判断する（ステップＳ２０４）。ここで、ディザマトリックスとは、複数の閾値が格子状に記憶された２次元の数表である。ディザマトリックスを用いてドット形成の有無を判断する処理について、図９および図１０を参照しながら説明する。
【００６５】
図９は、ディザマトリックスの一部を例示した説明図である。図示したマトリックスには、縦横それぞれ６４画素、合計４０９６個の画素に、階調値０〜２５５の範囲から万遍なく選択された閾値がランダムに記憶されている。ここで、閾値の階調値が０〜２５５の範囲から選択されているのは、本実施例では画像データが１バイトデータであり、画素に割り当てられる階調値が０〜２５５の値を取り得ることに対応するものである。尚、ディザマトリックスの大きさは、図９に例示したように縦横６４画素分に限られるものではなく、縦と横の画素数が異なるものも含めて種々の大きさとすることができる。
【００６６】
図１０は、ディザマトリックスを参照しながら、着目画素についてのドット形成の有無を判断している様子を概念的に示した説明図である。ドット形成有無の判断に際しては、先ず、着目画素の階調値とディザマトリックス中の対応する位置に記憶されている閾値とを比較する。図中に示した細い破線の矢印は、着目画素の階調値を、ディザマトリックス中の対応する位置に記憶されている閾値と比較していることを模式的に表したものである。そして、ディザマトリックスの閾値よりも着目画素の階調値の方が大きい場合には、その画素にはドットを形成すると判断する。逆に、ディザマトリックスの閾値の方が大きい場合には、その画素にはドットを形成しないと判断する。再び図１０に即して説明すると、画像データの左上隅の画素については、画像データの階調値は９７であり、ディザマトリックスの閾値は１である。すなわち、画像データの階調値の方が閾値より大きいので、この画素にはドットを形成すると判断する。図１０中に実線で示した矢印は、この画素にはドットを形成すると判断して、判断結果をメモリに書き込んでいる様子を模式的に表したものである。一方、この画素の右隣の画素については、画像データの階調値は９７、ディザマトリックスの閾値は１７７であり、閾値の方が大きいので、この画素についてはドットを形成しないと判断する。図８のステップＳ２０４では、こうしてディザマトリックスを参照しながら、着目画素にドットを形成するか否かを判断する処理を行う。
【００６７】
次いで、画素群内の全ての画素について以上のような処理を行ったか否かを判断し（ステップＳ２０６）、画素群中に未処理の画素が残っている場合は（ステップＳ２０６：ｎｏ）、ステップＳ２０２に戻って続く一連の処理を行う。こうして画素群内の全ての画素についてドット形成有無の判断を終了したら（ステップＳ２０６：ｙｅｓ）、画素群内に形成するドットの個数を検出し、画素群に対応付けられた状態でメモリに記憶する（ステップＳ２０８）。図１０に示した例では、画像の左上隅の画素群については、３つの画素にドットを形成すると判断されているから、この画素群についてはドット個数が「３」である旨を記憶する。
【００６８】
以上のようにして、１つの画素群についての処理を終了したら、全画素について処理を終了したか否かを判断し（ステップＳ２１０）、未処理の画素が残っていれば、ステップＳ２００に戻って新たな画素群を生成した後、続く一連の処理を行って、その画素群に形成されるドットの個数を記憶する（ステップＳ２０８）。こうした処理を繰り返し行い、画像中の全ての画素についての処理を終了したら（ステップＳ２１０：ｙｅｓ）、画素群毎に記憶しておいたドット個数をプリンタ２００に向かって出力して（ステップＳ２１２）、図８に示した個数データ生成処理を終了する。
【００６９】
図１１（ａ）は、画像データに上述した個数データ生成処理を施すことによって得られるデータを、概念的に表した説明図である。図中に示した複数の矩形は、それぞれ画素群を表しており、画素群内に表示された数値は、該画素群に形成されるドットの個数が記憶されている様子を表している。本実施例では、コンピュータ１００は、色変換後の画像データを図１１（ａ）に示すようなデータに変換した後、画素群毎に記憶された個数のデータのみを、個数データとしてプリンタ２００に向かって出力する。このように個数データの状態で出力すれば、画素毎にドットの形成有無を示すデータ（ドットデータ）を出力する場合よりも、データ量が減少するので迅速に出力することが可能となる。この点につき、補足して説明する。
【００７０】
図１１（ｂ）は、画素群内の各画素について、ドット形成の有無を判断した様子を示す説明図である。図１１（ｂ）中に示した細い破線は、画素群が複数の画素から構成されていることを示しており、画素に付された斜線は、その画素にはドットを形成すると判断されていることを示している。
【００７１】
今、コンピュータ１００からプリンタ２００に対して、図１１（ｂ）に示した状態のドットデータを出力するものとする。ドットの種類は１種類であるとすれば、各画素はドットが形成されるか否かの２つの状態しか取り得ないから、１画素あたりのドットデータは１ビットあれば足りる。画素群は８つの画素で構成されているから、結局、ドットデータとしてプリンタ２００に出力すべきデータは、画素群あたり８ビットのデータとなる。
【００７２】
これに対して、個数データとして出力した場合は、１つの画素群内に形成されるドットの個数は０〜８の値しか取り得ないから、画素群あたり４ビットのデータでよい。すなわち、画素毎にドット形成の有無を示すデータを出力する場合に比べて、データ量を半減させることができる。このため、個数データの状態で出力することで、プリンタ２００に迅速にデータを出力することが可能となるのである。
【００７３】
こうしてコンピュータ１００から転送された個数データは、以下に説明する個数データデコード処理がプリンタ２００の制御回路２６０で施されて、画素毎にドットの形成有無を示すデータに変換された後、制御データとしてインク吐出用ヘッド２４４〜２４７に出力される。
【００７４】
Ｅ．個数データデコード処理：
図１２は、本実施例の個数データデコード処理の流れを示したフローチャートである。かかる処理は、プリンタ２００の制御回路２６０に内蔵されたＣＰＵの機能によって実行される。本実施例のプリンタ２００では、このような処理を行って個数データを変換しているので、プリンタ２００に搭載すべきメモリ容量を抑制しつつ、迅速なデコード処理が可能となっている。以下、フローチャートに従って説明する。
【００７５】
制御回路２６０のＣＰＵは、個数データデコード処理を開始すると先ず初めに、コンピュータ１００から転送されてきた個数データを読み込んだ後（ステップＳ３００）、印字パスを設定する処理を行う（ステップＳ３０２）。かかる処理の内容を説明する準備として、先ず、プリンタ２００がインク吐出用ヘッドの主走査と副走査とを繰り返しながら、印刷用紙上にドットを形成することによって画像を印刷する様子について説明する。
【００７６】
図４を用いて説明したように、インク吐出用ヘッドには複数のノズルが設けられているので、これらノズルで同時にドットを形成しながら主走査してやれば、１回の主走査で複数本のラスタを形成することができる。しかし、これらノズルの間隔はノズルピッチｐだけ離れているから、形成されたラスタの間にはノズルピッチｐに相当する隙間が空いてしまう。このようにラスタ間に隙間が空いたままでは画像を表現することはできない。そこで、副走査を行ってラスタの形成位置を少しずつ移動させることにより、隙間の部分にラスタを形成していく。尚、「パス」とはインク吐出用ヘッドを主走査する動作を言う。また、「印字パス」とはインク滴を吐出しながらヘッドを１回主走査させることによって形成されるドット列を言う。
【００７７】
また、主に画質上の要請から、それぞれのラスタは１回のパスで形成するのではなく、複数回のパスに分けて形成される。すなわち、１回のパスでラスタを形成する場合は、ノズルが通過した位置にラスタが形成される。換言すれば、各ラスタは１つのノズルで形成されることになる。このような場合、ヘッドに設けられた複数のノズルの中に、たまたま、特性が他のノズルとは異なるノズルが存在していると、そのノズルで形成されたラスタだけ他のラスタとは異なってしまう。ラスタが複数形成されている中で、特定のラスタだけが異なっていると画質を大きく損なうおそれがある。これに対して、各ラスタを複数のパスに分けて形成してやれば、パス毎に異なるノズルを用いてドットを形成することができるので、こうした要因による画質の悪化を回避することが可能である。
【００７８】
図１３は、プリンタ２００が、このように副走査を行いつつ、複数のパスでラスタを形成することによって画像を印刷している様子を説明するための概念図である。尚、前述したようにインク吐出用ヘッドには、各色毎に多数（本実施例では各色あたり４８個）のノズルが設けられているが、説明が煩雑となることを避けるため、図１３ではノズルが４個だけ設けられているものとして説明する。また、ノズルピッチは３とし、１本のラスタを２回の主走査で形成する場合について説明する。
【００７９】
図１３の左半分には、副走査を行うことにより、インク吐出用ヘッドの印刷用紙に対する相対的な位置が少しずつ移動していく様子を示している。図１３の左半分に示した縦長の矩形は１色分のインク吐出用ヘッドを表しており、矩形の中に斜線を付して示した丸印はインク滴を吐出するノズルＮｚを模式的に表したものである。図示されているように、各色のヘッドには４つのノズルが設けられており、各ノズルの間隔は、ノズル２つ分に相当する距離（ノズル中心同士で見ればノズルの直径の３倍に相当する距離）に設定されている。
【００８０】
また、図１３の右半分には、ヘッドを主走査させることにより印刷用紙上にドットが形成されていく様子を表している。図１３の右半分に示した丸印は印刷用紙上に形成されたドットを模式的に表したものである。尚、図３を用いて前述したように、実際の副走査は印刷用紙を紙送りすることによって行われており、インク吐出用ヘッドが副走査方向に移動するわけではないが、図１３では説明の便宜から印刷用紙を基準に取って、あたかもヘッドが移動しているかのように表現している。
【００８１】
印刷に際しては、先ず、ヘッドが図中で（１）と表示した位置にある状態で、ドットを形成しながら主走査を行う。この主走査によって印刷用紙上には、図１３の右半分で「１」と表示されたドットが形成される。次いで、ヘッドをラスタ２本分だけ副走査方向に移動させる。その結果、ヘッドは図１３の左半分で（２）と表示した位置に移動する。図１３の左半分に示された実線の矢印は、ヘッドを副走査する動作を模式的に表したものである。こうして副走査を行った後、再び主走査を行って印刷用紙上にドットを形成する。この主走査によって印刷用紙上には、図１３の右半分で「２」と表示されたドットが形成される。続いて、再び副走査を行ってヘッドを（３）と表示された位置まで移動させた後、主走査しながらインク滴を吐出することで、「３」と表示されたドットを形成する。以上のように、ヘッドの副走査を行って位置を少しずつ移動させながらドットを形成する操作を繰り返していくと、やがてラスタ間に形成された隙間をラスタで埋めることができ、それ以降の領域では隙間無くラスタが形成されることになる。図１３に示した例では、５パス目以降は印刷用紙上に隙間無くラスタが形成されている。すなわち、５パス目以降の領域が画像の有効表示領域となる。
【００８２】
図１３中の有効表示領域を詳しく観察すると、この領域の１行目のラスタは、２パス目に形成されるドットと５パス目に形成されるドットとで構成されている（つまり、このラスタは２パスで形成されていることになる）。その下のラスタ（有効表示領域の２行目のラスタ）については、１パス目に形成されるドットと４パス目に形成されるドットとで構成されており、また、有効表示領域の３行目のラスタについては、３パス目と６パス目に形成されるドットで構成されている。すなわち、有効表示領域の１行目のドットが形成されるよりも前に、２行目にあるドットの半分が形成されている。そして、２行目の残りのドットを形成してラスタを完成させる前に、１行目にあるドットの半分を形成し、２行目のラスタも１行目のラスタも未完成のまま、３行目にあるドットの半分を形成する。こうして１行目から３行目にかけてのドットの半分を形成したら、４パス目でようやく２行目のラスタを完成させる。また、４パス目で２行目のラスタを完成させると同時に、５行目にあるドットの半分も形成する。５パス目では、１行目のラスタを完成させるとともに４行目にあるドットの半分も形成し、６パス目では３行目のラスタを完成させるとともに６行目にあるドットの半分も形成する。
【００８３】
このようにプリンタ２００では、画像の有効表示領域の端にある画素から順番にドットを形成して行くのではなく、あたかもモザイクを形成するかのように、所定の順番に従ってドットを形成しながら画像を印刷している。そこで、図１２のステップＳ３０２では、今からドットを形成するために行うパス（印字パス）を設定する処理を行うのである。図１２に示した個数データデコード処理を初めて行う場合は、印字パスは１パス目に設定される。
【００８４】
次いで、設定した印字パスでドットが形成される画素（印字画素）のドットデータが揃っているか否かを判断する（ステップＳ３０４）。すなわち、インク吐出用ヘッドには複数のノズルが設けられており、１回のパスで複数行にある画素にドットを形成することができるから、これら全ての画素についてのドットデータが、制御回路２６０のＲＡＭに記憶されているか否かを判断するのである。印字パスが１パス目に設定されている場合は、ドットデータは未だ全く生成されていないから、ステップＳ３０４では「ｎｏ」と判断して、印字画素を含む画素群を検出する処理を行う（ステップＳ３０６）。この処理について、図１４を参照しながら説明する。
【００８５】
図１４は、図１３に示した画像の有効表示領域を拡大して示した説明図である。図１３を用いて説明したように、１パス目の印字画素は、有効表示領域の２行目にある奇数番目の画素である。ここで本実施例では、前述したように画像データは、２行４列の８つの画素をひとまとまりにした画素群単位で取り扱われている。図１４では、ひとまとまりとして取り扱われる画素群を、破線の矩形によって表している。図１４に示されているように、１パス目の印字画素は、図中で（ａ）と表示した行の画素群に含まれている。そこで、図１２のステップＳ３０６では、印字画素を含む画素群としてａ行の画素群を検出するのである。
【００８６】
こうして検出した画素群の個数データをデコードして、印字画素と後続画素のドットデータをメモリに記憶する処理を行う（ステップＳ３０８）。ここで、後続画素とは画素群内で印字画素の次にドットが形成される画素である。前述したように、ドットは所定の順序でモザイク状に形成されるから、印字画素と後述画素とは必ずしも連続したパス、すなわち２パス目と３パス目などのように連続したパスになるとは限らない。例えば、画素群に含まれる画素が、２パス目、４パス目、５パス目、７パス目で形成されており、印字画素が２パス目の画素である場合は、４パス目に形成される画素が後続画素となる。印字画素と後続画素のドットデータをメモリに記憶する処理について、図１５を参照しながら説明する。
【００８７】
図１５は、印字画素および後続画素についてのドットデータを、メモリに記憶する処理（ドットデータ生成処理）の流れを示したフローチャートである。以下ではフローチャートに従って、処理の内容を説明する。
【００８８】
処理を開始すると、先ず初めに、ディザマトリックスの中から、処理しようとしている画素群の各画素に対応する閾値を取得する（ステップＳ４００）。前述したように、画素群内に形成するドットの個数を決定する際には、着目画素の階調値とディザマトリックスに設定された閾値とを比較したが（図８〜図１０参照）、ここでは、画素群の各画素に対応する閾値を、ディザマトリックスの中から読み出す処理を行う。
【００８９】
次いで、画素群の中でドットを形成する画素を決定する処理を行う（ステップＳ４０２）。画素群内でドットを形成すべき画素は、各画素について読み出したディザマトリックスの閾値と、画素群についての個数データとに基づいて決定することができる。かかる方法について、図１６の具体例を参照しながら説明する。
【００９０】
図１６（ａ）は、プリンタ２００の制御回路２６０に内蔵されたＲＡＭ内に、コンピュータ１００から受け取った各画素群についての個数データが記憶されている様子を概念的に示した説明図である。今、処理しようとしている画素群が図１６（ａ）の左上隅の画素群であるものとする。図１６（ｂ）は、ディザマトリックスの中から、この画素群の対応する位置に設定されている閾値を取得した様子を概念的に示した説明図である。図１６（ｂ）に示した閾値は、画素群内でドットが形成され易い序列を示していると考えることができる。何故なら、図１０を用いて前述したように、ある画素にドットを形成するか否かを判断する際には、画像データの階調値とディザマトリックスの閾値とを比較して、階調値の方が大きければ、その画素にはドットを形成すると判断する。すなわち、図１６（ｂ）に示したディザマトリックスの閾値が小さい画素ほど、ドットが形成され易くなるから、ディザマトリックスの閾値はドットが形成され易い序列を表していると考えることができるのである。
【００９１】
図１６（ａ）に示すように個数データによれば、対象としている画素群（左上隅の画素群）に形成されるドットの個数は３個である。図１６（ｂ）の序列に従ってドットを形成すれば、図１６（ｃ）に示したように、図中で実線で囲って示した最も閾値の小さい画素と、破線で囲った２番目に閾値の小さい画素と、一点鎖線で囲った３番目に閾値の小さい画素の３つの画素に、ドットが形成されることになる。図１６（ｄ）は、こうして個数データを変換して、画素群内の各画素についてのドットデータを生成した様子を概念的に示したものである。
【００９２】
図１５のステップＳ４０２では、このようにして個数データをドットデータに変換することにより、画素群内でドットを形成する画素を決定する処理を行う。
【００９３】
個数データを各画素についてのドットデータに変換したら、印字画素および後続画素のドットデータのみをメモリ、すなわち制御回路２６０に内蔵されたＲＡＭに記憶する（ステップＳ４０４）。今は印字パスが１パス目の場合について説明しているから、図１６（ｅ）中に「１」と表示した画素、つまり下段の左端の画素および左から２番目の画素であり、後続画素は「２」と表示した画素、つまり上段の左端の画素および左から２番目の画素となる。そこで、図１５のステップＳ４０４では、印字画素についてはいずれもドットデータ「０」を記憶し、後続画素についてはいずれもドットデータ「１」を記憶する。ここで、ドットデータ「０」はその画素にドットが形成されないことを意味するデータであり、ドットデータ「１」はその画素にドットが形成されることを意味するデータである。
【００９４】
こうして、対象としている画素群について、印字画素および後続画素についてのドットデータをメモリに記憶したら、図１５のドットデータ生成処理を終了して、図１２に示した個数データデコード処理に復帰する。尚、説明の便宜から、図１５および図１６では、画素群に含まれる全画素のドットデータを生成した後、印字画素および後述画素のドットデータのみをメモリに記憶するものとして説明した。もちろん、全ての画素のドットデータを生成するのではなく、印字画素と後述画素についてのみドットデータを生成して、メモリに記憶することとしても良い。
【００９５】
図１２に示した個数データデコード処理では、上述したドットデータ生成処理から復帰すると、メモリから記憶しておいた印字画素のドットデータを読み出して、インク吐出ヘッドに出力する処理を行う（ステップＳ３１０）。具体的には、ＲＡＭから読み出したドットデータを駆動バッファ２６１に書き込んでやる。こうすることにより、ヘッドに設けられた対応するノズルからインク滴が吐出されて、印刷用紙上にドットが形成される。
【００９６】
次いで、全画素についての処理を終了したか否かを判断する（ステップＳ３１２）。もちろん、まだ１パス目のドットしか形成していないから、ここでは「ｎｏ」と判断してステップＳ３０２まで戻り、今度は印字パスを２パス目に設定する。そして、２パス目に形成する画素のドットデータが揃っているか否かを判断する（ステップＳ３０４）。上述したように１回目のルーチンでは、印字画素の他に後続画素についてもドットデータをメモリに記憶している。そこで、ステップＳ３０４では、これからドットを形成しようとしている印字画素のドットデータが、既にメモリに記憶されていないかどうかを確認するのである。
【００９７】
図１３および図１４に示したように、２パス目では、画像の有効表示領域の１行目にある画素と４行目にある画素とにドットを形成する。これに対して、１行目にある画素については、１回目のルーチンの中で１パス目の印字画素と同時にドットデータが生成されてメモリに記憶されているが、４行目にある画素については未だドットデータが生成されていない。すなわち、２パス目にドットを形成しようとする印字画素の全てのドットデータは未だ揃っていないので、ステップＳ３０４では「ｎｏ」と判断して、ドットデータのない印字画素を含んだ画素群を検出する（ステップＳ３０６）。２パス目の印字画素でドットデータが未だ記憶されていないのは、有効表示領域の４行目にある画素であるから、ステップＳ３０６では、図１４中で「ｂ」行と表示した画素群を検出する。
【００９８】
次いで、検出した画素群について印字画素と後続画素についてのドットデータを生成して、メモリに記憶する（ステップＳ３０８）。ここでは、印字画素は２パス目に形成する画素である。また、後続画素、すなわち、その画素群内で次にドットが形成される画素は３パス目の画素となる。
【００９９】
こうして印字画素および後続画素についてのドットデータを記憶したら、印字パスのドットデータをヘッドに出力してドットを形成し（ステップＳ３１０）、全ての画素について処理を終了したか否かを判断する（ステップＳ３１２）。そして、未処理の画素が残っていれば、再びステップＳ３０２に戻って新たな印字パスを設定し、印字パスを構成する全てのドットデータが揃っているか否かを判断する（ステップＳ３０４）。全てのドットデータが既に記憶されている場合は（ステップＳ３０４：ｙｅｓ）、それらドットデータをヘッドに出力してドットを形成する（ステップＳ３１０）。一方、ドットデータの無い印字画素がある場合は（ステップＳ３０４：ｎｏ）、その印字画素を含んだ画素群を検出し（ステップＳ３０６）、その印字画素と後続画素とについてのドットデータを記憶する（ステップＳ３０８）。
【０１００】
このような処理を繰り返して、全ての画素について処理を終了したと判断されたら（ステップＳ３１２：ｙｅｓ）、図１２に示した個数データデコード処理を抜けた後、図６に示した画像印刷処理を終了する。
【０１０１】
以上に説明したように本実施例の個数データデコード処理では、個数データをドットデータに変換する際に、印字画素と後続画素とのドットデータをメモリに記憶する。こうすることで、プリンタ２００側に搭載すべきメモリ容量を抑制しつつ、個数データをドットデータに迅速に変換することが可能となる。以下、この理由について説明する。
【０１０２】
図１７は、インク吐出用ヘッドの主走査を繰り返しながらドットを形成する際に、個数データをデコードして生成した画素組のドットデータが、メモリを使用する様子を概念的に示した説明図である。具体的には、ドットデータを記憶するためのメモリ容量が、ヘッドがパスを繰り返すにつれて変動する様子を表している。また、図１７では、表示が煩雑となることを避けるために、図１４中に「ａ」行と表示した画素群のみを取り出して、画素群１つあたりのメモリ容量を示している。また、図１７（ａ）は、本実施例の個数データデコード処理を行った場合を示し、図１７（ｂ）は参考として、画素群の全画素のドットデータを一度にメモリに記憶する場合を示している。
【０１０３】
図１４に示されているように、「ａ」行目の画素群には、１パス目にドットが形成される画素の他に、２パス目に形成される画素と、４パス目に形成される画素、５パス目に形成される画素が含まれている。従って、「ａ」行目の画素群については、ヘッドが１パス目の主走査を行う直前に個数データがデコードされる。そして、図１２を用いて説明したように、本実施例の個数データデコード処理では印字画素および後続画素のドットデータを記憶するから、１パス目の画素および２パス目の画素について、ドットデータが同時にメモリに記憶されることになる。このことに対応して、図１７（ａ）では、１パス目に形成する２画素および２パス目に形成する２画素の、合計４画素分のドットデータが、ヘッドが１パス目の主走査を行う直前にメモリに一旦記憶されている。そして１パス目の主走査で、半分すなわち２画素分のドットデータがヘッドに供給され、続く２パス目の主走査で、残りの２画素分のドットデータがヘッドに供給される。
【０１０４】
こうして１パス目および２パス目のドットデータを出力してしまうと、次は４パス目の直前に、今度は４パス目と５パス目に形成する４画素分のドットデータをメモリに記憶する。そして、４パス目の主走査で２画素分のドットデータをヘッドに供給し、５パス目の主走査で残りの２画素分のドットデータをヘッドに供給する。従って、図１４中で「ａ」行目にあるそれぞれの画素群については、ドットデータを記憶するために、図１７（ａ）に斜線で示した容量のメモリが必要となる。
【０１０５】
これに対して画素群の全画素のドットデータを記憶する場合は、図１７（ｂ）に示すように、１パス目の直前で８画素分のドットデータがメモリに記憶される。そして、１パス目の主走査では２画素分のドットデータがヘッドに出力され、２パス目でも２画素分のドットデータがヘッドに出力される。ヘッドが２パス目の主走査を終わった時点では、４画素分のドットデータ、すなわち４パス目および５パス目の主走査でヘッドに出力されるドットデータがメモリに記憶されている。そして、４パス目の主走査で２画素分のドットデータが、５パス目の主走査で残りの２画素分のドットデータがヘッドに出力されることになる。
【０１０６】
図１７（ａ）に斜線を付した部分の面積と、図１７（ｂ）に斜線を付した部分の面積とを比較すれば明らかなように、本実施例の画像データデコード処理を行えば、画素群の全画素のドットデータを記憶する場合に比べて、必要なメモリ容量を大きく節約することが可能である。また、一時的に必要な最大メモリ容量も大きく節約することが可能となる。
【０１０７】
図１４の「ａ」行にある画素については、印字画素と後続画素とは連続するパスで、すなわち１パス目と２パス目、あるいは４パス目と５パス目というように、印字画素のドットが形成されると後続画素のドットも次のパスで直ちに形成されている。しかし印字画素と後続画素とが、このように連続するパスの画素でない場合でも、メモリ容量を大きく節約することが可能である。これを、図１４中に「ｇ」行と示した画素群を例にとって説明する。
【０１０８】
図１８は、図１４の「ｇ」行目の画素群について、個数データをドットデータに変換してメモリに記憶する様子を概念的に示した説明図である。図１８（ａ）は、本実施例の個数データデコード処理を行った場合を示し、図１８（ｂ）は画素群の全画素のドットデータを、一度にメモリに記憶する場合を示している。
【０１０９】
図１４に示されているように、「ｇ」行目の画素群には、７パス目にドットが形成される画素と、１０パス目に形成される画素、１１パス目に形成される画素、１４パス目に形成される画素が含まれている。このことから、「ｇ」行目の画素群は、ヘッドが７パス目の主走査を行う直前に個数データがデコードされることになる。
【０１１０】
図１２を用いて前述したように本実施例の個数データデコード処理では、７パス目にドットを形成する画素と同時に、後続画素として１０パス目にドットを形成する画素を加えた合計４画素分のドットデータがメモリに記憶される。すなわち、図１８（ａ）に示すように、７パス目の直前に４画素分のドットデータがメモリに記憶されることになる。このうち、２画素分のドットデータは７パス目の主走査時にヘッドに出力され、残りの２画素分のドットデータは１０パス目の主走査時にヘッドに出力される。
【０１１１】
こうして１０パス目の主走査を終了すると直ちに、１１パス目の直前で、今度は１１パス目と１４パス目とに形成される合計４画素分のドットデータが、メモリに記憶される。続いて、１１パス目の主走査で２画素分のドットデータが、そして１４パス目の主走査で残りの２画素分のドットデータがヘッドに出力される。従って、図１４中で「ｇ」行目にある各画素群については、ドットを形成するために、図１８（ａ）中に斜線で示した容量のメモリが必要となる。
【０１１２】
これに対して画素群の全画素のドットデータを記憶する場合は、図１８（ｂ）に示すように、７パス目の直前で８画素分のドットデータがメモリに記憶されるそして、７パス目の主走査で２画素分のドットデータがヘッドに出力され、１０パス目、１１パス目、および１４パス目の主走査でも、それぞれ２画素分ずつドットデータがヘッドに出力されることになる。従って、全画素のドットデータを記憶する場合は、図１８（ｂ）中に斜線で示した容量のメモリが必要となる。
【０１１３】
図１８（ａ）と図１８（ｂ）とで、図中に斜線を付した部分の面積を比較すれば、本実施例の画像データデコード処理を行うことにより、メモリ容量を大きく節約可能なことが分かる。
【０１１４】
もちろん、メモリ容量を節約をするだけならば、印字画素のドットデータのみを記憶した方が、よりメモリ容量を節約することが可能である。しかし、これでは、ヘッドを主走査させる度に個数データをデコードして、印字画素のドットデータをメモリに書き込まなければならず、処理速度の向上を図ることが困難となる。これに対して本実施例では、主走査の度にデコードしてメモリに書き込む必要がないので、個数データを迅速にドットデータに変換することが可能となる。
【０１１５】
本実施例の画像データデコード処理において、上述したようにメモリ容量を節約しつつ迅速な処理を行うことが可能となるのは、画素群の全画素のドットデータを一度に記憶するのではなく、印字画素および他の画素のドットデータを記憶しているためである。従って、上述した実施例では、印字画素のドットデータと次にドットが形成される後述画素のドットデータとを、同時にメモリに記憶するものとして説明したが、このような場合に限らずとも同様の効果を得ることができる。すなわち、常に２パス分ずつドットデータを記憶するのではなく、画素群に含まれる全パス数未満であれば、任意のパス数分のドットデータを同時に記憶することとしても良い。また、常に複数パス数分のドットデータを記憶する必要もなく、１パス分のドットデータだけを記憶することがあっても構わない。このような場合でも、同時に全パス分のドットデータを記憶する場合よりも、必要なメモリ容量を大きく節約することが可能である。
【０１１６】
もちろん、印字画素と同時にドットデータを記憶する画素が、画素群の中で印字画素にできるだけ近いタイミングでドットが形成される画素であれば、メモリ容量を節約する効果も大きくなる。
【０１１７】
以上、各種の実施例について説明してきたが、本発明は上記すべての実施例に限られるものではなく、その要旨を逸脱しない範囲において種々の態様で実施することができる。例えば、上述の機能を実現するソフトウェアプログラム（アプリケーションプログラム）を、通信回線を介してコンピュータシステムのメインメモリまたは外部記憶装置に供給し実行するものであってもよい。もちろん、ＣＤ−ＲＯＭやフレキシブルディスクに記憶されたソフトウェアプログラムを読み込んで実行するものであっても構わない。
【図面の簡単な説明】
【０１１８】
【図１】本発明の印刷装置および印刷システムの概要を例示した説明図である。
【図２】本実施例の印刷制御装置としてのコンピュータの構成を示す説明図である。
【図３】本実施例のプリンタの概略構成を示す説明図である。
【図４】各色のインク吐出用ヘッドの底面にインク滴を吐出する複数のノズルが形成されている様子を示した説明図である。
【図５】インク吐出用ヘッドが駆動信号および制御データに従ってインク滴を吐出するメカニズムを概念的に示した説明図である。
【図６】本実施例において制御データを生成して画像を印刷する処理（画像印刷処理）の流れを示したフローチャートである。
【図７】画像印刷処理において行われる解像度変換の様子を示す説明図である。
【図８】個数データ生成処理の流れを示すフローチャートである。
【図９】ディザマトリックスの一部を例示した説明図である。
【図１０】ディザマトリックスを参照しながら着目画素についてのドット形成の有無を判断している様子を概念的に示した説明図である。
【図１１】個数データをドットデータに変換した様子を概念的に示す説明図である。
【図１２】本実施例の個数データデコード処理の流れを示したフローチャートである。
【図１３】副走査を行いながら複数のパスでラスタを形成することによって画像を印刷する様子を示した説明図である。
【図１４】画像の有効表示領域を拡大して示した説明図である。
【図１５】個数データからドットデータを生成する処理の流れを示したフローチャートである。
【図１６】個数データからドットデータを生成する様子を概念的に示した説明図である。
【図１７】インク吐出用ヘッドの主走査を繰り返しながらドットを形成する際に、個数データをデコードして生成したドットデータがメモリに記憶される一例を概念的に示した説明図である。
【図１８】インク吐出用ヘッドの主走査を繰り返しながらドットを形成する際に、個数データをデコードして生成したドットデータがメモリに記憶される他の一例を概念的に示した説明図である。
【符号の説明】
【０１１９】
１０…コンピュータ
１２…ドット個数決定モジュール
１４…個数データ出力モジュール
２０…プリンタ
２２…ヘッド
２４…バッファメモリ
２６…ドットデータ記憶モジュール
２８…ヘッド駆動モジュール
１００…コンピュータ
１０８…周辺機器インターフェースＰＩＦ
１０９…ディスクコントローラＤＤＣ
１１０…ネットワークインターフェースカードＮＩＣ
１１２…ビデオインターフェースＶＩＦ
１１６…バス
１１８…ハードディスク
１２０…デジタルカメラ
１２２…カラースキャナ
１２４…フレキシブルディスク
１２６…コンパクトディスク
２００…プリンタ
２３０…キャリッジモータ
２３５…モータ
２３６…プラテン
２４０…キャリッジ
２４１…印字ヘッド
２４２…インクカートリッジ
２４３…インクカートリッジ
２４４…インク吐出用ヘッド
２６０…制御回路
２６１…駆動バッファ
３００…通信回線
３１０…記憶装置
【図１】
2005086660.tif 000003
【図２】
2005086660.tif 000004
【図３】
2005086660.tif 000005
【図４】
2005086660.tif 000006
【図５】
2005086660.tif 000007
【図６】
2005086660.tif 000008
【図７】
2005086660.tif 000009
【図８】
2005086660.tif 000010
【図９】
2005086660.tif 000011
【図１０】
2005086660.tif 000012
【図１１】
2005086660.tif 000013
【図１２】
2005086660.tif 000014
【図１３】
2005086660.tif 000015
【図１４】
2005086660.tif 000016
【図１５】
2005086660.tif 000017
【図１６】
2005086660.tif 000018
【図１７】
2005086660.tif 000019
【図１８】
2005086660.tif 000020