(57)【特許請求の範囲】
【請求項１】
オブジェクトを描画処理する画像処理装置であって、
一つのオブジェクトの描画領域の左右端を示すエッジ対に含まれる各エッジの開始点および当該開始点からの変位量により表される点の位置情報と、他のオブジェクトの描画領域の左右端を示すエッジ対に含まれる各エッジの開始点および当該開始点からの変位量により表される点の位置情報とが一致するかを少なくとも判定することで、前記オブジェクトどうしが重複するか否かを判定する判定手段と、
前記判定手段によって前記オブジェクトどうしが重複すると判定された場合に、前記他のオブジェクトを描画処理の対象から除く削除手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記判定手段は、前記位置情報どうしの一致の判定に加えて、前記一つのオブジェクトのエッジ対に対応するレベル情報が、当該一つのオブジェクトの描画処理において背面のオブジェクトを必要とするか否かを判定することで、前記オブジェクトどうしが重複することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記判定手段は、更に描画命令により前記オブジェクトを重ね描きする同一開始位置に閾値以上、前記描画命令が連続しているか否かを判定し、
前記削除手段は、前記描画命令が同一開始位置に前記閾値以上、連続していると前記判定手段によって判定された場合に、当該連続する描画命令を削除することを特徴とする請求項１または２に記載の画像処理装置。
【請求項４】
前記判定手段は、少なくとも前記オブジェクトどうしのエッジのレベル情報を参照することで、前記オブジェクトどうしが重複するか否かを判定することを特徴とする請求項１乃至３の何れか１項に記載の画像処理装置。
【請求項５】
前記削除手段は、前記他のオブジェクトのエッジ対を削除することで、前記他のオブジェクトを描画処理の対象から除くことを特徴とする請求項１乃至４の何れか１項に記載の画像処理装置。
【請求項６】
前記削除手段は、描画処理によって、前記除く処理を行うことを特徴とする請求項１乃至５の何れか１項に記載の画像処理装置。
【請求項７】
オブジェクトを描画処理する画像処理装置にて実行される画像処理方法であって、
判定手段が、一つのオブジェクトの描画領域の左右端を示すエッジ対に含まれる各エッジの開始点および当該開始点からの変位量により表される点の位置情報と、他のオブジェクトの描画領域の左右端を示すエッジ対に含まれる各エッジの開始点および当該開始点からの変位量により表される点の位置情報とが一致するかを少なくとも判定することで、前記オブジェクトどうしが重複するか否かを判定する判定工程と、
削除手段が、前記判定工程において前記オブジェクトどうしが重複すると判定された場合に、前記他のオブジェクトを描画処理の対象から除く削除工程と、
を有することを特徴とする画像処理方法。
【請求項８】
前記判定工程では、前記位置情報どうしの一致の判定に加えて、前記一つのオブジェクトのエッジ対に対応するレベル情報が、当該一つのオブジェクトの描画処理において背面のオブジェクトを必要とするか否かを判定することで、前記オブジェクトどうしが重複することを特徴とする請求項７に記載の画像処理方法。
【請求項９】
前記判定工程では、更に描画命令により前記オブジェクトを重ね描きする同一開始位置に閾値以上、前記描画命令が連続しているか否かを判定し、
前記削除工程では、前記描画命令が同一開始位置に前記閾値以上、連続していると前記判定工程によって判定された場合に、当該連続する描画命令を削除することを特徴とする請求項７または８に記載の画像処理方法。
【請求項１０】
前記判定工程では、少なくとも前記オブジェクトどうしのエッジのレベル情報を参照することで、前記オブジェクトどうしが重複するか否かを判定することを特徴とする請求項７乃至９の何れか１項に記載の画像処理方法。
【請求項１１】
前記削除工程では、前記他のオブジェクトのエッジ対を削除することで、前記他のオブジェクトを描画処理の対象から除くことを特徴とする請求項７乃至１０の何れか１項に記載の画像処理方法。
【請求項１２】
前記削除工程では、描画処理によって、前記除く処理を行うことを特徴とする請求項７乃至１１の何れか１項に記載の画像処理方法。
【請求項１３】
請求項１乃至６の何れか１項に記載の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子文書を直接受け取って画像処理を行う画像処理装置及び画像処理方法に関するものである。
【背景技術】
【０００２】
近年のアプリケーションソフトやＯＳの多様化により、印刷描画命令が複雑化し、印刷装置の描画処理、画像処理の負荷が増大してきている。複雑な描画命令を高速に処理するために、スキャンラインレンダリングによる描画方法が用いられている。
【０００３】
このスキャンラインレンダリングは、各オブジェクトの輪郭を抽出し、各オブジェクト間のエッジの重なりを排除し、重なりを排除したエッジ列に対してソート処理を行う技術である（例えば、特許文献１参照）。
【０００４】
また、スキャンラインレンダリングにおいて、描画オブジェクトが同一箇所に重複しているデータや近い領域に対して密集して描画されているデータの場合、ソート処理に負荷がかかり、非常に処理時間がかかってしまう。この重複オブジェクトの対策として、文字オブジェクトの重なりを除去する技術が提案されている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１０−１７７６５７号公報
【特許文献２】特開２０１１−００２９７７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
この文字オブジェクトの重なりを除去する技術では、文字データが連続して描画された場合、レンダリング中にエッジの重なりを検知し、下位にある不要なデータを削除するという対策が行われている。
【０００７】
しかしながら、グラフィックやラインのようなオブジェクトは、１つのオブジェクトで２つ以上のエッジの組み合わせで構成されているため削除が難しい。また、グラフィックオブジェクトが重なっている場合、１つのエッジのみで判断できず、エッジの組み合わせ毎に判定及び削除する必要があり、その判定及び削除が困難であった。
【０００８】
本発明は、オブジェクトを重ね描きする同一開始位置に重複するエッジを削除し、高速にオブジェクトの描画処理を行える装置及び方法を提供する。
【課題を解決するための手段】
【０００９】
本発明は、オブジェクトを描画処理する画像処理装置であって、
一つのオブジェクトの描画領域の左右端を示すエッジ対に含まれる各エッジの開始点および当該開始点からの変位量により表される点の位置情報と、他のオブジェクトの描画領域の左右端を示すエッジ対に含まれる各エッジの開始点および当該開始点からの変位量により示される点の位置情報とが一致するかを少なくとも判定することで、前記オブジェクトどうしが重複するか否かを判定する判定手段と、
前記判定手段によって前記オブジェクトどうしが重複すると判定された場合に、前記他のオブジェクトを描画処理の対象から除く削除手段と、
を有することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、オブジェクトを重ね描きする同一開始位置に重複するエッジを削除し、高速にオブジェクトの描画処理を行うことが可能となる。
【図面の簡単な説明】
【００１１】
【図１】画像形成装置を含む印刷システムの構成を示す図。
【図２】画像形成装置のソフトウェアの構成例を示す図。
【図３】（ａ）は最適な対象データの印字結果、（ｂ）は重ね描きパターン１、（ｃ）は重ね描きパターン２、の一例を示す図。
【図４】（ａ）は重ね描きオブジェクト、（ｂ）は重ね描きオブジェクトの中間データ、を示す図。
【図５】組み合わせエッジを削除する処理を示すフローチャート。
【図６】組み合わせエッジ削除の効果を説明するための模式図。
【図７】第２の実施形態における削除処理を示すフローチャート。
【図８】（ａ）はオブジェクトレベルでの削除、（ｂ）は単一エッジでの削除、を示す模式図、（ｃ）は先行レンダリングを行う場合の模式図。
【図９】レンダリング中にエッジを削除する処理を示すフローチャート。
【図１０】（ａ）はレンダリング中にエッジを削除する処理を示す図、（ｂ）はレンダリング処理を実施した模式図。
【発明を実施するための形態】
【００１２】
以下、図面を参照しながら発明を実施するための形態について詳細に説明する。本実施形態では、画像形成装置のようなデジタル複合機（ＭＦＰ）を例に挙げて説明するが、本発明は単機能プリンタ（ＳＦＰ）やレーザビームプリンタ（ＬＢＰ）、他のプリント方式のプリンタに適用してもよいことは言うまでもない。
【００１３】
＜印刷システム概要＞
まず、本発明に係る電子部品としてのコントローラ部が搭載された画像形成装置を含む印刷システムの構成を、図１を用いて説明する。図１に示すように、画像形成装置１００は、ローカルエリアネットワーク（ＬＡＮ）１９０を介してホストコンピュータ（第一のホストコンピュータ１９１、第二のホストコンピュータ１９２）に接続される。ここでは、ＬＡＮ１９０を介して接続されているが、インターネットなどの他の通信ネットワークを介して接続されてもよい。
【００１４】
画像形成装置１００は、リーダー装置（リーダー部）１２０、プリンタ装置（プリンタ部）１３０、操作部１５０、画像記憶部１６０、これらの構成要素を制御する制御装置（コントローラ部）１１０によって構成されている。制御装置１１０には、ＣＰＵ１１２、ＲＯＭ１１４、ＲＡＭ１１６等が含まれ、ＣＰＵ１１２がＲＯＭ１１４又は他の記憶媒体に格納されたプログラムに従って、画像形成装置１００全体を統括制御する。尚、ＲＡＭ１１６は、ＣＰＵ１１２が処理を実行時に、作業領域としても用いられる。
【００１５】
リーダー装置１２０では、画像データの読み取りを行う。一方、プリンタ装置１３０では、プリンタエンジンを用いて画像データの出力を行う。操作部１５０は、画像データの入出力操作を行うキーボード、画像データや各種機能の表示／設定などを行う液晶パネルを備える。画像記憶部１６０には電子文書や画像データなどのデータが一時的に格納され又は保存される。
【００１６】
ホストコンピュータ１９１は、ＬＡＮ１９０を介して電子文書を画像形成装置１００へ送信する。画像形成装置１００では、制御装置１１０のＣＰＵ１１２が受信した電子文書の解釈及び出力画像データの生成処理を行い、プリンタ装置１３０が紙などの印刷媒体に出力する。ここでは、ＬＡＮ１９０を介して電子文書が入力される例を説明したが、画像形成装置１００に接続されたＵＳＢメモリなどの可搬メディアや画像記憶部１６０に保存された電子文書が入力されてもよい。
【００１７】
次に、画像形成装置１００の制御装置１１０にて実行されるソフトウェアの構成例を、図２を用いて説明する。ジョブ制御部２００は、印刷ジョブの入力から出力を関数コールやメッセージ通信などによって実行及び制御する。ＰＤＬ解釈部２０２は、画像形成装置１００に搭載されるページ記述言語（ＰＤＬ）の種類（PostScript、ＰＣＬ、ＸＰＳなど）の数だけ存在する。ＰＤＬ解釈部２０２は、ジョブ制御部２００の制御に従ってＰＤＬ受信バッファ２０１に格納されたＰＤＬデータを読み込み、ＰＤＬデータを解釈する解釈処理を実行する。
【００１８】
中間データ生成部２０３は、ジョブ制御部２００による制御とＰＤＬ解釈部２０２から渡された描画情報とに従って、中間データであるディスプレイリスト（ＤＬ）を生成してフレームバッファ２０４に格納する。イメージデータ生成部２０５は、フレームバッファ２０４からＤＬをロードし、ＤＬに基づいてレンダリングした結果であるイメージデータ２０６を出力する処理を行う。
【００１９】
［第１の実施形態］
ここで、第１の実施形態における組み合わせエッジの消去方法を説明する。図３に示す（ａ）は、最適な対象データの印字結果の一例を示す図である。この例では、印字結果はグラフィック、ライン属性から構成されるチェックボックスと“振込み”の文字とで構成されている。これらのオブジェクトは印字結果からはわからないが、大量のオブジェクトが同一箇所に重なって描かれているものである。
【００２０】
このように、同一箇所に対して重複して描画を行うと、イメージデータ生成部２０５がスキャンラインレンダリングモデルの場合、同一箇所に大量のエッジデータが配置されるため、ソート処理等に非常に時間がかかる。この問題を解決するために重複エッジを消去する処理を説明する。
【００２１】
図３に示す（ｂ）は、図３の（ａ）の対象データを重ね描きする順番におけるパターンの一例である。この場合、１つのオブジェクトがそれぞれ連続して繰り返されて描画命令が発行される。また同様に、図３に示す（ｃ）も、図３の（ａ）の対象データを重ね描きする順番におけるパターンの一例である。この場合、１から５の順でオブジェクトが周期性を持って繰り返されて描画命令が発行される。
【００２２】
つまり、図３の（ｂ）のパターンの場合、同じ描画命令が連続しているため、前の描画命令と比較するだけで重複オブジェクトの検知が図３の（ｃ）のパターンに対して比較的容易であり、消去も可能である。図３の（ｃ）のパターンの場合、描画命令が連続せず、ある程度の周期性をもって同一の描画命令が発行されるため、重複オブジェクトの検知が図３の（ｂ）に対して難しく、消去もできていない。
【００２３】
このような描画パターンの場合、描画命令を解釈するＰＤＬ解釈部２０２では重複オブジェクトを検知できない。従って、重複オブジェクトデータに関しては、中間データ生成部２０３におけるエッジソート処理の中で重複データを検知して消去する。
【００２４】
次に、重ね描きオブジェクトとその中間データ（ディスプレイリスト）の構成の一例を説明する。図４に示す（ａ）は、重ね描きオブジェクトを簡易化した模式図である。描画オブジェクトは、描画命令が発行された順にＺ方向に並べられ、Ｘ及びＹの配置座標位置を有している。
【００２５】
図４に示す（ｂ）は、中間データ生成部２０３において図４の（ａ）のオブジェクトを中間データであるＤＬ化したデータを示す図である。中間データ（ＤＬ）は、外郭情報を示すエッジ、合成処理や高さを示すレベル、塗り情報を示すフィルで構成され、それぞれがリンクされた状態になってレンダリングが可能となる。
【００２６】
エッジデータは生成後、Ｘ及びＹ方向へのソート処理が行われる。ソートされたエッジ群はエッジリストとしてメモリ上に展開される。また、エッジデータは開始点の他に向きと開始点からの変位量により示す点列群情報をセグメントとして持つ。このように、中間データ（ＤＬ）をソートした状態で保持することで、レンダリング処理の高速化が可能となる。また、このソートされた状態を利用し、同一箇所のエッジを可能としている。
【００２７】
ここで、組み合わせエッジを削除する処理を、図５に示すフローチャートを用いて説明する。画像形成装置１００のＣＰＵ１１２がホストコンピュータ１９１、１９２から受信したＰＤＬデータをＲＡＭ１１６へ書き込む。そして、ジョブ制御部２００がそのＰＤＬデータを受信し、ＰＤＬ解釈部２０２へジョブ開始を通知する。ＰＤＬ解釈部２０２は、Ｓ５０１において、受信したデータをロードし、描画命令を解釈する。
【００２８】
次に、Ｓ５０２において、中間データ生成部２０３がディスプレイリストを生成する。そして、Ｓ５０３において、新規エッジを生成し、エッジリストへ挿入する。Ｓ５０４において、エッジデータ群をＸ及びＹ方向へのソート処理を行い、リスト化する。
【００２９】
次に、Ｓ５０５において、エッジリスト上のデータを対象として、Ｘ及びＹ方向の座標位置として、同一開始位置にエッジがあるかどうかを判定する。ここで、同一開始位置にエッジが存在しない場合は重複するオブジェクトが存在しないため、中間データ生成処理を継続する。
【００３０】
一方、Ｓ５０５で判定した結果、同一開始位置にエッジが存在する場合は重複するオブジェクトが存在するため、Ｓ５０６へ処理を進め、判定処理を継続する。このＳ５０６では、新規のエッジのレベル情報を参照し、それが背面を必要とするものであるかどうかを判定する。判定した結果、ＲＯＰ演算におけるMERGEPENなど背面を必要とするものである場合は背面のオブジェクトを削除すると描画結果が意図したものでなくなるため、背面のオブジェクトを消去することができない。従って、重複するオブジェクトが存在したとしても消去できないため、中間データ生成処理を継続する。尚、この問題に関しては、更に後述する。
【００３１】
Ｓ５０６で判定した結果、ＲＯＰ演算におけるCOPYPENなど背面を必要としないものである場合は背面のオブジェクトを削除することが可能であるため、Ｓ５０７へ処理を進める。Ｓ５０７では、エッジのセグメントデータをロードする。そして、Ｓ５０８において、エッジのセグメントデータが新規エッジと開始点が一致したエッジとで一致しているか比較する。その結果、セグメントデータが一致していない場合は重複するオブジェクトが存在しないため、中間データ生成処理を継続する。
【００３２】
一方、Ｓ５０８で比較した結果、セグメントデータが一致した場合は重複するオブジェクトが存在するため、Ｓ５０９へ処理を進める。このＳ５０９では、レベル情報からペアエッジを参照する。そして、Ｓ５１０において、ペアエッジも開始点とセグメントが一致しているかどうかを判定する。ペアエッジとは、エッジ生成前の描画命令オブジェクトを構成するエッジ群であり、矩形の場合は、２つのエッジから構成されるため、ペアエッジと呼んでいる。図４の（ｂ）に示す一番左のエッジと、左から四番目エッジがペアエッジであり、これらはレベルが一致するため、レベル情報から検出が可能である。
【００３３】
Ｓ５１０で判定した結果、ペアエッジ同士も開始点とセグメントが一致していない場合は重複するオブジェクトの領域が一致していないため、消去できず、中間データ生成処理を継続する。
【００３４】
一方、Ｓ５１０で判定した結果、ペアエッジ同士も開始点とセグメントが一致する場合は重複するオブジェクトが存在するため、Ｓ５１１へ処理を進め、下位レベルにあるほうのペアエッジを削除する。そして、Ｓ５１２において、同一箇所にある下位レベルにあるほうのエッジを削除し、一連の組み合わせエッジを削除する処理を終了する。
【００３５】
ここで、上述の図５に示す処理を図４に示す（ｂ）のディスプレイリストに対して実施した場合を説明する。番号６のエッジが新規にエッジリストに登録された際に、この時点で既に１〜５は既にエッジリストに登録済みの状態であるとする。番号６のエッジと開始点が一致するエッジ（番号４のエッジ）を最初に検知する。
【００３６】
番号６のエッジのレベルはCOPYPENであるため、背面オブジェクトの消去が可能である。そして、番号６のエッジと番号４のエッジとはセグメントデータも一致する。番号６のエッジのペアエッジはレベルが同じＬｖ＝３の番号５のエッジであり、番号４のエッジのペアエッジはレベルが同じＬｖ＝２の番号３のエッジである。ここで、番号５のエッジと番号３のエッジとは、エッジリストを参照すると開始点のＸ座標位置が一致しないため、消去することができない。よって、消去不可能と判定される。
【００３７】
一方、番号４のエッジと番号２のエッジは、ペアエッジも含めて同一であるため、消去可能であり、下位にある番号２のエッジ及びそのペアエッジである番号１のエッジを消去する。
【００３８】
図６は、第１の実施形態における組み合わせエッジ削除の効果を説明するための模式図である。従来のスキャンラインレンダリング処理を実施した場合、図３の（ａ）のような重ね描きオブジェクトにおいて、各オブジェクトが８７９個づつ重なっている。そのため、イメージデータ生成処理に時間がかかり、イメージデータ生成部２０５をハードウェア化した構成においても、２分以上かかっている。
【００３９】
これに対して、第１の実施形態では、中間データ（ＤＬ）生成時間は重複エッジデータの検出及び消去が必要となるため、１５秒程度、時間がかかるようになる。しかし、重複エッジデータが削除された状態でレンダリングを行うため、イメージデータ生成処理は、２分以上かかっていたものが４秒まで、大幅に短縮される。
【００４０】
第１の実施形態によれば、不要な重複エッジを消去することで描画オブジェクトの数を削減することでき、グラフィックやラインといったオブジェクトが重なったデータを高速に描画処理することが可能となる。
【００４１】
［第２の実施形態］
次に、図面を参照しながら本発明に係る第２の実施形態を詳細に説明する。第２の実施形態では、重複するオブジェクトに対して組み合わせエッジの削除とオブジェクトレベルの削除とを行うものである。尚、第２の実施形態における画像形成装置のハードウェア及びソフトウェアの構成は、第１の実施形態と同様であり、その説明は省略する。
【００４２】
図７は、第２の実施形態における削除処理を示すフローチャートである。画像形成装置１００のＣＰＵ１１２がホストコンピュータ１９１、１９２から受信したＰＤＬデータをＲＡＭ１１６へ書き込む。そして、ジョブ制御部２００がそのＰＤＬデータを受信し、ＰＤＬ解釈部２０２へジョブ開始を通知する。ＰＤＬ解釈部２０２は、Ｓ７０１において、受信したデータをロードする。
【００４３】
次に、Ｓ７０２において、受信したＰＤＬデータの解釈を行い、オブジェクトレベルでそのＰＤＬデータの描画命令に重複データが連続しているか検知可能かを判定する。判定した結果、オブジェクトレベルで重複データの検知が可能と判定した場合は、Ｓ７０８へ処理を進め、同一箇所に閾値以上の描画命令が連続しているかどうかを判定する。判定の結果、同一箇所に閾値以上の描画命令が連続していると判定した場合は、Ｓ７０９へ処理を進め、オブジェクトレベルの削除を行う。このオブジェクトレベルの削除は、同一箇所に配置された重複オブジェクトを描画命令単位で削除していく。尚、詳細は、図８に示す（ａ）を用いて更に後述する。
【００４４】
一方、Ｓ７０８での結果、同一箇所に閾値以上の描画命令が連続していないと判定した場合は重複オブジェクトの削除の必要性がないため、そのまま処理を終了する。この閾値は、レンダリング処理におけるキャッシュ可能なエッジ数やレベル数によって決定される値である。
【００４５】
また、上述のＳ７０２で判定した結果、オブジェクトレベルで重複データの検知が可能と判定されなかった場合はＳ７０３へ処理を進め、ディスプレイリストのエッジ生成処理を行う。そして、Ｓ７０４において、生成したエッジデータをＸ及びＹ方向にソート処理を行う。次に、Ｓ７０５において、エッジソートされた状態を利用して、同一箇所に閾値以上のエッジが存在するかどうかを判定する。判定した結果、同一箇所に閾値以上のエッジが存在しないと判定した場合は重複オブジェクトの削除の必要性がないため、そのまま処理を終了する。
【００４６】
一方、Ｓ７０５で、同一箇所に閾値以上のエッジが存在すると判定した場合はＳ７０６へ処理を進める。このＳ７０６では、対象としているエッジデータが参照しているフィルデータがイメージデータ又はグリフデータであるかどうかを判定する。ここで、イメージデータ又はグリフデータであると判定した場合はＳ７１０へ処理を進め、単一エッジの削除を選択し、処理を行う。ここで、単一エッジの削除は、重複オブジェクトが単一エッジのみで構成されるため、その１つのエッジを削除していく。詳細は、図８に示す（ｂ）を用いて更に後述する。
【００４７】
一方、Ｓ７０６で判定した結果、イメージデータ又はグリフデータではないと判定した場合はＳ７０７へ処理を進め、背面を必要とするＲＯＰ指定であるかどうかを判定する。ここで、背面を必要とするＲＯＰ指定ではないと判定した場合はＳ７１１へ処理を進め、第１の実施形態で説明した組み合わせエッジの削除を行う。
【００４８】
また、Ｓ７０７で背面を必要とするＲＯＰ指定であると判定した場合は、下位オブジェクトを消去できないため、Ｓ７１２へ処理を進め、先行レンダリングを利用する。詳細は、図８に示す（ｃ）を用いて更に後述する。
【００４９】
図８は、第２の実施形態における、オブジェクト削除、単一エッジ削除、先行フォールバックを示す模式図である。図８の（ａ）は、オブジェクトレベルの削除を示す模式図である。１の□を示すオブジェクトが描画命令として８７９回連続している場合、描画命令単位で前後参照することによって重複判定が可能であり、途中のオブジェクトから削除を実施する。
【００５０】
図８の（ｂ）は、単一エッジでの削除を示す模式図である。ここで、文字データは２値のイメージデータでエッジを表現するビットマップエッジで構成され、単一エッジのみで構成される。このようなエッジは、グラフィックやラインのようなｕｐとｄｏｗｎの方向を持つベクタエッジと異なり、単一エッジで構成されるため、１つのエッジを検知、削除すればよい。
【００５１】
図８の（ｃ）は、先行レンダリングを行う場合の模式図である。例えば、αブレンドの指定が在る場合やＲＯＰ演算で背面の値を参照する必要がある場合、複数のオブジェクトが重複していても削除することができない。よって、レンダリング処理が遅くなる閾値（この例では５５０としている）を超えた時点で、ディスプレイリストをクローズし、先行してレンダリング処理を開始する。
【００５２】
このように、第２の実施形態によれば、レンダリングを２回に分けて処理することで、レンダリング処理に対する高速化を図ることができる。
【００５３】
［第３の実施形態］
次に、図面を参照しながら本発明に係る第３の実施形態を詳細に説明する。第３の実施形態では、レンダリング処理においてエッジデータを削除する場合を説明する。尚、第３の実施形態における画像形成装置のハードウェア及びソフトウェアの構成は、第１の実施形態と同様であり、その説明は省略する。
【００５４】
図９は、レンダリング中にエッジを削除する処理を示すフローチャートである。第１の実施形態では、中間データ（ディスプレイリスト）生成中に、組み合わせエッジ削除処理を行っている。図９に示す例では、中間データ（ディスプレイリスト）生成中に、組み合わせエッジ削除処理をエッジの重複検知ができずに行えなかった場合、その後処理であるレンダリング処理にて実施する。
【００５５】
画像形成装置１００におけるイメージデータ生成部２０５は、中間データ生成部２０３によって生成されたディスプレイリストをロードし、Ｓ９０１において、レンダリングを開始する。次に、Ｓ９０２において、エッジデータをロードし、Ｓ９０３において、同一開始位置に閾値以上のエッジが存在するかどうかを判定する。判定の結果、同一開始位置に閾値以上のエッジが存在しないと判定した場合は重複エッジを消去する必要がないのでそのまま処理を終了する。
【００５６】
一方、Ｓ９０３において、同一開始位置に閾値以上のエッジが存在すると判定した場合は、Ｓ９０４へ処理を進め、新規エッジのレベルが背面を必要とするものであるかどうかを判定する。判定の結果、新規エッジのレベルが背面を必要とすると判定した場合は重複エッジを消去することができないので、そのまま処理を終了する。
【００５７】
また、Ｓ９０４において、新規エッジのレベルが背面を必要としないと判定した場合、Ｓ９０５へ処理を進め、エッジデータが組み合わせで構成されているかどうかを判定する。ここで、エッジデータが組み合わせで構成されていない場合はＳ９１２へ処理を進め、フィルデータが一致しているかどうかを判定する。判定の結果、フィルデータが一致していると判定した場合は単一データだけで構成されるエッジのため、Ｓ９１１へ処理を進め、エッジデータを削除する。
【００５８】
一方、ステップＳ９０５において、エッジデータが組み合わせで構成されている場合はＳ９０６へ処理を進め、開始点が一致した両エッジのセグメントデータをロードする。そして、Ｓ９０７において、セグメントデータが一致しているかどうかを判定する。ここで、セグメントデータが一致していないと判定された場合はエッジデータを消去することができないため、一連の処理を終了する。
【００５９】
また、Ｓ９０７の判定において、セグメントデータが一致していると判定された場合はＳ９１０へ処理を進め、ペアエッジデータを削除する。そして、Ｓ９１１において、エッジデータを削除し、一連のレンダリング中にエッジを削除する処理を終了する。
【００６０】
図１０に示す（ａ）は、レンダリング中にエッジを削除する処理の例示であり、左側のグレーのグラフィックデータ及び右側のグレーのグラフィックデータは同一オブジェクトがそれぞれ３つずつ重複して描画されているものである。図１０に示す（ｂ）は、図１０の（ａ）を、イメージデータ生成部２０５にてレンダリング処理を実施した模式図である。このように、スキャンランレンダリングは、Ｙ方向に沿って同一スキャンラインごとにエッジをロードし、ピクセル描画を行う処理である。
【００６１】
まず、グレーオブジェクトの左側のエッジをロードする。この際、３つのエッジが重複しているため、下位２つのエッジ及びその右側にある２つのペアエッジを削除する（破線矢印）。次に、スキャンライン上の処理を右に進め、エッジを検出する。次に、エッジの存在する箇所には、既に２つのエッジが消去されているため、４つのエッジが重複して存在する。この４つのエッジのうち、更に２つは消去可能なため、これらも第３の実施形態によりペアエッジを含めて消去する。
【００６２】
第３の実施形態によれば、レンダリング処理において重複エッジを消去することにより高速な画像処理が可能となる。
【００６３】
［他の実施形態］
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
0005820159.tif 000002
【図２】
0005820159.tif 000003
【図３】
0005820159.tif 000004
【図４】
0005820159.tif 000005
【図５】
0005820159.tif 000006
【図６】
0005820159.tif 000007
【図７】
0005820159.tif 000008
【図８】
0005820159.tif 000009
【図９】
0005820159.tif 000010
【図１０】
0005820159.tif 000011