(57)【特許請求の範囲】
【請求項１】
Ｎ色のインクを用い面積階調法にて各色の濃淡を表現するとともに多色のカラーを表現する画像形成方法であって、
ベクタの終始点情報、色情報、線幅情報を含むベクタデータを受けるステップと、
前記ベクタデータの色情報に応じて各インク色の濃度値を生成するステップと、
前記ベクタの少なくとも線幅を予め定めた値と比較するステップと、
前記線幅が予め定めた値以上であれば、各色の色合わせのための補正を前記各インクの濃度値に対して施し、前記線幅が予め定めた値未満であれば、前記色合わせのための補正を省略するステップと、
予め用意したディザマトリクスに対して前記各インク色の濃度値を適用し、各インクに対するマスクマトリクスパターンを生成するステップと、
前記マスクマトリクスパターンを参照して前記ベクタデータをラスタデータに変換するステップと、
該ラスタデータに基づいて前記ベクタの印字を行うステップと
を備えたことを特徴とする画像形成方法。
【請求項２】
前記線幅が予め定めた値以上であれば、前記マスクマトリクスパターンを生成する前に、前記インクの濃度値に対して、入力濃度値に対する出力濃度値をリニアにするためのγ変換を行い、
前記線幅が予め定めた値未満で、かつ、所定の低濃度であれば、前記γ変換を省略する
ことを特徴とする請求項１記載の画像形成方法。
【請求項３】
前記線幅が予め定めた値以上であれば、前記生成されたマスクマトリクスパターンに対して当該色毎にＯＮドットをずらすずらし処理を行い、
前記線幅が予め定めた値未満で、かつ、所定の低濃度であれば、前記ずらし処理を省略する
ことを特徴とする請求項１または２記載の画像形成方法。
【請求項４】
比較的低濃度のＬ＊Ｌマスクマトリクスパターン（以下、単にマトリクスという）について、前記Ｌ＊Ｌマトリクスの行および列単位のＬ＊Ｌ−１回の並び替えを行うことにより、Ｌ＊Ｌ−１個のＬ＊Ｌマトリクスを生成し、このＬ＊Ｌ−１個のＬ＊Ｌマトリクスを元のＬ＊Ｌマトリクスと組み合わせて（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）マトリクスを生成し、前記（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）マトリクスを介して多値ベクタから２値の濃淡ベクタを生成することにより、前記濃淡ベクタが全て”０：ＯＦＦ”になることを防止することを特徴とする請求項１記載の画像形成方法。
【請求項５】
前記（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）マスクマトリクスに対して、行および列単位にさらに並べ替えを行い、その結果得られた（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）マスクマトリクスを介して前記多値ベクタから２値の濃淡ベクタを生成することを特徴とする請求項４記載の画像形成方法。
【請求項６】
Ｎ色のインクを用い面積階調法にて各色の濃淡を表現するとともに多色のカラーを表現する画像形成装置であって、
ベクタの終始点情報、色情報、線幅情報を含むベクタデータを受ける手段と、
前記ベクタデータの色情報に応じて各インク色の濃度値を生成する手段と、
前記ベクタの少なくとも線幅を予め定めた値と比較する手段と、
前記線幅が予め定めた値以上であれば、各色の色合わせのための補正を前記各インクの濃度値に対して施し、前記線幅が予め定めた値未満であれば、前記色合わせのための補正を省略する制御手段と、
予め用意したディザマトリクスに対して前記各インク色の濃度値を適用し、各インクに対するマスクマトリクスパターンを生成する手段と、
前記マスクマトリクスパターンを参照して前記ベクタデータをラスタデータに変換する手段と、
該ラスタデータに基づいて前記ベクタの印字を行う印字手段と、
を備えたことを特徴とする画像形成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、プリンタ、プロッタ等の画像形成装置に係り、特に、階調を有するカラー画像等の多値画像における画像データの面積階調処理に関するものである。
【０００２】
【従来の技術】
従来、２値表現（”０：ＯＦＦ”、”１：ＯＮ”）のみ可能な画像形成装置を用いて濃淡画像を再現したい場合、画像の単位領域内の”１：０Ｎ”の割合いを変化させて階調を再現させる面積階調法が使用されている。
【０００３】
一般に、シアン、マジェンタ、イエローなどのインク（Ｎ色）にてカラー表現しようとした場合、各インクに対してＬ＊Ｌのマトリクス領域でＬ＊Ｌ＋１階調が再現でき、カラー表現としては、Ｍ種類（Ｍ＝（Ｌ＊Ｌ＋１）＊＊Ｎ）となる。（ここに、”＊”は乗算、”＊＊”はべき乗を表す演算子である。）周知のとおり、マトリクス領域の一辺の大きさであるＬ値を大きくすればカラー階調表現の幅が広がる。
【０００４】
ベクタデータを解析する画像形成装置においては、普通４＊４のマトリクスまたは８＊８のマトリクスが主流であるが、最近では、１２８＊１２８のマトリクスを使用しているものもある。
【０００５】
ドット配置のパターンとしては、大別してドット分散型とドット集中型とがある。ドット分散型にはＢａｙｅｒ型が含まれ、ドット集中型には渦巻き型、網点型が含まれる。解像力はドット分散型のＢａｙｅｒ型の方が優れており、階調のリニアな再現性はドット集中型の渦巻き型、網点型の方が優れているといわれている。本発明を実施した装置では、基本的に、図７に示すようにＢａｙｅｒ型のディザ法による８＊８のマトリクスを使用し、インクは、シアン、マジェンタ、イエローの３色インクでカラーを表現し、さらに黒インクにて黒およびシェードを表現している。
【０００６】
通常、ベクタデータの濃淡を表現するためには、濃度値から図７に示すディザマトリクスに対応させて”０：ＯＦＦ”、”１：ＯＮ”のマスクマトリクスを各インク色毎に生成する。各インク色に対して同じ図７のディザマトリクスに対応させると全インクについて同じピクセルに対してインクが出力されてしまうため、インク色ごとにＯＮドットを１ピクセルずらしたマスクマトリクスを生成する手段が公知として知られており、後述する本発明の実施の形態でも採用している。
【０００７】
【発明が解決しようとする課題】
しかしながら、従来の方法では、ベクタデータの線幅が十分太い場合（Ｌ＊ＬのＬより線幅が太い）には、色の再現性はよいが、線幅が細くなると（Ｌより小さい）色の再現性が悪くなり、場合によっては異なった色にて印字されてしまう。
【０００８】
近年、ホストコンピュータの性能が上がり、多種多様のグラフィック、ＣＡＤ関係のアプリケーションソフトが開発され、カラー処理等も多様化してきている。ベクタデータを生成するプリンタドライバ、プロッタドライバにてベクタデータ作成時にペンの色および濃度値を生成してプリンタやプロッタにデータ転送をおこなうが、アプリケーション側にて低濃度と細線を設定してしまうとベクタの色変化やベクタの欠落が生じてトラブルがよく生じている。
【０００９】
本発明は、このような背景において、ベクタのカラー濃度や線幅の如何にかかわらずベクタデータの色変化の発生を防止することができる、信頼性の高い画像形成方法および装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明による画像形成方法は、Ｎ色のインクを用い面積階調法にて各色の濃淡を表現するとともに多色のカラーを表現する画像形成方法であって、ベクタの終始点情報、色情報、線幅情報を含むベクタデータを受けるステップと、前記ベクタデータの色情報に応じて各インク色の濃度値を生成するステップと、前記ベクタの少なくとも線幅を予め定めた値と比較するステップと、前記線幅が予め定めた値以上であれば、各色の色合わせのための補正を前記各インクの濃度値に対して施し、前記線幅が予め定めた値未満であれば、前記色合わせのための補正を省略するステップと、予め用意したディザマトリクスに対して前記各インク色の濃度値を適用し、各インクに対するマスクマトリクスパターンを生成するステップと、前記マスクマトリクスパターンを参照して前記ベクタデータをラスタデータに変換するステップと、該ラスタデータに基づいて前記ベクタの印字を行うステップとを備えたことを特徴とする。
【００１１】
このように本発明では、ベクタの線幅が予め定めた値未満である場合には、インクの各色の色合わせのための、インク濃度値に対する補正を省略するようにしたので、微小な線幅のベクタの色味が前記補正によって却って変化してしまうという不具合の発生を防止することができる。
【００１２】
さらに、前記線幅が予め定めた値以上であれば、前記マスクマトリクスパターンを生成する前に、前記インクの濃度値に対して、入力濃度値に対する出力濃度値をリニアにするためのγ変換を行い、前記線幅が予め定めた値未満で、かつ、所定の低濃度であれば、前記γ変換を省略するようにしてもよい。
【００１３】
また、前記線幅が予め定めた値以上であれば、前記生成されたマスクマトリクスパターンに対して当該色毎にＯＮドットをずらすずらし処理を行い、前記線幅が予め定めた値未満で、かつ、所定の低濃度であれば、前記ずらし処理を省略するようにしてもよい。
【００１４】
これらによってもベクタの色味の変化を防止することができる。
【００１５】
本発明による画像形成方法では、マスクマトリクスパターンの操作により細線消失防止処理を合わせて行うことが望ましい。
【００１６】
本発明による画像形成装置は、上記方法を実施するための装置であり、Ｎ色のインクを用い面積階調法にて各色の濃淡を表現するとともに多色のカラーを表現する画像形成装置であって、ベクタの終始点情報、色情報、線幅情報を含むベクタデータを受ける手段と、前記ベクタデータの色情報に応じて各インク色の濃度値を生成する手段と、前記ベクタの少なくとも線幅を予め定めた値と比較する手段と、前記線幅が予め定めた値以上であれば、各色の色合わせのための補正を前記各インクの濃度値に対して施し、前記線幅が予め定めた値未満であれば、前記色合わせのための補正を省略する制御手段と、予め用意したディザマトリクスに対して前記各インク色の濃度値を適用し、各インクに対するマスクマトリクスパターンを生成する手段と、前記マスクマトリクスパターンを参照して前記ベクタデータをラスタデータに変換する手段と、該ラスタデータに基づいて前記ベクタの印字を行う印字手段とを備えたことを特徴とする。
【００１７】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【００１８】
図１は本発明の画像形成装置の構成を示すブロック図である。図１中、１１は装置全体の動作を制御するＣＰＵ、１２はＣＰＵ１１の作業領域およびデータの一時記憶領域として利用されるＲＡＭである。１３は画像形成装置を駆動するためのプログラムやデータが書き込まれているＲＯＭであり、ＣＰＵ１１により使用される。１４は外部のコンピュータ端末装置等（図示せず）と接続するためのインタフェース部であり、これを介してベクタデータなどのプロッタ記述言語データが転送されてくる。１５はマンマシンインタフェースのための表示を行うＬＣＤ表示装置、１６は画像形成装置の各種設定を選択するためのキー操作部である。１７は画像形成装置の印字部、１８はＣＰＵ１１と他の各要素とを接続するシステムバスである。
【００１９】
図２は、画像形成装置における一般的な入力データ受信から印字までの処理フローを示す。
【００２０】
まず、外部から入力データ（ベクタデータ）を受信し（Ｓ２１）、この受信したデータをプロッタ記述言語のフォーマットにしたがって言語解析（データ解析）を行う（Ｓ２２）。このデータ解析手段を一般にインタープリタと呼んでいる。データ解析は印字開始データの解析終了まで行われる（Ｓ２３）。印字開始コマンドを受信して今までのベクタデータをラスタに変換するＶＲＣ(Vector-to-Raster Conversion)処理（Ｓ２４）が行われる。このＶＲＣ処理では記録に適した印字データを図１のＲＡＭ１２に展開するものであり、この展開された印字データが実際の印字動作（Ｓ２５）で参照されて印字動作が開始される。
【００２１】
図３は、図２のフロー内のステップＳ２２の言語解析に付随した処理ステップを説明するための図である。
【００２２】
解析ステップＳ３１での解析の結果、ＶＲＣ処理を行うためにベクタの始点・終点座標値（始終点情報）、色情報、線幅情報及びベクタのつなぎ形状や先端形状等を含むベクタデータを図１のＲＡＭ１２に格納する（即ち登録する）とともに（Ｓ３４）、ラスタライズを行うためにベクタのカラーパターンを生成し（Ｓ３２）、図１のＲＡＭ１２に格納する（Ｓ３３）。このカラーパターンは、ベクタのラスタライズを行うときに参照されるマスクマトリクスパターンであり、この例では、Ｋ、Ｃ、Ｍ、Ｙの各色について１面、計４面ある。
【００２３】
本発明の実施の形態におけるマスクマトリクスパターン（Ｌ＊Ｌ）のサイズは８＊８なのでＫ、Ｃ、Ｍ、Ｙそれぞれ８バイトの容量で図１のＲＡＭ１２に格納（登録）される。
【００２４】
図４は、一般的な図３のベクタカラーパターン生成（Ｓ３２）の詳細処理フローである。
【００２５】
まず、ＲＧＢデータの入力を受ける（Ｓ４１）。ＲＧＢデータとは、ディスプレイ等で使われる表色系のことで、パソコンでは通常各色につき０から２５５までの２５６階調あり、その組み合わせにより約１６００万色の表現が可能である。印刷物の場合、複数のインクの濃度によって表現可能なすべての色をあらわす。赤（Ｒ）の補色であるシアン（Ｃ）、緑（Ｇ）の補色であるマジェンタ（Ｍ）、青（Ｂ）の補色である黄（Ｙ）のインクを使用する。したがって、Ｃ，Ｍ，Ｙの濃度は、次の（１）式に示すように、それぞれＲ，Ｇ，Ｂの輝度に基づいて求められる。例えば、赤（Ｒ）の輝度が大きければシアン（Ｃ）の濃度が小さくなる。
【００２６】
ＣＭＹ(濃度）＝２５５−ＲＧＢ(輝度）・・・（１）式
しかし、ディスプレイ上の輝度と印刷物のインクの濃度との関係は、現実には、（１）式で表されるようなリニアにならない（デバイス特性があるため）。そのために輝度と濃度の関係をリニアにするために、（２）式に示すような対数変換をおこなってリニアにする（Ｓ４２）。
【００２７】
ＣＭＹ(濃度）＝２５５−（２５５.０／１．８）*（ｌｏｇＲＧＢ／２５５．０）・・・（２）式
（２）式における定数”１．８”は、本実施の形態における入力デバイスの特性に対応する値である。
【００２８】
ＣＭＹのインクを同時に打つことで黒（Ｋ）が得られるが、ＣＭＹを組み合わせて黒を表現するより最初から黒インクを使った方が美しく合理的であり、本実施の形態においても黒インクを含め４つのインクを利用している。ＣＭＹの濃度を同じにすると、黒の濃淡であるグレーとなる。そこで、ＣＭＹの各濃度の共通部分を黒（インク）の濃度とする（Ｓ４３）。ＣＭＹの濃度のうち最小値をＭｉｎ（Ｃ、Ｍ、Ｙ）とすると、これが共通部分であり、（３）式のように黒の濃度となる。黒生成後のＣＭＹの各濃度は、それぞれ（４）〜（６）式のようになる。
【００２９】
Ｋ＝Ｍｉｎ（Ｃ、Ｍ、Ｙ）    ・・・（３）式
Ｃ＝Ｃ−Ｍｉｎ（Ｃ、Ｍ、Ｙ）・・・（４）式
Ｍ＝Ｍ−Ｍｉｎ（Ｃ、Ｍ、Ｙ）・・・（５）式
Ｙ＝Ｙ−Ｍｉｎ（Ｃ、Ｍ、Ｙ）・・・（６）式
【００３０】
次に、インク特性とメディアの特性により理想の色を得るためにマスキングという処理にて色あわせ処理を行う（Ｓ４４）。通常時の印刷を行う場合は、この色合わせのためのマスキング処理により各色の濃度を補正するために次の（７）式を用いる。
【００３１】
【数１】
0004097111.tif 000002
【００３２】
しかし、細線時の印刷を行う場合は、このマスキング処理を行うと、却って色の再現性が損なわれる。そこで、次の（８）式を用いる。
【００３３】
【数２】
0004097111.tif 000003
【００３４】
この式（８）はＫＣＭＹに対して無変換（無補正）であることを示している。
【００３５】
このようにして得られたＫＣＭＹ濃度で２値化処理を行って印刷すると、実際には入力濃度と印刷結果の出力濃度はリニアにならないため、いわゆるγ変換処理を行ってリニアにする（Ｓ４５）。予め、０から２５５までの各濃度でインクごとに印刷し、スキャナで濃度を測定し、測定濃度と入力値からγ変換テーブルを作成しておき、γ変換処理時には、このテーブルを参照してγ変換を行う。これらの変換手段を経て、各色毎に２値化処理を行う（Ｓ４６）。２値化処理は、図７に示すディザマトリクスを利用する。このようにして、各色の濃度について、対応するマスクマトリクスパターンが得られる。例えば、濃度２５％の場合、図７のディザマトリクスに基づいて、図８のようなマスクマトリクスパターンが得られる。これが濃度２５％における黒のマスクマトリクスとなる。
【００３６】
図９、図１０、図１１は、それぞれ、濃度２５％におけるシアン、マジェンタ、イエローのマスクマトリクスを示す図である。これらについては後述する。
【００３７】
図５は、本実施の形態における、ベクタカラーパターン生成（Ｓ３２）の詳細処理フローである。
【００３８】
まず、ベクタが細線か否かを判定するため、そのベクタの線幅を所定の判定条件と対比する（Ｓ５１）。ベクタデータの線幅の判定条件は、Ｌドット幅で判断するのではなくてＬをルート２倍した値で判断するのが望ましい。なぜなら、Ｌ＊Ｌのマトリクスにおいて、非０最低濃度のパターンにおけるＯＮドット同士間の最大の間隔がＬのルート２倍となるからである。したがって、本実施の形態では、８ドットでなくそのルート２倍の１１ドットを判定条件とした。
【００３９】
ベクタの線幅および線分長のいずれかが１１ドット未満であれば、上記（８）式を利用したカラー値の補正を行い（Ｓ５３）、両方とも１１ドット以上であれば、上記（７）式を利用したカラー値の補正を行う（Ｓ５２）。前述のように式（８）の補正は、入力カラー値をそのまま出力するので、実際には補正を省略したことに相当する。
【００４０】
１１ドット未満の場合、ステップＳ５３に続いて、Ｋ、Ｃ、Ｍ、Ｙの各々について、そのベクタの濃度が低濃度かどうかを判定する（Ｓ５４）。この具体的な判定方法については後述する。低濃度でなければ、後述するステップＳ４５へ進む。低濃度であれば、各色毎に当該濃度に基づいてディザマトリクスにより２値化処理（Ｓ５５）を行い、その後、先に生成したカラーパターンについて、細線消失防止処理を施す（Ｓ５６）。この細線消失防止処理の詳細は、本出願人による特願平１０−３７６６７３号に開示されている。このようにして得られたカラーパターンはＲＡＭ１２に登録される（図３、Ｓ３３）。
【００４１】
１１ドット以上の場合、ステップＳ５２で生成されたカラーパターンをγ変換（Ｓ４５）し、各色毎に当該濃度に基づいてディザマトリクスにより２値化（Ｓ４６）する。これによって得られたカラーパターンをＫについてはそのまま用い、Ｃ、Ｍ、ＹについてはＯＮドットを順次ずらして（Ｓ５７）、Ｃ、Ｍ、Ｙのカラーパターンを作成し、ＲＡＭ１２に登録する（図３、Ｓ３３）。この具体的な方法については後述する。
【００４２】
前記２値化処理では、より具体的には、まず、出力のＫ、Ｃ、Ｍ、Ｙの各カラーの濃度を図７のディザマトリクスである２値化テーブル（ｂａｙｅｒＤｉｔｈｅｒ_ｔｂｌ）７０にあてがい、それぞれのマスクマトリクスパターンを作成する。２値化テーブル７０は、本実施の形態では１個のみ存在し、Ｋのマスクマトリクスパターンとしては、２値化テーブル７０から得られたマスクマトリクスパターンをそのまま利用し、Ｃ、Ｍ、Ｙ用のマスクマトリクスパターンとしては、２値化テーブル７０から得られたマスクマトリクスパターンを順次１ｂｉｔシフトさせて生成している。このシフトは、ここでの例では、マトリクスの行（ラスタ）単位に右方向にシフトさせている。各行の最右端の値は次の行の先頭へ移動させる。但し、最下行最右端の値は最上行最左端に移動させる。
【００４３】
一例として、Ｋ、Ｃ、Ｍ、Ｙそれぞれが２５％濃度出力であった場合のベクタカラーパターン生成（Ｓ５２）の処理は、図７の２値化テーブル７０に２５％に対応する数値を適用することにより、マトリクス中の所定のドットがＯＮ状態（図では黒で示す）となった図８のマスクマトリクスパターンが生成される。これを、本実施の形態では、Ｋのインクに利用する。さらに、このパターンを上述の方法で順次１ｂｉｔシフトした結果がＣ（図９）、Ｍ（図１０）、Ｙ（図１１）となる。いずれもマトリクス内のＯＮドットの数は同じであり、そのマトリクス内の位置が異なる。
【００４４】
（８）式によるベクタカラーパターン生成（Ｓ５３）の処理では、（７）式で適用したような各色の濃度補正のためのマスキング処理を無効化する。さらに、好ましくは低濃度の場合に、前記細線消失防止処理を施したマスクマトリクスパターンを生成する。また、低濃度の場合にはγ変換およびずらし処理も省略する。このように、本発明では低濃度細線に対しては、各色間の比率を変更するような補正を抑止することにより、当該補正がかえって色の再現性を悪化させるのを防止することができる。
【００４５】
本実施の形態では、低濃度か否かの判定条件として、図６に示した条件を採用した。現実には、低濃度でのベクタ全体の欠落には、単に濃度が低いか否かだけでなく、ベクタの傾斜角度も影響するので、ここでは、次の９個の場合に条件を分けている。
【００４６】
第１の条件における「線幅１ドットで４５度方向」とは、与えられたベクタの始点、終点座標値のｘ増分の絶対値とｙ増分の絶対値とが等しいと判断された場合に相当する。このときにベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターン（カラーパターン）の濃度は６６％である。これより低い濃度ではベクタの全ドットが抜けてしまうことがありうる。したがって、この第１の条件に対する対処として、「濃度６６％以下ならカラーパターンの変更」を行うこととしている。なお、実際には濃度６６％では問題がないので「濃度６６％以下なら」ではなく「濃度６６％未満なら」としてもよい（以下も同様）。
【００４７】
第２の条件は「線幅が１ドットで４５度以外」（すなわち始点、終点座標値のｘ増分の絶対値とｙ増分の絶対値が等しくない）と判断された場合である。このときにベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は３３％である。したがって、この第２の条件に対する対処として、「濃度３３％以下ならカラーパターンの変更」を行うこととしている。
【００４８】
第３の条件の「線幅２ドットで垂直線以外」とは、線幅が２ドットで、始点、終点座標値のｘ増分が０でなくかつｙ増分が０でないと判断された場合である。本明細書では「垂直線」は水平線も含む、角度０度または９０度のベクタである。この第３の条件でベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は２４％である。したがって、この第３の条件に対する対処として、「濃度２４％以下ならカラーパターンの変更」を行うこととしている。
【００４９】
第４の条件は「線幅が２ドットで垂直線」の場合である。このときにベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は８％である。
【００５０】
第５の条件は、「線幅３および４ドット」の場合である。このとき、ベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は８％である。
【００５１】
第６の条件は、「線幅５ドット」の場合である。このときにベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は５％である。
【００５２】
第７の条件は、「線幅および線分長６，７，８，９ドット」の場合である。このときにベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は３％である。
【００５３】
第８の条件は、「線幅および線分長１０ドット」の場合である。このときにベクタの全ドットが抜けてしまうことがない最低濃度のマスクマトリクスパターンの濃度は２％である。
【００５４】
第９の条件は、「線幅および線分長１１ドット以上」の場合である。このときは、カラーパターンの変更を必要としないのでその変更は行わない。
【００５５】
以上、ベクタの欠落の判断のしかたについて説明したが、次に、細線消失防止のために実際にＬ＊Ｌマトリクスに基づいて（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）マトリクスを作成する方法について説明する。これは、Ｌ＊Ｌマトリクスの行（ＲＯＷ）および列（ＣＯＬＵＭＮ）のＬ＊Ｌ−１回配置換え（並び替え）を行って実現する。
【００５６】
行と列の並び替えを行うプログラム例（Ｃ言語で記載）は下記の通りである。このプログラムの主要部にはその部分の役割を示すコメントを付加してある。但し、このプログラムは行列の配置換えを行うための一例であり、同じ処理が実現できればプログラム言語およびその記述は任意である。
【００５７】
0004097111.tif 000004
0004097111.tif 000005
【００５８】
図１２は濃度２％未満のマスクマトリクスであり、これをタイリングすると図１７のようになる。このマスクマトリクスでは、かなりのベクタが欠落してしまう。図１２の８＊８のマスクマトリクスに対して前記プログラムの処理を行うことにより６４＊６４のマスクマトリクスを作成した結果を図１８に示す。これによって、細線の再現性は図１７の場合と比べるとはるかによくなる。
【００５９】
図１５のパターンＰ１は、配置換えの基となる８＊８のマスクマトリクスである。Ｐ２は、図１３で示したように、最上行を最下行へ移動させてＰ１の行の配置換えをしたものである。Ｐ３はＰ２に対して同様の行の配置換えをしたものである。同様にしてＰ８まで作成する。Ｐ９は、図１４で示したように、最右列を最左列に移動させてＰ１の列の配置換えをしたものである。Ｐ１０はＰ２に対して同じ列の配置換えをしたものである。同様にしてＰ１６まで作成する。さらに、次のパターン行であるパターンＰ１７〜Ｐ２４も同様に直前のパターン行の対応するパターンの配置換えにより作成する。以下の各パターン行についても同様である。
【００６０】
このようにして、Ｐ１のＬ＊Ｌのマスクマトリクスに基づいて、図１５に示したような（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）のマスクマトリクスを作成することができる。前述したように、図１２の２％未満の濃度の８＊８マスクマトリクスに基づいて同様に作成されたのが図１８の６４＊６４マスクマトリクスである。
【００６１】
しかし、図１８のマスクマトリクスパターンによって、細線の再現性は図１７の場合と比べるとはるかによくなるが、図１８に示したラインＤとラインＥのように特定の傾きを有するベクタについてはなおその全体の欠落が生じる。
【００６２】
図１６は、図１８に示したように特定の傾きのベクタについてその全体の欠落が生じることまで考慮した配置換えを説明するための図である。図１６のマスクマトリクスは、配置換えにより作成された図１５の（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）のマスクマトリクスに対してさらに別の行列配置換えを行ったものである。これにより、図１８に現れたようなＯＮドットの規則性をなくすことができる。
【００６３】
図１８におけるＯＮドットの規則性のなくし方について説明する。Ｌ＊Ｌのマスクマトリクスを１つの行列要素とするＭ＊Ｍのマスクマトリクスについて、その配列を変化させることで規則性をなくす。本実施の形態では、まず、Ｍ＊Ｍのマスクマトリクスの行について、第８行の内容を第３行に移し、元の第３行の内容を第４行へ移す。同様の元の第４行の内容を第６行へ、元の第６行の内容を第７行へ、元の第８行の内容を第３行へ移す。このようにして、Ｍ＊Ｍのマスクマトリクスの行の並べ替えを行う。次に、Ｍ＊Ｍのマスクマトリクスに対して、その列について同様の並べ替えを行う。このような操作により、図１６のような新たなＭ＊Ｍのマスクマトリクスが生成される。これは図１９の具体例に対応する。図１８のマスクマトリクスに比べて、図１９のマスクマトリクスはＯＮドットの配置の規則性がなくなっているのが分かる。これによりどのベクタデータの傾きでもベクタの欠落は生じない。規則性のなくし方はこれ以外にも種々考えられるので、どのように行ってもよい。
【００６４】
このように、前記プログラムによる図１５の配置生成と、Ｍ＊Ｍの配列における行および列の並べ替えによるマスクマトリクス生成手段により高精度で各色の濃淡を表現できるようになった。
【００６５】
本実施の形態におけるＬ＊Ｌのマスクマトリクスは８＊８なので６５階調の濃淡を表現できる。
【００６６】
以上の説明では、ベクタのライスタライズの都度、マスクマトリクスを生成するようにしたが、６５種類のマスクマトリクスをあらかじめ作成しておくことが可能である。これはテーブル化することができる。図１９で示した、（Ｌ＊Ｌ）＊（Ｌ＊Ｌ）のマスクマトリクスである６４＊６４のマスクマトリクスの６５階調もテーブル化しておくことができる。これらのテーブルを予め図１の不揮発性記憶手段としてのＲＯＭ１３に記憶させておくことによりＲＡＭ１２の使用量を減らすことができ、さらには、前記プログラムの処理が不要となるため処理速度の向上を図ることができる。
【００６７】
【発明の効果】
本発明の画像形成方法および装置によれば、ベクタのカラー濃度や線幅の如何にかかわらずベクタデータの色変化の発生を防止するとともに、濃度に応じて適切な印字を可能とする。また、細線消失防止処理により、細線等が全く印字されないという不具合の発生を防止できる。
【図面の簡単な説明】
【図１】本発明による画像形成装置の構成例を示すブロック図である。
【図２】図１の画像形成装置の入力データ受信から印字までの処理フローを示すフローチャートである。
【図３】図２のフロー内のステップＳ２２の言語解析に付随した処理ステップを説明するための図である。
【図４】一般的なベクタカラーパターン生成の詳細処理フローを示すフローチャートである。
【図５】本発明の実施の形態における、ベクタカラーパターン生成（Ｓ３２）の詳細処理フローを示すフローチャートである。
【図６】本発明の実施の形態における、ベクタ消失（欠落）が生じるか否かを判定するための判定条件を示した図である。
【図７】本発明の実施の形態における、８＊８のＢａｙｅｒ型ディザマトリクスを示す図である。
【図８】本発明の実施の形態における、濃度２５％における黒のマスクマトリクスを示す図である。
【図９】本発明の実施の形態における、濃度２５％におけるシアンのマスクマトリクスを示す図である。
【図１０】本発明の実施の形態における、濃度２５％におけるマジェンタのマスクマトリクスを示す図である。
【図１１】本発明の実施の形態における、濃度２５％におけるイエローのマスクマトリクスを示す図である。
【図１２】本発明の実施の形態における、濃度２％未満のマスクマトリクスを示す図である。
【図１３】パターンＰ１の最上行を最下行へ移動させてＰ１の行の配置換えをして得られるパターンＰ２を示す図である。
【図１４】パターンＰ１の最右列を最左列に移動させてＰ１の列の配置換えをして得られるパターンＰ９を示す図である。
【図１５】本発明の実施の形態における、配置換えの基となる８＊８のマスクマトリクスであるパターンＰ１を示す図である。
【図１６】図１８に示したように特定の傾きのベクタについてその全体の欠落が生じることまで考慮した配置換えを説明するための図である。
【図１７】図１２のマスクマトリクスをタイリングした様子を示す図である。
【図１８】図１２の８＊８のマスクマトリクスに対してプログラムの処理を行うことにより６４＊６４のマスクマトリクスを作成した結果を示す図である。
【図１９】図１６のような新たなＭ＊Ｍのマスクマトリクスに対応する具体例を示す図である。
【符号の説明】
１１  ＣＰＵ
１２  ＲＡＭ
１３  ＲＯＭ
１４  インターフェース
１５  液晶表示装置
１６  キー操作部
１７  印字部
１８  システムバス
【図１】
0004097111.tif 000006
【図２】
0004097111.tif 000007
【図３】
0004097111.tif 000008
【図４】
0004097111.tif 000009
【図５】
0004097111.tif 000010
【図６】
0004097111.tif 000011
【図７】
0004097111.tif 000012
【図８】
0004097111.tif 000013
【図９】
0004097111.tif 000014
【図１０】
0004097111.tif 000015
【図１１】
0004097111.tif 000016
【図１２】
0004097111.tif 000017
【図１３】
0004097111.tif 000018
【図１４】
0004097111.tif 000019
【図１５】
0004097111.tif 000020
【図１６】
0004097111.tif 000021
【図１７】
0004097111.tif 000022
【図１８】
0004097111.tif 000023
【図１９】
0004097111.tif 000024