"画像処理装置であって、複数の画素のそれぞれの階調値を表す入力画像データを、ドット形成状態を表す出力画像データに、画素毎に変換するデータ変換部を備え、前記データ変換部は、注目画素の階調値と、前記注目画素の周辺に位置する周辺画素における階調の誤差値と、を用いて、補正済階調値を算出する補正部と、前記注目画素の前記階調値と、前記注目画素の前記補正済階調値と、の少なくとも一方を用いて、前記注目画素における前記ドット形成状態と、前記注目画素における階調の誤差値と、を決定する決定部と、を備え、前記決定部は、前記注目画素の前記階調値が第1種の値である場合に、前記注目画素における前記誤差値として、前記補正済階調値と、前記ドットの形成状態に対応付けられた基準階調値と、を用いて、第1種誤差値を決定し、前記注目画素の前記階調値が、前記第1種の値とは異なるとともに少なくともゼロを含む第2種の値である場合に、前記注目画素における前記誤差値として、前記第1種誤差値と同じ方法で導出され得る基準誤差値と、乱数値と、を用いて、第2種誤差値を決定する、画像処理装置。請求項1に記載の画像処理装置であって、前記決定部は、前記基準誤差値と前記乱数値とを用いて候補誤差値を算出し、前記候補誤差値の絶対値が前記乱数値の振幅よりも小さい場合に、前記第2種誤差値として、前記乱数値をそのまま使用する、画像処理装置。請求項1または請求項2に記載の画像処理装置であって、前記決定部は、特定の条件が満たされる場合に、前記第2種誤差値として、前記基準誤差値と前記乱数値との重み付き和を使用する、画像処理装置。請求項1ないし請求項3のいずれかに記載の画像処理装置であって、前記決定部は、前記第2種誤差値に対して前記乱数値が寄与する割合である乱数寄与率であって、前記注目画素の前記階調値に応じて変化する乱数寄与率を用いて、前記第2種誤差値を決定する、画像処理装置。請求項4に記載の画像処理装置であって、前記第2種の値は、前記注目画素の前記階調値が取り得る範囲のうちの一部の範囲である1つ以上の乱数適用範囲のいずれかに含まれる値であり、前記乱数適用範囲は、それぞれ、前記基準階調値が取り得る値を1つ含み、前記乱数寄与率は、前記乱数適用範囲のそれぞれにおいて、ゼロよりも大きく、前記注目画素の前記階調値が、前記乱数適用範囲に含まれる前記基準階調値に近いほど、大きい、画像処理装置。プログラムであって、複数の画素のそれぞれの階調値を表す入力画像データを、ドット形成状態を表す出力画像データに、画素毎に変換するデータ変換機能をコンピュータに実現させるためのプログラムであり、前記データ変換機能は、注目画素の階調値と、前記注目画素の周辺に位置する周辺画素における階調の誤差値と、を用いて、補正済階調値を算出する補正機能と、前記注目画素の前記階調値と、前記注目画素の前記補正済階調値と、の少なくとも一方を用いて、前記注目画素における前記ドット形成状態と、前記注目画素における階調の誤差値と、を決定する決定機能と、を含み、前記決定機能は、前記注目画素の前記階調値が第1種の値である場合に、前記注目画素における前記誤差値として、前記補正済階調値と、前記ドットの形成状態に対応付けられた基準階調値と、を用いて、第1種誤差値を決定する機能と、前記注目画素の前記階調値が、前記第1種の値とは異なるとともに少なくともゼロを含む第2種の値である場合に、前記注目画素における前記誤差値として、前記第1種誤差値と同じ方法で導出され得る基準誤差値と、乱数値と、を用いて、第2種誤差値を決定する機能と、を含む、プログラム。ところが、データ変換処理が、誤差バッファの初期化のような誤差拡散の制御誤差制御と呼ぶを含む場合には、誤差制御が、印刷済み画像に不自然に見える部分を生じさせる可能性があった。例えば、印刷済み画像は、同じような画像を表すべき第1部分と第2部分とを含み得る。ここで、第1部分では、誤差バッファの初期化が行われ、第2部分では誤差バッファの初期化が行われない場合がある。この場合、第1部分と第2部分との一方が、他方と比べて、不自然に見える可能性がある。本発明の主な利点は、印刷済み画像が不自然に見える可能性を低減できる技術を提供することである。本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態又は適用例として実現することが可能である。[適用例1]画像処理装置であって、複数の画素のそれぞれの階調値を表す入力画像データを、ドット形成状態を表す出力画像データに、画素毎に変換するデータ変換部を備え、前記データ変換部は、注目画素の階調値と、前記注目画素の周辺に位置する周辺画素における階調の誤差値と、を用いて、補正済階調値を算出する補正部と、前記注目画素の前記階調値と、前記注目画素の前記補正済階調値と、の少なくとも一方を用いて、前記注目画素における前記ドット形成状態と、前記注目画素における階調の誤差値と、を決定する決定部と、を備え、前記決定部は、前記注目画素の前記階調値が第1種の値である場合に、前記注目画素における前記誤差値として、前記補正済階調値と、前記ドットの形成状態に対応付けられた基準階調値と、を用いて、第1種誤差値を決定し、前記注目画素の前記階調値が、前記第1種の値とは異なるとともに少なくともゼロを含む第2種の値である場合に、前記注目画素における前記誤差値として、前記第1種誤差値と同じ方法で導出され得る基準誤差値と、乱数値と、を用いて、第2種誤差値を決定する、画像処理装置。この構成によれば、階調値がゼロである画素が連続する領域では、注目画素の階調の誤差値が乱数値を用いて決定されるので、印刷された画像内に発生し得る濃度の遅延ドットの遅延を抑制できる。ここで、注目画素の階調の誤差が乱数値のみを用いて決定されると仮定すると、階調値がゼロである画素の周辺の画素階調値がゼロよりも大きい画素においてドットが形成されやすくなるので、印刷された画像が不自然になり得る。しかしながら、上記構成によれば、注目画素の誤差値が、補正済階調値に関係する基準誤差値と、乱数値と、を用いて決定されるので、乱数値の影響を緩和することができる。この結果、上述の濃度の遅延を抑制しつつ、ドットが過度に形成される可能性を低減できる。以上により、印刷済み画像が不自然に見える可能性を低減できる。なお、本発明は、種々の形態で実現することが可能であり、例えば、画像処理方法および画像処理装置、それらの方法または装置の機能を実現するためのコンピュータプログラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。A.第1実施例:A-1.印刷システム:次に、本発明の実施の形態を実施例に基づき説明する。図1は、第1実施例における印刷システム1000の構成を示すブロック図である。印刷システム1000は、パーソナルコンピュータ100と、プリンタ200とを含んでいる。パーソナルコンピュータ100は、CPU110と、ROMとRAMとを含む内部記憶装置120と、ハードディスクドライブなどの外部記憶装置130と、プリンタ200などの外部装置との通信のための通信インタフェース140と、タッチパネルなどの操作部150と、液晶ディスプレイなどの表示部160と、を備えている。通信インタフェース140は、例えば、いわゆるUSBインタフェース、または、IEEE802.3に準拠したインタフェースであってよい。内部記憶装置120には、後述する誤差バッファB10が、設けられている。外部記憶装置130は、種々のプログラムを格納している。格納されたプログラム130Pは、アプリケーションM10の機能のためのプログラムアプリケーションプログラムと、プリンタドライバM20の機能のためのプログラムと、を含む。これらの機能は、CPU110が各コンピュータプログラムを実行することによって、実現される。アプリケーションM10は、例えば、文書作成、または、画像生成などの画像データを生成する機能を有する。プリンタドライバM20は、アプリケーションM10から印刷対象の画像を表す画像データを取得し、取得した画像データを用いて印刷データを生成し、生成した印刷データをプリンタ200に供給する。プリンタドライバM20は、入力画像処理モジュールM22と、データ変換モジュールM24と、印刷データ生成モジュールM26と、を含んでいる。データ変換モジュールM24は、補正モジュールM242と、決定モジュールM244と、を含む。これらの機能モジュールM22、M24M242、M244、M26の処理については、後述する。プリンタ200は、プリンタ200の全体を制御する制御部210と、印刷を行う印刷機構220と、パーソナルコンピュータ100または図示しないストレージ装置などの外部装置との通信のための通信インタフェース230と、を備えている。通信インタフェース230は、パーソナルコンピュータ100から印刷データを受信可能である。制御部210は、図示しないCPUとメモリとを有する周知のコンピュータである。制御部210のメモリには、プリンタ200を制御するための種々のプログラムが格納されている図示せず。制御部210は、通信インタフェース230から受信した印刷データに従って印刷機構220を制御することによって、印刷を実行する。印刷機構220は、着色剤のドットを印刷媒体に形成することによって、印刷を行う。本実施例では、着色剤は、シアンとマゼンタとイエロとブラックの4色のインクである。なお、図1には、データ変換モジュールM24によって実行される処理の概要も示されている。詳細については、後述する。A-2.画像処理:図2は、パーソナルコンピュータ100図1のプリンタドライバM20によって実行される印刷処理のフローチャートである。プリンタドライバM20は、外部からの指示に応じて、この印刷処理を実行する。以下では、プリンタドライバM20は、アプリケーションM10からの指示に応じて、印刷処理を開始することとする。最初のステップS10では、入力画像処理モジュールM22図1は、アプリケーションM10から印刷対象の画像データ受信し、受信した画像データを、ビットマップデータに変換するラスタライズ処理。ビットマップデータに含まれる画素データは、例えば、赤と緑と青との3つの要素の階調値例えば、256階調で画素の色を表すRGB画素データである。また、ビットマップデータの画素密度は、印刷解像度ドットの最高密度と同じである。ステップS20では、入力画像処理モジュールM22は、ビットマップデータに含まれるRGB画素データを、シアンとマゼンタとイエロとブラックとの4つの要素の階調値例えば、256階調で画素の色を表すCMYK画素データに変換する色変換処理。色変換処理は、RGB画素データとCMYK画素データとを対応付けるルックアップテーブルを用いて行われる。続けて、入力画像処理モジュールM22は、色補正処理を行う。色補正処理は、例えば、キャリブレーション処理ステップS30と、インク量調整処理ステップS40と、を含む。キャリブレーション処理は、CMYK画素データの各要素の値の変化に対して、実際に印刷媒体に印刷される色の濃度がリニアに変化するように、CMYK画素データの各要素の値を補正する処理である。インク量調整処理は、印刷に要するインク量が基準量以下になるように、CMYK画素データの各要素の値を調整する処理である。以下、色補正処理後のCMYK画素データを、補正済CMYK画素データとも呼ぶ。ステップS50では、データ変換モジュールM24が、補正済CMYK画素データを含むビットマップデータを、各画素毎のドットの形成状態を表すドットデータに変換するハーフトーン処理。この処理の詳細については、後述する。続けて、印刷データ生成モジュールM26は、ドットデータを印刷データに変換する。この変換の処理は、例えば、インターレース処理ステップS60と、プリンタコマンド変換処理ステップS70とを含む。インターレース処理は、ドットデータにおけるデータの並び順を、プリンタ200に供給される順番に変換する処理である。プリンタコマンド変換処理は、ドットデータにプリンタ制御コードとデータ識別コードとを付加することによって、プリンタ200によって解釈可能な印刷データを生成する処理である。印刷データ生成モジュールM26は、生成した印刷データを、プリンタ200に供給する。プリンタ200は、受信した印刷データに従って、印刷を行う。図3は、図2のステップS50の処理を示すフローチャートである。図3の処理は、1つの画素注目画素と呼ぶのドット形成状態を、誤差拡散を用いて決定する以下誤差拡散処理とも呼ぶ。図3の処理は、画像を表す複数の画素毎に、実行される。本実施例では、複数の画素は、X方向とY方向とにマトリクス状に並んで配置されている。データ変換モジュールM24は、X方向に沿って1画素ずつ処理を実行することによって、X方向に延びる1つの画素ラインの処理を実行する。1つの画素ラインの処理の完了に応じて、データ変換モジュールM24は、Y方向に隣接する別の画素ラインの処理を実行する。この結果、処理対象の画素ラインは、Y方向に向かって1ラインずつ進行する。なお、図3の処理は、印刷に用いられるインクの色毎に、実行される。また、画素の処理順は、他の順であってよい。最初のステップS200では、補正モジュールM242図1は、誤差マトリクスMTXと、誤差バッファB10とを用いて、誤差値Etを取得する。後述するように、誤差バッファB10は、各画素における濃度誤差階調の誤差値を格納している。誤差マトリクスMTXは、注目画素の周辺の所定の相対位置に配置された画素に、ゼロより大きい重みを割り当てている図1の誤差マトリクスMTXでは、記号が注目画素を表し、周辺の画素に重みa~mが割り当てられている。重みa~mの合計は1である。補正モジュールM242は、この重みに従って、周辺の画素の誤差値の重み付き和を、注目画素の誤差値Etとして算出する。なお、誤差マトリクスMTXは、予め、データ変換モジュールM24に組み込まれている。例えば、CPU110補正モジュールM242は、内部記憶装置120に展開された誤差マトリクスMTXを参照して、処理を進行する。次のステップS205では、補正モジュールM242は、誤差値Etと、注目画素の階調値以下、入力階調値Vinとも呼ぶとの和を、補正済階調値V1として算出する。次のステップS210では、決定モジュールM244は、入力階調値Vinがゼロであるか否かを判定する。入力階調値Vinがゼロでは無い場合には、ステップS215で、決定モジュールM244は、補正済階調値V1を閾値Vthとを比較して、注目画素のドット形成状態を決定する。本実施例では、ドット形成状態は、ドット有りとドット無しとの2つの状態のいずれかである。補正済階調値V1が閾値Vth以下の場合には、ドット形成状態がドット無しに決定されS220、補正済階調値V1が閾値Vthより大きい場合には、ドット形成状態がドット有りに決定されるS225。なお、本実施例では、閾値Vthは、中間の階調値127である。次のステップS230では、決定モジュールM244は、決定されたドットの形成状態に対応付けられた階調値基準階調値Vbと呼ぶを取得する。本実施例では、ドット無しには、ゼロの基準階調値Vbが対応付けられ、ドット有りには、255の基準階調値Vbが対応付けられている。このような対応関係は、基準階調値テーブルとして、決定モジュールM244に組み込まれている。次のステップS235では、決定モジュールM244は、第1誤差値E1を算出する。第1誤差値E1は、以下の式で表される。第1誤差値E1=補正済階調値V1-基準階調値Vb次のステップS240では、決定モジュールM244は、誤差バッファB10に、注目画素の誤差値として、第1誤差値E1を登録する以下、誤差バッファB10に登録された誤差値を登録誤差値とも呼ぶ。以上のように、入力階調値Vinがゼロでは無い場合には、注目画素のドット形成状態が、補正済階調値V1に従って、すなわち、周辺の画素で生じた誤差値を考慮して、決定される。この結果、画像の階調を自然に表現するドットの形成状態ドットのパターンを、実現することができる。入力階調値Vinがゼロである場合にはS210:Yes、決定モジュールM244は、ドット形成状態をドット無しに決定しステップS250、基準階調値Vbゼロを取得するステップS255。この結果、入力階調値Vinがゼロである画像領域を、適切に表現することができる。。次のステップS260では、決定モジュールM244は、基準誤差値を算出する。基準誤差値は、上述した第1誤差値E1と同じ演算式で算出される基準誤差値E1とも呼ぶ。次のステップS265では、決定モジュールM244は、第2誤差値E2を算出する。第2誤差値E2は、以下の式で表される。第2誤差値E2=0.9基準誤差値E10.1乱数RND記号は乗算を示す。以下、同様このように、第2誤差値E2は、基準誤差値E1と乱数RNDとの重み付き和である。決定モジュールM244は、画素毎に乱数RNDを生成する。本実施例では、乱数RNDは、-64から64までの範囲内の値であり、乱数RNDの平均値はゼロである。本実施例では、決定モジュールM244は、ステップS265の次に、ステップS285を実行する。なお、図3には、ステップS280、S290を含む処理振幅比較処理PAとも呼ぶが示されているが、この振幅比較処理PAは、第1実施例では実行されず、第2実施例で実行される。ステップS285では、決定モジュールM244は、誤差バッファB10に、注目画素の誤差として、第2誤差値E2を登録する。データ変換モジュールM24図1は、図3の処理を繰り返すことによって、全ての画素のドット形成状態を決定する。そして、データ変換モジュールM24は、ドット形成状態を表すドットデータを生成し、ドットデータを印刷データ生成モジュールM26に供給する。A-2-1.ドットの遅延について:次に、入力階調値Vinがゼロである場合に、注目画素の誤差値が、基準誤差値E1と乱数RNDとの重み付き和第2誤差値E2である理由について説明する。図4はドットの遅延を示す概略図である。図4Aは、誤差拡散処理の対象のビットマップデータによって表されるビットマップ画像PIを示している。このビットマップ画像PI中には、第1画像領域IA1、空白領域BA、第2画像領域IA2が、Y方向に沿ってこの順番に並んでいる。各画像領域IA1、IA2は、それぞれ、画像を表すドットが形成されるべき領域例えば、写真を表す領域である。空白領域BAは、ドットが形成されるべきではない領域最も明るい白い領域入力階調値Vin=ゼロである。データ変換モジュールM24図1は、領域IA1、BA、IA2の順番に、誤差拡散処理図3を実行する。この結果、第1画像領域IA1で生じた誤差値は、空白領域BAを伝搬して、第2画像領域IA2に影響を及ぼし得る。図4Aの誤差値Errは、第1画像領域IA1における最下の画素Y方向側の端の画素の誤差値を、示している。第1画像領域IA1では、ドットが形成されることによって、負の誤差値が生じる。誤差値Errは、このような負の誤差を示している。図4Aの右部分の表は、空白領域BAを伝搬する誤差の変化を示している。表中のライン番号LNは、第1画像領域IA1と空白領域BAとの境界からY方向に向かって数えた画素ラインX方向に延びる画素ラインの番号である。番号LN=1は、第1画像領域IA1と接する画素ラインを示す。第2誤差値E2は、その画素ラインの画素で生じ得る第2誤差値E2の概要を示す。誤差割合Reは、第2誤差値E2における誤差値Errの割合を示す。乱数割合Rrは、第2誤差値E2における乱数RNDの割合を示す。空白領域BAでは、入力階調値Vinがゼロである。注目画素の第2誤差値E2は、基準誤差値E1と乱数RNDとの重み付き和である図3:S265。ここで、説明を簡単にするために、或る画素で生じた誤差が、Y方向に隣接する画素に、そのまま伝搬すると仮定する。この場合、空白領域BAの1番目の画素ラインライン番号LN=1では、第2誤差値E2は、0.9誤差値Err0.1乱数RNDとなり得る。誤差割合Reは90であり、乱数割合Rrは10である。2番目の画素ラインライン番号LN=2には、1つ目の画素ラインから誤差が伝搬する。第2誤差値E2は、0.9伝搬誤差0.1乱数RNDとなり得る。ここで、伝搬誤差は、1つ目の画素ラインの第2誤差値E2であり、0.9誤差値Err0.1乱数RNDである。これらの結果、2番目の画素ラインでは、誤差割合Reは、81であり、乱数割合Rrは19である。3番目以降の画素ラインにおいても、同様に、第2誤差値E2は、1つ前の画素ラインの第2誤差値E2生成誤差DEと、乱数RNDとの重み付き和である。この結果、空白領域BAにおいて、画素ラインが第1画像領域IA1から遠いほど、誤差割合Reが小さくなり、乱数割合Rrが大きくなる。例えば、22番目以降の画素ラインでは、誤差割合Reが10よりも小さくなり、乱数割合Rrが90を超える。このように、空白領域BAが大きいほど、空白領域BAを伝搬した誤差値における乱数RNDの割合が高くなる。図4Bは、第2画像領域IA2におけるドットdtの形成状態を示す概略図である。ここでは、第1画像領域IA1と第2画像領域IA2との間が、22ライン以上離れていると仮定する。この場合、空白領域BAから第2画像領域IA2に伝搬する誤差における乱数RNDの割合が90以上である。第2画像領域IA2では、第1画像領域IA1で生じた誤差値特に負の誤差値の影響が乱数RNDによって緩和される。従って、第1画像領域IA1の影響が抑制されて、適切にドットdtが形成される。図4Cは、ドット形成状態の比較例を示す概略図である。この比較例では、入力階調値Vinがゼロである場合にも、入力階調値Vinがゼロでは無い場合と同じ処理図3:S215~S240が行われる。空白領域BAでは、入力階調値Vinがゼロであるので、補正済階調値V1が負誤差値Errとなる。また、補正済階調値V1が閾値Vthよりも小さいので、ドットは形成されない。注目画素で生じる第1誤差値E1は、注目画素に伝搬した誤差誤差値Errと同じである。これらの結果、比較例では、第1画像領域IA1で生じた誤差値Errは、そのまま、第2画像領域IA2に伝搬する。この結果、第2画像領域IA2の-Y方向側の端部IA2uでは、負の誤差値Errに起因して補正済階調値V1が閾値Vthを超えることができないので、ドットが形成されない。第2画像領域IA2の画像の濃度が薄い場合には、ドットの形成されない領域が広くなるドットの形成が遅れる。本実施例では、第2画像領域IA2の濃度が薄い場合であっても、図4Bに示すように、乱数RNDによって、端部におけるドット形成の遅れ濃度の遅延とも言えるを抑制できる。以上、誤差の伝搬を簡略化して説明したが、図1の誤差マトリクスMTXに従って誤差が拡散される場合も、同様である。なお、現実の空白領域BAの大きさは、以下のような大きさであってよい。例えば、プリンタ200の印刷解像度が300dpidotperinchである場合には、22ライン分の距離は、00733inch186mmである。一般には、2つの画像を1枚の用紙に印刷する場合には、2つの画像の間に、数mm~数cmの空白領域BAが設けられる場合が多い。従って、本実施例は、一方の画像で生じた誤差値が、他方の画像に影響を及ぼす可能性を、効果的に低減できる。A-2-2.濃度のムラについて:図5は、濃度のムラを示す概略図である。図5Aは、誤差拡散処理の対象のビットマップデータによって表されるビットマップ画像PIbを示している。このビットマップ画像PIbは、透かし絵のように薄い第1画像M1と、更に薄いベタ画像M2第2画像M2と、を表している第1画像M1の一部は、第2画像M2の一部と重なっている。このようなビットマップ画像PIbは、例えば、アプリケーションM10図1が、薄いベタ画像を表す下層レイヤに、透かし絵を表す上層レイヤを重ねることによって、画像画像データを生成した場合に、処理され得る。図5Aの右部分には、画像の一部分の拡大図Fが示されている。拡大図Fの左部分は、第1画像M1を表し、拡大図Fの右部分は、2つの画像M1、M2が重なった部分重畳画像M3と呼ぶを表している。拡大図F中の小さい四角は、画素Pxを表している。画素Pxに記載された符号Vp、Vq、0ゼロは、階調値を表している。画素Pxに付されたハッチングは、濃さ階調値を示している。第1画像M1を表す領域では、階調値が第1値Vpである画素のブロックと、階調値がゼロである画素のブロックとが、X方向およびY方向に交互に並んでいる以下、階調値がゼロである画素をゼロ画素とも呼ぶ。このように、格子状に配置された画素ブロック階調値がゼロよりも大きい画素ブロックが、透かし絵のように薄い第1画像M1を表現している。第2画像M2は、階調値が第2値Vqであるベタ画像である。重畳画像M3を表す領域では、階調値が第1値Vpである画素ブロックと、階調値が第2値Vqである画素のブロックとが、X方向およびY方向に交互に並んでいる。ここで、アプリケーションM10は、下層レイヤ例えば、第2画像M2に上層レイヤ例えば、第1画像M1を重ねる際に、上層レイヤ内の白を表す画素については、下層レイヤの階調値をそのまま使用し、上層レイヤ内の白ではない色を表す画素については、下層レイヤの階調値の代わりに上層レイヤの階調値を使用したこととしている。この場合、重畳画像M3の領域では、第1画像M1内のゼロでは無い階調値Vpが、第2画像M2の階調値Vqを上書きする。第1画像M1内の階調値がゼロである画素位置においては、第2画像M2の階調値Vqが維持される。なお、第2値Vqは、第1値Vpと比べて十分に小さい。また、いずれの値Vp、Vqも、閾値Vthよりも小さい。また、図5Aの例では、1つの画素ブロックは、X方向に2画素、Y方向に2画素の4画素で構成されている。図5Bは、実施例におけるドットdtの形成状態を示す概略図である。図5Bの右部分には、拡大図が示されている。図示するように、第1画像M1を表す領域と、重畳画像M3を表す領域との間のドットdtの密度の差は小さい。従って、ドットdtのパターンが不自然に見える可能性は低い詳細は後述。図5Cは、比較例におけるドットdtの形成状態を示す概略図である。この比較例では、入力階調値Vin図3がゼロである場合に、基準誤差値E1と乱数RNDとの重み付き和第2誤差値E2の代わりに、乱数RNDがそのまま誤差値として登録される。この比較例では、第1画像M1を表す領域では、重畳画像M3を表す領域と比べて、ドットdtの密度が高い。このようなドット密度濃度のムラは、不自然に見える可能性が高い。図6は、ドット密度濃度のムラを説明する説明図である。図6A、図6Bには、左から順番に、第1画像M1の拡大図F1と、重畳画像M3の拡大図F3と、図5Aと同じ拡大図Fにおけるドットdtの形成状態と、が示されている。図6Aは、実施例の誤差伝搬とドット形成を示している。図の中央の拡大図F3は、階調値が第1値Vpである画素Px3にドットが形成された場合の、その画素Px3で生じた誤差ER3の拡散を示している。誤差ER3は、階調値が第2値Vqである画素を介して、階調値が第1値Vpである他の画素に伝搬する。この誤差の伝搬は、図3のステップS215~S240に従って、行われる。重畳画像M3では、誤差ER3に適した密度で、ドットが形成される図の右の拡大図F参照。図の左の拡大図F1は、階調値が第1値Vpである画素Px1にドットが形成された場合の、その画素Px1で生じた誤差ER1の伝搬を示している。誤差ER1は、ゼロ画素を介して、階調値が第1値Vpである別の画素に伝搬する。ここで、図3で説明したように、ゼロ画素では、基準誤差値E1と乱数RNDとの重み付き和第2誤差値E2が、その画素の誤差値として登録される。従って、階調値が第1値Vpである別の画素は、誤差ER1と乱数RNDとの混合値を、誤差として取得する。ただし、図4で説明したように、階調値がゼロである領域が小さい場合には、誤差における乱数割合Rrが小さい。従って、第1画像M1では、乱数RNDの影響が過剰に大きくならずに、誤差拡散処理が進行する。この結果、第1画像M1では、誤差ER1に適した密度で、ドットが形成される図の右の拡大図F参照。以上のように、実施例では、第1画像M1を表す領域と、重畳画像M3を表す領域との間のドットdtの密度の差が小さい。図6Bは、図5Cの比較例における誤差伝搬とドット形成を示している。図の中央の拡大図F3における誤差伝搬とドット形成とは、図6Aの実施例と同様である。図の左の拡大図F1は、図6Aの拡大図F1と同様に、画素Px1で生じた誤差ER1の伝搬を示している。比較例では、入力階調値Vinがゼロである場合に、乱数RNDがそのまま誤差値として登録される。従って、ゼロ画素に隣接する画素は、画素Px1で生じた誤差ER1とは無関係に、乱数RNDを誤差として取得し得る。このように、ゼロ画素に隣接する画素では、負の誤差誤差ER1の影響が小さいので、ドットが形成される可能性が実施例と比べて高くなる。ゼロ画素に、階調値がゼロよりも大きい画素が隣接するパターンが、狭い領域内に多数存在する高密度に存在する場合には、その領域内におけるドットの密度が過度に高くなり得る。この結果、第1画像M1を表す領域では、重畳画像M3を表す領域と比べて、ドットdtの密度が高くなる拡大図F参照。次に、比較例で濃度ムラが生じ、実施例で濃度ムラが抑制されることを、計算例で示す。図7は、比較例における、誤差伝搬とドット形成との計算例を示す説明図である。図7Aは、第1画像M1の計算例を示し、図7Bは、重畳画像M3の計算例を示す。これらの図は、Y方向に複数の画素が並んで形成された画素ラインの計算例を示している。図中には、入力階調値Vinと、補正済階調値V1と、ドット形成状態DSと、生成された乱数RNDと、新たに生じた誤差ERと、が示されている重畳画像M3では乱数RNDが省略されている。ここで、第1値Vpは90であり、第2値Vqは5であることとしている。また、説明を簡単にするために、或る画素で生じた誤差が、Y方向に隣接する画素に、そのまま伝搬すると仮定している。例えば、図7Bに示すように、上から2番目の画素Pxbの補正済階調値V1は、その画素Pxbの入力階調値Vin90と、1つ上の画素Pxaで生じた誤差ER90との、和180である。図7Bに示すように、重畳画像M3では、画素を上から下にY方向に辿ると、誤差ERに入力階調値Vinが蓄積して、誤差ERすなわち、補正済階調値V1が徐々に大きくなる。そして、補正済階調値V1が閾値Vth127を超えることによって、ドットdtが形成されて、誤差ERが負値になる。このような変化が、繰り返される。一方、図7Aに示す第1画像M1では、ゼロ画素において、乱数RNDが誤差ERをリセットする。従って、ゼロ画素の周辺下流側の画素では、入力階調値Vinの蓄積が無くても、乱数RNDの影響によって、補正済階調値V1が閾値Vthを超え得る。このように、ゼロ画素の周辺では、ドットdtが形成され易い。図7Aの例では、図7Bの例と比べて、ゼロ画素が維持されているにも拘わらずに、ドットdtの総数は、2つ多い図7Aでは7個、図7Bでは5個。図8は、実施例における、誤差伝搬とドット形成との計算例を示す説明図である。図8Aは、図7Aと同じ第1画像M1の計算例を示し、図8Bは、図7Bと同じ重畳画像M3の計算例を示す。重畳画像M3の計算例は、比較例の計算例と同じである。第1画像M1では、比較例と同じ乱数RNDが利用されている。しかし、実施例では、比較例とは異なり、ゼロ画素の周辺で、乱数RNDに起因するドットdt形成が抑制されている。これは、図3S265で説明したように、誤差値に対する乱数の割合が10に抑制されているからである。この結果、図8Aでのドットdtの総数5は、図8Bでのドットdtの総数5と、同じである。このように、実施例では、階調値がゼロの画素と階調値がゼロよりも大きい画素とが並ぶパターンが、狭い領域内で繰り返された場合であっても、その領域におけるドットの密度が高くなることを抑制できる。以上のように、決定モジュールM244図1は、入力階調値Vin図3がゼロである場合には、乱数RNDを用いて、注目画素の誤差値第2誤差値E2を決定する。従って、図4Cに示すような濃度の遅延ドット出現の遅延を抑制することができる。また、決定モジュールM244は、補正済階調値V1に関係する基準誤差値E1と、乱数RNDとを用いて、誤差値第2誤差値E2を決定するので、乱数RNDの影響を緩和できる。従って、濃度の遅延を抑制しつつ、ゼロ画素の周辺の画素においてドットが過度に形成される可能性を低減できる例えば、図5Cに示すような濃度のムラドット密度のムラを抑制できる。以上により、印刷された画像が不自然に見える可能性を低減できる。特に、決定モジュールM244は、入力階調値Vinがゼロである場合には、基準誤差値E1と乱数RNDとの重み付き和を、注目画素の誤差値として決定する図3:S265、S285。この結果、乱数RNDを最終的な誤差値第2誤差値E2に反映させることができるので、図4Cのような濃度の遅延を適切に抑制できる。また、基準誤差値E1を最終的な誤差値に反映させることができるので、図5Cのようにドットが過度に形成される可能性を適切に低減できる。また、図4Aに示すように、空白領域ゼロ画素の連続する領域が大きい場合には、空白領域を伝搬した誤差値における乱数割合Rrが大きくなり、空白領域が小さい場合には、空白領域を伝搬した誤差値に対する乱数割合Rrが小さくなる。この結果、本実施例は、大きな空白領域の近傍の濃度遅延と、小さな空白領域の近傍の過剰なドット形成と、のそれぞれを、抑制できる。また、本実施例は、空白領域の大きさを判定する処理を実行しなくても、空白領域の大きさに応じて乱数割合Rrを調整できる。なお、本実施例においては、ゼロ以外の入力階調値Vinの全体が、本発明における第1種の値の例であり、ゼロが第2種の値の例である。また、第1誤差値E1が第1種誤差値の例であり、第2誤差値E2が第2種誤差値の例である。また、入力階調値Vinが第2種の値ゼロであることが、基準誤差値E1と乱数RNDとの重み付き和第2誤差値E2を第2種誤差値として使用するための特定の条件の例である。B.第2実施例:図9は、第2実施例のドット形成の説明図である。第1実施例と第2実施例との間の差異は、第2実施例では、図3の振幅比較処理PAS280、S290が有効になる点だけである。他の処理の内容と、印刷システム1000の構成は、第1実施例と同じである。図3に示すように、第2実施例では、決定モジュールM244は、ステップS265の次のステップS280で、第2誤差値E2の絶対値が、乱数RNDの振幅Arndよりも小さいか否かを判定する。乱数RNDの振幅Arndは、乱数RNDの変動幅の半分を意味している。本実施例では、乱数RNDが-64から64までの範囲内で変動するので、振幅Arndは、64である。第2誤差値E2の絶対値が振幅Arnd以上である場合には、決定モジュールM244は、第1実施例と同様に、ステップS285を実行する。第2誤差値E2の絶対値が振幅Arnd未満である場合には、決定モジュールM244は、ステップS290で、第2誤差値E2の算出に使用した乱数RNDを、そのまま、注目画素の誤差として、誤差バッファB10に登録する。このように、第2誤差値E2の絶対値が小さい場合に、第2誤差値E2の代わりに乱数RNDを誤差として登録する理由は、ゼロ画素が連続する領域において誤差値が均一になることを抑制するためである。誤差値の均一性分散と、ドットパターンとの関係について説明する。図9Aは、図4Aと同じビットマップ画像PIを示している。図9Aの右部分のグラフは、Y方向の画素位置と、登録誤差値の分散統計学の分散と、の関係を示している。登録誤差値の分散は、X方向に延びる1本の画素ラインにおける、登録誤差値の分散を示している。グラフ中の白抜きの菱形は、振幅比較処理PAを有効にした場合の分散を示し第1分散Vr1と呼ぶ、黒丸は振幅比較処理PAを無効にした場合の分散を示している第2分散Vr2と呼ぶ。第1画像領域IA1では、入力階調値Vinの変化とドット形成状態とに応じて誤差値が分散する。第1画像領域IA1内では、各画素の階調値がゼロよりも大きいので、第1分散Vr1と第2分散Vr2とは、同じである。空白領域BAにおいては、図4で説明したように、第1画像領域IA1で生じた誤差が、1よりも小さい係数ここでは、0.9によって徐々に減少しながら、Y方向に伝搬する。従って、画素ラインの位置をY方向に辿ると、図3のステップS265で使用される第2誤差値E2の絶対値は、徐々に小さくなる図示省略。この結果、第2実施例では、画素ラインの位置をY方向に辿ると、ステップS285の代わりにステップS290が実行される画素の割合が徐々に高くなる。また、空白領域BAにおいては、第1画像領域IA1で生じた誤差は、誤差マトリクスMTX図1に従って平滑化されながら、Y方向に伝搬する。従って、画素ラインの位置をY方向に辿ると、登録誤差値の分散は徐々に小さくなる図9A。ただし、空白領域BAでは、登録誤差値は、新たに追加された乱数RNDの成分を含む図3:S265、S290。従って、第1分散Vr1と第2分散Vr2とのそれぞれには、新たに追加された乱数RNDの成分の分散が残る。振幅比較処理PAが有効な第2実施例では、乱数RNDがそのまま誤差値として登録されるので図3:S290、第1分散Vr1には、乱数RNDの分散Vrndが残る。振幅比較処理PA図3が省略される場合には、0.1乱数RNDが新たに誤差値に追加されるので図3:S265、第2分散Vr2には、乱数RNDの分散Vrndの0.1倍の値Vsrndが残るVsrnd<Vrnd。図9Bは、第2画像領域IA2における-Y方向側の端の画素ライン端画素ラインFLと呼ぶにおけるドット形成状態DSbと、端画素ラインFLにおける補正済階調値V1の変化を表すグラフと、を示している。ドット形成状態DSbと、グラフとにおいて、白抜きの菱形は、振幅比較処理PAが有効である本実施例を示し、黒丸は、振幅比較処理PAを無効にした場合を示す。端画素ラインFL上では、誤差拡散処理がX方向に向かって進行する。従って、画素をX方向に辿ると、誤差に画素の階調値が蓄積して、補正済階調値V1が徐々に大きくなる。そして、補正済階調値V1が閾値Vthを超えることによって、ドットdt1、dt2が形成されて、誤差値、すなわち、補正済階調値V1が小さくなる。このような変化が繰り返される。ここで、振幅比較処理PA図3が無効である場合には、端画素ラインFLの-Y方向側に隣接する画素ラインにおいて、登録誤差値の分散が小さい図9A:第2分散Vr2。すなわち、端画素ラインFL上の画素位置によらずに、空白領域BAから端画素ラインFLの画素に伝搬する誤差は、おおよそ均一である。従って、第2画像領域IA2がおおよそ均一な薄いベタ画像を表している場合には、画素位置の変化に対する補正済階調値V1第2補正済階調値V12の変化は、おおよそ同じパターンを繰り返す図9B。この結果、形成されるドットdt2は、おおよそ、等間隔に並ぶ。この結果、第2画像領域IA2の端部において、おおよそ等間隔に配置されたドットが、不自然に目立つ可能性がある例えば、ドットがライン状に見える。本実施例では、端画素ラインFLの上に隣接する-Y方向側の画素ラインにおいて、登録誤差値の分散が大きい図9A:第1分散Vr1。従って、第2画像領域IA2がおおよそ均一な薄いベタ画像を表している場合であっても、画素位置の変化に対する補正済階調値V1第1補正済階調値V11の変化のパターンは、画素位置によって異なる図9B。この結果、端画素ラインFLにおいて、ドットdt1が等間隔に並ぶことが抑制され、ドットdt1は、不規則なパターンに見えるように形成される。以上のように、本実施例では、決定モジュールM244図1は、第2誤差値E2の絶対値が乱数RNDの振幅よりも小さい場合には、注目画素の誤差値として、乱数RNDをそのまま使用する図3:振幅比較処理PA。従って、決定モジュールM244は、誤差値を適切に分散させることができる。この結果、印刷された画像の端を表現するドットがラインのように見える可能性を低減できる。以上により、画像が不自然に見える可能性を低減できる。また、本実施例では、決定モジュールM244は、誤差値の分散を算出せずに、第2誤差値E2の絶対値と乱数RNDの振幅Arndとの比較によって、第2誤差値E2と乱数RNDとの間の切り替えを行う。この結果、誤差拡散処理に要する時間が長くなる可能性を低減できる。また、誤差拡散処理に要するメモリ容量が多くなる可能性を低減できる。ただし、誤差値の分散の算出結果に従って、上記切り替えを行ってよい。また、第2実施例では、振幅比較処理PAを有効にする点以外の処理が、第1実施例と同じであるので、第2実施例は、第1実施例と同じ種々の利点を有する。なお、本実施例では、図3のステップS285で登録される第2誤差値E2と、ステップS290で登録される乱数RNDとが、本発明における第2種誤差値の例である。また、ステップS280で振幅Arndと比較される第2誤差値E2は候補誤差値の例でもある。また、入力階調値Vinが第2種の値ゼロであり、かつ、第2誤差値E2の絶対値が乱数RNDの振幅Arnd以上であることが、基準誤差値E1と乱数RNDとの重み付き和第2誤差値E2を第2種誤差値として使用するための特定の条件の例である。C.第3実施例:図10は、図2のステップS50の処理の別の実施例を示すフローチャートである。本実施例では、登録誤差値に対して乱数RNDが寄与する割合が、入力階調値Vinに応じて変化する。図2の他の処理と、印刷システム1000の構成とは、上記各実施例と同じである。最初のステップS300、S305は、図3のステップS200、S205と、それぞれ同じである。次のステップS310では、決定モジュールM244は、入力階調値Vinがゼロまたは255最大値であるか否かを判定する。入力階調値Vinがゼロと255とのいずれでもない場合には、決定モジュールM244は、ステップS315~S330の処理を実行する。これらのステップS315~S330は、図3のステップS215~S230と、それぞれ同じである。入力階調値Vinがゼロまたは255である場合には、決定モジュールM244は、ステップS340~S355の処理を実行する。入力階調値Vinがゼロである場合には、ドット形成状態がドット無しに決定されるS340、S345。入力階調値Vinが255である場合には、ドット形成状態がドット有りに決定されるS340、S350。決定モジュールM244は、ステップS355で、ドット形成状態に応じた基準階調値Vbを取得する。次のステップS360では、決定モジュールM244は、基準誤差値E1を算出するこの処理は、図3のステップS260と同じである。次のステップS365では、決定モジュールM244は、乱数重みC初期化割合Cとも呼ぶを取得する。図3のステップS265では、乱数RNDの重みが0.1に固定されているが、本実施例では、乱数重みCが入力階調値Vinに応じて変化する。乱数重みCと入力階調値Vinとの対応関係は、予めデータ変換モジュールM24に組み込まれている。例えば、CPU110決定モジュールM244は、内部記憶装置120に展開された対応関係例えば、テーブルを参照して、乱数重みCを取得する。図11は、入力階調値Vinと乱数重みCとの関係を示すグラフである。入力階調値Vinがゼロから第1値Veに至るまでの第1範囲R1では、乱数重みCは、ゼロよりも大きい。また、入力階調値Vinの増加に伴って、乱数重みCは、最大値ここでは、0.1からゼロまで複数の段階を経て減少する。入力階調値Vinがゼロの場合に乱数重みCが最大である。入力階調値Vinが第2値Vfから255に至るまでの第2範囲R2では、乱数重みCは、ゼロよりも大きい。また、入力階調値Vinの増加に伴って、乱数重みCは、ゼロから最大値ここでは、0.1まで、複数の段階を経て増加する。入力階調値Vinが255の場合に乱数重みCが最大である。第1値Veと第2値Vfとは、印刷画像の画質に応じて実験的に決定されてよく、例えば、それぞれ、10、245であってよい。入力階調値Vinが第1値Veから第2値Vfに至る第3範囲R3では、乱数重みCはゼロである。このように、乱数重みCが入力階調値Vinの変化に応じて変化する理由については、後述する。図10の次のステップS370では、決定モジュールM244図1は、第3誤差値E3を算出する。第3誤差値E3は、以下の式で表される。第3誤差値E3=1-C基準誤差値E1C乱数RNDこのように、第3誤差値E3は、基準誤差値E1と乱数RNDとの重み付き和である。重みは乱数重みCによって表されている。乱数重みCがゼロである場合には、第3誤差値E3は、基準誤差値E1と同じである。次に、決定モジュールM244は、ステップS380、S385、S390の処理によって、第3誤差値E3または乱数RNDを、注目画素の誤差として、誤差バッファB10に登録する。これらのステップS380、S385、S390は、図3のステップS280、S285、S290の第2誤差値E2を第3誤差値E3に置換して得られるステップと、それぞれ同じである。以上のように、第3実施例では、入力階調値Vinがゼロである場合には、乱数重みCが0.1であり、基準誤差値E1の重みが0.9である図10のS370、図11。従って、図3、図9に示す第2実施例と同様に、誤差拡散処理が進行する。この結果、第3実施例は、第2実施例と同様の種々の利点を有する。また、図11に示すように、入力階調値Vinがゼロの近傍第1範囲R1にある場合には、乱数重みCが入力階調値Vinに応じて変化する。従って、第3誤差値E3に対する乱数RNDの影響の大きさを入力階調値Vinに応じて調整することができる。この結果、乱数RNDの影響を受けるドット形成状態を、入力階調値Vinに適した状態に決定することができる。また、本実施例では、第1範囲R1において、入力階調値Vinが基準階調値Vbゼロに近いほど乱数重みCが高い。従って、入力階調値Vinが基準階調値Vbゼロから徐々に変化する大きくなるグラデーション領域を印刷する場合に、入力階調値Vinの増加に伴って乱数重みCが単調に減少する。これにより、入力階調値Vinの増加に伴って乱数重みCが減少と増加とを繰り返す場合と比べて、グラデーション上でドット密度が不自然に変化する可能性を低減できる。特に、本実施例では、乱数重みCは、入力階調値Vinの増加に伴って複数の段階を経て変化減少する。従って、上記グラデーション領域を印刷する場合に、乱数重みCが最大値である部分と乱数重みCがゼロである部分との間で、ドット形成状態が急激に変化する可能性を低減できる。この結果、印刷されたグラデーション領域が不自然に見える可能性を低減できる。また、入力階調値Vinが255の場合には、入力階調値Vinが閾値Vthよりも大きいので、通常は、ドット形成状態はドット有りに決定される。このような画素が連続する領域以下、最濃ベタ領域と呼ぶは、図4で説明した空白領域BAと同様に、或る画像領域で生じた誤差値を、他の画像領域に伝搬し得る。従って、最濃ベタ領域も、空白領域BAと同様に、濃度の遅延を引き起こし得る。また、最濃ベタ領域において乱数RNDを誤差値として使用する場合には、小さな最濃ベタ領域の近傍で、過剰なドット形成が生じ得る。このような過剰なドット形成は、図5Cの比較例のような濃度のムラを引き起こし得る。そこで、本実施例では、最濃ベタ領域より具体的には、図11の第2範囲R2においても、空白領域BAより具体的には、図11の第1範囲R1と同様に、乱数重みCがゼロよりも大きい。この結果、最濃ベタ領域の近傍で生じ得る不具合を、空白領域BAの近傍で生じ得る不具合と同様に、抑制できる。また、第2範囲R2においても、乱数重みCが入力階調値Vinに応じて変化するので、ドット形成状態を入力階調値Vinに適した状態に決定することができる。なお、本実施例では、図11の第3範囲R3の値の全体が、本発明における第1種の値の例であり、第1範囲R1の値と第2範囲R2の値との全体が第2種の値の例である。また、第1範囲R1と第2範囲R2のそれぞれが乱数適用範囲の例である。また、乱数重みCがゼロの場合に登録される第3誤差値E3=基準誤差値E1が第1種誤差値の例であり、乱数重みCがゼロよりも大きい場合に登録される第3誤差値E3が第2種誤差値の例である。また、乱数重みCがゼロよりも大きい場合に、図10のステップS390で登録される乱数RNDも第2種誤差値の例である。また、ステップS380で振幅Arndと比較される第3誤差値E3は候補誤差値の例でもある。また、入力階調値Vinが第2種の値であり、かつ、第3誤差値E3の絶対値が乱数RNDの振幅Arnd以上であることが、基準誤差値E1と乱数RNDとの重み付き和第3誤差値E3を第2種誤差値として使用するための特定の条件の例である。D.第4実施例:図12は、図10のフローで使用される乱数重みCの別の実施例を示す説明図である。第4実施例では、1つの画素のドット形成状態は、ドット無しと小ドット有りと中ドット有りと大ドット有りとの4つの状態のいずれかに決定される。中ドットは小ドットよりも高い濃度階調値を表し、大ドットは中ドットよりも高い濃度階調値を表す。本実施例においても、図10と同様の手順に従って、誤差拡散処理が進行する。ここで、決定モジュールM244図1は、補正済階調値V1と、複数の閾値とを比較することによって、ドット形成状態を決定する。3以上のドット形成状態から1つのドット形成状態を選択する方法は、周知の方法であってよい詳細な説明を省略する。図12の下部分のグラフは、入力階調値Vinとドットの記録率との関係を示す。100のドット記録率は、全画素にドットが記録された状態を意味している。グラフには、小ドットの記録率DR1と、中ドットの記録率DR2と、大ドットの記録率DR3と、が示されている。この記録率は、入力階調値Vinが均一なベタ領域を印刷することによって得られる記録率を示している。入力階調値Vinがゼロから第1基準階調値T1例えば、72に至るまでの第1範囲Raでは、入力階調値Vinの増加に伴って、小ドット記録率DR1が、ゼロから100まで徐々に増加する。入力階調値Vinが第1基準階調値T1から第2基準階調値T2例えば、153に至るまでの第2範囲Rbでは、入力階調値Vinの増加に伴って、小ドット記録率DR1は、100からゼロまで徐々に減少し、この代わりに、中ドット記録率DR2が、ゼロから100まで徐々に増加する。入力階調値Vinが第2基準階調値T2から255に至るまでの第3範囲Rcでは、入力階調値Vinの増加に伴って、中ドット記録率DR2は、100からゼロまで徐々に減少し、この代わりに、大ドット記録率DR3が、0から100まで徐々に増加する。このように、小ドットは、第1基準階調値T1を表し、中ドットは、第2基準階調値T2を表し、大ドットは、255の階調を表す。すなわち、小ドット有りに対応する基準階調値は、第1基準階調値T1であり、中ドット有りに対応する基準階調値は、第2基準階調値T2であり、大ドット有りに対応する基準階調値は、255である。図10のドット形成状態を決定する処理部分DPは、上述の4つのドット形成状態に適応するように修正される。例えば、決定モジュールM244図1は、ステップS310、S340~S355の代わりに、以下のように、ドット形成状態を決定する。1Vin=ゼロの場合、ドット形成状態=ドット無し2Vin=T1の場合、ドット形成状態=小ドット有り3Vin=T2の場合、ドット形成状態=中ドット有り4Vin=255の場合、ドット形成状態=大ドット有りこれら以外の場合には、決定モジュールM244は、例えば、複数の閾値を用いる周知の方法によってドット形成状態を決定してよい。なお、本実施例では、図10の手順の処理部分DP以外のステップは、第3実施例と同じである。図12の上部分のグラフは、乱数重みCと入力階調値Vinとの関係を示す。図11と同じ第1範囲R1と第2範囲R2とに加えて、第1基準階調値T1を含む第3範囲R13と、第2基準階調値T2を含む第4範囲R14においても、乱数重みCはゼロよりも大きい。また、第3範囲R13においては、入力階調値Vinが第1基準階調値T1に近いほど乱数重みCが高い。第4範囲R14においては、入力階調値Vinが第2基準階調値T2に近いほど、乱数重みCが高い。各範囲R13、R14においても、乱数重みCの最大値は0.1であり、入力階調値Vinの変化に伴って、乱数重みCが複数の段階を経て変化する。4つの範囲R1、R2、R13、R14を除いた残りの範囲R15、R16、R17では、乱数重みCはゼロである。次に、図12の第3範囲R13と第4範囲R14とで乱数重みCがゼロよりも大きい理由について説明する。入力階調値Vinが第1基準階調値T1である画素が連続する領域第1基準ベタ領域と呼ぶでは、小ドット記録率DR1が100である。また、入力階調値Vinが第2基準階調値T2である画素が連続する領域第2基準ベタ領域と呼ぶでは、中ドット記録率DR2が100である。このような基準ベタ領域は、図4で説明した空白領域BAと同様に、或る画像領域で生じた誤差値を、他の画像領域に伝搬し得る濃度遅延図4Cが生じ得る。また、そのような基準ベタ領域において、乱数RNDを誤差値として使用する場合には、小さい基準ベタ領域の近傍の過剰なドット形成、すなわち、濃度のムラ図5Cが生じ得る。そこで、本実施例では、基準ベタ領域より具体的には、図12の第3範囲R13と第4範囲R14においても、第1範囲R1および第2範囲R2と同様に、乱数重みCがゼロよりも大きい。この結果、基準ベタ領域の近傍で生じ得る不具合を抑制できる。なお、本実施例では、図12の3つの範囲R15,R16R17の値の全体が、本発明における第1種の値の例であり、4つの範囲R1,R2,R13,R14の値の全体が第2種の値の例である。また、4つの範囲R1,R2,R13,R14のそれぞれが乱数適用範囲の例である。E.変形例:なお、この発明は上記の実施例や実施形態に限られるものではなく、その要旨を逸脱しない範囲において種々の態様において実施することが可能であり、例えば次のような変形も可能である。1上記各実施例において、第2誤差値E2図3および第3誤差値E3図10の算出に使用される乱数RNDの重みは、それらの誤差値に対して乱数RNDが寄与する割合乱数寄与率の大きさを表している。ここで、乱数寄与率は、誤差値の取り得る値の範囲の幅に対する、乱数RNDに起因する誤差値の変動幅の割合によって、特定可能である。なお、乱数寄与率を入力階調値Vinに応じて変化させる方法は、乱数RNDの重み例えば、乱数重みCを入力階調値Vinに応じて変化させる方法に限らず、他の種々の方法であってよい。例えば、乱数RNDの振幅が、入力階調値Vinに応じて変化してもよい。この場合、乱数RNDの振幅が大きいほど、乱数寄与率が高いということができる。上記各実施例で、誤差値の算出に利用される乱数RNDの重み図3では、0.1。図10では、乱数重みCは一例であり、他の値であってもよい。一般に、乱数寄与率例えば、乱数重みCが高い場合には、空白領域BAが小さくても、その空白領域BAの近傍での濃度の遅延図4Cを抑制できる。また、乱数寄与率が低い場合には、空白領域BAが大きくても、その空白領域BAの近傍での過剰なドット形成図5Cを抑制できる。これらは、空白領域BAに限らず、前述の最濃ベタ領域と基準ベタ領域とにおいても、同じである。乱数寄与率例えば、乱数RNDの重みと乱数RNDの振幅は、濃度の遅延の抑制と、過剰なドット形成の抑制とのバランスを考慮して、実験的に決定されてよい。また、乱数RNDの振幅は、ドットが形成された状態の基準階調値Vb複数種類のドットが形成され得る場合には、最も小さいドットの基準階調値Vbよりも小さいことが好ましく、その基準階調値Vbの半分よりも小さいことが特に好ましい。こうすれば、乱数RNDをそのまま誤差として使用する場合に、乱数RNDのパターンが、形成されたドットのパターンに現れる可能性を低減できる。2上記各実施例において、ドット形成状態を決定する処理の手順は、図3、図10に示す手順に限らず、他の種々の手順であってよい。例えば、図10のステップS380、S390は、入力階調値Vinが第2種の値である場合乱数重みCがゼロよりも大きい場合にのみ、実行されてもよい。また、図11の第2範囲R2において、乱数重みCがゼロであってもよい。また、重み付き和を算出する際の基準誤差値E1と乱数RNDとのそれぞれの重みの和は1でなくてもよい。また、重み付き和に代えて、基準誤差値E1と乱数RNDとから決まる種々の値が、注目画素の誤差値または、候補誤差値であってよい。また、図3のステップS290、図10のステップS390では、第2誤差値E2および第3誤差値E3の算出に使用した乱数RNDとは別に新たに生成した乱数RNDを登録してもよい。また、第1誤差値E1基準誤差値E1は、演算式を用いた演算に限らず、任意の導出方法例えば、ルックアップテーブルによって導出されてよい。3ドット形成状態の総数は、2または4に限らず、一般にN個Nは2以上の整数であってよい。また、プリンタが利用可能な着色剤の種類は、シアンとマゼンタとイエロとブラックとの4種類に限らず、任意の種類であってよい。また、着色剤は、インクに代えて、トナーであってもよい。4図1のプリンタドライバM20の機能は、プリンタ200の制御部210によって実現されてもよい。この場合、プリンタ200は、メモリーカードやデジタルカメラ等の外部装置から直接に画像データを取得し、取得した画像データに従って印刷を実行してもよい。5上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。"