(57)【要約】【課題】  リソース量に応じてαブレンド処理を切り替えることができる印刷処理システムを提供する。【解決手段】  この印刷処理システムは、少なくとも２つの画像を透明度情報であるα値を使用して合成するαブレンド処理を行い、合成した画像の印刷データを出力するシステムであり、αブレンド処理を行うために使用するリソース量が異なる少なくとも２つのαブレンド処理部２４、２８と、入力された画像データからαブレンド処理に必要とされるリソース量を計算し、印刷処理システムにおいて使用可能なリソース量に応じて、少なくとも２つのαブレンド処理部２４、２８のうちの１つを選択するリソース判定部２９とを備える。【選択図】  図２
2009176095.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも２つの画像を透明度情報であるα値を使用して合成するαブレンド処理を行い、合成した画像の印刷データを出力する印刷処理システムであって、
前記αブレンド処理を行うために使用するリソース量が異なる少なくとも２つのαブレンド処理部と、
入力された画像データから前記αブレンド処理に必要とされるリソース量を計算し、前記印刷処理システムにおいて使用可能なリソース量に応じて、前記少なくとも２つのαブレンド処理部のうちの１つを選択するリソース判定部とを備える、印刷処理システム。
【請求項２】
前記少なくとも２つのαブレンド処理部は、ＲＧＢ色空間でαブレンド処理を行う第１αブレンド処理部と、ＫＣＭＹ色空間でαブレンド処理を行う第２αブレンド処理部とを含む、請求項１に記載の印刷処理システム。
【請求項３】
前記少なくとも２つのαブレンド処理部は、前記画像の透明領域および透明度を定義するαマスクを使用してαブレンド処理を行う第３αブレンド処理部をさらに含む、請求項２に記載の印刷処理システム。
【請求項４】
前記第２αブレンド処理部は、使用可能な色を組み合わせて中間色を表現するために使用される色プレーンであるディザを前記αマスクとして使用する、請求項２に記載の印刷処理システム。
【請求項５】
前記印刷処理システムは、色相のグラデーションに従って配列する複数の色プレーンのディザを保持し、前記αマスクとして使用されるディザには、前記画像を描画するために使用されるディザの隣に配列するディザを使用する、請求項４に記載の印刷処理システム。
【請求項６】
前記ディザは、画像の明るさの密度によって確率的に処理するランダムディザと、画像の明るさから判断して網点からなる幾何学的なパターンに置き換える処理を行う前記ランダムディザとは種類が異なるパターンディザとを含み、前記αマスクとして使用されるディザには、前記画像を描画するために使用されるディザとは異なる種類のディザを使用する、請求項４に記載の印刷処理システム。
【請求項７】
前記αマスクとして使用されるディザには、前記画像を描画するために使用されるディザとは異なる解像度を有するディザ、前記画像のイメージサイズやデザインが異なるディザ、当該αマスクとして使用されるディザを反転あるいは回転させたもののいずれかを使用する、請求項４に記載の印刷処理システム。
【請求項８】
前記α値を色レベルに変換する色レベル変換部を含み、前記色レベルのディザを前記αマスクとして使用する、請求項４に記載の印刷処理システム。
【請求項９】
前記色レベル変換部は、前記α値に対応する色レベルを、比例計算により、あるいは変換式を使用して、または対応テーブルを使用して変換する、請求項８に記載の印刷処理システム。
【請求項１０】
前記リソース判定部は、前記印刷処理システムの起動時、印刷ジョブの開始時、１ページ分の画像データが入力された後のいずれかに、前記リソース量を計算し、前記使用可能なリソース量に応じて前記αブレンド処理部の１つを選択する、請求項１〜９のいずれか１項に記載の印刷処理システム。
【請求項１１】
前記印刷処理システムは、前記αブレンド処理中に前記リソース量が不足した場合、前記αブレンド処理を停止し、前記リソース量が回復した場合に前記αブレンド処理を再度実行させるリソース監視部をさらに含む、請求項１〜１０のいずれか１項に記載の印刷処理システム。
【請求項１２】
前記印刷処理システムは、前記αブレンド処理中に前記リソース量が不足した場合、前記αブレンド処理を停止し、前記リソース判定部が、前記リソース量を計算し、前記使用可能なリソース量に応じて前記αブレンド処理部の１つを選択する、請求項１〜１１のいずれか１項に記載の印刷処理システム。
【請求項１３】
請求項１〜１２のいずれか１項に記載の印刷処理システムを備える画像形成装置。
【請求項１４】
印刷処理システムにおいて、少なくとも２つの画像を透明度情報であるα値を使用して合成するαブレンド処理を行い、合成した画像の印刷データを出力する印刷処理方法であって、
入力された画像データから前記αブレンド処理に必要とされるリソース量を計算するステップと、
前記システムにおいて使用可能なリソース量に応じて、前記αブレンド処理を行うために使用するリソース量が相違する少なくとも２つのαブレンド処理部のうちの１つを選択するステップとを含む、印刷処理方法。
【請求項１５】
前記少なくとも２つのαブレンド処理部は、ＲＧＢ色空間でαブレンド処理を行う第１αブレンド処理部と、ＫＣＭＹ色空間でαブレンド処理を行う第２αブレンド処理部とを含む、請求項１４に記載の印刷処理方法。
【請求項１６】
前記少なくとも２つのαブレンド処理部は、前記画像の透明領域および透明度を定義するαマスクを使用してαブレンド処理を行う第３αブレンド処理部をさらに含む、請求項１５に記載の印刷処理方法。
【請求項１７】
前記第２αブレンド処理部は、使用可能な色を組み合わせて中間色を表現するために使用される色プレーンであるディザを前記αマスクとして使用する、請求項１５に記載の印刷処理方法。
【請求項１８】
前記印刷処理システムは、色相のグラデーションに従って配列する複数の色プレーンのディザを保持し、前記αマスクとして使用されるディザには、前記画像を描画するために使用されるディザの隣に配列するディザを使用する、請求項１７に記載の印刷処理方法。
【請求項１９】
前記ディザは、画像の明るさの密度によって確率的に処理するランダムディザと、画像の明るさから判断して網点からなる幾何学的なパターンに置き換える処理を行う前記ランダムディザとは種類が異なるパターンディザとを含み、前記αマスクとして使用されるディザには、前記画像を描画するために使用されるディザとは異なる種類のディザを使用する、請求項１７に記載の印刷処理方法。
【請求項２０】
前記αマスクとして使用されるディザには、前記画像を描画するために使用されるディザとは異なる解像度を有するディザ、前記画像のイメージサイズやデザインが異なるディザ、当該αマスクとして使用されるディザを反転あるいは回転させたもののいずれかを使用する、請求項１７に記載の印刷処理方法。
【請求項２１】
前記α値を色レベルに変換するステップをさらに含み、前記色レベルのディザを前記αマスクとして使用する、請求項１７に記載の印刷処理方法。
【請求項２２】
前記変換するステップでは、前記α値に対応する色レベルを、比例計算により、あるいは変換式を使用して、または対応テーブルを使用して変換する、請求項２１に記載の印刷処理方法。
【請求項２３】
前記リソース量を計算するステップは、前記印刷処理システムの起動時、印刷ジョブの開始時、１ページ分の画像データが入力された後のいずれか設定された時点において実行される、請求項１４〜２２のいずれか１項に記載の印刷処理方法。
【請求項２４】
前記αブレンド処理中に前記リソース量が不足した場合、前記αブレンド処理を停止するステップと、前記リソース量が回復した場合に前記αブレンド処理を再度実行させるステップとをさらに含む、請求項１４〜２３のいずれか１項に記載の印刷処理方法。
【請求項２５】
前記αブレンド処理中に前記リソース量が不足した場合、前記αブレンド処理を停止するステップを含み、前記リソース量を計算するステップは、前記αブレンド処理の停止に応答して実行される、請求項１４〜２３のいずれか１項に記載の印刷処理方法。
【請求項２６】
請求項１４〜２５のいずれか１項に記載の印刷処理方法を実行するための前記印刷処理システム可読なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のαブレンド処理を実行可能な印刷処理システムであって、使用可能なリソースに応じてαブレンド処理を選択する印刷処理システム、その印刷処理システムを備える画像形成装置、使用可能なリソースに応じてαブレンド処理を選択する印刷処理方法およびその方法を実現するための装置可読なプログラムに関する。
【背景技術】
【０００２】
２つの画像を合成する方法として、αブレンディングという手法がある。このαブレンディングは、２つの画像を、α値を使用して半透明合成する手法である。α値は、コンピュータが扱うデジタル画像データにおいて、各点に設定された透過度情報であり、設定する値によって、完全に透明な無色から背景色を全く通さない完全に不透明なものまで設定することができる。このα値は、画像とは独立に指定することもできるが、画像の画素毎にα値をもつこともでき、この場合、画素毎の半透明合成を行うことができる。αブレンディングは、α値を変更することで自由に画像同士の色の混ぜ合わせ比率を変更することができる。
【０００３】
電子文書のためのフォーマットであるＰＤＦやＸＭＬをベースとしたＸＰＳといった新しいページ記述言語（ＰＤＬ）でサポートされているαブレンディングは、ＲＧＢ２４ビット色空間で処理されることを前提としている。
【０００４】
ここで、ＲＧＢ２４ビット色空間は、光の三原色である赤（Ｒ）、青（Ｂ）、緑（Ｇ）のそれぞれに８ビットの情報（０〜２５５の数値）を割り振り、１つの画素の色をそれらの数値の組み合わせにより表現する方法である。具体的には、白を表現する場合には、Ｒ＝２５５、Ｂ＝２５５、Ｇ＝２５５の組み合わせであり、黒を表現する場合には、Ｒ＝０、Ｂ＝０、Ｇ＝０の組み合わせである。
【０００５】
プリンタコントローラ上でレンダリングおよびαブレンディングを行い、印刷を行うシステムでは、図１に示すように、ホストＰＣ１が画像データを生成し、プリンタエンジン９に画像として出力させるためにプリンタコントローラへ送る。ホストＰＣ１から送られてきた文字、図形、イメージを描画するための描画命令や色を指定するための色指定命令を含む印刷データを、１ページ分ごとに受信し、インタプリタ２でその印刷データを解釈し、より簡単な中間データに変換して中間データメモリ３に格納する。その後、レンダラ４によりレンダリング（描画）を行い、αブレンド処理部５へ出力する。
【０００６】
αブレンド処理部５は、２つの画像を、α値を使用して半透明合成する。合成された画像は、ＲＧＢ２４ビット色空間で表現されるもので、プリンタエンジン９がＫＣＭＹ１ビット色空間で出力を行う場合、この画像データを、色変換部７でＫＣＭＹ１ビット深さに変換しなければならない。そのためには、αブレンド処理部５から出力されたデータを色処理部７が変換を行うまでの間保持するためのＲＧＢで深さ８ビットの中間ページメモリ６が必要である。中間ページメモリ６に格納されたデータは、レンダリングが終了したところで、色変換部７によって中間ページメモリ６から読み出されてＫＣＭＹ１ビット深さに変換され、ページメモリ８に格納される。プリンタエンジン９は、ページメモリ８から格納されたデータを読み出し、印刷を実行する。
【０００７】
このように、プリンタコントローラ上で行われるＲＧＢ２４ビット色空間での処理は、αブレンディング後のデータを格納するための中間ページメモリ６を、リソースであるメインメモリ上に確保しなければならない。確保すべき中間ページメモリの容量は、ページメモリ８の容量の数倍大きいことから、現行機種ではリソースが不足するものが存在する。このようにリソースが不足する機種では、αブレンディングを行うことができない。
【０００８】
印刷過程で利用される色の表現方法として、黒（Ｋ）、シアン（Ｃ）、マゼンタ（Ｍ）、黄（Ｙ）の配合比率を変えて色を表現するＫＣＭＹ１ビット色空間がある。このＫＣＭＹ１ビット色空間は、プリンタエンジンにより出力する際の色空間と同じで、上記のＲＧＢ２４ビット色空間での処理に比較し、大幅にリソース使用量を削減することができる。したがって、リソースが不足する場合、このＫＣＭＹ１ビット色空間でαブレンディングを行うことができれば望ましい。
【０００９】
少ないリソースでαブレンディングを実現するシステムおよび方法として、濃度の混ぜる割合を指定するα値を面積に変換することにより、ＫＣＭＹ１ビット色空間でαブレンディングを行うことができるシステムおよび方法が提案されている（例えば、特許文献１参照）。この特許文献１に開示のシステムでは、アルファブレンド指定をアルファ値に応じた面積情報に置換するアルファ値置換手段と、描画コマンドを面積情報に応じた処理を行うための描画コマンドに変換する描画コマンド変換手段とを備えることにより、α値を面積に変換して、ＫＣＭＹ１ビット色空間でのαブレンディングを可能にしている。
【特許文献１】特許第３７２８１８３号公報
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上記従来のシステムおよび方法では、αブレンディングを実施するために、透明領域を表現する画像平面（αプレーン）を独立して保持している。αプレーンは、αブレンド用のマスクとして物理メモリに格納されるものである。このため、物理メモリには、中間データを格納するための中間データメモリやプリンタエンジンへ出力する出力データを格納するためのページメモリとは別に、αプレーンをデータとして格納するためのメモリが確保されなければならない。
【００１１】
リソースが著しく少ないハードウェア環境では、メモリの空き容量との関係で独自のαプレーンを持つことができない場合がある。また、αプレーンをもつことができるにしても、αプレーンをもつためには、設計コストや設計時間が必要である。
【００１２】
加えて、リソースに余裕ができた場合、ＲＧＢ２４ビット色空間でαブレンディングを行い、きれいな出力画像を得たいという要求もある。
【００１３】
そこで、αプレーンを持たなくてもαブレンディングを行うことができ、リソースが十分にある場合にはＲＧＢ２４ビット色空間でαブレンディングを行うことができるシステムおよび方法の提供が望まれている。
【課題を解決するための手段】
【００１４】
本発明は、上記課題に鑑み、αプレーンを持つことができないほどの少ないリソースのハードウェア環境では、システムがレンダリングで使用するために保持するディザをαマスクとして使用し、αプレーンを持つことができるハードウェア環境では、そのαプレーンを使用し、ＲＧＢ描画が可能であれば、ＲＧＢ描画を行うといったように、リソースに応じてαブレンド処理を選択することができるようにする。
【００１５】
このように使用可能なリソースに応じてαブレンド処理を選択することができるようにすることで、リソースが豊富な環境ではよりきれいな出力画像を得ることができ、リソースが少なくこれまでαブレンド処理を行うことができなかった環境においても、多少の精度は落ちるものの、システムが保持するディザを使用してαブレンディングを行うことができる。
【００１６】
上記課題は、本発明の印刷処理システム、その印刷処理システムを備える画像形成装置、リソースに応じてαブレンド処理を選択する印刷処理方法およびその方法を実現するための装置可読なプログラムを提供することにより解決することができる。
【００１７】
すなわち、本発明によれば、少なくとも２つの画像を透明度情報であるα値を使用して半透明合成するαブレンド処理を行い、半透明合成した画像の印刷データを出力する印刷処理システムであって、αブレンド処理を行うために使用するリソース量が相違する少なくとも２つのαブレンド処理部と、入力された画像データからαブレンド処理に必要とされるリソース量を計算し、システムにおいて使用可能なリソース量に応じて、少なくとも２つのαブレンド処理部のうちのいずれかを選択するリソース判定部とを備える、印刷処理システムが提供される。
【００１８】
少なくとも２つのαブレンド処理部は、ＲＧＢ色空間でαブレンド処理を行う第１αブレンド処理部と、ＫＣＭＹ色空間でαブレンド処理を行う第２αブレンド処理部とを含むことができる。これらは、システムにおいて使用可能なリソース量が十分にある場合には、第１αブレンド処理部を選択し、ＲＧＢ色空間でαブレンド処理を行うだけのリソース量がない場合には、第２αブレンド処理部を選択することができる。これは、ＲＧＢ色空間で処理を行う場合には深さ８ビットの中間ページメモリをもつ必要があるが、ＫＣＭＹ色空間で処理を行う場合にはこの中間ページメモリをもつ必要はなく、少ないリソース量で処理を行うことができるからである。
【００１９】
また、少なくとも２つのαブレンド処理部は、画像の透明領域および透明度を定義するαマスクを使用してαブレンド処理を行う第３αブレンド処理部をさらに含むことができる。この場合、システムにおいて使用可能なリソース量が十分にある場合には、第１αブレンド処理部を選択し、ＲＧＢ色空間でαブレンド処理を行うだけのリソース量はないが、αマスクをもつだけのリソース量がある場合には、第３αブレンド処理部を選択し、αマスクをもつだけのリソース量もない場合には、第２αブレンド処理部を選択することができる。
【００２０】
第２αブレンド処理部は、使用可能な色を組み合わせて中間色を表現するために使用される色プレーンであるディザをαマスクとして使用する。このシステムは、色相のグラデーションに従って配列する複数の色プレーンのディザを保持しており、αマスクとして使用するディザとしては、描画に使用するディザの隣に配列するディザや、他の色のディザを使用することができる。
【００２１】
ディザには、画像の明るさの密度によって確率的に処理するランダムディザ、画像の明るさから判断して網点からなる幾何学的なパターンに置き換える処理を行うパターンディザといった種類があり、描画に使用するディザとは異なる種類のディザをαマスクとして使用することができる。
【００２２】
このようにディザを使用することで、中間ページメモリが不要となり、αマスクを格納するためのメモリ領域も不要となり、ディザキャッシュといった既存の高速キャッシュメモリを使用して高速描画を行うことができる。また、描画に使用するディザとは異なるディザを使用することは、サイズやドットの配置が異なる場合があり、干渉が起こりにくくなるという点で好ましい。
【００２３】
その他、αマスクとして使用するディザとしては、描画に使用するディザとは異なる解像度のものや、文字や図形等のイメージのサイズやデザインの異なるディザ、そのαマスクとして使用するディザを反転あるいは回転させたものを用いることもできる。これらも、干渉が起こりにくくなるという点で好ましい。
【００２４】
α値を色レベルに変換する色レベル変換部を含み、その色レベルのディザをαマスクとして使用することもできる。α値を色レベルへ変換する方法としては、単純比例により、または、変換式を使用して行うことができる。対応テーブルを使用して変換することもできる。
【００２５】
リソース判定部による判定は、印刷処理システムの起動時、印刷ジョブの開始時、１ページ分の画像データが入力された後のいずれかに行うことができる。なお、印刷ジョブの途中や１ページ分の画像データの処理途中で別のαブレンド処理部が選択されると、それ以前とそれ以降の出力画像の画質が異なるため、例えば、全体１０ページのうち後半の５ページや１ページの中の下半分がそれまでとは異なり粗い画像になってしまったりする。上記のように、システム起動時、ジョブ開始時、１ページ分の画像データ入力後であれば、それまでのジョブや前ページの画像データはそれまでに選択されたαブレンド処理部で、それ以降は新たに選択されたαブレンド処理部で行われるため、途中で切り替わることがなく、１つのジョブ全体または１ページにおいて同じ画質の出力画像を得ることができる。
【００２６】
また、印刷処理システムは、αブレンド処理中にリソース量が不足した場合、αブレンド処理を停止し、リソース量が回復した場合にαブレンド処理を再度実行させることもできる。この場合、リソース量を監視するためのリソース監視部を設け、現在選択されているαブレンド処理部によるαブレンド処理ではリソース量が不足するかどうかを監視し、不足すると判断した場合にその処理を中断させることができる。また、このリソース監視部は、そのαブレンド処理を行うのに十分なリソース量となった場合にその処理を再度実行させることができる。
【００２７】
また、印刷処理システムは、αブレンド処理中にリソース量が不足した場合、αブレンド処理を停止し、リソース判定部が、リソース量を計算し、使用可能なリソース量に応じてαブレンド処理部の１つを選択することもできる。この場合も、リソース量を監視するためのリソース監視部を設け、現在選択されているαブレンド処理部によるαブレンド処理ではリソース量が不足するかどうかを監視することができる。しかしながら、このリソース監視部は、リソース量が不足するかどうかを監視し、不足すると判断した場合にその処理を停止させるのみで、その後は、リソース判定部が、そのときのリソース量を計算し、そのリソース量に応じてαブレンド処理部の１つを選択する。
【００２８】
本発明によれば、上記の印刷処理システムを備える画像形成装置を提供することができ、また、上記のリソース判定部が行うリソース量を計算するステップ、リソース量に応じてαブレンド処理部を選択するステップを含む印刷処理方法、その方法を実現するための装置可読なプログラムを提供することもできる。このプログラムは、記録媒体に格納して提供することができる。
【発明を実施するための最良の形態】
【００２９】
図２は、本実施形態の印刷処理システムの構成例を示した図である。図２では、印刷処理システムとしてプリンタコントローラ２０が示されており、このプリンタコントローラ２０は、ホストＰＣ１０とプリンタエンジン１１とに接続されている。
【００３０】
ホストＰＣ１０は、ＰＤＦ文書やＸＰＳ文書等の複数の画像データを生成し、αブレンド処理を実行させ、プリンタエンジン１１に合成された画像を印刷させるためにプリンタコントローラ２０へ送る。プリンタコントローラ２０へ送られる印刷データは、文字、図形、イメージを描画するための描画命令、色を指定する色指定命令、αブレンド処理を実行するように指示する命令を含み、それらはページ記述言語（ＰＤＬ）で記述される。なお、印刷データは、出力する用紙サイズやステープルの有無等の各種設定情報も含む。入力される画像と合成する画像は、画像データとして予め入力しておき、プリンタコントローラ２０に保持させておくこともできるし、その入力される画像とともに入力されてもよい。また、プリンタコントローラ２０が読み出し可能な外部記憶装置に記憶させておくこともできる。
【００３１】
プリンタコントローラ２０は、リソースとしてメインメモリおよびＣＰＵを含み、ＣＰＵはメインメモリに格納されたプログラムを実行し、メインメモリに格納されたデータを処理する。なお、ＣＰＵがプログラムを実行することで、下記の各部として機能させることができ、メインメモリの各メモリ領域が各メモリとして確保される。
【００３２】
このプリンタコントローラ２０は、ＰＤＬで記述されたソースコードを逐次解釈しながら実行するインタープリタ２１と、印刷データをより簡単な中間データとして保持する中間データメモリ２２と、印刷データに含まれる描画命令により図形描画処理を行う図形描画処理部２３と、印刷データに含まれるαブレンド処理を実行するように指示する命令を受けて、ＲＧＢ２４ビット色空間でαブレンド処理を行うＲＧＢαブレンド処理部２４と、赤、青、緑についてそれぞれ８ビット深さのデータを保持する中間ページメモリ２５と、これら８ビット深さのデータを、黒、シアン、マゼンタ、黄のＫＣＭＹ１ビット深さのデータに変換する色処理部２６と、変換したデータを保持するページメモリ２７とを含む。なお、中間ページメモリ２５は、ページメモリ２７がＫＣＭＹ色空間で、かつプリンタエンジン１１が１ビット深さであり、濃度としてαブレンディングを行う場合に、ページメモリ２７とは別にＲＧＢ色空間で、かつ８ビット深さのメモリをもつ必要があるために設けられる。
【００３３】
半透明合成された画像の出力は、中間ページメモリ２５に保持される描画データが、色処理部２６によってＫＣＭＹ１ビット深さに変換され、ページメモリ２７に描き込まれた後、プリンタエンジン１１がそれを読み出し、出力することにより行われる。
【００３４】
この中間ページメモリ２５は、メインメモリ上に、中間データメモリ２２やページメモリ２７とは別に確保しなければならない上に、ページメモリ２７に比較して数倍大きい容量を必要とする。メインメモリに十分な空き容量が存在する場合は、中間データメモリ２２を確保し、ＲＧＢ２４ビット色空間でαブレンド処理を行うことができる。その一方で、メインメモリに中間ページメモリ２５を確保するだけの空き容量が存在しない場合には、ＲＧＢ２４ビット色空間でαブレンド処理を行うことはできない。
【００３５】
そこで、図２に示すように、少ない空き容量でもαブレンド処理を行えるように、ＫＣＭＹαブレンド処理部２８を備える。このＫＣＭＹαブレンド処理部２８は、印刷データに含まれるαブレンド処理を実行するように指示する命令を受けて、ＫＣＭＹ１ビット色空間でαブレンド処理を行うものである。この色空間での処理には、１ビット深さのメモリが必要とされるが、１ビット深さのメモリとしてページメモリ２７が存在するため、別途メモリを確保する必要がない。また、十分な空き容量がある場合には中間ページメモリ２５を確保してＲＧＢαブレンド処理を行い、中間ページメモリ２５を確保できるほどの十分な空き容量がメインメモリに存在しない場合にはＫＣＭＹαブレンド処理を行うように、メインメモリの空き容量に応じて、ＲＧＢαブレンド処理部２４またはＫＣＭＹαブレンド処理部２８を選択するリソース判定部２９を備える。
【００３６】
これらのＫＣＭＹαブレンド処理部２８およびリソース判定部２９を備えることで、ページメモリ２７に対して直接αブレンド処理を行うことができる。
【００３７】
プリンタコントローラ２０へのデータの入力は、例えばＰＤＦ文書の１ページ分毎とされ、リソース判定部２９は、その入力された１ページ分の画像を描画し、αブレンド処理を行うために必要とされる中間ページメモリ２５のサイズと、αブレンド用のマスクに必要なαマスク用メモリ３０とを計算する。αマスクは、画像の透明領域および透明度を定義するプレーンである。具体的な処理としては、リソース判定部２９は、リソースを管理するリソースマネージャに問い合わせ、現在使用されているリソース量を適宜取得する。そして、リソース判定部２９は、印刷データに含まれて入力された画像データから、その画像を描画し、各αブレンド処理を行った場合に必要とされるリソース量を計算する。その後、リソース判定部２９は、このリソース量と、取得したリソース量から得られるメインメモリの空き容量とから、いずれのαブレンド処理を行うかを決定する。
【００３８】
リソース判定部２９が、中間ページメモリ２５を取得することができないと判定し、αブレンド用のマスクを保持するためのαマスク用メモリ３０も確保することができないと判定した場合、αマスクの代わりにプリンタコントローラ２０が保持するディザを使用してＫＣＭＹ１ビット色空間でαブレンド処理を行うように判定する。このようにすることで、ページメモリ２７に比較して数倍大きい中間ページメモリ２５、αマスクを保持するためのαマスク用メモリ３０を確保する必要がないため、十分なリソースがない場合でもαブレンド処理を行うことができる。
【００３９】
なお、ディザは、使用可能な色数が少ない環境で中間色を表現するために使用される色プレーンであり、描画を行うために使用され、ディザ用メモリ３１に格納されている。プリンタコントローラ２０は、一般に、色相のグラデーションに従って配列する複数の色プレーンのディザを、描画を行うために保持する。αマスクとして使用するディザとしては、描画に使用するディザと同じものを使用することもできるが、そのディザの隣に配列するディザや、他の色のディザを使用することが好ましい。例えば、合成元となるソース画像がＫプレーンであればαマスクとしてはＣプレーンを、また、ソース画像がＹプレーンであればαマスクとしてはＫプレーンを選択することができる。
【００４０】
また、ディザには、画像の明るさの密度によって確率的に処理するランダムディザ、画像の明るさから判断して網点からなる幾何学的なパターンに置き換える処理を行うパターンディザといった種類があり、描画に使用するディザとは異なる種類のディザをαマスクとして使用することができる。
【００４１】
このようにディザを使用することで、中間ページメモリが不要となり、αマスクを格納するためのメモリ領域も不要となり、ディザキャッシュといった既存の高速キャッシュメモリを使用して高速描画を行うことができる。また、描画に使用するディザとは異なるディザを使用することは、サイズやドットの配置が異なる場合があり、干渉が起こりにくくなるという点で好ましい。
【００４２】
その他、αマスクとして使用するディザとしては、描画に使用するディザとは異なる解像度のものや、文字や図形等のイメージのサイズやデザインの異なるディザ、そのαマスクとして使用するディザを反転あるいは回転させたものを用いることもできる。これも、干渉が起こりにくくなるという点で好ましい。
【００４３】
図２には記載していないが、α値を色レベルに変換する色レベル変換部を含むことができる。色レベル変換部によって変換されたその色レベルに対応するディザをαマスクとして使用することができる。α値を色レベルへ変換する方法としては、単純比例により、または、変換式を使用して行うことができる。また、対応テーブルを使用して変換することもできる。
【００４４】
ここで、ディザを使用したαブレンド処理を具体的に説明する。ソース画像に対してはα値が０であれば色レベル０のディザを使用し、デスティネーション画像に対しては反転したディザ、すなわち白黒画像であれば白黒を反転したものを適用する。ある任意のα値を適用した場合の例を、図３に示す。ディザリング後のソース画像とソース用のαマスクとのＡＮＤをとり、同時にデスティネーション画像とデスティネーション用のαマスクとのＡＮＤをとり、最後に両者を重ね合わせて演算結果を得る。ソース用のαマスクはソース画像のα値をディザの色レベルに対応させたもので、色レベルが２５６階調である場合、単純比例により、α値が０であるならば色レベル０、α値が０．５であるならば色レベル１２７、α値が１．０であるならば色レベル２５５のディザを使用することができる。このように必ずしも比例させる必要はなく、変換式や対応テーブル等を使用して変換することもできる。
【００４５】
図３に示す例では、ソース画像に対しαマスクを適用すると、αマスクの黒で表されるマスク部分に対応したソース画像の部分だけが残る。合成するデスティネーション画像に対しては、ソース画像に対して適用したαマスクの白黒を反転させたαマスクを適用し、ソース画像においてαマスクによって消えた部分のみが残る。こうして得られた２つの画像を重ね合わせることで容易に合成画像を得ることができる。
【００４６】
図２に示すプリンタコントローラ２０を使用して行われる処理を、図４を参照して詳細に説明する。この処理は、Ｓ４００から開始され、まず、Ｓ４１０において、リソース判定部２９がメモリの空き容量を確認し、中間ページメモリ２５を確保することが可能であるか否かを判定する。中間ページメモリ２５は、ＲＧＢαブレンド処理を行うために確保されるべきメモリ領域である。
【００４７】
Ｓ４１０において、中間ページメモリ２５を確保することが可能であると判定した場合、Ｓ４２０へ進み、ＲＧＢαブレンド処理部２４によりＲＧＢαブレンド処理を行う。ＲＧＢαブレンド処理では、ドット（点）の透明度を、ＲＧＢの各色の画素値とα値との組み合わせにより１つの点を表現する。なお、各色の画素値は、８ビット（０〜２５５）の値をとる。
【００４８】
描画が終了すると、色処理部２６は、中間ページメモリ２５に保持されたＲＧＢ描画データをＫＣＭＹで出力するプリンタエンジン１１の１ビット深さに変換したものを作成してページメモリ２７に保持させ、プリンタエンジン１１がこれを読み出し、印刷を実行する。なお、この変換は、変換式や変換テーブル等を使用して行うことができる。
【００４９】
この場合、最も精度がよい画像を得ることができるが、ディザあるいはαマスクを使用する場合と比べて大量のメモリが必要となる。
【００５０】
Ｓ４１０において、中間ページメモリ２５を確保することができないと判定した場合、Ｓ４３０へ進み、リソース判定部２９はαマスク用メモリ３０を確保することが可能であるか否かを判定する。Ｓ４３０において、αマスク用メモリ３０を確保することが可能であると判定した場合、Ｓ４４０へ進み、ＫＣＭＹαブレンド処理部２８によりαマスクを使用してＫＣＭＹαブレンド処理を行う。ＫＣＭＹαブレンド処理部２８は、ＫＣＭＹの４色を混合して１つの点の色を表現する。
【００５１】
ＲＧＢレンダリングを行うことができる程度のリソースは存在しないが、αマスクを保持することができる程度のリソースが存在する環境では、αブレンド用のマスクを使用するが、そのαマスク用メモリ３０はＣＰＵが参照可能な場所に展開される。
【００５２】
ここで、αマスクを使用する場合のメリットは、αマスク専用に設計したものを使用することができる点である。これに対し、αマスクを使用するデメリットは、ディザを使用する場合と比較してαマスクを保持するためのメモリ領域が別途必要になることである。
【００５３】
Ｓ４３０において、αマスク領域を確保することができないと判定した場合、Ｓ４５０へ進み、ＫＣＭＹαブレンド処理部２８によりディザをαマスクとして使用し、ＫＣＭＹαブレンド処理を行う。
【００５４】
リソース判定部２９による判定は、上記のように１ページ分の画像が入力されたときに行うことができるが、この印刷処理システムを備える画像形成装置の主電源がＯＮにされたとき、すなわち印刷処理システムが起動されたとき、あるいはメモリが起動したとき、または１つのジョブが開始したときに判定することができる。
【００５５】
リソース判定部２９により行われた判定は、次のページが読み込まれるまで、あるいは次に主電源がＯＮにされるまで、あるいは次にメモリが起動されるまで、または次のジョブが開始されるまで有効とされる。これは、印刷ジョブの途中や１ページ分の画像データの処理途中で別のαブレンド処理部が選択されると、例えば、全体１０ページのうち前半５ページはきれいな画像であるのに後半の５ページは粗い画像になってしまい、それ以前とそれ以降の出力画像の画質が異なることになってしまうからである。
【００５６】
このように判定が、主電源が次にＯＮされるまで、あるいは次のジョブが開始されるまで、または次のページの画像データが入力されるまで有効である場合には、それまでのジョブや前ページの画像データはそれまでに選択されたαブレンド処理部で、それ以降は新たに選択されたαブレンド処理部で行われるため、途中で切り替わることがなく、１つのジョブ全体または１ページにおいて同じ画質の出力画像を得ることができる。
【００５７】
その一方で、その判定が、次に主電源がＯＮにされるまで、あるいは次にメモリが起動されるまで有効である場合、その判定は長時間有効とされ、途中、メモリ不足になる場合がある。メモリ不足になった場合、現在選択されているαブレンド処理部によるαブレンド処理を継続することはできない。
【００５８】
そこで、αブレンド処理を中断し、メモリの空き容量が十分になった後に再度処理を実行することができる。そのために、図５に示すように、リソース量を監視するためのリソース監視部３２を設け、現在選択されているαブレンド処理部によるαブレンド処理ではリソース量が不足するかどうかを監視し、不足すると判断した場合にその処理を停止させることができる。このリソース監視部３２は、リソースマネージャと通信し、リソース量を所定間隔あるいは継続的に監視し、そのαブレンド処理を行うのに十分なリソース量となった場合にその処理を再度実行させることができる。αブレンド処理の再実行は、リソース監視部３２がこれまでαブレンド処理を実行していたαブレンド処理部に指示することにより行われる。
【００５９】
また、αブレンド処理を停止した後、リソース判定部２９により判定を行い、そのときのリソース量に見合ったαブレンド処理部を選択し、αブレンド処理を行うこともできる。すなわち、これまでＲＧＢαブレンド処理を行っていたものが、リソース不足でＲＧＢαブレンド処理を行うことができない場合、リソース判定部２９が判定を行い、例えば、中間ページメモリ２５を必要としないＫＣＭＹαブレンド処理へ切り替えることができる。
【００６０】
この場合、リソース監視部３２が、現在選択されているαブレンド処理部によるαブレンド処理ではリソース量が不足するかどうかを監視することができる。しかしながら、このリソース監視部３２は、リソース量が不足するかどうかを監視し、不足すると判断した場合にその処理を停止させるのみで、その後は、リソース判定部２９が、そのときのリソース量を計算し、そのリソース量に応じてαブレンド処理部の１つを選択する。なお、１ページ分の画像データの処理途中でαブレンド処理部が切り替わると、途中から画質が異なった画像となるため、その１ページ分の画像データは新たに選択されたαブレンド処理部により再度処理を行うことで、その１ページ分は同じ画質の画像とすることができる。
【００６１】
これまで上述した実施形態をもって本発明の印刷処理システムおよび印刷処理方法を説明してきたが、本発明は上述した実施形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【００６２】
したがって、上記の印刷処理システムを備える画像形成装置や、印刷処理方法を実現するための装置可読なプログラムとして構成することもできる。画像形成装置は、ホストＰＣと通信するための通信インタフェース、合成画像を出力するためのプリンタを含む。その他、必要に応じて、スキャナ、ＦＡＸ、コピー機能を備えることができる。また、上記プログラムは、ＣＤ−ＲＯＭやメモリカード等の記録媒体に格納して提供することもできる。
【図面の簡単な説明】
【００６３】
【図１】従来のプリンタコントローラの構成例を示した図。
【図２】本実施形態の印刷処理システムであるプリンタコントローラの構成例を示した図。
【図３】ソース画像にソース画像用のαマスクを適用し、デスティネーション画像にデスティネーション画像用のαマスクを適用し、αマスクを適用した後のソース画像とデスティネーション画像とを結合して作成された合成画像を例示した図。
【図４】本実施形態の印刷処理システムを使用して行われる処理を示したフローチャート図。
【図５】別の実施形態の印刷処理システムであるプリンタコントローラの構成例を示した図。
【符号の説明】
【００６４】
１…ホストＰＣ、２…インタプリタ、３…中間データメモリ、４…レンダラ、５…αブレンド処理部、６…中間ページメモリ、７…色処理部、８…ページメモリ、９…プリンタエンジン、１０…ホストＰＣ、１１…プリンタエンジン、２０…プリンタコントローラ、２１…インタプリタ、２２…中間データメモリ、２３…図形描画処理部、２４…ＲＧＢαブレンド処理部、２５…中間ページメモリ、２６…色処理部、２７…ページメモリ、２８…ＫＣＭＹαブレンド処理部、２９…リソース判定部、３０…αマスク用メモリ、３１…ディザ用メモリ、３２…リソース監視部
【図１】
2009176095.tif 000003
【図２】
2009176095.tif 000004
【図３】
2009176095.tif 000005
【図４】
2009176095.tif 000006
【図５】
2009176095.tif 000007