(57)【要約】【課題】印刷画質を向上させるように各印刷画素におけるドットの形成状態を決定することを可能とする。【解決手段】画像処理装置は、画像を表す画像データに基づき、画像を複数サイズのドットを利用して印刷する際のドットの形成状態を決定する。画像処理装置は、画像中における画像の印刷に用いられるドットのうち、１つの色の画素で構成された領域の所定の方向に沿った幅を算出する領域幅算出部と、領域の幅に応じて予め設定されたドットの配置パターンを記憶する記憶部と、領域の幅が第１の閾値以下の場合に、幅を算出した領域の部分に対して、配置パターンに従いドットを割り当てるドット割り当て部と、を備える。【選択図】図２
2009177566.tif 000002
【特許請求の範囲】
【請求項１】
複数の画素により構成される画像を表す画像データに基づき、前記画像を複数サイズのドットを利用して印刷する際のドットの形成状態を決定する画像処理装置であって、
前記画像中における前記画像の印刷に用いられるドットのうち、１つの色の画素で構成された領域の所定の方向に沿った幅を算出する領域幅算出部と、
前記領域の幅に応じて予め設定されたドットの配置パターンを記憶する記憶部と、
前記領域の幅が第１の閾値以下の場合に、幅を算出した前記領域の部分に対して、前記配置パターンに従いドットを割り当てるドット割り当て部と、を備える、画像処理装置。
【請求項２】
請求項１に記載の画像処理装置であって、
前記配置パターンは、前記複数サイズのドットの内の最小サイズのドット以外のドットが少なくとも１つ含まれたパターンである、画像処理装置。
【請求項３】
請求項１または請求項２に記載の画像処理装置であって、
前記配置パターンは、幅を算出した前記領域の部分の第１の位置に割り当てられるドットのサイズが、前記領域のエッジからの距離が前記第１の位置よりも大きい第２の位置に割り当てられるドットのサイズよりも小さいパターンである、画像処理装置。
【請求項４】
請求項１ないし請求項３のいずれかに記載の画像処理装置であって、
前記ドット割り当て部は、前記領域の幅が前記第１の閾値より大きい場合には、幅を算出した前記領域の部分における前記領域のエッジからの距離が第２の閾値以内の位置に、前記複数サイズのドットのうち、最大サイズのドット以外のドットを割り当てる、画像処理装置。
【請求項５】
請求項４に記載の画像処理装置であって、
前記ドット割り当て部は、前記領域の幅が前記第１の閾値より大きい場合には、幅を算出した前記領域の部分における前記領域のエッジからの距離が第２の閾値以内の位置に、前記複数サイズのドットの内の最小サイズのドットを割り当てる、画像処理装置。
【請求項６】
請求項１ないし請求項５のいずれかに記載の画像処理装置であって、
前記画像は、白色と前記画像の印刷に用いられるドットの色の１つとのみにより構成された画像である、画像処理装置。
【請求項７】
複数の画素により構成される画像を表す画像データに基づき、前記画像を複数サイズのドットを利用して印刷する際のドットの形成状態を決定する画像処理方法であって、
前記画像中における前記画像の印刷に用いられるドットのうち、１つの色の画素で構成された領域の所定の方向に沿った幅を算出する工程と、
前記領域の幅に応じて予め設定されたドットの配置パターンを記憶する工程と、
前記領域の幅が第１の閾値以下の場合に、幅を算出した前記領域の部分に対して、前記配置パターンに従いドットを割り当てる工程と、を備える、画像処理方法。
【請求項８】
複数の画素により構成される画像を表す画像データに基づき、前記画像を複数サイズのドットを利用して印刷する際のドットの形成状態を決定するためのコンピュータプログラムであって、
前記画像中における前記画像の印刷に用いられるドットのうち、１つの色の画素で構成された領域の所定の方向に沿った幅を算出する領域幅算出機能と、
前記領域の幅に応じて予め設定されたドットの配置パターンを記憶する記憶機能と、
前記領域の幅が第１の閾値以下の場合に、幅を算出した前記領域の部分に対して、前記配置パターンに従いドットを割り当てるドット割り当て機能と、を、コンピュータに実現させる、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像の印刷画質を向上させることが可能な画像処理に関する。
【背景技術】
【０００２】
紙や布、フィルムなどの各種印刷媒体にドットを形成して画像を印刷する印刷装置として、インクジェットプリンタが知られている。インクジェットプリンタは、例えばシアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の各色のインクを印刷媒体に向けて噴射して印刷媒体上にインクドットを形成することにより、印刷媒体上に画像を印刷する。インクジェットプリンタには、例えば大ドット（Ｌドット）、中ドット（Ｍドット）、小ドット（Ｓドット）のように、複数サイズのドットを形成可能なものがある。
【０００３】
インクジェットプリンタによる画像の印刷の際には、一般に、画像を表す画像データに基づき、各印刷画素におけるドットの形成状態を決定する処理（ハーフトーン処理と呼ばれる）が行われる（例えば特許文献１参照）。ここで、各印刷画素におけるドットの形成状態を決定するとは、各印刷画素にどの色のどのサイズのドットを形成するか（あるいはドットを形成しないか）を決定することである。
【０００４】
【特許文献１】特開２００７−１１８２３８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ハーフトーン処理の際には、色のにじみの発生を抑制する等のために、印刷媒体の単位面積当たりの総インク量に制限が設けられる場合がある。このような場合には、例えば画像中の文字や線画におけるエッジの部分を構成する印刷画素に、異なるサイズのドットが混在して形成されたり、当該印刷画素の一部にドットが形成されなかったりする可能性があり、エッジのがたつきや欠けによって印刷画質が低下するおそれがあった。
【０００６】
なお、このような問題は、インクジェットプリンタによる画像の印刷に限らず、ドットを利用して画像を印刷する際の各印刷画素におけるドットの形成状態を決定する際に共通の問題であった。
【０００７】
本発明は、上述した従来の課題を解決するためになされたものであり、印刷画質を向上させるように各印刷画素におけるドットの形成状態を決定することを可能とする技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題の少なくとも一部を解決するために、本発明は、以下の形態または適用例として実現することが可能である。
【０００９】
［適用例１］複数の画素により構成される画像を表す画像データに基づき、前記画像を複数サイズのドットを利用して印刷する際のドットの形成状態を決定する画像処理装置であって、
前記画像中における前記画像の印刷に用いられるドットのうち、１つの色の画素で構成された領域の所定の方向に沿った幅を算出する領域幅算出部と、
前記領域の幅に応じて予め設定されたドットの配置パターンを記憶する記憶部と、
前記領域の幅が第１の閾値以下の場合に、幅を算出した前記領域の部分に対して、前記配置パターンに従いドットを割り当てるドット割り当て部と、を備える、画像処理装置。
【００１０】
この画像処理装置では、領域の幅が第１の閾値以下の場合に、幅を算出した領域の部分に対して配置パターンに従ったドットの割り当てが行われるため、領域の幅が比較的小さい場合でも、比較的小さいドットのみが割り当てられることによるドット間の隙間の発生や、再現すべき所定の濃度・太さを再現できない事態の発生を抑制することができ、印刷画質を向上させることができる。
【００１１】
［適用例２］適用例１に記載の画像処理装置であって、
前記配置パターンは、前記複数サイズのドットの内の最小サイズのドット以外のドットが少なくとも１つ含まれたパターンである、画像処理装置。
【００１２】
この画像処理装置では、領域の幅が比較的小さい場合でも、幅を算出した領域の部分がすべて最小サイズのドットを用いて印刷されるようなことはなく、ドット間の隙間の発生や、再現すべき所定の濃度・太さを再現できない事態の発生が抑制される。
【００１３】
［適用例３］適用例１または適用例２に記載の画像処理装置であって、
前記配置パターンは、幅を算出した前記領域の部分の第１の位置に割り当てられるドットのサイズが、前記領域のエッジからの距離が前記第１の位置よりも大きい第２の位置に割り当てられるドットのサイズよりも小さいパターンである、画像処理装置。
【００１４】
この画像処理装置では、幅を算出した領域の部分の第１の位置に、領域のエッジからの距離が第１の位置よりも大きい第２の位置に割り当てられるドットのサイズより小さいサイズのドットが割り当てられため、エッジ部分におけるにじみや太りが抑制され、印刷画質をさらに向上させることができる。
【００１５】
［適用例４］適用例１ないし適用例３のいずれかに記載の画像処理装置であって、
前記ドット割り当て部は、前記領域の幅が前記第１の閾値より大きい場合には、幅を算出した前記領域の部分における前記領域のエッジからの距離が第２の閾値以内の位置に、前記複数サイズのドットのうち、最大サイズのドット以外のドットを割り当てる、画像処理装置。
【００１６】
この画像処理装置では、領域の幅が比較的大きい場合に、幅を算出した領域の部分におけるエッジからの距離が小さい位置に最大サイズのドット以外のドットが割り当てられるため、エッジ部分におけるにじみや太りが抑制され、印刷画質をさらに向上させることができる。
【００１７】
［適用例５］適用例４に記載の画像処理装置であって、
前記ドット割り当て部は、前記領域の幅が前記第１の閾値より大きい場合には、幅を算出した前記領域の部分における前記領域のエッジからの距離が第２の閾値以内の位置に、前記複数サイズのドットの内の最小サイズのドットを割り当てる、画像処理装置。
【００１８】
この画像処理装置では、領域の幅が比較的大きい場合に、幅を算出した領域の部分におけるエッジからの距離が小さい位置に最小サイズのドットが割り当てられるため、印刷画像におけるエッジのがたつきや欠けを抑制することができると共に、エッジ部分におけるにじみや太りが抑制され、印刷画質をさらに向上させることができる。また、領域の幅が第１の閾値以下の場合には、配置パターンに従ったドットの割り当てが行われるため、印刷画像におけるエッジのがたつきや欠けの抑制、エッジ部分におけるにじみや太りの抑制と、ドット間の隙間の発生や再現すべき所定の濃度・太さを再現できない事態の発生の抑制とを両立させることができる。
【００１９】
［適用例６］適用例１ないし適用例５のいずれかに記載の画像処理装置であって、
前記画像は、白色と前記画像の印刷に用いられるドットの色の１つとのみにより構成された画像である、画像処理装置。
【００２０】
この画像処理装置では、白色と画像の印刷に用いられるドットの色の１つとのみにより構成された画像の印刷の際に、印刷画質を向上させることができる。
【００２１】
なお、本発明は、種々の態様で実現することが可能であり、例えば、画像処理方法および装置、ドット形成状態決定方法および装置、ドットデータ生成方法および装置、印刷データ生成方法および装置、印刷方法および装置、これらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、そのコンピュータプログラムを含み搬送波内に具現化されたデータ信号、等の形態で実現することができる。
【発明を実施するための最良の形態】
【００２２】
次に、本発明の実施の形態を実施例に基づいて以下の順序で説明する。
Ａ．実施例：
Ｂ．変形例：
【００２３】
Ａ．実施例：
図１は、本発明の実施例における印刷システムの構成を概略的に示す説明図である。本実施例における印刷システム１０００は、画像処理装置としてのパーソナルコンピュータ１００と、パーソナルコンピュータ１００に有線または無線によって接続されたプリンタ２００と、を備えている。
【００２４】
パーソナルコンピュータ１００は、プログラムを実行することにより種々の処理や制御を行うＣＰＵ１１０と、プログラムやデータ・情報を格納するメモリ１２０と、外部に接続される周辺機器との間でデータや情報のやりとりを行う入出力インタフェース（Ｉ／Ｆ）部１３０と、を備えている。パーソナルコンピュータ１００は、さらに、キーボードやポインティングデバイスなどの入力装置、ディスプレイなどの表示装置、ＣＤ−ＲＯＭドライブ装置などの記録再生装置等を備えていてもよい。
【００２５】
メモリ１２０は、出力バッファ３２と幅記録バッファ３４とエッジフラグバッファ３６とを含んでいる。出力バッファ３２と幅記録バッファ３４とエッジフラグバッファ３６とは、後述するドット形成状態の決定処理に用いられる。出力バッファ３２は、決定されたドット形成状態を記録するためのバッファであり、幅記録バッファ３４は、算出された黒色領域の幅Ｗを記録するためのバッファであり、エッジフラグバッファ３６は、後述のエッジ処理によってドットが割り当てられたか否かを記録するためのバッファである。メモリ１２０には、さらに、標準エッジ周辺パターンテーブル４２と細幅対応パターンテーブル４４とが格納されている。標準エッジ周辺パターンテーブル４２と細幅対応パターンテーブル４４とについては、後に詳述する。
【００２６】
パーソナルコンピュータ１００には、アプリケーションプログラム１０やプリンタドライバ２０などのプログラムがインストールされている。アプリケーションプログラム１０やプリンタドライバ２０は、所定のオペレーティングシステム（図示せず）の下でＣＰＵ１１０により実行される。
【００２７】
アプリケーションプログラム１０は、例えば画像編集機能を実現するためのプログラムである。ユーザは、アプリケーションプログラム１０の提供するユーザインターフェースを介して、アプリケーションプログラム１０により編集された画像を印刷する指示を与えることができる。アプリケーションプログラム１０は、ユーザより印刷の指示を受けると、プリンタドライバ２０に印刷の対象となる画像データを出力する。なお、本実施例では、画像データはＲＧＢデータとして出力される。
【００２８】
プリンタドライバ２０は、アプリケーションプログラム１０から出力された画像データに基づき印刷データを生成する機能を実現するためのプログラムである。プリンタドライバ２０は、ＣＤ−ＲＯＭなどの各種記憶媒体（コンピュータ読み取り可能な記録媒体等）に記憶されて配布されたり、またはインターネットなど各種通信手段を通じて配信されたりする。
【００２９】
プリンタドライバ２０は、アプリケーションプログラム１０から画像データを受け取り、画像データに基づき印刷データを生成し、生成された印刷データをプリンタ２００に出力する。ここで、印刷データは、プリンタ２００が解釈できる形式のデータであって、各種のコマンドデータとドットデータとを含む。コマンドデータは、プリンタ２００に特定の動作の実行を指示するためのデータである。ドットデータは、印刷される画像（印刷画像）を構成する画素（印刷画素）におけるドットの形成状態を表すデータであり、具体的には、各印刷画素にどの色のどのサイズのドットを形成するか（あるいはドットを形成しないか）を示すデータである。ここで、「ドット」とは、プリンタ２００から噴射されたインクが印刷媒体に着弾して形成される１つの領域をいう。
【００３０】
図１に示すように、プリンタドライバ２０は、解像度変換処理部２１と、エッジ判定部２２と、領域幅算出部２３と、幅比較部２４と、エッジ部ドット割り当て部２５と、処理済判定部２６と、色変換処理部２７と、ハーフトーン処理部２８と、ラスタライズ処理部２９と、を含んでいる。本実施例におけるエッジ部ドット割り当て部２５とハーフトーン処理部２８とは、本発明におけるドット割り当て部に相当する。
【００３１】
解像度変換処理部２１は、アプリケーションプログラム１０から出力された画像データの解像度をプリンタ２００の印刷解像度に一致するように変換する解像度変換処理を行う。
【００３２】
エッジ判定部２２は、画像から、黒色画素で構成された黒色領域（例えば画像における線画の部分）のエッジ（以下「黒色エッジ」とも呼ぶ）を検出する。領域幅算出部２３は、検出されたエッジの位置におけるエッジに直交する方向に沿った黒色領域の幅を算出する。なお、本実施例における「エッジに直交する方向」は、本発明における「所定の方向」に相当する。幅比較部２４は、算出された黒色領域の幅を、所定の閾値と比較したり、別の方向に沿った黒色領域の幅と比較したりする。
【００３３】
エッジ部ドット割り当て部２５は、黒色領域のエッジ周辺に対応した印刷画素に所定のドットを割り当てることにより、当該印刷画素におけるドットの形成状態を決定し、出力バッファ３２に記録する。エッジ部ドット割り当て部２５によるドットの割り当て方法については、後に詳述する。なお、本実施例で用いられるプリンタ２００は、小さいサイズの小ドット（以下「Ｓドット」とも呼ぶ）と中程度のサイズの中ドット（以下「Ｍドット」とも呼ぶ）と大きいサイズの大ドット（以下「Ｌドット」とも呼ぶ）との３種類のサイズのドットを形成可能なプリンタである。そのため、印刷画素におけるドットの形成状態としては、各インク色について、ドットを形成しない、Ｓドットを形成する、Ｍドットを形成する、Ｌドットを形成する、の計４つの選択肢が存在することとなる。
【００３４】
処理済判定部２６は、エッジフラグバッファ３６を参照して、画像データを構成する画素の内の注目画素に対応した印刷画素に対してエッジ部ドット割り当て部２５によるドットの割り当てが行われたか否かを判定する。色変換処理部２７は、処理済判定部２６によって未だドットの割り当てが行われていないと判定された画素を対象に、色変換処理を行う。本実施例で用いられるプリンタ２００は、シアン（Ｃ）、マゼンダ（Ｍ）、イエロー（Ｙ）、ブラック（Ｋ）の各色のインクを用いて印刷を行うプリンタであるため、色変換処理部２７は、対象画素のそれぞれについて、ＲＧＢ値で表された画素値をＣＭＹＫ値に変換する。
【００３５】
ハーフトーン処理部２８は、色変換処理部２７による色変換処理後の画素値に基づきハーフトーン処理を行い、印刷画素におけるドットの形成状態を決定し、出力バッファ３２に記録する。本実施例では、ハーフトーン処理部２８は、印刷媒体の単位面積当たりの総インク量に制限を設けつつ、ディザマトリクスによる閾値処理によってハーフトーン処理を行う。
【００３６】
ラスタライズ処理部２９は、出力バッファ３２に記録された各印刷画素におけるドットの形成状態に基づきドットデータを生成すると共に、ドットデータをプリンタ２００に転送すべき順序に並び替える。
【００３７】
本実施例のプリンタ２００は、印刷媒体にインクドットを形成して画像を印刷するインクジェットプリンタである。プリンタ２００は、プログラムを実行することによりプリンタ２００全体の制御や各種処理を行うＣＰＵ２１０と、プログラムやデータ・情報を格納するメモリ２２０と、外部に接続されるパーソナルコンピュータ１００との間でデータや情報のやりとりを行う入出力インタフェース（Ｉ／Ｆ）部２３０と、ＣＰＵ２１０からの指示に従って各ユニットを制御するユニット制御回路２４０と、ヘッドユニット２５０と、キャリッジユニット２６０と、搬送ユニット２７０と、を備えている。
【００３８】
ヘッドユニット２５０は、印刷媒体にインクを噴射するためのヘッド（図示せず）を有している。ヘッドは、複数のノズルを有し、各ノズルから断続的にインクを噴射する。このヘッドはキャリッジ（図示せず）に搭載されており、キャリッジが所定の走査方向（主走査方向）に移動すると、ヘッドも主走査方向に移動する。ヘッドが主走査方向に移動している間にインクを断続的に噴射することにより、主走査方向に沿ったドットライン（ラスタライン）が印刷媒体上に形成される。
【００３９】
キャリッジユニット２６０は、ヘッドを搭載するキャリッジを主走査方向に往復移動させるための駆動装置である。キャリッジには、ヘッドの他、インクを収容するインクカートリッジも着脱可能に保持されている。
【００４０】
搬送ユニット２７０は、印刷媒体を印刷可能な位置に送り込み、印刷時に所定の搬送方向に所定の搬送量で印刷媒体を搬送させることによって副走査を行うための駆動装置である。搬送ユニット２７０は、例えば、給紙ローラ、搬送モータ、搬送ローラ、プラテン、及び排紙ローラ（図示せず）などによって構成される。
【００４１】
パーソナルコンピュータ１００のメモリ１２０に格納された標準エッジ周辺パターンテーブル４２および細幅対応パターンテーブル４４は、共に、画像中の黒色領域のエッジ（黒色エッジ）周辺に対応した印刷画素におけるドットの配置パターンを示すテーブルである。図２は、標準エッジ周辺パターンテーブル４２および細幅対応パターンテーブル４４が定めるドットの配置パターンを示す説明図である。細幅対応パターンテーブル４４は、図２（ａ）に示すように、黒色領域の幅Ｗが比較的細い場合、具体的には印刷画素４つ分以下の場合のドット配置パターンである細幅対応パターンを定める。具体的には、黒色領域の幅Ｗが印刷画素１つ分である場合には、黒色領域の幅Ｗに対応した１つの印刷画素には１つのＭドットが割り当てられる。同様に、黒色領域の幅Ｗが印刷画素２つ分である場合には、２つの印刷画素にはそれぞれＭドットが割り当てられ、黒色領域の幅Ｗが印刷画素３つ分である場合には、３つの印刷画素には一方の黒色エッジ側から順にＭドット、Ｌドット、Ｍドットがそれぞれ割り当てられ、黒色領域の幅Ｗが印刷画素４つ分である場合には、４つの印刷画素には一方の黒色エッジ側から順にＳドット、Ｌドット、Ｌドット、Ｓドットがそれぞれ割り当てられる。なお、本実施例における印刷画素４つ分は、本発明における第１の閾値に相当する。また、細幅対応パターンは、黒色領域の幅Ｗが比較的細い場合（印刷画素４つ分以下の場合）に採用されるパターンであるため、黒色エッジ周辺に対応したドットの配置を定めるパターンであると言える。
【００４２】
標準エッジ周辺パターンテーブル４２は、図２（ｂ）に示すように、黒色領域の幅Ｗが比較的太い場合、具体的には印刷画素４つ分より大きい場合のドット配置パターンである標準エッジ周辺パターンを定める。具体的には、黒色領域の幅Ｗが印刷画素４つ分より大きい場合には、黒色領域のエッジ（黒色エッジ）からの距離が１画素分である（すなわち黒色エッジに位置する）２つの黒色画素（以下「黒色エッジ画素」とも呼ぶ）にＳドットが割り当てられ、黒色エッジからの距離が２画素分である（すなわち黒色エッジ画素よりさらに１画素分内側に位置する）２つの黒色画素（以下「黒色エッジ隣接画素」とも呼ぶ）にＭドットが割り当てられる。なお、標準エッジ周辺パターンテーブル４２は、黒色領域の幅Ｗに対応した印刷画素の内、黒色エッジ周辺に位置する画素、具体的には黒色エッジ画素および黒色エッジ隣接画素におけるドットの配置のみを定めるパターンであり、黒色エッジ画素でも黒色エッジ隣接画素でもない画素（図２（ｂ）において「Ｘ」と示された画素）におけるドットの配置を定めるものではない。また、本実施例における黒色エッジからの距離としての１画素分は、本発明における第２の閾値に相当する。あるいは、本実施例における黒色エッジからの距離としての２画素分が、本発明における第２の閾値に相当するとしてもよい。
【００４３】
ユーザがアプリケーションプログラム１０（図１）上で画像の印刷を指示すると、アプリケーションプログラム１０からプリンタドライバ２０に印刷命令が発せられる。この印刷命令には、アプリケーションプログラム１０上で編集された画像データ（ＲＧＢデータ）が含まれる。
【００４４】
印刷命令を受領したプリンタドライバ２０では、解像度変換処理部２１が、印刷命令の中に含まれている画像データの解像度を、印刷解像度に一致するように変換する。続いて、エッジ判定部２２と、領域幅算出部２３と、幅比較部２４と、エッジ部ドット割り当て部２５と、処理済判定部２６と、色変換処理部２７と、ハーフトーン処理部２８とにより、画像データの表す画像を印刷する際の各印刷画素におけるドットの形成状態の決定処理が行われる。ドット形成状態の決定処理については、後に詳述する。決定されたドットの形成状態は、出力バッファ３２に記録される。ドット形成状態が決定されると、ラスタライズ処理部２９が、出力バッファ３２に記録された各印刷画素におけるドットの形成状態に基づきドットデータを生成すると共に、ドットデータをプリンタ２００に転送すべき順序に並び替え、ドットデータを含む印刷データを入出力インタフェース部１３０を介してプリンタ２００に出力する。
【００４５】
プリンタ２００は、パーソナルコンピュータ１００から印刷データを受領すると、印刷処理を実行する。まず、ＣＰＵ２１０は、パーソナルコンピュータ１００から入出力インタフェース部２３０を介して印刷データを受領し、受領した印刷データに含まれる各種コマンドの内容を解析する。ＣＰＵ２１０は、解析結果に基づき、ユニット制御回路２４０を介して搬送ユニット２７０を制御する。この制御により、搬送ユニット２７０は、印刷すべき紙（印刷媒体）をプリンタ２００内に供給させ、印刷開始位置に紙を位置決めする。
【００４６】
次に、ＣＰＵ２１０は、ユニット制御回路２４０を介してキャリッジユニット２６０を制御する。この制御により、キャリッジユニット２６０は、ヘッドを搭載したキャリッジを主走査方向に移動させる。また、ＣＰＵ２１０は、ユニット制御回路２４０を介して印刷データに基づいてヘッドユニット２５０を制御する。この制御により、ヘッドユニット２５０は、主走査方向に沿って移動するヘッドから、印刷データに基づいてインクを断続的に噴射させ、噴射されたインク滴が紙上に着弾することにより紙上にドットを形成させる。さらに、ＣＰＵ２１０は、搬送ユニット２７０を制御し、紙を搬送方向に搬送させて、ヘッドに対し相対的に移動させる。これにより、ヘッドは、先ほど形成されたドットの位置とは異なる位置にドットを形成することが可能になる。こうして、印刷するためのデータがなくなるまで、ドット形成や搬送などの処理を繰り返し、ドットから構成される画像を紙に印刷する。その後、印刷するためのデータがなくなれば、印刷処理が完了する。
【００４７】
図３は、ドット形成状態の決定処理の流れを示すフローチャートである。ドット形成状態の決定処理は、解像度変換処理後の画像データに基づき、各印刷画素におけるドットの形成状態を決定し、出力バッファ３２に記録する処理である。
【００４８】
また、図４は、解像度変換処理後の印刷対象画像の一例を示す説明図である。以下では、図４に示す印刷対象画像４０に基づき印刷処理が行われるものとして説明する。図４に示す印刷対象画像４０は、線画Ａおよび線画Ｂを含んでいる。線画Ａは、横（水平方向）４画素×縦（鉛直方向）１１画素の黒色画素によって構成された黒色領域である。また、線画Ｂは、横６画素×縦１１画素の黒色画素によって構成された黒色領域である。印刷対象画像４０の線画Ａおよび線画Ｂ以外の部分の画素はすべて白色画素である。すなわち、印刷対象画像４０は、白色とインクドット色の１つである黒色とのみにより構成されたモノクロ画像である。なお、図４において、○印は後述する注目画素を示しており、実線矢印は注目画素が移動する軌跡を示している。
【００４９】
図５は、出力バッファ３２（図１参照）の構成を示す説明図である。出力バッファ３２は、印刷対象画像４０の各画素に対応したドット形成状態が記録可能なように構成されている。図５に示した３２Ａおよび３２Ｂの部分は、それぞれ、印刷対象画像４０の線画Ａおよび線画Ｂに対応した部分である。なお、出力バッファ３２は、必ずしも印刷対象画像４０全体の各画素に対応したドット形成状態が記録可能に構成されている必要はなく、印刷処理をバンド（印刷対象画像４０を複数の帯状領域に分割した分割画像）単位で実行する場合には、出力バッファ３２はバンド内の各画素に対応したドット形成状態が記録可能に構成されていればよい。また、幅記録バッファ３４およびエッジフラグバッファ３６（図１参照）の構成は、図５に示した出力バッファ３２の構成と同様である。
【００５０】
図６ないし図８は、注目画素の位置と出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。図６ないし図８の上段には、出力バッファ３２における線画Ａに対応した部分３２Ａ（図５参照）の状態を示している。また、図６ないし図８の中段には、幅記録バッファ３４における線画Ａに対応した部分３４Ａの状態を、図６ないし図８の下段には、エッジフラグバッファ３６における線画Ａに対応した部分３６Ａの状態を、それぞれ示している。図中の○は、注目画素に対応した位置を示している。注目画素を示す○印が実線で記載されている場合には、当該位置に注目画素が設定された後に、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６に対する処理が完了した時点における各バッファの状態が示されている。一方、注目画素を示す○印が破線で記載されている場合には、当該位置に注目画素が設定された時点、すなわち出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６に対する処理が行われていない時点における各バッファの状態が示されている。出力バッファ３２の状態を示す図中の符号「Ｓ」は「Ｓドットを形成する」というドット形成状態を示しており、同様に、図中の符号「Ｍ」は「Ｍドットを形成する」というドット形成状態を、符号「Ｌ」は「Ｌドットを形成する」というドット形成状態を、それぞれ示している。幅記録バッファ３４の状態を示す図中の符号「−」は初期値を示している。ここで初期値は十分に大きい値（本実施例では５以上の値）である。エッジフラグバッファ３６の状態を示す図中の符号「−」はフラグが立っていない状態を示しており、符号「１」はフラグが立っている状態を示している。時間の経過と共に、図６の左端の状態（状態ａ）から右端の状態（状態ｆ）、さらに図７の左端の状態（状態ｇ）から右端の状態（状態ｌ）、さらに図８の左端の状態（状態ｍ）から右端の状態（状態ｑ）へと推移するものとする。
【００５１】
ステップＳ１０２（図３）では、エッジ判定部２２（図１）が、解像度変換処理部２１による解像度変換処理後の画像データを読み込む。ステップＳ１０４では、エッジ判定部２２が、幅記録バッファ３４およびエッジフラグバッファ３６を初期化する。これにより、図６の状態ａに示すように、幅記録バッファ３４の値はすべて初期値「−」となり、エッジフラグバッファ３６の値はすべてフラグが立っていない状態を示す値（符号「−」で示す）となる。
【００５２】
ステップＳ１０６では、エッジ判定部２２が、印刷対象画像４０における左上隅の画素を最初の注目画素として設定する。図６に示した状態ａは、印刷対象画像４０における左上隅の画素が最初の注目画素として設定されたときの状態を示している。
【００５３】
ステップＳ１０８（図３）では、エッジ判定部２２（図１）が、注目画素の下側に黒色エッジがあるか否かを判定する。すなわち、エッジ判定部２２は、注目画素が白色画素であり、かつ、１画素分下側の画素が黒色画素であるか否かを判定する。本実施例に用いられる印刷対象画像４０（図４）は、線画Ａおよび線画Ｂ以外の部分はすべて白色であるため、図６の状態ａにおいては注目画素の下側に黒色エッジはないと判定される。
【００５４】
注目画素の下側に黒色エッジはないと判定された場合には（ステップＳ１０８：Ｎｏ）、エッジ判定部２２（図１）が、注目画素の右側に黒色エッジがあるか否かを判定する（ステップＳ１１２）。図６の状態ａにおいては注目画素の右側に黒色エッジはないと判定される。注目画素の右側に黒色エッジはないと判定された場合には（ステップＳ１１２：Ｎｏ）、エッジ判定部２２（図１）が、注目画素の上側に黒色エッジがあるか否かを判定する（ステップＳ１１６）。図６の状態ａにおいては注目画素の上側に黒色エッジはないと判定される。
【００５５】
注目画素の上側に黒色エッジはないと判定された場合には（ステップＳ１１６：Ｎｏ）、処理済判定部２６（図１）が、エッジフラグバッファ３６を参照して、注目画素に対応した位置にエッジフラグが立っているか否かを判定する（ステップＳ１２０）。図６の状態ａにおいてはすべての画素についてエッジフラグは立っていないため、注目画素に対応したエッジフラグは立っていないと判定される（ステップＳ１２０：Ｎｏ）。この場合には、色変換処理部２７（図１）が色変換処理を行うと共に、ハーフトーン処理部２８がハーフトーン処理を行う（ステップＳ１２２）。図６の状態ａにおいては、ハーフトーン処理の結果、注目画素に対応した印刷画素のドット形成状態は「ドットを形成しない」という状態に決定される。
【００５６】
その後、ステップＳ１２４（図３）において、エッジ判定部２２は、注目画素が印刷対象画像４０の右端の画素であるか否かを判定する。注目画素が印刷対象画像４０の右端の画素ではないと判定された場合には（ステップＳ１２４：Ｎｏ）、エッジ判定部２２は注目画素を右に１画素分移動する（ステップＳ１２６）。その後、処理はステップＳ１０８に戻る。図６の状態ａにおいて、注目画素に対応した印刷画素のドット形成状態が決定されると、注目画素が１画素分右に移動される（ステップＳ１２６）。この後、ステップＳ１０８，Ｓ１１２，Ｓ１１６において、それぞれ、注目画素の下側、右側、上側には黒色エッジはないと判定される。そのため、この状態においても、色変換処理部２７による色変換処理およびハーフトーン処理部２８によるハーフトーン処理が実行され（ステップＳ１２２）、注目画素に対応した印刷画素のドット形成状態は「ドットを形成しない」という状態に決定される。このような処理が繰り返され、図６の状態ａから注目画素が印刷対象画像４０の右端まで移動すると、ステップＳ１２４において注目画素は右端であると判定される。このときには、エッジ判定部２２が、注目画素は画像の下端の画素であるか否かを判定する（ステップＳ１２８）。注目画素は画像の下端の画素ではないと判定された場合には（ステップＳ１２８：Ｎｏ）、エッジ判定部２２が、注目画素を１ライン下の画像左端に移動する（ステップＳ１３０）。その後、処理はステップＳ１０８に戻る。
【００５７】
上述の処理が繰り返され、注目画素が図６の状態ｂに示す位置まで移動すると、図３のステップＳ１０８において注目画素の下側に黒色エッジがあると判定される。このときには、下側エッジ処理が実行される（ステップＳ１１０）。
【００５８】
図９は、下側エッジ処理の流れを示すフローチャートである。ステップＳ２０２（図９）では、領域幅算出部２３（図１）が、検出されたエッジの位置におけるエッジに直交する方向、すなわち鉛直方向に沿った黒色領域の幅Ｗを算出する。印刷対象画像４０（図４）における線画Ａの鉛直方向に沿った幅は１１画素分であるため、状態ｂにおける鉛直方向に沿った黒色領域の幅Ｗは１１であると算出される。
【００５９】
ステップＳ２０４（図９）では、幅比較部２４（図１）が、算出された幅Ｗが所定の閾値Ｔｈ１（＝４）より大きいか否かを判定する。本実施例における閾値Ｔｈ１は、本発明における第１の閾値に相当する。図６の状態ｂにおいては、算出された幅Ｗ（＝１１）は、所定の閾値Ｔｈ１（＝４）より大きいと判定される。この場合には、エッジ部ドット割り当て部２５（図１）が、標準エッジ周辺パターンテーブル４２を参照して標準エッジ周辺パターン（図２（ｂ）参照）を読み出す（ステップＳ２１２）。読み出されたパターンは、黒色エッジに位置する２つの黒色エッジ画素にＳドットが割り当てられ、黒色エッジ画素に隣接する２つの黒色エッジ隣接画素にＭドットが割り当てられたパターンである。エッジ部ドット割り当て部２５は、幅Ｗを算出した黒色領域の部分に対応した印刷画素の内の上側２画素に、読み出したパターンに従ったドットを割り当てる（ステップＳ２１４）。これにより、出力バッファ３２における注目画素の１つ下の画素の位置に、「Ｓドットを形成する」というドットの形成状態が記録され、注目画素の２つ下の画素の位置に、「Ｍドットを形成する」というドットの形成状態が記録される（図６の状態ｃ参照）。その後、エッジ部ドット割り当て部２５は、エッジフラグバッファ３６において、ステップＳ２１４でドットが割り当てられた画素に対応した位置にフラグを立てる（ステップＳ２１６、図６の状態ｃ参照）。以上で下側エッジ処理が終了する。
【００６０】
その後、注目画素の位置が図６の状態ｄ、状態ｅ、状態ｆに示す位置に移動するのに伴い、上述した処理と同様の処理が実行され、出力バッファ３２およびエッジフラグバッファ３６の状態が図６の状態ｄ、状態ｅ、状態ｆに示すように変遷する。
【００６１】
注目画素が図７の状態ｇに示す位置まで移動すると、図３のステップＳ１１２において注目画素の右側に黒色エッジがあると判定される。このときには、水平方向エッジ処理が実行される（ステップＳ１１４）。
【００６２】
図１０は、水平方向エッジ処理の流れを示すフローチャートである。ステップＳ３０２（図１０）では、領域幅算出部２３（図１）が、検出されたエッジの位置におけるエッジに直交する方向、すなわち水平方向に沿った黒色領域の幅Ｗを算出する。印刷対象画像４０（図４）における線画Ａの水平方向に沿った幅は４画素分であるため、状態ｇにおける水平方向に沿った黒色領域の幅Ｗは４であると算出される。
【００６３】
ステップＳ３０４（図１０）では、幅比較部２４（図１）が、算出された幅Ｗが所定の閾値Ｔｈ１（＝４）より大きいか否かを判定する。図７の状態ｇにおいては、算出された幅Ｗ（＝４）は、所定の閾値Ｔｈ１（＝４）より大きくはないと判定される。この場合には、エッジ部ドット割り当て部２５（図１）が、細幅対応パターンテーブル４４を参照して、算出された幅Ｗ（＝４ドット）に対応した細幅対応パターン（図２（ａ）参照）を読み出す（ステップＳ３０６）。読み出されたパターンは、図２（ａ）に示すように、２つの黒色エッジ画素にＳドットが割り当てられ、２つの黒色エッジ隣接画素にＬドットが割り当てられたパターンである。
【００６４】
ステップＳ３０８（図１０）では、エッジ部ドット割り当て部２５（図１）が、幅Ｗを算出した黒色領域の部分の画素をＰｉとして設定する。すなわち、状態ｇにおいては、注目画素から右方向に１つ目の画素から４つ目の画素までの４つの画素がＰｉとして設定される。ステップＳ３１０では、エッジ部ドット割り当て部２５が、ｉの値を１に設定する。このとき、画素Ｐｉは注目画素の右隣の画素となる。
【００６５】
ステップＳ３１２では、幅比較部２４（図１）が、算出された幅Ｗが幅記録バッファ３４における画素Ｐｉに対応した値より小さいか否かを判定する。図７の状態ｇにおいては幅記録バッファ３４の値はすべて初期値（「−」で示す）となっており、初期値は十分に大きい値（本実施例では５以上の値）であるため、幅Ｗは幅記録バッファ３４における画素Ｐｉに対応した値より小さいと判定される。この場合には、エッジ部ドット割り当て部２５は、画素Ｐｉに、読み出したパターンに従ったドットを割り当てる（ステップＳ３２４）。これにより、出力バッファ３２における画素Ｐｉ（注目画素の右隣の画素）の位置に、「Ｓドットを形成する」というドットの形成状態が記録される（図７の状態ｈ参照）。ただし、図７の状態ｇにおいては、出力バッファ３２における画素Ｐｉの位置に「Ｓドットを形成する」というドットの形成状態が既に記録されているため、出力バッファ３２の状態は変化しない。
【００６６】
ステップＳ３２５（図１０）では、エッジ部ドット割り当て部２５が、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグを立てる（図７の状態ｈ参照）。続いて、エッジ部ドット割り当て部２５は、幅記録バッファ３４における画素Ｐｉの位置の値が初期値であるか否かを判定する（ステップＳ３２６）。図７の状態ｇにおいては、幅記録バッファ３４における画素Ｐｉの位置の値は初期値である。幅記録バッファ３４における画素Ｐｉの位置の値が初期値であると判定された場合には、エッジ部ドット割り当て部２５は、幅記録バッファ３４の画素Ｐｉに対応した位置に、算出された幅Ｗの値を記録する（ステップＳ３２８、図７の状態ｈ参照）。
【００６７】
その後、エッジ部ドット割り当て部２５は、ｉの値を１つ繰り上げ（ステップＳ３２０）、ｉの値が幅Ｗより大きいか否かを判定する（ステップＳ３２２）。ｉの値が幅Ｗより大きくないと判定された場合には（ステップＳ３２２：Ｎｏ）、新たな画素Ｐｉについて、ステップＳ３１２以降の処理が実行される。ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素の２つ右隣の画素となったとき、ステップＳ３２４において、出力バッファ３２における画素Ｐｉ（注目画素の２つ右隣の画素）の位置に、「Ｌドットを形成する」というドットの形成状態が記録される。ここで、図７の状態ｇにおいては、出力バッファ３２の当該位置に「Ｓドットを形成する」というドットの形成状態が記録されているため、「Ｌドットを形成する」というドットの形成状態は上書き記録されることとなる。
【００６８】
その後、ｉの値が３および４に設定され、ステップＳ３２４〜Ｓ３２８の処理が実行されることにより、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６の状態は、図７の状態ｈに示した状態となる。すなわち、出力バッファ３２における線画Ａの上端の４つの印刷画素に対応した位置には、左から順に、Ｓドット、Ｌドット、Ｌドット、Ｓドットをそれぞれ形成するというドットの形成状態が記録される。その後、ｉの値が５に設定され、ステップＳ３２２において、ｉの値が幅Ｗより大きいと判定されると（ステップＳ３２２：Ｙｅｓ）、水平方向エッジ処理は終了する。
【００６９】
注目画素が図７の状態ｉに示す位置まで移動すると、図３のステップＳ１０８、Ｓ１１２、Ｓ１１６において、それぞれ、注目画素の下側、右側、上側には黒色エッジが無いと判定され、さらに、ステップＳ１２０において、注目画素に対応したエッジフラグが立っていると判定される。この場合には、当該注目画素についての色変換処理およびハーフトーン処理（ステップＳ１２２）は実行されない。エッジフラグバッファ３６において注目画素に対応したエッジフラグが立っているということは、既に標準エッジ周辺パターンまたは細幅対応パターンに従ってドットが割り当てられていることを示している。すなわち、既に標準エッジ周辺パターンまたは細幅対応パターンに従ってドットが割り当てられている画素については、ハーフトーン処理が実行されることはなく、パターンに従って割り当てられたドットが優先される。
【００７０】
注目画素が図７の状態ｊに示す位置まで移動すると、図３のステップＳ１１２において注目画素の右側に黒色エッジがあると判定され、水平方向エッジ処理（ステップＳ１１４）が実行される。これにより、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６は、図７の状態ｊに示す状態となる。その後、注目画素の移動に伴い、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６は、図７の状態ｋ、状態ｌに示したように遷移する。
【００７１】
注目画素が図８の状態ｍに示す位置まで移動すると、図３のステップＳ１１６において注目画素の上側に黒色エッジがあると判定される。このときには、上側エッジ処理が実行される（ステップＳ１１８）。
【００７２】
図１１は、上側エッジ処理の流れを示すフローチャートである。ステップＳ４０２（図１１）では、幅比較部２４（図１）が、上側の黒色領域の下端に位置する画素（黒色エッジ画素）に対応した幅記録バッファ３４の値が初期値であるか否かを判定する。図８の状態ｍにおいては、当該画素に対応した幅記録バッファ３４の値（＝４）は初期値ではない。ステップＳ４０２において初期値ではないと判定された場合には、そのまま上側エッジ処理は終了する（状態ｎ参照）。ステップＳ４０２における判定は、黒色領域の鉛直方向の幅Ｗに注目したドットの割り当てと水平方向の幅Ｗに注目したドットの割り当てとのどちらを優先するかを定めるために実行される。すなわち、ステップＳ４０２において初期値ではないと判定されるということは、水平方向エッジ処理（図１０）において算出された水平方向に沿った黒色領域の幅Ｗが初期値よりも小さいことを意味する。この場合には、水平方向の幅Ｗに注目したドットの割り当てが優先される。一方、ステップＳ４０２において初期値であると判定されるということは、水平方向に沿った黒色領域の幅Ｗが初期値以上であることを意味する。この場合には、鉛直方向の幅Ｗに注目したドットの割り当てが優先される。すなわち、黒色領域の水平方向および鉛直方向の幅Ｗの内、小さい方に注目したドットの割り当てが優先される。
【００７３】
その後、注目画素の移動に伴い、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６の状態は、図８の状態ｏ、状態ｐ、状態ｑ、に示したように遷移する（すなわち状態ｍから変化しない）。状態ｑの後、注目画素が印刷対象画像４０（図４）の右下端まで移動すると、図３のステップＳ１２８において注目画素は画像の下端であると判定され、処理が終了する。
【００７４】
以上説明したドット形成状態の決定処理により、印刷対象画像４０（図４参照）の線画Ａの部分に対応した印刷画素のドット形成状態は、図８の状態ｑに示したように決定される。この場合には、プリンタ２００による画像の印刷の際に、鉛直方向のエッジについての黒色エッジ画素に対応した印刷画素にはＳドットが形成され、鉛直方向のエッジについての黒色エッジ隣接画素に対応した印刷画素にはＬドットが形成されることとなる。
【００７５】
本実施例では、黒色領域の幅Ｗが所定の閾値Ｔｈ１（＝４）以下の場合には、幅Ｗを算出した黒色領域の部分に対して、細幅対応パターンテーブル４４に定められた細幅対応パターン（図２（ａ）参照）に従ったドットの割り当てが行われる。そのため、黒色領域の幅Ｗが比較的小さい場合でも、比較的小さいドットのみが割り当てられることによるドット間の隙間の発生や、再現すべき所定の濃度・太さを再現できない事態の発生を抑制することができ、比較的細幅の黒色領域を印刷する際の印刷画質を向上させることができる。具体的には、細幅対応パターンは、各幅Ｗについて、３つのサイズのドットの内の最小サイズのドット（Ｓドット）以外のドット（Ｍドット、Ｌドット）が１つ以上含まれたパターンとなっている。そのため、黒色領域の幅Ｗが比較的小さい場合でも、幅Ｗを算出した黒色領域の部分がすべてＳドットを用いて印刷されるようなことはなく、ドット間の隙間の発生や、再現すべき所定の濃度・太さを再現できない事態の発生が抑制される。
【００７６】
また、本実施例の細幅対応パターン（図２（ａ）参照）は、幅Ｗを算出した黒色領域の部分の第１の位置に割り当てられるドットのサイズが、黒色エッジからの距離が第１の位置よりも大きい第２の位置（すなわち第１の位置よりもエッジから離れた位置）に割り当てられるドットのサイズよりも小さいパターンとなっている。そのため、本実施例では、エッジ部分におけるにじみや太りが抑制され、印刷画質をさらに向上させることができる。
【００７７】
さらに、本実施例では、黒色領域の幅Ｗが比較的小さい場合には、細幅対応パターン（図２（ａ）参照）に従ったドットの割り当てが行われることにより、黒色エッジ画素に対応した印刷画素に割り当てられるドットのサイズが同一サイズ（幅Ｗが１〜３の場合はＭドット、幅Ｗが４の場合はＳドット）となる。そのため、本実施例では、印刷画像におけるエッジのがたつきや欠けが抑制され、印刷画質をさらに向上させることができる。
【００７８】
次に、印刷対象画像４０の線画Ｂに対応した部分についてのドット形成状態の決定処理について説明する。図１２ないし図１４は、注目画素の位置と出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。図１２ないし図１４の上段には、出力バッファ３２における線画Ｂに対応した部分３２Ｂの状態を示している。また、図１２ないし図１４の中段には、幅記録バッファ３４における線画Ｂに対応した部分３４Ｂの状態を、図１２ないし図１４の下段には、エッジフラグバッファ３６における線画Ｂに対応した部分３６Ｂの状態を、それぞれ示している。時間の経過と共に、図１２の左端の状態（状態ａ）から右端の状態（状態ｆ）、さらに図１３の左端の状態（状態ｇ）から右端の状態（状態ｌ）、さらに図１４の左端の状態（状態ｍ）から右端の状態（状態ｒ）へと推移するものとする。
【００７９】
注目画素が図１２の状態ｂに示す位置まで移動すると、図３のステップＳ１０８において注目画素の下側に黒色エッジがあると判定され、下側エッジ処理（ステップＳ１１０）が実行される。ここで、線画Ｂの鉛直方向に沿った幅Ｗは線画Ａと同じく１１画素分であるため、下側エッジ処理（図９）のステップＳ２０４において、黒色領域の幅Ｗ（＝１１）は閾値Ｔｈ１（＝４）より大きいと判定される。従って、標準エッジ周辺パターン（図２（ｂ）参照）が読み出され（ステップＳ２１２）、幅Ｗを算出した黒色領域の部分に対応した印刷画素の内の上側２画素に読み出したパターンに従ったドットが割り当てられる（ステップＳ２１４）。これにより、出力バッファ３２における注目画素の１つ下の画素の位置に、「Ｓドットを形成する」というドットの形成状態が記録され、注目画素の２つ下の画素の位置に、「Ｍドットを形成する」というドットの形成状態が記録される（図１２の状態ｃ参照）。また、エッジフラグバッファ３６において、ドットが割り当てられた画素に対応した位置にフラグが立てられる（ステップＳ２１６、図１２の状態ｃ参照）。その後、注目画素の移動に伴い、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６の状態は、図１２の状態ｄ、状態ｅに示したように遷移する。
【００８０】
注目画素が図１２の状態ｆに示す位置まで移動すると、図３のステップＳ１１２において注目画素の右側に黒色エッジがあると判定され、水平方向エッジ処理（ステップＳ１１４）が実行される。ここで、線画Ｂの水平方向に沿った幅Ｗは６画素分であるため、水平方向エッジ処理（図１０）のステップＳ３０４において、黒色領域の幅Ｗ（＝６）は閾値Ｔｈ１（＝４）より大きいと判定される。このときには、ステップＳ３３０において、エッジ部ドット割り当て部２５（図１）が、標準エッジ周辺パターンテーブル４２を参照して標準エッジ周辺パターン（図２（ｂ）参照）を読み出す（ステップＳ３３０）。読み出されたパターンは、図２（ｂ）に示すように、黒色エッジに位置する２つの黒色エッジ画素にＳドットが割り当てられ、黒色エッジ画素に隣接する２つの黒色エッジ隣接画素にＭドットが割り当てられたパターンである。
【００８１】
次に、エッジ部ドット割り当て部２５（図１）は、幅Ｗを算出した黒色領域の部分の画素の内の左端の２画素と右端の２画素とをＰｉとして設定する（ステップＳ３３２）。すなわち、図１２の状態ｆにおいては、注目画素から右方向に１つ目および２つ目の画素と５つ目および６つ目の画素との合計４つの画素がＰｉとして設定される。ステップＳ３３４では、エッジ部ドット割り当て部２５が、ｉの値を１に設定する。このとき、画素Ｐｉは注目画素の右隣の画素となる。
【００８２】
ステップＳ３３６では、幅比較部２４（図１）が、幅記録バッファ３４における画素Ｐｉに対応した値が初期値か否かを判定する。ステップＳ３３６における判定は、黒色領域の鉛直方向に沿った幅Ｗに注目したドットの割り当てと水平方向に沿った幅Ｗに注目したドットの割り当てとのどちらを優先するかを定めるために実行される。ステップＳ３３６において初期値であると判定されるということは、下側エッジ処理（図９）において算出された鉛直方向に沿った黒色領域の幅Ｗが初期値以上であったことを意味する。この場合には、水平方向に沿った幅Ｗに注目したドットの割り当てが優先されるべく、ステップＳ３３８以降の処理が実行される。一方、ステップＳ３３６において初期値ではないと判定されるということは、下側エッジ処理（図９）において算出された鉛直方向に沿った黒色領域の幅Ｗが初期値より小さかったことを意味する。この場合には、鉛直方向に沿った幅Ｗに注目したドットの割り当てが優先されるべく、ステップＳ３３８以降の処理がスキップされる。すなわち、黒色領域の水平方向および鉛直方向に沿った幅の内、小さい方に注目したドットの割り当てが優先される。
【００８３】
図１２の状態ｆにおいては、幅記録バッファ３４の値はすべて初期値（「−」で示す）となっている。ステップＳ３３６において初期値であると判定されると、エッジ部ドット割り当て部２５が、画素Ｐｉに既に割り当てられたドットサイズはステップＳ３３０で読み出されたドットサイズより大きいか否かを判定する（ステップＳ３３８）。ステップＳ３３８における判定は、ある印刷画素に複数のエッジ処理においてドットが割り当てられることとなる場合に、より小さいサイズのドットの割り当てを優先するために実行される。図１２の状態ｆにおいては、画素Ｐｉ（注目画素の右隣の画素）に既に割り当てられたドットサイズ（Ｓサイズ）は、ステップＳ３３０で読み出されたドットサイズ（Ｓサイズ）と同じである。ステップＳ３３８において、画素Ｐｉに既に割り当てられたドットサイズはステップＳ３３０で読み出されたドットサイズより大きくないと判定された場合には、図１０のステップＳ３４０およびＳ３４１がスキップされる。
【００８４】
その後、エッジ部ドット割り当て部２５は、ｉの値を１つ繰り上げ（ステップＳ３４２）、ｉの値が４より大きいか否かを判定する（ステップＳ３４４）。ｉの値が４より大きくないと判定された場合には（ステップＳ３４４：Ｎｏ）、新たな画素Ｐｉについて、ステップＳ３３６以降の処理が実行される。ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素の２つ右隣の画素となったときにも、ステップＳ３３６において初期値であると判定され、ステップＳ３３８において、画素Ｐｉに既に割り当てられたドットサイズ（Ｓサイズ）はステップＳ３３０で読み出されたドットサイズ（Ｍサイズ）より大きくないと判定されるため、図１０のステップＳ３４０およびＳ３４１はスキップされる。ｉの値が３および４に設定されたときも同様である。その後、ｉの値が５に設定され、ステップＳ３４４において、ｉの値が４より大きいと判定されると（ステップＳ３４４：Ｙｅｓ）、水平方向エッジ処理は終了する。
【００８５】
注目画素が図１３の状態ｇに示す位置まで移動すると、図３のステップＳ１１２において注目画素の右側に黒色エッジがあると判定され、水平方向エッジ処理（ステップＳ１１４）が実行される。この場合にも同様に、ステップＳ３０４において黒色領域の幅Ｗ（＝６）は閾値Ｔｈ１（＝４）より大きいと判定され（ステップＳ３０４：Ｙｅｓ）、標準エッジ周辺パターン（図２（ｂ）参照）が読み出される（ステップＳ３３０）。
【００８６】
次に、幅Ｗを算出した黒色領域の部分の画素の内の左端の２画素と右端の２画素とがＰｉとして設定され（ステップＳ３３２）、ｉの値が１に設定される（ステップＳ３３４）。このとき、画素Ｐｉは注目画素の右隣の画素となる。
【００８７】
次に、ステップＳ３３６（図１０）において、幅記録バッファ３４における画素Ｐｉに対応した値が初期値であると判定され、画素Ｐｉに既に割り当てられたドットサイズがステップＳ３３０で読み出されたドットサイズより大きいか否かの判定（ステップＳ３３８）が行われる。図１３の状態ｇにおいては、画素Ｐｉ（注目画素の右隣の画素）に既に割り当てられたドットサイズ（Ｍサイズ）は、ステップＳ３３０で読み出されたドットサイズ（Ｓサイズ）より大きい。ステップＳ３３８において、画素Ｐｉに既に割り当てられたドットサイズはステップＳ３３０で読み出されたドットサイズより大きいと判定された場合には、エッジ部ドット割り当て部２５が、画素Ｐｉに読み出されたサイズのドットを割り当てる（ステップＳ３４０）。これにより、出力バッファ３２の画素Ｐｉに対応した位置に「Ｓドットを形成する」というドットの形成状態が上書き記録される（図１３の状態ｈ参照）。また、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立てられる（ステップＳ３４１）。ただし、図１３の状態ｇにおいては、エッジフラグバッファ３６の画素Ｐｉに対応した位置に既にフラグが立てられている。
【００８８】
その後、ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素の２つ右隣の画素となったときには、ステップＳ３３６において初期値であると判定され、ステップＳ３３８において、画素Ｐｉに既に割り当てられたドットサイズ（Ｍサイズ）はステップＳ３３０で読み出されたドットサイズ（Ｍサイズ）より大きくないと判定されるため、図１０のステップＳ３４０およびＳ３４１はスキップされる。ｉの値が３に設定されたときも同様である。ｉの値が４に設定されたときには、ステップＳ３３８において、画素Ｐｉに既に割り当てられたドットサイズ（Ｍドット）はステップＳ３３０で読み出されたドットサイズ（Ｓドット）より大きいと判定され、図１３の状態ｈに示すように、出力バッファ３２の画素Ｐｉ（注目画素の右側６つ目の画素）に対応した位置に、「Ｓドットを形成する」というドットの形成状態が上書き記録されると共に、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立てられる。ｉの値が５に設定されると、ステップＳ３４４においてｉの値が４より大きいと判定され（ステップＳ３４４：Ｙｅｓ）、水平方向エッジ処理は終了する。
【００８９】
注目画素が図１３の状態ｉに示す位置まで移動すると、図３のステップＳ１１２において注目画素の右側に黒色エッジがあると判定され、水平方向エッジ処理（ステップＳ１１４）が実行される。この場合にも同様に、ステップＳ３０４において黒色領域の幅Ｗ（＝６）は閾値Ｔｈ１（＝４）より大きいと判定され（ステップＳ３０４：Ｙｅｓ）、標準エッジ周辺パターン（図２（ｂ）参照）が読み出される（ステップＳ３３０）。
【００９０】
次に、幅Ｗを算出した黒色領域の部分の画素の内の左端の２画素と右端の２画素とがＰｉとして設定され（ステップＳ３３２）、ｉの値が１に設定される（ステップＳ３３４）。このとき、画素Ｐｉは注目画素の右隣の画素となる。
【００９１】
次に、ステップＳ３３６（図１０）において、幅記録バッファ３４における画素Ｐｉに対応した値が初期値であると判定され、画素Ｐｉに既に割り当てられたドットサイズがステップＳ３３０で読み出されたドットサイズより大きいか否かの判定（ステップＳ３３８）が行われる。図１３の状態ｉにおいては、画素Ｐｉ（注目画素の右隣の画素）には未だドットが割り当てられていない。画素Ｐｉに未だドットが割り当てられていない場合には、ステップＳ３３８において「Ｙｅｓ」と判定されるものとする。ステップＳ３３８において「Ｙｅｓ」と判定された場合には、画素Ｐｉに、読み出されたサイズのドットが割り当てられる（ステップＳ３４０）。これにより、出力バッファ３２の画素Ｐｉに対応した位置に「Ｓドットを形成する」というドットの形成状態が記録される（図１３の状態ｊ参照）。また、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立てられる（ステップＳ３４１）。
【００９２】
その後、ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素の２つ右隣の画素となったときには、ステップＳ３３６において初期値であると判定され、ステップＳ３３８において「Ｙｅｓ」と判定されるため、出力バッファ３２の画素Ｐｉに対応した位置に、読み出されたサイズのドットである「Ｍドットを形成する」というドットの形成状態が記録されると共に、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立てられる（図１３の状態ｊ参照）。ｉの値が３および４に設定されたときも同様の処理が実行され、注目画素から右に５つ目の画素にＭドットが割り当てられ、注目画素から右に６つ目の画素にＳドットが割り当てられる（図１３の状態ｊ参照）。ｉの値が５に設定されると、ステップＳ３４４において、ｉの値が４より大きいと判定され（ステップＳ３４４：Ｙｅｓ）、水平方向エッジ処理は終了する。
【００９３】
注目画素が図１３の状態ｋに示す位置まで移動すると、図３のステップＳ１０８、Ｓ１１２、Ｓ１１６において、それぞれ、注目画素の下側、右側、上側には黒色エッジが無いと判定され、さらに、ステップＳ１２０において、注目画素に対応したエッジフラグが立っていると判定される。この場合には、当該注目画素についての色変換処理およびハーフトーン処理（ステップＳ１２２）は実行されない。
【００９４】
注目画素が図１３の状態ｌに示す位置まで移動すると、図３のステップＳ１０８、Ｓ１１２、Ｓ１１６において、それぞれ、注目画素の下側、右側、上側には黒色エッジが無いと判定され、さらに、ステップＳ１２０において、注目画素に対応したエッジフラグが立っていないと判定される。この場合には、当該注目画素について、色変換処理およびハーフトーン処理（ステップＳ１２２）が実行され、出力バッファ３２にドットの形成状態が記録される（図１４の状態ｍ参照）。図１４の例では、「Ｓドットを形成する」というドットの形成状態が記録されている。
【００９５】
その後、注目画素の移動に伴い、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６の状態は図１４の状態ｎに示したように遷移する。図１４の状態ｎにおいては、線画Ｂの上から３行目から最下行までの画素行について、２つの黒色エッジ画素（左端および右端に位置する画素）にＳドットが割り当てられ、２つの黒色エッジ周辺画素（左から２番目および右から２番目の画素）にＭドットが割り当てられている。また、線画Ｂの上から３行目から最下行までの画素行におけるその他の画素には、ハーフトーン処理結果に応じたドットが割り当てられている。
【００９６】
注目画素が図１４の状態ｏに示す位置まで移動すると、図３のステップＳ１１６において注目画素の上側に黒色エッジがあると判定され、上側エッジ処理（ステップＳ１１８）が実行される。図１４の状態ｏにおいては、上側エッジ処理（図１１）のステップＳ４０２において、上側の黒色領域の下端に位置する黒色エッジ画素に対応した幅記録バッファ３４における値が初期値であると判定される。この場合には、エッジ部ドット割り当て部２５（図１）が、標準エッジ周辺パターンテーブル４２を参照して標準エッジ周辺パターン（図２（ｂ）参照）を読み出す（ステップＳ４０４）。
【００９７】
次に、エッジ部ドット割り当て部２５（図１）は、幅Ｗを算出した黒色領域の部分の画素の内の下端の２画素をＰｉとして設定する（図１１のステップＳ４０６）。すなわち、図１４の状態ｏにおいては、注目画素から上方向に１つ目および２つ目の画素がＰｉとして設定される。ステップＳ４０８では、エッジ部ドット割り当て部２５が、ｉの値を１に設定する。このとき、画素Ｐｉは注目画素の上隣の画素となる。
【００９８】
ステップＳ４０９（図１１）では、処理済判定部２６（図１）が、エッジフラグバッファ３６における画素Ｐｉに対応した位置にフラグが立っているか否かを判定する。また、ステップＳ４０９においてフラグが立っていると判定された場合には、エッジ部ドット割り当て部２５が、画素Ｐｉに既に割り当てられたドットサイズはステップＳ４０４で読み出されたドットサイズより大きいか否かを判定する（ステップＳ４１０）。ステップＳ４０９およびＳ４１０における判定は、画素Ｐｉに複数のエッジ処理においてドットが割り当てられることとなる場合に、小さいサイズのドットの割り当てを優先するために実行される。ステップＳ４０９においてフラグが立っていないと判定された場合、または、ステップＳ４１０において画素Ｐｉに既に割り当てられたドットサイズはステップＳ４０４で読み出されたドットサイズより大きいと判定された場合には、エッジ部ドット割り当て部２５が、画素Ｐｉに、ステップＳ４０４で読み出されたサイズのドットを割り当て、出力バッファ３２に記録する（ステップＳ４１２）。また、エッジ部ドット割り当て部２５は、エッジフラグバッファ３６における画素Ｐｉに対応した位置にフラグを立てる（ステップＳ４１３）。一方、ステップＳ４１０において画素Ｐｉに既に割り当てられたドットサイズはステップＳ４０４で読み出されたドットサイズより大きくない判定された場合には、ステップＳ４１２およびＳ４１３の処理はスキップされる。
【００９９】
図１４の状態ｏにおいては、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立っており、画素Ｐｉに既に割り当てられたドットサイズ（Ｓドット）はステップＳ４０４で読み出されたドットサイズ（Ｓドット）より大きくはないため、ステップＳ４１２およびＳ４１３の処理はスキップされる。
【０１００】
その後、エッジ部ドット割り当て部２５は、ｉの値を１つ繰り上げ（ステップＳ４１４）、ｉの値が２より大きいか否かを判定する（ステップＳ４１６）。ｉの値が２より大きくないと判定された場合には（ステップＳ４１６：Ｎｏ）、新たな画素Ｐｉについて、ステップＳ４０９以降の処理が実行される。ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素から上方向に２つ目の画素となったときにも、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立っており、画素Ｐｉに既に割り当てられたドットサイズ（Ｓドット）はステップＳ４０４で読み出されたドットサイズ（Ｍドット）より大きくはないため、ステップＳ４１２およびＳ４１３の処理はスキップされる。その後、ｉの値が３に設定され、ステップＳ４１６において、ｉの値が２より大きいと判定されると、上側エッジ処理は終了する。
【０１０１】
注目画素が図１４の状態ｐに示す位置に移動すると、図３のステップＳ１１６において注目画素の上側に黒色エッジがあると判定され、上側エッジ処理（ステップＳ１１８）が実行される。図１４の状態ｐにおいては、上側エッジ処理（図１１）のステップＳ４０２において、上側の黒色領域の下端に位置する画素（黒色エッジ画素）に対応した幅記録バッファ３４における値が初期値であると判定され、標準エッジ周辺パターン（図２（ｂ）参照）が読み出される（ステップＳ４０４）。
【０１０２】
次に、幅Ｗを算出した黒色領域の部分の画素の内の下端の２画素がＰｉとして設定され（図１１のステップＳ４０６）、ｉの値が１に設定される（ステップＳ４０８）。このとき、画素Ｐｉは注目画素の上隣の画素となる。図１４の状態ｐにおいては、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立っており、画素Ｐｉに既に割り当てられたドットサイズ（Ｍドット）はステップＳ４０４で読み出されたドットサイズ（Ｓドット）より大きいため、画素ＰｉにステップＳ４０４で読み出されたサイズのドット（Ｓドット）が割り当てられ、出力バッファ３２に上書き記録される（ステップＳ４１２）。また、ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素から上方向に２つ目の画素となったときには、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立っており、画素Ｐｉに既に割り当てられたドットサイズ（Ｍドット）はステップＳ４０４で読み出されたドットサイズ（Ｍドット）より大きくはないため、ステップＳ４１２およびＳ４１３の処理はスキップされる。その後、ｉの値が３に設定され、ステップＳ４１６において、ｉの値が２より大きいと判定されると、上側エッジ処理は終了する。
【０１０３】
注目画素が図１４の状態ｑに示す位置に移動すると、図３のステップＳ１１６において注目画素の上側に黒色エッジがあると判定され、上側エッジ処理（ステップＳ１１８）が実行される。図１４の状態ｑにおいては、上側エッジ処理（図１１）のステップＳ４０２において、上側の黒色領域の下端に位置する画素（黒色エッジ画素）に対応した幅記録バッファ３４における値が初期値であると判定され、標準エッジ周辺パターン（図２（ｂ）参照）が読み出される（ステップＳ４０４）。
【０１０４】
次に、幅Ｗを算出した黒色領域の部分の画素の内の下端の２画素がＰｉとして設定され（図１１のステップＳ４０６）、ｉの値が１に設定される（ステップＳ４０８）。このとき、画素Ｐｉは注目画素の上隣の画素となる。図１４の状態ｑにおいては、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立っていない（ステップＳ４０９：Ｎｏ）。そのため、画素ＰｉにステップＳ４０４で読み出されたサイズのドット（Ｓドット）が割り当てられ、出力バッファ３２に上書き記録される（ステップＳ４１２）。また、ｉの値が２に設定されたとき、すなわち、画素Ｐｉが注目画素から上方向に２つ目の画素となったときにも、エッジフラグバッファ３６の画素Ｐｉに対応した位置にフラグが立っていないため、画素ＰｉにステップＳ４０４で読み出されたサイズのドット（Ｍドット）が割り当てられ、出力バッファ３２に上書き記録される（ステップＳ４１２）。その後、注目画素の移動に伴い、出力バッファ３２、幅記録バッファ３４、エッジフラグバッファ３６の状態は図１４の状態ｒに示した状態に遷移する。
【０１０５】
以上説明したドット形成状態の決定処理により、印刷対象画像４０（図３参照）の線画Ｂの部分に対応した印刷画素のドット形成状態は、図１４の状態ｒに示したように決定される。この場合には、プリンタ２００による画像の印刷の際に、黒色エッジ画素に対応した印刷画素にはＳドットが形成され、黒色エッジ周辺画素に対応した印刷画素にはＭドットが形成されることとなる。また、黒色エッジ画素でも黒色エッジ周辺画素でもない画素（黒色エッジからの距離が２より大きい画素）に対応した印刷画素のドット形成状態は、通常のハーフトーン処理によって決定される。
【０１０６】
本実施例では、黒色領域の幅Ｗが所定の閾値Ｔｈ１（＝４）より大きい場合には、標準エッジ周辺パターンテーブル４２に定められた標準エッジ周辺パターン（図２（ａ）参照）に従ったドットの割り当てが行われる。ここで標準エッジ周辺パターンは、黒色エッジ画素（エッジに位置する画素）に対応したすべての印刷画素に同一サイズのドット（Ｓドット）が割り当てられるようなパターンとなっている。そのため、本実施例では、黒色領域の幅Ｗが比較的大きい場合にも、印刷画像におけるエッジのがたつきや欠けを抑制することができ、印刷画質を向上させることができる。また、標準エッジ周辺パターンは、黒色エッジ画素に対応したすべての印刷画素に最大サイズのドット（Ｌドット）以外のドット（Ｓドット）が割り当てられるようなパターンとなっているため、エッジ部分におけるにじみや太りが抑制され、印刷画質がさらに向上する。さらに、標準エッジ周辺パターンは、黒色エッジ周辺画素に対応したすべての印刷画素にも最大サイズのドット（Ｌドット）以外のドット（Ｍドット）が割り当てられるようなパターンとなっているため、エッジ部分におけるにじみや太りが抑制され、印刷画質がさらに向上する。
【０１０７】
図１５は、本実施例に従って決定したドット形成状態の一例を示す説明図である。図１５（ａ）には、印刷画素７画素分に相当する幅Ｗ１の線画を印刷する際のドット形成状態を示しており、図１０（ｂ）には、印刷画素１画素分に相当する幅Ｗ２の線画を印刷する際のドット形成状態を示している。図１０の記号「Ｓ」は「Ｓドットを形成する」というドット形成状態を示している。同様に、図１０の記号「Ｍ」は「Ｍドットを形成する」というドット形成状態を、記号「Ｌ」は「Ｌドットを形成する」というドット形成状態を、それぞれ示している。本実施例では、図１０（ｂ）に示すように、例えば黒色領域の幅Ｗが１画素分の場合には、細幅対応パターンに従ってＭドットが割り当てられる。一方、仮に黒色領域の幅Ｗを考慮することなく標準エッジ周辺パターンに従ったドットの割り当てが行われるとすると、黒色領域の幅Ｗが１画素分の場合には、Ｓドットが割り当てられることとなる。このように、本実施例では、黒色領域の幅Ｗが比較的小さい場合でも、ドット間の隙間の発生や、再現すべき所定の濃度・太さを再現できない事態の発生を有効に抑制することができる。
【０１０８】
なお、下側エッジ処理（図９）のステップＳ２０４において、幅Ｗが閾値Ｔｈ１より大きくないと判定された場合には、細幅対応パターンが読み出され、読み出されたパターンに従ったドットの割り当てが行われ、エッジフラグバッファ３６にエッジフラグが立てられ、幅記録バッファ３４に幅Ｗが記録される（図９のステップＳ２０６〜Ｓ２１０）。また、水平方向エッジ処理（図１０）のステップＳ３１２において、幅記録バッファ３４における画素Ｐｉに対応した値が幅Ｗに等しいと判定された場合には、画素Ｐｉに既に割り当てられたドットのサイズが読み出されたドットのサイズより大きいか否かが判定され、大きいと判定された場合に、読み出されたパターンに従ったドットが割り当てられると共に、エッジフラグバッファ３６にエッジフラグが立てられる（図１０のステップＳ３１４〜Ｓ３１９）。
【０１０９】
Ｂ．変形例：
なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。
【０１１０】
Ｂ１．変形例１：
上記実施例では、細幅対応パターンに従ったドットの割り当てを行うか否かの判定のための閾値Ｔｈ１の値を４に設定しているが、閾値Ｔｈ１の値は任意に設定可能である。例えば、閾値Ｔｈ１の値を１に設定し、黒色領域の幅Ｗが１の場合にのみ細幅対応パターンに従ったドットの割り当てを行うものとしてもよい。あるいは、閾値Ｔｈ１の値を５以上に設定し、黒色領域の幅Ｗが５以上の場合にも細幅対応パターンに従ったドットの割り当てを行うものとしてもよい。
【０１１１】
また、図２（ａ）に示した細幅対応パターンにおける各幅Ｗに対応したドットの配列はあくまで一例であり、複数サイズのドットの内の最小サイズのドット（Ｓドット）以外のドットが少なくとも１つ含まれる限り、種々変形可能である。例えば、図２（ａ）に示した幅Ｗが３のときの細幅対応パターンにおいて、黒色エッジ周辺画素（中央の画素）の位置にＬドットの代わりにＭドットを割り当ててもよい。また、幅Ｗが４のときの細幅対応パターンにおいて、黒色エッジ画素（両端部の画素）の位置にＳドットの代わりにＭドットを割り当ててもよい。
【０１１２】
Ｂ２．変形例２：
上記実施例では、下側エッジ処理（図３のステップＳ１１０）と上側エッジ処理（同ステップＳ１１８）とが、別の処理として実施されているが、印刷処理をバンド単位ではなく、印刷対象画像４０全体を対象として実行する場合には、下側エッジ処理および上側エッジ処理を、水平方向エッジ処理（図３のステップＳ１１４）と同様に、１つの処理として実行可能である。
【０１１３】
Ｂ３．変形例３：
上記実施例の標準エッジ周辺パターン（図２（ｂ））に従ったドットの割り当てでは、黒色エッジ画素に対応する印刷画素に最小サイズのドットであるＳドットが割り当てられるとしているが、黒色エッジ画素に対応する印刷画素には、すべて同一サイズのドットが割り当てられるならばＭドットやＬドットが割り当てられるとしてもよい。黒色エッジ画素に対応する印刷画素のすべてにＭドット（またはＬドット）が割り当てられた場合にも、印刷画像におけるエッジのがたつきや欠けが抑制されると共に、ドットの欠けが発生することも無いため、印刷画質が向上する。ただし、黒色エッジ画素に対応する印刷画素に最大サイズのドット以外のドット（ＳドットやＭドット）が割り当てられれば、エッジ部分におけるにじみや太りが抑制されるため、好ましい。
【０１１４】
また、上記実施例の標準エッジ周辺パターン（図２（ｂ））に従ったドットの割り当てでは、黒色エッジ周辺画素に対応する印刷画素にＭドットが割り当てられるとしているが、黒色エッジ周辺画素に対応する印刷画素に最大サイズのドット（Ｌドット）以外のドットが割り当てられればよく、例えば、黒色エッジ周辺画素に対応する印刷画素のすべてにＳドットが割り当てられるとしてもよいし、黒色エッジ周辺画素に対応する印刷画素の一部にはＭドットが割り当てられ、残りの一部にはＳドットが割り当てられるとしてもよい。
【０１１５】
また、上記実施例の標準エッジ周辺パターン（図２（ｂ））では、黒色エッジ画素にＳドットが割り当てられ黒色エッジ周辺画素にＭドットが割り当てられているが、標準エッジ周辺パターンにおいて黒色エッジ画素にのみＳドットを割り当て、黒色エッジ周辺画素については色変換処理およびハーフトーン処理によってドットの形成状態が決定されるとしてもよい。
【０１１６】
Ｂ４．変形例４：
上記実施例では、白色と黒色とのみにより構成された画像を対象としてドット形成状態の決定処理を説明したが、本発明は、白色と画像の印刷に用いられるドットの色（例えばシアンやマゼンタ、イエロー）の１つとのみにより構成された画像を対象としたドット形成状態の決定処理にも適用可能である。すなわち、上記実施例において、黒色を画像の印刷に用いられる他のドット色に置換することが可能である。
【０１１７】
Ｂ５．変形例５：
上記実施例では、印刷対象画像４０の全体において同一の方法でドット形成状態の決定処理を行っているが、印刷対象画像４０における文字や線画（記号、図形、グラフ等）を含むテキスト領域のみを対象として上記実施例の方法でドット形成状態の決定を行うとしてもよい。この場合には、例えば、画像データのＲＧＢ値に基づいてテキスト領域を検出してもよいし、画素の輝度値に基づいてテキスト領域を検出してもよい。
【０１１８】
Ｂ６．変形例６：
上記実施例では、画像データはＲＧＢデータであるとしているが、画像データは必ずしもＲＧＢデータである必要はない。また、上記実施例では、プリンタ２００はＣＭＹＫの４色のインクを用いて３種類のサイズのドットを形成することにより印刷を行うとしているが、プリンタ２００はＣＭＹＫ以外の他の色のインクを用いて印刷を行うとしてもよいし、２種類（あるいは４種類以上）のサイズのドットを形成することにより印刷を行うとしてもよい。
【０１１９】
Ｂ７．変形例７：
上記実施例では、画像処理装置がパーソナルコンピュータ１００として構成されているが、本発明は、パーソナルコンピュータ１００以外のドット形成状態を決定する画像処理を行う画像処理装置にも適用可能である。例えば、画像処理装置をプリンタ２００として構成することも可能である。
【０１２０】
また、上記実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部をハードウェアに置き換えるようにしてもよい。
【０１２１】
Ｂ８．変形例８：
上記実施例では、印刷媒体にインクを噴射するためのヘッドが主走査方向に移動するプリンタを例に説明したが、ヘッドを主走査方向に複数個並べて配置し、ヘッドは移動しないラインヘッドプリンタにも適用可能である。
【図面の簡単な説明】
【０１２２】
【図１】本発明の実施例における印刷システムの構成を概略的に示す説明図である。
【図２】標準エッジ周辺パターンテーブル４２および細幅対応パターンテーブル４４が定めるドットの配置パターンを示す説明図である。
【図３】ドット形成状態の決定処理の流れを示すフローチャートである。
【図４】解像度変換処理後の印刷対象画像の一例を示す説明図である。
【図５】出力バッファ３２の構成を示す説明図である。
【図６】注目画素の位置と出力バッファ３２幅記録バッファ３４エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。
【図７】注目画素の位置と出力バッファ３２幅記録バッファ３４エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。
【図８】注目画素の位置と出力バッファ３２幅記録バッファ３４エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。
【図９】下側エッジ処理の流れを示すフローチャートである。
【図１０】水平方向エッジ処理の流れを示すフローチャートである。
【図１１】上側エッジ処理の流れを示すフローチャートである。
【図１２】注目画素の位置と出力バッファ３２幅記録バッファ３４エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。
【図１３】注目画素の位置と出力バッファ３２幅記録バッファ３４エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。
【図１４】注目画素の位置と出力バッファ３２幅記録バッファ３４エッジフラグバッファ３６のそれぞれの状態とを対応付けて示す説明図である。
【図１５】本実施例に従って決定したドット形成状態の一例を示す説明図である。
【符号の説明】
【０１２３】
１０…アプリケーションプログラム
２０…プリンタドライバ
２１…解像度変換処理部
２２…エッジ判定部
２３…領域幅算出部
２４…幅比較部
２５…エッジ部ドット割り当て部
２６…処理済判定部
２７…色変換処理部
２８…ハーフトーン処理部
２９…ラスタライズ処理部
３２…出力バッファ
３４…幅記録バッファ
３６…エッジフラグバッファ
４２…標準エッジ周辺パターンテーブル
４４…細幅対応パターンテーブル
１００…パーソナルコンピュータ
１１０…ＣＰＵ
１２０…メモリ
１３０…入出力インタフェース部
２００…プリンタ
２１０…ＣＰＵ
２２０…メモリ
２３０…入出力インタフェース部
２４０…ユニット制御回路
２５０…ヘッドユニット
２６０…キャリッジユニット
２７０…搬送ユニット
１０００…印刷システム
【図１】
2009177566.tif 000003
【図２】
2009177566.tif 000004
【図３】
2009177566.tif 000005
【図４】
2009177566.tif 000006
【図５】
2009177566.tif 000007
【図６】
2009177566.tif 000008
【図７】
2009177566.tif 000009
【図８】
2009177566.tif 000010
【図９】
2009177566.tif 000011
【図１０】
2009177566.tif 000012
【図１１】
2009177566.tif 000013
【図１２】
2009177566.tif 000014
【図１３】
2009177566.tif 000015
【図１４】
2009177566.tif 000016
【図１５】
2009177566.tif 000017