(57)【要約】 【課題】  印刷画像の濃度を適切に表現する。【解決手段】  画像処理装置のハーフトーン処理部は、注目画素の階調値と、他の画素について算出された誤差値と、を用いて、注目画素の補正階調値を算出し、注目画素の補正階調値と、閾値と、を比較することによって、注目画素のドット値を決定し、注目画素のドット値がドットの形成を示し、かつ、注目画素のドット値に対応して形成されるべきドットが孤立する第１種のドットである場合に、注目画素の補正階調値と、第１の濃度を示す第１種の値と、を用いて、注目画素の誤差値を算出し、注目画素のドット値がドットの形成を示し、かつ、注目画素のドット値に対応して形成されるべきドットが連続するドット群内の特定の位置にある第２種のドットである場合に、注目画素の補正階調値と、第２の濃度を示す第２種の値と、を用いて、注目画素の誤差値を算出する。【選択図】  図８
2015012425.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
複数個の画素の複数個の階調値を表す画像データに対して、ハーフトーン処理を実行して、複数個の画素の複数個のドット値であってドットの形成状態を示す前記複数個のドット値を含む処理済み画像データを生成するハーフトーン処理部と、
前記処理済み画像データを印刷実行部に供給する供給部と、
を備え、
前記ハーフトーン処理部は、
注目画素の階調値と、他の画素について算出された誤差値と、を用いて、前記注目画素の補正階調値を算出し、
前記注目画素の前記補正階調値と、閾値と、を比較することによって、前記注目画素の前記ドット値を決定し、
前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが孤立する第１種のドットである場合に、前記注目画素の前記補正階調値と、第１の濃度を示す第１種の値と、を用いて、前記注目画素の誤差値を算出し、
前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが連続するドット群内の特定の位置にある第２種のドットである場合に、前記注目画素の前記補正階調値と、第２の濃度を示す第２種の値と、を用いて、前記注目画素の誤差値を算出する、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記ハーフトーン処理部は、さらに、前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが連続する前記ドット群内の前記特定の位置とは異なる位置にある第３種のドットである場合に、前記注目画素の前記補正階調値と、前記第１種の値と、を用いて、前記注目画素の誤差値を算出する、画像処理装置。
【請求項３】
請求項２に記載の画像処理装置であって、
前記ハーフトーン処理部は、
前記注目画素の前記ドット値がドットの形成を示す場合には、前記注目画素の直前に処理された特定の隣接画素の前記ドット値がドットの形成を示すか否かを判断し、
前記特定の隣接画素の前記ドット値がドットの非形成を示す場合には、前記注目画素の前記ドット値に対応して形成されるべきドットが、前記第１種のドットおよび前記第３種のドットのうちの一方であると判断し、
前記特定の隣接画素の前記ドット値がドットの形成を示す場合には、前記注目画素の前記ドット値に対応して形成されるべきドットが、前記第２種のドットであると判断する、画像処理装置。
【請求項４】
請求項２に記載の画像処理装置であって、
前記ハーフトーン処理部は、
前記画像データ内の第１のラスタに属する前記注目画素の前記ドット値がドットの形成を示す場合には、前記第１のラスタに属して前記注目画素の直前に処理された第１の隣接画素の前記ドット値がドットの形成を示すか否かを判断し、
前記第１の隣接画素の前記ドット値がドットの非形成を示す場合には、前記注目画素の前記ドット値に対応して形成されるべきドットが、前記第１種のドットおよび前記第３種のドットのうちの一方であると判断して、前記注目画素の前記補正階調値と、前記第１種の値と、を用いて、前記注目画素の誤差値を算出し、
前記第１の隣接画素の前記ドット値がドットの形成を示す場合には、前記注目画素の前記ドット値に対応して形成されるべきドットが、第２種のドットであると判断して、前記注目画素の前記補正階調値と、前記第２種の値と、を用いて、前記注目画素の誤差値を算出し、
前記第１のラスタは、前記第１のラスタに対応して形成されるべき複数個のドットが前記印刷実行部の主走査方向に沿って並ぶラスタであり、かつ、前記第１のラスタに属する複数個の画素が前記ハーフトーン処理で処理される順序を示す処理方向と、前記第１のラスタに対応して形成されるべき複数個のドットが形成される順序を示す形成方向と、が反対方向であるラスタであり、
前記ハーフトーン処理部は、
前記画像データ内の第２のラスタに属する前記注目画素の前記ドット値がドットの形成を示す場合には、前記第２のラスタに属して前記注目画素の直前に処理された第２の隣接画素のドット値がドットの形成を示すか否かを判断し、
前記第２の隣接画素の前記ドット値がドットの非形成を示す場合には、前記注目画素の前記補正階調値と、前記第１種の値と、を用いて、前記注目画素の誤差値を算出し、
前記第２の隣接画素の前記ドット値がドットの形成を示す場合には、前記注目画素の補正階調値と、前記第２種の値と、を用いて、前記注目画素の誤差値を算出し、
前記第２のラスタは、前記第２のラスタに対応して形成されるべき複数個のドットが前記印刷実行部の主走査方向に沿って並ぶラスタであり、かつ、前記第２のラスタに属する複数個の画素が前記ハーフトーン処理で処理される順序を示す処理方向と、前記第２のラスタに対応して形成されるべき複数個のドットが形成される順序を示す形成方向と、が同一方向であるラスタである、画像処理装置。
【請求項５】
請求項１ないし請求項４のいずれかに記載の画像処理装置であって、
前記ハーフトーン処理部は、
前記注目画素の前記ドット値がドットの形成を示す特定値に決定され、かつ、前記注目画素の前記特定値に対応して形成されるべきドットが孤立する前記第１種のドットである場合に、前記注目画素の前記補正階調値と、前記第１種の値と、を用いて、前記注目画素の誤差値を算出し、
前記注目画素の前記ドット値がドットの形成を示す前記特定値に決定され、かつ、前記注目画素の前記特定値に対応して形成されるべきドットが連続するドット群内の特定の位置にある前記第２種のドットである場合に、前記注目画素の前記補正階調値と、前記第２種の値と、を用いて、前記注目画素の誤差値を算出する、画像処理装置。
【請求項６】
請求項１ないし請求項５のいずれかに記載の画像処理装置であって、
ドットの形成を示す前記ドット値は、複数種類のサイズのドットに対応する複数の値のうちのいずれかに決定され、
前記ハーフトーン処理部は、
前記注目画素の前記ドット値が前記複数種類のサイズのドットのうちの最大サイズのドットの形成を示し、かつ、形成されるべき前記最大サイズのドットが前記第１種のドットである場合に、前記注目画素の前記補正階調値と、前記第１種の値と、を用いて、前記注目画素の誤差値を算出し、
前記注目画素の前記ドット値が前記最大サイズのドットの形成を示し、かつ、形成されるべき前記最大サイズのドットが前記第２種のドットである場合に、前記注目画素の前記補正階調値と、前記第２種の値と、を用いて、前記注目画素の誤差値を算出する、画像処理装置。
【請求項７】
請求項６に記載の画像処理装置であって、
前記ハーフトーン処理部は、
前記画像データ内の特定のラスタに属する前記注目画素の前記ドット値がドットの形成を示す場合には、前記特定のラスタに属して前記注目画素の直前に処理された特定の隣接画素の前記ドット値が前記最大サイズのドットの形成を示すか否かを判断し、
前記特定の隣接画素の前記ドット値が前記最大サイズのドットの非形成を示す場合には、前記注目画素の前記補正階調値と、前記注目画素の前記ドット値に対応する濃度値と、を用いて、前記注目画素の誤差値を算出し、
前記特定の隣接画素の前記ドット値が前記最大サイズのドットの形成を示す場合には、前記注目画素の前記補正階調値と、前記注目画素の前記ドット値に対応する濃度値と、前記第１種の値と前記第２種の値との差分と、を用いて、前記注目画素の誤差値を算出し、
前記特定のラスタは、前記特定のラスタに対応して形成されるべき複数個のドットが前記印刷実行部の主走査方向に沿って並ぶラスタであり、かつ、前記特定のラスタに属する複数個の画素が前記ハーフトーン処理で処理される順序を示す処理方向と、前記特定のラスタに対応して形成されるべき複数個のドットが形成される順序を示す形成方向と、が同一方向であるラスタである、画像処理装置。
【請求項８】
請求項１ないし請求項７のいずれかに記載の画像処理装置であって、
前記第１種のドットは、
前記処理済み画像データを用いて印刷を実行する場合に、前記処理済み画像データ内の複数個の画素に対応する印刷媒体上の複数個の位置のうち、前記印刷実行部の主走査方向に隣接する位置にドットが形成されないドットであり、
前記第２種のドットは、前記処理済み画像データを用いて印刷を実行する場合に、前記処理済み画像データ内の複数個の画素に対応する印刷媒体上の複数個の位置のうち、前記印刷実行部の主走査方向に連続する２個以上の位置に形成される前記ドット群内の特定の位置にあるドットである、画像処理装置。
【請求項９】
画像処理を実行するコンピュータプログラムであって、
複数個の画素の複数個の階調値を表す画像データに対して、ハーフトーン処理を実行して、複数個の画素の複数個のドット値であってドットの形成状体を示す前記複数個のドット値を含む処理済み画像データを生成するハーフトーン処理機能と、
前記処理済み画像データを印刷実行部に供給する供給機能と、
をコンピュータに実現させ、
前記ハーフトーン処理機能は、
注目画素の階調値と、他の画素について算出された誤差値と、を用いて、前記注目画素の補正階調値を算出し、
前記注目画素の前記補正階調値と、閾値と、を比較することによって、前記注目画素の前記ドット値を決定し、
前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが孤立する第１種のドットである場合に、前記注目画素の前記補正階調値と、第１の濃度を示す第１種の値と、を用いて、前記注目画素の誤差値を算出し、
前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが連続するドット群内の特定の位置にある第２種のドットである場合に、前記注目画素の前記補正階調値と、第２の濃度を示す第２種の値と、を用いて、前記注目画素の誤差値を算出する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷のための画像処理に関し、特に、ドットの形成状態を示すドット値を画素ごとに決定する処理に関する。
【背景技術】
【０００２】
プリンタによる印刷では、インクやトナー等の色材のドットが形成される。このようなプリンタにおいて、ドットを形成するための駆動信号を、形成すべきドットの周囲の状況に応じて制御する技術が提案されている。例えば、特許文献１では、形成すべきドットが孤立したドットである場合と、形成すべきドットが連続したドットである場合と、の間で、異なる駆動信号を用いる技術が開示されている。具体的には、孤立したドットを形成する際の駆動信号のパルス幅を、連続したドットを形成する際の駆動信号のパルス幅より、広げる制御を行うことによって、孤立したドットを確実に記録紙に形成することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平９−２７７６０４号公報
【特許文献２】特開２００２−２９２９２９号公報
【特許文献３】特開２００８−４９６９４号公報
【特許文献４】特開平１０−１５７２０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記技術では、駆動信号が互いに異なることに起因して、形成されるドットによって表現される濃度が互いに異なり得ることについて、考慮されていなかった。このために、印刷画像が、適切な濃度で表現されない可能性があった。
【０００５】
本発明の目的は、印刷画像の濃度を適切に表現できる新たな技術を提供することである。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、複数個の画素の色を示す複数個の階調値を含む画像データに対して、ハーフトーン処理を実行して、複数個の画素の複数個のドット値であってドットの形成状態を示す前記複数個のドット値を含む処理済み画像データを生成するハーフトーン処理部と、前記処理済み画像データを印刷実行部に供給する供給部と、を備え、前記ハーフトーン処理部は、注目画素の階調値と、他の画素について算出された誤差値と、を用いて、前記注目画素の補正階調値を算出し、前記注目画素の前記補正階調値と、閾値と、を比較することによって、前記注目画素の前記ドット値を決定し、前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが孤立する第１種のドットである場合に、前記注目画素の前記補正階調値と、第１の濃度を示す第１種の値と、を用いて、前記注目画素の誤差値を算出し、前記注目画素の前記ドット値がドットの形成を示し、かつ、前記注目画素の前記ドット値に対応して形成されるべきドットが連続するドット群内の特定の位置にある第２種のドットである場合に、前記注目画素の前記補正階調値と、第２の濃度を示す第２種の値と、を用いて、前記注目画素の誤差値を算出する、画像処理装置。
【０００８】
上記構成によれば、注目画素のドット値がドットの形成を示す場合に、孤立する第１種のドットに対応する画素の誤差値と、連続するドット群の特定の位置にある第２種のドットに対応する画素の誤差値と、を算出する際に、互いに異なる濃度を示す値が用いられる。この結果、第１種のドットが形成される場合に表現される濃度と、第２種のドットが形成される場合に表現される濃度と、を考慮して、第１種のドットと第２種のドットとを含む複数個のドットを含む印刷画像の濃度を適切に表現することができる。
【０００９】
なお、本発明は、種々の形態で実現することが可能であり、例えば、上記画像処理装置と上記印刷実行部とを備える印刷装置、画像処理方法、これら装置の機能または上記方法を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【００１０】
【図１】実施例における印刷システム１０００の構成を示すブロック図である。
【図２】印刷機構２２０の概略構成を示す図である。
【図３】印刷ヘッド２２４の概略構成を示す図である。
【図４】第１実施例の駆動信号ＤＳの一例を示す図である。
【図５】画像処理のフローチャートである。
【図６】印刷処理の説明図である。
【図７】印刷画像ＰＩ内のドットの形成状態の一例を示す図である。
【図８】第１実施例のハーフトーン処理のフローチャートである。
【図９】第１実施例の印刷画像の例を示す図である。
【図１０】第２実施例のハーフトーン処理のフローチャートである。
【図１１】ハーフトーン処理の処理方向について説明する図である。
【図１２】第２実施例の印刷画像の例を示す図である。
【図１３】第３実施例の駆動信号ＤＳの一例を示す図である。
【図１４】第３実施例の印刷画像の例を示す図である。
【図１５】第３実施例のハーフトーン処理のフローチャートである。
【図１６】第４実施例のハーフトーン処理のフローチャートである。
【図１７】第４実施例の印刷画像の例を示す図である。
【発明を実施するための形態】
【００１１】
Ａ．第１実施例：
Ａ−１．印刷システムの構成：
次に、本発明の実施の形態を実施例に基づき説明する。図１は、実施例における印刷システム１０００の構成を示すブロック図である。印刷システム１０００は、パーソナルコンピュータ１００と、プリンタ２００とを含んでいる。
【００１２】
パーソナルコンピュータ１００は、ＣＰＵ１１０と、ＤＲＡＭなどの揮発性記憶装置１２０と、ハードディスクドライブなどの不揮発性記憶装置１３０と、プリンタ２００などの外部装置との通信のための通信インタフェース１４０と、マウスやキーボードなどの操作部１５０と、液晶ディスプレイなどの表示部１６０と、を備えている。揮発性記憶装置１２０には、後述する誤差バッファＢ１０が、設けられている。
【００１３】
不揮発性記憶装置１３０には、文書作成や画像生成などの画像データを生成する機能を実現するアプリケーションプログラムＰ１０と、プリンタドライバの機能を実現するためのドライバプログラムＰ２０と、が格納されている。各プログラムＰ１０、Ｐ２０は、例えば、ＤＶＤ−ＲＯＭに格納された状態で提供され得る。各プログラムＰ１０、Ｐ２０の機能は、ＣＰＵ１１０が各プログラムを実行することによって、実現される。プリンタドライバの機能は、後述するハーフトーン処理（誤差拡散処理）を含む画像処理を実行して印刷データを生成し、該印刷データをプリンタ２００に供給する機能を含む。なお、図１には、本実施例のハーフトーン処理の概要も示されている。詳細については、後述する。
【００１４】
プリンタ２００は、インクのドットを用紙上に形成することによって印刷を行うインクジェットプリンタである。プリンタ２００は、プリンタの全体を制御する制御部２１０と、印刷を行う印刷機構２２０と、パーソナルコンピュータ１００やストレージ装置（例えば、ＵＳＢメモリ、図示省略）などの外部装置との通信のための通信インタフェース２３０と、を備えている。通信インタフェース２３０は、パーソナルコンピュータ１００から印刷データを受信可能である。制御部２１０は、図示しないＣＰＵとメモリとを有する周知のコンピュータである。制御部２１０のメモリには、プリンタ２００を制御するための種々のプログラムが格納されている（図示せず）。制御部２１０は、通信インタフェース２３０から受信した印刷データに従って印刷機構２２０を制御することによって、印刷を実行する。
【００１５】
図２は、印刷機構２２０の概略構成を示す図である。印刷機構２２０は、制御部２１０の制御に従って、シアン（Ｃ）、マゼンタ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の各インクを吐出してカラー印刷を行うことができ、ブラックのインクを吐出してモノクロ印刷を行うことができる。印刷機構２２０は、搬送機構２２１と、主走査機構２２２と、ヘッド駆動回路２２３と、印刷ヘッド２２４と、を備えている。搬送機構２２１は、図示しない搬送モータを備え、搬送モータの動力で用紙を搬送方向（副走査方向とも呼ぶ）に搬送する。主走査機構２２２は、図示しない主走査モータを備え、主走査モータの動力で印刷ヘッド２２４を主走査方向に往復動（主走査）させる。ヘッド駆動回路２２３は、主走査機構２２２が印刷ヘッド２２４の主走査を行っている最中に、印刷ヘッド２２４に駆動信号ＤＳを供給して、印刷ヘッド２２４を駆動する。印刷ヘッド２２４は、駆動信号ＤＳに従って、搬送機構２２１によって搬送される用紙上にインクを吐出してドットを形成する。
【００１６】
図３は、印刷ヘッド２２４の概略構成を示す図である。図３（Ａ）に示すように、印刷ヘッド２２４の底面２２４ｂ（図３の＋Ｚ方向の面）、すなわち、印刷時に用紙と対向する面には、複数のノズルからなる複数のノズル列、すなわち、上述したＣ、Ｍ、Ｙ、Ｋの各インクを吐出するノズル列ＮＣ、ＮＭ、ＮＹ、ＮＫが形成されている。各ノズル列は、副走査方向（図３の−Ｙ方向）の位置が互いに異なる複数個のノズルＮｚを含んでいる。なお、図３の＋Ｘ方向および−Ｘ方向は、主走査方向を示している。
【００１７】
図３（Ｂ）には、印刷ヘッド２２４内のインクの吐出機構を示す概略断面図である。図３（Ｂ）では、図の煩雑を避けるために、１個のノズルＮｚに関連する構成の概略が図示されている。印刷ヘッド２２４は、インクごとに設けられたインク室ＲＭ１と、ノズルＮｚごとに設けられた圧力室ＲＭ２と、第１流路ＣＨ１と、第２流路ＣＨ２と、を有している。インク室ＲＭ１には、図示しないインクカートリッジからインクが供給されて、インクが貯留される。圧力室ＲＭ２は、第１流路ＣＨ１を介して圧力室ＲＭ２と連通している。インク室ＲＭ１に貯留されたインクは第１流路ＣＨ１を通って圧力室ＲＭ２に流入する。第２流路ＣＨ２の上流端は、圧力室ＲＭ２と連通しており、第２流路ＣＨ２の下流端は、ノズルＮｚとして、印刷ヘッド２２４の底面２２４ｂに開口している。
【００１８】
圧力室ＲＭ２の天井面は、振動板３２で構成されている。振動板３２の上面には、圧電素子３１が配置されている。この圧電素子３１は、ヘッド駆動回路２２３（図２）から供給される駆動信号ＤＳ信号に応じて振動する。圧電素子３１の振動に応じて、振動板３２が振動し、振動板３２の振動に応じて、圧力室ＲＭ２の容積が変動する。
【００１９】
圧力室ＲＭ２の容積の変動に応じて、インクがノズルＮｚから吐出される。具体的には、圧力室ＲＭ２の容積の増大に応じて、インク室ＲＭ１から第１流路ＣＨ１を通って圧力室ＲＭ２にインクが流入する。そして、圧力室ＲＭ２の容積の減少に応じて、圧力室ＲＭ２内のインクが第２流路ＣＨ２を通ってノズルＮｚから吐出される。
【００２０】
以上の説明から解るように、ヘッド駆動回路２２３は、適切な波形を有する駆動信号ＤＳを、適切なタイミングで、インクを吐出させるべきノズルＮｚに対応する圧電素子３１に供給することによって、用紙上の適切な位置に適切なサイズのドットを形成することができる。
【００２１】
図４は、第１実施例の駆動信号ＤＳの一例を示す図である。駆動信号ＤＳは、形成すべきドットごとに、１個の単位信号を含んでいる。すなわち、Ｎ個のドットを形成するための駆動信号ＤＳは、Ｎ個の単位信号を含んでいる（Ｎは自然数）。本実施例では、２種類の単位信号、すなわち、第１単位信号ＤＰ１と、第２単位信号ＤＰ２と、が用いられる（図４）。例えば、図４に示す駆動信号ＤＳ１は、１個の第１単位信号ＤＰ１を含んでいる。駆動信号ＤＳ２は、１個の第１単位信号ＤＰ１と、１個の第２単位信号ＤＰ２と、を含んでいる。これらの単位信号ＤＰ１、ＤＰ２は、特定期間ＩＴ内に出力される。この特定期間ＩＴは、用紙上の所望の位置にドットを形成できるように、印刷時に印刷ヘッド２２４が主走査方向に移動する速度、すなわち、主走査速度に基づいて決定されている。
【００２２】
第１単位信号ＤＰ１は、３個の第１パルスＰ１と、３個の第１パルスＰ１に続いて出力される１個の第２パルスＰ２と、を含んでいる。第１パルスＰ１は、期間ｔ１だけその出力電位が電位ＥＶに維持される略矩形のパルスである。第２パルスＰ２は、期間ｔ１より短い期間ｔ２だけその出力電位が電位ＥＶに維持される略矩形のパルスである。第１パルスＰ１は、圧力室ＲＭ２の容積を変動させて、インクを吐出させるためのパルスである。第２パルスＰ２は、圧力室ＲＭ２の容積の変動を抑制して、インクの吐出量を安定させるためのパルスである。
【００２３】
第２単位信号ＤＰ２は、２個の第１パルスＰ１と、２個の第１パルスＰ１に続いて出力される１個の第３パルスＰ３と、を含んでいる。第３パルスＰ３は、期間ｔ１より長い期間ｔ３だけその出力電位が電位ＥＶに維持される略矩形のパルスである。２種類の単位信号ＤＰ１、ＤＰ２の使い分けについては、後述する。
【００２４】
Ａ−２．印刷システム１０００の動作
本実施例の印刷システム１０００では、パーソナルコンピュータ１００とプリンタ２００とが協働して、印刷を実現する。すなわち、パーソナルコンピュータ１００が印刷データを生成するための画像処理を実行し、プリンタ２００が、画像処理によって生成された印刷データを用いて印刷処理を実行する。
【００２５】
Ａ−２−１．画像処理の概要：
図５は、パーソナルコンピュータ１００によって実行される画像処理のフローチャートである。パーソナルコンピュータ１００のＣＰＵ１１０（図１）は、利用者からの印刷指示を受け付けた場合に、この画像処理を実行する。この画像処理は、プリンタドライバの機能として実現される処理である。すなわち、この画像処理は、ＣＰＵ１１０が、ドライバプログラムＰ２０（図１）を実行することによって実現される。
【００２６】
最初のステップＳ１０では、ＣＰＵ１１０は、印刷対象の画像データを取得し、取得された画像データを、ビットマップデータに変換する（ラスタライズ処理）。印刷対象の画像データは、例えば、利用者によって指定された画像データであり、例えば、アプリケーションプログラムＰ１０によって実現される機能によって作成された画像データである。ビットマップデータは、例えば、ＲＧＢの３つの成分の階調値（例えば、２５６階調）で画素ごとの色を表すＲＧＢ画像データである。
【００２７】
ステップＳ２０では、ＣＰＵ１１０は、ＲＧＢ画像データを、シアンとマゼンタとイエロとブラックとの４つの色成分の階調値（例えば、０〜２５５の２５６階調）で画素の色を表すＣＭＹＫ画像データに変換する（色変換処理）。色変換処理は、ＲＧＢ画像データとＣＭＹＫ画像データとを対応付けるルックアップテーブルを用いて行われる。
【００２８】
ステップＳ３０では、ＣＰＵ１１０は、ＣＭＹＫ画像データを、ドットの形成状態を画素ごと、かつ、インクの色ごとに表すドットデータに変換する（ハーフトーン処理）。ドットデータに含まれる複数個の画素値は、それぞれ、ドットの形成を示す値と、ドットの非形成を示す値のいずれかの値である。すなわち、本実施例のドットデータは二値データであり、ドットデータによって示されるドットの種類は、１つである。ドットデータの画素値を、ドット値とも呼ぶ。ハーフトーン処理の詳細については、後述する。
【００２９】
ステップＳ４０では、ＣＰＵ１１０は、ドットデータを用いて印刷データを生成する。例えば、ＣＰＵ１１０は、ドットデータに含まれる複数個のドット値を、プリンタ２００の印刷機構２２０が印刷を実行する際に用いられる順番に並べる処理と、ドットデータにプリンタ制御コードやデータ識別コードを付加する処理を、実行する。この結果、プリンタ２００によって解釈可能な印刷データが生成される。
【００３０】
最後のステップＳ５０では、ＣＰＵ１１０は、生成された印刷データを、通信インタフェース１４０を介して、プリンタ２００に供給する。
【００３１】
Ａ−２−２．印刷処理の概要：
図６は、印刷処理の説明図である。図６には、プリンタ２００によって印刷された印刷画像ＰＩが図示されている。プリンタ２００の印刷部２１０は、上記画像処理によって生成された印刷データを、通信インタフェース２３０を介して受信すると、印刷データを用いて印刷機構２２０（図２）を制御して印刷を実行する。具体的には、プリンタ２００の制御部２１０は、単位印刷と単位副走査とを交互に繰り替し実行して、印刷画像ＰＩの印刷を行う。
【００３２】
単位印刷は、用紙が停止した状態で、１回の主走査を行いつつ、印刷ヘッド２２４に形成された複数個のノズルＮｚからインクを吐出することによって行われる印刷である。１回の単位印刷に対応する１回の主走査をパスとも呼ぶ。制御部２１０は、単位印刷として、往路方向の主走査（往路パスとも呼ぶ）を行いつつ印刷を行う往路印刷と、復路方向の主走査（復路パスとも呼ぶ）を行いつつ印刷を行う復路印刷とを実行することができる。すなわち、主走査方向には、互いに反対の方向である往路方向と復路方向との２つの方向があり、図６の＋Ｘ方向は往路方向であり、図６の−Ｘ方向は復路方向である。本実施例の印刷では、往路パスと復路パスとが交互に実行される。
【００３３】
単位副走査は、所定の送り量だけ副走査、すなわち、用紙の搬送を実行することである。図６の−Ｙ方向は、副走査方向（用紙の搬送方向）である。本実施例の印刷で用いられる所定の送り量は、１個のノズル列（例えば、ブラックのインク用のノズル列ＮＫ（図３（Ａ））に含まれる複数個のノズルＮｚのうちの最上流のノズルと最下流のノズルとの間の距離と、ほぼ等しい。
【００３４】
図６には、印刷画像ＰＩに含まれる複数個の部分画像ＩＡ１〜ＩＡ４が図示されている。各部分画像ＩＡ１〜ＩＡ４は、１回の単位印刷によって印刷される。図６に示すように、２つの部分画像ＩＡ１、ＩＡ３は、往路パス中に印刷され、２つの部分画像ＩＡ２、ＩＡ４は、復路パス中に印刷される。
【００３５】
ここで、単位印刷のパスの方向（往路方向または復路方向）を、印刷方向とも呼ぶ（図６）。単位印刷では、１個のノズルＮｚによって形成される複数個のドット、すなわち、主走査方向に並ぶ複数個のドットは、パスの方向の上流側から下流側に向かって順次に形成される。したがって、印刷方向は、印刷画像内の主走査方向に並ぶ複数個のドットが形成される順序を示している。このため、印刷方向を形成方向とも呼ぶ。
【００３６】
図７は、印刷画像ＰＩ内のドットの形成状態の一例を示す図である。図７（Ａ）、図７（Ｂ）には、印刷画像ＰＩの印刷に用いられる印刷データ内の縦８画素×横８画素分の領域に対応する部分画像ＳＩ１、ＳＩ２が図示されている。図７（Ａ）、図７（Ｂ）には、には、部分画像ＳＩ１、ＳＩ２を構成する複数個のドットが示されているとともに、対応する印刷データ内の６４個の画素ＰＸが示されている。印刷データ内の６４個の画素ＰＸに対応する用紙上の６４個の位置にドットが形成され得る。換言すれば、印刷データに従って形成されるべき各ドットは、印刷データ内の複数個の画素に対応する、用紙上のドットが形成され得る複数個の位置（ドット形成位置とも呼ぶ）のいずれかに形成される。ここで、特定のドットのドット形成位置に隣接する別のドット形成位置に形成されるドットを、特定のドットの隣接ドットとも呼ぶ。また、印刷データ内の複数個の画素のうち、主走査方向に沿って並ぶ複数個の画素をラスタとも呼ぶ。図７（Ａ）では、部分画像ＳＩ１の１個のラスタＲＴが示されている。ラスタは、印刷時の主走査方向に平行な１行分の画素群と言うことができる。
【００３７】
上述したように、ドットデータでは、ドットの形成を示すドット値は、「ＯＮ」の１種類だけである。しかし、印刷画像ＰＩ内の複数個のドットは、周囲に位置する他のドットとの位置関係に基づいて、孤立ドットＤ１と、非終端ドットＤ２と、終端ドットＤ３と、の３種類に分類することができる。
【００３８】
図７（Ａ）の部分画像ＳＩ１は、６個の孤立ドットＤ１を含んでいる。孤立ドットＤ１は、主走査方向に隣接する隣接ドットがないドットである。換言すれば、孤立ドットＤ１は、主走査方向に隣接する２個のドット形成位置、すなわち、−Ｘ側に隣接するドット形成位置と＋Ｘ側に隣接するドット形成位置に、他のドットが形成されないドットである。
【００３９】
図７（Ｂ）の部分画像ＳＩ２は、８個の非終端ドットＤ２と、６個の終端ドットＤ３と、を含んでいる。非終端ドットＤ２は、主走査方向に連続する複数個のドット形成位置に形成される複数個のドットからなるドット群（以下、連続ドット群とも呼ぶ）内の特定の位置にあるドットである。具体的には、非終端ドットＤ２は、連続ドット群内の印刷方向の下流側の端以外の位置にあるドットである。換言すれば、非終端ドットＤ２は、連続ドット群に含まれるＭ個（Ｍは２以上の自然数）のドットのうち、印刷方向の上流側から数えて、１番目から（Ｍ−１）番目までのドットである。
【００４０】
終端ドットＤ３は、連続ドット群内の、非終端ドットＤ２の位置とは異なる位置にあるドットである。具体的には、終端ドットＤ３は、連続ドット群内の、印刷方向の下流側の端に位置するドットである。換言すれば、終端ドットＤ３は、連続ドット群に含まれる複数個のドットのうち最後に形成されるドットである。
【００４１】
Ｍ個のドットを含む連続ドット群は、１個の終端ドットＤ３と、（Ｍ−１）個の非終端ドットＤ２と、を含む。例えば、図７（Ｂ）の連続ドット群ＤＧ１は、終端ドットＤ３と非終端ドットＤ２とを１個ずつ含み、連続ドット群ＤＧ２は、１個の終端ドットＤ３と２個の非終端ドットＤ２とを含んでいる。
【００４２】
孤立ドットＤ１と、終端ドットＤ３とは、図６を参照して説明した第１単位信号ＤＰ１を用いて形成される。一方、非終端ドットＤ２は、第２単位信号ＤＰ２を用いて形成される。すなわち、第１実施例の印刷画像ＰＩは、形成に用いられる駆動信号の観点から見れば、２種類のドットを含むと言える。ヘッド駆動回路２２３（図２）は、印刷データに従って駆動信号ＤＳを出力する際に、形成すべきドットごとに、第１単位信号ＤＰ１と第２単位信号ＤＰ２とのいずれか一方を出力する。具体的には、ヘッド駆動回路２２３は、印刷データを参照して、対象のドットの印刷方向の下流側に隣接ドットを形成するか否かを判断する。そして、ヘッド駆動回路２２３は、隣接ドットを形成する場合には、対象のドットを形成するための単位信号として、第２単位信号ＤＰ２を出力する。ヘッド駆動回路２２３は、対象のドットの印刷方向の下流側に隣接ドットを形成しない場合には、対象のドットを形成するための単位信号として、第１単位信号ＤＰ１を出力する。
【００４３】
単位信号の出力の終了から次の単位信号の出力の開始までの信号間隔が過度に短くなると、圧力室ＲＭ２（図３（Ｂ））の振動や、圧力室ＲＭ２（図３（Ｂ））の振動に伴うインクのメニスカスの振動が不安定になる可能性がある。この場合には、インクの吐出が不安定になる可能性がある。第１単位信号ＤＰ１は、インクの吐出量を安定させるための第２パルスＰ２を含むので、第１単位信号ＤＰ１の出力期間Ｏｔ１は、第２単位信号ＤＰ２の出力期間Ｏｔ２より長い（図４）。したがって、第１単位信号ＤＰ１が出力される特定期間ＩＴの次の特定期間ＩＴにて単位信号が出力される場合の信号間隔Ｓｔ１は、第２単位信号ＤＰ２が出力される特定期間ＩＴの次の特定期間ＩＴにて単位信号が出力される場合の信号間隔Ｓｔ２より短くなる（図４）。
【００４４】
このために、仮に第１単位信号ＤＰ１が出力される特定期間ＩＴの次の特定期間ＩＴにて単位信号が出力されると、信号間隔が過度に短くなる場合がある。特に、１個のドットの形成のために許容される特定期間ＩＴが比較的短い場合、すなわち、主走査の速度が比較的高い場合には、信号間隔Ｓｔ１が短く成りやすい。したがって、非終端ドットＤ２の形成に、第１単位信号ＤＰ１を用いる場合には、第２単位信号ＤＰ２を用いる場合より、該非終端ドットＤ２の次に形成されるドットを形成する際にインクの吐出が不安定になる可能性がある。そこで、本実施例では、孤立ドットＤ１と終端ドットＤ３の形成にのみ第１単位信号ＤＰ１を用い、非終端ドットＤ２の形成には第２単位信号ＤＰ２を用いている。
【００４５】
第１単位信号ＤＰ１を用いて形成される孤立ドットＤ１および終端ドットＤ３によって表現される第１の濃度と、第２単位信号ＤＰ２を用いて形成される非終端ドットＤ２によって表現される第２の濃度は、互いに異なっている。本実施例では、第１の濃度より第２の濃度が大きくなる。
【００４６】
第１の濃度を表す濃度値ＤＶ１は、以下のように算出することができる。部分画像ＳＩ１のように、孤立ドットＤ１のみを用いて用紙に印刷された第１画像の濃度を測定することによって、第１測定値ＭＶ１が取得される。第１測定値ＭＶ１を、第１画像の単位面積あたりに含まれる孤立ドットＤ１の数Ｃ１で除すことによって、第１の濃度を示す濃度値ＤＶ１が取得される（ＤＶ１＝（ＭＶ１／Ｃ１））。
【００４７】
第２の濃度を示す濃度値ＤＶ２は、以下のように算出することができる。部分画像ＳＩ２のように、２個以上の連続ドット群のみを用いて用紙に印刷された第２画像、すなわち、非終端ドットＤ２および終端ドットＤ３のみを含む第２画像の濃度を測定することよって、第２測定値ＭＶ２が取得される。第２測定値ＭＶ２から、第２画像の単位面積あたりに含まれる終端ドットＤ３の数Ｃ３に第１の濃度を示す濃度値ＤＶ１を乗じた値（Ｃ３×ＤＶ１）を減ずることによって、第２画像の濃度のうち、非終端ドットＤ２によって表現される濃度ＭＶ２２が得られる（ＭＶ２２＝ＭＶ２−（Ｃ３×ＤＶ１））。（Ｃ３×ＤＶ１）は、第２画像の濃度のうち、終端ドットＤ３によって表現される濃度ＭＶ２３を示す値である。得られた濃度ＭＶ２２を、第２画像の単位面積あたりに含まれる非終端ドットＤ２の数Ｃ２で除すことによって、第２の濃度を示す濃度値ＤＶ２が取得される（ＤＶ２＝（ＭＶ２２／Ｃ２））。
【００４８】
第１の濃度を示す濃度値ＤＶ１と第２の濃度を示す濃度値ＤＶ２とを、第２の濃度を示す濃度値が「２５５」となるような相対値に変換することによって、第１の濃度を示す相対濃度値Ａ（以下、単に第１値Ａとも呼ぶ）と、第２の濃度値を示す相対濃度値Ｂ（以下、単に第２値Ｂとも呼ぶ）と、が取得される。本実施例では、第１値Ａは「２５３」であり、第２値Ｂは「２５５」である。この２つの値Ａ、Ｂは、相対濃度値テーブルに格納されてドライバプログラムＰ２０に組み込まれており、図５のステップＳ３０のハーフトーン処理にて用いられる（詳細は後述する）。
【００４９】
以上、本実施例の印刷システム１０００の動作の概要を説明した。本実施例のパーソナルコンピュータ１００は、画像処理装置の例であり、プリンタ２００は、印刷実行部の例である。また、本実施例の印刷データは、処理済み画像データの例である。
【００５０】
Ａ−３．ハーフトーン処理：
図８は、ハーフトーン処理（図５のステップＳ３０）のフローチャートである。また、図１には、ハーフトーン処理の概略が示されている。ハーフトーン処理の処理対象となる対象画像データ、すなわち、本実施例ではステップＳ３０で生成されるＣＭＹＫ画像データによって表される対象画像（図示省略）は、印刷データによって表される印刷画像ＰＩ（図６）と同じサイズ（縦方向と横方向の画素数）を有している。ここで印刷画像ＰＩ内のラスタ、すなわち、主走査方向に沿って並ぶ１行分の複数個の画素に対応する対象画像内の１行分の複数個の画素を、対象画像のラスタと呼ぶ。図８のハーフトーン処理は、ＣＭＹＫの各成分ごとに実行される。すなわち、ＣＭＹＫ画像データに含まれる４個の成分画像データごとに、図８のハーフトーン処理が実行される。成分画像データは、ＣＭＹＫの４種類の階調値（Ｃ値、Ｍ値、Ｙ値、Ｋ値）のうちの１種類の値で構成された画像データである。以下では、１個の成分画像データ、例えば、画素ごとのＫ値で構成された成分画像データに対するハーフトーン処理について説明する。
【００５１】
ステップＳ１００では、ＣＰＵ１１０は、対象画像を構成する複数個のラスタの中から、１個の注目ラスタを選択する。具体的には、対象画像のラスタと垂直な方向の一端から１個ずつのラスタが順次に選択される。
【００５２】
ステップＳ１０５では、ＣＰＵ１１０は、注目ラスタの印刷方向を取得する。ここで、注目ラスタの印刷方向は、印刷データ内の対応するラスタの印刷方向である。換言すれば、対象画像のラスタの印刷方向は、対象画像データを用いて得られる印刷データを用いて印刷を行う場合に、対象画像内のラスタに対応して形成されるべき複数個のドットが形成される順序を示している、と言うことができる。ステップＳ１１０では、ＣＰＵ１１０は、注目ラスタの処理方向を、注目ラスタの印刷方向の反対方向に決定する（図６参照）。
【００５３】
ステップＳ１１５では、ＣＰＵ１１０は、注目ラスタに属する複数個の画素の中から１個の注目画素を選択する。具体的には、処理方向の上流側から下流側に向かって、１個ずつの画素が順次に選択される。したがって、対象画像のラスタの処理方向は、当該ラスタに属する複数個の画素がハーフトーン処理で処理される順序を示している、と言うことができる。
【００５４】
ステップＳ１２０では、ＣＰＵ１１０は、マトリクスＭＴＸ（図１）と、現在の注目画素より前に注目画素とされた処理済み画素について算出され誤差バッファＢ１０（図１）に格納された誤差値Ｅ１（後述）とを用いて、注目画素に加算すべき誤差値Ｅｔを取得する。マトリクスＭＴＸは、注目画素の周辺の所定の相対位置に配置された画素に、ゼロより大きい重みを割り当てている。図１のマトリクスＭＴＸでは、記号「＋」が注目画素を表し、周辺の画素に重みａ〜ｍが割り当てられている。重みａ〜ｍの合計は１である。
【００５５】
ＣＰＵ１１０は、この重みに従って、周辺の複数個の処理済み画素の複数個の誤差値Ｅ１の重み付き和を、誤差値Ｅｔとして算出する。
【００５６】
ステップＳ１２５では、ＣＰＵ１１０は、誤差値Ｅｔと、注目画素の階調値（入力階調値Ｖｉｎとも呼ぶ）との和を、補正済階調値Ｖ１として算出する。
【００５７】
ステップＳ１３０では、ＣＰＵ１１０は、補正済階調値Ｖ１と閾値Ｖｔｈとを比較する。閾値Ｖｔｈは、例えば、入力階調値Ｖｉｎが０〜２５５の２５６階調の値を取る場合に、１２８に設定されている。補正済階調値Ｖ１が閾値Ｖｔｈ未満である場合には（ステップＳ１３０：ＮＯ）、ＣＰＵ１１０は、注目画素のドット値を、ドットの非形成を示す値（以下、「ＯＦＦ」とも呼ぶ）に決定する（ステップＳ１３５）。この場合には、ＣＰＵ１１０は、相対濃度値Ｖｂを「０」に設定する（ステップＳ１４０）。
【００５８】
補正済階調値Ｖ１が閾値Ｖｔｈ以上である場合には（ステップＳ１３０：ＹＥＳ）、ＣＰＵ１１０は、注目画素のドット値を、ドットの形成を示す値（以下、「ＯＮ」とも呼ぶ）に決定する（ステップＳ１４５）。この場合には、ＣＰＵ１１０は、直前に処理された隣接画素のドット値がドットの形成を示すか否か、すなわち、該ドット値が「ＯＮ」であるか否かを判断する（ステップＳ１５０）。ここで、直前に処理された隣接画素は、注目画素に対して処理方向の上流側に隣接する画素である。直前に処理された隣接画素がない場合、すなわち、注目画素が、注目ラスタに属する複数個の画素のうち、最初に処理される画素である場合には、直前の注目画素のドット値はドットの非形成を示すと判断される。
【００５９】
直前に処理された隣接画素のドット値がドットの形成を示す場合には（ステップＳ１５０：ＹＥＳ）、ＣＰＵ１１０は、相対濃度値Ｖｂを第２値Ｂに設定する（ステップＳ１５５）。直前に処理された隣接画素のドット値がドットの非形成を示す場合には（ステップＳ１５０：ＮＯ）、ＣＰＵ１１０は、相対濃度値Ｖｂを第１値Ａに設定する（ステップＳ１６０）。
【００６０】
相対濃度値Ｖｂが、第１値Ａ、第２値Ｂ、０、のうちのいずれかに設定されると、ステップＳ１６５では、ＣＰＵ１１０は、補正済階調値Ｖ１から相対濃度値Ｖｂを減じた値を、注目画素の誤差値Ｅ１として算出する（Ｅ１＝Ｖ１−Ｖｂ）。ステップＳ１７０では、ＣＰＵ１１０は、誤差バッファＢ１０内の、注目画素に対応するアドレスに、算出された注目画素の誤差値Ｅ１を格納する。
【００６１】
ステップＳ１７５では、ＣＰＵ１１０は、注目ラスタの処理が終了したか否か、すなわち、注目ラスタに属する全ての画素を注目画素として処理したか否かを判断する。注目ラスタの処理が終了していない場合には（ステップＳ１７５：ＮＯ）、ＣＰＵ１１０は、ステップＳ１１５に戻って、未処理の画素を新たな注目画素として選択して、上述したステップＳ１２０〜Ｓ１７０までの処理を繰り返す。
【００６２】
注目ラスタの処理が終了した場合には（ステップＳ１７５：ＹＥＳ）、ＣＰＵ１１０は、対象画像内の全てのラスタの処理が終了したか否かを判断する（ステップＳ１８０）。全てのラスタの処理が終了していない場合には（ステップＳ１８０：ＮＯ）、ＣＰＵ１１０は、ステップＳ１００に戻って、未処理のラスタを注目ラスタとして選択して、上述したステップＳ１０５〜Ｓ１７５までの処理を繰り返す。全てのラスタの処理が終了した場合には（ステップＳ１８０：ＹＥＳ）、ＣＰＵ１１０は、ハーフトーン処理を終了する。
【００６３】
以上説明した第１実施例の画像処理によれば、以下に説明するように、生成される印刷データを用いて印刷される印刷画像において、互いに異なる単位信号を用いて形成される２種類のドットを含む印刷画像の濃度を適切に表現することができる。
【００６４】
図９は、第１実施例の印刷画像の例を示す図である。図９（Ａ）、図９（Ｃ）には、図６の部分画像ＩＡ１、ＩＡ２の一部分がそれぞれ概念的に示されている。図９（Ｂ）、図９（Ｄ）には、図９（Ａ）および図９（Ｃ）に示す部分画像ＩＡ１、ＩＡ２内のドットに対応する相対濃度値Ｖｂがそれぞれ示されている。ドットに対応する相対濃度値Ｖｂは、図８のハーフトーン処理で、当該ドットに対応する画素を注目画素として処理するときに、注目画素の誤差値Ｅｔの算出（ステップＳ１６５）に用いられる相対濃度値Ｖｂを意味する。
【００６５】
図９（Ａ）〜（Ｄ）から解るように、孤立ドットＤ１および終端ドットＤ３、すなわち、第１単位信号ＤＰ１を用いて形成されるドットに対応する相対濃度値Ｖｂは、第１値Ａである。そして、非終端ドットＤ２、すなわち、第２単位信号ＤＰ２を用いて形成されるドットに対応する相対濃度値Ｖｂは、第２値Ｂである。この結果、孤立ドットＤ１および終端ドットＤ３と、非終端ドットＤ２との間で、表現される濃度が互いに異なる場合であっても、印刷画像の濃度を適正に表現することができる。
【００６６】
さらに、ハーフトーン処理では、ＣＰＵ１１０は、注目画素の直前に処理された隣接画素のドット値がドットの形成を示すか、ドットの非形成を示すかに基づいて、相対濃度値Ｖｂとして第１値Ａを用いるか第２値Ｂを用いるかを判断している（図８のステップＳ１５０〜Ｓ１６０）。具体的には、注目画素の直前に処理された隣接画素のドット値がドットの非形成を示す場合には、注目画素は、孤立ドットＤ１または終端ドットＤ３のいずれか一方であると判断され、相対濃度値Ｖｂとして第１値Ａが用いられる。注目画素の直前に処理された隣接画素のドット値がドットの形成を示す場合には、注目画素は、非終端ドットＤ２であると判断され、相対濃度値Ｖｂとして第２値Ｂが用いられる。この結果、注目画素に対応して形成されるべきドットの種類を迅速に判断して、適切な相対濃度値Ｖｂを決定しつつ、ハーフトーン処理を高速化することができる。
【００６７】
さらに、注目ラスタの処理方向を、注目ラスタの印刷方向の反対方向に決定している（ステップＳ１１０）。この結果、注目画素に対応して形成されるべきドットが終端ドットＤ３である場合に、形成されるべきドットの種類を適切に判断することができる。具体的には、図９（Ａ）に示す部分画像ＩＡ１は、印刷方向が＋Ｘ方向であるので、終端ドットＤ３は、連続ドット群の＋Ｘ方向の端に位置する。したがって、部分画像ＩＡ１内に形成されるべきドットが、終端ドットＤ３または孤立ドットＤ１のいずれかであるか、非終端ドットＤ２であるかは、＋Ｘ側に隣接する画素にドットが形成されるか否かに基づいて決まることが解る。本実施例では、部分画像ＩＡ１に対応する対象画像のラスタの処理方向は、部分画像ＩＡ１の印刷方向（＋Ｘ方向）の反対方向である−Ｘ方向に決定される（図６、図９（Ａ））。この結果、現在の注目画素の＋Ｘ側に隣接する画素が、現在の注目画素より先に、注目画素として選択されてステップＳ１２０〜Ｓ１７０の処理が実行されることによって、＋Ｘ側に隣接する画素のドットの形成状態が現在の注目画素より先に決定される。一方、図９（Ｃ）に示す部分画像ＩＡ２は、印刷方向が−Ｘ方向であるので、終端ドットＤ３は、連続ドット群の−Ｘ方向の下流側の端に位置する。したがって、部分画像ＩＡ２内に形成されるべきドットが、終端ドットＤ３または孤立ドットＤ１のいずれかであるか、非終端ドットＤ２であるかは、−Ｘ側に隣接する画素にドットが形成されるか否かに基づいて決まることが解る。本実施例では、部分画像ＩＡ２に対応する対象画像のラスタの処理方向は、部分画像ＩＡ２の印刷方向（−Ｘ方向）の反対方向である＋Ｘ方向に決定される（図６、図９（Ｃ））。この結果、現在の注目画素の−Ｘ側に隣接する画素が、現在の注目画素より先に、注目画素として選択されてステップＳ１２０〜Ｓ１７０の処理が実行されることによって、−Ｘ側に隣接する画素のドットの形成状態が現在の注目画素より先に決定される。したがって、直前に処理された隣接画素について決定されたドット値を参照することによって、注目画素に対応して形成すべきドットの種類を適切に判断することができる。
【００６８】
また、仮に注目ラスタの処理方向が注目ラスタの印刷方向の反対方向であると、注目画素の次に処理対象とされる画素のドット値が決定されるまで、注目画素に対応して形成されるべきドットが終端ドットＤ３または孤立ドットＤ１のいずれかであるか、非終端ドットＤ２であるかを判断できない。したがって、注目画素の次に処理対象とされる画素のドット値が決定されるまで、注目画素に対応して形成されるべきドットの相対濃度値Ｖｂの決定を待つ必要がある。本実施例では、その必要がないために、ハーフトーン処理を高速化することができる。
【００６９】
なお、本実施例では、ドット値は、「ＯＮ」と「ＯＦＦ」の二値のうちのいずれかの値を取るので、ドットの形成を示すドット値は、１つの特定値「ＯＮ」だけである。すなわち、３種のドットＤ１〜Ｄ３に対応する複数個の画素の複数個のドット値は、互いに同一の値である。このように、本実施例では、複数個の画素に対応して形成されるべき複数個のドットを示す複数個のドット値は、同一の特定値に決定されるにも拘わらず、当該複数個の同一のドット値に対応する相対濃度値Ｖｂは、２つの異なる値Ａ、Ｂが使い分けられる。このように、本実施例の印刷画像は、対応するドット値は同一の特定値であるにも拘わらず、形成に用いられる単位信号が異なるために、互いに異なる濃度を表す複数個のドットを含むが、本実施例の画像処理によれば、このような印刷画像の濃度を適正に表現することができる。
【００７０】
Ｂ．第２実施例：
第２実施例では、プリンタ２００は、第１実施例のハーフトーン処理（図８）とは、異なるハーフトーン処理を実行する。第２実施例のその他の構成および処理は、第１実施例と同一である。
【００７１】
図１０は、第２実施例のハーフトーン処理のフローチャートである。ハーフトーン処理が開始されると、図８のステップＳ１００、Ｓ１０５と同様に、ＣＰＵ１１０は、１個の注目ラスタを選択し（ステップＳ２００）、注目ラスタの印刷方向を取得する（ステップＳ２０５）。
【００７２】
続くステップＳ２１０では、ＣＰＵ１１０は、注目ラスタの処理方向を予め定められた方向に決定する。図１１は、ハーフトーン処理の処理方向について説明する図である。本実施例では、ラスタと垂直な方向の端から奇数番目のラスタの処理方向と、偶数番目のラスタの処理方向とは、互いに逆方向に決定される。すなわち、複数個のラスタを順次に注目ラスタとして選択すると、処理順が奇数番目の注目ラスタは、ラスタに平行な第１の方向（例えば、＋Ｘ方向）に処理方向が決定され、処理順が偶数番目の注目ラスタは、ラスタに平行で第１の方向とは反対方向の第２の方向（例えば、−Ｘ方向）に処理方向が決定される。第１実施例とは異なり、注目ラスタの処理方向は、注目ラスタの印刷方向とは無関係に決定される。したがって、注目ラスタの処理方向は、注目ラスタの印刷方向と同一方向である場合もあり、注目画像の印刷方向と反対の方向である場合もある（図１１参照）。
【００７３】
このように、注目ラスタの処理方向を、注目ラスタの選択順に交互に反対方向になるように設定すると、例えば、注目ラスタの処理方向を、対象画像の全体や部分画像の全体で、常に同じ方向に設定する場合と比較して印刷画像の画質が向上する利点がある。ハーフトーン処理にて画素ごとに算出される誤差値Ｅ１は、対象画像において、処理方向の上流側から下流側に向かって分配されていく。このために、例えば、対象画像の全体で、注目ラスタの処理方向が常に同じ方向に設定されると、誤差値Ｅ１は、対象画像内の一方の方向に偏って分配される。この結果、生成された印刷データによって表される印刷画像には、ムラなどの不具合が生じ得る。注目ラスタの処理方向を、注目ラスタの選択順に交互に反対方向になるように設定すると、誤差値Ｅ１の分配の偏りが抑制されるので、印刷画像の画質を向上することができる。
【００７４】
図１０のステップＳ２１５では、ＣＰＵ１１０は、注目ラスタの処理方向は、注目ラスタの印刷方向と同じであるか否かを判断する。注目ラスタの処理方向が、注目ラスタの印刷方向と同一方向でない場合、すなわち、注目ラスタの処理方向が、注目の印刷方向と反対の方向である場合には（ステップＳ２１５：ＮＯ）、ＣＰＵ１１０は、図８のステップＳ１１５〜Ｓ１７５までの処理を実行する（ステップＳ２２０）。このように、注目ラスタの処理方向が印刷方向と反対の方向である場合には、第１実施例のハーフトーン処理と同様に処理することによって、ドットの種類に応じた適切な相対濃度値Ｖｂを用いて、注目ラスタに対応するドットデータを生成することができる。
【００７５】
注目ラスタの印刷方向と同一方向である場合には（ステップＳ２１５：ＮＯ）、第１実施例のハーフトーン処理とは一部の処理が異なるステップＳ２２５〜Ｓ２９０の処理が実行される。
【００７６】
先ず、図８のステップＳ１１５〜ステップＳ１３０と同様に、ＣＰＵ１１０は、１個の注目画素を選択し（ステップＳ２２５）、マトリクスを用いて注目画素に加算すべき誤差値Ｅｔを取得し（ステップＳ２３０）、誤差値Ｅｔと入力階調値Ｖｉｎとを用いて補正済階調値Ｖ１を算出し（ステップＳ２３５）、補正済階調値Ｖ１と閾値Ｖｔｈとを比較する（ステップＳ２４０）。
【００７７】
補正済階調値Ｖ１が閾値Ｖｔｈ未満である場合には（ステップＳ２４０：ＮＯ）、ＣＰＵ１１０は、注目画素のドット値を「ＯＦＦ」に決定し（ステップＳ２６５）、本実施例にて注目画素の誤差値Ｅ１を算出するときに用いる初期濃度値Ｖｃを「０」に設定する（ステップＳ２７０）。そして、ＣＰＵ１１０は、本実施例にて注目画素の誤差値Ｅ１を算出するときに用いる補正値ＣＶを「０」に設定する（ステップＳ２７５）。
【００７８】
補正済階調値Ｖ１が閾値Ｖｔｈ以上である場合には（ステップＳ２４０：ＹＥＳ）、ＣＰＵ１１０は、注目画素のドット値を「ＯＮ」に決定する（ステップＳ２４５）。この場合には、ＣＰＵ１１０は、初期濃度値Ｖｃを第１値Ａに決定する（ステップＳ２５０）。続いて、ＣＰＵ１１０は、直前に処理された隣接画素のドット値がドットの形成を示すか否か、すなわち、該ドット値が「ＯＮ」であるか否かを判断する（ステップＳ２５５）。直前に処理された隣接画素がない場合には、直前の注目画素のドット値はドットの非形成を示すと判断される。
【００７９】
直前に処理された隣接画素のドット値がドットの形成を示す場合には（ステップＳ２５５：ＹＥＳ）、ＣＰＵ１１０は、補正値ＣＶを、第２値Ｂと第１値Ａとの間の差分（Ｂ−Ａ）に設定する（ステップＳ２６０）。直前に処理された隣接画素のドット値がドットの非形成を示す場合には（ステップＳ２５５：ＮＯ）、ＣＰＵ１１０は、補正値ＣＶを「０」に設定する（ステップＳ２７５）。
【００８０】
補正値ＣＶが、（Ｂ−Ａ）、０、のうちのいずれか一方に設定されると、ステップＳ２８０では、ＣＰＵ１１０は、補正済階調値Ｖ１から初期濃度値Ｖｃと補正値ＣＶとを減じた値を、注目画素の誤差値Ｅ１として算出する（Ｅ１＝Ｖ１−Ｖｃ−ＣＶ）。ここで、相対濃度値Ｖｂ＝（Ｖｃ＋ＣＶ）とすると、Ｅ１＝（Ｖ１−Ｖｂ）と表すことができる。すなわち、相対濃度値Ｖｂ＝（Ｖｃ＋ＣＶ）が、形成すべきドットの濃度を示す値として用いられる値である。
【００８１】
例えば、注目画素のドット値が「ＯＮ」に決定され（ステップＳ２４０：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「ＯＦＦ」である場合（ステップＳ２５５：ＮＯ）には、Ｖｃ＝Ａ（ステップＳ２５０）、ＣＶ＝０（ステップＳ２７５）であるので、（Ｖｃ＋ＣＶ）＝Ａとなる。したがって、この場合には、相対濃度値Ｖｂとして第１値Ａが用いられる。
【００８２】
注目画素のドット値が「ＯＮ」に決定され（ステップＳ２４０：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「ＯＮ」である場合（ステップＳ２５５：ＹＥＳ）には、Ｖｃ＝Ａ（ステップＳ２５０）、ＣＶ＝（Ｂ−Ａ）（ステップＳ２６０）であるので、（Ｖｃ＋ＣＶ）＝Ｂとなる。したがって、相対濃度値Ｖｂとして第２値Ｂが用いられる。
【００８３】
注目画素のドット値が「ＯＦＦ」に決定された場合（ステップＳ２４０：ＮＯ）には、Ｖｃ＝０（ステップＳ２７０）、ＣＶ＝０（ステップＳ２７５）であるので、（Ｖｃ＋ＣＶ）＝０となる。したがって、この場合には、相対濃度値Ｖｂとして、０が用いられる。
【００８４】
ステップＳ２８５では、ＣＰＵ１１０は、誤差バッファＢ１０内の、注目画素に対応するアドレスに、算出された注目画素の誤差値Ｅ１を格納する。
【００８５】
ステップＳ２９０では、ＣＰＵ１１０は、注目ラスタの処理が終了したか否かを判断する。注目ラスタの処理が終了していない場合には（ステップＳ２９０：ＮＯ）、ＣＰＵ１１０は、ステップＳ２２５に戻って、未処理の画素を新たな注目画素として選択して、上述したステップＳ２３０〜Ｓ２８５までの処理を繰り返す。
【００８６】
注目ラスタの処理が終了した場合には（ステップＳ２９０：ＹＥＳ）、ＣＰＵ１１０は、対象画像内の全てのラスタの処理が終了したか否かを判断する（ステップＳ２９５）。全てのラスタの処理が終了していない場合には（ステップＳ２９５：ＮＯ）、ＣＰＵ１１０は、ステップＳ２００に戻って、未処理のラスタを注目ラスタとして選択して、上述したステップＳ２０５〜Ｓ２９０までの処理を繰り返す。全てのラスタの処理が終了した場合には（ステップＳ２９５：ＹＥＳ）、ＣＰＵ１１０は、ハーフトーン処理を終了する。
【００８７】
図１２は、第２実施例の印刷画像の例を示す図である。図１２（Ａ）、図１２（Ｃ）には、第２実施例にて生成される印刷データを用いて印刷される印刷画像ＰＩ（図６）の部分画像ＩＡ１、ＩＡ２の一部分がそれぞれ概念的に示されている。図１２（Ｂ）、図１２（Ｄ）には、図１２（Ａ）および図１２（Ｃ）に示す部分画像ＩＡ１、ＩＡ２内のドットに対応する相対濃度値Ｖｂがそれぞれ示されている。ドットに対応する相対濃度値Ｖｂは、図１０のハーフトーン処理で、当該ドットに対応する画素を注目画素として処理するときに、注目画素の誤差値Ｅｔの算出（ステップＳ２８０）に用いられる相対濃度値Ｖｂを意味する。
【００８８】
印刷方向と処理方向とが反対の方向である対象画像のラスタに対応する印刷画像のラスタ、すなわち、図１２（Ａ）の部分画像ＩＡ１の上から１番目および３番目のラスタ、および、図１２（Ｃ）の部分画像ＩＡ２の上から２番目および４番目のラスタについて説明する。これらのラスタのドットデータは、第１実施例と同様の処理（ステップＳ１１５〜Ｓ１７５）によって生成される。このために、これらのラスタでは、図１２（Ａ）〜図１２（Ｄ）から解るように、第１実施例と同様に、孤立ドットＤ１および終端ドットＤ３、すなわち、第１単位信号ＤＰ１を用いて形成されるドットに対応する相対濃度値Ｖｂは、第１値Ａである。そして、非終端ドットＤ２、すなわち、第２単位信号ＤＰ２を用いて形成されるドットに対応する相対濃度値Ｖｂは、第２値Ｂである。
【００８９】
印刷方向と処理方向とが同一方向である対象画像のラスタに対応する印刷画像のラスタ、すなわち、図１２（Ａ）の部分画像ＩＡ１の上から２番目および４番目のラスタ、および、図１２（Ｃ）の部分画像ＩＡ２の上から１番目および３番目のラスタについて説明する。これらのラスタでは、図１２（Ａ）〜図１２（Ｄ）から解るように、孤立ドットＤ１と、連続ドット群に含まれる１個以上の非終端ドットＤ２のうち、ハーフトーン処理の処理方向の上流側の端に位置するドットと、に対応する相対濃度値Ｖｂは、第１値Ａである。そして、終端ドットＤ３と、３個以上のドットを含む連続ドット群に含まれる２個以上の非終端ドットＤ２のうち、ハーフトーン処理の処理方向の上流側の端に位置するドット以外の１個以上の非終端ドットＤ２と、に対応する相対濃度値Ｖｂは、第２値Ｂである。
【００９０】
このように、第２実施例では、第１単位信号ＤＰ１を用いて形成される終端ドットＤ３に対応する相対濃度値Ｖｂとして第２値Ｂが用いられ、第２単位信号ＤＰ２を用いて形成される非終端ドットＤ２に対応する相対濃度値Ｖｂとして第１値Ａが用いられる場合がある。しかしながら、この場合には、Ｍ個のドットを含む連続ドット群のうち、１個の非終端ドットＤ２に対応する相対濃度値Ｖｂとして第１値Ａが用いられ、終端ドットＤ３を含む（Ｍ−１）個のドットに対応する相対濃度値Ｖｂとして第２値Ｂが用いられる。この結果、Ｍ個のドットを含む連続ドット群の全体の濃度が、｛Ａ＋（Ｍ−１）×Ｂ｝となるように、相対濃度値Ｖｂが設定されている。この結果、Ｍ個のドットを含む連続ドット群の全体の濃度を正しく示すように、Ｍ個のドットに対応するＭ個の相対濃度値Ｖｂが設定される。Ｍ個（Ｍは２以上の自然数）のドットを含む連続ドット群は、１個の終端ドットＤ３と、（Ｍ−１）個の非終端ドットＤ２を含むので、Ｍ個のドットを含む連続ドット群の全体の濃度は、｛Ａ＋（Ｍ−１）×Ｂ｝となるからである。
【００９１】
以上の説明から解るように、第２実施例の画像処理によれば、複数個のドットに対応する相対濃度値Ｖｂとして用いる値を、複数個のドットの位置関係に応じて、第１値Ａと第２値Ｂとのいずれかに使い分けることによって、互いに異なる単位信号を用いて形成される２種類のドットを含む印刷画像の濃度を適切に表現することができる。
【００９２】
さらに、この構成によれば、注目ラスタの処理方向と、注目ラスタの印刷方向と、が同一方向である場合であっても、高速なハーフトーン処理を実現することができる。すなわち、注目ラスタの処理方向と、注目ラスタの印刷方向と、が同一方向である場合に、注目画素が終端ドットＤ３であるか否かを判断することは、注目画素の処理方向の下流側に隣接する画素のドット値が決まっていない状態では困難である。もし、注目画素が終端ドットＤ３であるか否かを判断する場合には、注目画素の処理方向に隣接する画素のドット値を決定してから、判断する必要があるので、ハーフトーン処理が煩雑になり、処理速度の低下を招くと考えられる。しかしながら、本実施例では、注目画素のドット値が「ＯＮ」である場合には、仮の相対濃度値としての初期濃度値Ｖｃを第１値Ａに設定しておく（ステップＳ２５０）。すなわち、注目画素は、この時点では、孤立ドットＤ１または終端ドットＤ３として扱われる。そして、注目画素のドット値が「ＯＮ」であり、かつ、直前に処理された隣接画素のドット値が「ＯＮ」である場合には（ステップＳ２５５：ＹＥＳ）、直前に処理された隣接画素が、非終端ドットＤ２であることが判明するので、現在の注目画素の初期濃度に、第２値Ｂと第１値Ａとの差分（Ｂ−Ａ）を加算する。この結果、上述したように、Ｍ個のドットを含む連続ドット群の全体の濃度を正しく表すように、Ｍ個のドットに対応するＭ個の相対濃度値Ｖｂを決定しつつ、ハーフトーン処理を高速化することができる。
【００９３】
また、注目ラスタの処理方向と、注目ラスタの印刷方向と、が同一方向である場合であっても、高速なハーフトーン処理を実現することができることによって、対象画像内の複数個のラスタの処理方向を印刷方向とは無関係に設定することができる。この結果、例えば、本実施例のように、処理順が奇数番目のラスタの処理方向と、処理順が偶数番目のラスタの処理方向と、を反対方向に設定することによって、印刷画像の画質を向上することができる。
【００９４】
Ｃ．第３実施例：
Ｃ−１.  印刷処理の概要
図１３は、第３実施例の駆動信号ＤＳの一例を示す図である。図１４は、第３実施例の印刷画像の例を示す図である。図１２（Ａ）、図１２（Ｃ）には、第２実施例にて生成される印刷データを用いて印刷される印刷画像ＰＩ（図６）の部分画像ＩＡ１、ＩＡ２の一部分がそれぞれ概念的に示されている。
【００９５】
第３実施例では、プリンタ２００は、３種類のサイズのドット、すなわち、小ドットＤｓと、小ドットＤｓよりサイズが大きい中ドットＤｍと、中ドットＤｍよりサイズが大きい大ドットＤｂと、を用いて、印刷を実行することができる。
【００９６】
本実施例では、４種類の単位信号、すなわち、図４を参照して説明した第１単位信号ＤＰ１と第２単位信号ＤＰ２に加えて、第３単位信号ＤＰｓと、第４単位信号ＤＳｍと、が用いられる（図１３）。例えば、図１３に示す駆動信号ＤＳｓは、２個の第３単位信号ＤＰｓを含んでいる。駆動信号ＤＳｍは、２個の第４単位信号ＤＰｍを含んでいる。これらの単位信号ＤＰｓ、ＤＰｍは、単位信号ＤＰ１、ＤＰ２と同様に、特定期間ＩＴ内に出力される。
【００９７】
第３単位信号ＤＰｓは、１個の第１パルスＰ１と、１個の第１パルスＰ１に続いて出力される１個の第２パルスＰ２と、を含んでいる。第４単位信号ＤＰｍは、２個の第１パルスＰ１と、２個の第１パルスＰ１に続いて出力される１個の第２パルスＰ２と、を含んでいる。
【００９８】
小ドットＤｓは、周囲に位置する他のドットとの位置関係に拘わらずに、第３単位信号ＤＰｓを用いて形成される。中ドットＤｍは、周囲に位置する他のドットとの位置関係に拘わらずに、第４単位信号ＤＰｍを用いて形成される。これは、第３単位信号ＤＰｓおよび第４単位信号ＤＰｍは、第１単位信号ＤＰ１より第１パルスＰ１の数が少ないので、信号の出力期間Ｏｔｓ、Ｏｔｍが短いからである。このために、第３単位信号ＤＰｓや第４単位信号ＤＰｍが出力される特定期間ＩＴの次の特定期間ＩＴで別の単位信号が出力されたとしても、信号間隔Ｓｔｓ、Ｓｔｍが過度に短くなることはない。したがって、小ドットＤｓや中ドットＤｍを形成する場合には、周囲のドットの形成状況に応じて、単位信号を使い分ける必要性に乏しい。
【００９９】
大ドットＤｂは、第１実施例のドットと同様に、周囲に位置する他のドットとの位置関係に応じて、２種類の端子信号（第１単位信号ＤＰ１と第２単位信号ＤＰ２）のいずれか一方を用いて、形成される。大ドットは、第１実施例のドットと同様に、周囲のドットの形成状況に応じて、孤立大ドットＤｂ１と、非終端大ドットＤｂ２と、終端大ドットＤｂ３と、の３種類に分類することができる。孤立大ドットＤｂ１は、主走査方向に隣接する隣接ドットがないドットである。終端大ドットＤｂ３は、連続ドット群に含まれ、印刷方向の下流側の端に位置する大ドットである。非終端大ドットＤｂ２は、連続ドット群に含まれ、印刷方向の下流側の端とは異なる位置にある大ドットである。
【０１００】
孤立大ドットＤｂ１と、終端大ドットＤｂ３とは、図１３の第１単位信号ＤＰ１を用いて形成される。一方、非終端大ドットＤｂ２は、第２単位信号ＤＰ２を用いて形成される。
【０１０１】
Ｃ−２.  ハーフトーン処理：
図１５は、第３実施例のハーフトーン処理のフローチャートである。ハーフトーン処理が開始されると、図８のステップＳ１００、Ｓ１０５、Ｓ１１０と同様に、ＣＰＵ１１０は、１個の注目ラスタを選択し（ステップＳ３００）、注目ラスタの印刷方向を取得し（ステップＳ３０５）、注目ラスタの処理方向を印刷方向の反対方向に決定する（ステップＳ３１０）。
【０１０２】
そして、図８のステップＳ１１５、Ｓ１２０、Ｓ１２５と同様に、ＣＰＵ１１０は、１個の注目画素を選択し（ステップＳ３１５）、マトリクスＭＴＸ（図１）を用いて注目画素に加算すべき誤差値Ｅｔを取得し（ステップＳ３２０）、誤差値Ｅｔと、注目画素の階調値（入力階調値Ｖｉｎとも呼ぶ）とを用いて、補正済階調値Ｖ１を算出する（ステップＳ３２５）。
【０１０３】
続くステップＳ３３０では、ＣＰＵ１１０は、補正済階調値Ｖ１と、大ドット用の閾値ＶＬｔｈと、を比較する。補正済階調値Ｖ１が、大ドット用の閾値ＶＬｔｈ未満である場合には（ステップＳ３３０：ＮＯ）、補正済階調値Ｖ１は、中ドット用の閾値ＶＭｔｈと比較される（ステップＳ３５５）。補正済階調値Ｖ１が、中ドット用の閾値ＶＭｔｈ以上である場合には（ステップＳ３５５：ＹＥＳ）、注目画素のドット値は、中ドットの形成を示す値（以下、「中ドットＯＮ」とも呼ぶ）に決定され（ステップＳ３６０）、相対濃度値Ｖｂは、中ドットの濃度を示す値である中ドット値Ｃに設定される（ステップＳ３６５）。
【０１０４】
補正済階調値Ｖ１が、中ドット用の閾値ＶＭｔｈ未満である場合には（ステップＳ３５５：ＮＯ）、補正済階調値Ｖ１は、小ドット用の閾値ＶＳｔｈと比較される（ステップＳ３７０）。補正済階調値Ｖ１が、小ドット用の閾値ＶＳｔｈ以上である場合には（ステップＳ３７０：ＹＥＳ）、注目画素のドット値は、小ドットの形成を示す値（以下、「小ドットＯＮ」とも呼ぶ）に決定され（ステップＳ３７５）、相対濃度値Ｖｂは、小ドットの濃度を示す値である小ドット値Ｄに設定される（ステップＳ３８０）。
【０１０５】
補正済階調値Ｖ１が、小ドット用の閾値ＶＳｔｈ未満である場合には（ステップＳ３７０：ＮＯ）、注目画素のドット値は、ドットの非形成を示す値（すなわち、「ＯＦＦ」）に決定され（ステップＳ３８５）、相対濃度値Ｖｂは、０に設定される（ステップＳ３９０）。
【０１０６】
ここで、３つの閾値ＶＬｔｈ、ＶＭｔｈ、ＶＳｔｈは、例えば、入力階調値Ｖｉｎが０〜２５５の２５６階調の値を取る場合に、１７０、８５、１に、設定されている。また、中ドット値Ｃと、小ドット値Ｄは、例えば、１７０、８５に、設定されている。
【０１０７】
ステップＳ３３０にて、補正済階調値Ｖ１が大ドット用の閾値ＶＬｔｈ以上である場合には（ステップＳ３３０：ＹＥＳ）、注目画素のドット値は、大ドットの形成を示す値（以下、「大ドットＯＮ」とも呼ぶ）に決定される（ステップＳ３３５）。以上の説明から解るように、第３実施例のドット値は、「大ドットＯＮ」、「中ドットＯＮ」、「小ドットＯＮ」、「ＯＦＦ」の４種類の値のいずれかに決定される。
【０１０８】
続くステップＳ３４０では、直前に処理された隣接画素のドット値が、大中小のいずれかのドットの形成を示すか否かが、判断される（ステップＳ３４０）。隣接画素のドット値が、「大ドットＯＮ」「中ドットＯＮ」「小ドットＯＮ」のいずれかである場合には、ドットの形成を示すと判断される。
【０１０９】
直前に処理された隣接画素のドット値がドットの形成を示す場合には（ステップＳ３４０：ＹＥＳ）、ＣＰＵ１１０は、相対濃度値Ｖｂを、大ドットの第２値Ｂに設定する（ステップＳ３５０）。直前に処理された隣接画素のドット値がドットの非形成を示す場合には（ステップＳ３４０：ＮＯ）、ＣＰＵ１１０は、相対濃度値Ｖｂを、大ドットの第１値Ａに設定する（ステップＳ３４５）。大ドットの第１値Ａ、および、大ドットの第２値Ｂには、例えば、第１実施例の第１値Ａ、および、第２値Ｂと同じ値、すなわち、２５３、および、２５５が用いられる。
【０１１０】
相対濃度値Ｖｂが設定されると、補正済階調値Ｖ１と相対濃度値Ｖｂを用いて、注目画素の誤差値Ｅ１（＝Ｖ１−Ｖｂ）が算出され（ステップＳ３９１）、誤差バッファＢ１０内に格納される（ステップＳ３９２）。
【０１１１】
ステップＳ３９３では、注目ラスタの処理が終了したか否かが判断される。注目ラスタの処理が終了していない場合には（ステップＳ３９３：ＮＯ）、ステップＳ３１５に戻って、新たな注目画素が選択され、上述したステップＳ３２０〜Ｓ３９２までの処理を繰り返される。
【０１１２】
注目ラスタの処理が終了した場合には（ステップＳ３９３：ＹＥＳ）、対象画像内の全てのラスタの処理が終了したか否かが判断される（ステップＳ３９４）。全てのラスタの処理が終了していない場合には（ステップＳ３９４：ＮＯ）、ステップＳ３００に戻って、未処理のラスタが注目ラスタとして選択され、上述したステップＳ３０５〜Ｓ３９３までの処理が繰り返される。全てのラスタの処理が終了した場合には（ステップＳ３９４：ＹＥＳ）、ハーフトーン処理は終了される。
【０１１３】
図１４（Ａ）、図１４（Ｃ）には、第３実施例にて生成される印刷データを用いて印刷される印刷画像ＰＩの部分画像ＩＡ１、ＩＡ２の一部分がそれぞれ概念的に示されている。図１４（Ｂ）、図１４（Ｄ）には、図１４（Ａ）および図１４（Ｃ）に示す部分画像ＩＡ１、ＩＡ２内のドットに対応する相対濃度値Ｖｂがそれぞれ示されている。
【０１１４】
図１４（Ａ）〜（Ｄ）から解るように、中ドットに対応する相対濃度値Ｖｂには、中ドット値Ｃが用いられ、小ドットに対応する相対濃度値Ｖｂには、小ドット値Ｄが用いられる。そして、孤立大ドットＤｂ１および終端大ドットＤｂ３、すなわち、第１単位信号ＤＰ１を用いて形成されるドットに対応する相対濃度値Ｖｂには、大ドットの第１値Ａが用いられる。そして、非終端大ドットＤｂ２、すなわち、第２単位信号ＤＰ２を用いて形成されるドットに対応する相対濃度値Ｖｂには、大ドットの第２値Ｂが用いられる。この結果、孤立大ドットＤｂ１および終端大ドットＤｂ３と、非終端大ドットＤｂ２との間で、表現される濃度が互いに異なる場合であっても、印刷画像の濃度を適正に表現することができる。
【０１１５】
このように、第３実施例の画像処理によれば、複数種類のサイズのドットのうち、最大サイズのドット（具体的には、大ドット）が、第１単位信号ＤＰ１を用いて形成されるドットであるか、第２単位信号ＤＰ２を用いて形成されるドットであるかによって、互いに異なる濃度を示す値を相対濃度値Ｖｂとして用いられる。この結果、互いに異なる単位信号を用いて形成される２種類の大ドットを含む印刷画像の濃度を適切に表現することができる。
【０１１６】
第３実施例の画像処理によれば、大ドットの形成を示す１つの特定値（「大ドットＯＮ」）に、注目画素のドット値が決定された場合に、大ドットの濃度を示す相対濃度値Ｖｂとして、２つの異なる値Ａ、Ｂが使分けられる。この結果、印刷画像の濃度を適正に表現することができる。
【０１１７】
また、第３実施例の画像処理によれば、注目画素のドット値が大ドットの形成を示す場合に、注目画素の直前に処理された隣接画素のドット値がドットの形成を示すか、ドットの非形成を示すかに基づいて、相対濃度値Ｖｂとして大ドットの第１値Ａを用いるか第２値Ｂを用いるかを判断している（図１４のステップＳ３４０〜Ｓ３５０）。この結果、注目画素に対応して形成されるべき大ドットの種類を迅速に判断して、適切な相対濃度値Ｖｂを決定しつつ、ハーフトーン処理を高速化することができる。
【０１１８】
Ｄ.第４実施例：
第４実施例では、プリンタ２００は、第３実施例と同様に、大中小の３種類のサイズのドットを用いて印刷を実行する。そして、第３実施例と同様に、大ドットは、第１単位信号ＤＰ１を用いて形成される孤立大ドットＤｂ１および終端大ドットＤｂ３と、第２単位信号ＤＰ２を用いて形成される非終端大ドットＤｂ２と、に分類することができる。そして、第３実施例では、第２実施例のハーフトーン処理（図１５）とは、異なるハーフトーン処理が実行される。
【０１１９】
図１６は、第４実施例のハーフトーン処理のフローチャートである。ステップＳ４００では、図１０のステップＳ２００〜ステップＳ２１０までの処理が実行される。すなわち、ＣＰＵ１１０は、１個の注目ラスタを選択し（図１０：ステップＳ２００）、注目ラスタの印刷方向を取得し（図１０：ステップＳ２０５）、注目ラスタの処理方向を予め定められた方向に決定する（図１０：ステップＳ２１０）。具体的には、第２実施例と同様に、処理順が奇数番目の注目ラスタは、ラスタに平行な第１の方向（例えば、図１１の＋Ｘ方向）に処理方向が決定され、処理順が偶数番目の注目ラスタは、ラスタに平行で第１の方向とは反対方向の第２の方向（例えば、図１１の−Ｘ方向）に処理方向が決定される（図１１参照）。
【０１２０】
ステップＳ４０５では、ＣＰＵ１１０は、注目ラスタの処理方向は、注目ラスタの印刷方向と同じであるか否かを判断する。注目ラスタの処理方向が、注目ラスタの印刷方向と同一方向でない場合、すなわち、注目ラスタの処理方向が、注目ラスタの印刷方向と反対の方向である場合には（ステップＳ４０５：ＮＯ）、ＣＰＵ１１０は、図１５のステップＳ３１５〜Ｓ３９３までの処理を実行する（ステップＳ４１０）。このように、注目ラスタの印刷方向が注目ラスタの印刷方向と反対の方向である場合には、第３実施例のハーフトーン処理と同様に処理することによって、大ドットの種類に応じた適切な相対濃度値Ｖｂを用いて、注目ラスタに対応するドットデータを生成することができる。
【０１２１】
注目ラスタの処理方向が、注目ラスタの印刷方向と同一方向である場合には（ステップＳ４０５：ＮＯ）、第３実施例のハーフトーン処理とは一部の処理が異なるステップＳ４１５〜Ｓ４９４の処理が実行される。
【０１２２】
先ず、図１５のステップＳ３１５〜ステップＳ３３０と同様に、ＣＰＵ１１０は、１個の注目画素を選択し（ステップＳ４１５）、マトリクスを用いて注目画素に加算すべき誤差値Ｅｔを取得し（ステップＳ４２０）、誤差値Ｅｔと入力階調値Ｖｉｎとを用いて補正済階調値Ｖ１を算出し（ステップＳ４２５）、補正済階調値Ｖ１と、大ドット用の閾値ＶＬｔｈと、を比較する（ステップＳ４３０）。
【０１２３】
補正済階調値Ｖ１が、大ドット用の閾値ＶＬｔｈ未満である場合には（ステップＳ４３０：ＮＯ）、補正済階調値Ｖ１は、中ドット用の閾値ＶＭｔｈと比較される（ステップＳ４４５）。補正済階調値Ｖ１が、中ドット用の閾値ＶＭｔｈ以上である場合には（ステップＳ４４５：ＹＥＳ）、注目画素のドット値は、「中ドットＯＮ」に決定され（ステップＳ４５０）、初期濃度値Ｖｃは、中ドット値Ｃに設定される（ステップＳ４５５）。
【０１２４】
補正済階調値Ｖ１が、中ドット用の閾値ＶＭｔｈ未満である場合には（ステップＳ４４５：ＮＯ）、補正済階調値Ｖ１は、小ドット用の閾値ＶＳｔｈと比較される（ステップＳ４６０）。補正済階調値Ｖ１が、小ドット用の閾値ＶＳｔｈ以上である場合には（ステップＳ４６０：ＹＥＳ）、注目画素のドット値は、「小ドットＯＮ」に決定され（ステップＳ４６５）、初期濃度値Ｖｃは、小ドット値Ｄに設定される（ステップＳ４７０）。
【０１２５】
補正済階調値Ｖ１が、小ドット用の閾値ＶＳｔｈ未満である場合には（ステップＳ４６０：ＮＯ）、注目画素のドット値は、「ＯＦＦ」に決定され（ステップＳ４７５）、初期濃度値Ｖｃは、０に設定される（ステップＳ４８０）。また、この場合には、ＣＰＵ１１０は、補正値ＣＶを「０」に設定する（ステップＳ４９１）。
【０１２６】
ステップＳ４３０にて、補正済階調値Ｖ１が大ドット用の閾値ＶＬｔｈ以上である場合には（ステップＳ４３０：ＹＥＳ）、ＣＰＵ１１０は、注目画素のドット値を「大ドットＯＮ」に決定し（ステップＳ４３５）、初期濃度値Ｖｃを、大ドットの第１値Ａに決定する（ステップＳ４４０）。
【０１２７】
ステップＳ４４０の後、または、ステップＳ４５５の後、または、ステップＳ４７０の後のステップＳ４８５では、ＣＰＵ１１０は、直前に処理された隣接画素のドット値が大ドットの形成を示すか否か、すなわち、該ドット値が「大ドットＯＮ」であるか否かを判断する。すなわち、注目画素のドット値が、大中小のドットのいずれかの形成を示す値に決定された場合には、直前に処理された隣接画素のドット値が大ドットの形成を示すか否かが判断される。
【０１２８】
直前に処理された隣接画素のドット値が大ドットの形成を示す場合には（ステップＳ４８５：ＹＥＳ）、ＣＰＵ１１０は、補正値ＣＶを、第２値Ｂと第１値Ａとの間の差分（Ｂ−Ａ）に設定する（ステップＳ４９０）。直前に処理された隣接画素のドット値が大ドットの形成を示さない場合には（ステップＳ４９０：ＮＯ）、ＣＰＵ１１０は、補正値ＣＶを「０」に設定する（ステップＳ４９１）。
【０１２９】
補正値ＣＶが、（Ｂ−Ａ）、０、のうちのいずれか一方に設定されると、ステップＳ４９２では、ＣＰＵ１１０は、補正済階調値Ｖ１と初期濃度値Ｖｃと補正値ＣＶとを用いて、注目画素の誤差値Ｅ１を算出する（Ｅ１＝Ｖ１−Ｖｃ−ＣＶ）。相対濃度値Ｖｂ＝（Ｖｃ＋ＣＶ）が、形成すべきドットの濃度を示す値として用いられる値である。
【０１３０】
例えば、注目画素のドット値が「小ドット値ＯＮ」に決定され（ステップＳ４６０：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「大ドットＯＮ」である場合（ステップＳ４８５：ＹＥＳ）には、Ｖｃ＝Ｄ（ステップＳ４７０）、ＣＶ＝（Ｂ−Ａ）（ステップＳ４９０）である。第２値Ｂと第１値Ａとの間の差分（Ｂ−Ａ）をΔＶで表すと、（Ｖｃ＋ＣＶ）＝Ｄ＋ΔＶとなる。したがって、この場合には、相対濃度値Ｖｂとして、小ドット値Ｄと差分ΔＶとの和が用いられる。
【０１３１】
注目画素のドット値が「中ドット値ＯＮ」に決定され（ステップＳ４４５：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「大ドットＯＮ」である場合（ステップＳ４８５：ＹＥＳ）には、Ｖｃ＝Ｃ（ステップＳ４５５）、ＣＶ＝ΔＶ（ステップＳ４９０）であるので、（Ｖｃ＋ＣＶ）＝Ｃ＋ΔＶとなる。したがって、この場合には、相対濃度値Ｖｂとして、中ドット値Ｃと差分ΔＶとの和が用いられる。
【０１３２】
注目画素のドット値が「大ドット値ＯＮ」に決定され（ステップＳ４３０：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「大ドットＯＮ」である場合（ステップＳ４８５：ＹＥＳ）には、Ｖｃ＝Ａ（ステップＳ４４０）、ＣＶ＝ΔＶ（ステップＳ４９０）であるので、（Ｖｃ＋ＣＶ）＝Ａ＋ΔＶ＝Ｂとなる。したがって、この場合には、相対濃度値Ｖｂとして、大ドットの第２値Ｂが用いられる。
【０１３３】
注目画素のドット値が「小ドット値ＯＮ」に決定され（ステップＳ４６０：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「大ドットＯＦＦ」である場合（ステップＳ４８５：ＮＯ）には、Ｖｃ＝Ｄ（ステップＳ４７０）、ＣＶ＝０（ステップＳ４９１）である。したがって、この場合には、相対濃度値Ｖｂとして、小ドット値Ｄが用いられる。
【０１３４】
注目画素のドット値が「中ドット値ＯＮ」に決定され（ステップＳ４４５：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「大ドットＯＦＦ」である場合（ステップＳ４８５：ＮＯ）には、Ｖｃ＝Ｃ（ステップＳ４５５）、ＣＶ＝０（ステップＳ４９１）である。したがって、この場合には、相対濃度値Ｖｂとして、中ドット値Ｃが用いられる。
【０１３５】
注目画素のドット値が「大ドット値ＯＮ」に決定され（ステップＳ４３０：ＹＥＳ）、かつ、直前に処理された隣接画素のドット値が「大ドットＯＦＦ」である場合（ステップＳ４８５：ＮＯ）には、Ｖｃ＝Ａ（ステップＳ４４０）、ＣＶ＝０（ステップＳ４９１）である。したがって、この場合には、相対濃度値Ｖｂとして、大ドットの第１値Ａが用いられる。
【０１３６】
ステップＳ４９３では、ＣＰＵ１１０は、誤差バッファＢ１０に、算出された注目画素の誤差値Ｅ１を格納する。
【０１３７】
ステップＳ４９４では、注目ラスタの処理が終了したか否かが判断される。注目ラスタの処理が終了していない場合には（ステップＳ４９４：ＮＯ）、ステップＳ４１５に戻って、新たな注目画素が選択され、上述したステップＳ４２０〜Ｓ４９３までの処理が繰り返される。
【０１３８】
注目ラスタの処理が終了した場合には（ステップＳ４９４：ＹＥＳ）、対象画像内の全てのラスタの処理が終了したか否かが判断される（ステップＳ４９５）。全てのラスタの処理が終了していない場合には（ステップＳ４９５：ＮＯ）、ステップＳ４００に戻って、未処理のラスタが注目ラスタとして選択され、上述したステップＳ４００〜Ｓ４９４までの処理が繰り返される。全てのラスタの処理が終了した場合には（ステップＳ４９５：ＹＥＳ）、ハーフトーン処理は終了される。
【０１３９】
図１７は、第４実施例の印刷画像の例を示す図である。図１７（Ａ）、図１７（Ｃ）には、第４実施例にて生成される印刷データを用いて印刷される印刷画像ＰＩの部分画像ＩＡ１、ＩＡ２の一部分がそれぞれ概念的に示されている。図１７（Ｂ）、図１７（Ｄ）には、図１７（Ａ）および図１７（Ｂ）に示す部分画像ＩＡ１、ＩＡ２内のドットに対応する相対濃度値Ｖｂがそれぞれ示されている。
【０１４０】
印刷方向と処理方向とが反対の方向である対象画像のラスタに対応する印刷画像のラスタ、すなわち、図１７（Ａ）の部分画像ＩＡ１の上から１番目および３番目のラスタ、および、図１７（Ｃ）の部分画像ＩＡ２の上から２番目および４番目のラスタについて説明する。これらのラスタのドットデータは、第３実施例と同様の処理（図１５のステップＳ４１５〜Ｓ３９３）によって生成される。このために、これらのラスタでは、図１７（Ａ）〜図１７（Ｄ）から解るように、第３実施例と同様に、孤立大ドットＤｂ１および終端大ドットＤｂ３、すなわち、第１単位信号ＤＰ１を用いて形成されるドットに対応する相対濃度値Ｖｂは、大ドット用の第１値Ａである。そして、非終端大ドットＤｂ２、すなわち、第２単位信号ＤＰ２を用いて形成されるドットに対応する相対濃度値Ｖｂは、大ドット用の第２値Ｂである。また、中ドットおよび小ドットに対応する相対濃度値Ｖｂは、中ドット値Ｃおよび小ドット値Ｄである。
【０１４１】
印刷方向と処理方向とが同一方向である対象画像のラスタに対応する印刷画像のラスタ、すなわち、図１７（Ａ）の部分画像ＩＡ１の上から２番目および４番目のラスタ、および、図１７（Ｃ）の部分画像ＩＡ２の上から１番目および３番目のラスタについて説明する。ついて説明する。これらのラスタでは、図１７（Ａ）〜図１７（Ｄ）から解るように、第２実施例と同様に、第１単位信号ＤＰ１を用いて形成される終端大ドットＤｂ３に対応する相対濃度値Ｖｂとして、大ドットの第２値Ｂが用いられる場合がある（図１７（Ｃ）の部分画像ＩＡ２の１行目など）。また、第２単位信号ＤＰ２を用いて形成される非終端大ドットＤｂ２に対応する相対濃度値Ｖｂとして、大ドットの第１値Ａが用いられる場合がある（図１７（Ａ）の部分画像ＩＡ１の２、４行目など）。
【０１４２】
しかしながら、第２実施例と同様に、Ｍ個のドットを含む連続ドット群の全体の濃度を正しく示すように、Ｍ個のドットに対応するＭ個の相対濃度値Ｖｂが設定される。例えば、図１７（Ａ）に示す連続ドット群ＤＧ３は、２個の非終端大ドットＤｂ２と、１個の終端大ドットＤｂ３と、１個の小ドットＤｓと、を含む。したがって、連続ドット群ＤＧ３の全体の濃度は、｛（２×Ｂ）＋Ａ＋Ｄ｝である。ここで、連続ドット群ＤＧ３に含まれる４個のドットに対応する４個の相対濃度値ＶｂのセットＶＧ３（図１７（Ｂ））の和は、｛Ａ＋Ｄ＋ΔＶ＋Ａ＋Ｂ｝である。ΔＶ＝（Ｂ−Ａ）であるので、４個の相対濃度値ＶｂのセットＶＧ３の和は、｛（２×Ｂ）＋Ａ＋Ｄ｝となり、連続ドット群ＤＧ３の全体の濃度を正しく表していることが解る。
【０１４３】
同様に、図１７（Ｃ）に示す連続ドット群ＤＧ４は、１個の非終端大ドットＤｂ２と、１個の中ドットＤｍと、１個の小ドットＤｓと、を含む。したがって、連続ドット群ＤＧ３の全体の濃度は、｛Ｂ＋Ｃ＋Ｄ｝である。ここで、連続ドット群ＤＧ４に含まれる３個のドットに対応する３個の相対濃度値ＶｂのセットＶＧ４（図１７（Ｄ））の和は、｛Ｄ＋ΔＶ＋Ａ＋Ｃ｝である。ΔＶ＝（Ｂ−Ａ）であるので、３個の相対濃度値ＶｂのセットＶＧ４の和は、｛Ｂ＋Ｃ＋Ｄ｝となり、連続ドット群ＤＧ４の全体の濃度を正しく表していることが解る。
【０１４４】
以上の説明から解るように、第４実施例の画像処理によれば、第３実施例と同様に、互いに異なる単位信号を用いて形成される２種類の大ドットを含む印刷画像の濃度を適切に表現することができる。
【０１４５】
また、第２実施例と同様に、第２値Ｂと第１値Ａとの差分（Ｂ−Ａ）を用いて、注目画素の誤差値Ｅ１を算出することによって、第２実施例と同様に、印刷方向と処理方向とが同一方向であるラスタ内の画素についても、Ｍ個のドットを含む連続ドット群の全体の濃度を正しく表すように、Ｍ個のドットに対応するＭ個の相対濃度値Ｖｂを決定しつつ、ハーフトーン処理を高速化することができる。
【０１４６】
Ｅ．変形例：
（１）上記実施例のハーフトーン処理は、ＣＭＹＫのインクを用いるカラー印刷を例に説明したが、１種類のインクを用いて実行されるモノクロ印刷のためのハーフトーン処理であっても良い。
【０１４７】
（２）第１実施例において、第１単位信号ＤＰ１を用いて孤立ドットＤ１が形成され、第２単位信号ＤＰ２を用いて非終端ドットＤ２および終端ドットＤ３が形成されてもよい。この場合には、孤立ドットＤ１に対応する相対濃度値Ｖｂが第１値Ａに設定され、非終端ドットＤ２および終端ドットＤ３に対応する相対濃度値Ｖｂが第２値Ｂに設定されれば良い。
【０１４８】
（３）プリンタ２００の印刷方式には、様々な印刷方式が用いられ得る。例えば、印刷機構２２０は、印刷データ内の奇数番目のラスタの印刷と、偶数番目のラスタの印刷と、を、異なるパスで印刷するインタレース印刷（２パス印刷とも呼ばれる）を実行しても良い。また、印刷機構２２０は、往路パスと復路パスのうち、１個の方向だけを用いる片方向印刷を実行しても良い。いずれの印刷方式が用いられる場合であっても、第１実施例および第３実施例のハーフトーン処理では、注目ラスタの処理方向は、印刷方式に応じた印刷方向の反対方向に決定されることが好ましい。また、第２実施例および第４実施例のハーフトーン処理では、注目ラスタの処理方向を、印刷方式に応じた印刷方向よりも優先させ、注目ラスタの処理方向は、予め定められた方向に決定されることが好ましい。
【０１４９】
（４）図５の画像処理は、プリンタ２００の制御部２１０によって実行されても良い。この場合には、例えば、処理対象の画像データは、パーソナルコンピュータ１００から取得され、制御部２１０によって生成された印刷データは、印刷機構２２０に供給される。この場合には、プリンタ２００の制御部２１０が画像処理装置の例であり、印刷機構２２０が印刷実行部の例である。また、図５の画像処理のうち、１部分がパーソナルコンピュータ１００によって実行され、残りの部分がプリンタ２００の制御部２１０によって実行されても良い。例えば、パーソナルコンピュータ１００が、図５のステップＳ３０までの処理を実行してＣＭＹＫ画像データを生成し、ＣＭＹＫ画像データをパーソナルコンピュータ１００から受信したプリンタ２００の制御部２１０が、ハーフトーン処理（ステップＳ３０）および印刷データの生成（ステップＳ４０）を実行しても良い。
【０１５０】
（５）上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。
【０１５１】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【０１５２】
１００...パーソナルコンピュータ、１１０...ＣＰＵ、１２０...揮発性記憶装置、１３０...不揮発性記憶装置、１４０...通信インタフェース、１５０...操作部、１６０...表示部、２００...プリンタ、２１０...制御部、２２０...印刷機構、２２１...搬送機構、２２２...主走査機構、２２３...ヘッド駆動回路、２２４...印刷ヘッド、２２４ｂ...底面、２３０...通信インタフェース、１０００...印刷システム、Ｐ１０...アプリケーションプログラム、Ｐ２０...ドライバプログラム
【図１】
2015012425.tif 000003
【図２】
2015012425.tif 000004
【図３】
2015012425.tif 000005
【図４】
2015012425.tif 000006
【図５】
2015012425.tif 000007
【図６】
2015012425.tif 000008
【図７】
2015012425.tif 000009
【図８】
2015012425.tif 000010
【図９】
2015012425.tif 000011
【図１０】
2015012425.tif 000012
【図１１】
2015012425.tif 000013
【図１２】
2015012425.tif 000014
【図１３】
2015012425.tif 000015
【図１４】
2015012425.tif 000016
【図１５】
2015012425.tif 000017
【図１６】
2015012425.tif 000018
【図１７】
2015012425.tif 000019