(57)【要約】【課題】キャッシュ利用可否の判断にかかる処理量あるいは処理時間を低減しつつ、できるだけキャッシュを利用する中間データを生成する。【解決手段】ページ判定部３２は、ＰＤＬデータに含まれる論理ページ毎に、特色が含まれるか否かを判定する。特色が含まれない論理ページに対しては、ページ解釈部３４は、キャッシュ対象要素以外のオブジェクトについて中間データ要素を生成する。一方、キャッシュ対象要素については、当該キャッシュ対象要素に対応するキャッシュＩＤを中間データに組み込む。キャッシュ要素解釈部３８は、キャッシュ対象要素についてのキャッシュデータを生成する。一方、特色が含まれる論理ページに対しては、ページ解釈部３４は、キャッシュ対象要素を含む全てのオブジェクトについての中間データ要素を生成する。つまり、ページ解釈部３４は、キャッシュＩＤを含まない中間データを生成する。【選択図】図２
2018125763.tif 000002
【特許請求の範囲】
【請求項１】
ページ記述言語で記述された文書データを解析し、前記文書データに含まれる論理ページ毎に特色が含まれるか否かを判定する判定部と、
各論理ページに含まれるキャッシュ対象要素を解釈して得られる解析結果をキャッシュ記憶部に記憶させるキャッシュ処理を実行するキャッシュ処理部と、
前記判定部により特色が含まれないと判定された論理ページについては、前記キャッシュ処理により前記キャッシュ記憶部に記憶された解析結果を参照するキャッシュ参照情報を含む中間データを生成し、前記判定部により特色が含まれると判定された論理ページについては、前記キャッシュ参照情報を含まない中間データを生成する中間データ生成部と、
を備えることを特徴とする印刷データ処理装置。
【請求項２】
前記判定部は、各論理ページに含まれ、当該論理ページ内に特色が含まれるか否かを示す情報を含むヘッダ情報を解析することで、各論理ページに特色が含まれるか否かを判定する、
ことを特徴とする請求項１に記載の印刷データ処理装置。
【請求項３】
前記キャッシュ処理部は、前記判定部により特色が含まれないと判定された論理ページに対して前記キャッシュ処理を実行し、前記判定部により特色が含まれると判定された論理ページに対しては前記キャッシュ処理を実行しない、
ことを特徴とする請求項１又は２に記載の印刷データ処理装置。
【請求項４】
コンピュータを、
ページ記述言語で記述された文書データを解析し、前記文書データに含まれる論理ページ毎に特色が含まれるか否かを判定する判定部と、
各論理ページに含まれるキャッシュ対象要素を解釈して得られる解析結果をキャッシュ記憶部に記憶させるキャッシュ処理を実行するキャッシュ処理部と、
前記判定部により特色が含まれないと判定された論理ページについては、前記キャッシュ処理により前記キャッシュ記憶部に記憶された解析結果を参照するキャッシュ参照情報を含む中間データを生成し、前記判定部により特色が含まれると判定された論理ページについては、前記キャッシュ参照情報を含まない中間データを生成する中間データ生成部と、
として機能させることを特徴とする印刷データ処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷データ処理装置及びプログラムに関する。
【背景技術】
【０００２】
従来、ページ記述言語（ＰＤＬ；Page Description Language）で記述された印刷データ（ＰＤＬデータ）を一旦中間データに変換し、中間データに対してラスタライズ処理を行うことで印刷処理部が認識可能な描画データが生成される場合がある。このような中間データを利用した印刷データ処理においては、中間データを生成する際にキャッシュが利用される場合がある。キャッシュを利用することによって、中間データの生成効率が向上される。例えば、ＰＤＬデータに同じオブジェクトが繰り返し登場する場合に、同じオブジェクトについて繰り返し中間データが生成されることが防止される。
【０００３】
特許文献１に、キャッシュを利用した中間データの生成処理が開示されている。具体的には、当該中間データ生成処理においては、ＰＤＬデータの中で繰り返し使用される画像要素（オブジェクト）であるキャッシュ対象要素の解釈結果データをキャッシュに記憶させた上で、中間データには当該解釈結果データを示すキャッシュＩＤが含められる。その後、ラスタライズ処理においては、中間データ内に含められたキャッシュＩＤに基づいて、キャッシュから対応する解釈結果データが取得される。
【０００４】
ＰＤＬデータに、重なり合う２つのオブジェクトがあり、少なくとも一方が特色を有する特色オブジェクトであり、且つ、当該２つのオブジェクトが特定の条件を満たす場合に、これらのオブジェクトの少なくとも一方についてキャッシュを利用した中間データを生成すると、当該中間データに基づいて生成される描画データにおいて好適な結果が得られなくなる場合がある。
【０００５】
例えば、基本色オブジェクトと特色オブジェクトが重なり合っており、基本色を有する基本色オブジェクトが特色オブジェクトの上にオーバープリント（ノセ）指定されている場合に、２つのオブジェクトの重なり部分の色を正しく表現できなくなる場合がある。図５及び図６を用いて具体的に説明する。
【０００６】
図５には、重なり合う２つのオブジェクトｏｂｊ１とｏｂｊ２が示されている。ｏｂｊ１は特色１００％の色成分を有する特色オブジェクトであり、ｏｂｊ２はＫ（ブラック）＝３０％の色成分を有する基本色オブジェクトである。図５に示される通り、ｏｂｊ１の代替色はＣＭＹＫ（１００／１０／１０／１０）である。これは、Ｃ（シアン）＝１００％、Ｍ（マゼンタ）＝１０％、Ｙ（イエロー）＝１０％、Ｋ＝１０％を意味する。ＰＤＬデータにおいては、ｏｂｊ１の上にｏｂｊ２をオーバープリント指定で配置することが定義されている。なお、オーバープリント指定とは、ｏｂｊ１とｏｂｊ２の重なり部分の色を、ｏｂｊ１の色を下地としてｏｂｊ２の色を乗せた色にするものである。
【０００７】
図５は、例えば、中間データを生成せずにＰＤＬデータに対して直接ラスタライズ処理が行われるか、あるいは中間データに基本色版の他に特色版が含められるなどの場合であって、フラットニング処理前にオーバープリント処理が行われる例が示されている。図５の例では、フラットニング処理前である左側の図の状態において、オーバープリント処理が施される。フラットニング処理前においてはｏｂｊ１とｏｂｊ２の重なり情報が維持されているため、ｏｂｊ１とｏｂｊ２の重なる部分の色は、当該重なり情報に基づいて、ｏｂｊ１の色にｏｂｊ２の色を加えた色、すなわちＣＭＹＫＳ（０／０／０／３０／１００）（Ｃ＝０％、Ｍ＝０％、Ｙ＝０％、Ｋ＝３０％、特色＝１００％）で表現される。その後、フラットニング処理と共に、ｏｂｊ１については代替色への特色変換処理が施されると、ｏｂｊ１の色はＣＭＹＫ（１００／１０／１０／１０）で表現される。ｏｂｊ２との重なり部分は、ＣＭＹＫ（１００／１０／１０／１０）とＫ＝３０％を足し合わせた色となり、すなわちＣＭＹＫ（１００／１０／１０／４０）で表現される（真ん中の図の状態）。さらに、ラスタライズ処理されることで、２つのオブジェクトにおいてオーバープリントが正しく表現された、ユーザが期待する状態が得られる（右側の図の状態）。
【０００８】
図６には、図５と同様の重なり合う２つのオブジェクトｏｂｊ１とｏｂｊ２が示されている。図６は、ｏｂｊ１及びｏｂｊ２の少なくとも一方がキャッシュされたことにより、２つのオブジェクトが個別に処理される例が示されている。図６の例においては、本来、フラットニング処理前（左側の図の状態）にオーバープリント処理が施されるところ、２つのオブジェクトが個別に処理されるため（つまり重なり情報が無いため）オーバープリント処理を行うことができない。そして、そのまま２つのオブジェクトは個別にフラットニング処理され、ｏｂｊ１については代替色への特色変換処理が施される。この状態（真ん中の図の状態）においては、ｏｂｊ１の色はＣＭＹＫ（１００／１０／１０／１０）で、ｏｂｊ２の色はＣＭＹＫ（０／０／０／４０）で個別に表現されている。そして、ラスタライズ処理が実行されると、基本色オブジェクトを他のオブジェクトに乗せる場合については透過合成されないため、ｏｂｊ２はｏｂｊ１の上に上書き描画される。その結果、２つのオブジェクトの重なり部分はオーバープリントが正しく表現されず、ｏｂｊ２の色となってしまう。
【０００９】
このように、基本色オブジェクトと特色オブジェクトが重なり合っており、特色オブジェクトの上に基本色を有する基本色オブジェクトがオーバープリント指定されている場合に、２つのオブジェクトの少なくとも一方についてキャッシュを利用して中間データを生成すると、ユーザの期待する結果が得られなくなる。
【００１０】
また、例えば、特色オブジェクト同士が重なり合っており、上に重なる特色オブジェクトがノックアウト（ヌキ）指定されている場合に、２つのオブジェクトの重なり部分の色が正しく表現できなくなる場合がある。図７及び図８を用いて具体的に説明する。
【００１１】
図７には、重なり合う２つのオブジェクトｏｂｊ３とｏｂｊ４が示されている。ｏｂｊ３及びｏｂｊ４はいずれも特色オブジェクトであり、ｏｂｊ３は特色７０％の色成分を有し、ｏｂｊ４は特色３０％の色成分を有する。図７に示される通り、ｏｂｊ３の代替色はＣＭＹＫ（７０／０／０／０）であり、ｏｂｊ４の代替色はＣＭＹＫ（３０／０／０／０）である。ＰＤＬデータにおいては、ｏｂｊ３の上にｏｂｊ４をノックアウト指定で配置することが定義されている。なお、ノックアウト指定とは、ｏｂｊ３とｏｂｊ４の重なり部分の色を、ｏｂｊ４の色とする、つまりｏｂｊ４をｏｂｊ３の上に上書きするものである。
【００１２】
図７は、例えば中間データを生成せずに、ＰＤＬデータに対して直接ラスタライズ処理が行われるか、あるいは中間データに基本色版の他に特色版が含められるなどの場合であって、フラットニング処理時にノックアウト処理が行われる例が示されている。図７の例では、フラットニング処理時において、２つのオブジェクトの重なり情報に基づいて、下側のオブジェクトであるｏｊｂ３が変形される。具体的には、ｏｂｊ３から重なり部分が除去されるeclipse処理が実行される。このようなフラットニング処理と共に代替色への特色変換処理が行われることにより、ｏｂｊ３とｏｂｊ４の重なる部分の色は、ＣＭＹＫ（３０／０／０／０）、つまりｏｂｊ４の色となる（真ん中の図の状態）。さらに、ラスタライズ処理されることで、２つのオブジェクトにおいてノックアウトが正しく表現された、ユーザが期待する状態が得られる（右側の図の状態）。
【００１３】
図８には、図７と同様の重なり合う２つのオブジェクトｏｂｊ３とｏｂｊ４が示されている。図８は、ｏｂｊ３及びｏｂｊ４の少なくとも一方がキャッシュされたことにより、２つのオブジェクトが個別に処理される例が示されている。図８の例においては、本来、フラットニング処理時にeclipse処理が施されるところ、２つのオブジェクトが個別に処理されるため（つまり重なり情報が無いため）eclipse処理が行われない。そして、そのまま２つのオブジェクトは個別にフラットニング処理及び代替色への特色変換処理が施される。この状態（真ん中の図の状態）においては、ｏｂｊ３の色はＣＭＹＫ（７０／０／０／０）で、ｏｂｊ４の色はＣＭＹＫ（３０／０／０／０）で個別に表現されている。そして、ラスタライズ処理が実行されると、特色オブジェクトを他のオブジェクトに乗せる場合については透過合成されるため、ｏｂｊ４はｏｂｊ３の上に透過合成される。その結果、ｏｂｊ３とｏｂｊ４の重なり部分の色は、２つのオブジェクトの色を足し合わせた色、つまりＣＭＹＫ（１００／０／０／０）となってしまう。
【００１４】
このように、特色オブジェクト同士が重なり合っており、上に重なる特色オブジェクトがノックアウト指定されている場合に、２つのオブジェクトの少なくとも一方についてキャッシュを利用して中間データを生成すると、ユーザの期待する結果が得られなくなる。
【００１５】
上述のような問題を考慮して、特許文献１においては、特色成分を含むオブジェクトをキャッシュしないようにし、特色成分を含まないオブジェクトのみをキャッシュすることが開示されている。
【先行技術文献】
【特許文献】
【００１６】
【特許文献１】特開２０１５−１８８２１２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１７】
ＰＤＬデータから中間データを生成するにあたり、オブジェクト毎にキャッシュを利用するか否かを判定する場合、ＰＤＬデータに含まれる各オブジェクトを個別に解析する必要がある。これにより、キャッシュ利用可否の判定にかかる処理量あるいは処理時間（オーバーヘッド）が増大するという問題が生じる。特に、特色オブジェクトと他のオブジェクトとの重なり具合、あるいは各オブジェクトのオーバープリント指定あるいはノックアウト指定まで判断するならば、オーバーヘッドはさらに増大する。
【００１８】
本発明の目的は、オブジェクト毎にキャッシュの利用可否を判断する場合に比して、キャッシュ利用可否の判断にかかる処理量あるいは処理時間を低減しつつ、できるだけキャッシュを利用する中間データを生成することにある。
【課題を解決するための手段】
【００１９】
請求項１に係る発明は、ページ記述言語で記述された文書データを解析し、前記文書データに含まれる論理ページ毎に特色が含まれるか否かを判定する判定部と、各論理ページに含まれるキャッシュ対象要素を解釈して得られる解析結果をキャッシュ記憶部に記憶させるキャッシュ処理を実行するキャッシュ処理部と、前記判定部により特色が含まれないと判定された論理ページについては、前記キャッシュ処理により前記キャッシュ記憶部に記憶された解析結果を参照するキャッシュ参照情報を含む中間データを生成し、前記判定部により特色が含まれると判定された論理ページについては、前記キャッシュ参照情報を含まない中間データを生成する中間データ生成部と、を備えることを特徴とする印刷データ処理装置である。
【００２０】
請求項２に係る発明は、前記判定部は、各論理ページに含まれ、当該論理ページ内に特色が含まれるか否かを示す情報を含むヘッダ情報を解析することで、各論理ページに特色が含まれるか否かを判定する、ことを特徴とする請求項１に記載の印刷データ処理装置である。
【００２１】
請求項３に係る発明は、前記キャッシュ処理部は、前記判定部により特色が含まれないと判定された論理ページに対して前記キャッシュ処理を実行し、前記判定部により特色が含まれると判定された論理ページに対しては前記キャッシュ処理を実行しない、ことを特徴とする請求項１又は２に記載の印刷データ処理装置である。
【００２２】
請求項４に係る発明は、コンピュータを、ページ記述言語で記述された文書データを解析し、前記文書データに含まれる論理ページ毎に特色が含まれるか否かを判定する判定部と、各論理ページに含まれるキャッシュ対象要素を解釈して得られる解析結果をキャッシュ記憶部に記憶させるキャッシュ処理を実行するキャッシュ処理部と、前記判定部により特色が含まれないと判定された論理ページについては、前記キャッシュ処理により前記キャッシュ記憶部に記憶された解析結果を参照するキャッシュ参照情報を含む中間データを生成し、前記判定部により特色が含まれると判定された論理ページについては、前記キャッシュ参照情報を含まない中間データを生成する中間データ生成部と、として機能させることを特徴とする印刷データ処理プログラムである。
【発明の効果】
【００２３】
請求項１又は４に係る発明によれば、オブジェクト毎にキャッシュの利用可否を判断する場合に比して、キャッシュ利用可否の判断にかかる処理量あるいは処理時間を低減しつつ、できるだけキャッシュを利用する中間データを生成することができる。
【００２４】
請求項２に係る発明によれば、各論理ページの全体を解析する場合に比して、各論理ページに特色が含まれるか否かの判定にかかる処理量あるいは処理時間を低減することができる。
【００２５】
請求項３に係る発明によれば、特色が含まれると判定された論理ページに対してもキャッシュ処理を行う場合に比して、キャッシュ処理にかかる処理量あるいは処理時間を低減することができる。
【図面の簡単な説明】
【００２６】
【図１】本実施形態に係る画像処理システムの構成概略図である。
【図２】フロントエンド装置及びバックエンド装置の機能構成概略図である。
【図３】フロントエンド装置の処理の流れを示す第１のフローチャートである。
【図４】フロントエンド装置の処理の流れを示す第２のフローチャートである。
【図５】重なり合う２つのオブジェクトに対する従来の処理例を示す第１の図である。
【図６】重なり合う２つのオブジェクトに対する従来の処理例を示す第２の図である。
【図７】重なり合う２つのオブジェクトに対する従来の処理例を示す第３の図である。
【図８】重なり合う２つのオブジェクトに対する従来の処理例を示す第４の図である。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態について説明する。
【００２８】
図１に、本実施形態に係る画像処理システム１０の構成概略図が示されている。画像処理システム１０は、端末装置１２、印刷データ処理装置としての印刷コントローラ１４、印刷装置１６、及び特色ＤＢ１８を含んで構成される。また、印刷コントローラ１４は、フロントエンド装置２０及びバックエンド装置２２を含んで構成される。端末装置１２と印刷コントローラ１４、印刷コントローラ１４と印刷装置１６、印刷コントローラ１４と特色ＤＢ１８、及び、フロントエンド装置２０とバックエンド装置２２との間は、例えばＬＡＮ（Local  Area  Network）などの通信回線により通信可能に接続されている。
【００２９】
端末装置１２は、例えばパーソナルコンピュータなどの汎用コンピュータであってよい。端末装置１２は、ユーザの指示に従い、文書の印刷命令である印刷ジョブをフロントエンド装置２０に対して送信する。
【００３０】
フロントエンド装置２０は、端末装置１２から送信された印刷ジョブから中間データを生成し、中間データをバックエンド装置２２に送信する。バックエンド装置２２は、フロントエンド装置２０からの中間データに対してラスタライズ処理を施すことにより描画データを生成し、生成した描画データを印刷装置１６に送信する。フロントエンド装置２０及びバックエンド装置２２の詳細な機能構成、及びこれらが行う処理の詳細については後述する。
【００３１】
フロントエンド装置２０は、ＣＰＵ（中央演算装置）、ＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）あるいはハードディスクなどからなる記憶媒体、入出力インターフェース、通信インターフェース、及び表示部などを含むコンピュータであってよい。当該記憶媒体に、フロントエンド装置２０の各部（後述）を機能させるための印刷データ処理プログラムが記憶されており、ＣＰＵが当該印刷データ処理プログラムに従って各部を制御する。バックエンド装置２２も同様にコンピュータであってよく、その記憶媒体にバックエンド装置２２の各部（後述）を機能させるための印刷データ処理プログラムが記憶されており、ＣＰＵが当該印刷データ処理プログラムに従って各部を制御する。
【００３２】
フロントエンド装置２０及びバックエンド装置２２を実現するハードウエアの１つの具体例として、それぞれがサーバとして機能する複数の情報処理装置を１つの筐体内に搭載したブレードサーバを用いることが考えられる。ブレードサーバは、上述のコンピュータの構成を１枚の基板（ブレード）に実装し、複数のブレードを筐体内に搭載したサーバ装置である。例えば、ブレードサーバに搭載された１つのブレードをフロントエンド装置２０として機能させ、他の１つのブレードをバックエンド装置２２として機能させてもよい。あるいは、例えば、フロントエンド装置２０及びバックエンド装置２２のそれぞれを、ブレードサーバに搭載された複数のブレードにより実現してもよい。また、フロントエンド装置２０及びバックエンド装置２２のを１つのブレードにより実現するようにしてもよい。
【００３３】
印刷装置１６は、紙などの印刷媒体に対して画像形成処理としての印刷処理を行う装置であり、例えば、連続紙プリンタであってよい。なお、印刷装置１６は、電子写真、インクジェット、又はその他の方式の印刷エンジンにより印刷を行うものとする。なお、本実施形態では、画像処理装置としての印刷コントローラ１４と印刷装置１６が別体となっているが、印刷コントローラ１４と印刷装置１６とが一体となっていてもよい。この場合は、印刷コントローラ１４及び印刷装置１６が印刷データ処理装置を構成することとなる。
【００３４】
特色ＤＢ１８は、フロントエンド装置２０及びバックエンド装置２２からアクセス可能なストレージ（記憶部）を含んで構成される。特色ＤＢ１８には、バックエンド装置２２によるラスタライズ処理において参照されるシステム特色ＬＵＴ（Look Up Table）情報が記憶される。システム特色ＬＵＴ情報は、特色に応じて複数記憶されてよい。システム特色ＬＵＴ情報については後述する。
【００３５】
図２に、フロントエンド装置２０及びバックエンド装置２２の機能構成の概略が示されている。以下、図２を参照しながら、フロントエンド装置２０及びバックエンド装置２２の詳細について説明する。
【００３６】
フロントエンド装置２０は、印刷ジョブ受信部３０、判定部としてのページ判定部３２、特色変換部３６を含む中間データ生成部としてのページ解釈部３４、及び、キャッシュ処理部としてのキャッシュ要素解釈部３８を含んで構成される。また、バックエンド装置２２は、中間データバッファ４０、キャッシュ記憶部としてのキャッシュ４２、描画部４４、及び出力バッファ４６を含んで構成される。本実施形態においては、このうち、印刷ジョブ受信部３０、ページ判定部３２、ページ解釈部３４、キャッシュ要素解釈部３８、特色変換部３６、及び描画部４４の各部は、ＣＰＵや記憶媒体などのハードウェアと、ＣＰＵの動作を規定するソフトウェア（プログラム）との協働により実現される。また、中間データバッファ４０及び出力バッファ４６は、バックエンド装置２２を構成するコンピュータの記憶媒体において定義される。
【００３７】
印刷ジョブ受信部３０は、端末装置１２から送信された印刷ジョブを受信する。本実施形態においては、印刷ジョブは、文書の印刷命令と、印刷対象の文書をページ記述言語で記述した文書データとしてのＰＤＬデータとを含む。ページ記述言語は、ディスプレイ表示処理、印刷処理などを情報処理機器に実行させるためのコンピュータプログラミング言語である。ＰＤＬデータの形式としては、例えばＰＳ（Post Script（登録商標））形式あるいはＰＤＦ形式などがある。
【００３８】
ＰＤＬデータは、印刷対象の文書を構成する文字や図形などのオブジェクトの色情報、位置情報、形状情報、及び書式情報などを含む。オブジェクトには、例えばＣＭＹＫあるいはＲＧＢなどの基本色を有する基本色オブジェクトと、基本色とは異なる色である特色を有する特色オブジェクトがある。ＰＤＬデータには、基本色オブジェクトに関する色情報として、いずれかの基本色の明度を示す情報（例えばＣ＝１００％）が含まれ、特色オブジェクトに関する色情報としては、特色名及び代替カラー情報が含まれる。代替カラー情報とは、当該特色を基本色の組み合わせで表したものである。例えばＣＭＹＫ（１００／１０／１０／１０）といった情報である。
【００３９】
印刷ジョブ受信部３０は、受信した印刷ジョブに含まれるＰＤＬデータをページ判定部３２に渡す。
【００４０】
ページ判定部３２は、ＰＤＬデータを解析することで、ＰＤＬデータに含まれる論理ページ毎に、特色が含まれているか否かを判定する。論理ページとは、ＰＤＬデータにおいて規定されている論理的な意味でのページのことであり、物理的な印刷媒体（用紙など）の１つの面である物理ページの対立概念である。
【００４１】
ページ判定部３２は、ＰＤＬデータ内における１つの論理ページに対応する部分であるページデータ内の全てを解析することで、当該論理ページに特色が含まれているか否かを判定するようにしてよい。例えば、当該ページデータ内に特色オブジェクトを示す記述があった場合に、当該論理ページに特色が含まれていると判定する。特色オブジェクトを示す記述とは、例えば特色オブジェクトに関する色情報、すなわち特色名及び代替カラー情報を含む色情報である。
【００４２】
また、例えばＰＤＬデータがＰＤＦである場合など、ページデータには、当該論理ページに含まれる各オブジェクトの色情報を含むページヘッダ情報が含まれている場合がある。つまり、ページヘッダ情報には、当該論理ページに特色が含まれているか否かを示す情報を含んでいるといえる。このような場合は、ページ判定部３２は、ページデータ全体ではなく、このページヘッダ情報のみを解析することで、当該論理ページに特色が含まれているか否かを判定するようにしてもよい。このようにすることで、ページ判定部３２は、ページデータ全体ではなく、ページヘッダ情報のみを解析すれば足りるため、各論理ページに特色が含まれているか否かの判定処理の処理量あるいは処理時間を低減することができる。
【００４３】
ページ判定部３２の判定結果、つまり各論理ページに特色が含まれるか否かの情報は、ＰＤＬデータに含められてもよいし、またフロントエンド装置２０が有する記憶部に一時記憶されるようにしてもよい。例えば、特色を含む論理ページのページデータ内に、当該論理ページが特色を含むことを示すフラグを立てるようにしてもよいし、あるいはフロントエンド装置２０の記憶部に、処理中のＰＤＬデータの特色が含まれるページ番号を示す情報を一時記憶させておいてもよい。
【００４４】
ページ解釈部３４は、印刷ジョブ受信部３０が受信したＰＤＬデータを解釈することで、中間データを生成する処理を行う。中間データとは、ＰＤＬデータと、印刷装置１６が処理する描画データとの中間の粒度を有するデータである。中間データの例としては、ディスプレイリストなどが挙げられる。中間データは、印刷対象の文書の構成要素である複数のオブジェクトの描画処理を行う順番を表す描画命令を含む。この描画命令を記述する言語としては、ＰＤＬデータと比較してより詳細な手順を表現する言語が用いられる。例えば、ＰＤＬデータにおいて、文書上におけるあるオブジェクトの位置、形状、及び大きさを表す情報が定義される場合、中間データにおける当該オブジェクトの描画命令では、例えば印刷対象の文書におけるスキャンライン単位で当該オブジェクトの描画の手順を記述したものであり得る。
【００４５】
また、ページ解釈部３４は、ＰＤＬデータを各基本色に対応する各基本色版データ（例えば、Ｃ版、Ｍ版、Ｙ版、Ｋ版）に分ける分版処理を行う。ＰＤＬデータに特色が含まれている場合は、基本色版データに加えて特色に対応する特色版データを生成するようにしてもよい。つまり、中間データには基本色版データのみならず、特色版データも含まれるようにしてよい。ＰＤＬデータに複数の特色が含まれる場合は、各特色に対応する複数の特色版データが生成される。あるいは、フロントエンド装置２０内において特色を各基本色に分割した上で、分割して得られた基本色成分を各基本色版データに合成する処理を行ってもよい。この場合、フロントエンド装置２０からは、特色版データを有さず、基本色版データのみを有する中間データが出力される。特色の基本色版データへの合成処理は、特色変換部３６により行われる。
【００４６】
特色変換部３６は、ＰＤＬデータに含まれていた、特色に対する代替カラー情報に基づいて、ページ解釈部３４が生成した特色版データを各基本色に分割する。例えば、ある特色オブジェクトの代替カラー情報がＣＭＹＫ（１００／１０／１０／１０）である場合、当該特色オブジェクトの形状あるいは位置などの色情報以外の情報は維持した上で、その色をＣ＝１００％、Ｍ＝１０％、Ｙ＝１０％、Ｋ＝１０％に分割する。そして、分割して得られた各基本色成分を、当該中間データが元々有する各基本色版データに合成する処理を行う。これにより、中間データとしては特色版データを有さないが、代替カラーで表現された特色オブジェクトを含む基本色版データのみからなる中間データが生成される。
【００４７】
ページ解釈部３４は、生成した中間データをバックエンド装置２２へ送信し、中間データバッファ４０へ格納させる。
【００４８】
キャッシュ要素解釈部３８は、印刷ジョブ受信部３０が受信したＰＤＬデータに含まれるキャッシュ対象要素を解釈して、当該キャッシュ対象要素を表す解析結果である中間データ形式のデータ（以下「キャッシュデータ」と記載する）へ変換してバックエンド装置２２のキャッシュ４２に格納するキャッシュ処理を行う。キャッシュ対象要素とは、１つのＰＤＬデータの中で繰り返し使用されるオブジェクトのことである。例えば、ＰＤＬデータがＰＳ形式の場合、フォームやイメージなどといったタイプのオブジェクトがその一例である。キャッシュ対象要素であるか否かは、１つの例では、要素の種類で判別すればよい。例えば、ＰＤＬデータからフォームやイメージなどといったキャッシュ対象の要素種別に対応する描画コマンドを見つけた場合、その描画コマンドで描画される１以上のオブジェクトがキャッシュ対象の要素と判別される。また、ＰＤＬデータ中では、キャッシュ対象のオブジェクトに対して、当該オブジェクトをＰＤＬデータ中で一意に識別する識別情報が付与されることも多い。ＰＤＬデータ中に同じオブジェクトＩＤを指定したコマンドがある場合、それらコマンドは同じオブジェクトの描画を指示している。このような場合、同一ＰＤＬデータ内において２回目に登場したオブジェクトＩＤをキャッシュ対象要素とするようにしてもよい。
【００４９】
キャッシュ要素解釈部３８は、ＰＤＬデータを先頭から順に解釈する中で、キャッシュ対象要素以外の要素についてはキャッシュデータの生成を行わず、キャッシュ対象要素についてのみ、キャッシュデータに変換する。キャッシュ要素解釈部３８は、キャッシュデータと、当該キャッシュデータに対応するキャッシュ対象要素を一意的に識別するための、キャッシュ参照情報としてのキャッシュＩＤ（例えばキャッシュ対象要素のオブジェクトＩＤなど）と対応づけてバックエンド装置２２に送信し、キャッシュ４２に格納させる。
【００５０】
なお、キャッシュ要素解釈部３８は、キャッシュ４２に保持されたキャッシュＩＤとキャッシュデータに関する情報を保持している。キャッシュ要素解釈部３８は、ＰＤＬデータ中のキャッシュ対象要素を処理する際、その要素のキャッシュデータがキャッシュ４２に格納済みであるかどうかを判定し、格納済みである場合にはその要素のキャッシュデータの生成は行わず、格納されていない場合にのみキャッシュデータの生成を行う。
【００５１】
一方、ページ解釈部３４は、キャッシュ要素解釈部３８がキャッシュデータを生成したオブジェクト（つまりキャッシュ対象要素）については、当該オブジェクトに関する解釈結果である中間データ要素を生成しない。その代わりに、当該キャッシュ対象要素を示すキャッシュＩＤを中間データに含める。このように、キャッシュ要素解釈部３８がキャッシュ対象要素についてキャッシュデータを生成した上で、ページ解釈部３４が当該キャッシュ対象要素についての中間データを生成せず、代わりにキャッシュＩＤを中間データに含めることで、同じキャッシュ対象要素の中間データが繰り返し生成されるといった非効率が避けられる。つまり、キャッシュを利用して中間データを生成することで、中間データ生成のための処理量及び処理時間が、キャッシュを利用しない場合に比して低減される。
【００５２】
ページ解釈部３４及びキャッシュ要素解釈部３８は、ページ判定部３２の判定結果に基づいて、中間データあるいはキャッシュデータの生成を行う。具体的には、ページ解釈部３４及びキャッシュ要素解釈部３８は、ＰＤＬデータのうち、特色が含まれていない論理ページと、特色が含まれている論理ページとに対して、異なる流れで処理を行う。当該処理の詳細については後述する。
【００５３】
バックエンド装置２２の描画部４４は、中間データバッファ４０に保持された中間データ、及びキャッシュ４２に保持されたキャッシュデータに基づいてラスタライズ処理を行い、印刷装置１６が処理可能な形式の描画データを生成する。例えば、オブジェクトの形状データが示す範囲内の各画素の値を当該オブジェクトの色情報から求めて、オブジェクトの描画（レンダリング）を行う。１つの論理ページに含まれる全オブジェクトをこのように描画することで、その論理ページの描画データが形成される。描画データの形式としては、例えば、各画素毎に色データを有するビットマップ形式を用いることができる。
【００５４】
描画部４４は、基本的には中間データバッファ４０に保持された中間データに基づいて描画データを生成する。中間データを解析していく中で、キャッシュＩＤが発見された場合は、キャッシュ４２から当該キャッシュＩＤに応じたキャッシュデータを読み出す。そして、読み出したキャッシュデータに基づいて、当該キャッシュＩＤに対応するオブジェクトの描画データ要素を生成する。
【００５５】
描画部４４は、各基本色に対応する各基本色版（例えばＣ版、Ｍ版、Ｙ版、Ｋ版）の描画データを生成する。中間データに特色版データが含まれている場合、描画部４４は、特色ＤＢ１８に記憶された、当該特色に対応するシステム特色ＬＵＴ情報に基づいて、特色版の特色を各基本色に変換した上で、得られた各基本色成分を各基本色版に合成する。
【００５６】
特色ＤＢ１８には、上述の通り、予め各特色に対応する複数のシステム特色ＬＵＴ情報が記憶されていてよい。システム特色ＬＵＴ情報は、少なくとも特色名と代替カラー情報を含んでいる。描画部４４は、中間データの特色版データに含まれる特色名に基づいて、色変換に使用するシステム特色ＬＵＴ情報を特定して取得する。また、システム特色ＬＵＴ情報には、さらに、印刷装置１６に対応した特色補正情報（例えば特色専用のプロファイル）が含まれていてよく、描画部４４は、代替カラーへの変換処理の過程で、当該特色補正情報を使用して特色補正を行うにしてもよい。特色補正をした上で当該特色を代替カラーに変換することで、変換後の代替カラーを印刷装置１６の特性に応じたデバイス依存の色とすることができる。
【００５７】
また、特色ＤＢ１８へは、ページ解釈部３４から新たなシステム特色ＬＵＴ情報を追加可能となっていてよい。具体的には、ページ解釈部３４がＰＤＬデータの解釈をしていく中で、特色ＤＢ１８に記憶されていない特色名が発見された場合には、当該特色名と、当該ＰＤＬに含まれる当該特色の代替カラー情報とを関連付けて、システム特色ＬＵＴ情報として特色ＤＢ１８へ追加するようにしてもよい。なお、ページ解釈部３４により特色ＤＢ１８へ追加されたシステム特色ＬＵＴ情報は、一時的に（例えば当該印刷ジョブの処理が終わるまで）記憶されるものであってもよく、他の印刷ジョブの処理においても利用可能なように非一時的に記憶されるものであってもよい。
【００５８】
描画部４４により生成された各論理ページの描画データは出力バッファ４６に格納される。出力バッファ４６に格納された各描画データは、印刷装置１６により順次読み出される。そして、印刷装置１６は、出力バッファ４６から読み出した各論理ページの描画データを用紙に対して印刷する。
【００５９】
以下、ページ判定部３２の判定結果に応じたページ解釈部３４及びキャッシュ要素解釈部３８の処理の流れの詳細について説明する。
【００６０】
まず、ページ判定部３２により、特色が含まれていないと判定された論理ページに対しての処理の流れを説明する。
【００６１】
ページ解釈部３４は、キャッシュ対象要素以外のオブジェクトについては、当該オブジェクトを解釈して中間データ要素を生成し、生成した中間データ要素を中間データに組み込む。一方、当該論理ページ中のキャッシュ対象要素については、そのキャッシュ対象要素を解釈して中間データ要素を生成する代わりに、当該キャッシュ対象要素に対応する、つまり当該キャッシュ対象要素から得られるキャッシュデータを参照するためのキャッシュＩＤを中間データに組み込む。
【００６２】
キャッシュ要素解釈部３８は、キャッシュ対象要素について解釈を行い、キャッシュデータを生成し、当該キャッシュ対象要素を示すキャッシュＩＤと関連付けた上でキャッシュ４２に格納するキャッシュ処理を行う。
【００６３】
このように、特色が含まれていないと判定された論理ページに対しては、ページ解釈部３４及びキャッシュ要素解釈部３８は、キャッシュ４２を利用した中間データを生成する処理を行う。
【００６４】
次に、ページ判定部３２により、特色が含まれていると判定された論理ページに対しての処理の流れを説明する。
【００６５】
この場合、ページ解釈部３４は、ＰＤＬデータに含まれる、キャッシュ対象要素を含む全てのオブジェクトについて解釈を行い、各オブジェクトに対応する中間データ要素を生成する。そして、生成した中間データ要素を中間データに組み込む。つまり、ページ解釈部３４は、キャッシュＩＤを含まない中間データを生成する。
【００６６】
キャッシュ要素解釈部３８は、特色が含まれていると判定された論理ページに対しても、当該論理ページに含まれるキャッシュ対象要素について解釈を行い、キャッシュデータを生成し、当該キャッシュ対象要素を示すキャッシュＩＤと関連付けた上でキャッシュ４２に格納するキャッシュ処理を行ってよい。これにより、特色が含まれている論理ページ内の基本色オブジェクトをキャッシュすることが可能になり、当該基本色オブジェクトが後続の特色を含まない論理ページに登場した場合に、当該キャッシュデータを利用することができる。あるいは、キャッシュ要素解釈部３８は、特色が含まれていると判定された論理ページに対しては、キャッシュ処理を行わないようにしてもよい。つまり、特色が含まれていると判定された論理ページに、キャッシュ対象要素が含まれていたとしても、当該キャッシュ対象要素についてのキャッシュデータを生成しなくてもよい。
【００６７】
このように、特色が含まれると判定された論理ページに対しては、ページ解釈部３４は、キャッシュＩＤを含まない中間データを生成する。つまり、キャッシュ４２を利用しない中間データを生成する処理を行う。
【００６８】
上述の通り、ページ解釈部３４及びキャッシュ要素解釈部３８は、特色が含まれていないと判定された論理ページに対しては、キャッシュ４２を利用した中間データを生成する一方、特色が含まれていると判定された論理ページに対しては、キャッシュ４２を利用しない中間データを生成する。これにより、であって少なくとも一方が特色オブジェクトである重なり合う２つのオブジェクトに対してはキャッシュ４２を利用しない中間データが生成されることになる。したがって、このようなオブジェクトの重なり部分の色に関する問題が生じることが防止される。一方において、特色が含まれていない含まれていない論理ページには、他のオブジェクトと重なる特色オブジェクトが存在しないから、そのような論理ページに対してはキャッシュ４２を利用した中間データが生成される。これにより、ＰＤＬデータ全体としてみれば、できるだけキャッシュ４２を利用した中間データ生成されることになり、全体として中間データの生成効率が向上される。
【００６９】
本実施形態においては、キャッシュ４２の利用有無を各論理ページに特色が含まれているか否かによって判定している。これにより、各論理ページに特色が含まれるか否かを判定するための処理量あるいは処理時間は、少なくともＰＤＬに含まれる全てのオブジェクトについて特色オブジェクトであるか否かを個別的に判定するための処理量あるいは処理時間よりも少なくて済む。したがって、キャッシュ４２の利用有無を各論理ページに特色が含まれているか否かによって判定することで、キャッシュ４２の利用有無の判定のためのオーバーヘッドが低減される。
【００７０】
本実施形態にかかる画像処理システム１０の構成概要としては以上の通りである。以下、図３に示すフローチャートに従って、フロントエンド装置２０の処理の流れについて説明する。
【００７１】
ステップＳ１０において、ページ判定部３２は、印刷ジョブ受信部３０が受信したＰＤＬデータを解析することで、ＰＤＬデータに含まれる論理ページ毎に特色が含まれるか否かを判定する。
【００７２】
ステップＳ１２において、ページ解釈部３４は、印刷ジョブ受信部３０が受信したＰＤＬデータのうち１つの論理ページを取得する。
【００７３】
ステップＳ１４において、ページ解釈部３４は、ステップＳ１０での判定結果に基づいて、ステップＳ１２で取得した論理ページに特色が含まれるか否かを判定する。特色が含まれない場合はステップＳ１６に進み、特色が含まれる場合はステップＳ２８に進む。まず、論理ページに特色が含まれないと判定された場合の処理（ステップＳ１６〜Ｓ２６）について説明する。
【００７４】
ステップＳ１６において、ページ解釈部３４は、ステップＳ１２で取得した論理ページが有する１つのオブジェクトを取得する。
【００７５】
ステップＳ１８において、ページ解釈部３４は、ステップＳ１６で取得したオブジェクトがキャッシュ対象要素であるか否かを判定する。キャッシュ対象要素である場合、ステップＳ２０に進み、そうでない場合はステップＳ２２に進む。
【００７６】
ステップＳ２０においては、キャッシュ要素解釈部３８は、ステップＳ１６で取得したオブジェクトを解釈し、その解釈結果であるキャッシュデータを生成する。そして、生成したキャッシュデータと、当該オブジェクトを示すキャッシュＩＤとを関連付けてキャッシュ４２に記憶させる。また、ページ解釈部３４は、当該オブジェクトの中間データ要素は生成せず、当該オブジェクトを示すキャッシュＩＤを中間データに含める。
【００７７】
一方、ステップＳ２２においては、ページ解釈部３４は、当該オブジェクトの中間データ要素を生成して中間データに含める処理を行う。ステップＳ２２においては、キャッシュ要素解釈部３８は処理を行わない。
【００７８】
ステップＳ２４において、ページ解釈部３４は、ステップＳ１２で取得した論理ページ内に、ステップＳ１６〜Ｓ２２までの処理を行っていない他のオブジェクトがあるか否かを判定する。ある場合は再度ステップＳ１６に戻り、同論理ページ内の他のオブジェクトについてステップＳ１６〜Ｓ２２までの処理を実行する。ない場合は、ステップＳ２６に進む。
【００７９】
ステップＳ２６において、ページ解釈部３４は、印刷ジョブ受信部３０が受信したＰＤＬデータ内に、中間データの生成処理を行っていない論理ページがあるか否かを判定する。ある場合は再度ステップＳ１２に戻る。ない場合は処理を終了する。
【００８０】
次に、ステップＳ１４において、論理ページに特色が含まれると判定された場合の処理（ステップＳ２８〜Ｓ３８）について説明する。
【００８１】
ステップＳ２８において、ステップＳ１６同様、ページ解釈部３４は、ステップＳ１２で取得した論理ページが有する１つのオブジェクトを取得する。
【００８２】
ステップＳ３０において、ページ解釈部３４は、ステップＳ２８で取得したオブジェクトが特色ＤＢ１８に登録済みの特色を有する特色オブジェクトであるか否かを判定する。そうである場合はステップＳ３２に進み、そうでない場合、すなわち、当該オブジェクトがそもそも特色オブジェクトでない（基本色オブジェクトである）場合及び特色オブジェクトではあるが当該特色オブジェクトが有する特色が特色ＤＢ１８に登録されていない場合は、ステップＳ３４に進む。
【００８３】
ステップＳ３２において、ページ解釈部３４は、当該オブジェクトの中間データ要素を生成して中間データに含める処理を行う。また、ステップＳ３２においては、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、ページ解釈部３４は当該キャッシュ対象要素に対して解釈を行って中間データ要素の生成を行う。また、ここでは、キャッシュ要素解釈部３８は、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、キャッシュ処理を行わないものとする。
【００８４】
ここで、ページ解釈部３４は、各基本色版データに加え、特色版データを有する中間データを生成する。特色版データにおいては、対応する特色の特色名が含められる。このように、中間データに特色名が含められた特色オブジェクトに対しては、後の描画部４４によるラスタライズ処理の際に、特色ＤＢ１８から当該特色名に対応するシステム特色ＬＵＴ情報が読み出され、当該システム特色ＬＵＴ情報に基づいて、当該特色が各基本色成分に分解される。
【００８５】
ステップＳ３４において、ステップＳ２８で取得したオブジェクトが特色オブジェクトである場合は、特色変換部３６が当該特色を基本色成分に分割した上で、各基本色版データに分割した基本色成分を合成する処理を行う。なお、ステップＳ２８で取得したオブジェクトが基本色オブジェクトである場合は、ステップＳ３４の処理はバイパスされる。
【００８６】
ステップＳ３６において、ページ解釈部３４は、当該オブジェクトの中間データ要素を生成して中間データに含める処理を行う。ステップＳ３２同様、ステップＳ３６においても、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、ページ解釈部３４は当該キャッシュ対象要素に対して解釈を行って中間データ要素の生成を行う。また、ステップＳ３６においても、キャッシュ要素解釈部３８は、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、キャッシュ処理を行わないものとする。
【００８７】
ステップＳ３４において特色が基本色に合成済みであることから、ステップＳ３６において生成される中間データは特色版データを有さず、基本色版データのみを有するものとなる。
【００８８】
ステップＳ３８において、ステップＳ２４同様、ページ解釈部３４は、ステップＳ１２で取得した論理ページ内に、ステップＳ２８〜Ｓ３６までの処理を行っていない他のオブジェクトがあるか否かを判定する。ある場合は再度ステップＳ２８に戻り、同論理ページ内の他のオブジェクトについてステップＳ２８〜Ｓ３６までの処理を実行する。ない場合は、ステップＳ２６に進む。
【００８９】
以下、図４に示すフローチャートに従って、フロントエンド装置２０の処理の変形例の流れについて説明する。図４に示したフローチャートのうち、図３に示したフローチャートと同じ内容の処理を行うステップについては同じステップ番号を付し、その説明を省略する。変形例は、特色が含まれていると判定された論理ページに対する処理の流れが図３のフローチャートに示す処理の流れと相違する。
【００９０】
ステップＳ１４で論理ページに特色が含まれると判定され、ステップＳ２８において当該論理ページから１つのオブジェクトが取得されると、ステップＳ５０において、ページ解釈部３４は、ステップＳ２８において取得したオブジェクトが特色オブジェクトであるか否かを判定する。特色オブジェクトである場合はステップＳ５２に進み、そうでない場合、つまり基本色オブジェクトである場合はステップＳ５４に進む。
【００９１】
ステップＳ５２において、ページ解釈部３４は、当該オブジェクトの中間データ要素を生成して中間データに含める処理を行う。また、ステップＳ５２においては、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、ページ解釈部３４は当該キャッシュ対象要素に対して解釈を行って中間データ要素の生成を行う。また、ここでも、キャッシュ要素解釈部３８は、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、キャッシュ処理を行わないものとする。
【００９２】
ここで、ページ解釈部３４は、ＰＤＬデータにおいて当該特色オブジェクトと関連付けられている特色名及び代替色データを抽出し、これらを関連付けた特色ＬＵＴ情報を特色ＤＢ１８に一時的に記憶させる。その上で、ページ解釈部３４は、各基本色版データに加え、特色版データを有する中間データを生成する。特色版データにおいては、対応する特色の特色名が含められる。このように、中間データに特色名が含められた特色オブジェクトに対しては、後の描画部４４によるラスタライズ処理の際に、特色ＤＢ１８に一時的に記憶された対応する特色ＬＵＴ情報が読み出され、当該特色ＬＵＴ情報に基づいて、当該特色が各基本色成分に変換される。
【００９３】
ステップＳ５４においては、ステップＳ３６同様、ページ解釈部３４は、当該オブジェクトの中間データ要素を生成して中間データに含める処理を行う。ステップＳ５４においても、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、ページ解釈部３４は当該キャッシュ対象要素に対して解釈を行って中間データ要素の生成を行う。また、ステップＳ５４においても、キャッシュ要素解釈部３８は、ステップＳ２８で取得したオブジェクトがたとえキャッシュ対象要素であったとしても、キャッシュ処理を行わないものとする。
【００９４】
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
【符号の説明】
【００９５】
１０  画像処理システム、１２  端末装置、１４  印刷コントローラ、１６  印刷装置、１８  特色ＤＢ、２０  フロントエンド装置、２２  バックエンド装置、３０  印刷ジョブ受信部、３２  ページ判定部、３４  ページ解釈部、３６  特色変換部、３８  キャッシュ要素解釈部、４０  中間データバッファ、４２  キャッシュ、４４  描画部、４６  出力バッファ。
【図１】
2018125763.tif 000003
【図２】
2018125763.tif 000004
【図３】
2018125763.tif 000005
【図４】
2018125763.tif 000006
【図５】
2018125763.tif 000007
【図６】
2018125763.tif 000008
【図７】
2018125763.tif 000009
【図８】
2018125763.tif 000010