(57)【要約】【課題】オブジェクト同士が重なり合う部分を正しく色再現でき、かつ、それら重なるオブジェクトから重なる部分を削除する方式よりも計算負荷を低減する。【解決手段】オブジェクト１０２の第４象限がオブジェクト１００の第２象限にノックアウトで重なり、オブジェクト１０４の第４象限がオブジェクト１０２の第２象限にオーバープリントで重なっている場合を例にとる。この場合、オーバープリントの重畳部分１０８について、その位置、形状及びサイズを表す幾何学的情報を求め、オーバープリント方式に従ってその重畳部分１０８の色値を求める。そして、その幾何学的情報及び色値を持つ追加のオブジェクトを生成し、このオブジェクトを、元のオブジェクト１００，１０２，及び１０４を含むページの中間データに対し、その重畳部分１０８の上に重なるよう、ノックアウト指定で追加する。この追加の後の中間データが、プリンタの特性に合わせて色変換される。【選択図】図３
2014060592.tif 000002
【特許請求の範囲】
【請求項１】
幾何学的情報と色値とで表現されるオブジェクトで構成される画像データから複数のオブジェクトが重畳する部分を検出する重畳部分検出手段と、
前記重畳部分検出手段が検出した複数のオブジェクトが重畳する部分について、当該重畳する部分の重畳処理方式に従って、当該複数のオブジェクトの色値から、当該重畳する部分の色値を算出する色値算出手段と、
前記重畳部分検出手段で検出した複数のオブジェクトが重畳する部分と前記色値算出手段が算出した色値とから新たなオブジェクトを生成するオブジェクト生成手段と、
前記オブジェクト生成手段が生成したオブジェクトを前記複数のオブジェクトが重畳する部分にノックアウト方式で重ねるように制御する制御手段と、
を備える画像処理装置。
【請求項２】
前記画像データ内のオブジェクトおよび前記オブジェクト生成手段が生成したオブジェクトに対してそれぞれ、印刷装置の色空間に合わせるための色変換を行い、色変換済みの前記画像データ、および前記オブジェクト生成手段が生成したオブジェクトの色変換結果、を出力する色変換手段、を更に備える請求項１に記載の画像処理装置。
【請求項３】
前記画像データは、複数のページを含み、前記複数のページの各々は、前記複数のページ同士の間で同一の定型オブジェクトと、前記複数のページ同士の間で同一でない非定型オブジェクトと、を含み、前記定型オブジェクトと前記非定型オブジェクトとは重畳する部分を有し、
前記画像処理装置は、
前記色変換手段から出力された色変換済みの画像データをラスターデータに変換するラスター変換手段と、
前記複数のページのうちの最初のページについて、前記ラスター変換手段による前記定型オブジェクトの変換結果をキャッシュするキャッシュ手段と、
を更に備え、
前記ラスター変換手段は、
前記複数のページのうちの最初のページについては、前記定型オブジェクト、前記非定型オブジェクト、及び、前記定型オブジェクトと前記非定型オブジェクトとの重畳する部分について前記オブジェクト生成手段が生成した重畳部分オブジェクト、をラスターデータに変換し、前記定型オブジェクトの変換結果のラスターデータと前記非定型オブジェクトの変換結果のラスターデータとを重畳し、この重畳結果に対して前記重畳部分オブジェクトの変換結果のラスターデータをノックアウト方式で重畳すると共に、前記ラスター変換手段による前記定型オブジェクトの変換結果のラスターデータを前記キャッシュ手段にキャッシュし、
前記複数のページのうちの２番目以降のページについては、前記キャッシュ手段からキャッシュされた前記定型オブジェクトのラスターデータを取得し、取得した前記定型オブジェクトのラスターデータと、前記非定型オブジェクトを変換して得たラスターデータとを重畳し、この重畳結果に対して、前記重畳部分オブジェクトを変換して得たラスターデータをノックアウト方式で重畳する、
ことを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
コンピュータを、
幾何学的情報と色値とで表現されるオブジェクトで構成される画像データから複数のオブジェクトが重畳する部分を検出する重畳部分検出手段、
前記重畳部分検出手段が検出した複数のオブジェクトが重畳する部分について、当該重畳する部分の重畳処理方式に従って、当該複数のオブジェクトの色値から、当該重畳する部分の色値を算出する色値算出手段、
前記重畳部分検出手段で検出した複数のオブジェクトが重畳する部分と前記色値算出手段が算出した色値とから新たなオブジェクトを生成するオブジェクト生成手段、
前記オブジェクト生成手段が生成したオブジェクトを前記複数のオブジェクトが重畳する部分にノックアウト方式で重ねるように制御する制御手段、
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置及びプログラムに関する。
【背景技術】
【０００２】
下地のオブジェクトに対して別のオブジェクトが重畳する場合の印刷画像処理として、ノックアウト（「ケヌキ」とも呼ばれる）、オーバープリント（「ノセ」とも呼ばれる）、透明処理、が知られている。両オブジェクトが重畳した部分の色値は、ノックアウトでは重畳する（すなわち上側の）オブジェクトの色値となり、下地オブジェクトの色値は反映されないのに対し、オーバープリントや透明処理では、両オブジェクトの色値を反映した値となる。
【０００３】
印刷を行う場合、印刷データ中で指定された色値を、印刷装置の色空間に適合した（すなわち印刷装置の色再現特性を反映した）色値に色変換した上で、印刷装置に供給する。
【０００４】
しかし、この色変換は線形ではない。このため、オブジェクト同士がオーバープリント又は透明処理により重なり合う部分の色は、それらオブジェクトを個別に色変換して重ね合わせた場合と、色変換前に重ね合わせた色を色変換した場合とで、異なるものとなることが一般的である。
【０００５】
この種の問題に対処するために、従来、各オブジェクトをラスター画像に変換して重ね合わせ、このラスター画像に対して色変換等の処理を施す方法が行われている（例えば特許文献１〜４）。
【０００６】
特許文献５には、透明成分を含む画像形成を高品質に且つ迅速に行うための手法が開示されている。この手法は、画像情報から第１のオブジェクトを生成する工程と、前記第１のオブジェクトにその少なくとも一部が重ね合わされ透明成分を含む第２のオブジェクトを前記画像情報から生成する工程と、前記第１のオブジェクト及び前記第２のオブジェクトが重ね合わされた状態から、これら第１のオブジェクト及び第２のオブジェクトが相互に重なり合っている部分に対応する重合オブジェクトとそれ以外の部分に対応する残余オブジェクトとを生成する工程とを含む。この手法は、画像に変換せずにオブジェクトのままで取り扱うものであり、元の２つのオブジェクトが重なり合った部分のオブジェクトと、それら元の２つのオブジェクトからそれぞれその重なり合った部分を除いたオブジェクトとを生成している。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１２−０１４５８６号公報
【特許文献２】特開２００７−０８２０６５号公報
【特許文献３】特開２００６−３４５０９７号公報
【特許文献４】特開２００６−３０４６７９号公報
【特許文献５】特開２００５−１０９９８７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、オブジェクト同士が重なり合う部分を正しく色再現でき、かつ、それら重なるオブジェクトから重なる部分を削除する方式よりも計算負荷が低い手法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
請求項１に係る発明は、幾何学的情報と色値とで表現されるオブジェクトで構成される画像データから複数のオブジェクトが重畳する部分を検出する重畳部分検出手段と、前記重畳部分検出手段が検出した複数のオブジェクトが重畳する部分について、当該重畳する部分の重畳処理方式に従って、当該複数のオブジェクトの色値から、当該重畳する部分の色値を算出する色値算出手段と、前記重畳部分検出手段で検出した複数のオブジェクトが重畳する部分と前記色値算出手段が算出した色値とから新たなオブジェクトを生成するオブジェクト生成手段と、前記オブジェクト生成手段が生成したオブジェクトを前記複数のオブジェクトが重畳する部分にノックアウト方式で重ねるように制御する制御手段と、を備える画像処理装置である。
【００１０】
請求項２に係る発明は、前記画像データ内のオブジェクトおよび前記オブジェクト生成手段が生成したオブジェクトに対してそれぞれ、印刷装置の色空間に合わせるための色変換を行い、色変換済みの前記画像データ、および前記オブジェクト生成手段が生成したオブジェクトの色変換結果、を出力する色変換手段、を更に備える請求項１に記載の画像処理装置である。
【００１１】
請求項３に係る発明は、前記画像データは、複数のページを含み、前記複数のページの各々は、前記複数のページ同士の間で同一の定型オブジェクトと、前記複数のページ同士の間で同一でない非定型オブジェクトと、を含み、前記定型オブジェクトと前記非定型オブジェクトとは重畳する部分を有し、前記画像処理装置は、前記色変換手段から出力された色変換済みの画像データをラスターデータに変換するラスター変換手段と、前記複数のページのうちの最初のページについて、前記ラスター変換手段による前記定型オブジェクトの変換結果をキャッシュするキャッシュ手段と、を更に備え、前記ラスター変換手段は、前記複数のページのうちの最初のページについては、前記定型オブジェクト、前記非定型オブジェクト、及び、前記定型オブジェクトと前記非定型オブジェクトとの重畳する部分について前記オブジェクト生成手段が生成した重畳部分オブジェクト、をラスターデータに変換し、前記定型オブジェクトの変換結果のラスターデータと前記非定型オブジェクトの変換結果のラスターデータとを重畳し、この重畳結果に対して前記重畳部分オブジェクトの変換結果のラスターデータをノックアウト方式で重畳すると共に、前記ラスター変換手段による前記定型オブジェクトの変換結果のラスターデータを前記キャッシュ手段にキャッシュし、前記複数のページのうちの２番目以降のページについては、前記キャッシュ手段からキャッシュされた前記定型オブジェクトのラスターデータを取得し、取得した前記定型オブジェクトのラスターデータと、前記非定型オブジェクトを変換して得たラスターデータとを重畳し、この重畳結果に対して、前記重畳部分オブジェクトを変換して得たラスターデータをノックアウト方式で重畳する、ことを特徴とする請求項１又は２に記載の画像処理装置である。
【００１２】
請求項４に係る発明は、コンピュータを、幾何学的情報と色値とで表現されるオブジェクトで構成される画像データから複数のオブジェクトが重畳する部分を検出する重畳部分検出手段、前記重畳部分検出手段が検出した複数のオブジェクトが重畳する部分について、当該重畳する部分の重畳処理方式に従って、当該複数のオブジェクトの色値から、当該重畳する部分の色値を算出する色値算出手段、前記重畳部分検出手段で検出した複数のオブジェクトが重畳する部分と前記色値算出手段が算出した色値とから新たなオブジェクトを生成するオブジェクト生成手段、前記オブジェクト生成手段が生成したオブジェクトを前記複数のオブジェクトが重畳する部分にノックアウト方式で重ねるように制御する制御手段、として機能させるためのプログラムである。
【発明の効果】
【００１３】
請求項１、２又は４に係る発明によれば、オブジェクト同士が重なり合う部分を正しく色再現でき、かつ、それら重なるオブジェクトから重なる部分を削除する方式よりも計算負荷を低くすることができる。
【００１４】
請求項３に係る発明によれば、定型オブジェクトのラスターデータの生成を繰り返す必要がなくなる。
【図面の簡単な説明】
【００１５】
【図１】実施形態のシステム構成の例を示す図である。
【図２】実施形態の処理の概要を説明するための図である。
【図３】実施形態の処理の概要を説明するための図である。
【図４】重なり処理部の処理手順の一例を示す図である。
【図５】変形例のシステム構成の例を示す図である。
【図６】変形例の中間データ処理部の処理手順の一例の一部を示す図である。
【図７】変形例の中間データ処理部の処理手順の一例の残りの部分を示す図である。
【図８】変形例のラスター生成部の処理手順の一例を示す図である。
【発明を実施するための形態】
【００１６】
以下、図面を参照して、本発明の好適な実施形態を説明する。図１は、本実施形態のコントローラ１０の構成を示している。コントローラ１０は、ホストコンピュータ等からＰｏｓｔＳｃｒｉｐｔ（登録商標）やＰＤＦ（Portable Document Format）等のＰＤＬ（Page Description Language：ページ記述言語）で記述された印刷データを受け取り、この印刷データをプリンタ３０が取扱可能なラスター画像データに変換する装置である。
【００１７】
コントローラ１０内の中間データ生成部１２は、ＰＤＬで記述された印刷データを、ＰＤＬとラスター画像データとの中間のデータ形式である中間データに変換する。
【００１８】
中間データの形式は特に限定されない。既存の、又はこれから開発される中間データ形式を用いればよい。
【００１９】
例えば１つの例として、ＰＤＬで記述されたオブジェクトを、ラスター画像データにおけるラスター走査線に平行な辺とそれに垂直な辺とで囲まれた複数の矩形の微小オブジェクトの集まりとして表現する方式がある。この方式を「ランリスト」形式と呼び、矩形の微小オブジェクトのことを「ラン」と呼ぶ。この方式では、中間データの個々のランは、そのランの形状及び大きさを表す情報（例えばランすなわち矩形の対角線上の２頂点の座標のペア）と、そのランの画素値属性を含む。画素値属性は、例えば、そのランが文字やグラフィックスの場合は画素値（例えば濃度値）であり、連続調イメージの場合はそのランにマップされるイメージ（すなわちこの例ではイメージ本体は別の場所に記憶されている）のアドレス等である。
【００２０】
また、ランリスト形式の中間データには、それらランを束ねた１つのオブジェクトの属性情報として、当該オブジェクトの種類（文字、グラフィックス、連続調イメージ等）を示す情報や、下地のオブジェクトに対する当該オブジェクトの重ね方（ノックアウト／オーバープリント／透明処理）を示す情報、当該オブジェクトのバウンディングボックスを特定する情報等が含まれる。なお、オブジェクト種類やオーバープリントの有無等の属性は、そのオブジェクト内の個々のランのデータに含めてもよい。バウンディングボックスは、当該オブジェクトを内包する矩形（各辺がページの縦・横方向に平行なもの）の領域であり、例えばＰＤＬデータ内には当該オブジェクトの属性情報としてバウンディングボックスを特定する情報（例えばバウンディングボックスの左上と右下の頂点の座標）が設定されている。このようなＰＤＬデータ内のバウンディングボックスの情報を、中間データ内に取り込めばよい。
【００２１】
ランリスト形式はあくまで一例に過ぎず、ディスプレイリスト等のような他の形式を用いてももちろんよい。中間データは、ページ内に含まれる各オブジェクト（当該中間データのデータ形式で規定されるオブジェクトであり、ＰＤＬデータのオブジェクトと同一でなくてもよい）につき、そのオブジェクトの幾何学的情報（すなわちオブジェクトの形状、サイズ及びページ内の位置を表す情報）と色値（画素値）を規定するようなものであればよい。どのような形式を用いるにしても、中間データ形式はＰＤＬよりもラスター形式に近いので、ＰＤＬを直接取り扱うよりも、オブジェクト同士の重なり部分の幾何学的情報の計算などが高速で実行できる。
【００２２】
中間データ生成部１２は、ＰＤＬの印刷データから、例えば、色版（例えばＣ，Ｍ，Ｙ，Ｋの各版）ごとに分版した中間データを生成する。
【００２３】
中間データ生成部１２から出力される、例えばページごとの各色版の中間データは、中間データ処理部１４に入力される。中間データ処理部１４は、この中間データに対してフラットニング処理、及び、プリンタ３０の色空間に合わせるための色変換処理を施す。
【００２４】
フラットニング処理は、複数のオブジェクトが重畳する部分についての色値を、それら個々のオブジェクトの色値から決定する処理である。フラットニングの際の重畳部分の色値の求め方は、それらオブジェクト同士の重なり方（ノックアウト、オーバープリント、透明処理、等）により決まる。例えば、ノックアウトの場合は、上に重なるオブジェクトの色値が重畳部分の色値として採用され、下地のオブジェクトの色値は重畳部分には反映されない。これに対し、オーバープリント及び透明処理の場合は、下地のオブジェクトの色が重畳部分の色に反映される。オーバープリントと透明処理の違いは、前者は、上側のオブジェクトが値を持たない（すなわち濃度値が０の）色版についてのみ、重畳部分に下地のオブジェクトの濃度値が反映されるのに対し、後者は、上側のオブジェクトが値を持つ（すなわち濃度値が０より大きい）色版についても、重畳部分に下地のオブジェクトの濃度値が反映されるという点である。すなわち、オーバープリント及び透明処理での重畳部分の色値の決定方法としては、例えば次のものが知られている。すなわち、オーバープリントの場合、上側のオブジェクトの濃度値が０である色版については、重畳部分の濃度値として、下地のオブジェクトの濃度値が採用され、上側のオブジェクトの濃度値が０より大きい色版については、当該上側のオブジェクトの濃度値が採用される。透明処理の場合は、（上側のオブジェクトの濃度値が０であるか否かによらず）色版毎に、下地のオブジェクトの濃度値と上側のオブジェクトの濃度値とを、加色法での値に変換してから乗算し、乗算結果を減色法の濃度値に変換することで、重畳部分の濃度値を求める（ただしこれは中間データの色値が減色法のものである場合である。加色法の色値であれば、変換は不要）。もちろん、オーバープリント及び透明処理は、この例に限るものではない。別の例として、オーバープリント又は透明処理では、下地及び上側のオブジェクトに対してそれぞれ混合比率を設定しておき、その混合比率に応じてそれら上下のオブジェクトの色を重み付け加算した結果を、フラットニング結果の色値としてもよい。いずれにしても、オーバープリント及び透明処理は、重畳部分の色に下地のオブジェクトの色が反映されるという共通点において、ノックアウトとは異なる。
【００２５】
中間データ処理部１４は、このフラットニング処理、及び色変換を中間データのレベルで実施する。すなわち、中間データ処理部１４は、入力された中間データを処理して、フラットニング済み且つ色変換済みの中間データを出力する。このような処理のために中間データ処理部１４は、重なり処理部１６と色変換部１８を備える。
【００２６】
重なり処理部１６は、中間データのままでオブジェクト同士のフラットニング処理を行う手段である。より具体的には、重なり処理部１６は、入力された中間データにおけるオブジェクト同士が重畳する部分を表す新たなオブジェクトを生成し、ノックアウト指定で追加する。
【００２７】
この処理の考え方を、図２及び図３を用いて説明する。
【００２８】
図２は、３つのオブジェクトの重なり状態の例を示す。この例では、あるページにおいて、図２左側に示した３つの正方形のオブジェクト１００、１０２、及び１０４が、右側に示したように重なり合っている。この例では、オブジェクト１００の第２象限（左上の１／４）部分にオブジェクト１０２の第４象限部分（右下の１／４）がノックアウト指定で重なり、オブジェクト１０２の第２象限部分にオブジェクト１０４の第４象限部分がオーバープリント（又は透明処理）指定で重なっている。この例では、オブジェクト１００の上にオブジェクト１０２が重畳した部分１０６の色は、ノックアウト指定であるためにオブジェクト１０２と同じ色となる。これに対し、オブジェクト１０２の上にオブジェクト１０４が重畳した部分１０８は、オーバープリント指定であるために、上側のオブジェクト１０４の色に対して下地のオブジェクト１０２の色を反映した色となり、上側のオブジェクト１０４とも下地のオブジェクト１０２とも異なる色となる。このため、後のフラットニングの際の色変換において、上側のオブジェクト１０４と下地のオブジェクト１０２をそれぞれ個別に色変換した結果をオーバープリント（又は透明処理）方式で合成して得られる色は、色変換の非線形性のために、色変換前に合成した色に対して色変換した場合に得られる色とは異なるものとなる。
【００２９】
そこで、重なり処理部１６は、３つのオブジェクト１００、１０２及び１０４が図２右側に示した重なり方をしている中間データが入力された場合、図３に示すように、オーバープリント（又は透明処理）方式で重畳した部分１０８を表す新たなオブジェクト１１０を生成する。このオブジェクト１１０は、その重畳した部分１０８の色値及び幾何学的情報（形状、サイズ及びページ内での位置を表す情報）、を有する中間データ形式のオブジェクトである。そして、この生成したオブジェクト１１０を、元の２つのオブジェクト１０２及び１０４の重畳する部分１０８の上に重なるように、ノックアウト指定で、当該ページの中間データに挿入する。この新たなオブジェクト１１０は、元の２つのオブジェクト１０２及び１０４の色同士を、指定されたオーバープリント又は透明処理式で合成した色を持つので、これにフラットニングの際に色変換を施した結果は、当然ながら正しい色となる。
【００３０】
なお、オブジェクト１００と１０２がノックアウト指定で重なる部分１０６は、上側のオブジェクト１０２の色と同じ色なので、オーバープリントや透明処理の場合に起こる色変換の問題はそもそも生じない。したがって、ノックアウト指定で重なる部分１０６については、その部分１０６を表すオブジェクトを生成することはしない。
【００３１】
図４に、重なり処理部１６の処理手順の一例を示す。この手順は、例えば中間データ生成部１２から入力される中間データについて、１ページごとに実行される。この手順では、まず、そのページの中間データから、オブジェクト同士が重畳する部分を検出する（Ｓ１０）。中間データには、ページ内の各オブジェクトの幾何学的情報が含まれているので、その幾何学的情報同士を比較することで、オブジェクト同士が重畳する部分の幾何学的情報が求められる。例えば、オブジェクトが矩形の場合は、重なり合う各矩形オブジェクトの左上隅と右下隅の２頂点の座標から、それら両方の矩形オブジェクトの重畳部分である矩形の左上隅と右下隅の２頂点が求められる。
【００３２】
ここで、中間データ内に各オブジェクトのバウンディングボックスの情報が含まれている場合には、まずバウンディングボックス同士が重なるかどうかを判定し、重なる場合にのみ、その中にあるオブジェクト同士の重畳する部分（の有無、及び重畳する部分がある場合にはその幾何学的情報）を詳細に計算するようにしてもよい。バウンディングボックス同士が重なり合わない場合には、その中にあるオブジェクト同士は重なり合わないので、オブジェクト同士の重畳の有無を検査する必要はない。
【００３３】
このようにして、ページ内に存在する、オブジェクト同士の重畳する部分（以下「重畳部分」と呼ぶ）が抽出されると、それら重畳部分ごとに、Ｓ１２〜Ｓ１６の処理が実行される。
【００３４】
Ｓ１２では、当該重畳部分におけるオブジェクト同士の重なり方が、オーバープリント又は透明処理であるか否かを判定する。重なり方がノックアウトの場合は、この判定の結果は否定（Ｎ）となる。この場合、重なり処理部１６は、その重畳部分については、Ｓ１４及びＳ１６の処理をスキップし、処理を終了する。
【００３５】
一方、重なり方がオーバープリント又は透明処理である場合には、Ｓ１４で、その重畳部分の色値を計算する。すなわち、Ｓ１４では、重畳部分のフラットニングを行う。このフラットニング処理では、その重畳部分を構成する上下のオブジェクトの色値を、それらオブジェクトの重なり方（オーバープリント又は透明処理）に応じた計算式に適用することで、その重畳部分の色値を求めればよい。
【００３６】
そして、重なり処理部１６は、Ｓ１０で求めた当該重畳部分の幾何学的情報と、Ｓ１４で求めた当該重畳部分の色値とを持つ、中間データ形式のオブジェクトを生成し、そのオブジェクトを、当該重畳部分の上に重なる指定で、且つノックアウト指定で、当該ページの中間データに挿入する（Ｓ１６）。
【００３７】
以上のＳ１４及びＳ１６の処理により、オーバープリント又透明処理指定の１つの重畳部分を表す新たなオブジェクトが追加されることとなる。
【００３８】
以上では、２つのオブジェクトが重畳する場合を例にとって説明したが、重なり順が下のオブジェクトから順に２オブジェクトずつの重なり部分を処理していくことで、３つ以上のオブジェクトが重畳する部分についても対応可能である。すなわち、３つ以上のオブジェクトが重畳する部分については、まずそれらオブジェクトの重なり順に従って、最も下から順に第１及び第２のオブジェクトを選び、それら２つの重畳部分についてＳ１２〜Ｓ１６の処理を行う。ここで、Ｓ１４及びＳ１６を実行する場合には、重畳部分を表す新たなオブジェクトを、上記重なり順において第２のオブジェクトのすぐ上の第３のオブジェクトとの間に、ノックアウト指定で追加する。次に、この新たに追加したオブジェクトと第３のオブジェクトとを対象にＳ１２〜Ｓ１６の処理を行い、この結果それら２つのオブジェクトの重畳部分を表す新たなオブジェクトを生成した場合には、これを上記重なり順において第３のオブジェクトと、その第３のオブジェクトのすぐ上の第４のオブジェクトとの間にノックアウト指定で追加する。以上の処理を、重なり順において最下層から最上層のオブジェクトへと順に繰り返すことで、３つ以上のオブジェクトが重なる部分が処理できる。
【００３９】
なお、図４の例では、Ｓ１０で重畳部分を求めてから、Ｓ１２でその重畳部分におけるオブジェクト同士の重なり方がオーバープリント又は透明処理であるか、それともノックアウトであるかを判定したが、これは一例に過ぎない。この代わりに、まず、オブジェクトに付された重なり方の指定を調べ、ノックアウトが指定されているオブジェクトについては、重なり順においてその下に位置するオブジェクトと重なるかどうかを検査せず、それらオブジェクト同士の重畳部分を計算しないようにしてもよい。この場合、オブジェクト同士がオーバープリント又は透明処理で重畳する部分のみについて、その幾何学的情報が計算されることになる。そして、これら重畳部分について、Ｓ１４及びＳ１６の処理を実行すればよい。
【００４０】
図１の説明に戻る。重なり処理部１６の処理結果の中間データは、色変換部１８に入力される。色変換部１８は、その中間データに対して、プリンタ３０の色空間に合わせるための色変換を実行する。すなわち、色変換部１８に入力される中間データは、元の印刷データを作成した環境の色空間で表されたデータであるが、色変換部１８は、プリンタ３０での印刷結果の色が、元の印刷データをその元の環境で再現した場合の色と視覚的できるだけ近い色となるよう、その中間データの色値をプリンタ３０の色再現特性に合わせた色値へと変換するのである。印刷データとプリンタ３０とで表色系（ＲＧＢ、ＣＭＹＫ等）が異なる場合は、この色変換では表色系の変換もあわせて行われる。
【００４１】
色変換部１８は、入力される中間データの各オブジェクトの色値属性に対して色変換を行う。したがって、色変換部１８からは、色変換済みの中間データが出力される。
【００４２】
色変換部１８から出力されるフラットニング済み、色変換済みの中間データは、ラスター生成部２０に入力される。ラスター生成部２０は、その中間データからラスター画像を生成する。このラスター画像への変換は、既存の技術と同じ技術を用いて行えばよい。このラスター画像の生成処理では、オブジェクト同士の重畳部分の各画素については、指定された重なり方に応じた求め方で、その重畳部分の画素値を計算する。
【００４３】
例えば図２及び図３の例では、下から順にまずオブジェクト１００がラスター化（ラスタライズ）され、次に下から２番目のオブジェクト１０２がラスター化される。このオブジェクト１０２のラスター化では、オブジェクト１０２はノックアウト指定なので、下地のオブジェクト１００のうちそれら両オブジェクトの重畳部分１０６に該当する部分の画素にはオブジェクト１０２の色値が上書きされる。次に、オブジェクト１０４がラスター化される。ここで、オブジェクト１０４はオーバープリント指定なので、オブジェクト１０２と１０４の重畳部分１０８の各画素の色値は、それら両オブジェクトの色値を反映したものとなる。ただし、この段階でのその重畳部分１０８の色値は、各オブジェクト１０２及び１０４の色をそれぞれ個別に色変換し、合成したものなので、元の印刷データで表されるその重畳部分１０８の色からある程度ずれている可能性がある。これに対し、この実施形態では、そのオブジェクト１０４の上に、新たに追加したオブジェクト１１０がノックアウト指定で追加されている。このオブジェクト１１０の色値は、元の２つのオブジェクト１０２及び１０４をオーバープリントで重畳した場合の色値を求め、この色値を色変換したものなので、元の印刷データで表されるその重畳部分１０８の色と同等の色を表すものとなっている。このオブジェクト１１０をノックアウト指定でラスター化することで、重畳部分１０８の上に、正しい色値が上書きされることとなる。これにより、オーバープリント部分についても正しい色を持つラスター画像が得られる。
【００４４】
以上に説明した中間データ処理部１４及びラスター生成部２０の処理は、例えば、ページごと、色版ごとに行えばよい。
【００４５】
ラスター生成部２０により生成されたラスターデータは、出力部２２を介してプリンタ３０に供給される。プリンタ３０は、そのラスターデータに従って印刷機構（例えば電子写真方式、あるいはインクジェット方式のプリントエンジン）を制御することで、そのラスターデータに応じた画像を用紙上に印刷する。
【００４６】
以上に説明したように、本実施形態では、オブジェクト同士の重畳部分を表す新たなオブジェクトを生成し、それらオブジェクトの上にノックアウト指定で追加する。これにより、ノックアウト指定されたその新たなオブジェクトが元のオブジェクト同士の重畳部分に上書きされるので、元の２つのオブジェクトからその重畳部分を切り取っておく等の変更を行う必要がない。
【００４７】
次に、上記実施形態の変形例を説明する。この変形例は、定型のフォームを用いた可変印刷に対応するものである。図５は、この変形例のシステム構成を示す。
【００４８】
図５に示すコントローラ１０は、図１に例示したコントローラ１０に対し、ラスター生成部２０に接続されたフォーム記憶部２４を追加したものである。図１と同様の構成要素には図１と同じ符号を付す。
【００４９】
この例では、入力されるＰＤＬの印刷データには、文書間で共通のフォームと文書ごとに異なる可変データとを含んだページが複数含まれている。一般に、可変データとフォームとはページ上で部分的に重なり合っている。この変形例では、同じフォームを用いる複数の文書を印刷する場合に、そのフォームのラスターデータを一度作成してキャッシュしておき、再利用する。
【００５０】
フォーム及び可変データは、それぞれ１つ以上のオブジェクトを含んでいる。複数のフォームが用いられる場合には、各フォームに一意な識別子（「フォームＩＤ」と呼ぶ）を割り当ててもよい。この場合、ＰＤＬの印刷データ内のフォームのデータには、当該フォームを特定するフォームＩＤが含まれ、中間データ生成部１２がその印刷データから生成する中間データにもフォームＩＤが引き継がれる。
【００５１】
この変形例における中間データ処理部１４の処理手順の一例を図６及び図７に示す。図６及び図７の手順は、中間データ生成部１２から入力される１ページ分の中間データごとに実行される。この手順では、まず、中間データ内のそのページ内にフォームが含まれるか否かを判定する（Ｓ２０）。
【００５２】
フォームが含まれない場合には、中間データ処理部１４は上記実施形態と同様の処理を行う。すなわち、重なり処理部１６が図４の処理手順を実行し（Ｓ２２）、その処理の結果に対して色変換部１８が色変換を実行し（Ｓ２４）、色変換後の当該ページの中間データをラスター生成部２０へと出力する（Ｓ２６）。
【００５３】
フォームが含まれる場合には、中間データ処理部１４はそのフォームが既にフォーム記憶部２４内にキャッシュ済みであるかどうかを判定する（Ｓ２８）。これには、例えば、中間データ処理部１４が、先頭のページから順に処理を進めていく中でフォームＩＤを検出した場合にそれが既に検出済みであるかどうかを判定し、検出済みでなければそのフォームＩＤに対応するフォームは未だキャッシュしていないと判定すると共に、そのフォームＩＤを検出済みのものとして記憶するようにすればよい。
【００５４】
Ｓ２８でフォームがキャッシュ済みでないと判定した場合は、まず重なり処理部１６が図４の処理手順を実行する（Ｓ３０）。この処理結果の中には、フォームに属するオブジェクトも含まれている。次に、重なり処理部１６の処理結果に対して色変換部１８が色変換を実行する（Ｓ３２）。
【００５５】
次に、中間データ処理部１４は、色変換部１８の出力した当該ページの色変換済みの中間データの中から、フォームに属するオブジェクト群を抽出する（Ｓ３４）。抽出したフォームのオブジェクト軍の中間データをフォームデータと呼ぶこととする。色変換済みの中間データの中には、図３の例から分かるように、フォームを構成する下地のオブジェクトが、重畳部分の切り取り等を受けることなく、印刷データ中で規定された形状のまま含まれているので、Ｓ３４ではそれらフォームのオブジェクトの中間データを取り出すのである。そして、中間データ処理部１４は、Ｓ３４で抽出したフォームデータと、Ｓ３２で色変換部１８が生成した色変換済みのページの中間データ（フォームのオブジェクトを含む）とを、ラスター生成部２０へと出力する（Ｓ３６）。
【００５６】
Ｓ２８でフォームがキャッシュ済みであると判定した場合には、図７に示すように、まず重なり処理部１６が図４の処理手順を実行する（Ｓ４０）。この処理結果の中には、フォームに属するオブジェクトも含まれている。次に、中間データ処理部１４は、この重なり処理部１６の処理結果の中から、フォームのオブジェクトを削除し（Ｓ４２）、削除後の残りの中間データ（これは可変データのオブジェクト群と、重なり処理部１６により新たに追加された重畳部分のオブジェクトとを含む）を色変換部１８に色変換させる（Ｓ４４）。そしてこの色変換結果の中間データをラスター生成部２０へと出力する（Ｓ４６）。
【００５７】
次に、図８を参照して、ラスター生成部２０の処理手順の例を説明する。ラスター生成部２０は、中間データ処理部１４から受け取ったデータにフォームデータが含まれるかを判定する（Ｓ５０）。フォームデータが含まれる場合、ラスター生成部２０は、そのフォームデータをラスター化し、その結果得られるフォームのラスターデータを、そのフォームデータに含まれるフォームＩＤに対応づけてフォーム記憶部２４に格納する（Ｓ５２）。そして、中間データ処理部１４から受け取ったデータに含まれるページの中間データ（このデータにはフォームも含まれる）を、メモリ内に確保された作業領域上にラスター化する（Ｓ５８）。ラスター化結果は出力部２２を介してプリンタ３０へと供給される。
【００５８】
受け取ったデータにフォームデータが含まれない場合、そのデータに含まれるページの中間データを調べ、そのページがフォームを用いるかどうかを判定する（Ｓ５４）。ここでは、ページの中間データにフォームＩＤ（及びフォームを使用する旨のコマンド）が含まれている場合、そのページはフォームを使用すると判定し、そうでない場合にはフォームを使用しないと判定する。
【００５９】
Ｓ５４でフォームを使用しないと判定した場合は、ラスター生成部２０は、中間データ処理部１４から受け取ったデータに含まれるページの中間データをラスター化し（Ｓ５８）、得られたラスターデータを出力部２２経由でプリンタ３０に供給する。
【００６０】
Ｓ５４でフォームを使用すると判定した場合は、ラスター生成部２０は、ページの中間データに含まれるフォームＩＤに対応する、フォームのラスターデータをフォーム記憶部２４から、メモリ上に確保した作業領域にコピーする（Ｓ５６）。そして、中間データ処理部１４から受け取ったデータに含まれるページの中間データをラスター化する（Ｓ５８）。ここで、中間データ処理部１４によるＳ４４の処理の結果、このページの中間データには、フォームのオブジェクトは含まれず、可変データのオブジェクトと、重なり処理部１６によりノックアウト指定で追加された重畳部分のオブジェクトとが含まれている。このため、Ｓ５８では、作業領域上に既に書き込まれているフォームの各オブジェクトのラスター画像上に、可変データのオブジェクトのラスターデータをそのオブジェクトの重なり方の指定に従って書き込み（すなわち、各画素の色値を決定する）、更にその上に、ノックアウト指定された重畳部分のオブジェクトのラスター画像を上書きする。このような処理により得られたラスターデータは、出力部２２を介してプリンタ３０へと出力される。
【００６１】
以上に説明したように、この変形例では、最初にフォームを用いるときにそのフォームをラスター化してフォーム記憶部２４にキャッシュしておき、２回目以降の使用では、キャッシュしておいたそのフォームのラスターデータを再利用する。したがって、２回目以降はフォームのラスター化処理の必要がない。
【００６２】
また、この変形例では、同じフォームの２回目以降の使用の際には、中間データ処理部１４が、重なり処理部１６の処理結果からフォームの部分を削除する。このため、フォームのオブジェクトに対しては色変換が行われず、色変換の処理負担が軽減される。
【００６３】
この変形例では、フォームが最初に使用されたページで、中間データ処理部１４がそのページの色変換結果の中間データからそのフォームのオブジェクト群をフォームデータとして抽出（Ｓ３４）してラスター生成部２０に転送したが、これは一例に過ぎない。この代わりに、フォームが最初に使用されるページについて、中間データ処理部１４はそのページを重なり処理部１６及び色変換部１８で処理し（この処理結果は、フォームを含んだ中間データである）、ラスター生成部２０が、その処理結果の中間データをラスター化する際、生成したフォームのラスターデータをフォーム記憶部２４にキャッシュするようにしてもよい。
【００６４】
以上に例示したコントローラ１０（特にその中の中間データ処理部１４）は、例えば、汎用のコンピュータに上述の各機能モジュールの処理を表すプログラムを実行させることにより実現される。ここで、コンピュータは、例えば、ハードウエアとして、ＣＰＵ等のマイクロプロセッサ、ランダムアクセスメモリ（ＲＡＭ）およびリードオンリメモリ（ＲＯＭ）等のメモリ（一次記憶）、ＨＤＤ（ハードディスクドライブ）を制御するＨＤＤコントローラ、各種Ｉ／Ｏ（入出力）インタフェース、ローカルエリアネットワークなどのネットワークとの接続のための制御を行うネットワークインタフェース等が、たとえばバスを介して接続された回路構成を有する。また、そのバスに対し、例えばＩ／Ｏインタフェース経由で、ＣＤやＤＶＤなどの可搬型ディスク記録媒体に対する読み取り及び／又は書き込みのためのディスクドライブ、フラッシュメモリなどの各種規格の可搬型の不揮発性記録媒体に対する読み取り及び／又は書き込みのためのメモリリーダライタ、などが接続されてもよい。上に例示した各機能モジュールの処理内容が記述されたプログラムがＣＤやＤＶＤ等の記録媒体を経由して、又はネットワーク等の通信手段経由で、ハードディスクドライブ等の固定記憶装置に保存され、コンピュータにインストールされる。固定記憶装置に記憶されたプログラムがＲＡＭに読み出されＣＰＵ等のマイクロプロセッサにより実行されることにより、上に例示した機能モジュール群が実現される。また、コントローラ１０のうちの一部又は全部の機能モジュールをハードウエア回路で構成してもよい。
＜補遺＞
なお、上記実施形態の一側面は、以下に示す画像処理装置と捉えてもよい。
各オブジェクトの幾何学的情報と色値で表現する中間データ内に、被重畳オブジェクトと重畳オブジェクトとの重畳部分の色値に被重畳オブジェクトの色値が反映される重畳方式で、被重畳オブジェクトに対して重畳オブジェクトを重畳する旨の指示がある場合に、前記重畳部分の幾何学的情報と、当該重畳方式に従った前記重畳部分の色値と、を計算し、計算した幾何学的情報及び色値を持つ追加オブジェクトをノックアウト方式で前記重畳部分に重畳する指示を前記中間データに追加する、オブジェクト追加手段と、
前記中間言語データ内の前記重畳オブジェクト、前記被重畳オブジェクト、及び前記追加オブジェクトの色値に対してそれぞれ、印刷装置の色空間に合わせるための色変換を行い、色変換済みの前記中間データを出力する色変換手段と、
を備える画像処理装置。
【符号の説明】
【００６５】
１０  コントローラ、１２  中間データ生成部、１４  中間データ処理部、１６  重なり処理部、１８  色変換部、２０  ラスター生成部、２２  出力部、２４  フォーム記憶部、３０  プリンタ、１００，１０２，１０４  オブジェクト、１０６，１０８  （オブジェクト同士の）重畳部分、１１０  （重畳部分を表す追加の）オブジェクト。
【図１】
2014060592.tif 000003
【図２】
2014060592.tif 000004
【図３】
2014060592.tif 000005
【図４】
2014060592.tif 000006
【図５】
2014060592.tif 000007
【図６】
2014060592.tif 000008
【図７】
2014060592.tif 000009
【図８】
2014060592.tif 000010