(57)【要約】【課題】  透明度に関する処理を含む描画処理が可能であり、その上でリソースおよび処理時間の削減を可能にした描画処理装置および描画処理方法を提供する。【解決手段】  透明度描画部３は、透明処理が可能な高機能の描画処理を行うことができるが、処理速度は低速である。また、上書き描画部４は、上書きによる描画処理しか行うことができないが、処理は高速である。解析部１は印刷命令に従ってバンド毎の描画命令を生成する。切替部２は、描画属性などから透明処理が必要であれば透明度描画部３を選択し、透明度描画部３において描画命令に従って透明処理を含む描画処理を行う。また、透明処理が必要なくなれば、上書き描画部４を選択して、上書き描画部４において描画命令に従って上書きによる描画処理を行う。途中で上書き描画部４に切り替えることにより、描画処理全体の処理時間を短縮することができる。【選択図】  図１
2006065814.tif 000002
【特許請求の範囲】
【請求項１】
描画命令に従って描画処理を行う描画処理装置において、描画処理に時間のかかる多機能の描画方法を実行する第１の描画手段と、前記第１の描画手段より時間がかからない少機能の描画方法を実行する第２の描画手段と、前記第１の描画手段と前記第２の描画手段のいずれかを選択する選択手段を有し、前記選択手段は、前記描画命令を解析し、ある描画命令以降の描画処理では少機能の描画方法で実行可能である場合に該描画命令の位置で前記第２の描画手段を選択し、前記第２の描画手段で該描画命令以降の描画処理を行うことを特徴とする描画処理装置。
【請求項２】
さらに、印刷命令を解析して前記描画命令を生成する解析手段を有し、前記解析手段は、生成した描画命令についての描画処理を行う際に前記第１の描画手段が必要か否かを判断して前記第１の描画手段と前記第２の描画手段を切替可能な位置に切替情報を挿入するとともに前記第１の描画手段から前記第２の描画手段への切替が可能な位置への切替情報の挿入回数をカウントし、前記選択手段は、前記描画命令中の前記第１の描画手段から前記第２の描画手段への切替を示す切替情報を計数して前記解析手段のカウント値と一致したときに前記第１の描画手段から前記第２の描画手段への切替を行うことを特徴とする請求項１に記載の描画処理装置。
【請求項３】
描画命令に従って描画処理を行う描画処理装置において、描画処理に時間のかかる多機能の描画方法を実行する第１の描画手段と、前記第１の描画手段より時間がかからない少機能の描画方法を実行する第２の描画手段と、前記第１の描画手段と前記第２の描画手段のいずれかを選択する選択手段を有し、前記選択手段は、前記描画命令を解析し、描画属性の設定毎に、設定される描画属性の描画処理を前記第２の描画手段で行えるか否かを判定し、前記第２の描画手段で描画処理可能であれば前記第２の描画手段を選択することを特徴とする描画処理装置。
【請求項４】
前記第１の描画手段は透明処理を含む描画方法を実行するものであり、前記第２の描画手段は上書き処理による描画方法を実行するものであることを特徴とする請求項１ないし請求項３のいずれか１項に記載の描画処理装置。
【請求項５】
前記選択手段は、透明処理が必要か否かにより前記第１の描画手段または前記第２の描画手段を選択することを特徴とする請求項４に記載の描画処理装置。
【請求項６】
前記選択手段は、背景色を参照する色演算処理の有無により前記第１の描画手段または前記第２の描画手段を選択することを特徴とする請求項４に記載の描画処理装置。
【請求項７】
前記選択手段は、複数の描画命令を一つの描画オブジェクトとして処理するグループ処理の有無により前記第１の描画手段または前記第２の描画手段を選択することを特徴とする請求項４に記載の描画処理装置。
【請求項８】
前記選択手段は、前記第１の描画手段と前記第２の描画手段の切替を行う際に、それまでの描画結果の変換処理を行うことを特徴とする請求項１ないし請求項７のいずれか１項に記載の描画処理装置。
【請求項９】
描画命令に従って、描画処理に時間のかかる多機能の描画方法を実行する第１の描画手段、または、前記第１の描画手段より時間がかからない少機能の描画方法を実行する第２の描画手段で描画処理を行う描画方法であって、前記描画命令を解析し、ある描画命令以降の描画処理では少機能の描画方法で実行可能である場合に該描画命令の位置で前記第２の描画手段を選択し、前記第２の描画手段で該描画命令以降の描画処理を行うことを特徴とする描画処理方法。
【請求項１０】
印刷命令を解析手段で解析して前記描画命令を生成し、該描画命令の生成の際に、生成した描画命令についての描画処理を行う際に前記第１の描画手段が必要か否かを判断して前記第１の描画手段と前記第２の描画手段を切替可能な位置に切替情報を挿入するとともに、前記第１の描画手段から前記第２の描画手段への切替が可能な位置への切替情報の挿入回数をカウントしておき、前記描画命令を解析して描画処理を行う際に、前記描画命令中の前記第１の描画手段から前記第２の描画手段への切替を示す切替情報を計数して前記カウント値と一致したときに前記第１の描画手段による描画処理から前記第２の描画手段による描画処理への切替を行うことを特徴とする請求項９に記載の描画処理方法。
【請求項１１】
描画命令に従って、描画処理に時間のかかる多機能の描画方法を実行する第１の描画手段、または、前記第１の描画手段より時間がかからない少機能の描画方法を実行する第２の描画手段で描画処理を行う描画処理方法であって、前記描画命令を解析し、描画属性の設定毎に、設定される描画属性の描画処理を前記第２の描画手段で行えるか否かを判定し、前記第２の描画手段で描画処理可能であれば前記第２の描画手段を選択することを特徴とする描画処理方法。
【請求項１２】
前記第１の描画手段による描画処理は、透明処理を含む描画方法を実行するものであり、前記第２の描画手段による描画処理は上書き処理による描画方法を実行するものであることを特徴とする請求項９ないし請求項１１のいずれか１項に記載の描画処理方法。
【請求項１３】
前記描画命令が透明処理を必要とするか否かにより前記第１の描画手段による描画処理または前記第２の描画手段による描画処理を選択することを特徴とする請求項１２に記載の描画処理方法。
【請求項１４】
前記描画命令が背景色を参照する色演算処理を含むか否かにより前記第１の描画手段による描画処理または前記第２の描画手段による描画処理を選択することを特徴とする請求項１２に記載の描画処理方法。
【請求項１５】
前記描画命令が複数の描画命令を一つの描画オブジェクトとして処理するグループ処理を指示しているか否かにより前記第１の描画手段による描画処理または前記第２の描画手段による描画処理を選択することを特徴とする請求項１２に記載の描画処理方法。
【請求項１６】
前記第１の描画手段による描画処理と前記第２の描画手段による描画処理の切替を行う際に、それまでの描画結果の変換処理を行うことを特徴とする請求項９ないし請求項１５のいずれか１項に記載の描画処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、描画命令に従って描画処理を行う際の技術に関するものである。
【背景技術】
【０００２】
これまでの描画処理では、描画命令に従って図形などを上書きしてゆく描画方法（ＲＩＰ：ラスターイメージプロセッサ）が一般的であった。近年では、上書きだけでなく、透明度や色の演算処理を含む描画方法が実行可能な描画処理装置も開発されている。一例としては、透明度が指定された描画結果と、透過される下地の描画結果を記憶する複数の描画バッファを保持することが可能なシステムや、ラスター情報を使用しながらも混合処理を進めるような描画方法がある。
【０００３】
これらの透明度の処理を含む描画方法は、これまでの上書き描画のみを行う単純なラスタベースのＲＩＰと比較して、使用するメモリ等のリソースを多く必要とし、処理も複雑なため処理時間が長いという問題があった。
【０００４】
また、透明度の処理を含む描画方法は、従来より行われている上書き描画の処理も含むため、描画命令中に透明度の処理を含んでいるか否かに関係なく、透明度の処理を含む描画方法が利用される場合が多い。しかし、一般の文書ではほとんど透明度の処理を必要としないし、透明機能を活用した文書であっても、ページ処理の全てにおいて透明処理が必要ではないものも多い。このように透明度の処理を必要としない場合や、ごく一部のみ透明度の処理が必要な場合でも、多大なメモリ等のリソースが必要であり、処理にも多大な時間がかかってしまっていた。
【０００５】
本発明の透明機能とは異なるが、例えば特許文献１には、印刷要求に伴う印刷情報からＲＯＰ（Ｒａｓｔｅｒ  ＯＰｅｒａｔｉｏｎ）等のようなＲＧＢ色空間での処理が必要な画像領域とそれ以外のＹＭＣＫ色空間で処理を行うことができる画像領域に分離し、バンド毎に描画処理方式を切り替えることが記載されている。ＹＭＣＫ色空間で描画処理を行っている場合、ＲＧＢ色空間での処理は、色空間変換を伴う多大なリソースと処理時間を必要とする。そのため、特許文献１に記載されているように、領域に分離して、ＹＭＣＫ色空間での描画処理が可能な画像領域（バンド）に関してはＹＭＣＫ色空間での描画処理を行うことによって、必要とするリソースの低減と高速化を実現している。
【０００６】
しかし、この特許文献１に記載されている技術では、一度、ＲＧＢ色空間での描画処理を開始したバンド（画像領域）に関しては、最後までＲＧＢ色空間での描画処理を継続して行っている。そのため、最初にＲＧＢ色空間での描画処理が発生してしまうと、それ以降の処理ではＹＭＣＫ色空間での描画処理で対応可能であっても、多大なリソースおよび処理時間を必要としていた。
【０００７】
【特許文献１】特開２００３−２９１４１８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明は、上述した事情に鑑みてなされたもので、透明度に関する処理等を含む描画処理が可能であり、その上でリソースおよび処理時間の削減を可能にした描画処理装置および描画処理方法を提供することを目的とするものである。
【課題を解決するための手段】
【０００９】
本発明は、例えば透明処理を含む描画処理のような描画処理に時間のかかる多機能の描画方法を実行する第１の描画手段と、例えば透明処理を含まない上書き描画処理のような第１の描画手段より時間がかからない少機能の描画方法を実行する第２の描画手段を有しており、描画命令に従っていずれかの描画手段で描画処理を行う描画処理装置および描画処理方法において、描画命令を解析して、ある描画命令以降の描画処理では少機能の描画方法で実行可能である場合には、その描画命令の位置で第２の描画手段を選択して、その描画命令以降の描画命令を第２の描画手段で行うことを特徴とするものである。
【００１０】
また本発明は、同様の第１の描画手段および第２の描画手段を有しており、描画命令に従っていずれかの描画手段で描画処理を行う描画処理装置および描画処理方法において、描画命令を解析して、描画属性の設定毎に、設定される描画属性の描画処理を第２の描画手段で行えるか否かを判定し、第２の描画手段で描画処理可能であれば第２の描画手段を選択することを特徴とするものである。
【００１１】
第１の描画手段による描画処理または第２の描画手段による描画処理の選択は、例えば、描画命令が透明処理を必要とするか否かや、描画命令が背景色を参照する色演算処理を含むか否か、あるいは描画命令が複数の描画命令を一つの描画オブジェクトとして処理するグループ処理を指示しているか否か、等を判断して行うことができる。なお、第１の描画手段による描画処理と第２の描画手段による描画処理の切り替えを行う際には、それまでの描画結果に対して変換処理が必要な場合もあり、切り替えの際に変換処理を適宜行うことができる。
【発明の効果】
【００１２】
本発明によれば、描画処理の途中で、高速に実行可能な第２の描画手段が利用可能な描画属性の描画命令により描画処理を行う場合や、その描画命令以降は第２の描画手段が利用可能である場合には、第２の描画手段による高速な描画処理に切り替えるので、描画処理全体に要する処理時間を短くすることが可能になるという効果がある。また、例えば従来技術のような領域毎に描画処理を行う場合でも、それぞれの描画領域の描画処理において、途中で描画手段を切り替えることによって、描画処理の高速化が可能である。さらに、高機能の第１の描画手段に対して低機能の第２の描画手段は、一般的に、必要とするリソースも少なくて済むため、上述のような描画処理の切り替えによって、必要となるリソースも低減することが可能である。
【発明を実施するための最良の形態】
【００１３】
図１は、本発明の実施の一形態を示すブロック図である。図中、１は解析部、２は切替部、３は透明度描画部、４は上書き描画部である。ここでは、１ページの画像を帯状のバンド領域毎に描画処理を行うものとして説明する。解析部１は、与えられた印刷命令を解析し、バンド領域毎の描画命令を生成する。
【００１４】
切替部２は、解析部１において生成した描画命令に従った描画処理を、透明度描画部３に行わせるか、あるいは上書き描画部４に行わせるかを切り替える。なお、透明度描画部３と上書き描画部４とで描画形式が異なる場合には、透明度描画部３と上書き描画部４との切替を行う際に、それまでの描画結果について変換処理を行う。
【００１５】
透明度描画部３は、透明処理を行うことが可能で、かつ既存の透明処理を行わなくても良い印刷命令も描画可能である。このように高機能ではあるが、透明処理に対応するためメモリ使用量が多く、また処理時間も長く必要である。透明処理を含む描画方法としては任意の方法を適用することができ、例えば特願平２００３−４２００７２号に記載されているようにスキャンラインの集合に分解して重なりを判定し、部分的に透明処理を施す方法などを採用することができる。
【００１６】
上書き描画部４は、上書きによる描画処理しか行うことができない。しかし、低機能ではあるが高速な処理が可能である。また、上書き処理を行うために必要なメモリ量は、バンド領域の大きさの画像が書き込めればよく、固定サイズである。この上書き描画部４としては、従来から用いられているラスタ形式の描画方法を適用することができる。
【００１７】
図２は、本発明の実施の一形態における第１の動作例を示すフローチャートである。解析部１では、受け取った印刷命令に従って、バンド毎の描画命令を生成する。切替部２は、Ｓ１１において、解析部１で生成した描画命令を取得し、Ｓ１２において、描画属性の一つである透明度の設定を行う描画命令であるか否かを判定する。透明度の設定を行う描画命令であれば、その描画命令に従って描画属性を設定し、さらにＳ１３において、新たな透明度の設定によって、透明処理が必要な設定から透明処理が不要な上書きで処理できる設定に変更されるか、あるいは上書きで処理できる設定から透明処理が必要な設定に変更されるか、または、透明処理と上書き処理の変更は不要かを判定する。
【００１８】
透明処理が必要な設定から透明処理が不要な上書きで処理できる設定に変更される場合には、Ｓ１４において、それまでに透明度描画部３で描画した結果を、上書き描画部４で描画処理を行う際のフォーマットに変換する。また、上書きで処理できる設定から透明処理が必要な設定に変更される場合には、Ｓ１５において、それまでに上書き描画部４で描画した結果を、透明度描画部３で描画処理を行う際のフォーマットに変換する。なお、透明処理と上書き処理の変更が不要であれば、フォーマットの変換は行わない。
【００１９】
Ｓ１２で描画命令が透明度の設定以外である場合には、Ｓ１６において、当該描画命令を処理するための描画属性が透明度の処理を必要としているか否かを判断する。もし、描画属性として不透明以外の透明度が設定されている場合には、透明処理が必要であるものと判断する。そして、Ｓ１７において、当該描画命令を透明度描画部３に渡して、透明度描画部３において透明度の処理を含む描画処理を行う。
【００２０】
また、描画属性として不透明の透明度が設定されている場合には、透明処理を用いなくても、上書き処理によって描画処理を行うことができる。従って、Ｓ１８において、当該描画命令を上書き描画部４に渡して、上書き描画部４において上書き描画処理を行う。上書き描画部４は少ないメモリ量により高速に描画処理を行うことができるので、１つのバンド内の画像を描画する描画命令のうち、この上書き描画部４で描画処理を行う描画命令の分だけ、すべてを透明度描画部３で描画処理するよりも全体の処理時間を短縮することができる。
【００２１】
Ｓ１９において、１バンド分の描画命令についてすべて処理を行ったか否かを判定し、描画命令が残っていればＳ１１へ戻って次の描画命令の処理を行う。すべての描画命令の処理を終えたら、当該バンドについての描画処理を終える。もちろん、このような処理を各バンド毎、さらには各ページ毎に行うことになる。
【００２２】
図３は、本発明の実施の一形態の第１の動作例における描画命令と描画処理の関係の具体例の説明図である。解析部１において、印刷命令から図３に示すような描画命令を生成したものとする。処理の開始時点では、透明度の設定が行われておらず、上書きの描画処理が可能であるものとしている。なお、透明度をα（０≦α≦１）とし、αが１のときに不透明であるものとする。なお、このような描画命令は、図示しない記憶手段に一旦記憶しておく。
【００２３】
図中のＡとして示した描画命令において、透明度αを０．５に設定する場合、この描画命令以降においては透明処理を行う必要がある。従って、この透明度を設定する描画命令Ａの位置において、上書き描画部４による描画処理から透明度描画部３による描画処理に切り替える。その際に、それまでに上書き描画部４で描画した内容を、透明度描画部３において使用できるようにフォーマットの変換を行う。そして、描画命令Ａ以降の描画命令に従って、透明度描画部３が描画処理を行ってゆく。
【００２４】
透明度描画部３による描画処理を行ってゆくと、図中のＢとして示した描画命令において、透明度αを１．０に設定している。透明度αが１．０の場合は不透明であることを示しており、透明処理を行わずに上書きによる描画処理によって実行することが可能である。従って、この透明度を設定する描画命令Ｂの位置において、透明度描画部３による描画処理から上書き描画部４による描画処理に切り替える。その際に、それまでに透明度描画部３で描画した内容を、上書き描画部４において使用できるようにフォーマットの変換を行う。そして、描画命令Ｂ以降の描画命令に従って、上書き描画部４が描画処理を行ってゆく。
【００２５】
さらに上書き描画部４による描画処理を行ってゆくと、図中のＣとして示した描画命令において、透明度αを０．７に設定している。この描画命令以降においては透明処理を行う必要がある。従って、この透明度を設定する描画命令Ｃの位置において、上書き描画部４による描画処理から透明度描画部３による描画処理に切り替える。その際に、それまでに上書き描画部４で描画した内容を、透明度描画部３において使用できるようにフォーマットの変換を行う。そして、描画命令Ｃ以降の描画命令に従って、透明度描画部３が描画処理を行ってゆく。
【００２６】
さらに透明度描画部３による描画処理を行ってゆくと、図中のＤとして示した描画命令において、透明度αを０．６に設定している。この場合、この描画命令以降においては透明処理を行う必要があるが、既に透明度描画部３による描画処理を行っているので、切替は発生しない。
【００２７】
さらに透明度描画部３による描画処理を行ってゆくと、図中のＥとして示した描画命令において透明度αを１．０に設定しているので、この透明度を設定する描画命令Ｅの位置において、透明度描画部３による描画処理から上書き描画部４による描画処理に切り替える。その際に、それまでに透明度描画部３で描画した内容を、上書き描画部４において使用できるようにフォーマットの変換を行う。そして、以降の描画命令に従って、上書き描画部４が描画処理を行ってゆく。
【００２８】
このようにして、順次、描画処理を行ってゆく過程において、適宜、処理速度の速い上書き描画部４を利用するので、高速に描画処理を行うことができる。描画された画像は、例えば図示しない画像出力装置などに送られ、画像が出力されることになる。
【００２９】
なお、上述の例では上書き描画部４で描画処理を行っているときに透明度αを１．０に設定する描画命令が存在した場合については示していないが、このような場合には上書き描画部４による描画処理を続行することになる。
【００３０】
上述の第１の動作例においては、透明度αが１．０とそれ以外の値との間で変更されるたびに、透明度描画部３と上書き描画部４とを切り替え、それに伴って描画済の画像をフォーマット変換している。しかし、例えば上書き描画部４では透明度などの情報が不要である。そのため、上書き描画部４の描画方法によっては、上書き描画部４に対応したフォーマットの画像に変換した時点で、透明度描画部３で必要となる情報が欠落してしまう可能性がある。このような場合、透明度描画部３から上書き描画部４への切り替えは可能であるが、逆の切り替えは適さない場合がある。このような場合には、透明度描画部３から上書き描画部４へ切り替え可能な位置のうち、最後の切り替え位置で一度のみ行うように制御するとよい。以下、第２の動作例として、このような一度のみの切り替えを行う例を示す。
【００３１】
図４は、本発明の実施の一形態における第２の動作例を示すフローチャートである。解析部１では、受け取った印刷命令に従って、バンド毎の描画命令を生成する。このとき、生成した描画命令についての描画処理を行うには透明度描画部３が必要か否かを判断して、透明度描画部３と上書き描画部４の切り替えが可能な位置に切替情報を挿入する。例えば、透明度αを１．０から他の値へ、あるいは１．０以外の値から１．０へ透明度を設定する描画命令の直前または直後に、切替情報を挿入する。それとともに、透明度描画部３による描画処理から上書き描画部４による描画処理への切り替えが可能な位置への切替情報の挿入回数を順次カウントし、ＩＤとして切替情報に含めておく。また、最終的なカウント値を切替カウント値として描画命令とともに出力する。この切替カウント値を用いることによって、後述するように、透明処理が必要な描画命令が含まれているか否かや、どこから透明処理が不要になるかを、描画命令に従って順に描画処理を行ってゆく過程で検出することができる。解析部１が生成した描画命令及び切替カウント値などは、図示しない記憶手段に記憶される。例えば１ページ分の印刷命令についてそれぞれのバンド毎の描画命令を生成し終えると、切替部２以降の描画処理が開始される。なお、描画処理の最初と最後は、上書き描画部４による描画処理が選択されるものとしている。
【００３２】
切替部２は、Ｓ２１において、透明処理が必要な描画命令が存在しているか否かを判定する。この判定は、切替カウント値が０か否かを判定すればよい。透明処理が必要な描画命令が含まれていれば、上書き描画部４による描画処理から透明度描画部３による描画処理への切替位置を示す切替情報と、再び上書き描画部に戻すため、透明度描画部３による描画処理から上書き描画部４による描画処理への切替位置を示す切替情報が必ず含まれることになる。そのため、切替カウント値は１以上となっている。従って、切替カウント値が０であれば、すべての描画命令が上書きのみで描画可能である。
【００３３】
Ｓ２１で透明処理が必要な描画命令が存在していないと判定された場合には、当該バンドのすべての描画命令について上書き描画部４により描画処理を行う。すなわち、Ｓ２８において、当該バンドについての描画命令についてすべて描画処理を行ったか否かを判定し、未処理の描画命令が存在すれば、Ｓ２９によって、その描画命令について上書き描画部４により描画処理を行って、Ｓ２８に戻る。当該バンドの最後の描画命令まで描画処理を行ったら、この処理を終える。
【００３４】
Ｓ２１で透明処理が必要な描画命令が存在していると判定された場合には、透明処理が必要な描画命令がなくなるまで透明度描画部３によって描画処理を行い、それ以後を上書き描画部４により描画処理を行う。そのための処理として、まずＳ２２において、描画命令を一つ取り出し、切替情報であるか否かを判定する。切替情報でなければ、Ｓ２３において、バンドの最後まで描画命令に従って描画処理を行ったか否かを判定し、未処理の描画命令が残っている場合には、Ｓ２４において、当該描画命令について透明度描画部３で描画処理を行う。そして、次の描画命令についての処理を行うべく、Ｓ２２へ戻る。
【００３５】
Ｓ２３で最後の描画命令まで描画処理が終了したことを検出した場合には、そのまま、この描画処理を終了する。この場合は、透明処理が最後まで利用されていたため、上書き描画部４に切り替えることができなかった場合であり、従来と同様に透明度描画部３によって当該バンドのすべての描画命令についての描画処理を行うことになる。なお、解析部１で印刷命令から生成すべき描画命令の最後まで、透明処理が必要であった場合には、最後に上書き描画部４による描画処理に戻すための切替情報が挿入されることになるが、この切替情報による切替処理は不要であることは明らかであり、Ｓ２３における判定により処理を終えるように構成することによって、処理速度の向上を図ることができる。もちろん、描画処理の最後で透明処理を許す場合には、このＳ２３における判定は必要である。
【００３６】
Ｓ２２で切替情報を検出した場合には、Ｓ２５において、透明度描画部３による描画処理から上書き描画部４による描画処理への最後の切替可能な位置であるか否かを判定する。この判定には、切替情報中のＩＤと切替カウント値とを比較すればよい。切替情報中のＩＤと切替カウント値とが等しくない場合には、さらに後続の描画命令において透明処理を必要としている。そのため、ここでは上書き描画部４への切替を行わずに、Ｓ２３，Ｓ２４に進んで透明度描画部３における描画処理を行う。
【００３７】
Ｓ２５において透明度描画部３による描画処理から上書き描画部４による描画処理への最後の切替可能な位置を検出したら、すなわち切替情報中のＩＤと切替カウント値が一致したら、Ｓ２６において、それまで透明度描画部３で描画した画像を、上書き描画部４によって使用可能な画像に変換する。そしてＳ２７において、透明度描画部３による描画処理から上書き描画部４による描画処理へ切り替える。以後、Ｓ２８，Ｓ２９によって、残りの描画命令について上書き描画部４により描画処理を行う。Ｓ２８で当該バンドの最後まで描画命令に従った描画処理を終えたことを検出したら、この処理を終了する。以後、描画した１バンド分の画像を、順次、あるいは１ページ分の描画処理が終了した時点で、例えば図示しない画像出力装置などに渡し、画像を出力する。
【００３８】
このように上書きの描画処理で済む部分について上書き描画部４により描画処理を行うことによって、高速に描画することが可能になる。また、透明処理を続けてゆくと必要とするメモリ量が増大するが、透明度描画部３で描画した結果を上書き描画部４により描画処理可能なフォーマットに変換して描画処理を続けることによって、メモリ量の増大を抑えることができる。
【００３９】
上述の第２の動作例では解析部１において切替情報及び切替カウント値を生成し、切替部２ではこれらの情報を用いて切替を行う例を示した。しかしこれに限らず、例えば描画命令が生成された後に、１バンド分の描画命令をスキャンして、透明処理の必要性や切替位置などの情報を取得するなど、他の方法を用いても良いことは明らかである。
【００４０】
図５は、本発明の実施の一形態の第２の動作例における描画命令と描画処理の関係の具体例の説明図である。ここでは上述の第１の動作例において説明した図３に示した具体例と同様の場合について、第２の動作例に従って説明する。解析部１において、印刷命令から描画命令を生成するが、この第２の動作例では、ＩＤを含む切替情報の挿入と、切替カウント値を生成する。
【００４１】
図５に示した例では、描画命令Ａ、Ｂ、Ｃ、Ｅの透明度の設定の直後に切替情報を挿入している。まず描画命令Ａにおいて透明度αを０．５としており、上書き処理から透明処理への切替が必要になる。従って、上書き描画部４から透明度描画部３への切替が可能な位置であることを示す切替情報を挿入する。このときのＩＤは０である。切替情報を挿入した後に切替カウント値に１を加え、切替カウント値は１となる。
【００４２】
つぎに描画命令Ｂにおいては、透明度αを１．０としており、以降の描画処理は上書き処理でよい。そのため、透明度描画部３から上書き描画部４への切替が可能な位置であることを示す切替情報を挿入する。このときのＩＤとして、切替カウント値をそのまま使用し、１となる。なお、この時点では切替カウント値は１のままとする。
【００４３】
描画命令Ｃでは、透明度αを０．７としており、上書き処理から透明処理への切替が必要になる。従って、上書き描画部４から透明度描画部３への切替が可能な位置であることを示す切替情報を挿入する。このときのＩＤは１である。なお、切替情報を挿入した後に切替カウント値に１を加え、切替カウント値は２となる。
【００４４】
次の描画命令Ｄにおいては透明度αを０．６に設定しており、透明処理が必要であるが、直前まで透明処理が必要であることから描画処理の切替は発生しない。従って、切替情報も挿入されない。
【００４５】
描画命令Ｅにおいては、透明度αを１．０としており、以降の描画処理は上書き処理でよい。そのため、透明度描画部３から上書き描画部４への切替が可能な位置であることを示す切替情報を挿入する。このときのＩＤは、切替カウント値をそのまま使用するので２となる。
【００４６】
以降は透明度の設定が無く、図５に示すような描画命令の列が解析部１で生成されることになる。また、切替カウント値は２が出力される。
【００４７】
このような描画命令の列が解析部１で生成されると、切替部２は、切替カウント値が０ではなく、透明処理が必要な描画命令が含まれていることから、透明度描画部３による描画処理を選択して透明処理を行う。描画命令Ａ〜Ｃに続く切替情報では、ＩＤが切替カウント値とは異なるため、透明度描画部３による描画処理が継続される。描画命令Ｅに続く切替情報では、ＩＤが２であり、切替カウント値と等しくなる。従って、この位置で透明度描画部３による描画処理から上書き描画部４による描画処理に切り替え、これまで透明度描画部３によって描画された画像を上書き描画部４により描画処理可能なフォーマットに変換した後、上書きによる描画処理を行う。
【００４８】
このようにして、透明度描画部３から上書き描画部４への切替のみが可能である場合には、最後の透明度描画部３から上書き描画部４への切替可能な位置において切替を行うことによって、すべてを透明度描画部３で描画処理を行う場合に比べて、描画処理全体の処理時間を短縮することができる。例えば背景の一部だけに透明処理が使用され、その後の描画命令は単純な上書きによる描画ばかりといった場合には、従来より高速に描画処理を行うことができる。
【００４９】
なお、図５に示した例では、透明度を設定する描画命令の直後に切替情報を挿入した例を示しているが、もちろん、直前に挿入しても良い。
【００５０】
上述の説明では、主に透明度の設定を行う描画命令を参照して切替の要否あるいは可能性を判定しているが、これに限らず、例えば色演算モード（ブレンドモード）の設定など、他の描画属性の設定についても考慮して、描画処理の切替を判定しても良い。
【００５１】
また、上述のように描画処理を切り替える際にフォーマット変換などが必要な場合がある。このフォーマット変換に処理時間を要するため、このような切替に要するオーバヘッドを考慮した上で、切り替えるか否かを判断するように構成することができる。例えば残りの描画命令が上書きによる描画処理が可能である場合に、それらの描画命令を透明度描画部３で描画処理を行った場合に必要な処理時間よりも、フォーマット変換を行ってから上書き描画部４により描画処理を行った場合の処理時間の方が長くかかる場合には、透明度描画部３による描画処理を継続するように構成すると良い。
【００５２】
さらに、上述の説明ではバンド毎に描画命令を生成するものとして説明しているが、もちろん、１ページ単位で描画命令を生成しても良い。
【００５３】
また、上述の説明では、透明度描画部３と上書き描画部４の２つのうちのいずれかを用いる例を示したが、例えば、処理速度や必要とするリソース量に差がある描画方法を実行する３以上の描画部を設け、それぞれ切り替えて用いるように構成することも可能である。
【図面の簡単な説明】
【００５４】
【図１】本発明の実施の一形態を示すブロック図である。
【図２】本発明の実施の一形態における第１の動作例を示すフローチャートである。
【図３】本発明の実施の一形態の第１の動作例における描画命令と描画処理の関係の具体例の説明図である。
【図４】本発明の実施の一形態における第２の動作例を示すフローチャートである。
【図５】本発明の実施の一形態の第２の動作例における描画命令と描画処理の関係の具体例の説明図である。
【符号の説明】
【００５５】
１…解析部、２…切替部、３…透明度描画部、４…上書き描画部。
【図１】
2006065814.tif 000003
【図２】
2006065814.tif 000004
【図３】
2006065814.tif 000005
【図４】
2006065814.tif 000006
【図５】
2006065814.tif 000007