(57)【要約】【課題】本発明は、グラデーション・ベクトルが走査線に対して水平、又は垂直の場合にも対応でき、グラデーションパターンの生成を容易に行い、グラデーションパターンの印刷を高速に行う印刷装置を提供するものである。【解決手段】グラデーションパターンの印刷が可能な印刷装置であり、グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得手段と、ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの色変化を判断する判断手段と、この判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成手段と、上記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画手段とを有する。【選択図】  図１
2009154509.tif 000002
【特許請求の範囲】
【請求項１】
グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得手段と、
該ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの変化を判断する判断手段と、
該判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成手段と、
前記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画手段と、
を有することを特徴とする印刷装置。
【請求項２】
前記垂直グラデーションパターン情報の生成は、垂直方向に取得する色情報の座標間隔が予め設定された規定値以下である場合、同じ色情報で描画を行い、
前記座標間隔が予め設定された規定値以上である場合、色変化の最小公倍数によって座標間隔を等分し、該等分値が前記規定値を越えるとき、各色の色情報を前記最小公倍数によって算出し、前記等分値が前記規定値を越えないとき、前記座標間隔を前記規定値で細分化した値に従って描画処理を行うことを特徴とする請求項１記載の印刷装置。
【請求項３】
前記水平グラデーションパターン情報の生成は、水平方向に取得する色情報の座標間隔が予め設定された規定値以下である場合、同じ色情報で描画を行い、
前記座標間隔が予め設定された規定値以上である場合、色変化の最小公倍数によって座標間隔を等分し、該等分値が前記規定値を越えるとき、各色の色情報を前記最小公倍数によって算出し、前記等分値が前記規定値を越えないとき、前記座標間隔を前記規定値で細分化した値に従って描画処理を行うことを特徴とする請求項１記載の印刷装置。
【請求項４】
前記斜めグラデーションパターン情報の生成は、前記斜め方向に対して法線方向に変換した色情報の切片の座標間隔が予め設定された規定値以下である場合、同じ色情報で描画を行い、
前記切片の座標間隔が予め設定された規定値以上である場合、色変化の最小公倍数によって切片の座標間隔を等分し、該等分値が前記規定値を越えるとき、各色の色情報を前記最小公倍数によって算出し、前記等分値が前記規定値を越えないとき、前記座標間隔を前記規定値で細分化した値に従って描画処理を行うことを特徴とする請求項１記載の印刷装置。
【請求項５】
グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得処理と、
該ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの色変化を判断する判断処理と、
該判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成処理と、
前記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画処理と、
を行うことを特徴とする印刷方法。
【請求項６】
グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得処理と、
該ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの色変化を判断する判断処理と、
該判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成処理と、
前記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画処理と、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、グラデーションパターンの生成が可能な印刷装置に関する。
【背景技術】
【０００２】
今日、プリンタ装置等の印刷装置は、複雑な図形や詳細なグラフィック画像の印刷にも使用され、その際色が徐々に変化するグラデーションパターンの印刷も必要となる。
【０００３】
特許文献１は上記グラデーションパターンの生成方法に関する発明であり、描画情報に基づいて色の変化方向と、始点及び終点の色情報を取得し、始点と終点を結ぶ直線に垂直であり、その内部の色値が均一となる複数の隣接する帯状領域を設定し、この帯状領域の境界と走査線との交点を求め、グラデーションパターンを生成する発明を開示する。
【特許文献１】特開平１１−２５２８２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記従来のグラデーションパターンの生成方法は、走査線に対して上記色の変化方向であるグラデーション・ベクトルの投影パターンを生成し、描画処理を行うものである。しかしながら、上記従来のグラデーションパターンの生成、描画処理においては、グラデーション・ベクトルが走査線に対して水平、又は垂直の場合には対応できない。
【０００５】
そこで、本発明はグラデーション・ベクトルが走査線に対して水平、又は垂直の場合にも対応でき、且つグラデーションパターンの生成、描画処理を簡素化し、グラデーションパターンの高速印刷を可能とする印刷装置を提供するものである。
【課題を解決するための手段】
【０００６】
上記課題は第１の発明によれば、グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得手段と、該ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの色変化を判断する判断手段と、該判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成手段と、前記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画手段とを有する印刷装置を提供することによって達成できる。
【０００７】
上記課題は第２の発明によれば、前記垂直グラデーションパターン情報の生成は、垂直方向に取得する色情報の座標間隔が予め設定された規定値以下である場合、同じ色情報で描画を行い、前記座標間隔が予め設定された規定値以上である場合、色変化の最小公倍数によって座標間隔を等分し、該等分値が前記規定値を越えるとき、各色の色情報を前記最小公倍数によって算出し、前記等分値が前記規定値を越えないとき、前記座標間隔を前記規定値で細分化した値に従って描画処理を行う印刷装置を提供することによって達成できる。
【０００８】
上記課題は第３の発明によれば、前記水平グラデーションパターン情報の生成は、水平方向に取得する色情報の座標間隔が予め設定された規定値以下である場合、同じ色情報で描画を行い、前記座標間隔が予め設定された規定値以上である場合、色変化の最小公倍数によって座標間隔を等分し、該等分値が前記規定値を越えるとき、各色の色情報を前記最小公倍数によって算出し、前記等分値が前記規定値を越えないとき、前記座標間隔を前記規定値で細分化した値に従って描画処理を行う印刷装置を提供することによって達成できる。
【０００９】
上記課題は第４の発明によれば、前記斜めグラデーションパターン情報の生成は、前記斜め方向に対して法線方向に変換した色情報の座標間隔が予め設定された規定値以下である場合、同じ色情報で描画を行い、前記座標間隔が予め設定された規定値以上である場合、色変化の最小公倍数によって座標間隔を等分し、該等分値が前記規定値を越えるとき、各色の色情報を前記最小公倍数によって算出し、前記等分値が前記規定値を越えないとき、前記座標間隔を前記規定値で細分化した値に従って描画処理を行う印刷装置を提供することによって達成できる。
【００１０】
上記課題は第５の発明によれば、グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得処理と、該ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの色変化を判断する判断処理と、該判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成処理と、前記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画処理とを行う印刷方法を提供することによって達成できる。
【００１１】
上記課題は第６の発明によれば、グラデーション印刷データに含まれるベクトル情報を取得するベクトル情報取得処理と、該ベクトル情報に基づいて、垂直方向、又は水平方向、又は斜め方向のグラデーションの色変化を判断する判断処理と、該判断結果に基づいて、垂直、又は水平、又は斜めのグラデーションパターン情報を作成する作成処理と、前記グラデーションパターン情報に基づいて、グラデーションパターンの描画処理を行う描画処理とをコンピュータに実行させるプログラムを提供することによって達成できる。
【発明の効果】
【００１２】
上記課題の解決手段によれば、ベクトル情報に基づいて色が変化する方向を判断し、垂直、又は水平、又は斜め専用の各グラデーションパターンを作成、描画し、且つ段差の目立たない範囲で規定値を設定し、規定値を越える場合細分化処理を行い、描画処理を簡素化すると共に、より高速にグラデーションパターンの印刷処理を行うものである。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態を図面を参照しながら説明する。
【００１４】
図１は、本発明の実施形態を説明する印刷装置のシステム構成図である。
尚、本例で使用する印刷装置は、印刷機能に加えて、スキャナ機能やファクシミリ機能、複写機能等を持つ複合機（以下、ＭＦＰ（多機能印刷装置・マルチファンクションプリンタ）で示す）であり、以後このＭＦＰを使用して説明する。
【００１５】
ＭＦＰ１は、スキャナ部２、ＭＦＰ制御部３、プリンタ部４で構成されている。スキャナ部２は読取機構部２ａを有し、読取機構部２ａの駆動により原稿台に載置された原稿画像が読み取られ、ＭＦＰ制御部３に原稿データが送信される。
【００１６】
ＭＦＰ制御部３は、ＭＦＰメイン制御部５、読取機構制御部６、表示操作制御部７、ＦＡＸ通信制御部８、ＬＡＮ通信制御部９、インターネット通信制御部１０、ＩＣカード装置制御部１１、記憶装置制御部１２、及び記憶装置（ＨＤＤ）１３で構成されている。
【００１７】
読取機構制御部６は前述のスキャナ部２に設けられた読取機構部２ａの機構制御を行い、スキャナ部２で読み取った原稿データをＭＦＰ制御部５に送る。
【００１８】
表示操作制御部７は、表示操作部１５に設けられたキー等の操作に基づく操作信号をＭＦＰメイン制御部５に出力する。また、ＭＦＰメイン制御部５から出力される表示データを表示操作部１５に表示する。さらに、記憶装置制御部１２は、記憶装置（ＨＤＤ）１３へのデータ書き込み、及び記憶装置（ＨＤＤ）１３に記憶されたデータの読み出し制御を行う。
【００１９】
この記憶装置（ＨＤＤ）１３には後述する色パレットテーブルや、区間管理テーブル、後述する垂直、水平、斜めの各グラデーションパターン情報を記憶するバッファ等が登録される。
また、ＬＡＮ通信制御部９は、本例で使用するＭＦＰ１をＬＡＮに接続するためのインターフェイスであり、クライアントＰＣ等との通信に使用され、例えばこのクライアントＰＣから印刷データが供給される。
【００２０】
また、ＦＡＸ通信制御部８は、ファクシミリデータの送受信制御を行う。また、インターネット通信制御部１０は、例えばＴＣＰ/ＩＰ（transmission control protocol/internet protocol）によってパケット通信を行う。さらに、ＩＣカード装置制御部１１はＩＣカードリーダ１６との間のインターフェイスであり、例えば親展印刷における認証に使用される。
【００２１】
一方、プリンタ部４はＰＰＲ制御部１７、印刷機構部１８、及び給紙装置１９で構成され、給紙装置１９から搬出された記録媒体にＰＰＲ制御部１７の制御に基づいて印刷処理が行われ、印刷結果は不図示の排紙部に出力される。
【００２２】
図２は上記記憶装置（ＨＤＤ）１３に登録される色パレットテーブル、及び区間管理テーブルの構成を説明する図である。先ず、同図（ａ）は色パレットテーブルの構成を説明する図である。色パレットテーブルは、パレットの登録数を示すパレット番号と、当該パレット番号に対応するＲＧＢ値、及びＣＭＹＫ値のデータを記録する。
【００２３】
具体的には、８ビット構成のＲ（赤）値、Ｇ（緑）値、Ｂ（青）値と、同じく８ビット構成のＣ（シアン）値、Ｍ（マゼンタ）値、Ｙ（イエロー）、及びＫ（ブラック）値が登録される。同図（ａ）に示す例では、パレット番号０（以下、パレット０で示す、他のパレット番号についても同様）には、Ｒ０、Ｇ０、Ｂ０、Ｃ０、Ｍ０、Ｙ０、Ｋ０が登録され、パレット１には、Ｒ１、Ｇ１、Ｂ１、Ｃ１、Ｍ１、Ｙ１、Ｋ１が登録され、以下同図（ａ）に示す通りである。
【００２４】
また、同図（ｂ）に示す区間管理テーブル２１は、印刷装置の副走査方向（Ｙ方向）に１ピクセル単位で描画データを管理するテーブルであり、Ｙ方向の登録最小座標を記憶する登録最小Ｙ座標記憶エリア２１ａ、及びＹ方向の登録最大座標を記憶する登録最大Ｙ座標記憶エリア２１ｂで設定されるエリア間の描画データを登録する。
【００２５】
区間管理テーブル２１は、区間数、最小Ｘ座標、最大Ｘ座標、区間情報ポインタで構成されている。また、区間情報は、各々の連続同色区間の開始Ｘピクセル（開始Ｘ座標）、終了Ｘピクセル（終了Ｘ座標）、及び区間色を示すパレット番号で構成されている。
尚、上記色パレットテーブル２０、及び区間管理テーブル２１は、後述する垂直、水平、又は斜めの各グラデーションパターンに対応して生成される。特に区間管理テーブル２１は、垂直、水平、又は斜めの各グラデーションパターンによって登録される情報が異なり、例えば垂直グラデーションパターンの場合には、登録最小Ｙ座標記憶エリア２１ａに垂直グラデーションパターンの始点の座標が登録され、登録最大Ｙ座標記憶エリア２１ｂの終点の座標が登録される。また、同じＹ座標に複数の区間情報が存在する場合でも、開始Ｘ及び終了Ｘの座標は異なるが、パレット番号は同一となる。尚、各Ｙ座標の最小Ｘ及び最大Ｘは、同じＹ座標の中でグラデーションパターンを描画するＸ座標の最小位置及び最大位置を示す。
【００２６】
図３はグラデーション・ベクトルの一例を示す図である。同図に示すグラデーション・ベクトルは、右斜め下方向にベクトルを有するグラデーションパターンであり、パターン開始座標（ＸＳ，ＹＳ）と終了座標（Ｘｅ，Ｙｅ）、及び色の変化点を表すグラデーション・ストップ群で構成される。
尚、グラデーション・ストップは、グラデーション・ベクトル上の色（ＲＧＢ値）の指定位置であり、ストップ数は任意の数に設定可能である。また、グラデーション・ストップはベクトルの相対位置を表し、オフセット値（Offset値）と、その位置の色（ＲＧＢ値）で構成される。具体的には、Offset値はベクトル開始座標より終了座標を１とした場合の開始座標よりの相対距離を示し、ＲＧＢ値はその位置での色値である。例えば、ベクトルの開始点が赤であり、中間点が緑であり、終了点が青である場合、グラデーション・ストップは３個であり、「Offset値＝０，Ｒ＝２５５，Ｇ＝０，Ｂ＝０」、「Offset値＝０．５，Ｒ＝０，Ｇ＝２５５，Ｂ＝０」、「Offset値＝１，Ｒ＝０，Ｇ＝０，Ｂ＝２５５」となる。
図４は、垂直グラデーションパターン情報のデータ構成を示す。垂直グラデーションパターン情報は、グラデーション・ベクトルが走査線方向（Ｘ方向）に対して垂直方向（Ｙ方向）のベクトル時に生成される情報である。すなわち、図３に示すグラデーション・ベクトルが矢印Ｙで示す方向の場合生成される情報であり、図４に示すように、情報１〜情報ｎが登録され、各情報はＹ座標とパレット番号から成る。ここで、Ｙ座標はパレットを使用する開始Ｙ座標であり、パレット番号は前述の色パレットテーブル２０のテーブル番号を示す。
以上の構成において、以下に本例の処理動作を説明する。
【００２７】
先ず、本例においては、グラデーションパターンで塗り潰す、例えば多角形描画の色の変化方向を示すグラデーション・ベクトルを判断する。図５は、この処理を説明するフローチャートであり、グラデーション・ベクトルと走査線（Ｘ軸）との向きにより垂直、水平、又は斜めに処理を分ける（ステップ（以下、Ｓで示す）１）。
【００２８】
例えば、走査線（Ｘ軸）に対してグラデーション・ベクトルが垂直の場合（垂直ベクトル）、垂直グラデーションパターン情報を作成する（Ｓ２）。一方、走査線（Ｘ軸）に対してグラデーション・ベクトルが水平の場合（水平ベクトル）、水平グラデーションパターン情報を作成する（Ｓ３）。さらに、走査線（Ｘ軸）に対してグラデーション・ベクトルが斜めの場合（斜めベクトル）、斜めグラデーションパターン情報を作成する（Ｓ４）。
【００２９】
以後、それぞれ作成する垂直、水平、又は斜めの各グラデーションパターン情報に従って垂直グラデーションパターン情報の描画処理（Ｓ５）、又は垂直グラデーションパターン情報の描画処理（Ｓ６）、又は斜めグラデーションパターン情報の描画処理（Ｓ７）を行う。
【００３０】
したがって、本例においては、先ずグラデーション・ベクトルに基づいて垂直、水平、又は斜めの各グラデーションパターンの作成を行い、グラデーション・ベクトルに従って描画処理を行う構成であり、例えば垂直、又は水平方向に色が変化するグラデーションパターンに対しては斜めの各グラデーションパターンを生成する必要がなく、例えば垂直のグラデーションパターンの生成、描画処理を行うことにより高速にグラデーションパターンの描画を行うことができる。また、例えば水平のグラデーションパターンの生成、描画処理を行うことにより高速にグラデーションパターンの描画を行うことができる。
【００３１】
以下、各方向のグラデーションパターンの生成、描画処理について説明する。
先ず、垂直グラデーションパターン情報の作成について説明する。図６は垂直グラデーションパターン情報の作成処理を説明するフローチャートである。
先ず、グラデーションパターン情報をＹ方向を昇順にデータを作成するため、ベクトル方向を判断する（ステップ（以下、ＳＴで示す）１）。この場合、グラデーション・ベクトルはＹ軸方向であり、ベクトル方向がプラス（＋）方向とは、例えば図３に示す矢印Ｙ方向を意味し、ベクトル方向がマイナス（−）方向とは、図３に示す矢印Ｙと反対方向を意味する。
【００３２】
ここで、ベクトル方向がプラス（＋）方向に進む場合、グラデーション・ストップ情報読み出し開始位置を最初（Offset値＝０）に設定し（ＳＴ２）、グラデーション・ストップ情報の読み出し方向を（＋）方向に設定する（ＳＴ３）。一方、ベクトル方向が（−）の場合、グラデーション・ストップ情報読み出し位置を最終（Offset値＝１）に設定し（ＳＴ４）、読み出し方向を（−）方向に設定する（ＳＴ５）。
【００３３】
次に、垂直グラデーションパターン格納バッファを取得し（ＳＴ６）、現在読み出したグラデーション・ストップのＲＧＢ値に対応するパレット番号を、前述の色パレットテーブル２０を検索して取得する（ＳＴ７）。尚、読み出したグラデーション・ストップのＲＧＢ値に対応するパレット番号が色パレットテーブル２０に登録されていない場合、新たに新規なパレット番号を追加登録する。
【００３４】
次に、現在のグラデーション・ストップのOffset値より算出されるＹ座標と、検索したパレット番号をパターン情報として、図４に示すバッファに登録し（ＳＴ８）、登録情報個数を１とする（ＳＴ９）。例えば、ベクトル方向がプラス（＋）であり、グラデーション・ストップの初期位置が前述の図３に示す開始座標（ＸＳ，ＹＳ）である場合、図４に示す情報１として、Ｙ座標ＹＳ、及びパレット番号０が登録される。
【００３５】
次に、次のグラデーション・ストップ情報を読み込み（ＳＴ１０）、次のグラデーション・ストップのＹ座標を算出する（ＳＴ１１）。そして、現在登録されているＹ座標と上記処理（ＳＴ１１）によって取得したＹ座標との距離を判断し（Ｓ１２）、Ｙ座標の差分が規定値より小さい場合、色パレットテーブル２０を検索し、パレット番号の色情報を取得する（Ｓ１３）。すなわち、上記規定値はグラデーションの段差が目立たない、予め設定されたデバイス固有の閾値であり、例えば３００ＤＰＩのデバイスでは規定値４（ドット）に設定し、６００ＤＰＩのデバイスでは規定値８（ドット）に設定する。
【００３６】
例えば、規定値が４に設定されている場合、Ｙ座標の差分が３（ドット）であれば規定値より小さいので以下の処理を行う。尚、Ｙ座標の差分が規定値より大きい場合については後述する。
【００３７】
先ず、上記のようにパレット番号の色情報を取得し（Ｓ１３）、Ｙ座標の比較を行う（ＳＴ１４）。ここで、前のＹ座標と算出したＹ座標が同じ場合、登録情報のパレット番号を取得パレット番号に書き換える（Ｓ１５）。一方、前のＹ座標と算出したＹ座標が異なる場合、新たに取得したパレット番号をバッファに登録し（Ｓ１６）、例えば情報２として新たなＹ座標、及びパレット番号（例えば、パレット番号１）を登録し、登録情報個数を＋１する（ＳＴ１７）。
【００３８】
その後、次のグラデーション・ストップを読み込み、同様の処理を繰り返し垂直グラデーションパターン情報の作成処理を行う（ＳＴ１０〜ＳＴ１７）。
一方、Ｙ座標の差分が規定値より大きい場合、以後図７に示すフローチャートの処理を実行する。先ず、既に登録したグラデーション・ストップの各色情報と読み込んだ色情報の各差分の最小公倍数を算出し（ＳＴ１８）、Ｙ座標の距離（変化分）を最小公倍数で区間分割する（ＳＴ１９）。そして、区間分割した距離を規定値と比較する（ＳＴ２０）。
【００３９】
例えば、色情報（ＲＧＢ値）の変化として、Ｒが２、Ｇが１、Ｂが３（以下「２，１，３」で示す）である場合（但し、各色の変化値はプラスでも、マイナスでもよい）、最小公倍数は６であり、この時のＹ座標の変化分が３０（ドット）であれば、区間分割数は５である。この場合、区間分割した距離が規定値より大きく、各色（ＲＧＢ値）の増減ステップ値を最小公倍数により算出し（ＳＴ２１）、各色の増減ステップ値により更新し、Ｙ座標を更新する（ＳＴ２２）。
【００４０】
例えば、上記例の場合、最小公倍数により算出した各色（ＲＧＢ値）の増減ステップ値はＲが区間分割６に対して２であり、３ステップ上昇毎に１増加する色値である。また、Ｇは区間分割６に対して１であり、６ステップ上昇毎に１増加する色値である。さらに、Ｂは区間分割６に対して３であり、６ステップ上昇毎に３増加する色値である。したがって、例えば上記例の場合、６ステップの色情報（ＲＧＢ値）は、（ａ，ｂ，ｃ）、（ａ，ｂ，ｃ）、（ａ，ｂ，ｃ＋１）、（ａ＋１，ｂ，ｃ＋１）、（ａ＋１，ｂ，ｃ＋２）、（ａ＋１，ｂ，ｃ＋２）となり、それぞれ対応するＹ座標と共に更新処理を行う（ＳＴ２２）。但し、ａは増減前の元のＲの色値であり、ｂも増減前の元のＧの色値であり、ｃも増減前の元のＢの色値である。
【００４１】
次に、更新した色情報に基づき色パレットテーブル２０を検索し、対応するパレット番号を取得し（ＳＴ２３）、更新したＹ座標と取得したパレット番号をバッファに登録し（ＳＴ２４）、登録情報個数を＋１する（ＳＴ２５）。その後、上記最小公倍数分、上記処理を繰り返し（ＳＴ２２〜ＳＴ２５）、例えば６個の情報をバッファに登録する。
【００４２】
一方、前述の区間分割した距離が規定値より小さい場合（ＳＴ２０が以下）、Ｙの増分値を上記規定値で割った細分値を算出する（ＳＴ２６）。そして、この細分値をもとに各色（ＲＧＢ値）の増減ステップを算出し、以後上記処理と同じ処理を行う。
【００４３】
例えば、色情報（ＲＧＢ値）の変化が前述と同様、「２，１，３」である場合、最小公倍数は６であり、この時のＹ座標の変化を１２（ドット）であるとすれば、区間分割数は２である。この場合、区間分割した距離が規定値より小さいので、Ｙの増分値を上記規定値で割った細分値を算出する（ＳＴ２７）。この場合、Ｙの増分値（１２）を規定値（４）で細分化することになり、細分値は３となる。
【００４４】
したがって、この細分値を基づく各色（ＲＧＢ値）の増減ステップは、Ｙ座標の増分１２を３ステップとなり、色情報（ＲＧＢ値）は、（ａ，ｂ，ｃ）、（ａ＋１，ｂ，ｃ＋１）、（ａ＋１，ｂ，ｃ＋２）となり、それぞれ対応するＹ座標と共に更新処理を行う（ＳＴ２８）。そして、更新した色情報に基づき色パレットテーブル２０を検索し、対応するパレット番号を取得し（ＳＴ２９）、更新したＹ座標と取得したパレット番号をバッファに登録し（ＳＴ３０）、登録情報個数を＋１する（ＳＴ３１）。
その後、細分値分、上記処理を繰り返し（ＳＴ２８〜ＳＴ３１）、例えば３個の情報をバッファに登録する。
【００４５】
以後、全てのグラデーション・ストップが終了するまで、同様の処理を繰り返し、図４に示す垂直グラデーションパターン情報の作成を終了する。
以上のようにして作成した垂直グラデーションパターン情報に基づいて、以後行う描画処理を説明する。
【００４６】
図８は、垂直グラデーションパターン情報に基づいて行う描画処理を説明するフローチャートである。先ず、前述のバッファから描画開始Ｙ座標に対応する垂直グラデーションパターン情報を検索し（ＳＴ３２）、残り検索数の設定を行う（ＳＴ３３）。例えば、垂直グラデーションパターン情報が多角形の塗り潰し描画の場合、当該多角形の最小Ｙ座標の情報を検索し、対応する情報を読み出す。
【００４７】
上記最初の処理では、残り検索数は１以上であり（ＳＴ３４がＹＥＳ）、次情報のＹ座標の読み込み処理を行う（ＳＴ３５）。すなわち、前述の図４に登録した次の情報（例えば、情報２）の読み込み処理を行い、この情報に含まれるＹ座標の情報を取得する。
次に、Ｙ座標の判断を行い（ＳＴ３６）、前のＹ座標と今回のＹ座標（次の情報から読み出したＹ座標）を比較し、同じ場合にはグラデーションパターン情報テーブルの次情報に移行し（ＳＴ３７）、残り検索数を−１する（ＳＴ３８）。
【００４８】
一方、前のＹ座標と今回のＹ座標を比較し、更新されている場合には塗り潰し区間の算出を行う（ＳＴ３９）。例えば、多角形描画の場合、前のＹ座標と今回のＹ座標から塗り潰し区間を算出する。そして、算出した区間を読み出したパレット番号の色情報に基づいて描画する（ＳＴ４０）。以後、算出した区間数分、読み出したパレット番号の色情報に基づいて描画処理を行う。
その後、描画Ｙ座標を＋１し（ＳＴ４１）、例えば多角形描画塗り潰し情報を更新し、前述の登録最大Ｙ座標記憶エリア２１ｂに登録されたＹ座標まで同様の処理を繰り返し、グラデーションパターンの描画処理を行う（ＳＴ４２）。
【００４９】
以上のようにして、本例によれば描画すべきグラデーションパターンのベクトル情報から垂直方向に色が変化するグラデーションであると判断する場合、直ちに上記垂直グラデーションパターン情報の生成処理を行い、更に描画処理を行うことによって、高速にグラデーションパターンの印刷を行うことができる。
また、垂直グラデーションパターン情報の作成処理も、Ｙ座標の移動量が、例えば規定値以下である場合にはグラデーションの段差が目立たない範囲で同じ色情報を使用し、規定値以上である場合には最小公倍数を使用して細分化処理を行い、グラデーションパターンの作成を簡素化し、より高速なグラデーションパターンの描画処理を可能にすることができる。
【００５０】
次に、水平グラデーションパターン情報の作成処理について説明する。
水平グラデーションパターン情報の作成を行う場合、水平方向に色の変化がある場合であり、図３に示すグラデーション・ベクトルがＸ方向を指示する場合である。
図９は、水平グラデーションパターン情報の作成処理を説明するフローチャートである。本例の処理は前述の垂直グラデーションパターン情報の作成処理と基本的に同じであり、先ずベクトル方向を判断し（ステップ（以下、ＳＴＰで示す）１）、ベクトル方向がプラス（＋）方向に進む場合、グラデーション・ストップ情報読み出し開始位置を最初の情報に設定し（ＳＴＰ２）、グラデーション・ストップ情報の読み出し方向を（＋）方向に設定する（ＳＴＰ３）。一方、ベクトル方向が（−）の場合、グラデーション・ストップ情報読み出し位置を最終の情報に設定し（ＳＴＰ４）、読み出し方向を（−）方向に設定する（ＳＴＰ５）。
【００５１】
次に、水平グラデーションパターン格納バッファを取得し（ＳＴＰ６）、現在読み出したグラデーション・ストップのＲＧＢ値に対応するパレット番号を取得し（ＳＴＰ７）、現在のグラデーション・ストップのＸ座標と、検索したパレット番号をパターン情報として、バッファに登録し（ＳＴＰ８）、登録情報個数を１とする（ＳＴＰ９）。
次に、次のグラデーション・ストップ情報を読み込み（ＳＴＰ１０）、次のグラデーション・ストップのＹ座標を算出し（ＳＴＰ１１）、現在登録されているＸ座標と上記処理（ＳＴＰ１１）によって取得したＸ座標との距離を判断し（Ｓ１２）、Ｘ座標の差分が規定値より小さい場合、色パレットテーブルを検索し、パレット番号の色情報を取得する（ＳＴＰ１３）。
【００５２】
上記処理も前述の垂直グラデーションパターン情報の作成処理と同様であり、グラデーションの段差が目立たない予め設定された規定値を閾値として同じ色情報を使用し（ＳＴＰ１３〜ＳＴＰ１７）、規定値以上である場合には最小公倍数を算出し、細分化処理によってグラデーション情報を作成する（ＳＴＰ１８〜ＳＴＰ３７）。
すなわち、Ｘ座標の移動分が規定値より小さい場合、パレット番号の色情報を取得し（ＳＴＰ１３）、Ｘ座標の比較を行い（ＳＴＰ１４）、前のＸ座標と算出したＸ座標が同じ場合、登録情報のテーブル番号を取得テーブル番号に書き換え（ＳＴＰ１５）、前のＹ座標と算出したＹ座標が異なる場合、新たに取得したパレット番号をバッファに登録し（ＳＴＰ１６）、登録情報個数を＋１する（ＳＴＰ１７）。
また、Ｘ座標の差分が規定値より大きい場合、以後図１０に示すフローチャートの処理を実行し、先ず最小公倍数を算出し（ＳＴＰ１８）、Ｘ座標の距離（変化分）を上記最小公倍数で区間分割する（ＳＴＰ１９）。そして、区間分割した距離を規定値と比較し（ＳＴＰ２０）、規定値より大きい場合、各色情報の増減ステップ数を最小公倍数により算出し（ＳＴＰ２１）、更新Ｘ座標−１を終了座標として登録する（ＳＴＰ２２）。その後、色情報に基づき対応するパレット番号を取得し、更新したＹ座標と取得したパレット番号をバッファに登録し、登録情報個数を＋１する（ＳＴＰ２３〜ＳＴＰ２６）。
その後、上記処理が終了するとグラデーション・ストップのＸ座標を区間情報の最終座標として登録を行い（ＳＴＰ２７）、登録区間情報を次へ移動する（ＳＴＰ２８）。
一方、前述の区間分割した距離が規定値より小さい場合（ＳＴＰ２０が以下）、Ｘの増分値を上記規定値で割った細分値を算出し（ＳＴＰ２９）、この細分値を基に各色（ＲＧＢ値）の増減ステップを算出し（ＳＴＰ３０）、更新Ｘ座標−１を終了座標として登録する（ＳＴＰ３１）。以後前述の処理と同じ処理を実行する（ＳＴＰ３２〜ＳＴＰ３７）。
以上のようにして作成した水平グラデーションパターン情報に基づいて、以後行う描画処理について説明する。
図１１は、作成した水平グラデーションパターン情報に基づいて行う描画処理を説明するフローチャートである。先ず、水平グラデーションパターン情報が記録されたバッファの検索位置を先頭に設定する（ＳＴＰ３８）。すなわち、Ｘ座標の最も小さい位置に検索位置を設定する。
【００５３】
次に、残り検索数を登録情報個数に設定し（ＳＴＰ３９）、多角形描画による塗り潰し区間を算出する（ＳＴＰ４０）。ここで、塗り潰し区間が無い場合、処理（ＳＴＰ４２）に移行する。一方、塗り潰し区間が存在する場合には残り区間情報の有無を判断し（ＳＴＰ４３）、区間情報が有る場合には、以下の処理を行う。
先ず、塗り潰し区間内であるか判断する（ＳＴＰ４４）。ここで、塗り潰し区間内であれば、現在の検索テーブルの開始位置と終了位置の間をパレット番号の色情報で描画する（ＳＴＰ４５）。そして、残り検索数を−１し（ＳＴＰ４６）、検索テーブル位置を次ぎに移動する（ＳＴＰ４７）。その後、この処理を塗り潰し区間が終了するまで繰り返す。
一方、検索区間が塗り潰し区間の一部である場合、即ち検索区間が一部塗り潰し区間からはみ出す場合、はみ出し位置を判断して以下の処理を行う（ＳＴＰ４８）。先ず、開始位置が塗り潰し区間からはみ出す場合、塗り潰し先頭位置から現在の検索テーブルの終了座標までパレット番号の色情報で描画し（ＳＴＰ４９）、以降前述の処理（ＳＴＰ４６、ＳＴＰ４７）を実行する。一方、終了位置が塗り潰し区間からはみ出す場合、現在の検索テーブルの開始位置から塗り潰し区間の最後までをパレット番号の色情報で描画し（ＳＴＰ５０）、残り検索数を−１し（ＳＴＰ５１）、次の塗り潰し区間の処理に移行する。
【００５４】
また、検索区間が塗り潰し区間外である場合、塗り潰し区間を現在のパレット番号の色情報で描画し（ＳＴＰ５２）、残り検索数を−１し（ＳＴＰ５１）、次の塗り潰し区間の処理に移行する。
尚、検察する区間情報がない場合、塗り潰し区間を全て最後の検察テーブルのパレット番号の色情報で描画し（ＳＴＰ５３）、Ｙ座標を＋１し（ＳＴＰ４２）、次の走査線の描画に移行し、多角形描画塗り潰し情報を更新する（ＳＴＰ５４）。その後、多角形描画が継続する場合には、同様の処理を継続し、終了であれば処理を終了する（ＳＴＰ５５）。
以上のように、本例によれば描画すべきグラデーションパターンのベクトル情報から水平方向に色が変化するグラデーションであると判断する場合、直ちに水平グラデーションパターン情報の生成を行い、描画処理を実行することによって、高速にグラデーションパターンの印刷を行うことができる。
【００５５】
また、水平グラデーションパターン情報の作成も、前述のように移動量が、例えば規定値以下である場合にはグラデーションの段差が目立たない範囲で同じ色情報を使用し、規定値以上である場合には最小公倍数や細分化処理によってグラデーション情報を設定し、グラデーションパターンの作成を簡素化すると共に、高速なグラデーションパターンの描画処理を行うことができる。
次に、斜めグラデーションパターン情報の作成処理について説明する。
この斜めグラデーションパターン情報の作成は、実際にはグラデーション・ベクトルに対する法線ベクトルと走査線との切片に対する水平グラデーションパターン情報の作成処理を行うものである。
【００５６】
図１２は、斜めグラデーションパターン情報の作成処理を説明するフローチャートである。本例の場合、先ず法線ベクトルを算出する（ステップ（以下、Ｗで示す）１）。次に、算出した法線ベクトルの方向を判断し（Ｗ２）、ベクトル方向がプラス（＋）方向に進む場合、前述と同様にしてグラデーション・ストップ情報読み出し開始位置を最初の情報に設定し（Ｗ３）、グラデーション・ストップ情報の読み出し方向を（＋）方向に設定する（Ｗ４）。一方、ベクトル方向が（−）の場合、グラデーション・ストップ情報読み出し位置を最終の情報に設定し（Ｗ５）、読み出し方向を（−）方向に設定する（Ｗ６）。
次に、グラデーション・ベクトル上のグラデーション・ストップ位置に対する法線ベクトル上の描画開始最小Ｙ座標の切片（Ｘ座標）を全て算出する（Ｗ７）。例えば、図３に示す斜め下方向にグラデーションが変化する斜めグラデーションパターンの場合、斜めグラデーション・ベクトルのストップ位置Ａ、Ｂ、Ｃ、・・・に対応するＸ座標上の切片ａ、ｂ、・・・を算出する。
【００５７】
次に、斜めグラデーションパターン格納バッファを取得し（Ｗ８）、現在読み出したグラデーション・ストップのＲＧＢ値に対応するパレット番号を取得し（Ｗ９）、現在のグラデーション・ストップに対応する切片であるＸ座標を開始位置とし、取得したパレット番号をパターン情報として、バッファに登録し（Ｗ１０）、登録情報個数を１とする（Ｗ１１）。
次に、前述と同様、次グラデーション・ストップ情報を読み込み（Ｗ１２）、次グラデーション・ストップに対する切片であるＸ座標を算出し（Ｗ１３）、現在登録されているＸ座標と上記処理（Ｗ１３）によって算出したＸ座標との距離を判断し（Ｗ１４）、Ｘ座標の差分が規定値より小さい場合、色パレットテーブルを検索し、パレット番号の色情報を取得する（Ｗ１５）。
以下、前述の水平グラデーションパターン情報の作成処理と同様であり、グラデーションの段差が目立たない予め設定された規定値を閾値としてグラデーションの段差が目立たない範囲で同じ色情報を使用し（Ｗ１５〜Ｗ１９）、規定値以上である場合には最小公倍数を算出し、細分化処理によってグラデーション情報を設定する（図１３に示すＷ２０〜Ｗ３９）。
【００５８】
以上のようにして作成した斜めグラデーションパターン情報に基づいて、以下描画処理について説明する。
図１４は、作成した斜めグラデーションパターン情報に基づいて行う描画処理を説明するフローチャートである。先ず、法線ベクトルのＤＤＡ処理の初期化を行い（Ｗ４０）、斜めグラデーションパターン情報が記録されたバッファの検索位置を先頭に設定する（Ｗ４１）。すなわち、切片であるＸ座標の最も小さい位置に検索位置を設定する。
以下、前述の水平グラデーションパターン情報の場合と同様にして、残り検索数を登録情報個数に設定し（Ｗ４２）、多角形描画による塗り潰し区間を算出する（Ｗ４３）。ここで、塗り潰し区間が無い場合、処理（Ｗ４５）に移行する。一方、塗り潰し区間が存在する場合には残りパターン区間情報の有無を判断し（Ｗ４４）、区間情報が有る場合には、前述のように、検索区間が塗り潰し区間内であるか、又は一部が塗り潰し区間内であるか、更に塗り潰し区間外であるかによって対応する処理を実行する。すなわち、検索区間が塗り潰し区間内である場合処理（ＳＴＰ４８〜ＳＴＰ５０）を実行し、一部が塗り潰し区間内である場合処理（ＳＴＰ５１〜ＳＴＰ５４）を実行し、塗り潰し区間外である場合処理（ＳＴＰ５６）を実行する。
【００５９】
その後、前述と同様、Ｙ座標を＋１し（Ｗ４５）、多角形描画塗り潰し情報を更新する（Ｗ５７）。そして、法線ベクトルのＤＤＡ実行により、切片であるＸ座標の増減値を算出し（Ｗ５８）、全てのパターンデータの開始、終了の座標に算出増減値を加算し（Ｗ５９）、多角形描画が継続する場合には、同様の処理を継続し、終了であれば処理を終了する（Ｗ６０）。
以上のように、本例によれば描画すべきグラデーションパターンのベクトル情報から斜め方向に色が変化するグラデーションであると判断する場合、斜めグラデーションパターン情報の生成を行い、描画処理を実行することによって、高速にグラデーションパターンの印刷を行うことができる。
また、斜めグラデーションパターン情報の作成も、前述のように移動量が、例えば規定値以下である場合にはグラデーションの段差が目立たない範囲で同じ色情報を使用し、規定値以上である場合には最小公倍数や細分化処理によってグラデーション情報を設定し、グラデーションパターンの作成を容易に行うと共に、高速なグラデーションパターンの描画処理を可能にすることができる。
【００６０】
以上のように、本実施形態によれば、グラデーション・ベクトルの方向を判断することによって、走査線に対して垂直、水平、又は斜め専用の各グラデーションパターンの作成、及び描画処理を行い、効率よく、高速にグラデーションパターンの印刷処理を行うことができる。
また、グラデーションパターンの作成において、段差の目立たない範囲で規定値を使用し、規定値を越えるストップ位置に対して最小公倍数を使用し、細分化処理を行うことによって描画処理を簡素化し、より高速なグラデーションパターンの印刷処理を可能とするものである。
尚、上記実施形態の説明では、印刷装置としてＭＦＰの例で説明したが、ＭＦＰに限らず、各種の印刷装置に適用可能である。
【図面の簡単な説明】
【００６１】
【図１】本発明の実施形態を説明する印刷装置のシステム構成図である。
【図２】（ａ）は、記憶装置（ＨＤＤ）に登録される色パレットテーブルを説明する図であり、（ｂ）は、区間管理テーブルの構成を説明する図である。
【図３】グラデーション・ベクトルの一例を示す図である。
【図４】垂直グラデーションパターン情報のデータ構成を示す図である。
【図５】グラデーションパターンで塗り潰す多角形描画の色の変化方向を判断する処理を説明するフローチャートである。
【図６】垂直グラデーションパターン情報の作成処理を説明するフローチャートである。
【図７】垂直グラデーションパターン情報の作成処理を説明するフローチャートである。
【図８】垂直グラデーションパターン情報の描画処理を説明するフローチャートである。
【図９】水平グラデーションパターン情報の作成処理を説明するフローチャートである。
【図１０】水平グラデーションパターン情報の作成処理を説明するフローチャートである。
【図１１】水平グラデーションパターン情報の描画処理を説明するフローチャートである。
【図１２】斜めグラデーションパターン情報の作成処理を説明するフローチャートである。
【図１３】斜めグラデーションパターン情報の作成処理を説明するフローチャートである。
【図１４】斜めグラデーションパターン情報の描画処理を説明するフローチャートである。
【符号の説明】
【００６２】
１・・・ＭＦＰ
２・・・スキャナ部
３・・・ＭＦＰ制御部
４・・・プリンタ部
５・・・ＭＦＰメイン制御部
６・・・読取機構制御部
７・・・表示操作制御部
８・・・ＦＡＸ通信制御部
９・・・ＬＡＮ通信制御部
１０・・インターネット通信制御部
１１・・ＩＣカード装置制御部
１２・・記憶装置制御部
１３・・記憶装置（ＨＤＤ）
１６・・ＩＣカードリーダ
１７・・ＰＰＲ制御部
１８・・印刷機構部
１９・・給紙装置
２０・・色パレットテーブル
２１・・区間管理テーブル
２１ａ・・登録最小Ｙ座標記憶エリア
２１ｂ・・登録最大Ｙ座標記憶エリア
【図１】
2009154509.tif 000003
【図３】
2009154509.tif 000004
【図４】
2009154509.tif 000005
【図５】
2009154509.tif 000006
【図６】
2009154509.tif 000007
【図７】
2009154509.tif 000008
【図８】
2009154509.tif 000009
【図９】
2009154509.tif 000010
【図１０】
2009154509.tif 000011
【図１１】
2009154509.tif 000012
【図１２】
2009154509.tif 000013
【図１３】
2009154509.tif 000014
【図１４】
2009154509.tif 000015
【図２】
2009154509.tif 000016