(57)【特許請求の範囲】
【請求項１】
印刷要求に伴う印刷情報から、デスティネーションの参照が必要な領域を調べて矩形領域として登録する登録手段と、
前記矩形領域に重なるオブジェクトをRGBレンダラでRGBデータに描画後、CMYK画像データに変換する第一の画像領域として検出し、前記矩形領域と重ならないオブジェクトをCMYKレンダラで描画する第二の画像領域として検出し、前記第一の画像領域の印刷情報と、前記第二の画像領域の印刷情報を分離する検出分離手段とを有することを特徴とする画像処理装置。
【請求項２】
前記登録手段は、前記印刷情報に論理描画処理(ROP)またはアルファブレンド処理が含まれる領域を前記デスティネーションの参照が必要な領域と判定することを特徴とする請求項1に記載された画像処理装置。
【請求項３】
前記RGBレンダラはホストコンピュータのプリンタドライバであり、前記CMYKレンダラは印刷装置のコントローラであることを特徴とする請求項1または請求項2に記載された画像処理装置。
【請求項４】
印刷要求に伴う印刷情報から、デスティネーションの参照が必要な領域を調べて矩形領域として登録し、
前記矩形領域に重なるオブジェクトをRGBレンダラでRGBデータに描画後、CMYK画像データに変換する第一の画像領域として検出し、
前記矩形領域と重ならないオブジェクトをCMYKレンダラで描画する第二の画像領域として検出し、
前記第一の画像領域の印刷情報と、前記第二の画像領域の印刷情報を分離することを特徴とする画像処理方法。
【請求項５】
前記デスティネーションの参照が必要な領域は、前記印刷情報に論理描画処理(ROP)またはアルファブレンド処理が含まれる領域であることを特徴とする請求項4に記載された画像処理方法。
【請求項６】
前記RGBレンダラはホストコンピュータのプリンタドライバであり、前記CMYKレンダラは印刷装置のコントローラであることを特徴とする請求項4または請求項5に記載された画像処理方法。
【請求項７】
情報処理装置を制御して、請求項4から請求項6の何れか一項に記載された画像処理を実行するコンピュータプログラムが記録されたことを特徴とするコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、印刷要求に伴う印刷情報に基づき描画処理を行う画像処理に関する。
【０００２】
【従来の技術】
印刷システムは、セントロニクスインタフェイスなどのパラレルデータ通信手段やネットワーク通信手段を介して、ホストコンピュータと印刷装置とが接続されることにより構成される。この印刷システムにおける印刷制御方法および処理の流れについて説明する。
【０００３】
ホストコンピュータにおいては、ワードプロセッサや表計算のようなアプリケーションプログラムが、Windows（米国Microsoft社の登録商標）のような基本ソフト上で動作している。このアプリケーションプログラムにより印刷が行われる場合、基本ソフトが提供する幾つかのサブシステムのうちのグラフィックサブシステムの機能が、そのアプリケーションプログラムからコールされる。このグラフィックサブシステムは、例えばWindows(R)ではGDI(Graphic Device Interface)と呼ばれ、ディスプレイやプリンタに対する画像情報の処理を司る。
【０００４】
GDIは、ディスプレイやプリンタといった各デバイスに依存する機能や特性の違いを吸収するために、デバイスドライバと呼ばれるモジュールを動的にリンクして、各デバイスに対する出力処理を行う。プリンタドライバと呼ばれるプリンタ用のモジュールには、プリンタの能力や機能などに応じて予めデバイスドライバに実装することが決められているDDI(Device Driver Interface)と呼ばれる関数群が用意されている。アプリケーションプログラムによるAPI(Application Programing Interface)コールを、GDIがデバイスドライバ用のデータに変換することで、DDI関数群が適宜GDIからコールされ、所定の印刷処理が実行される仕組みになっている。このように、アプリケーションプログラムからの印刷要求は、GDIによりプリンタドライバを介してシーケンシャルに処理される。
【０００５】
例えば、図1に示される赤色のハッチングパターンで塗り潰された楕円D1と、同じくソリッドな黄色の矩形D3と、緑色のハッチングパターンで塗り潰された矩形D3と、青色で格子パターンで塗りつぶされた矩形D4といった四つの描画オブジェクトを処理する場合、プリンタドライバは、一般に、システムから渡されるデータの順、例えばD1、D2、D3およびD4の順に処理を行う。この際、システムから渡される描画オブジェクトの描画情報としてWindows(R)のGDIに特有のROP(Raster OPeration)が存在する。
【０００６】
【発明が解決しようとする課題】
画像間の論理演算を行う描画処理であるROPは、描画オブジェクトの論理描画を指定するためのものであり、その対象とするオブジェクトの数に応じて、ROP2、ROP3およびROP4が存在する。例えば、ROP3は、描画オブジェクトの形状Srcと、その塗り潰しパターンPatと、描画先Dst（Destinationの略）とのそれぞれの間の論理的な演算を指定する。具体的には、SrcとPatの間でORをとる場合はPSoと表現され、それを示すコードは00FChになる。さらに、そのOR演算の結果に対して、DstとのORをとる場合はDPSooと表現され、それを示すコードは00FEhである。これらは、通常、モノクロまたはRGB色空間での処理を前提としている。それまでの描画結果であるDstを参照するケースがあるため、D1、D2およびD3の描画オブジェクトはシーケンシャルに処理する必要性がある。つまり、D3にDPSooのROPがある場合、D1、D2およびD3の描画結果であるDstの状態がわからないと、D4をROPに基づき描画処理した結果は正しくないことになる。
【０００７】
また、カラーグラフィクス機能の拡大によって、画像間の算術演算を行う描画処理であるαブレンド機能の需要が高まりつつある。αブレンド機能とは、RGBの色情報にαチャネルと呼ばれる色の混ざり具合（パーセンテージ）を示す情報を付加することによって、透過性のある色表現を行うものである。この機能においても、下地になるDstが大きな意味をもつことになり、それまでの描画結果が反映されたDstが構成されていないと、画像の正当性を保持できなくなる。
【０００８】
従って、上記の印刷システムにおいては次の問題がある。
【０００９】
（１）プリンタの描画処理はYMCK色空間で行われるため、システムから渡されるRGB色情報と、それを前提とするROPコードをプリンタが処理しようとしても画像の正当性が保てない場合がある。この問題は、PDLコントローラを搭載するプリンタ、および、そのためのPDLドライバの組み合わせにおいて顕著である。
【００１０】
（２）画像の正当性を保つために、ホスト側で、印刷すべきイメージをRGB色空間で処理して、その処理結果のイメージをYMCK色空間の情報に変換してプリンタへ送る方法がある。一般的に、このような処理を行うプリンタドライバはイメージドライバと呼ばれる。イメージドライバは、印刷情報をイメージとして送るためにデータ量が大きくなりがちで、ホストおよびプリンタ双方のメモリが圧迫される要因になるほか、データ量が大きいということはホスト-プリンタ間の通信路のトラフィックを増大させ、他の通信を阻害する要因になりかねない。また、イメージドライバは、ホスト側ですべての印刷イメージを展開処理するため、その展開処理が完了するまでプリンタへデータの送出ができず、連続する頁の印刷などにおいて高いスループットを得ることが難しい。
【００１１】
（３）描画オブジェクトはシーケンシャルに処理されるため、仮に複数の処理ユニットが存在しても、それらを同時に利用して処理時間の短縮化を図るようなことができない。
【００１２】
本発明は、描画処理において、高いスループットを得るとともに、画像の正当性および再現性を保つことを目的とする。
【００１３】
【課題を解決するための手段】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１４】
本発明にかかる画像処理装置は、印刷要求に伴う印刷情報から、デスティネーションの参照が必要な領域を調べて矩形領域として登録する登録手段と、前記矩形領域に重なるオブジェクトをRGBレンダラでRGBデータに描画後、CMYK画像データに変換する第一の画像領域として検出し、前記矩形領域と重ならないオブジェクトをCMYKレンダラで描画する第二の画像領域として検出し、前記第一の画像領域の印刷情報と、前記第二の画像領域の印刷情報を分離する検出分離手段とを有することを特徴とする。
【００１５】
本発明にかかる画像処理方法は、印刷要求に伴う印刷情報から、デスティネーションの参照が必要な領域を調べて矩形領域として登録し、前記矩形領域に重なるオブジェクトをRGBレンダラでRGBデータに描画後、CMYK画像データに変換する第一の画像領域として検出し、前記矩形領域と重ならないオブジェクトをCMYKレンダラで描画する第二の画像領域として検出し、前記第一の画像領域の印刷情報と、前記第二の画像領域の印刷情報を分離することを特徴とする。
【００２０】
【発明の実施の形態】
以下、本発明にかかる一実施形態の画像処理装置を図面を参照して詳細に説明する。
【００２１】
［印刷装置］
図2は本発明を適用する印刷システムの印刷装置であるカラーレーザビームプリンタ（以下「カラーLBP」と略す）の構成例を示す図である。
【００２２】
図2に示すカラーLBPは、600dpiの解像度を有し、各色成分を8ビットで表現するデータに基づき画像を記録するプリンタである。カラーLBPは、外部に接続されるホストコンピュータなどから供給されるプリントデータ（文字コードや画像データなど）および制御コードからなる印刷情報を入力して記憶するとともに、それらの情報に従って対応する文字パターンやイメージなどを作成して、記憶媒体である記録紙上にカラー像を形成する。
【００２３】
110はホストコンピュータから供給される印刷情報を解析し、印刷イメージを生成するとともに、カラーLBP本体の制御を行うフォーマッタ制御部である。また、120はユーザの指示を入力し、ユーザに装置や動作の状態を通知するための、スイッチおよび表示器などが配されたオペレーションパネルで、フォーマッタ制御部110と接続されている。なお、そのオペレーションパネル120は、カラーLBPの外装の一部として配設されている。
【００２４】
フォーマッタ制御部110において生成される印刷イメージは、ビデオ信号VDOとして出力制御部130へ送出される。出力制御部130には、図示しない各種センサから入力されるカラーLBP各部の状態情報に基づき、光学ユニット140および各種の駆動系機構部に対し制御信号を出力し、カラーLBPとしての印刷動作を制御する。
【００２５】
フォーマッタ制御部110においてイメージに展開された印刷情報は、対応するパターンのビデオ信号VDOに変換されて出力制御部130内のレーザドライバに送られる。レーザドライバは、ビデオ信号VDOに応じて半導体レーザ141を駆動する。従って、半導体レーザ141は、ビデオ信号に応じてその発光がオンオフ制御されたレーザ光Lを出力する。レーザ光Lは、スキャナモータ143によって高速回転するポリゴンミラー142で左右方向に振られ、f-θレンズ144および反射鏡145を介して感光ドラム151上を走査する。レーザ光Lによる走査に先立ち、感光ドラム151の外周面には、帯電器156により所定の極性および電位に略均一に帯電されているので、レーザ光Lの走査により、感光ドラム151上には静電潜像が形成される。
【００２６】
各色の現像器は、その両端に回転支軸を有し、それぞれがその軸を中心に回転可能に現像器選択機構部152に保持されている。これにより、各色の現像器は、現像器を選択するために現像器選択機構部152が回転軸152aを中心にして回転しても、その姿勢を一定に維持することができる。選択された現像器が現像位置へ移動した後、ソレノイド153aにより、支点153bを中心にして、選択機構保持フレーム153を感光ドラム151の方向へ引っ張ることにより、現像器選択機構部152は現像器と一体に感光ドラム151の方向へ移動して現像処理が行われる。
【００２７】
図2に示す給紙カセット161から供給される記録紙Pは、所定のタイミングで転写ドラム154に供給され、記録紙Pの先端がグリッパ154fにより挟持される。さらに、感光体ドラム151上のトナー像を記録紙Pに転写するために、トナーと反対極性（例えばプラス極性）の転写バイアス電圧が転写ドラム154に印加され、記録紙Pは転写ドラム154の外周面に静電吸着され保持される。
【００２８】
光学ユニット140により感光ドラム151上に形成される潜像は、マゼンタ(M)の現像器Dmによって現像される。現像により生成されたMトナー像は、転写ドラム154の外周に保持された記録紙Pに転写される。次に、シアン(C)色に対応する静電潜像が形成され、C色の現像器Dcにより現像される。生成されたCトナー像は記録紙Pに転写される。以下同様の手順により、イエロー(Y)、ブラック(K)の順にトナー像が形成されて記録紙Pに転写される。トナー像の転写が終了した感光ドラム151は、次の色の潜像形成および現像に備えて、クリーナ157により残留トナーが除去される。
【００２９】
このようにして、記録紙P上には四色のトナー像が重畳される。なお、トナー像の転写に先立ち、転写ドラム154には前回よりも高い転写バイアス電圧が印加される。記録紙Pに四色のトナー像が重畳されると、分離爪158が転写ドラム154に接近し、分離爪158の先端が転写ドラム154の表面に接触し、記録紙Pが転写ドラム154から分離される。分離された記録紙Pは定着ユニット155に搬送され、ここでトナー像が定着された後、配渋159により排紙トレイ160上に排出される。
【００３０】
本実施形態のカラーLBPは、以上の画像形成過程を経て、600dpiの解像度の画像形成を行う。なお、本発明を適用することが可能なプリンタは、カラーLBPに限られるものではなく、モノクロLBPであってもよいし、インクジェットプリンタやサーマルプリンタなどの他の方式のプリンタでもよい。
【００３１】
［フォーマッタ制御部］
次に、図3を参照してフォーマッタ制御部110について説明する。このフォーマット制御部110は、通常、PDLコントローラなどと呼ばれる部分で、ホストコンピュータ200との接続手段であるところのインタフェイス(I/F)111と、受信データなどを一時的に保持管理するための受信バッファ1121、送信データなどを一時的に保持管理するための送信バッファ1122、印刷データの解析を司るコマンド解析部113、印刷制御処理実行部114、描画処理実行部115およびページメモリ116などより構成されている。
【００３２】
インタフェイス(I/F)111は、ホストコンピュータ200との印刷データの送受信を行う通信手段で、IEEE-1284に準拠した通信プロトコルに従い通信を行う。ただし、インタフェイス111は、IEEE-1284に限定されるものではなく、TCP/IPなどのネットワークプロトコルを利用するものであってもよいし、IEEE-1394やUSB(Universal Serial Bus)などの通信手段であってもよい。インタフェイス111を介して受信された印刷データは、一時的にデータを保持する受信バッファ1121に逐次蓄積され、必要に応じてコマンド解析部113または描画処理実行部115によって読出され処理される。コマンド解析部113は、PDL(Page Description Language)コマンド体系や印刷ジョブ制御言語に準じた制御プログラムにより構成されていて、文字や記号の印刷、図形やイメージなどの描画に関する印刷データの解析結果に基づき、描画処理実行部115に指示を与えて処理を実行させ、給紙選択やリセット命令などの描画以外のコマンドは、印刷制御処理実行部114に指示を与えて処理させる。
【００３３】
描画処理実行部115は、文字やイメージなどの各描画オブジェクトをページメモリ116に逐次展開するYMCKレンダラである。前述したカラーLBPに対しては、MCYKの面順次にページ単位のデータを送出する必要があるが、標準状態では、YMCK各プレーン（一頁分）のメモリが確保されているわけではなく、あるプレーンの数分の一の大きさのバンドメモリが確保されていて、プリンタエンジン140の処理速度に同期して、そのバンドメモリを使いまわしてイメージを展開するように構成されている。通常は、このようにYMCKレンダラによる展開処理と、プリンタエンジン140へのビデオ信号のシッピングの追いかけっこ、つまりバンディング制御によってページメモリ116は管理されているが、充分なメモリ容量がある場合は一頁分のイメージを展開可能なメモリ領域を確保することもできる。なお、一般的に、フォーマッタ制御部110は、中央演算処理装置(CPU)、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)などを用いたコンピュータシステムによって構成されている。また、各部の処理は、マルチタスクモニタ（リアルタイムOS）の下でタイムシェアリング処理される構成であってもよいし、各機能ごとに専用のコントローラハードウェアを用意して、独立に処理される構成であっても構わない。
【００３４】
オペレーションパネル120は、前述したとおり印刷装置100の各種状態を設定し表示するためのものである。出力制御部130は、ページメモリ116に展開されたイメージをビデオ信号VDOに変換し、プリンタエンジン140へ転送する。プリンタエンジン140は、受取ったビデオ信号VDOに基づき記録紙Pに可視像を形成する。
【００３５】
［ホストコンピュータ］
以上、印刷装置100について説明したが、次に、ホストコンピュータ200を含む本実施形態の印刷システム全体の構成について説明する。
【００３６】
図2に示すホストコンピュータ200は、プリントデータおよび制御コードからなる印刷情報を印刷装置100に出力する。ホストコンピュータ200は、入力デバイスであるキーボード210、ポインティングデバイスであるマウス211、および、表示デバイスであるディスプレイモニタ220を合わせた一つのコンピュータシステムとして構成されている。ホストコンピュータ200はWindows NTなどの基本OSによって動作しているものとする。
【００３７】
ホストコンピュータ200上で稼働するソフトウェアについて、本発明に関する機能的な部分にのみ注目して、基本OS上で動作する機能を大きく分類すると、アプリケーションプログラム201、グラフィックサブシステム202、印刷情報格納手段および印刷装置との通信手段を含むスプールサブシステム203に大別される。
【００３８】
アプリケーションプログラム201は、例えば、ワードプロセッサや表計算など、基本OS上で動作する応用ソフトウェアである。グラフィックサブシステム202は、基本OSの機能の一部であるGDI 2021と、GDIから動的にリンクされるデバイスドライバであるプリンタドライバ2022によって構成されている。スプールサブシステム203は、グラフィックサブシステム202の後段に位置するプリンタデバイスに特有のサブシステムであり、印刷情報格納手段であるスプールファイル（実体はハードディスク）2031、スプールファイル2031に蓄えられた中間コードを読出すデスプーラ2032、および、そのデータに基づきプリンタのPDLコントローラの描画処理部と同様の印刷イメージの展開処理を行う描画処理実行ユニットであるRGBレンダラ2033から構成されている。基本OSによっては、これらの名称や機能的な枠組みが若干異なる場合があるが、本発明でいう各技術的手段が実現できるモジュールであれば、それらの名称や枠組みは本実施形態にとってあまり大きな問題ではない。例えば、スプーラやスプールファイルと呼ばれるものは、別のOSにおいてプリントキューと呼ばれるモジュールに処理を組み込むことによっても実現可能である。なお、一般的に、これらの各機能モジュールを含むホストコンピュータ200はCPU、ROM、RAM、ハードディスクドライブ(HDD)、および、各種入出力制御部(I/O)などのハードウェアのもとで、基本ソフトと呼ばれるソフトウェアがその制御を司り、その基本ソフトの下で、アプリケーションプログラムやサブシステムプロセスが機能モジュールとして動作するようになっている。
【００３９】
［動作］
以上、図2および図3に基づき本実施形態の構成について説明をしたが、次に本実施形態の動作を図4を用いて説明する。
【００４０】
図4は本実施形態の処理の流れを示す概念図である。図1に示すような印刷を行う場合を例として処理の流れを説明する。図1の例では、描画オブジェクトD3に50%のαブレンドが指定されている。この指定により矩形D3と楕円D1とが重なる部分では、下地であるD1の赤色と、上に重なるD3の黄色とが50%の割合で交じり合い、半透過の描画表現がなされる。透過性ということで、この機能においても下地になるDstが大きな意味をもつことになり、それまでの描画結果が反映されたDstが構成されていないと画像の正当性が保持できなくなる。
【００４１】
しかし、ROPとαブレンドとは、通常、RGB色空間での処理を前提としているため、YMCK色空間でレンダリング処理を行っている印刷装置100内のレンダラ（描画処理実行部115）では、ホストコンピュータ200の画面と同じような描画結果を忠実に再現することはできない。
【００４２】
前述したように、グラフィックサブシステムからの印刷要求指示に伴う印刷情報の処理は、プリンタの能力や機能などに応じて予めプリンタドライバに実装されることが決められているDDI関数群をコールすることによって行われる。例えば、テキスト印刷を行う際はDrvTextOutという名称の関数がコールされ、イメージ系の描画オブジェクトを印刷する場合はDrvBitBlt、DrvStretchBlt、DrvPaintなどの関数がコールされ、グラフィクス系ではDrvFillPathやDrvStrokePathといった関数がコールされる。これらのDDIには、描画の際に必要となる様々な情報が引数として渡される。例えば、クリッピングが必要な場合は、CLIPOBJと呼ばれる構造体にそのクリッピング領域の情報がセットされる。また、塗り潰しパターンが設定されている場合は、BRUSHOBJと呼ばれる構造体をもつ引数に塗り潰しパターンの種類や色の情報がセットされる。また、論理描画に関する設定は、ROP3やROP4といった型の変数に、そのROPコードがセットされる。
【００４３】
図4に示すスプールの概念図において「GDIによるDDIコール」として示す部分は、図1に示すような印刷を行った際にシステム（より詳しくはGDI）からコールされるDDIをコール順に列挙したものである。赤色のハッチングパターンで塗り潰された楕円D1は、DrvFillPathというDDIによって処理されることを意味する。つまり、楕円D1の輪郭の情報がシステム（より詳しくはGDI）によって生成され、輪郭を表すドット列の情報や塗り潰しパターンなどがプリンタドライバに渡されるわけである。同様に、ソリッドな黄色の矩形D2はDrvBitBltで、緑色のハッチングパターンで塗り潰された矩形D2はDrvAlphaBltで、青色の格子パターンで塗り潰された矩形D4はDrvPaintによって、その印刷情報がシステム（より詳しくはGDI）からプリンタドライバに渡される。また、この他にも、それぞれのDDIには、描画すべきバンドメモリを指示する情報や、描画すべき位置の情報などが渡される。
【００４４】
各描画オブジェクトに対応したこれらの印刷情報は、後述する領域判別の結果によりその処理手段を切替えるために、スプールファイルとして一時的に格納する必要がある。この印刷情報を格納する手段であるスプールファイルは、ハードディスクなどの二次記憶装置を用いて構成される。各DDIの情報をファイルとしてスプールする際に、その描画オブジェクトにROPまたはαブレンドが指定されていれば、その描画領域を導き出し領域登録処理を行う。領域登録処理は、領域管理用のグローバルな変数領域であるChkRECTを参照、更新することで行われる。具体的には、図５に示すプログラムのように、対象とする描画オブジェクトの領域TrgRECTとChkRECTとを比較して、左上の座標値がより小さい値および右下の座標値がより大きい値を求め、それらの値でChkRECT変数を更新する。つまり、対象になる幾つかの描画オブジェクトが含まれる最大の矩形領域を算出するものである。以上の領域登録処理を行いながら、すべてのDDIの情報を一旦ファイルとして蓄えスプール処理を終える。
【００４５】
次に、デスプール時の動作について説明する。デスプールにおいては、それぞれの印刷情報を読出す際に、そのオブジェクトがChkRECTに僅かでも重なるか否かという領域判定処理を行う。この領域判定処理は図6に示すようなプログラムによって実現される。この領域判定処理の結果、処理しようとする描画オブジェクトが、ChkRECTに僅かでも重なるならば、その描画オブジェクトはホストコンピュータ200のRGBレンダラによって処理される。一方、処理しようとする描画オブジェクトがChkRECTと重ならなければ、その描画オブジェクトは印刷装置100のYMCKレンダラで処理される。
【００４６】
ホストコンピュータ200のRGBレンダラで処理されるべきオブジェクトは、ホストコンピュータ200の描画処理実行部2033のページメモリ（例えばRGB24ビット/画素）上に展開され、ROPやαブレンドの処理が正しく実行される。生成されたRGBデータは、印刷装置100の解像度、階調に合わせてライン単位でYMCK画像データに変換され、その都度、データ圧縮され印刷装置100へ送られる。例えば、ラインごとにRGB24ビット/画素のデータからYMCK各4ビットのデータに変換処理され、得られたYMCKデータはJBIG圧縮法やPackBits圧縮法などの既知の圧縮方式を用いて圧縮処理され、印刷位置の情報などとともに印刷装置100へ送られる。
【００４７】
一方、領域判定によるレンダラの振り分けの結果、印刷装置100のYMCKレンダラで処理すべき描画オブジェクトは、矩形描画なら「塗り潰しパターン指定命令」＋「矩形描画命令」というように、所定のプリンタ制御コマンドにされて印刷装置100に送られる。これらのデータを受信した印刷装置100は、RGBプレーンに描画展開処理を行わず、直接YMCK各4ビットの描画メモリに対して描画処理を行う。印刷装置100は、ホストコンピュータ200から排紙命令を受けると、ホストコンピュータ200で展開され圧縮された画像データと、印刷装置100で展開された画像データとを、ページ出力処理時に合成処理する。そして、合成処理された一頁分の印刷イメージはビデオ信号としてプリンタエンジン140に送られ、目的とする印刷結果が得られる。
【００４８】
上述した実施形態では、処理の高速化を図るために、その描画オブジェクトを含む矩形領域によって処理を行っているが、ポリゴンによって描画されるような任意の多角形に対して厳密に領域判断を行うようにしてもよい。
【００４９】
また、上記の実施形態では、領域登録処理の際に領域管理用の変数領域(ChkRECT)を一つだけで管理するが、この領域は、複数設けてもよい。例えば、ROPが設定されている描画オブジェクトの領域を管理する変数と、αブレンドが設定されている描画オブジェクトの領域を管理する変数をそれぞれ設けて、別々に管理してもよい。こうすることによって、無駄な空白領域を減らし、RGBレンダラにより描画する領域を狭めることで、ホストコンピュータ200の描画処理に用いられるメモリ量を抑えることが可能になる。
【００５０】
上記の実施形態では、YMCKレンダラとして印刷装置100内の描画処理実行部115を想定したが、例えば別のコンピュータ上で動作するRIP(Raster Image Processor)と呼ばれるモジュールをネットワーク経由でYMCKレンダラとして利用することもできる。また、ホストコンピュータ200の処理能力が充分に高い場合や、レンダラ（描画処理部）を持たないようなプリンタで印刷する場合は、同一のホストコンピュータ上でRGBレンダラおよびYMCKレンダラをもつような構成をとってもよい。この場合は図7に示すような構成になる。
【００５１】
また、上記の説明では、単にROPと称しているが、このROPはSrc、Pat、Dstの組み合わせによるものであり、例えば、Dstを参照しないようなROPコードが含まれる場合は、領域登録の対象外とすることで、より高速化が可能である。
【００５２】
このように、上記の実施形態によれば、ROP処理やαブレンド処理のようにDestinationを参照するものがある場合、このDestinationの参照の必要性のある領域を事前に調べ、その領域に対してはホスト側のプリントドライバで処理し、そうでない部分はプリンタ側のコントローラで処理するように印刷処理を分配し、画像の正当性および再現性を保ちながら適当な負荷分散を行って印刷処理を高速化させることができる。言い換えれば、一旦スプールされたシステムからの描画情報を調べて、RGB色空間で描画しないと画像の正当性が失われる領域と、そうでない領域とを分離し、それらをホスト側とプリンタ側で分担して処理することができる。
【００５３】
なお、特開平09-190539に開示された技術は「画像の領域情報」にのみ着目し描画オブジェクトの分離を行っている。これに対して、本実施形態においては、画像を構成する各描画オブジェクトにおいてDestinationを参照するような描画指示が含まれるか否かをまず判別して命令の振り分けを行う。このDestinationを参照するような論理指示として、例えばWindows(R)のGDIに特有なROPとαブレンドを、上記振り分けの判定基準とする。なお、上記の先行技術においても、並列処理を行うために命令の振り分けをする点は同じであるが、先行技術においては並列処理の実行ユニットは機能的に同一である。例えば、先行技術では、振り分けられた命令は実行ユニットAでもBでも処理可能であるが、本発明においては、特定の実行ユニットに適するように命令を振り分ける、言い換えれば、機能的に全く異なる実行ユニットを利用するために命令を振り分けている。全く異なる実行ユニットとして、上記の実施形態ではRGBレンダラおよびYMCKレンダラを取り上げた。
【００５４】
以上説明したように、本実施形態において、1パス目のスプーラの処理で、ROPやαブレンドが指定されている描画オブジェクトを含む最大の矩形領域を抽出し、2パス目で、抽出された矩形領域に僅かでも重なる描画オブジェクトはホスト側のRGBレンダラに処理を振り分け、そうでない描画オブジェクトはプリンタ側のYMCKレンダラで処理する。この構成により以下の効果を得ることができる。
(1)RGB色空間で描画しないと画像の正当性が失われるような論理描画や、αブレンドの指定を含む描画処理を正しく実行し画像としての正当性を保つことができる。
(2)描画処理の負荷をホスト側およびプリンタ側に分散することができ、印刷処理全体の高速化が実現される。
(3)矩形領域における簡素化された領域判別法により、領域登録/判定処理のオーバヘッドを軽減することができる。
【００５５】
【他の実施形態】
なお、本発明は、複数の機器（例えばホストコンピュータ，インタフェイス機器，リーダ，プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用してもよい。
【００５６】
また、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS（オペレーティングシステム）などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５７】
さらに、記憶媒体から読出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００５８】
【発明の効果】
以上説明したように、本発明によれば、描画処理において、高いスループットを得るとともに、画像の正当性および再現性を保つことができる。
【図面の簡単な説明】
【図１】印刷画像に一例を示す図、
【図２】本発明を適用する印刷システムの印刷装置の構成例を示す図、
【図３】図2に示す印刷装置のフォーマッタ制御部の構成例を示す図、
【図４】本実施形態の処理の流れを示す概念図、
【図５】領域登録処理のプログラム例を示す図、
【図６】領域判別処理のプログラム例を示す図で、
【図７】他の実施形態における印刷システムの構成例を示す図である。
【図１】
0004095166.tif 000002
【図２】
0004095166.tif 000003
【図３】
0004095166.tif 000004
【図４】
0004095166.tif 000005
【図５】
0004095166.tif 000006
【図６】
0004095166.tif 000007
【図７】
0004095166.tif 000008