(57)【要約】【課題】階調変化をさらにスムーズに表現できる２値データを生成する。【解決手段】１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データφ２を生成するプリンタドライバ５０を提供する。プリンタドライバ５０は、第１の画素を構成する第１のマトリクスに含まれる、第１の画素の階調値を表現する複数のドットを、第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき第１の方向に分配する分配ユニット５６を有する。【選択図】図１
2011062922.tif 000002
【特許請求の範囲】
【請求項１】
１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う方法であって、
第１の方向に隣接して並ぶ複数の画素をそれぞれ構成する複数のマトリクスの前記第１の方向のドット分布を生成することを有し、
前記第１の方向のドット分布を生成することは、第１の画素を構成する第１のマトリクスに含まれる、前記第１の画素の階調値を表現する複数のドットを、前記第１の画素に対し前記第１の方向に隣接する画素の階調値の比に基づき前記第１の方向に分配することを含む、方法。
【請求項２】
請求項１において、１画素を構成する前記マトリクスは前記第１の方向に２のｎ乗のドット配列を含み、
前記第１の方向に分配することは、前記第１の画素を構成する第１レベルの前記第１のマトリクスに含まれる、前記第１の画素の第１レベルの階調値を表現する複数のドットを、前記第１レベルの前記第１のマトリクスを前記第１の方向に２分割する第２レベルのマトリクスに、前記第２レベルのマトリクスに配列可能な範囲で、前記隣接する画素の前記第１レベルの階調値の比に基づき分配することと、
一方の前記第２レベルのマトリクスに含まれる、第２レベルの階調値を表現する複数のドットを、前記第２レベルのマトリクスを前記第１の方向に２分割する第３レベルのマトリクスに、前記第３レベルのマトリクスに配列可能な範囲で、前記一方の第２レベルのマトリクスに対し前記第１の方向に隣接する第２レベルのマトリクスの前記第２レベルの階調値の比に基づき分配することとを含む、方法。
【請求項３】
請求項１または２において、前記１画素を構成するマトリクスは、前記第１の方向に複数のドットを一列に配列するものである、方法。
【請求項４】
１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データを生成する方法であって、
第１の画素を構成する第１のマトリクスに含まれる、前記第１の画素の階調値を表現する複数のドットを、前記第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき前記第１の方向に分配することを有する方法。
【請求項５】
請求項４において、１画素を構成する前記マトリクスは前記第１の方向に２のｎ乗のドット配列を含み、
前記第１の方向に分配することは、前記第１の画素を構成する第１レベルの前記第１のマトリクスに含まれる、前記第１の画素の第１レベルの階調値を表現する複数のドットを、前記第１レベルの前記第１のマトリクスを前記第１の方向に２分割する第２レベルのマトリクスに、前記第２レベルのマトリクスに配列可能な範囲で、前記隣接する画素の前記第１レベルの階調値の比に基づき分配することと、
一方の前記第２レベルのマトリクスに含まれる、第２レベルの階調値を表現する複数のドットを、前記第２レベルのマトリクスを前記第１の方向に２分割する第３レベルのマトリクスに、前記第３レベルのマトリクスに配列可能な範囲で、前記一方の第２レベルのマトリクスに対し前記第１の方向に隣接する第２レベルのマトリクスの前記第２レベルの階調値の比に基づき分配することとを含む、方法。
【請求項６】
１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データを生成する装置であって、
第１の画素を構成する第１のマトリクスに含まれる、前記第１の画素の階調値を表現する複数のドットを、前記第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき前記第１の方向に分配する分配ユニットを有する装置。
【請求項７】
請求項６において、１画素を構成する前記マトリクスは前記第１の方向に２のｎ乗のドット配列を含み、
前記分配ユニットは、前記第１の画素を構成する第１レベルの前記第１のマトリクスに含まれる、前記第１の画素の第１レベルの階調値を表現する複数のドットを、前記第１レベルの前記第１のマトリクスを前記第１の方向に２分割する第２レベルのマトリクスに、前記第２レベルのマトリクスに配列可能な範囲で、前記隣接する画素の前記第１レベルの階調値の比に基づき分配する第１のユニットと、
一方の前記第２レベルのマトリクスに含まれる、第２レベルの階調値を表現する複数のドットを、前記第２レベルのマトリクスを前記第１の方向に２分割する第３レベルのマトリクスに、前記第３レベルのマトリクスに配列可能な範囲で、前記一方の第２レベルのマトリクスに対し前記第１の方向に隣接する第２レベルのマトリクスの前記第２レベルの階調値の比に基づき分配する第２のユニットとを含む、装置。
【請求項８】
請求項６または７に記載の装置と、
前記２値データによりドットを形成する複数のドット生成素子とを有する、画像記録装置。
【請求項９】
１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データをコンピュータが生成するためのプログラムであって、
第１の画素を構成する第１のマトリクスに含まれる、前記第１の画素の階調値を表現する複数のドットを、前記第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき前記第１の方向に分配することを有するプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１画素を複数のドットのマトリクスで記録する方法および装置に関するものである。
【背景技術】
【０００２】
特許文献１には、ディザマトリクスを用いて多階調記録を行ない、記録画像の高品質化を図ることができ、しかも、デューティを低減させるとともに、消費電力を低減させるために、１画素の記録に複数のドットからなるディザマトリクスを用い、この画素のうち、奇数番目の画素のディザマトリクスのパターンと偶数番目の画素のディザマトリクスのパターンとをそれぞれ異なるパターンとしたことが記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−３２２３１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
サーマルヘッドなどに含まれるドット生成素子により、熱やインクなどを用いて用紙にドットを生成することにより画像を記録あるいは印刷する際、階調値が共通する画素を同一のドット配列のマトリクスで記録すると直線状の模様が目立つなど、画質が十分とは言えず、画質をさらに向上することが要望されている。特許文献１においては、奇数番目の画素のマトリクスと偶数番目の画素のマトリクスとのパターンを変えることにより、同一の階調値の画素を連続して記録する場合に、階調値が低いときにドットが連続して配置されたり、マトリクスのパターンが画像に現れることを抑制している。しかしながら、奇数番目の画素と偶数番目の画素とを含めたマトリクスは共通しており、繰り返されるパターンが大きくなったぶん、さらに、マトリクスのパターンが見えやすくなるケースもある。
【課題を解決するための手段】
【０００５】
本発明の一態様は、１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う方法であって、第１の方向に隣接して並ぶ複数の画素をそれぞれ構成する複数のマトリクスの第１の方向のドット分布を生成することを有する。第１の方向のドット分布を生成すること（ドット分布を生成する工程）は、第１の画素を構成する第１のマトリクスに含まれる、第１の画素の階調値を表現する複数のドットを、第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき第１の方向に分配することを含む。
【０００６】
この方法においては、記録しようとする複数の画素の各々を構成する複数のマトリクスのドット分布を画素毎に生成する。このため、同一の階調値の画素が、同一または２つ程度の限られたドット配列を含むマトリクスだけではなく、そのマトリクスに配列し得る数多くのドット配列を含む多種多様なマトリクスで表現される可能性がある。したがって、直線状の模様が目立つことを抑制できる。
【０００７】
ある画素（第１の画素）を表現するドット分布を、第１の方向に前後する画素の階調値に基づき生成する。ランダムなドット配列を選択することにより模様が発生する可能性をさらに抑制できるが、第１の方向に前後する画素の階調値に基づきドット分布を生成することにより、階調値の変化を含む画像を、よりスムーズに色（白黒も含む）の濃淡が変化する画像として記録でき、また、階調値が大きく変化する箇所では輪郭がよりシャープに現れた画像として記録できる。
【０００８】
１画素を構成するマトリクスが第１の方向に２のｎ乗（ｎは１以上の整数）のドット配列を含む場合、ドット分布を発生させるアルゴリズムの１つは以下のようなものである。すなわち、第１の方向に分配する工程は、以下の工程を含むことが望ましい。
・第１の画素を構成する第１レベルの第１のマトリクスに含まれる、第１の画素の第１レベルの階調値を表現する複数のドットを、第１レベルの第１のマトリクスを第１の方向に２分割する第２レベルのマトリクスに、第２レベルのマトリクスに配列可能な範囲で、隣接する画素の第１レベルの階調値の比に基づき分配すること。
・一方の第２レベルのマトリクスに含まれる、第２レベルの階調値を表現する複数のドットを、第２レベルのマトリクスを第１の方向に２分割する第３レベルのマトリクスに、第３レベルのマトリクスに配列可能な範囲で、一方の第２レベルのマトリクスに対し第１の方向に隣接する第２レベルのマトリクスの第２レベルの階調値の比に基づき分配すること。
【０００９】
２のｎ乗のドットを配列できる画素単位のマトリクスを第１レベルのマトリクスとし、上記のアルゴリズムにしたがい、第１レベルから第（ｎ＋１）レベルのマトリクスまで、ドットの分配をｎ回繰り返すことにより、前後の階調値を反映した分布を備えたデータであって、多値データが２値化されたデータを生成できる。さらに、オンドットとオフドットとを等価的に扱うことにより、プロセスを繰り返す回数は半分程度まで減らすことが可能である。
【００１０】
階調値（ドット）を分配する方法は線形（リニア）な補間方法、すなわち、一次スプライン曲線の分布を与えるものであってもよい。さらに、分配する方法は、高次、たとえば、二次または三次のスプライン曲線の分布を与えるものであってもよい。
【００１１】
１画素を構成するマトリクスは、スキャン方向およびサブスキャン方向に広がりをもったものであってもよく、スキャン方向またはサブスキャン方向にのみ広がりを持った、すなわち、第１の方向に直線的なマトリクスであってもよい。ラインサーマルヘッドなどのように、スキャン方向に複数のドット生成素子が並び、サブスキャン方向に記録させる複数のドットにより多階調の画素を表現する記録方法に対しても、上記の方法は適用できる。
【００１２】
本発明の他の態様の１つは、１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データを生成する方法であり、第１の画素を構成する第１のマトリクスに含まれる、第１の画素の階調値を表現する複数のドットを、第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき第１の方向に分配することを有する方法である。多値データから、前後の画素の階調値の変動を反映したドット分布を含む２値データを生成できる。
【００１３】
本発明のさらに異なる他の態様の１つは、１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データを生成する装置であって、第１の画素を構成する第１のマトリクスに含まれる、第１の画素の階調値を表現する複数のドットを、第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき第１の方向に分配する分配ユニットを有する装置である。この装置は、プリンタなどの記録装置に画像データを供給するプリンタドライバまたはその一部としてパーソナルコンピュータなどのホスト装置にインストールできる。
【００１４】
本発明のさらに異なる他の態様の１つは、上記の装置と、２値データによりドットを形成する複数のドット生成素子とを有する画像生成装置である。ホスト装置から供給された画像データから、前後の画素の階調値の変動を反映したドット分布を含む２値データを生成し、その２値データによりドットを形成して画像を印刷用紙などの記録媒体に記録することにより、いっそう高画質の画像を記録（印刷）できる。
【００１５】
本発明のさらに異なる他の態様の１つは、１画素を複数のドットのマトリクスにより構成し、多階調の記録を行う２値データをコンピュータが生成するためのプログラムであって、第１の画素を構成する第１のマトリクスに含まれる、第１の画素の階調値を表現する複数のドットを、第１の画素に対し第１の方向に隣接する画素の階調値の比に基づき第１の方向に分配することを有するプログラムである。このプログラムは、ＣＤ−ＲＯＭなどの記録媒体に記録して提供したり、インターネットなどのコンピュータネットワークを介して提供できる。
【図面の簡単な説明】
【００１６】
【図１】プリンタおよびＰＣを含むシステムの概略構成を示す図である。
【図２】２値データを生成する方法を示すフローチャートである。
【図３】図３（ａ）は、ドット配列を前後の画素の階調値により生成する例を示すための図であり、図３（ｂ）は、ドット配列を固定した例を示すための図である。
【発明を実施するための形態】
【００１７】
図１に、画像記録システムの一例を示している。この画像記録システム１は、ホスト装置となるパーソナルコンピュータ（ＰＣ）１０と、ＰＣ１０から供給される２値データφ２を印刷するプリンタ３０とを含む。プリンタ３０は、複数の発熱素子３６がライン状に並んだラインタイプのサーマルヘッド３７と、メディア（記録媒体）３１を送るためのプラテンローラ３２と、プラテンローラ３２を駆動するモータ３３と、これらを制御する制御装置２０とを含む。このプリンタ３０は、メディア３１が感熱紙であれば、発熱素子３６から供給される熱エネルギーによりメディア３１の表面にドットを形成し、メディア３１に画像を記録（印刷）する。また、プリンタ３０は、昇華タイプ（熱転写、昇華転写）であってもよく、メディア３１とヘッド３７との間にカラー（モノクロであってもよい）のインクリボン３５をセットし、発熱素子３６の熱エネルギーによりメディア３１に多色のドットを形成し、カラー画像をメディア３１に記録する。
【００１８】
プリンタ３０に画像を形成するためのデータφ２を供給するＰＣ１０は、プロセッサ、メモリ、入出力装置などの汎用のコンピュータを実現するためのハードウェア資源を含む。ＰＣ１０には、ＯＳ１１と、ＯＳ１１の上で動作するアプリケーションプログラム１２とがインストールされており、文書、画像などを含むコンテンツを見たり、作製したり、編集したりできるようになっている。ＰＣ１０には、さらに、コンテンツをプリンタ３０で印刷する際に、コンテンツに含まれる文字、画像などの多値のデータφ１を２値データφ２に変換する機能を含むプリンタドライバ５０がインストールされている。ＰＣ１０において、プリンタドライバ５０は、ハードディスク、ＲＯＭ（不図示）などの記録媒体に記録されたプログラムとして提供され、プリンタドライバ５０としての機能は、プロセッサ（不図示）がそのプログラムを実行することにより実現される。
【００１９】
プリンタドライバ５０は、アプリケーション１２などから供給される画像データφ１がプリンタ３０から出力されるように画像データφ２を生成する機能５２を含む。データ生成機能５２は、プリンタ３０を制御するためのコマンドなどを生成し、出力する制御ユニット５３と、アプリケーション１２から供給される多値データφ１を２値データφ２に変換する２値化ユニット５５とを含む。プリンタ３０においては、オンオフのドットにより画像が記録される。このため、２値化ユニット５５は、階調値が多値で与えられる多値データφ１から、階調値を２値で表現するための２値データφ２を生成する。本例の２値化ユニット５５は、１つの画素を複数のドットのマトリクスにより構成し、多階調の記録を行う、いわゆる面積階調表示（記録、印刷）のための２値データφ２を生成する。
【００２０】
２値化ユニット５５は、多値データφ１に含まれる階調値をオンオフ（１、０）の２値に分配するための分配ユニット５６を含む。本例の分配ユニット５６は、上位のマトリクスに含まれる階調値を、隣接するマトリクスに含まれる階調値の比で線形（リニア）に分配する複数のユニット５７．１〜５７．ｎ（ｎは１以上の整数）を含む。簡単のため１画素を構成するマトリクスが第１の方向に２のｎ乗のドット配列を含む、ラインあるいは行状の一次元のマトリクス（第１レベルのマトリクス）とすると、第１のユニット５７．１は、２の（ｎ−１）乗のドット配列を含む第２レベルのマトリクス（サブマトリクス）に含まれる階調値（ドット数）を決める。
【００２１】
すなわち、第１のユニット５７．１は、注目画素（第１の画素）を構成する第１レベルの第１のマトリクスに含まれる、第１の画素の第１レベルの階調値を表現する複数のドット（ドット数）を、第１レベルの第１のマトリクスを第１の方向に２分割する第２レベルのマトリクスに、第２レベルのマトリクスに配列可能な範囲で、第１の画素に隣接する画素（２つの画素）の第１レベルの階調値の比に基づき分配する。この段階で２つの第２レベルのマトリクスに含まれるドット数が決まる。
【００２２】
次のユニット５７．２は、一方の第２レベルのマトリクスに含まれる、第２レベルの階調値を表現する複数のドットを、第２レベルのマトリクスを第１の方向に２分割する第３レベルのマトリクスに、第３レベルのマトリクスに配列可能な範囲で、一方の第２レベルのマトリクスに対し第１の方向に隣接する第２レベルのマトリクスの第２レベルの階調値の比に基づき分配する。
【００２３】
分配ユニット５６に含まれる複数のユニット５７．１〜５７．ｎは上記の処理を第１レベルのマトリクスから第ｎレベルのマトリクスに対して繰り返して行う。第ｎのユニット５７．ｎは、第（ｎ＋１）レベルのマトリクスを出力するが、第（ｎ＋１）レベルは２値データφ２となり、多値データφ１が２値データφ２に変換される。
【００２４】
図２に、分配ユニット５６の処理の概要をフローチャートにより示している。また、図３（ａ）に、１画素を構成するマトリクス（第１レベルのマトリクス）Ｍ１が８ビット（ｎ＝３）の２値データφ２を生成する例を模式的に示している。分配ユニット５６は、ステップ６１において多値データφ１を受信すると、ステップ６２において初期処理を行う。初期処理には、たとえば、多値データφ１により与えられる色情報を、プリンタ３０で表現可能な色情報に変換したり、多値データφ１をプリンタ３０で表現可能な解像度のデータに変換したりするなどの処理が含まれる。多値データφ１が２５６階調のデータであれば、この例ではプリンタ３０は８階調なので、２５６階調のデータを８階調のデータに予め変換する。
【００２５】
ステップ６３において、まず、第１のユニット５７．１が注目画素の階調値（注目のマトリクスの階調値（ドット数））を、それに隣接する画素の階調値（隣接するマトリクスの階調値（ドット数））の比で分配し、下位のマトリクスの階調値（ドット数）を設定する。図３（ａ）において、サブスキャン方向Ｘに画素Ｐａ、ＰｂおよびＰｃが並んでおり、それぞれの階調値は、「２」、「６」および「４」である。第１のユニット５７．１は、注目画素Ｐｂを表現する第１レベルの第１のマトリクスＭ１ｂを処理する際、第１のマトリクスＭ１ｂに含まれるドット数（第１レベルの階調値）「６」を、隣接する画素ＰａおよびＰｃの階調値「２」および「４」で比例配分し、第２レベルのマトリクスＭ２ｂ１およびＭ２ｂ２に分配する。すなわち、左側の第２レベルのマトリクスＭ２ｂ１の階調値（ドット数）は「２」（＝（２×６）／（２＋４））、右側の第２レベルのマトリクスＭ２ｂ２の階調値（ドット数）は「４」（＝（４×６）／（２＋４））に設定される。
【００２６】
さらに、第１のユニット５７．１は、ステップ６４において端数の処理を行い、ステップ６５において超過分の処理を行う。上位レベルの階調値（ドット数）を、隣り合うマトリクスの階調値（ドット数）の比で下位レベルに配分する場合、下位レベルの階調値が小数点以下の端数を含むことは多い。したがって、その端数の処理を予めルールとしてユニット５７．１〜５７．ｎに組み込んでおくことが望ましい。たとえば、比例分配した値が小数点以下を含む場合は、四捨五入により整数化し、小数部が「．５」の場合は、左側のマトリクスＭ２ｂ１の値を切り上げ、右側のマトリクスＭ２ｂ２の値を切り捨てる。左右は逆であってもよい。
【００２７】
また、比例配分した下位レベルの階調値が、下位レベルのマトリクス、たとえば、マトリクスＭ２ｂ２の最大値を超える場合もある。そのような場合、下位レベルのマトリクスで階調値が表現できなくなるので、ステップ６５において、超えた値は他方のマトリクスＭ２ｂ１に振り替える。
【００２８】
ステップ６６において、全ての第１レベルのマトリクスＭ１、すなわち、全ての画素に対して上記の処理を繰り返し、第２レベルのマトリクスＭ２を生成する。ステップ６７において、最終レベルが終了するまで、下位レベルのマトリクスの生成を続ける。最終レベルに到達していない場合は、ステップ６８において次レベルのマトリクスの条件を設定し、ステップ６３に戻って分配処理を繰り返す。最終レベルに到達している場合は、２値化されたデータφ２が生成されたので、ステップ６９において２値データφ２をプリンタ３０に送信して印刷を行う。
【００２９】
本例においては、第２レベルのマトリクスＭ２の階調値（第２レベルの階調値）を求めた後、さらに第３レベルのマトリクスＭ３を求める必要がある。このため、第２のユニット５７．２が第２レベルのマトリクスＭ２から、第３レベルのマトリクスＭ３の階調値（ドット数）を決定する。たとえば、第２レベルのマトリクスＭ２ｂ２を処理する場合は、第２レベルのマトリクスＭ２ｂ２の階調値（第２レベルの階調値）「４」を、隣り合う（前後する）第２レベルのマトリクスＭ２ｂ１と、マトリクスＭ２ｃ１との階調値（第２レベルの階調値）「２」および「３」で分配する。ステップ６４で端数の処理をすると、第３レベルのマトリクスＭ３ｂ２１およびＭ３ｂ２２の第３レベルの階調値（ドット数）はそれぞれ「２」および「２」になる。
【００３０】
さらに、第４レベルのマトリクスＭ４を求める必要があるので、第３のユニット５７．３（５７．ｎ）が第３レベルのマトリクスＭ３から、第４レベルのマトリクスＭ４の階調値（ドット数）を決定する。この例では、第４レベルは最終レベルであり、第４レベルのマトリクスＭ４は「０」または「１」、すなわち、２値データφ２となる。たとえば、第３レベルのマトリクスＭ３ｂ２１を処理する場合は、第３レベルのマトリクスＭ３ｂ２１の階調値（第３レベルの階調値）「２」を、隣り合う（前後する）第３レベルのマトリクスＭ３ｂ１２と、マトリクスＭ３ｂ２２との階調値（第２レベルの階調値）「１」および「２」で分配する。ステップ６４で端数の処理をすると、第４レベルのマトリクスＭ４ｂ２１１およびＭ４ｂ２１２の第４レベルの階調値（ドット数）はそれぞれ「１」および「１」になる。このように最終レベルの階調値は「０」または「１」になり、２値データφ２が生成される。
【００３１】
このようにして生成された２値データφ２のドット出力を図３（ａ）に示している。階調値「２」の画素Ｐａを構成する複数のドットは、階調値「６」の画素Ｐｂの側に配置され、階調値「６」の画素Ｐｂを構成する複数のドットと、階調値「４」の画素Ｐｃを構成する複数のドットのほとんどは、画素ＰｂおよびＰｃの境界に集中して配置される。この結果、複数の画素により表現される画像の濃淡が、それらの画素を表現する複数のドットの分布により、いっそうスムーズに繋がって表現される２値データφ２を生成できる。さらに、画素Ｐａのドットが画素Ｐｂの側に集まるように、マトリクス内のドット分布が濃い方向に集まり易い。このため、複数の画素により表現される濃淡の境界（エッジ）が強調されやすく、よりシャープな画像を表現できる２値データφ２を生成できる。
【００３２】
図３（ｂ）に、各画素を形成するマトリクス内のドット配列を階調値により予め固定した例を示している。図３（ｂ）に示すように、マトリクス内でドットが左詰めにされた配列が予め設定されていた場合は、隣接する画素Ｐａ〜Ｐｃを構成するドット配列は繋がっておらず、画像の濃淡が筋になって現れたり、濃淡の境界がぼやけたりする要因となる。
【００３３】
以上に説明したように、本例のシステム１においては、プリンタ３０で画像を印刷する２値データφ２に含まれる個々の画素を表現するためのドット配列を、隣り合う画素の階調値の変化を反映するように、その都度生成する。したがって、個々の画素を構成するマトリクスに含まれるドット配列は、画素の階調値が同じであっても、隣り合う画素の階調値に依存して変化する可能性があり、濃淡がいっそうスムーズに表現され、直線状の模様が目立ったりすることの少ない、より高画質の画像を印刷できる２値データφ２を生成できる。そして、プリンタ３０により、いっそう高画質の画像を記録媒体に記録できる。また、この２値データφ２においては、画像の階調値が変化する部分を構成するドットは、濃度の濃い側に集中して配置されるので、より輪郭がシャープに現れた画像を記録媒体に記録できる。
【００３４】
なお、上記のシステム１においては、ＰＣ１０にインストールされたプリンタドライバ５０において２値データφ２を生成する例を説明しているが、ＰＣ１０からプリンタ３０に多値データφ１を送信し、プリンタ３０の側で２値化することも可能である。たとえば、プリンタ３０の制御装置２０に、２値化ユニット５５を含むデータ生成ユニット２１を搭載してもよい。
【００３５】
また、上記の例では、サブスキャン方向Ｘを第１の方向として、その方向に一列に延びたマトリクスにより画素を表現している。しかしながら、スキャン方向に一列に延びたマトリクスにより画素を表現する場合も上記と同様のアルゴリズムで２値化することができる。さらに、１画素を４×４などの２次元のマトリクスで構成する場合にも上記のアルゴリズムを適用して２値化することができる。２次元のマトリクスに適用する場合は、スキャン方向あるいはサブスキャン方向のいずれかに隣接する画素の階調値の比に基づき下位のレベルのマトリクスに階調値を分配し、次に、逆方向に隣接する画素またはマトリクスの階調値の比に基づきさらに下位のレベルのマトリクスに階調値を分配するというアルゴリズムを採用できる。
【００３６】
また、上記の２値化ユニット５５の分配ユニット５６は、上位のマトリクスに含まれる階調値を、隣接するマトリクスに含まれる階調値の比で線形（リニア）、すなわち、一次スプライン曲線で分配する。分配ユニット５６は、代わりに、階調値および／またはドットの分布を、さらに高次の、たとえば、二次または三次のスプライン曲線で分配するものであってもよい。
【００３７】
また、上記では、ヘッドがスキャン方向に移動しないラインサーマルタイプのプリンタに基づき説明しているが、ヘッドがスキャン方向に移動するシリアルプリンタについても本発明は適用可能である。さらに、上記では、サーマルプリンタについて説明しているが、同様に、インクジェットプリンタ、レーザープリンタなどの他のタイプのプリンタを含むシステムにおいても適用できる。また、プリンタは、パーソナルなプリンタに限定されることはなく、複合機、業務用の印刷機であってもよい。
【符号の説明】
【００３８】
１  印刷システム
１０  パーソナルコンピュータ（ＰＣ、ホスト装置）
３０  プリンタ
【図１】
2011062922.tif 000003
【図２】
2011062922.tif 000004
【図３】
2011062922.tif 000005