JP3570164B2 - 画像形成装置およびグラデーション描画方法 - Google Patents
画像形成装置およびグラデーション描画方法 Download PDFInfo
- Publication number
- JP3570164B2 JP3570164B2 JP19985697A JP19985697A JP3570164B2 JP 3570164 B2 JP3570164 B2 JP 3570164B2 JP 19985697 A JP19985697 A JP 19985697A JP 19985697 A JP19985697 A JP 19985697A JP 3570164 B2 JP3570164 B2 JP 3570164B2
- Authority
- JP
- Japan
- Prior art keywords
- gradation
- scanning line
- vector
- color
- gradation pattern
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Dot-Matrix Printers And Others (AREA)
- Color, Gradation (AREA)
- Image Generation (AREA)
Description
【発明の属する技術分野】
本発明は画像形成装置およびグラデーション描画方法に関し、特に画像描画命令を実行して画像情報を形成する際に徐々に変化する色を持った開曲線を配置して構成する波形のグラデーションを効率的に描画する画像形成装置およびグラデーション描画方法に関する。
【0002】
【従来の技術】
計算機システムを用いた文書作成システムおよび文書印刷システムが高度化するに従い、そこで用いられる表現技術も高度なものになってきている。効果的なプレゼンテーションや立体の形状表現などの目的のためには、ある描画領域の色を徐々に変化させるグラデーションという技法が用いられている。
【0003】
文書作成ソフトウェアでは様々なユーザインタフェースを用いてグラデーションの指定を行っているが、プリンタ側ではこれを印刷することが高い負荷となっている。これは、文書データを記述するためのページ記述言語にグラデーションを効率的に記述するための方法がないためである。このため、グラデーションを実現するには、ページ記述言語として、同じ形状で僅かに色の異なる領域を少しずつずらして重ねて描画する手続きで記述することになる。たとえば、ある方向に波形の開曲線を配置して色が滑らかに変化していくようなグラデーションでは、波形の開曲線を色の変化方向に沿って描画位置を少しづつずらしながら描画するという処理を何回も繰り返して行わなければならないので、ページ記述言語処理系がこのような波形のグラデーションパターンを生成する際には、繁雑な手続き実行が避けられず、どうしても処理負荷の高いものとなっている。
【0004】
これに対し、プリンタ側でグラデーションを実現する方法が特開平8−72317号公報に開示されている。この方法は、ページ記述言語の記法の一部としてグラデーション記述を導入し、これを解釈する際にはバックグラウンドとして展開したグラデーションパターンを描画対象図形の形状で切り取ることで、プリンタ内でのグラデーションを実現するものである。また、この方法においては、2点間の線形グラデーションを描画するために微小な帯状領域の境界をDDA(ディジタル・デファレンシャル・アルゴリズム)を用いて計算している。これは、ある走査線と交わる図形の交点が次の走査線ではどの位置に移動するかを計算するよく知られたアルゴリズムであり、これを用いて走査線との交点を先に全部計算し、交点間の塗りつぶし処理を行うようにしている。
【0005】
【発明が解決しようとする課題】
しかし、特開平8−72317号公報に開示された方法では、図形形状よりも大きなグラデーションパターンを一度展開しておいてから図形形状に沿って切り取るため、描画対象でない領域の色まで計算する必要があった。また、この方法では開曲線を配置して構成される波形のグラデーションを描画することができないという問題点があった。
【0006】
本発明はこのような点に鑑みてなされたものであり、開曲線を配置して構成される波形のグラデーション描画のための負荷を軽減した画像形成装置およびグラデーション描画方法を提供することを目的とする。
【0007】
【課題を解決するための手段】
本発明では上記問題を解決するために、画像描画命令を実行して出力画像を得るための画像形成装置において、入力された印刷ジョブを解析して描画命令と描画命令のパラメータとなる描画データとを生成する命令解析手段と、前記命令解析手段によって解析された描画命令に従って描画処理を行う描画手段と、前記描画データを保存する描画データ保持手段と、波形形状の開曲線によるグラデーション描画が指示されたときに前記描画手段より呼出され、前記描画データ保持手段に保持されたグラデーション情報をもとに、描画領域を横切るすべての走査線に対して色が変化する方向に直角な方向に延びる帯状領域の境界との交点を求めてグラデーションパターンを展開するグラデーションパターン展開手段と、前記帯状領域の境界および前記開曲線の前記走査線上における交差位置の差を求めて前記グラデーションパターンを補正するグラデーションパターン補正手段と、を備えていることを特徴とする画像形成装置が提供される。
【0008】
このような画像形成装置によれば、命令解析手段により描画平面上の2点とそれぞれの点での色と波形形状とを指定したグラデーション描画のための描画データが解析され、描画データ保持手段に保存される。命令解析手段においてグラデーション描画のための描画命令が解析されると、描画手段に送られ、描画手段はグラデーションパターン展開手段を利用して帯状のグラデーションパターンを展開する。このとき、グラデーションパターン展開手段は描画データ保持手段を参照し、描画データによって指定された色と座標値とを基に走査線上の描画開始位置が属する帯状領域からその帯状領域内の色値を求め、更に次に色の変化する帯状領域の境界の位置を求める操作を描画領域の端まで繰り返すことで、描画領域内で順に変化する色を表す画素の系列を求める。この位置情報に対し、グラデーションパターン補正手段は描画データ保持手段に保持された波形形状のデータを基に計算された補正情報を用いて位置情報を補正する。この処理を描画領域を横切る走査線すべてに適用することでグラデーションパターンを生成する。ここで、グラデーションパターンを構成する均一色の微小区間の形状は色の変化方向に順に配置された開曲線を境界とする波形形状とし、それぞれの微小区間の幅は必ずしも等しくなくてもよい。
【0009】
また、本発明においては、画像描画命令を実行して波形形状の開曲線によるグラデーション出力画像を得るグラデーション描画方法において、描画平面上での色の変化開始位置および変化終了位置を示す情報と、前記変化開始位置および変化終了位置における色値の情報と、前記開曲線の一つの波形形状を定義する情報とで波形形状のグラデーション描画を表現するために必要なパラメータを取得し、前記変化開始位置から変化終了位置の情報をもとに色の変化方向のグラデーションベクトルを求めてそれを正規化し、前記変化開始位置および変化終了位置の情報から同一の色で描画される前記グラデーションベクトルの刻み幅を算出し、描画開始点から前記グラデーションベクトルの方向への正射影から前記変化開始位置からの前記ベクトル上の距離に相当する長さを算出し、算出された長さから前記描画開始点がそれぞれ前記刻み幅の幅を有する帯状領域の何番目に属しているかを計算して前記描画開始点が属する帯状領域の色値を求め、処理対象にしている交点から次に色が変わる前記帯状領域の境界までの走査線上の移動量を算出してグラデーションパターンに追加する処理を描画図形の描画終了点を越えるまで繰り返し行い、前記帯状領域の境界から前記開曲線までの走査線上でのオフセット値を求めて前記移動量を補正すること、を特徴とするグラデーション描画方法が提供される。
【0010】
このグラデーション描画方法によれば、波形形状のグラデーション描画を表現するために必要なパラメータを基に走査線と描画領域の境界とが交わる位置での色を求め、更に次に色の変化する位置を求め、これら求めた位置を補正情報を用いて補正する。この操作を描画領域の端まで繰り返すことで、描画領域内で順に変化する色を表す画素の系列が求められる。そして、この処理を描画領域を横切る全走査線に適用することで、グラデーションパターンが描画される。
【0011】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図1は本発明の画像生成装置の原理図である。本発明における画像生成装置は、入力された印刷ジョブを解析する命令解析手段1と、解析された描画命令に従って描画処理を行う描画手段2と、描画命令のパラメータとなる描画データを保存する描画データ保持手段3と、波形形状のグラデーションの描画命令に従って描画データ保持手段3に保持されたグラデーションを表現するのに必要なグラデーション情報を基に帯状のグラデーションパターンを展開処理するグラデーションパターン展開手段4と、展開された帯状のグラデーションパターンに対して波形形状のグラデーションパターンとなるよう補正処理をするグラデーションパターン補正手段5とから構成されている。
【0012】
命令解析手段1にて解析され、描画データ保持手段3にて保存される描画データとする、波形形状のグラデーションを表現するのに必要なグラデーション情報は、色の変化方向に対応するベクトルの端点を表す2点と、その2点の位置での色の値と、単位グラデーションパターンの形状と、単位グラデーションパターン間の距離とからなっている。色の変化方向のベクトルの端点はその座標値で与えられ、描画領域に必ずしも含まれていなくてもよい。色の値はRGBやYMCKなどの色空間での座標値とする。単位グラデーションパターンの形状は、閉曲線を色の変化方向に平行移動しながら配置したときに得られる波形の形状とし、その閉曲線の形状の情報も同時に与えられるものとする。単位グラデーションパターン間の距離は、そのパターンを色の変化方向に配置する際の距離であり、一定の固定値を用いるか変動する値の系列が用いられる。
【0013】
描画命令が入力されると、描画手段2が描画を開始するが、描画命令がグラデーション描画の命令であると、グラデーションパターン展開手段4での処理となる。グラデーションパターン展開手段4は、グラデーション描画領域に含まれる走査線のそれぞれを走査し、走査線上の描画領域開始位置から描画領域終了位置までで色が変化する位置と色値との系列を求めることで、画素列または画素値のランレングス表現を生成する。
【0014】
走査線上の描画開始位置での色値を求めるためには、次のようにすればよい。まず、色の変化方向のベクトルの始点から走査線上の描画領域開始位置へのベクトルを考え、そのベクトルの色の変化方向のベクトルへの正射影を求め、その正射影の長さからその描画領域開始位置の属する帯状領域を求める。単位グラデーションパターン間の距離が固定値の場合は、求めた正射影の長さとその固定値の比を求めれば描画領域開始位置はどの帯状領域に属するかを容易に判定することができる。単位グラデーションパターン間の距離が変動する値の系列で与えられた場合でも、その累積値と正射影の長さを比較することで同様の結果を得ることができる。
【0015】
グラデーションパターン展開手段4で帯状領域の境界が走査線と交わる位置が求められると、続いて、グラデーションパターン補正手段5により、求めた帯状領域の2つの境界が走査線と交わる点を求め、補正情報を用いて補正し、走査線上の描画領域開始位置が補正した2つの境界の間にあるかどうかを調べる。ここで、描画領域開始位置が補正した2つの境界の間になければ、その前後の帯状領域に順に同様の操作を施して、描画領域開始位置が属する波形領域を判定する。このときの色値は、始めに描画データとして与えられた2つの色値の差を等分して得られる色値の増分を用いて容易に求めることができる。また、以降の走査線上での色の変化位置は波形領域の境界と走査線との交点であるが、これは上述したように、帯状領域の境界と走査線の交点を補正情報を用いて補正することで求めることができる。帯状領域の境界と走査線との交点は、単位グラデーションパターン間の距離ベクトルを走査線の向きに射影した長さを順に加算していくことで求められる。
【0016】
以上のようにして生成したグラデーションパターンには、色値と色の変化位置の情報が含まれており、特別な方法を用いなくとも画素値の並びまたはランレングス形式を生成することができる。また、グラデーションパターンの生成過程でこのような形式のデータを直接生成してもよい。
【0017】
次に、本発明の第1の実施の形態として、ネットワークに接続された印刷システムに適用された場合を例に詳細に説明する。
図2はネットワーク印刷システムの構成例を示す図である。文書作成ソフトウェアを有し作成された文書の印刷ジョブを発行する複数の、図示の例では2台のクライアント計算機11a,11bがネットワーク12に接続されている。このネットワーク12には、また、画像形成装置13が接続されている。この画像形成装置13は、ネットワーク12に接続された命令解析部13a、描画データ保持部13b、描画部13c、グラデーション生成部13d、グラデーション補正部13e、およびページバッファ13fを備え、それぞれバス13gによって相互に接続されている。ページバッファ13fはプリントエンジン14に接続されている。
【0018】
クライアント計算機11a,11bで作成された印刷ジョブはネットワーク12を介して命令解析部13aに送られる。命令解析部13aでは、受け取った印刷ジョブの内容を解釈し、描画データと描画命令とに分類する。描画データは、描画図形の形状データと色や線幅などの属性データとからなり、いずれも描画データ保持部13bに蓄積される。また、グラデーションが指定されていればその情報も描画データ保持部13bに蓄積される。命令解析部13aにおいて描画命令が検出されると、その描画命令は描画部13cに送られる。描画部13cでは送られた描画命令が描画データ保持部13bに蓄積されている描画データを参照しながら描画を行う。このとき、参照された描画データは描画データ保持部13bから削除される。また、描画データにグラデーションが指定されていれば、描画部13cの機能の一部として設けられたグラデーション生成部13dが描画データ保持部13bの描画データを用いて直線的な帯状領域のグラデーションパターンを生成し、グラデーション補正部13eが生成されたグラデーションパターンを補正して波形のグラデーションパターンを求める。また、グラデーションが指定されていない場合は、一般のページ記述言語処理系と同様に、描画部13cにおいて描画処理が行われる。描画部13cの描画結果はページバッファ13fに送られ、1ページ分のデータが生成されると、プリントエンジン14に送られて印刷される。
【0019】
図3は画像形成装置の全体の処理の流れを示すフローチャートである。まず、印刷ジョブが入力されると、命令解析部13aはページ記述言語の命令として解析する(ステップS1)。次に、その入力はページ終端を表しているかどうかが判断され(ステップS2)、ページ終端でなければ、次に、その入力は描画命令かどうかが判断される(ステップS3)。ここで、入力が描画命令でなければ、描画データと判断して、その入力を描画データ保持部13bに保存する(ステップS4)。描画データはグラフィックス図形の形状を表す形状データの他に色や線幅などの属性データも含む。描画データを保存した後はステップS1に戻る。このようにして、保存動作が繰り返され、必要な描画データが描画データ保持部13bに揃うと、次に、描画命令が入力される。描画命令には、グラフィックス図形の塗りつぶしを行う「fill」や輪郭描画を行う「stroke」などがある。ステップS3で描画命令と判断されると、その描画命令は描画部13cに送られ、保存された形状データおよび属性データの描画データを参照しながら描画部13cにて塗りつぶしなどの描画処理が実行される(ステップS5)。描画処理の実行後はステップS1に戻る。このようにして、入力がページ終端まで描画処理が終了すると、描画処理された1ページ分のデータはページバッファ13eからプリントエンジン14に出力される(ステップS6)。
【0020】
次に、具体的な命令を示して画像形成装置を更に詳細に説明する。
図4は画像形成装置に入力されるページ記述言語の例を示す図である。図4に示した記述例はポストスクリプト(アドビシステムズ社およびその子会社の各国での商標または登録商標)の文法に従って記述されたもので、まず、記述21は色をRGB方式で表現したときの値を保存するよう指定している。記述22は図形の形状を指定する記述であって、この例では、四角の図形を指定している。これらの記述21,22が描画データを構成し、これらの描画データに続いて描画命令の記述23が指定される。この例では、描画命令は図形の塗りつぶしを行う「fill」が指定されている。このように記述されたページ記述言語が画像形成装置13の命令解析部13aに入力されると、命令解析部13aは図5に示すような処理を行う。
【0021】
図5は命令解析部の処理の流れを示すフローチャートである。図4に示すようなページ記述言語が入力されると、命令解析部13aは入力順に入力を解析し、入力を入力21,22,23のような適当な単位に分割する(ステップS11)。次に、入力はページ終端かどうかが判断され(ステップS12)、ページ終端であれば、この命令解析部の処理は終了する。入力がページ終端でなければ、分割された単位の入力は描画命令かどうかが判断される(ステップS13)。ここで、入力が描画命令でなければ、その入力は描画データ保持部13bに転送され蓄積される(ステップS14)。その後、ステップS11に戻って、この描画データの蓄積が描画命令が来るまで繰り返される。入力が描画命令であれば、その入力は描画部13cに転送される。
【0022】
このようにして、描画データ保持部13bは、命令解析部13aから与えられた描画データを保持し、命令実行時の描画部13cの要求に応じて保持している描画データを渡す。また、描画データを描画部13cに渡す際には描画データ保持部13bで保持しているデータは保存しない。このため、描画部13cが描画の際に描画データ保持部13bのデータは消費しているように見える。
【0023】
図6は描画部の一般的なグラフィックの処理の流れを示すフローチャートである。描画部13cは、命令解析部13aから描画命令を受け取ると、その描画命令は輪郭描画を指示する「stroke」命令かどうかが判断される(ステップS21)。「stroke」命令であれば、幅を持った線を描画することになるので、幅を持った線の外側と内側に該当する外周、内周の線を算出する(ステップS22)。これにより、実際に塗りつぶしの処理を行うときの輪郭が計算され、輪郭描画命令が塗りつぶしの命令のときのデータと同じデータに変換することになる。次に、描画図形の形状データからその図形が横切る走査線の範囲を求めて、塗りつぶし処理の必要な走査線群を特定する(ステップS23)。特定された走査線群から一つの走査線を選択し(ステップS24)、次に、すべての走査線の処理が完了して未処理の走査線が選択されなかったかどうかが判断される(ステップS25)。ここで、未処理の走査線が選択された場合は、その走査線に対して描画図形が横切っていて塗りつぶし処理の必要な範囲を特定する(ステップS26)。描画範囲が特定されると、そのデータはページバッファ13eに転送され、処理対象の走査線における描画図形の存在範囲に塗りつぶしの色情報が配置される。このとき、ページバッファが画素値の配列で構成されていればメモリ上に色の値を置き、ページバッファが画素値のランレングス形式であれば走査線上の図形の存在範囲からランの開始点とランの長さとを求めて色値とともにラン情報を形成して加えられる。その後、ステップS24に戻り、この描画範囲特定処理をステップS23で特定されたすべての走査線について繰り返し行う。ステップS25にて、すべての走査線の処理が完了したと判断されるとこの処理は終了する。このように、輪郭描画を指示する「stroke」命令が与えられた場合は、線幅情報を用いて線の内側と外側に相当する描画境界を算出し、しかる後に塗りつぶしを指示する「fill」命令が与えられたときと同様の処理が行われる。
【0024】
グラデーションによる描画が指示された場合には、グラデーション生成部13dが描画データ保持部13bからグラデーションデータを受け取り、上述の描画部13cの動作における走査線上での描画図形の存在範囲での塗りつぶし処理を行う。
【0025】
本発明は波形のグラデーションパターンを求めるために帯状のグラデーションパターンを補正して用いるものであるが、この帯状のグラデーションパターンを求める方法の例を図7に示す。
【0026】
図7は帯状のグラデーションパターン生成を説明する図である。図7では、描画図形31の中に帯状に色が変化するグラデーションを描画する場合を示している。ここでは、色が変化していく方向および範囲を表すベクトルをグラデーションベクトルと呼び、符号32で示してある。このグラデーションベクトル32はベクトルの始点32aおよび終点32bの両端点の座標によって指定される。このグラデーションベクトル32の始点32aおよび終点32bの各々での色値をcs ,ce とし、グラデーションベクトル32をその長さで割って正規化した単位ベクトルをeg とする。また、色値が変化するときの刻み幅をΔcとする。この刻み幅Δcは、人間の知覚や使用する色空間の特徴および出力デバイスの色再現能力などを考慮して、色の変化が滑らかであると感じられる値を選べばよい。(ce −cs )/Δcを計算すれば、グラデーションベクトル32の分割数Nが得られ、これとグラデーションベクトル32の長さとからグラデーションベクトル32の刻み幅Δgが求められる。この方法ではグラデーションベクトル32の刻み幅はすべて同じになってしまうが、この幅をユーザが明示的に与えても構わない。
【0027】
ここで、走査線33上の帯状領域との交点および色を求める。まず、走査線33と描画図形31との交点のうち、左側の点34がこの走査線33上の描画開始点となり右側の点35が描画終了点となる。グラデーションベクトル32の始点32aから点34へ至るベクトル36の単位ベクトルeg への正射影を求めて刻み幅Δgと比較すれば、点34が何番目の帯領域に属するかを示す値nが容易に求まり、その帯領域の色値も求まる。このとき、グラデーションベクトル32の始点32aからの距離37および次の帯領域までの距離38が求まる。次に、走査線33上の次の色の変化点、すなわち、次の帯状領域の境界と走査線33との交点を求めるが、これはグラデーションベクトル32上での距離38に余弦の逆数を乗じることで距離39が求まり、これが描画開始点の点34からの距離として求められる。その位置での色値は先に求めた交点34での色値から次の順番の色値が求められる。また、これ以降に現れる走査線上の色の変化点は、帯状領域の幅に余弦の逆数を乗じた値を順に加えていくことで得られ、この値が描画終了点の点35を越えると処理を終了する。
【0028】
次に、グラデーション生成部13dで行われる上記のような各走査線上での描画範囲特定処理の流れについて説明する。
図8はグラデーション生成部での処理の流れを示すフローチャートである。まず、グラデーションベクトル32をその長さで割ることにより正規化して単位ベクトルeg を求める(ステップS31)。次に、グラデーションベクトル32の刻み幅Δgを算出する(ステップS32)。この刻み幅Δgはユーザによって明示的に指定されるか、システムによって自動的に計算された値でもよい。次に、描画開始点からグラデーションベクトル方向への正射影の大きさ、すなわち、グラデーションベクトル32の始点32aからの距離37が算出される(ステップS33)。算出された正射影の大きさを基に、描画開始点が何番目の帯状領域に属しているかが計算され、それによってその位置での色値が求められる(ステップS34)。次は、今、処理対象にしている交点から次に色が変わる交点までの走査線33上の移動量、すなわち、次の境界までの距離38から距離39が算出される(ステップS35)。算出されたこの移動量は、走査線33上の描画開始点と最初の色の変化点間の距離の情報として、グラデーションパターンに追加される(ステップS36)。次に、処理対象の走査線33上で移動量の算出が描画終了点を越えたかどうかが判断され(ステップS37)、描画領域の走査が終了していなければ、ステップS35に戻り、次に色が変わる交点までの移動量の算出が続けられ、描画終了点までの間における色の変化点間の距離情報として、順次グラデーションパターンに追加される。ここで、ステップS35に戻るのは、グラデーション処理では、色は順番に変わっているという前提があるので、次に描画すべき色はあらかじめ分かっているので、交点の属する帯状領域の判定はやらず、移動量の算出だけを描画領域が終了するまで行うことにしている。ステップS37の判断にて、処理対象の走査線33上での描画領域内の移動量の算出が終了したなら、次は、あらかじめ特定されていた描画図形31と交わる走査線群すべてについて処理が終了したかどうかが判断され(ステップS38)、まだ処理が終了していない走査線があれば、ステップS33に戻って、次の走査線における描画開始点からグラデーションベクトルへの正射影の大きさの算出から始められ、すべての走査線に対する処理が終わると、この帯状のグラデーションパターンの生成処理は終了する。ここで示した方法は帯状のグラデーションパターンの走査線方向に展開した結果を求める方法の一つであるが、本発明はこの方法を限定するものではなく、別の方法で帯状のグラデーションパターンの走査線への展開結果を求めてもよい。
【0029】
帯状のグラデーションパターンの走査線への展開結果が得られると、次に、グラデーション補正部13eによって波形形状への補正が行われる。次に、このグラデーション補正部13eによる補正処理の一例を説明する。
【0030】
まず、与えられた開曲線から補正量を求める。補正量は、開曲線と帯状領域の境界となる直線との走査線方向のオフセット値であり、この値は水平位置によって異なる。これを求めるために、一般のラスタスキャン変換処理で行っているように開曲線をショートベクトルに分解して個々の走査線との交点を求めることで、開曲線を走査線方向のオフセット値の集合に変換する。続いて、帯状領域の境界となる直線を同様に走査線方向のオフセット値に分解し、開曲線のオフセットから帯状領域の境界となる直線のオフセットを減じれば、求めるオフセット値の集合が得られる。次に、得られたオフセット値の集合から目的のオフセット値を求める。グラデーションベクトルの始点を通る走査線の鉛直方向の位置を基準とし、ここからの鉛直方向の変位を用れば、上述のオフセット値の集合から目的のオフセット値を得ることができる。この変位は、走査線上の点とグラデーションベクトルの始点を結ぶ線分のグラデーションベクトルと垂直な方向への正射影の長さにグラデーションベクトルと走査線のなす角の余弦を乗じて求めることができる。グラデーションベクトルを正規化した単位ベクトルを求めておけば、そのx成分が余弦の値であり、その単位ベクトルに垂直なベクトルとの内積を考えることで上述の正射影の長さを容易に求めることができる。こうして計算した変位を用いて、オフセット値の集合から目的の値を求め、これを走査線と帯状領域の境界の交点の座標に加えることで、走査線上での色の変化点の補正された位置が得られる。
【0031】
図9はグラデーション補正部での処理の流れを示すフローチャートである。走査線と帯状領域の境界となる直線との交点の一つの処置対象点pを決定する(ステップS41)。次に、その処理対象点pとグラデーションベクトルvの始点sとを結ぶベクトルpsを計算する(ステップS42)。グラデーションベクトルvと垂直な方向、すなわち、グラデーションベクトルvの始点sを通る帯状領域の境界となる直線へのベクトルpsの正射影の長さを計算する(ステップS43)。正射影の長さにグラデーションベクトルvと走査線のなす角の余弦とを乗じて正射影の長さの鉛直方向の変位量である高さhを計算する(ステップS44)。高さhを用いてあらかじめ開曲線をショートベクトルに分解して個々の走査線との交点を求めた走査線方向の開曲線のオフセット値の集合からオフセット値を取得する(ステップS45)。そして、オフセット値を用いて処理対象点pの座標値を補正することになる(ステップS46)。ここではオフセット値への分解を行った後に鉛直方向の変位を求めて補正値を得る方法を説明したが、この順序は逆でもよく、鉛直方向の変位から補正量を求めるべき位置を決定してこの位置でのオフセット値の減算を行ってオフセット値を求めてもよい。
【0032】
こうして生成されたグラデーションパターンはページバッファ13fに蓄積され、印刷が指示されるとプリントエンジン14に送られて印刷される。
以上の処理を以下に示す入力に適用した場合の動作について説明する。
【0033】
図10は画像形成装置に入力されるグラデーション指定のページ記述言語の例を示す図である。図10において、二重の不等号で括った部分の記述41がグラデーションを記述するために必要なパラメータを与える記述であり、「setgrad」なる記述42でグラデーションを指定している。まず、記述41において、「GType」ではグラデーションが開曲線のパターンであることを「figure」で指定し、「StartPoint」でグラデーションベクトルの始点の座標が(100,200)、「EndPoint」で終点の座標が(500,400)、「StartColor」および「EndColor」でそれぞれの点でのRGBの色値が(0.4,0,0),(0,0,0.8)であることを指定している。「GFigure」は波形の1個の形状を指定している。ここでは、グラデーションの境界を定義する曲線は、座標(0,100),(100,−100)を端点とし、座標(50,50),(50,−50)を制御点とする波形の開曲線が与えられている。なお、「GStep」は刻み幅の指定であるが、ここでは、特に指定していないので、システムでの計算によって与えられる。記述43は描画図形の形状を指示する部分であり、四点の座標(150,325),(125,200),(325,200),(250,350)を頂点とする四角形の描画図形形状を与えている。続いて、塗りつぶしを指示する描画命令の記述44が与えられている。
【0034】
入力された記述41〜43は命令解析部13aによって解析され、描画データ保持部13bに送られて保持される。続いて、塗りつぶしの描画命令の記述44が検出されると、これは描画部13cに送られる。ここでは波形のグラデーションによる塗りつぶしが指示されているので、グラデーション生成部13dおよびグラデーション補正部13eを起動してグラデーションによる塗りつぶしを行う。このとき、グラデーション生成部13dは描画データ保持部13bに保持された描画図形形状データおよび描画属性データを受け取り、各走査線に対する帯状のグラデーションパターンを生成し、グラデーション補正部13eはこの結果を補正して波形のグラデーションパターンを生成する。上記の記述に従ってグラデーションパターンが生成される様子を図11に示す。
【0035】
図11は開曲線パターンのグラデーションが指定された記述の入力時の説明図である。図11において、記述41によって指定されたグラデーションベクトル51の始点の座標は(100,200)、終点の座標が(500,400)であり、始点から終点の方向に色が変化していく。描画図形52は記述43によって指定された座標(150,325),(125,200),(325,200),(250,350)を頂点とする四角形である。
ここで、たとえばy=300の位置の走査線53に対しては、描画開始点が(145,300)となり、これとグラデーションベクトル51の始点(100,200)とが成すベクトルは(45,100)となる。これのグラデーションベクトル51方向の単位ベクトル(2/√5,1/√5)への正射影の大きさは(38/√5)となる。グラデーションベクトル51の分割数を「8」、刻み幅を「25√5」とすれば、この描画開始点は2番目の帯領域に属すことが分かる。ここで、グラデーションベクトル51上の正射影の位置から2番目の帯領域の前後の境界までの距離は帯領域の幅の整数倍の長さと正射影の長さの差を求めることで「13√5」および「12√5」が得られ、これにグラデーションベクトル51と走査線53とのなす角の余弦の逆数を乗じた値「32.5」および「30」が走査線上での変位となるから、描画開始点を含む帯領域の境界と走査線との交点は(112.5,300),(175,300)となる。
【0036】
次に、これらの値に対する補正量を求める。一方の交点(112.5,300)に対する補正量は次のようにして計算する。まず、グラデーションベクトル51の始点と補正対象となる点(112.5,300)とを結ぶベクトル(12.5,100)を計算し、このベクトルとグラデーションベクトル51に垂直な方向の単位ベクトル(−1/√5,2/√5)との内積を計算して、この向きへの正射影の長さ「37.5√5」を求める。続いて、この長さの値にグラデーションベクトル51と走査線とのなす角の余弦の値「2/√5」を乗じることで、正射影の位置のグラデーションベクトル51の始点からの高さ「75」が得られる。この高さから、開曲線をショートベクトルに展開したときの対応高さ位置における走査線方向の補正量が求められる。
【0037】
図12は補正量を求めるための説明図であって、(A)は与えられた開曲線を示す図、(B)は開曲線をショートベクトルに展開した図、(C)は高さと補正量との関係を示す図である。走査線方向の開曲線の補正量を求めるには、(A)に示したように、グラデーションベクトルに垂直な帯状領域の境界の線61から二つの端点および制御点によって与えられた開曲線62までの走査線方向における変位63を求めることになる。そのためには、(B)に示したように、開曲線62を複数のショートベクトルに展開し、(C)に示したように、開曲線62をショートベクトルに展開したものの先に求めた高さの位置での走査線方向の変位から補正量を求める。すなわち、開曲線62をショートベクトルに展開したときの開曲線62の上側の端点を通る鉛直線から、先に求めた高さ位置での開曲線62までの走査線方向の変位および先に求めた高さ位置でのグラデーションに垂直な直線までの走査線方向の変位が求められる。高さが「75」の位置では、開曲線62の上側の端点を通る鉛直線から開曲線62までの走査線方向の変位は「20」であり、開曲線62の端点を通る鉛直線からグラデーションに垂直な直線までの変位は「12.5」である。したがって、高さが「75」の位置における補正量はこれらの値の差の「7.5」になる。この補正量を帯領域の境界と走査線の交わる点の座標値(112.5,300)に加えた座標値(120,300)が波形領域の境界と走査線との交点となる。
【0038】
同様にして、帯領域と走査線との他方の交点(175,300)に対する補正量15が得られ、これから波形領域の境界と走査線との交点(190,300)が求められる。ここで、走査線上の描画開始点と波形領域の境界とのx座標値を比較することにより、描画開始点は波形領域の境界の間にあることから、この点での色値は2番目の帯領域と同じ色値(0.35,0,0.1)となる。また走査線上での次の色の変化点は先程求めた(190,300)であり、これに続く色の変化点も、同様の方法により、帯領域の境界と走査線との交点を求めて補正量を計算し加える操作を繰り返すことで次々に求められる。
【0039】
この処理を描画図形52を横切るすべての走査線に対して行うことで、描画図形内部のグラデーションパターンが生成され、ページバッファ13fに蓄積される。印刷指示が与えられると、ページバッファ13fの内容はプリントエンジン14に送られ印刷される。
【0040】
以上に示した方法を用いれば、グラデーションを表現するために同じ図形を繰り返し描画する必要がなく、また、グラデーションパターンの展開も描画対象領域内だけにとどめることができるため、グラデーションを高速に描画することができる。
【0041】
次に、本発明の第2の実施の形態として、同じくネットワーク印刷システムに適用された場合を例に詳細に説明する。
図13はネットワーク印刷システムの構成例を示す図である。図13に示したネットワーク印刷システムによれば、図2に示したネットワーク印刷システムの画像形成装置13におけるグラデーション生成部13dの内部に1ライン分のラインバッファ13hを備えている。
【0042】
画像形成装置13はネットワーク12を介してクライアント計算機11a,11bと接続されている。クライアント計算機11a,11bで作成された印刷ジョブはネットワーク12を介して命令解析部13aに送られる。命令解析部13aでは、受け取った印刷ジョブの内容を解釈し、描画データと描画命令とに分類する。描画データは、描画図形の形状データと色や線幅などの属性データとから成り、いずれも描画データ保持部13bに蓄積される。また、グラデーションが指定されていれば、その情報も描画データ保持部13bに蓄積される。命令解析部13aで描画命令が検出されると、描画部13cは描画を行うが、このとき描画データ保持部13bに蓄積された描画データを消費する。
【0043】
また、描画命令のパラメータとしてグラデーションが指定されていれば、描画部13cの機能の一部として設けられたグラデーション生成部13dが描画データ保持部13bの情報を用いてグラデーションを生成するが、このときグラデーション生成部13dは内部に1ライン分のラインバッファ13hを持ち、このラインバッファ13hに1ライン分のグラデーションパターンを先に展開しておく。生成されたグラデーションはグラデーション補正部13eによって補正される。また、グラデーションが指定されていない場合は、一般のページ記述言語処理系と同様の描画を行う。描画部13cの描画結果はページバッファ13fに送られ、1ページ分の生成処理が終わると、プリントエンジン14に送られて印刷される。
【0044】
グラデーション生成部13d以外の部分の動作および処理アルゴリズムは第1の実施の形態の場合と同様であるため、それらの説明は省略する。
グラデーション生成部13dにグラデーション生成が指示され、ある走査線に対する処理が開始されると、グラデーション生成部13dのラインバッファ13hには1走査線分のグラデーションパターンの補正前の値が保持される。これは、ある走査線上の帯状領域の境界は次の走査線に移っても、描画開始位置が多少移動するだけで、走査線ごとに同じ計算を繰り返すことになるので、まず、1走査線分の計算結果をラインバッファ13hに保存しておいて、他の走査線での帯状領域の境界の計算では保存しておいた計算結果を再利用しようとするものである。しかる後に、第1の実施の形態の場合と同様にして、描画開始位置での色および次の色の変化点までの距離を求め、それ以降はラインバッファ13hの内容を参照して帯状領域のグラデーションパターンを生成し、これに対して補正処理を行うことにより波形領域のグラデーションパターンを生成する。補正後の値をラインバッファ13hに保存しないのは、処理対象となる走査線の位置によって補正量が異なるためである。
【0045】
次に、以上の処理を図10に示す入力に適用した場合の画像形成装置の動作について説明する。入力の意味は図10の説明で示した通りである。
y=300の位置の走査線に対しては、図11に示したように、描画開始点は(145,300)となる。この点での色値を求めるために、まず、この描画開始点が属する帯領域を特定する。グラデーションベクトルの始点(100,200)を通りグラデーションベクトルに垂直な直線が走査線と交わる点の座標は、グラデーションベクトルの始点から走査線までの鉛直方向の距離である「100」にグラデーションベクトルと走査線のなす角の正接を乗じた値の「50」をグラデーションベクトルの始点のx座標値から減じることで、(50,300)と計算できる。この座標値に、グラデーションベクトルの刻み幅にグラデーションベクトルと走査線とのなす角の余弦の逆数を乗じて走査線方向の距離に変換した値を順に加えてゆくことで、帯状領域の境界と走査線との交点が順に得られる。グラデーションベクトルの分割数を「8」、刻み幅を「25√5」とすれば、これに対応する走査線上の距離は「62.5」となる。先程求めた点のx座標の「50」に距離「62.5」を加えることで、帯領域の境界は順に「112.5」、「175」・・・と求められる。このとき、ラインバッファ13hには同時に走査線と交わる帯状領域の境界の距離が順次保存されていく。
【0046】
図14はラインバッファへの距離データの格納例を示す図である。ラインバッファ13hには、グラデーションベクトルの始点を通りグラデーションベクトルに垂直な直線が走査線と交わる点から次に色が変化する走査線上の点までの距離のデータ71、すなわち、「62.5」がまず格納される。次に、帯状領域の境界が交差するまでの走査線上の距離のデータ72が計算されて格納され、その後、同様にして、走査線上における帯状領域の境界の距離のデータ73,74,・・・が計算されて格納される。図10に示す入力の例では、刻み幅の指定である「GStep」は特に指定していないので、システムの判断にてグラデーションベクトルを等分した刻み幅にしており、距離のデータの値は同じになっている。もちろん、ユーザが各色の刻み幅を明示的に指定した場合には、その刻み幅に対応する走査線上の距離データがそれぞれ計算されてラインバッファ13hに格納されることになる。
【0047】
以上のようにして、描画開始点での色値を求め、これに続く色の変化点を求めることでこの走査線に対するグラデーションパターンを生成し、走査線上における帯状領域の境界の距離のデータがラインバッファ13hに保存される。そして、この処理を次の走査線以降の処理に適用する際には、グラデーションベクトルの始点を通りグラデーションベクトルに垂直な直線が走査線と交わる点を求め、この点のx座標値にラインバッファの内容を順に加えることで、帯領域の境界と走査線の交点のx座標値が得られ、これをそれぞれ補正することにより、この走査線に対するグラデーションパターンを求めることができる。
【0048】
この方法を用いれば、同じパターンの繰り返しに関する計算を一度で済ませることができるため、グラデーションパターンを高速に生成することができる。
また、ラインバッファ13hはその内容を参照されるだけであるから、並列処理においても資源の排他制御を行う必要がなく効率的な動作が実現できる。
【0049】
【発明の効果】
以上説明したように本発明では、描画データとして描画平面上の2点とそれぞれの点での色値と開曲線の一つの波形形状を定義する情報とが波形形状の開曲線によるグラデーション描画のためのパラメータとし、このパラメータから計算される帯状領域の境界と走査線とを比較することで走査線上の色の変化位置を求め、さらに、開曲線の帯状領域の境界からのオフセット値を求めて走査線上の色の変化位置を補正するような構成にした。これにより、微小区間の塗りつぶしを繰り返す必要がないため、グラデーション描画の負荷が大幅に軽減される。また、処理が走査線方向に進むため、通常の塗りつぶし処理の特別な場合として実現可能である。
【図面の簡単な説明】
【図1】本発明の画像生成装置の原理図である。
【図2】ネットワーク印刷システムの構成例を示す図である。
【図3】画像形成装置の全体の処理の流れを示すフローチャートである。
【図4】画像形成装置に入力されるページ記述言語の例を示す図である。
【図5】命令解析部の処理の流れを示すフローチャートである。
【図6】描画部の一般的なグラフィックの処理の流れを示すフローチャートである。
【図7】帯状のグラデーションパターン生成を説明する図である。
【図8】グラデーション生成部での処理の流れを示すフローチャートである。
【図9】グラデーション補正部での処理の流れを示すフローチャートである。
【図10】画像形成装置に入力されるグラデーション指定のページ記述言語の例を示す図である。
【図11】開曲線パターンのグラデーションが指定された記述の入力時の説明図である。
【図12】補正量を求めるための説明図であって、(A)は与えられた開曲線を示す図、(B)は開曲線をショートベクトルに展開した図、(C)は高さと補正量との関係を示す図である。
【図13】ネットワーク印刷システムの構成例を示す図である。
【図14】ラインバッファへの距離データの格納例を示す図である。
【符号の説明】
1 命令解析手段
2 描画手段
3 描画データ保持手段
4 グラデーションパターン展開手段
5 グラデーションパターン補正手段
11a,11b クライアント計算機
12 ネットワーク
13 画像形成装置
13a 命令解析部
13b 描画データ保持部
13c 描画部
13d グラデーション生成部
13e グラデーション補正部
13f ページバッファ
13g バス
13h ラインバッファ
14 プリントエンジン
Claims (7)
- 画像描画命令を実行して出力画像を得るための画像形成装置において、
入力された印刷ジョブを解析して描画命令と描画命令のパラメータとなる描画データとを生成する命令解析手段と、
前記命令解析手段によって解析された描画命令に従って描画処理を行う描画手段と、
前記描画データを保存する描画データ保持手段と、
波形形状の開曲線によるグラデーション描画が指示されたときに前記描画手段より呼出され、前記描画データ保持手段に保持されたグラデーション情報をもとに、描画領域を横切るすべての走査線に対して色が変化する方向に直角な方向に延びる帯状領域の境界との交点を求めてグラデーションパターンを展開するグラデーションパターン展開手段と、
前記帯状領域の境界および前記開曲線の前記走査線上における交差位置の差を求めて前記グラデーションパターンを補正するグラデーションパターン補正手段と、
を備えていることを特徴とする画像形成装置。 - 前記描画データは、描画平面上での色の変化開始位置および変化終了位置を示す情報と、前記変化開始位置および変化終了位置における色値の情報と、前記開曲線の一つの波形形状を定義する情報と、前記開曲線のグラデーション描画指示とを有し、前記グラデーションパターン展開手段は前記描画データを用いて前記描画領域の範囲内で前記変化開始位置および変化終了位置を結ぶ直線に垂直な複数の帯状領域を表現するグラデーションパターンを生成し、前記グラデーションパターン補正手段は前記帯状領域を表現するグラデーションパターンを補正して前記色が変化する方向に沿って所定の幅で配置した前記開曲線を境界としてその内部の色値が均一でありかつ前記変化開始位置および変化終了位置で与えられた色値の間で隣接する前記開曲線を境界とする領域の色が順次変化する複数の波形領域を表現するグラデーションパターンを生成することを特徴とする請求項1記載の画像形成装置。
- 前記グラデーションパターン補正手段は、前記描画データとして与えられた前記変化開始位置から変化終了位置へのベクトルの始点を通るように配置された前記開曲線と前記ベクトルの始点を通り前記ベクトルに垂直な直線との間の各走査線上での距離を求め、前記距離を前記帯状領域の境界と走査線との交点の座標に加えてグラデーションパターンを補正することを特徴とする請求項2記載の画像形成装置。
- 前記グラデーションパターン展開手段は、1走査線分のグラデーションパターンを保持する容量を有し最初のグラデーションパターン生成時に生成されたグラデーションパターンを保持して他の走査線でのグラデーションパターンを生成するときに保持されている前記グラデーションパターンを参照するようにしたラインバッファを有することを特徴とする請求項1記載の画像形成装置。
- 画像描画命令を実行して波形形状の開曲線によるグラデーション出力画像を得るグラデーション描画方法において、
描画平面上での色の変化開始位置および変化終了位置を示す情報と、前記変化開始位置および変化終了位置における色値の情報と、前記開曲線の一つの波形形状を定義する情報とで波形形状のグラデーション描画を表現するために必要なパラメータを取得し、
前記変化開始位置から変化終了位置の情報をもとに色の変化方向のグラデーションベクトルを求めてそれを正規化し、
前記変化開始位置および変化終了位置の情報から同一の色で描画される前記グラデーションベクトルの刻み幅を算出し、
描画開始点から前記グラデーションベクトルの方向への正射影から前記変化開始位置からの前記グラデーションベクトル上の距離に相当する長さを算出し、
算出された長さから前記描画開始点がそれぞれ前記刻み幅の幅を有する帯状領域の何番目に属しているかを計算して前記描画開始点が属する帯状領域の色値を求め、
処理対象にしている交点から次に色が変わる前記帯状領域の境界までの走査線上の移動量を算出してグラデーションパターンに追加する処理を描画図形の描画終了点を越えるまで繰り返し行い、
前記帯状領域の境界から前記開曲線までの走査線上でのオフセット値を求めて前記移動量を補正すること、
を特徴とするグラデーション描画方法。 - 前記移動量の補正は、処理対象点と前記グラデーションベクトルの始点とを結ぶベクトルを計算し、前記グラデーションベクトルの始点を通り前記グラデーションベクトルと垂直な方向の直線への前記ベクトルの正射影の長さを計算し、前記正射影の長さに前記グラデーションベクトルと走査線のなす角の余弦とを乗じて正射影の長さの鉛直方向の高さを計算し、帯状領域の境界と開曲線との走査線方向のオフセット値の集合から前記高さに対応するオフセット値を取得し、取得した前記オフセット値で前記処理対象点の座標値を補正することを特徴とする請求項5記載のグラデーション描画方法。
- 前記移動量の補正は、処理対象点が描画開始点を含む帯状領域の両側の境界と走査線との交点のとき、前記描画開始点の座標値がオフセット値で補正された両座標値の間にあるかどうかを判断し、いずれかの座標値の外にある場合は、前記描画開始点の色値をその外れた方向に隣り合う色値に補正することを特徴とする請求項6記載のグラデーション描画方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19985697A JP3570164B2 (ja) | 1997-07-25 | 1997-07-25 | 画像形成装置およびグラデーション描画方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19985697A JP3570164B2 (ja) | 1997-07-25 | 1997-07-25 | 画像形成装置およびグラデーション描画方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH1145341A JPH1145341A (ja) | 1999-02-16 |
JP3570164B2 true JP3570164B2 (ja) | 2004-09-29 |
Family
ID=16414798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19985697A Expired - Lifetime JP3570164B2 (ja) | 1997-07-25 | 1997-07-25 | 画像形成装置およびグラデーション描画方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3570164B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7900144B1 (en) * | 2000-03-23 | 2011-03-01 | Eastman Kodak Company | Modification of color values in page description files |
AU2005211665A1 (en) * | 2005-09-23 | 2007-04-19 | Canon Kabushiki Kaisha | Vectorisation of colour gradients |
-
1997
- 1997-07-25 JP JP19985697A patent/JP3570164B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JPH1145341A (ja) | 1999-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1962224B1 (en) | Applying traps to a printed page specified in a page description language format | |
US6201550B1 (en) | Image forming apparatus and method of generating gradation pattern | |
JPH1134406A (ja) | ベクトルマップ平坦化及びトラッピング | |
US6366361B1 (en) | Peeker detection and correction | |
KR100376196B1 (ko) | 아웃라인 스무딩 처리 방법, 장치 및 기억매체 | |
JPH1125282A (ja) | 画像形成装置およびグラデーションパターン生成方法 | |
JPH0442378A (ja) | ラスターグラフィックスシステムにおけるワイドラインを描く方法および装置 | |
JP2002133428A (ja) | 描画処理装置 | |
JP3570164B2 (ja) | 画像形成装置およびグラデーション描画方法 | |
JP3606006B2 (ja) | 画像形成装置およびグラデーション描画方法 | |
EP3584761B1 (en) | Image forming apparatus capable of changing thickness of character, control method therefor, and storage medium storing control program therefor | |
JP4063918B2 (ja) | 表示のためのグラフィックス情報を含むイメージを作成する装置と方法 | |
US8599389B2 (en) | Page description data processing apparatus, page description data processing method, print producing method, and recording medium | |
JPH07110568A (ja) | 白版図形修正方法 | |
US7046403B1 (en) | Image edge color computation | |
JPH0624046A (ja) | 印刷装置 | |
JP2002015329A (ja) | 画像処理装置および画像処理方法 | |
US5581675A (en) | Method of and apparatus for converting format of an image having linear color variation | |
JP2000099750A (ja) | 画像処理装置及び画像処理方法 | |
JP5112223B2 (ja) | 画像処理装置及び画像処理プログラム | |
JP2000215320A (ja) | 画像形成装置およびグラデ―ションパタ―ン生成方法 | |
JP2001092981A (ja) | 画像処理装置および画像処理方法 | |
JP2002318680A (ja) | 画像処理装置および画像処理方法 | |
JP3536894B2 (ja) | 図形処理装置 | |
JP3514895B2 (ja) | 画像展開処理方法及び装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040520 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040614 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080702 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090702 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100702 Year of fee payment: 6 |