(57)【要約】【課題】  図形が縮小しつつ重なる場合における重なり部分の削除により、簡単な図形データが作成される印刷処理装置を提供する。【解決手段】  重なり判定部４９は、順に中間データメモリ４２から現図形データを、直前図形データメモリ４８から直前図形データを読み出し、現図形及び直前図形の形状が同一種類の多角形であり重なる場合において、現図形が直前図形の内側に向かって縮小して重なる場合には現図形データ及び直前図形データを分割部５０に送る。分割部５０は、現図形、直前図形及び座標平面を複数の平行線とこれに垂直な直線とで分割し、削除部５１は、分割された座標平面の各領域ごとに分割後の直前図形から分割後の現図形と重なる部分を削除し、直前図形データを修正して図形描画処理部４４に出力する。【選択図】    図１
2005119219.tif 000002
【特許請求の範囲】
【請求項１】
座標点によって図形を指定する２つの図形データを比較し、一方の図形データにより指定される第１図形及び他方の図形データにより指定される第２図形が大きさの異なる同一形状の多角形であり前記第１図形の内側に前記第２図形が重なる場合に、前記第１図形と前記第２図形と座標平面とを、複数の平行線及びこれに垂直で前記第１図形及び前記第２図形に交わる１つの直線により分割し、分割された座標平面の各領域ごとに分割された第１図形から分割された第２図形と重なる部分を削除し、前記第１図形を分割及び削除して得られた複数の図形を指定する図形データを作成することを特徴とする印刷処理方法。
【請求項２】
インタプリターと中間データメモリと図形重なり処理部と図形描画処理部とページメモリと印刷部とを備え、
前記インタプリターは、描画命令から、座標点によって図形を指定する複数の図形データを含む中間データを作成し、
前記中間データメモリは、前記中間データを記憶し、
前記図形重なり処理部は、直前図形データメモリと重なり判定部と分割部と削除部とを有し、前記重なり判定部は、前記中間データメモリから順に図形データを現図形データとして読み出し、直前に前記中間データメモリから読み出して前記直前図形データメモリに記憶させた図形データを直前図形データとして読み出し、現図形データにより描かれる現図形及び直前図形データにより描かれる直前図形が大きさの異なる同一形状の多角形であり前記直前図形の内側に前記現図形が重なる場合に、前記現図形データ及び前記直前図形データを前記分割部に送り、前記現図形データを直前図形データとして前記直前図形データメモリに記憶させ、前記分割部は、前記現図形データ及び前記直前図形データの入力を受けて、前記現図形と前記直前図形と座標平面とを、複数の平行線及びこれに垂直で前記現図形及び前記直前図形に交わる１つの直線により分割し、分割された複数の現図形を指定する図形データに前記現図形データを修正し、分割された複数の直前図形を指定する図形データに前記直前図形データを修正し、前記削除部は、分割された座標平面の各領域ごとに、分割された直前図形から分割された現図形と重なる部分を削除し、前記直前図形を分割及び削除して得られた複数の図形を指定する図形データに前記分割部で修正された直前図形データを修正し、
前記図形描画処理部は、前記削除部から修正された直前図形データの入力を順次受けて描画処理して前記ページメモリに書き込み、
前記印刷部は、前記図形描画処理部による前記ページメモリへの書込み終了に応じて、前記ページメモリに書き込まれた内容を印刷することを特徴とする印刷処理装置。
【請求項３】
ＰＤＬ言語生成部と図形重なり処理部とＰＤＬ言語出力部とを備え、
前記ＰＤＬ言語生成部は、アプリケーションにより送られる描画命令から、座標点によって図形を指定する複数の図形データをＰＤＬにより記述したＰＤＬデータを作成し、
前記図形重なり処理部は、直前図形データメモリと重なり判定部と分割部と削除部とを有し、前記重なり判定部は、前記ＰＤＬデータから順に図形データを現図形データとして読み出し、直前に前記ＰＤＬデータから読み出して前記直前図形データメモリに記憶させた図形データを直前図形データとして読み出し、現図形データにより描かれる現図形及び直前図形データにより描かれる直前図形が大きさの異なる同一形状の多角形であり直前図形の内側に現図形が重なる場合に、前記現図形データ及び前記直前図形データを前記分割部に送り、前記現図形データを前記直前図形データとして前記直前図形データメモリに記憶させ、前記分割部は、前記現図形データ及び前記直前図形データの入力を受けて、前記現図形と前記直前図形と座標平面とを、複数の平行線及びこれに垂直で前記現図形及び前記直前図形に交わる１つの直線により分割し、分割された複数の現図形を指定する図形データに前記現図形データを修正し、分割された複数の直前図形を指定する図形データに前記直前図形データを修正し、前記削除部は、分割された座標平面の各領域ごとに、分割された直前図形から分割された現図形と重なる部分を削除し、前記直前図形を分割及び削除して得られた複数の図形を指定する図形データに前記分割部で修正された直前図形データを修正し、
前記ＰＤＬ言語出力部は、前記削除部から修正された直前図形データの入力を順次受けてＰＤＬデータとして出力することを特徴とする印刷処理装置。
【請求項４】
前記分割部は、前記現図形及び前記直前図形の対応する座標点のＹ座標が同一の場合には、前記平行線が各座標点を通るものとする請求項２または請求項３に記載の印刷処理装置。
【請求項５】
前記分割部は、前記平行線を前記現図形または前記直前図形の重心を通るものとする請求項２または請求項３に記載の印刷処理装置。
【請求項６】
前記分割部は、前記平行線を前記現図形と前記直前図形との縮小の中心を通るものとする請求項２または請求項３に記載の印刷処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、印刷処理方法及び装置に関し、特にプリンタ記述言語データ量の最適化及び印刷の高速化に関する。
【背景技術】
【０００２】
アプリケーション・ソフトウェアは、複数の描画オブジェクトと、各描画オブジェクトを構成する複数の描画コマンドを含む画像データを作成する。作成された画像データは、例えばＭＳ−Ｗｉｎｄｏｗｓ（登録商標）等のＯＳのもとで印刷を制御するＧＤＩ（Graphics Device Interface）（登録商標）等によりデバイス・ドライバに送られ、デバイス・ドライバにより株式会社リコーのＲＰＣＳ、ＰＣＬ（Printer Control Language）（登録商標）等のページ記述言語（ＰＤＬ）により記述され、プリンタへ出力される。プリンタは、ＰＤＬで記述された画像データをプリンタ側の処理に適した形式をもつ中間データに変換して描画処理を行い、ドット単位の印刷データであるラスタデータに展開し、これに基づいて印刷処理する。
【０００３】
画像データに含まれる複数の描画オブジェクトは、その位置関係に応じて他の描画オブジェクトと重なる場合がある。この重なりにより、描画オブジェクトの一部または全部が印刷結果に現れないことがある。ここで、画像データに含まれる描画オブジェクト及び描画コマンドが全てプリンタに出力されて、そのままラスターデータが作成されると、印刷結果に現れない部分についても処理が行われることとなる。従来、印刷結果に現れない描画オブジェクトまたは描画コマンドの一部または全部を削除することにより、画像データ量を減らし、印刷結果に影響を与えずに処理を高速化する手法が提案されている。
【０００４】
特許文献１には、画像データを複数の帯状領域（バンド）ごとの中間言語データに変換し、各バンドが分割されて得られる複数のサブバンドごとのサブ中間言語データに変換し、サブバンドを構成する複数のワードごとに重なり判定を行い、重なり部分を削除することにより、小メモリ化、高速化を図る描画処理装置が記載されている。
【特許文献１】特開２００１−２４９７７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
アプリケーション・ソフトウェアは、多数の図形を重ねて多様な描画を実現する場合がある。例えば、複数のポリゴン図形を同じ中心に向かって縮小させて重ね、その中心に向かって色を変化させてグラデーションを描画する場合がある。このような描画オブジェクトの重なる部分を単純に削除処理すると、得られた画像データは、元の画像データよりも複雑になる場合が多い。
【０００６】
具体的には、矩形の中心に向かって色が変化していくようなグラデーションが、大きな矩形に大きさが少し小さく色が少し異なる矩形を繰り返し重ねる描画コマンドで構成されている場合、これまでの重なり判定及び削除処理では、削除処理そのものが複雑になる。また、削除処理後の図形が、枠のような少しの幅をもつ矩形になる。多くのＰＤＬは、枠のような少しの幅をもつ矩形を表現する描画コマンドを有するため、単純な形態であれば簡単に記述できる。しかし、グラデーションの幅が縦横で異なる場合、７角形等の複雑な形状の場合、縮小の中心が重心でない場合等には、ＰＤＬが簡潔に表現する描画コマンドをもたないため、描画コマンドの記述が複雑となる。そのため、データの保持に多くのメモリ量が必要となり、ラスターイメージへの展開に時間が多く必要になるため、描画面積を削減することによる高速化が効果的に実現されない。
【０００７】
本発明は、重なりの状態を判定し、判定結果に応じた削除処理を行い、印刷結果に現れない描画コマンドの一部または全部を削除することにより、印刷結果に影響を与えることなく、画像処理時間または印刷処理時間の高速化を図ることを目的とする。
【課題を解決するための手段】
【０００８】
この発明の印刷処理方法は、座標点によって図形を指定する２つの図形データを比較し、一方の図形データにより指定される第１図形及び他方の図形データにより指定される第２図形が大きさの異なる同一形状の多角形であり第１図形の内側に第２図形が重なる場合に、第１図形と第２図形と座標平面とを、複数の平行線及びこれに垂直で第１図形及び第２図形に交わる１つの直線により分割し、分割された座標平面の各領域ごとに第１図形から分割された第２図形と重なる部分を削除し、分割及び削除された複数の第１図形を指定する図形データを作成する。
【０００９】
この発明の第１の印刷処理装置は、インタプリターと中間データメモリと図形重なり処理部と図形描画処理部とページメモリと印刷部とを備える。インタプリターは、描画命令から、座標点によって図形を指定する複数の図形データを含む中間データを作成し、中間データメモリは、中間データを記憶する。図形重なり処理部は、直前図形データメモリと重なり判定部と分割部と削除部とを有する。重なり判定部は、中間データメモリから順に図形データを現図形データとして読み出し、直前に中間データメモリから読み出して直前図形データメモリに記憶させた図形データを直前図形データとして読み出し、現図形データにより描かれる現図形及び直前図形データにより描かれる直前図形が大きさの異なる同一形状の多角形であり直前図形の内側に現図形が重なる場合に、現図形データ及び直前図形データを分割部に送り、現図形データを直前図形データとして直前図形データメモリに記憶させる。分割部は、現図形データ及び直前図形データの入力を受けて、現図形と直前図形と座標平面とを、複数の平行線及びこれに垂直で現図形及び直前図形に交わる１つの直線により分割し、分割された複数の現図形を指定する図形データに現図形データを修正し、分割された複数の直前図形を指定する図形データに直前図形データを修正する。削除部は、分割された座標平面の各領域ごとに、分割された直前図形から分割された現図形と重なる部分を削除し、直前図形を分割及び削除して得られた複数の図形を指定する図形データに分割部で修正された直前図形データを修正する。図形描画処理部は、削除部から修正された直前図形データの入力を順次受けて描画処理してページメモリに書き込み、印刷部は、図形描画処理部によるページメモリへの書込み終了に応じて、ページメモリに書き込まれた内容を印刷する。
【００１０】
この発明の第２の印刷処理装置は、ＰＤＬ言語生成部と図形重なり処理部とＰＤＬ言語出力部とを備える。ＰＤＬ言語生成部は、アプリケーションにより送られる描画命令から、座標点によって図形を指定する複数の図形データをＰＤＬにより記述したＰＤＬデータを作成する。図形重なり処理部は、直前図形データメモリと重なり判定部と分割部と削除部とを有する。重なり判定部は、ＰＤＬデータから順に図形データを現図形データとして読み出し、直前にＰＤＬデータから読み出して直前図形データメモリに記憶させた図形データを直前図形データとして読み出し、現図形データにより描かれる現図形及び直前図形データにより描かれる直前図形が大きさの異なる同一形状の多角形であり直前図形の内側に現図形が重なる場合に、現図形データ及び直前図形データを分割部に送り、現図形データを直前図形データとして直前図形データメモリに記憶させる。分割部は、現図形データ及び直前図形データの入力を受けて、現図形と直前図形と座標平面とを、複数の平行線及びこれに垂直で現図形及び直前図形に交わる１つの直線により分割し、分割された複数の現図形を指定する図形データに現図形データを修正し、分割された複数の直前図形を指定する図形データに直前図形データを修正する。削除部は、分割された座標平面の各領域ごとに、分割された直前図形から分割された現図形と重なる部分を削除し、直前図形を分割及び削除して得られた複数の図形を指定する図形データに分割部で修正された直前図形データを修正する。ＰＤＬ言語出力部は、削除部から修正直前図形データの入力を順次受けてＰＤＬデータとして出力する。
【００１１】
分割部は、現図形及び直前図形の対応する座標点のＹ座標が同一の場合には、平行線が各座標点を通るものとするとよい。また、平行線を現図形または直前図形の重心または縮小の中心を通るものとするとよい。
【発明の効果】
【００１２】
中心に向かって色が変化するグラデーション等を描画する複雑な図形データの重複部分を、比較的簡単に記述される図形に分割してから削除するため、必要な計算量が大幅に削減でき、その後の処理においても省メモリ及び高速化が実現できる。また、中間データやＰＤＬデータを用いるため、多くの情報を保ったまま正確な情報に基づいて処理できる。また、平行線とこれに垂直な直線で分割された図形の多くは四角形や五角形等の比較的単純な図形の集合に還元でき、簡単な図形データで記述されて削除及び印刷処理が容易となる。さらに、図形の座標点を通る平行線とこれに垂直な直線で分割された現図形及び直前図形は台形となるものが多く、同じ高さとＹ座標を持つ台形同士を比較して削除するため処理が容易であり、さらにこの場合には分割された座標平面の各領域ごとに平行四辺形が得られる場合があり処理が容易となる。
【発明を実施するための最良の形態】
【００１３】
プリンタ装置を印刷処理装置とした第１の印刷処理システムの構成を示すブロック図を図１に示す。印刷処理システム１は、ホスト装置２とプリンタ装置３とを備える。ホスト装置２は、ホスト装置２を画像処理装置として動作させるアプリケーションにより、複数の描画コマンドにより構成される複数の描画オブジェクトを描画する描画命令を作成し、描画命令をＰＤＬ言語により記述してＰＤＬデータを作成してプリンタ装置３に出力する。
【００１４】
プリンタ装置３は、プリンタ・コントローラ４とプリンタ・エンジン５とを備える。プリンタ・コントローラ４は、インタプリター４１と中間データメモリ４２と図形重なり処理部４３と図形描画処理部４４とページメモリ４５とエンジン・インターフェイス（Ｉ／Ｆ）４６とＣＰＵ４７とを有し、これらが情報を伝達するバスを介して接続されている。インタプリター４１は、ホスト装置２からＰＤＬデータの入力を受け、ＰＤＬデータを後の描画処理に適した中間データに変換し、中間データメモリ４２に記憶させる。この中間データは、描画範囲指定命令や描画色指定命令等で構成され、矩形や多角形等の各図形データごとに抽出可能な形式で記述される。図形データは、描画色、ブラシ、透過モード等の描画属性や、頂点の座標で図形を指定する。
【００１５】
図形重なり処理部４３は、直前図形データメモリ４８と重なり判定部４９と分割部５０と削除部５１とをもつ。直前図形データメモリ４８は、重なり判定部４９により、中間データメモリ４２から読み出された図形データのうち多角形を描く図形データが記憶される。
【００１６】
重なり判定部４９は、中間データメモリ４２に中間データが記憶されると、重なりの上下に基づいた描画の優先順位等に従い、順に中間データメモリ４２から図形データを順に１つ読み出して現図形データとし、直前図形データメモリ４８に図形データが記憶されている場合にはこれを読み出して直前図形データとする。重なり判定部４９は、現図形データにより描かれる現図形及び直前図形データにより描かれる直前図形の形状が同一種類の多角形であり重なる場合において、現図形が直前図形の内側に向かって縮小して重なる場合には現図形データ及び直前図形データを分割部５０に送り、現図形が直前図形の内側に向かって縮小して重ならない場合には現図形データ及び直前図形データを削除部５１に送る。現図形データ及び直前図形データを分割部５０または削除部５１に送ると、中間データメモリ４２から次の図形データを読み出す。
【００１７】
重なり判定部４９は、現図形及び直前図形の形状が多角形である場合において、両多角形が同一種類でない場合または現図形が直前図形に重ならない場合には、直前図形データを図形描画処理部４４に送り、中間データメモリ４２から次の図形データを読み出す。また、現図形の形状が多角形ではない場合、直前図形データメモリ４８に図形データが記憶されている場合には直前図形データを図形描画処理部４４に送った上で、現図形データを図形描画処理部４４に送り、直前図形データメモリ４８に図形データが記憶されていない場合には、現図形データのみを図形描画処理部４４に送り、中間データメモリ４２から次の図形データを読み出す。
【００１８】
重なり判定部４９は、現図形データにより描かれる現図形が多角形である場合、次に中間データメモリ４２から図形データを読み出す前に、直前図形データメモリ４８に現図形データを上書きして記憶させる。直前図形データメモリ４８に図形データが記憶されている場合には、上書きする前に直前図形データメモリ４８に記憶されている図形データを読み出す。また、現図形データにより描かれる現図形が多角形でない場合、直前図形データメモリ４８に図形データが記憶されている場合にはこれを読み出し、次に中間データメモリ４２から図形データを読み出す前に直前図形データメモリ４８の内容を消去する。
【００１９】
重なり判定部４９は、中間データメモリ４２に記憶された全ての図形データに対して、読出が終了するまで読出を繰り返す。
【００２０】
分割部５０は、重なり判定部４９から現図形データ及び直前図形データの入力を受けて、現図形、直前図形及び座標平面を複数の直線で分割し、現図形データ及び直前図形データをそれぞれ修正して削除部５１に送る。分割する直線は、現図形及び直前図形の対応する座標点のＹ座標が異なる場合には、現図形と直前図形とをＹ軸に平行で１００ピクセル間隔の複数の平行線であり、現図形及び直前図形の対応する座標点のＹ座標が異ならない場合には、現図形と直前図形とを各座標点を通過する複数の平行線である。また、いずれかの平行線に加えて平行線に垂直に交わり、現図形または直前図形の重心を通る直線で分割する。
【００２１】
削除部５１は、分割部５０から現図形データ及び直前図形データの入力を受けた場合には、分割された座標平面の各領域ごとに分割後の直前図形から分割後の現図形と重なる部分を削除し、重なり判定部４９から現図形データ及び直前図形データの入力を受けた場合には、直前図形から現図形と重なる部分を通常どおり削除し、直前図形データを修正する。削除部５１は、削除部５１が使用できるメモリ量や処理能力、データ転送速度、図形描画処理部４４がスキャンライン変換された図形データを解するか否か等の情報を参照し、変換により印刷までの処理時間が高速化される条件に基づいて、修正後の直前図形データを、座標点で指定するポリゴンの形式からドット単位で描画するラスタデータに変換するスキャンライン変換をするか判定し、スキャンライン変換する場合には修正後の直前図形データをスキャンライン変換してから図形描画処理部４４に出力し、スキャンライン変換しない場合には修正後の直前図形データをそのまま図形描画処理部４４に出力する。
【００２２】
図形描画処理部４４は、重なり判定部４９または削除部５１から送られた図形データから、順次、印刷時の走査に対応したドット単位の画像データであるラスタデータを作成してページメモリ４５に記憶させる。このラスタデータは、重なりにより印刷結果として現れない画像を、印刷結果として現れる画像で打ち消すように作成される。図形描画処理部４４は、１ページ分のラスタデータを作成するとページメモリ４５の内容をエンジンＩ／Ｆ４６を通じてプリンタ・エンジン４６に出力する。プリンタ・エンジン４６は、入力を受けたラスタデータに基づいて印刷処理を行う。ＣＰＵ４７は、各種演算処理を行う。
【００２３】
重なり判定部４９の動作を図２のフロー図に示す。ホスト装置２からＰＤＬデータがプリンタ装置３に転送され、インタプリター４１により中間データに変換されて中間データメモリ４２に記憶されると、重なり判定部４９は、重なりの上下に基づいた描画の優先順位等に従い、順に中間データメモリ４２から中間データの形式で記憶された図形データを１つ読み込み現図形データとし（ステップＳ１）、現図形データにより描かれる現図形の形状が多角形であるか判定する（ステップＳ２）。現図形の形状が多角形である場合、重なり判定部４９は、直前図形データメモリ４８に図形データが記憶されているか判定する（ステップＳ３）。現図形の形状が多角形である場合であって、直前図形データメモリ４８に図形データが記憶されている場合、重なり判定部４９は、直前図形データメモリ４８に記憶されている図形データを読み出して直前図形データとし（ステップＳ４）、現図形データを直前図形データメモリ４８に上書きして記憶させる（ステップＳ５）。直前図形データメモリ４８には、多角形を描く図形データのみが記憶されているため、直前図形データが描く直前図形の形状は常に多角形である。
【００２４】
このように現図形及び直前図形の形状がともに多角形である場合、重なり判定部４９は、現図形と直前図形とに共通性があるか判定する（ステップＳ６）。現図形と直前図形とに共通性があるかの判定では、現図形及び直前図形の形状の種類が同一である場合に、現図形と直前図形とに共通性があると判定される。例えば、現図形と直前図形とがともに四角形の場合である。なお、現図形及び直前図形の形状の種類が同一である場合に加えて、描画色以外の描画属性が同一である場合にのみ、現図形と直前図形とに共通性があると判定されるようにしてもよい。重なり判定部４９は、現図形と直前図形とに共通性がある場合、現図形と直前図形とが重なるか判定し（ステップＳ７）、現図形と直前図形とに共通性がない場合、直前図形データを図形描画処理部４４に送る（ステップＳ８）。
【００２５】
現図形と直前図形とが重なるかの判定は、現図形と直前図形との間の描画属性の関係、現図形と直前図形との位置関係から求まる重複度合、現図形に外接する矩形と直前図形に外接する矩形との位置関係から求まる重複度合等に基づいてされる。重なり判定部４９は、現図形と直前図形とが重なる場合、現図形が直前図形の内側に向かって縮小して重なるか判定し（ステップＳ９）、現図形と直前図形とが重ならない場合、直前図形データを図形描画処理部４４に送る（ステップＳ８）。
【００２６】
現図形が直前図形の内側に向かって縮小して重なるかの判定は、現図形及び直前図形の各座標点の位置関係、現図形に外接する矩形及び直前図形に外接する矩形の各座標点の位置関係、これら座標点から求められる重心の位置関係等の条件を基にされる。現図形が直前図形の内側に向かって縮小して重なるものには、相似関係にあるものやＸ方向及びＹ方向の一方に縮小しているものも含む。現図形が直前図形の内側に向かって縮小して重なる場合、現図形データ及び直前図形データを分割部５０に送り（ステップＳ１０）、現図形が直前図形の内側に向かって縮小して重ならない場合、直前図形データを削除部５１に送る（ステップＳ１１）。
【００２７】
なお、重なり判定部４９は、現図形及び直前図形の形状、描画属性、その組み合わせ等により、印刷処理の高速化以外に、印刷結果が変わる等の影響を生じさせる場合には、現図形データ及び直前図形データを分割部５０に送らず、直前図形データを図形描画処理部４４に送るようにしてもよい（ステップＳ８）。
【００２８】
現図形の形状が多角形である場合であって、直前図形データメモリ４８に図形データが記憶されていない場合、重なり判定部４９は、現図形データを直前図形データメモリ４８に記憶させる（ステップＳ１２）。具体的には、現図形データが最初に中間データメモリ４２から読み出された図形データである場合や、前回読み出された現図形データが多角形でなかった場合には、直前図形データメモリ４８に図形データが記憶されていない。
【００２９】
現図形の形状が多角形ではない場合、重なり判定部４９は、直前図形データメモリ４８に図形データが記憶されているか判定する（ステップＳ１３）。現図形の形状が多角形ではない場合であって、直前図形データメモリ４８に図形データが記憶されている場合、重なり判定部４９は、直前図形データメモリ４８に記憶されている図形データを読み出して直前図形データとし（ステップＳ１４）、直前図形データメモリ４８の内容を消去し（ステップＳ１５）、直前図形データを図形描画処理部４４に送り（ステップＳ１６）、現図形データを図形描画処理部４４に送る（ステップＳ１７）。現図形の形状が多角形ではない場合であって、直前図形データメモリ４８に図形データが記憶されていない場合、現図形データを図形描画処理部４４に送る（ステップＳ１７）。
【００３０】
重なり判定部４９は、これらの処理が終わると、中間データメモリ４２に記憶された全ての図形データに対して現図形データとしての読出が終了したか判定し（ステップＳ１８）、この読出が終了していない場合、中間データメモリ４２から次の優先順位をもつ図形データを１つ読み出して現図形データとして（ステップＳ１）処理を繰り返す。読出が終了した場合、重なり判定部４９は、直前図形データメモリ４８に図形データが記憶されているか判定し（ステップＳ１９）、直前図形データメモリ４８に図形データが記憶されている場合、直前図形データメモリ４８から図形データを読み出して（ステップＳ２０）図形描画処理部４４に送り（ステップＳ２１）処理を終了し、直前図形データメモリ４８に図形データが記憶されていない場合、そのまま処理を終了する。
【００３１】
分割部５０の動作を図３のフロー図に示す。分割部５０は、重なり判定部４９から現図形データ及び直前図形データの入力を受けると、現図形及び直前図形の対応する座標点のＹ座標が異なるか判定する（ステップＳ２２）。現図形及び直前図形の対応する座標点のＹ座標が異なる場合、座標平面と現図形と直前図形とをＹ軸に平行で１００ピクセル間隔の複数の平行線で分割し、分割された現図形及び直前図形を指定する図形データの集まりとして現図形データ及び直前図形データをそれぞれ修正する（ステップＳ２３）。平行線の間隔は任意であり、平行線はＸ軸またはＹ軸に平行であることが望ましいが傾きをもってもよい。現図形及び直前図形の対応する座標点のＹ座標が異ならない場合、現図形と直前図形とを各座標点を通過する複数の平行線で分割し、分割された現図形及び直前図形を指定する図形データの集まりとして現図形データ及び直前図形データをそれぞれ修正する（ステップＳ２４）。分割部５０は、これらの平行線に垂直に交わり、現図形または直前図形の重心を通る直線で現図形と直前図形とを分割し、分割された現図形及び直前図形を指定する図形データの集まりとして現図形データ及び直前図形データをそれぞれ修正する（ステップＳ２５）。平行線に交わる直線は平行線に垂直であることが望ましいが、平行線で分割された現図形及び直前図形をほぼ均等に分割する直線であれば傾きのある直線であってもよい。また、現図形または直前図形の重心を通る直線の他、平行線で分割された現図形及び直前図形をほぼ均等に分割する直線であれば、現図形に外接する矩形と直前図形に外接する矩形とで決まる重心や縮小の中心を通る直線であってもよい。分割部５０は、修正後の現図形データ及び直前図形データを削除部５１に送る（ステップＳ２６）。
【００３２】
削除部５１の動作を図４のフロー図に示す。削除部５１は、現図形データ及び直前図形データの入力を受けると、現図形及び直前図形が分割部５０で分割されているか判定する（ステップＳ２７）。現図形及び直前図形が分割部５０で分割されている場合、分割された座標平面の各領域ごとに分割後の直前図形から分割後の現図形と重なる部分を削除し、直前図形データを修正する（ステップＳ２８）。現図形及び直前図形が分割部５０で分割されていない場合、すなわち、重なり判定部４９から入力を受けた場合には、直前図形から現図形と重なる部分を通常どおり削除し、直前図形データを修正する（ステップＳ２９）。削除部５１は、修正後の直前図形データを、座標点で指定するポリゴンの形式からドット単位で描画するラスタデータに変換するスキャンライン変換をするか判定する（ステップＳ３０）。スキャンライン変換するかの判定は、削除部５１が使用できるメモリ量や処理能力、データ転送速度、図形描画処理部４４がスキャンライン変換された図形データを解するか否か等の情報を参照し、変換により印刷までの処理時間が高速化される条件に基づいてされる。削除部５１は、スキャンライン変換する場合、修正後の直前図形データをスキャンライン変換してから（ステップＳ３１）、図形描画処理部４４に出力して（ステップＳ３２）処理を終了し、スキャンライン変換しない場合、修正後の直前図形データをそのまま図形描画処理部４４に出力して（ステップＳ３２）処理を終了する。
【００３３】
現図形及び直前図形が一定間隔のＹ軸に平行な平行線で分割され、直前図形が削除される経過の例を図５に示す。この分割方法は、あらゆる多角形に対し、削除後に簡単な図形を作成することができる点で有効である。この例では、六角形の直前図形２０１の内側に、これを縮小した六角形の現図形２０２が重なる（図５（ａ））。分割部５０は、直前図形２０１及び現図形２０２を、１００ピクセル間隔で並ぶＸ軸に平行な平行線２０３で現分割し（図５（ｂ））、直前図形２０１及び現図形２０２の重心を通りＸ軸に垂直な垂直線２０４で分割する（図５（ｃ））。削除部５１は、分割された直前図形２０１から、分割された現図形２０２と重なる部分を削除し、修正された直前図形２０５を得る（図５（ｄ））。
【００３４】
現図形及び直前図形が各座標点を通りＹ軸に平行な平行線で分割され、直前図形が削除される経過の例を図６に示す。この分割方法は、現図形と直前図形との対応する座標点のＹ座標が一致する場合に、削除後に簡単な図形を作成することができる点で有効である。この例では、六角形の直前図形２０６の内側に、これを縮小した六角形の現図形２０７が重なる（図６（ａ））。分割部５０は、直前図形２０６及び現図形２０７を、各座標点を通りＹ軸に平行な平行線２０８で分割し、（図６（ｂ））、直前図形２０６及び現図形２０７の重心を通りＸ軸に垂直な垂直線２０９で分割する（図６（ｃ））。削除部５１は、分割された直前図形２０６から、分割された現図形２０７と重なる部分を削除し、修正された直前図形２１０を得る（図６（ｄ））。
【００３５】
ホスト装置を印刷処理装置とした第２の印刷処理装置の構成を示すブロック図を図７に示す。印刷処理システム６は、ホスト装置７とプリンタ装置８とを備える。ホスト装置７は、アプリケーション動作部９とプリンタ・ドライバ１０とを備える。アプリケーション動作部９は、複数の描画コマンドにより構成される複数の描画オブジェクトを描画する描画命令を作成し、例えばＭＳ−Ｗｉｎｄｏｗｓ（登録商標）におけるＧＤＩ（登録商標）を介し、プリンタ・ドライバ１０に出力する。
【００３６】
プリンタ・ドライバ１０は、ＰＤＬ言語生成部１０１と図形重なり処理部１０２とＰＤＬ言語出力部１０３とＣＰＵ１０４とを有し、これらが情報を伝達するバスを介して接続されている。ＰＤＬ言語生成部１０１は、アプリケーション動作部９から描画命令の入力を受け、描画命令をＰＤＬ言語により記述してＰＤＬデータを作成する。このＰＤＬデータは、矩形や多角形等を描画する各図形データを抽出可能な形式で記述される。図形データは、描画色、ブラシ、透過モード等の描画属性や、頂点の座標で図形を指定する。
【００３７】
図形重なり処理部１０２は、直前図形データメモリ１０５と重なり判定部１０６と分割部１０７と分割部１０８とをもち、各部の機能及び動作は、印刷処理システム１における図形重なり処理部４３の各部の機能及び動作と同様である。なお、図形データは、中間データからではなくＰＤＬデータから読み出す点で異なる。また、図形データは、図形描画処理部ではなくＰＤＬ言語出力部に送られる。ＰＤＬ言語出力部１０３は、入力されたＰＤＬデータである図形データをプリンタ装置８に出力する。ＣＰＵ１０４は、各種演算処理を行う。プリンタ装置８は、ホスト装置７からＰＤＬデータの入力を受けて、ＰＤＬデータに従い印刷処理を行う。
【００３８】
これまで、プリンタ装置及びホスト装置のいずれかを印刷処理装置とした印刷処理システムについて説明したが、プリンタ装置及びホスト装置の両方を印刷処理装置としてもよい。この第３の印刷処理システムの簡単な構成を示すブロック図を図８に示す。この印刷処理システム１２において、プリンタ装置３はプリンタ・コントローラ４とプリンタ・エンジン５とを備え、ホスト装置７はアプリケーション動作部９とプリンタ・ドライバ１０とを備える。プリンタ・コントローラ４及びプリンタ・ドライバ１０の能力、負荷状態、転送経路の転送能力等の状況に応じ、図形重なり処理部の処理の一部をホスト装置７で行い、残りの一部をプリンタ装置３で行うように振り分ける機能を備えてもよい。ただし、図形重なり処理部が行う処理の順序は変わらない。なお、本発明は、画像圧縮システム、画像転送システムにも応用可能である。
【図面の簡単な説明】
【００３９】
【図１】第１の印刷処理装置の構成を示すブロック図である。
【図２】重なり判定部の動作を示すフロー図である。
【図３】分割部の動作を示すフロー図である。
【図４】削除部の動作を示すフロー図である。
【図５】図形重なり処理部による処理経過の例を示す図である。
【図６】図形重なり処理部による処理経過の他の例を示す図である。
【図７】第２の印刷処理装置の構成を示すブロック図である。
【図８】第３の印刷処理装置の構成を示すブロック図である。
【符号の説明】
【００４０】
１；印刷処理システム、２；ホスト装置、３；プリンタ装置、
４；プリンタ・コントローラ、５；プリンタ・エンジン、
６；印刷処理システム、７；ホスト装置、８；プリンタ装置、
９；アプリケーション動作部、１０；プリンタ・ドライバ、
１２；印刷処理システム、４１；インタプリター、４２；中間データメモリ、
４３；図形重なり処理部、４４；図形描画処理部、４５；ページメモリ、
４６；エンジンＩ／Ｆ、４７；ＣＰＵ、４８；直前図形データメモリ、
４９；重なり判定部、５０；分割部、５１；削除部、
１０１；ＰＤＬ言語生成部、１０２；図形重なり処理部、
１０３；ＰＤＬ言語出力部、１０４；ＣＰＵ、１０５；直前図形データメモリ、
１０６；重なり判定部、１０７；分割部、１０８；削除部、
２０１；直前図形、２０２；現図形、２０３；平行線、２０４；垂直線、
２０５；直前図形、２０６；直前図形、２０７；現図形、
２０８；平行線、２０９；垂直線、２１０；直前図形
【図１】
2005119219.tif 000003
【図２】
2005119219.tif 000004
【図３】
2005119219.tif 000005
【図４】
2005119219.tif 000006
【図５】
2005119219.tif 000007
【図６】
2005119219.tif 000008
【図７】
2005119219.tif 000009
【図８】
2005119219.tif 000010