(57)【要約】【課題】  アプリケーションデータからPDLデータへの変換時、または、PDLデータから中間データへの変換時に細分化されたデータにトラッピング処理を行うと、細分化されたオブジェクトのすべてにトラッピング処理を行うことになり、その結果、トラッピング処理が画像品位の低下をもたらす。【解決手段】  クラスタリングサーバは、PDLデータを入力し(S2401)、PDLデータを解析して中間データとメタデータを作成し(S2403)、メタデータを参照して、オブジェクト結合処理を行い(S2404)、トラッピング前半処理を行い(S2406)、中間データのみをプリンティングサーバへ送信する(S2407)。プリンティングサーバは、中間データを受信し(S2411)、受信中間データにトラッピング後半処理を施す(S2412)。【選択図】    図21
2006048538.tif 000002
【特許請求の範囲】
【請求項１】
アプリケーションデータをPDLデータに変換し、その変換において分割したオブジェクトの関係を示すメタデータを作成する第一の変換手段と、
前記メタデータを用いて、前記PDLデータ内の分割されたオブジェクトを結合する結合手段と、
前記PDLデータをレンダリング用の中間データに変換する第二の変換手段と、
前記中間データに、プリンタの色版ずれ補正の一部を施す補正手段とを有することを特徴とする画像処理装置。
【請求項２】
PDLデータをレンダリング用の中間データに変換し、その変換において分割したオブジェクトの関係を示すメタデータを作成する変換手段と、
前記メタデータを用いて、前記中間データ内の分割されたオブジェクトを結合する結合手段と、
前記中間データに、プリンタの色版ずれ補正の一部を施す補正手段とを有することを特徴とする画像処理装置。
【請求項３】
さらに、前記結合手段による結合後、前記メタデータを削除する削除手段と、
前記結合手段または前記補正手段が出力する中間データを前記プリンタに送信する送信手段とを有することを特徴とする請求項2に記載された画像処理装置。
【請求項４】
前記プリンタは、受信した前記中間データに前記色版ずれ補正の全部または残部を施すことを特徴とする請求項3に記載された画像処理装置。
【請求項５】
前記色版ずれ補正の一部は、重畳するオブジェクトの交点検出処理および前記交点検出処理の結果に基づくベース輪郭検出処理を含み、前記色版ずれ補正の他部は、前記ベース輪郭検出処理の結果に基づくトラップエリア作成処理を含むことを特徴とする請求項4に記載された画像処理装置。
【請求項６】
前記メタデータは、変換前のデータにおける一つのオブジェクトと、変換後のデータにおける複数のオブジェクトの対応を示すデータであることを特徴とする請求項1から請求項5の何れかに記載された画像処理装置。
【請求項７】
前記結合手段は、前記分割されたオブジェクトの輪郭データを結合して一つの輪郭データにし、前記結合の結果を反映したデータを出力することを特徴とする請求項1から請求項6の何れかに記載された画像処理装置。
【請求項８】
アプリケーションデータをPDLデータに変換し、その変換において分割したオブジェクトの関係を示すメタデータを作成し、
前記メタデータを用いて、前記PDLデータ内の分割されたオブジェクトを結合し、
前記PDLデータをレンダリング用の中間データに変換し、
前記中間データに、プリンタの色版ずれ補正の一部を施すことを特徴とする画像処理方法。
【請求項９】
PDLデータをレンダリング用の中間データに変換し、その変換において分割したオブジェクトの関係を示すメタデータを作成し、
前記メタデータを用いて、前記中間データ内の分割されたオブジェクトを結合し、
前記中間データに、プリンタの色版ずれ補正の一部を施すことを特徴とする画像処理方法。
【請求項１０】
さらに、前記結合後、前記メタデータを削除し、
前記結合後または前記補正後の中間データを前記プリンタに送信することを特徴とする請求項9に記載された画像処理方法。
【請求項１１】
画像処理装置を制御して、請求項8から請求項10の何れかに記載された画像処理を実現することを特徴とするプログラム。
【請求項１２】
請求項11に記載されたプログラムが記録されたことを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置およびその方法に関し、例えば、色版の印刷位置のずれを補正する版ずれ補正に関する。
【背景技術】
【０００２】
カラープリンタにおけるC、M、Y、K色版の印刷位置のずれを補正する版ずれ補正（以下「トラッピング」と呼ぶ）には、PS (PostScript)、PDF (Portable Document Format)、EPS (Encapsulated PostScript)等の形式のプリンタ記述言語データ（以下「PDLデータ」と呼ぶ）に予め用意されたオペレータに従って行われるものと、PDLデータに書かれた情報を基に処理を行い、PDLデータ自体を書き換えたり、PDLデータの解析後の、プリンティングシステムで使われる中間データ（つまり、レンダリング用の中間データで各オブジェクトを輪郭のパスデータとして持つ）を書き換えたり、出力装置内で作成されるビットマップデータを書き換えたりするものが存在する。
【０００３】
トラッピングが行われるPDLデータや中間データは、その作成のされかた、使われるモジュールの違いによって、その記述に違いが生じることがあり、トラッピングの結果にも違いが生じる。また、プリンティングシステムは、多くの周辺機器が接続され、システム規模が大きくなっている。このようなシステムでは、より高速かつ効率よく出力するために、分散印刷（クラスタリング）などの手法が使われることがあるが、このようなプリンティングシステムにおいても、版ずれ補正技術の一つとしてトラッピングが使われる。
【０００４】
上記のように、トラッピングの対象になるのは、アプリケーションから出力されるPDLデータおよび中間データである。このうちPDLデータをアプリケーションから出力する方法は、図1に示す二つの方法が考えられる。
【０００５】
一つは、アプリケーション101に直接PDLデータ105を出力させる方法である。アプリケーション101は、コンバータ103によりアプリケーションデータ102を直接PDLオペレーションに置き換える。ただし、アプリケーションデータ102の1オペレータが必ずPDLデータ105の1オペレータに置き換えられるわけではなく、複数オペレータに置き換えられる（以下「オブジェクトの細分化」と呼ぶ）こともある。
【０００６】
アプリケーション101からPDLデータ105を出力するもう一つの方法は、オペレーティングシステム(OS)を経由してPDLドライバ104にPDLデータ105を出力させる方法である。これは、アプリケーションデータ102をオペレーティングシステム(OS)の中間データに変換し、PDLドライバ104により中間データをPDLデータ105に変換することで実現される。この二度のデータ変換においても、アプリケーション101から直接PDLデータ105を出力する場合と同様に、オブジェクトの細分化が発生する場合がある。
【０００７】
これと同じことが、PDLデータと、プリンティングシステム内で運用される中間データとの間でも発生する。この場合、PDLデータを解析するインタプリタの種類によってPDLデータの解釈の仕方に違いが生じ、その結果、元々はPDLデータで一つのオブジェクトだったものが、中間データでは複数のオブジェクトとして表現される場合がある（図2参照）。
【０００８】
図3はデータの細分化をデータの構成で表す図で、アプリケーションにより折れ曲がった一つのストロークデータが描かれた場合を示す。アプリケーションデータでは、折れ曲がったストロークの芯線を表す三点およびストロークの太さにより、一つの折れ線ストローク（オブジェクト）が表現される。しかし、このアプリケーションデータがPDLデータに変換されると、図3に示すように、四つのオブジェクト（n〜n+3）に細分化される場合がある。
【０００９】
このようなアプリケーションデータからPDLデータへの変換時、または、PDLデータから中間データへの変換時に細分化されたデータにトラッピング処理を行うと、細分化されたオブジェクトのすべてにトラッピング処理を行うことになり、その結果、図4に示すように、トラッピング処理が画像品位の低下をもたらす。
【００１０】
なお、例えば、特開平5-130389号公報はビットマップデータのトラッピング処理を記載する。
【００１１】
【特許文献１】特開平5-130389号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
本発明は、上述の問題を個々にまたはまとめて解決するもので、オブジェクトの分割に起因する色版ずれ補正による画像品位の低下を防ぐことを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、前記の目的を達成する一手段として、以下の構成を備える。
【００１４】
本発明は、アプリケーションデータをPDLデータに変換し、その変換において分割したオブジェクトの関係を示すメタデータを作成し、メタデータを用いて、PDLデータ内の分割されたオブジェクトを結合し、PDLデータをレンダリング用の中間データに変換し、中間データに、プリンタの色版ずれ補正の一部を施すことを特徴とする。
【００１５】
また、PDLデータをレンダリング用の中間データに変換し、その変換において分割したオブジェクトの関係を示すメタデータを作成し、メタデータを用いて、中間データ内の分割されたオブジェクトを結合し、中間データに、プリンタの色版ずれ補正の一部を施すことを特徴とする。
【発明の効果】
【００１６】
本発明によれば、オブジェクトの分割に起因する色版ずれ補正による画像品位の低下を防ぐことができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明にかかる実施例の画像処理を図面を参照して詳細に説明する。
【実施例１】
【００１８】
上述したオブジェクトの細分化の問題を解決するために、例えば中間データの状態において、隣り合うオブジェクトの色を比較して、同じ色ならばオブジェクトを結合するといった処理を加えることが考えられる（図24参照）。この処理により、細分化された個々のオブジェクトにトラッピング処理を行う場合の画像品位の劣化は避けられる。しかし、すべてのオブジェクトと隣り合うオブジェクトの色の判定が必要になり、処理時間を増加させることになる。また、中間データにおいては、描画順（Zオーダ）にオブジェクトデータが格納されているので、色判定もこの順に従うことになり、本来は同一オブジェクトではないが、同じ色で、重なりが発生しているオブジェクトに対しても結合処理を行ってしまう。
【００１９】
そこで、オブジェクトの結合を示すメタデータを別途作成することで、色の判定処理を行わず簡単に結合処理を行う解決策が考えられる。図5A-5Cは中間データに対するメタデータを示す図である。メタデータは、アプリケーションデータをPDLデータに、または、PDLデータを中間データに変換する際に一つのオブジェクトが複数に分割された場合、どのように分割されたのかを示すデータである。
【００２０】
図5Aの例は、オブジェクトデータ形式のメタデータが、分割されたオブジェクトの開始部分と終了部分に挿入され、メタデータのヘッダには、メタデータであること、および、分割されたオブジェクトの開始または終了を示すデータが含まれる。
【００２１】
図5Bの例は、オブジェクトデータ形式のメタデータが、分割されたオブジェクトの開始部分にのみ挿入され、メタデータのヘッダには、分割されたオブジェクトの最初のオブジェクト番号と最後のオブジェクト番号が含まれる。
【００２２】
図5Cの例は、中間データの開始部分にのみ、オブジェクトデータ形式のメタデータが挿入され、メタデータのヘッダには、中間データ内に存在する分割されたオブジェクトすべてに関する開始オブジェクト番号と終了オブジェクト番号が含まれる。
【００２３】
このようにメタデータは、分割されたオブジェクトの関係を示すデータであり、中間データ内に埋め込まれていても、別途、データファイルとして提供されても構わない。
【００２４】
図6はメタデータを用いる処理を説明する図で、細分化されたオブジェクトを、メタデータに基づき結合することで、分割されていない中間データを生成した後、トラッピングを行う。このようにメタデータを用いればオブジェクトの細分化による問題は解決される。
【００２５】
勿論、上記では、中間データの生成においてメタデータを作成する例を説明したが、同様のメタデータを、アプリケーションデータからPDLデータへの変換時に作成し、PDLデータから中間データへの変換時に、PDLデータに関連するメタデータに基づき細分化されたオブジェクトを結合すればよい。
【００２６】
［ハードウェア構成］
図7は画像処理装置の基本的な構成例を示すブロック図である。
【００２７】
中央処理装置(CPU)1は、システムバス12を介して装置全体の制御および演算処理を行う。ランダムアクセスメモリ(RAM)2は、CPU 1により、処理ごとにそれぞれのプログラム（例えば後述する作図ソフトウェアや版ずれ補正制御プログラムなど）およびデータがロードおよび実行される、CPU 1のワーク領域である。読み出し専用メモリ(ROM)3は、システム制御プログラム（基本入出力システム(BIOS)）やフォントデータなどの記憶領域である。キーボード制御部(KBC)4は、キーボード(KB)5におけるキー入力によりデータを受け取りCPU 1へ伝達する。プリンタ制御部(PRTC)6は、レーザビームプリンタやインクジェットプリンタなどのプリンタ装置(PRT)7を制御する。ディスプレイ制御部(CRTC)8は、ディスプレイ装置(CRT)9の表示制御を行う。
【００２８】
ディスク制御部(DKC)10は、ディスク装置とシステムバス12の間のデータ伝送制御などを行う。ディスク装置は、フロッピディスク装置(FD)11a、ハードディスク装置(HD)11b、CDROM装置11c、DVDROM装置11dなどの外部記憶装置で、プログラムおよびデータを記憶する。CPU 1は、処理の実行時、必要に応じて、ディスク装置に格納されたプログラムやデータをRAM 2へロードする。
【００２９】
画像処理装置の電源がオンにされると、BIOSのイニシャルプログラムローダ(IPL)によりHD 11bからオペレーティングシステム(OS)がRAM 2に読み込まれ、CPU 1によりOSの動作が開始され、ユーザの指示により作図ソフトウェアの実行が開始される。
【００３０】
図8は、高速な出力を目的としてクラスタリングを行うプリンティングシステムの構成例を示すブロック図である。
【００３１】
クラスタリングサーバ112は、PDLデータを入力し、PDLデータをレンダリング用の中間データに変換してプリンティングサーバ113に出力する。なお、図10には一台のプリンティングサーバ113しか示さないが、実際には、クラスタリングに参加するプリンタの台数分、プリンティングサーバ113が存在する。プリンティングサーバ113は、中間データを入力し、トラッピングなどの処理を行い、中間データをレンダリングしたビットマップデータをプリンタ114に出力する。なお、クラスタリングを行わない場合は、プリンティングサーバ113がPDLデータを入力し、中間データへ変換し、さらに、中間データをビットマップデータにレンダリングすることになる。
【００３２】
クラスタリングサーバ112およびプリンティングサーバ113のハードウェア構成は、図7に示した画像処理装置の基本的な構成とほぼ同様であり、その詳細説明は省略するが、記憶メディア（FD、CDROMまたはDVDROM）によって供給されるクラスタリング用、レンダリング用、版ずれ補正用の各制御プログラムおよび関連データがHD 11にインストールまたはコピーし、CPU 1が、ROM 3に格納された基本入出力プログラム(BIOS)、HD 11bに格納されたオペレーティングシステム(OS)、および、各制御プログラムを実行することにより、クラスタリングサーバ112およびプリンティングサーバ113が実現される。
【００３３】
［メタデータの作成1］
まず、アプリケーションからPDLデータを出力する際にメタデータを作成する例を説明する。
【００３４】
図9および図10はアプリケーションからPDLデータを出力する際のメタデータ作成に関する処理を示すフローチャートである。アプリケーションからPDLデータを出力する方法には、上述した二つの方法があり、図9はアプリケーションが搭載するデータコンバートモジュールを使用してPDLデータに変換する方法（つまり、例えばデスクトップパブリッシング(DTP)アプリケーションなどの作図ソフトウェアによる処理例）を示し、図10はOSに用意されたPDLドライバを利用してPDLデータに変換する方法（つまり、例えば作図ソフトウェアとPDLドライバによる協働処理例）を示す。
【００３５】
● アプリケーションによる変換
図9において、ユーザによる作図が行われ(S101)、アプリケーションデータのPDLデータの書き出し命令を受け付けると(S102)、メタデータ作成指令の有無を判定する(S103)。メタデータ作成指令は、オブジェクトの結合処理を必要とする場合、メタデータを用いて、結合を正確かつ容易に行うための指令であり、PDLデータの書き出しを指示するユーザインタフェイス上で指定するか、アプリケーション上でトラッピング処理を指定すると自動的に発せられる。メタデータ作成指令が有効と判定した場合はPDLデータとメタデータを作成し(S104)、同指令が無効と判定した場合はPDLデータだけを作成する(S105)。
【００３６】
アプリケーションは、アプリケーションデータのオペレータを保持し、認識しているPDLデータのオペレーションに置き換える形でPDLデータへの変換を行う。従って、アプリケーションデータの一つのオペレータが、PDLデータの一つのオペレータで対応可能な場合は一つのオペレータに変換するが、そうでない場合は、図3に示したように、複数のオペレータ（オブジェクト）に変換する。図3の例では、アプリケーションデータにおいては芯線と太さで表されるストロークが、同様のオペレーションが用意されていないPDLデータにおいては、二つの四角形と二つの三角形で表されている。
【００３７】
メタデータ作成指令が有効の場合、上記の変換処理と同時にメタデータも作成される。図3に示すように、オブジェクトが細分化された場合、言い換えればオペレータの置き換え（変換）が一対一で行えなかった場合、アプリケーションは、分割したオブジェクトの識別データをメタデータとして作成する（図5A-5C参照）。
【００３８】
● PDLドライバによる変換
図10において、アプリケーション上でユーザによる作図が行われ(S201)、アプリケーションは印刷命令を受け付けると(S202)、アプリケーションデータをOS内で運用される中間データにする(S203)。なお、印刷を指示すると、ユーザインタフェイスにはOS上に用意されているPDLドライバが列挙されるので、ユーザは所望するPDLドライバを選択することができる。
【００３９】
OSを介してファイル出力命令（印刷命令）を受けたPDLドライバは、メタデータ作成指令の有無を判定する(S204)。メタデータ作成指令は、PDLドライバのユーザインタフェイス上で指定するか、アプリケーション上でトラッピング処理の実行を指示すると自動的に発せられる。PDLドライバは、メタデータ作成指令が有効と判定した場合はPDLデータとメタデータを作成し(S205)、同指令が無効と判定した場合はPDLデータだけを作成する(S206)。
【００４０】
このように、アプリケーションデータからPDLデータへの変換は、アプリケーションによる中間データへの変換、および、PDLドライバによるPDLデータへの変換の二つの変換によって行われるが、その際、オペレータが一対一で置き換えられない場合は、図3に示したように、アプリケーションデータの一つのオペレータが複数のオペレータ（オブジェクト）に変換される。
【００４１】
メタデータ作成指令が有効の場合、上記の変換処理と同時にメタデータも作成される。図3に示すように、オブジェクトが細分化された場合、言い換えればオペレータの置き換え（変換）が一対一で行えなかった場合、アプリケーションは、分割したオブジェクトの識別データをメタデータとして作成する（図5A-5C参照）。
【００４２】
［メタデータの作成2］
次に、PDLデータをレンダリング用の中間データに変換する際にメタデータを作成する例を説明する。
【００４３】
図11はPDLデータをレンダリング用の中間データへ変換する処理例を示すフローチャートである。この処理は、クラスタリングサーバ112またはプリンティングサーバ113で実行される。
【００４４】
PDLデータが入力されると(S301)、PDLデータを解析してPDLデータの記述を解釈し(S302)、メタデータ作成指令の有無を判定する(S303)。メタデータ作成指令は、プリンティングシステムのユーザインタフェイス上で指定するか、または、プリンティングシステム上でトラッピング処理の実行を指示すると自動的に発せられる。メタデータ作成指令が有効と判定した場合は中間データとメタデータを作成し(S304)、同指令が無効と判定した場合は中間データだけを作成する(S305)。
【００４５】
PDLデータから中間データへの変換は、PDLデータの解析結果を、中間データにおいて用意されているオペレータに置き換えることによって行う。PDLデータの解析に使われるインタプリタのメーカにより、PDLデータの解析結果に対する処理が異なるため、元々は一つのオブジェクトであったものを複数のオブジェクトの集合として処理してしまう場合がある。この場合、図3に示したアプリケーションデータとPDLデータの関係と同様に、複数のオブジェクトを表現する中間データが作成される。その際、メタデータ作成指令が有効であれば、分割したオブジェクトの識別データをメタデータとして作成する。
【００４６】
［トラッピング処理］
次に、メタデータが作成されたPDLデータまたは中間データのトラッピング処理を説明する。なお、トラッピング処理の詳細については後述する。
【００４７】
● PDLデータの場合
図12はメタデータが存在するPDLデータに対するトラッピング処理を説明するフローチャートである。この処理は、クラスタリングサーバ112またはプリンティングサーバ113で実行される。
【００４８】
まず、処理対象のPDLデータを入力し(S401)、PDLデータにメタデータが存在するか否かを判定し(S402)、メタデータが存在しない場合は処理をステップS406へジャンプする。
【００４９】
メタデータが存在する場合は、メタデータを参照して結合が必要なオブジェクトを識別し(S403)、識別の結果、結合が必要なオブジェクト同士を結合する(S404)。この結合処理は、二つのオブジェクトの輪郭が一つのオブジェクトの輪郭になるように、輪郭を構成する制御点レベルで結合する。そして、結合したオブジェクトと結合前のオブジェクトとを置き換え処理し、PDLデータの記述上の整合性をとる。
【００５０】
次に、結合が必要なオブジェクトすべての結合が終了したか否かを判定し(S405)、未結合のオブジェクトがあれば、処理をステップS404へ戻して結合処理を繰り返す。
【００５１】
結合処理が終了した場合は、PDLデータに対するトラッピングを行うか否かを判定し(S406)、PDLデータに対するトラッピング指令が有効の場合はPDLデータにトラッピング処理を施(S407)。
【００５２】
● 中間データの場合
図13はメタデータが存在する中間データに対するトラッピング処理を説明するフローチャートである。この処理は、中間データをレンダリングするプリンティングサーバ113で実行される。
【００５３】
まず、処理対象の中間データを入力し(S501)、中間データにメタデータが存在するか否かを判定し(S502)、メタデータが存在しない場合は処理をステップS506へジャンプする。
【００５４】
メタデータが存在する場合は、メタデータを参照して結合が必要なオブジェクトを識別し(S503)、識別の結果、結合が必要なオブジェクト同士を結合する(S504)。この結合処理は、二つのオブジェクトの輪郭が一つのオブジェクトの輪郭になるように、輪郭を構成する制御点レベルで結合する。そして、結合したオブジェクトと結合前のオブジェクトとを置き換え処理し、中間データの記述上の整合性をとる。
【００５５】
次に、結合が必要なオブジェクトすべての結合が終了したか否かを判定し(S505)、未結合のオブジェクトがあれば、処理をステップS504へ戻して結合処理を繰り返す。
【００５６】
結合処理が終了した場合は、中間データに対するトラッピングを行うか否かを判定し(S506)、中間データに対するトラッピング指令が有効の場合は中間データにトラッピング処理を施す(S507)。
【００５７】
このように、メタデータを利用することで、PDLデータや、レンダリング用の中間データにおいて細分化されているオブジェクトを、色の判定を行うことなく正確に結合させることができ、その結果、トラッピング処理による画像品位の低下を防ぐことができる。
【実施例２】
【００５８】
以下、本発明にかかる実施例2の画像処理を説明する。なお、実施例2において、実施例1と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００５９】
図14は実施例2におけるプリンティングシステムを示すブロック図である。
【００６０】
クラスタリングサーバ112は、PDLデータを解析するインタプリタ121、および、解析結果に基づき中間データを生成する中間データ作成部122を有する。複数のプリンティングサーバ113a、113b、113c、…、113nはそれぞれプリンタ114a、114b、114c、…、114nに接続している。クラスタリングサーバ112は、印刷ジョブの負荷分散を考慮して、複数のプリンティングサーバ113に印刷ジョブを分散して送信し、複数のプリンタ114を用いて印刷処理を行う。
【００６１】
図15はトラッピング処理を含む印刷処理の流れを示す図である。ここで重要なのは、トラッピング処理が前半処理125と後半処理126に分けられ、前半処理125がクラスタリングサーバ112で行われ、後半処理126がプリンティングサーバ113で行われる点である。なお、トラッピング設定123はトラッピング処理を行うか否かの設定、オブジェクト結合処理124は、図13のS503〜S505に示した、メタデータを参照して結合が必要なオブジェクト同士を結合する処理である。
【００６２】
図16はトラッピング処理の構成を示す図で、トラッピング処理を大別すると、交点検出処理S1、ベース輪郭検出処理S2、および、トラップエリア作成処理S3の三つに分けられる。
【００６３】
図17は交点検出処理S1を説明する図である。交点検出処理S1は、対象オブジェクトの交点を検出する処理で、図17に示す例では、オブジェクト1、2、3の重なり合いから、オブジェクト1とオブジェクト2の間に交点AとBを、オブジェクト1とオブジェクト3の間に交点CとDを、オブジェクト2とオブジェクト3の間に交点EとFを検出する。
【００６４】
図18はベース輪郭検出処理S2を説明する図である。ベース輪郭とは、重なり合うオブジェクト間において、トラッピングエリアが発生する上位オブジェクトの輪郭上の位置を示すデータである。図18の例では、検出された交点A-Fに基づき、オブジェクト1とオブジェクト2の間のオブジェクト2の輪郭上のB-E間を、オブジェクト1とオブジェクト3の間のオブジェクト3の輪郭上のE-C間を、オブジェクト2とオブジェクト3の間のオブジェクト3の輪郭上のF-E間をベース輪郭として検出する。
【００６５】
ベース輪郭検出処理S2まで終了していれば、これ以降の処理、例えば、トラップエリア作成処理S3や色作成のパラメータを変更してのトラップカラー作成処理は、クラスタリングサーバ112に接続された各プリンティングサーバ113で自由に設定し処理することができる。
【００６６】
図19Aはトラップエリア作成処理S3を示す図である。検出されたベース輪郭B-E、E-C、F-Eに基づき、設定されたトラップ幅に従いトラップエリアを作成する。図19Bは図19Aに比べてトラップ幅が狭い場合のトラップエリアを示し、図19Cは図19Aに比べてトラップ幅が広い場合のトラップエリアを示している。図20は色のパラーメータの違いによるトラップカラーの違いを示す図である。
【００６７】
これら三つの処理（交点検出処理S1、ベース輪郭検出処理S2およびトラップエリア作成処理S3）のうち、出力機器（プリンタ114）の状態に依存する処理は、出力装置の色版の印刷位置のずれ状態に従うトラップ幅を設定するトラップエリア作成処理S3である。そこで、出力機器の状態に依存するトラップエリア作成処理S3を後半処理126として、プリンティングサーバ113で行い、メタデータを必要とするオブジェクト結合処理124や、処理自体が重い交点検出処理S1およびベース輪郭検出処理S2を前半処理125として、処理能力が高いクラスタリングサーバ112において行う。このようにすれば、図15に示すように、クラスタリングサーバ112は、中間データと一緒にメタデータをプリンティングサーバ113に送信しないで済む上、オブジェクト結合処理124およびトラッピング前半処理125（交点検出処理S1およびベース輪郭検出処理S2）を高速に行うことができる。
【００６８】
図21は実施例2のクラスタリングサーバ112およびプリンティングサーバ113の処理例を示すフローチャート図である。
【００６９】
クラスタリングサーバ112は、PDLデータを入力し(S2401)、トラッピング設定を行い(S2402)、インタプリタ121によりPDLデータを解析し、中間データ作成部122により中間データとメタデータを作成する(S2403)。なお、メタデータの作成処理は図11を用いて説明したので、その詳細は省略する。また、以下では、トラッピング設定123(S2402)においてトラッピング処理の実行が指示され、中間データ作成部122によりメタデータが作成されたとして説明する。
【００７０】
次に、クラスタリングサーバ112は、メタデータを参照して、オブジェクト結合処理124を行い(S2404)、不要になったメタデータを削除する(S2405)。なお、オブジェクト結合処理124は図13を用いて説明したので、その詳細は省略する。また、メタデータが中間データ内に挿入されていた場合は、メタデータを削除するとともに、中間データの文法上の整合性をとる。
【００７１】
次に、クラスタリングサーバ112は、トラッピング前半処理125を行い(S2406)、中間データのみをプリンティングサーバ113へ送信する(S2407)。プリンティングサーバ113へ送信される中間データには、それまでに行われたトラッピング前半処理125の結果、つまりトラッピング後半処理126に必要なデータが含まれる。図22はプリンティングサーバ113へ送信される中間データを示す図で、中間データのオブジェクトを構成する制御点の情報に加えて、交点情報およびベース輪郭情報が追加されている。図22の例では、交点情報(x31, y31)および(x32, y32)と、ベース輪郭のスタート点(x32, y32)およびエンド点(x31, y31)が追加されている。
【００７２】
プリンティングサーバ113は、図22に示すような中間データを受信し(S2411)、受信中間データにトラッピング後半処理126を施す(S2412)。その際、トラップ幅は、対応するプリンタ114の状態に合わせ設定された値を使う。そして、トラッピング後の中間データをレンダリングし(S2413)、レンダリング結果のビットマップデータをプリンタ114へ送信する(S2414)。
【００７３】
上述したように、メタデータを用いればオブジェクトの細分化による問題は解決される。ただし、トラッピングのために、プリンティングシステム内では、中間データと一緒にメタデータを運用しなければならず、運用データ量の増大を考慮する必要がある。とくに、高速な出力を目的としてクラスタリングを行う大規模なプリンティングシステムにおいて、出力装置内または出力装置につながったプリンティングサーバ113において、オブジェクト結合処理124を行えば、クラスタリングサーバ112からプリンティングサーバ113へ転送されるデータ量が増大し、データ転送時間が増加する。また、出力装置（プリンタ114）ごとに一台必要なプリンティングサーバ113に比べて、クラスタリングサーバ112は一台で済むため、高速に処理が可能な高速マシンを充当し易い。そこで、実施例2のように、クラスタリングサーバ112において、オブジェクト結合処理124を行えばデータ転送時間の増加を防ぐことができるし、処理負荷が大きいトラッピング前半処理125を行えばプリンティングサーバ113の処理負荷を軽減することができる。
【実施例３】
【００７４】
以下、本発明にかかる実施例3の画像処理を説明する。なお、実施例3において、実施例1、2と略同様の構成については、同一符号を付して、その詳細説明を省略する。
【００７５】
図23はクラスタリングサーバ112の処理例を示すフローチャート図である。図23において、図21と同様の処理には同一符号を付して、その詳細説明を省略する。
【００７６】
ステップ2402のトラッピング設定123において、トラッピング処理の分散が指示可能である。つまり、プリンティングサーバ113に充分に高速な処理が期待できる場合はトラッピング処理の全体をプリンティングサーバ113に行わせてもよく、トラッピング処理を分散するか否かをトラッピング設定123で設定可能にすれば、プリンティングシステムにより自由度を与えることができる。
【００７７】
そこで、クラスタリングサーバ112は、トラッピング処理の分散が設定されているか否かを判定し(S2408)、設定されていればトラッピング前半処理124を行わずに、中間データのみをプリンティングサーバ113へ送信する(S2407)。
【００７８】
プリンティングサーバ113は、中間データを受信すると(S2411)、全トラッピング処理を行うか否かを判定する(S2415)。この判定は、例えば中間データのヘッダにトラッピング前半処理125の処理済/未処理を示すフラグを用意し、このフラグが立っている（処理済み）か否かで行う。つまり、当該フラグが立っていればトラッピング後半処理126を行い(S2412)を行い、当該フラグが立っていなければ全トラッピング処理を行う(S2416)。
【００７９】
［他の実施例］
なお、本発明は、複数の機器（例えばホストコンピュータ、インタフェイス機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。
【００８０】
また、本発明の目的は、前述した実施例の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施例の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
【００８１】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれることは言うまでもない。
【００８２】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
【図面の簡単な説明】
【００８３】
【図１】PDLデータをアプリケーションから出力する方法を示す図、
【図２】PDLデータで一つのオブジェクトだったものが、中間データでは複数のオブジェクトとして表現される場合を説明する図、
【図３】データの細分化をデータの構成で表す図、
【図４】トラッピング処理が画像品位の低下をもたらす様子を示す図、
【図５Ａ】中間データに対するメタデータを示す図、
【図５Ｂ】中間データに対するメタデータを示す図、
【図５Ｃ】中間データに対するメタデータを示す図、
【図６】メタデータを用いる処理を説明する図、
【図７】画像処理装置の基本的な構成例を示すブロック図、
【図８】高速な出力を目的としてクラスタリングを行うプリンティングシステムの構成例を示すブロック図、
【図９】アプリケーションが搭載するデータコンバートモジュールを使用してPDLデータに変換する方法を示すフローチャート、
【図１０】OSに用意されたPDLドライバを利用してPDLデータに変換する方法を示すフローチャート、
【図１１】PDLデータをレンダリング用の中間データへ変換する処理例を示すフローチャート、
【図１２】メタデータが存在するPDLデータに対するトラッピング処理を説明するフローチャート、
【図１３】メタデータが存在する中間データに対するトラッピング処理を説明するフローチャート、
【図１４】プリンティングシステムを示すブロック図、
【図１５】トラッピング処理を含む印刷処理の流れを示す図、
【図１６】トラッピング処理の構成を示す図、
【図１７】交点検出処理を説明する図、
【図１８】ベース輪郭検出処理を説明する図、
【図１９Ａ】トラップエリア作成処理を示す図、
【図１９Ｂ】トラップエリア作成処理を示す図、
【図１９Ｃ】トラップエリア作成処理を示す図、
【図２０】色のパラーメータの違いによるトラップカラーの違いを示す図、
【図２１】実施例2のクラスタリングサーバおよびプリンティングサーバの処理例を示すフローチャート図、
【図２２】プリンティングサーバへ送信される中間データを示す図、
【図２３】実施例3のクラスタリングサーバおよびプリンティングサーバの処理例を示すフローチャート図、
【図２４】細分化されたオブジェクトを結合する一方法を示す図である。
【図１】
2006048538.tif 000003
【図２】
2006048538.tif 000004
【図３】
2006048538.tif 000005
【図４】
2006048538.tif 000006
【図５Ａ】
2006048538.tif 000007
【図５Ｂ】
2006048538.tif 000008
【図５Ｃ】
2006048538.tif 000009
【図６】
2006048538.tif 000010
【図７】
2006048538.tif 000011
【図８】
2006048538.tif 000012
【図９】
2006048538.tif 000013
【図１０】
2006048538.tif 000014
【図１１】
2006048538.tif 000015
【図１２】
2006048538.tif 000016
【図１３】
2006048538.tif 000017
【図１４】
2006048538.tif 000018
【図１５】
2006048538.tif 000019
【図１６】
2006048538.tif 000020
【図１７】
2006048538.tif 000021
【図１８】
2006048538.tif 000022
【図１９Ａ】
2006048538.tif 000023
【図１９Ｂ】
2006048538.tif 000024
【図１９Ｃ】
2006048538.tif 000025
【図２０】
2006048538.tif 000026
【図２１】
2006048538.tif 000027
【図２２】
2006048538.tif 000028
【図２３】
2006048538.tif 000029
【図２４】
2006048538.tif 000030