(57)【特許請求の範囲】
【請求項１】
少なくとも一つのオブジェクトを含む少なくとも一つのバンドを含む印刷ページを処理する方法であって、
前記少なくとも一つのオブジェクトの色データをより低次元の色空間へ変換する降格が可能である場合、前記少なくとも一つのオブジェクトは降格可能であるとマーク付けするステップと、
前記少なくとも一つのバンドに包含されるすべてのオブジェクトが降格可能である場合に、前記少なくとも一つのバンドは降格可能であるとマーク付けするステップと、
前記マーク付けされたバンド及びオブジェクトの色データを元の色空間から降格後の色空間へ降格するステップと、
降格されたオブジェクトを包含する降格されていないバンドについて、前記降格されていないバンドに包含される前記降格されたオブジェクトの色データを前記降格後の色空間から前記元の色空間に戻して昇格し、前記昇格されたオブジェクトの色データに基づいて、前記降格されていないバンドをラスタライズするステップと、
を備える方法。
【請求項２】
前記マーク付けされたバンド及びオブジェクトの色データを降格するステップは、
前記マーク付けされたバンド及びオブジェクトの色データを前記元の色空間から前記降格後の色空間へ変換するステップと、
前記降格後の色空間と前記マーク付けされたバンド及びオブジェクトとを関連させるステップと、
を備える請求項１に記載の方法。
【請求項３】
前記元の色空間は、Ｒ、Ｇ及びＢ色平面が同一のデータを有するＲＧＢ色空間であり、前記降格後の色空間は、前記Ｒ、Ｇ又はＢ色平面のいずれか一面と同一の単一平面を備える請求項２に記載の方法。
【請求項４】
前記元の色空間は、Ｃ、Ｍ及びＹ色平面が同一のデータを有するＣＭＹ色空間であり、前記降格後の色空間は、前記Ｃ、Ｍ又はＹ色平面のいずれか一面と同一の単一平面を備える請求項２に記載の方法。
【請求項５】
前記元の色空間は、Ｃ、Ｍ及びＹのデータがすべてゼロであるＣＭＹＫ色空間であり、前記降格後の色空間は、Ｋ色平面と同一の単一平面を備える請求項２に記載の方法。
【請求項６】
前記マーク付けされたバンド及びオブジェクトの色データを降格するステップは、
複数の平面を有する色空間における色データの簡潔な表現を用いるステップと、
前記マーク付けされたバンド及びオブジェクトに標識を添付して、前記マーク付けされたバンド及びオブジェクトの前記色データが降格されたことを示すステップと、
をさらに備える請求項１に記載の方法。
【請求項７】
前記色データが表示リストに書き込まれる際に、前記色データが降格される請求項１に記載の方法。
【請求項８】
プロセッサによって命令が実行された場合、少なくとも一つのオブジェクトを含む少なくとも一つのバンドを含む印刷ページを処理する方法のステップを実行する前記命令を含むコンピュータ読取可能な媒体であって、当該方法は、
前記少なくとも一つのオブジェクトの色データをより低次元の色空間へ変換する降格が可能である場合、前記少なくとも一つのオブジェクトは降格可能であるとマーク付けするステップと、
前記少なくとも一つのバンドに包含されるすべてのオブジェクトが降格可能である場合に、前記少なくとも一つのバンドは降格可能であるとマーク付けするステップと、
前記マーク付けされたバンド及びオブジェクトの色データを元の色空間から降格後の色空間へ降格するステップと、
降格されたオブジェクトを包含する降格されていないバンドについて、前記降格されていないバンドに包含される前記降格されたオブジェクトの色データを前記降格後の色空間から前記元の色空間に戻して昇格し、前記昇格されたオブジェクトの色データに基づいて、前記降格されていないバンドをラスタライズするステップと、
を備えるコンピュータ読取可能な媒体。
【請求項９】
前記マーク付けされたバンド及びオブジェクトの色データを降格するステップは、
前記マーク付けされたバンド及びオブジェクトの色データを前記元の色空間から前記降格後の色空間へ変換するステップと、
前記降格後の色空間と前記マーク付けされたバンド及びオブジェクトとを関連させるステップと、
を備える請求項８に記載のコンピュータ読取可能な媒体。
【請求項１０】
前記元の色空間は、Ｒ、Ｇ及びＢ色平面が同一のデータを有するＲＧＢ色空間であり、前記降格後の色空間は、前記Ｒ、Ｇ又はＢ色平面のいずれか一面と同一の単一平面を備える請求項９に記載のコンピュータ読取可能な媒体。
【請求項１１】
前記元の色空間は、Ｃ、Ｍ及びＹ色平面が同一のデータを有するＣＭＹ色空間であり、前記降格後の色空間は、前記Ｃ、Ｍ又はＹ色平面のいずれか一面と同一の単一平面を備える請求項９に記載のコンピュータ読取可能な媒体。
【請求項１２】
前記元の色空間は、Ｃ、Ｍ及びＹのデータがすべてゼロであるＣＭＹＫ色空間であり、前記降格後の色空間は、Ｋ色平面と同一の単一平面を備える請求項９に記載のコンピュータ読取可能な媒体。
【請求項１３】
前記マーク付けされたバンド及びオブジェクトの色データを降格するステップは、
複数の平面を有する色空間における色データの簡潔な表現を用いるステップと、
前記マーク付けされたバンド及びオブジェクトに標識を添付して、前記マーク付けされたバンド及びオブジェクトの前記色データが降格されたことを示すステップと、
をさらに備える請求項８に記載のコンピュータ読取可能な媒体。
【請求項１４】
色データをより低次元の色空間へ変換する降格を行う色データ降格システムであって、
少なくとも一つのオブジェクトを含む少なくとも一つのバンドを含む印刷ページを受信するように構成された入力インターフェースと、
前記色データ及び前記色データを降格するための命令を格納するように構成された格納装置と、
前記入力インターフェース及び前記格納装置に連結されたプロセッサを備え、
前記プロセッサは命令を実行して以下のステップを実行するように構成され、当該ステップは、
前記少なくとも一つのオブジェクトの色データが降格可能である場合、前記少なくとも一つのオブジェクトは降格可能であるとマーク付けするステップと、
前記少なくとも一つのバンドに包含されるすべてのオブジェクトが降格可能である場合に、前記少なくとも一つのバンドは降格可能であるとマーク付けするステップと、
前記マーク付けされたバンド及びオブジェクトの色データを元の色空間から降格後の色空間へ降格するステップと、
降格されたオブジェクトを包含する降格されていないバンドについて、前記降格されていないバンドに包含される前記降格されたオブジェクトの色データを前記降格後の色空間から前記元の色空間に戻して昇格し、前記昇格されたオブジェクトの色データに基づいて、前記降格されていないバンドをラスタライズするステップと、
を備えるシステム。
【請求項１５】
前記マーク付けされたバンド及びオブジェクトの色データを降格するステップは、
前記マーク付けされたバンド及びオブジェクトの色データを前記元の色空間から前記降格後の色空間へ変換するステップと、
前記降格後の色空間と前記マーク付けされたバンド及びオブジェクトとを関連させるステップと、
を備える請求項１４に記載のシステム。
【請求項１６】
前記元の色空間は、Ｒ、Ｇ及びＢ色平面が同一のデータを有するＲＧＢ色空間であり、前記降格後の色空間は、前記Ｒ、Ｇ又はＢ色平面のいずれか一面と同一の単一平面を備える請求項１５に記載のシステム。
【請求項１７】
前記元の色空間は、Ｃ、Ｍ及びＹ色平面が同一のデータを有するＣＭＹ色空間であり、前記降格後の色空間は、前記Ｃ、Ｍ又はＹ色平面のいずれか一面と同一の単一平面を備える請求項１５に記載のシステム。
【請求項１８】
前記元の色空間は、Ｃ、Ｍ及びＹのデータがすべてゼロであるＣＭＹＫ色空間であり、前記降格後の色空間は、Ｋ色平面と同一の単一平面を備える請求項１５に記載のシステム。
【請求項１９】
前記マーク付けされたバンド及びオブジェクトの色データを降格するステップは、
複数の平面を有する色空間における色データの簡潔な表現を用いるステップと、
前記マーク付けされたバンド及びオブジェクトに標識を添付して、前記マーク付けされたバンド及びオブジェクトの前記色データが降格されたことを示すステップと、
をさらに備える請求項１４に記載のシステム。
【請求項２０】
前記色データ降格システムを含むカラー印刷システムにおいて前記色データがラスタライズされる際に、前記色データを降格する請求項１４に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ圧縮に関し、特に、色データを降格させるためのシステム及び方法に関する。
【背景技術】
【０００２】
画像印刷及び表示システムでは、一般にフルカラー色空間を用いて画像データを処理する。例えば、画像表示システム（例えば、モニター）は赤、緑、及び青（「ＲＧＢ」）色空間を用いて表示データを表し、画像印刷システム（例えば、カラープリンタ）はシアン、マゼンタ、イエロー、及びブラック（「ＣＭＹＫ」）色空間を用いて印刷データを処理しうる。このような多重平面の色空間表現下では色データは多次元のものであることがあり、これにより格納及び処理コストが大きく増加する。
【０００３】
しかし、カラー印刷及び／又は表示ジョブの大部分はグレースケールデータを含むことがある。例えば、いくつかの印刷ジョブは黒テキストのみ、又は大量の黒テキストとカラー画像とで構成されうる。他の印刷ジョブは黒とカラーグラフィックスとが交ざったもの又はカラー画像と交じり合った白黒画像を含みうる。グレースケールデータは一次元のグレースケール色空間によって適切に表現することができるので、カラー印刷システムにおいてフルカラー色空間を用いて、グレースケールデータを含む印刷ジョブ全体を処理することは効率的ではないことがある。例えば、フルカラー色空間表現を用いてグレースケールデータを格納すると、３〜４倍のメモリが必要となりうる。また、同様の要因によりデータの読み出し及び書き込みも遅くなりうる。
【０００４】
従来、高度な圧縮方法（例えばＪＰＥＧ）等を用いて色データサイズの縮小が行われることがあった。実際にはグレースケールである多次元の色データに圧縮方法を適用すると、色データのサイズを大幅に縮小することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
先行技術に開示されるシステム及び方法を用いて色データを効率的に圧縮することができるが、それでもなおこれらは最善策には及ばない。例えば、圧縮及び解凍により重大な時間的コスト及びメモリコストを負うことになりうる。また、色データは解凍時に処理されることが多く、これにより圧縮による潜在的利益の多くが減少することがある。例えば、画像の解凍時にレンダリングやラスタライジング等の画像処理が行われ、その結果多次元の色データを処理することになりうる。よって、カラー印刷又は表示システムにおいてより効果的にグレースケールデータを表現するシステム及び方法が必要である。
【課題を解決するための手段】
【０００６】
本発明によれば、少なくとも一つのオブジェクトを含む少なくとも一つのバンドを含む印刷ページを処理する際に色データを降格するシステム及び方法が提供される。前記少なくとも一つのオブジェクトの色データをより低次元の色空間へ変換する降格が可能である場合、前記少なくとも一つのオブジェクトは降格可能であるとマーク付けする。前記少なくとも一つのバンドに包含されるすべてのオブジェクトが降格可能である場合に、前記少なくとも一つのバンドは降格可能であるとマーク付けする。前記マーク付けされたバンド及びオブジェクトの色データを元の色空間から降格後の色空間へ降格する。降格されたオブジェクトを包含する降格されていないバンドについて、前記降格されていないバンドに包含される前記降格されたオブジェクトの色データを前記降格後の色空間から前記元の色空間に戻して昇格し、前記昇格されたオブジェクトの色データに基づいて、前記降格されていないバンドをラスタライズする。
【０００７】
また、本発明の実施例は、コンピュータ読取可能メディア又はコンピュータ読取可能メモリを用いるプロセッサによって作成、格納、アクセス、又は修正されるソフトウェア、ファームウェア及びプログラム命令に関する。説明される方法は、一以上のコンピュータ、ディスプレイ装置、及び／又は印刷装置上で実行しうる。
【０００８】
本発明の付加的な特徴及び効果は、以下の記述において説明され、その一部は当該記述より明らかであり、又は本発明の実施により理解されうる。本発明の目的及びその他の効果は、特に、添付されたクレームにおいて摘示される要素及び組合せによって実現され、達成される。当然のことながら、先の一般的記載及び後の詳細な説明は、例示的かつ説明的なものであり、請求の範囲に記載された発明を限定するものではない。これら及びその他の実施例について図面を参照しながら詳細に説明する。
【図面の簡単な説明】
【０００９】
【図１】図１は、例示的なプリンタのブロック図を図示している。
【図２】図２は、色データ降格に関する、例示的な動作処理のフローチャートを図示している。
【図３】図３は、例示的な印刷ページの例示的な降格フラッグ表を図示している。
【発明を実施するための形態】
【００１０】
ここで、添付の図面に図示される以下の様々な実施例について詳細に説明する。図面においては、可能な限り、同じ参照符号が同様又は類似の部分を参照する際に用いられる。
【００１１】
図１は本発明の実施例による例示的なプリンタ１０のブロック図を図示する。一般に、プリンタ１０は電子データから物理的な文書を作成するのに構成することができるあらゆる装置であることができ、レーザプリンタやＬＥＤプリンタなどの電子写真プリンタ、インクジェットプリンタ、感熱式プリンタ、レーザイメージャ、及びオフセットプリンタを含むがこれらに限定されない。プリンタ１０は、ファクシミリ機器及びデジタルコピー機に装備されるような画像送信／受信機能、画像スキャン機能、及び／又はコピー機能を有しうる。本明細書において説明される方法及び装置は、適切な変形を加えて本明細書に開示される実施例に適合するような形でこれらの様々なプリンタ型機器に適用することができる。
【００１２】
いくつかの実施例においては、プリンタ１０は入力／出力ポート１５０を有することがあり、プリンタ１０はＩ／Ｏポート１５０及び接続１５１を用いて入力デバイス５０にアクセスすることが可能となりうる。プリンタ１０は入力デバイス５０から入力色データを受信しうる。例えば、入力デバイス５０は、コンピュータワークステーション、デスクトップコンピュータ、もしくはラップトップコンピュータ等の汎用コンピュータ又はプリンタ１０とともに用いることができるその他のあらゆるコンピュータデバイスであることができる。ある例示的な実施例においては、接続１５１経由でデータを送受信するインターフェースとしてＩ／Ｏポートが入力デバイス５０に含まれうる。
【００１３】
入力デバイス５０は従来の通信プロトコル及び／又はデータポートインタフェースを用いて、有線又は無線接続１５１を経由してプリンタ１０に連結されうる。一般に、接続１５１はデバイス間のデータ通信を実現するあらゆる通信チャネルでありうる。ある実施例においては、例えば、適切な接続１５１を通じたデータ通信のため、各デバイスにはＵＳＢ、FIREWIRE、及び／又はシリアルもしくはパラレルポート等の従来のデータポートが設けられうる。通信リンクは無線リンクもしくは有線リンク又は入力デバイス５０とプリンタ１０との間の通信を実現する本発明の実施例に適合するあらゆる組合せであることができる。
【００１４】
例示的プリンタ１０はさらにＣＰＵ１２０、ファームウェア１３０、メモリ１４０、プリントエンジン１６０及び二次記憶装置１７０を有しうる。いくつかの実施例においては、ＣＰＵ１２０、ファームウェア１３０、メモリ１４０、Ｉ／Ｏポート１５０及び二次記憶装置は、データバス１０１を用いて連結されうる。いくつかの実施例によれば、ＣＰＵ１２０の制御の下、Ｉ／Ｏポート１５０から受信されたデータはメモリ１４０に置かれうる。いくつかの実施例においては、プリンタ１０はプリンタ動作システム及びその他の適切なアプリケーションソフトウェアを含むソフトウェアを実行することができる。いくつかの実施例においては、プリンタ１０におけるその他のオプションのうち、用紙サイズ、出力トレイ、色選択、及び印字解像度をユーザ設定可能とすることができる。
【００１５】
いくつかの実施例においては、ファームウェア１３０は命令及びデータ等を有し、これらには起動シーケンス、あらかじめ定義されたルーチン、色空間変換を実行するルーチン及びその他のコードが含まれるがこれらに限定されない。いくつかの実施例においては、ＣＰＵ１２０により実行される前に、ファームウェア１３０のコード及びデータはメモリ１４０にコピーされうる。ある実施例においては、ファームウェア１３０のデータ及び命令はアップグレードすることができる。
【００１６】
いくつかの実施例においては、ファームウェア１３０は表示リスト構築ルーチンを含みうる。表示リストとは、出力画像を定義する一連のグラフィックスコマンドであることができ、このコマンドを実行することによって画像を作成（例えばレンダリング）することができる。いくつかの実施例では、ファームウェア１３０は、色データラスタライゼーションルーチンをさらに含みうる。色データラスタライゼーションルーチンは、表示リストの色データコマンドをビットマップデータに変換しうる。色データラスタライゼーションルーチンはさらにプリンタ１０により印刷媒体上にピクセルがどのように印刷されるかに関する情報を含むフレームバッファを用いうる。フレームバッファはメモリ１４０又は二次記憶装置１７０に格納しうる。ラスタライズされたビットマップデータはフレームバッファに格納しうる。いくつかの実施例においては、色データラスタライゼーションルーチンは、色データのサイズが比較的大きい場合に色データをブロック毎にラスタライズしうる。例えば、一回につき印刷ページの一バンドの色データをラスタライズしうる。
【００１７】
例示的プリンタ１０は、例えば、標準ＲＧＢ（ｓＲＧＢ）色空間、ＣＭＹ色空間、ＣＭＹＫ色空間、又はその他のあらゆる種類の色空間を用いて色データを表しうる。色空間は複数の色平面を有しうる。例えば、ｓＲＧＢ又はＣＭＹ色空間は三つの色平面を有し、ＣＭＹＫ色空間は四つの色平面を有しうる。いくつかの実施例では、色データは多次元のデータとしてメモリ１４０及び／又は二次記憶装置１７０に格納しうる。また、いくつかの実施例では、色データはＣＰＵ１２０、ファームウェア１３０、メモリ１４０、Ｉ／Ｏポート１５０、二次記憶装置１７０、及びプリントエンジン１６０の間で一次元データ又は多次元データとして転送されうる。さらに、ファームウェア１３０に含まれるルーチンにより複数色平面の色データが処理されうる。いくつかの実施例においては、多次元の色データは並列式又は順次式に転送及び／又は処理されうる。例えば、ラスタライゼーションルーチンによりＣＭＹＫ色データは並列式にラスタライズしうる。
【００１８】
本明細書の開示の目的上、構成要素とは色情報を含み、他のこのようなデータと独立しているあらゆるデータであることができる。いくつかの実施例においては、構成要素は独立して格納され、処理され、転送されうる。例えば、構成要素は画像又は色塗りつぶしコマンド等の入力色データのサブセットを含む表示リストオブジェクトでありうる。他の例として、構成要素は親構造に平坦化する前に独立したメモリ空間にレンダリングされるグループ又はキャンバスでありうる。更なる例として、入力色データは画像（例えば印刷ページ）を表し、構成要素は例えばバンド、帯領域又はタイル等の画像の幾何学的サブセットであることができ、これはメモリの使用の縮小又はラスタライゼーションの速さの増加のため、実行に固有の態様に保たれる。いくつかの実施例では、構成要素は印刷ページ全体又は印刷ジョブ全体であることができ、このような場合には構成要素はすべての入力色データを含みうる。
【００１９】
いくつかの実施例においては、印刷すべき色データはすべてグレースケールデータでありうる。例えば、印刷ページは黒テキストのみを含みうる。いくつかの他の実施例においては、色データは複数の構成要素を含み、一以上の構成要素がグレースケールデータのみを含みうる。いくつかの実施例においては、印刷すべき色データは黒テキストの構成要素とカラー画像の他の構成要素を含みうる。このようなグレースケールデータは一次元グレースケール色空間によって十分に表現することができる。
【００２０】
いくつかの実施例においては、構成要素は様々なネスティングレベルの階層を形成しうる。ある構成要素はより高いレベルの他の構成要素にネストされうる。例えば、テキストデータを含むバンドは印刷ページ全体の構成要素にネストされる構成要素であることができ、このバンドの構成要素には同様により下位レベルのオブジェクト構成要素がネストされうる。本明細書の開示の目的上、他の構成要素にネストする構成要素は「下位構成要素」と称し、下位構成要素がネストする構成要素を「包含構成要素」と称する。例えば、上述の例における印刷ページ構成要素、バンド構成要素及びオブジェクト構成要素は三レベルの階層を形成し、印刷ページ構成要素はバンド構成要素の包含構成要素であり、バンド構成要素は印刷ページの下位構成要素であるとともにオブジェクト構成要素の包含構成要素であり、オブジェクト構成要素はバンド構成要素の下位構成要素である。
【００２１】
プリンタ１０上での色データの格納、処理、及び転送のためのリソース要件を減らすために、すべてグレースケールデータしか有しない構成要素の色データは降格しうる。本明細書の開示の目的上、色空間はより低次元の色空間に変換できる場合には「降格可能」と称される。例えば、ＲＧＢ、ＣＭＹ、又はＣＭＹＫの一般クラスにおける色空間は一次元色空間に変換できるので、降格可能である。色データは降格可能な色空間で表現することができ、降格されたデータがより低次元の色空間において正確に表現することができる場合、そのデータは「降格可能」と称される。例えば、Ｒ、Ｇ、及びＢ平面内のデータが同一（つまり画像は無彩色である、Ｒ＝Ｇ＝Ｂ）であるＲＧＢ色空間における色データについては、一次元空間において正確に表現することができるので、降格可能である。ある構成要素は、当該構成要素内の色データがすべて降格可能である場合は「降格可能」と称される。例えば、印刷ページの、黒テキストのみを含む帯領域構成要素は対応する色データがグレースケールデータに降格可能であるので、降格可能である。
【００２２】
いくつかの実施例においては、ファームウェア１３０はプリンタ１０の色データに色データ降格処理を実行するためのルーチンを含みうる。いくつかの実施例によれば、ファームウェア１３０は表示リスト構築ルーチンのサブルーチンとして色データ降格ルーチンの各部分を含みうる。例えば、構成要素は表示リストに順次書き込まれ、色データ降格ルーチンにより各構成要素の色データが降格可能かを判断しうる。いくつかの実施例においては、色データ降格ルーチンのいくつかの部分が、ファームウェア１３０に格納される色データラスタライゼーションルーチンのサブルーチンとして含まれうる。例えば、色データ降格ルーチンにより降格可能な構成要素の色データが降格され、色データラスタライゼーションルーチンにより降格された形式で降格された色データをラスタライズしうる。
【００２３】
本明細書の説明の目的上、降格された色空間は、ｎ次元の色空間の降格可能な色値に対応するｍ次元の値のセットで、ｍ≦ｎであると定義しうる。降格可能な色値は、ｍ次元の降格された色空間からｎ次元の色データを復旧するために存在する、昇格と称する逆関数を行うためのものである。例えば、Ｃ＝｛（Ｒ，Ｇ，Ｂ），でＲ＝Ｇ＝Ｂ｝で提供される数値のセットは三次元ＲＧＢ色空間で降格可能であり、一次元の降格された色空間のＣ’＝｛（Ｒ）｝，（又は｛（Ｇ）｝，又は｛（Ｂ）｝）のセットに対応しうる。三次元ＲＧＢ色空間において数値がＲ＝Ｇ＝Ｂである場合、他の二色平面にわたって一次元の降格された色空間のＣ’＝｛（Ｒ）｝，（又は｛（Ｇ）｝，又は｛（Ｂ）｝）の数値を複製することによってこれらの数値を復旧できるので、これらの数値は降格可能である。一般に、ある数値のセットを色空間において降格可能とする特性は当該色空間固有のものであり、また、当該色情報を利用するアプリケーションによっても判断しうる。
【００２４】
いくつかの実施例においては、色データの降格は、より高次元の色空間から他のより低次元の色空間へ色データを変換することによって実行しうる。例えば、降格可能な色データにおいてＣ、Ｍ及びＹ平面のピクセルがすべてゼロ（つまりＣ＝Ｍ＝Ｙ＝０）であり、このような色データはＣＭＹＫ色空間から一次元の色空間へ変換しうる。色変換はＣ、Ｍ及びＹ平面のピクセル値を除去し（なぜならＣ＝Ｍ＝Ｙ＝０）、一次元データ配列としてＫ平面に当該ピクセル値を保存することを含みうる。ある実施例によれば、降格はプリンタ１０の色管理モジュールを用いて実行することができる。いくつかの実施例においては、色データの降格はより高次元の色空間における色データのより簡潔な表現を用いて実行することもできる。例えば、降格可能なＣＭＹＫ色データを含む構成要素のＣ、Ｍ及びＹ平面のピクセル値がすべてゼロであり、Ｋ平面に実質的なデータが含まれる場合、Ｃ、Ｍ及びＹ平面のデータはプリンタ１０によって格納又は処理されないことがある。
【００２５】
また、一以上の色データ降格動作を実行するルーチンの各部分は、着脱可能なコンピュータ読取可能な媒体、例えばハードドライブ、コンピュータディスク、ＣＤ−ＲＯＭ、ＤＶＤ  ＲＯＭ、ＣＤ±ＲＷもしくはＤＶＤ±ＲＷ、ＵＳＢフラッシュドライブ、メモリスティック又はその他の適切な媒体に格納することができ、プリンタ１０のあらゆる適切なサブシステム上で動作しうると考えられる。例えば、色空間変換動作を実行するアプリケーションの各部分は着脱可能なコンピュータ読取可能な媒体に存在し、メモリ１４０にコピーされたファームウェア１３０のルーチンを用いて、ＣＰＵ１２０により読み出されて実行されうる。
【００２６】
いくつかの実施例においては、ＣＰＵ１２０は汎用プロセッサ、専用プロセッサ、または組み込みプロセッサでありうる。ＣＰＵ１２０は制御情報及び命令を含むデータをメモリ１４０及び／又はファームウェア１３０と交換することができる。プリンタ１０はまた、アプリケーションの各部分を実行して、開示された実施例に合致する色データ降格処理を実行することができる、その他の特定用途向けＩＣ（ＡＳＩＣ）及び／又はフィールドプログラマブルゲートアレイ（ＦＰＧＡ）１８０を有しうる。
【００２７】
いくつかの実施例においては、入力色データ、色空間プロファイル及び降格された色データはメモリ１４０又は二次記憶装置１７０に格納しうる。メモリ１４０はあらゆる形式のダイナミックランダムアクセスメモリ（「ＤＲＡＭ」）であることができ、例えばＳＤＲＡＭ又はＲＤＲＡＭが含まれるがこれらに限定されない。例示的な二次記憶装置１７０は、内蔵又は外付けハードディスク、メモリスティック（商標）、又はプリンタ１０で用いることができるその他のあらゆるメモリ記憶装置でありうる。本発明のいくつかの実施例によれば、降格された色データ又は色降格処理に関するその他のあらゆるデータを格納するメモリは、専用メモリもしくは汎用メモリの一部を形成するもの、又はこれらの組合せであることができる。いくつかの実施例においては、メモリを動的に割り当てて、必要に応じてデータを保持しうる。いくつかの実施例においては、データを格納するのに割り当てられたメモリは、処理後に動的に開放されうる。
【００２８】
いくつかの実施例においては、ＣＰＵ１２０は命令及びデータに基づいて動作し、ＡＳＩＣ／ＦＰＧＡ１８０及びプリントエンジン１６０を制御し及びデータを提供して印刷文書を生成しうる。いくつかの実施例においては、ＡＳＩＣ／ＦＰＧＡ１８０もプリントエンジン１６０を制御し及びデータを提供しうる。また、ＦＰＧＡ／ＡＳＩＣ１８０は一以上の変換、圧縮及び色変換アルゴリズムを実行しうる。
【００２９】
いくつかの実施例においては、プリンタ１０はレーザーカラープリンタであることができ、プリントエンジン１６０は駆動回路、機械コントローラ、ビーム検知センサ、転写ベルト位置センサ、及びプリントヘッド等のいくつかのコンポーネントを有しうる（図示せず）。いくつかの実施例においては、プリントヘッドからのレーザー光は走査ミラー及びビームからドラムへのガイドミラーに反射され、感光体ドラム上に帯電領域と放電領域の潜像が形成されうる。感光体ドラムからの潜像は、現像ステーションにおいてトナーを用いて現像されてから、用紙等の印刷媒体に転写されうる。用紙は転写ベルト等に搬送され、現像ステーションで現像されたトナー像が用紙に転写されうる。
【００３０】
いくつかの実施例においては、カラー画像等の複数コンポーネント画像の場合は、潜像形成処理は各コンポーネントについて繰り返される。例えば、シアン（「Ｃ」）、マゼンタ（「Ｍ」）、イエロー（「Ｙ」）、及びブラック（「Ｋ」）を用いるＣＭＹＫカラープリンタについては、感光体ドラム上の潜像形成処理はＣ、Ｍ、Ｙ及びＫの各色について繰り返されうる。四色すべてのトナー像が転写ベルトに形成された後に完全なトナー像が用紙に転写される。
【００３１】
いくつかの実施例においては、特定の構成要素の色データがラスタライゼーションの際に降格されると、潜像形成処理は降格された色空間の降格された色データについて実行されうる。例えば、グレースケールデータを含み、色データを含まない構成要素について、ＣＭＹＫカラープリンタにより感光体ドラム上に黒色（Ｋ）の潜像が形成され、黒のトナー像が用紙に転写されて印刷されうる。Ｃ、Ｍ、及びＹ平面のデータは無視することができる。
【００３２】
図２は本明細書に開示される実施例に合致する色データを降格する例示的な動作処理２０のフローチャートを図示している。図２で説明されるアルゴリズムは、上述のプリンタ１０に適用することができ、又は例えばコピー機や複合機等のその他の様々な形式の印刷装置、及び例えばモニタ等の様々な形式の視覚的表示装置に適用することができ、これらは当該装置に固有の適切な変形が加えられ、本明細書に開示される実施例に一致する態様のものである。
【００３３】
ステップ２０１において、印刷画像は複数の構成要素に分割しうる。例えば、印刷ページは複数の帯領域に分割しうる。いくつかの実施例においては、構成要素は、ある構成要素がより高いレベルの他の構成要素にネストされるような様々なネスティングレベルの階層を形成しうる。例えば、上述の例のそれぞれの帯領域構成要素には一以上の、より低いレベルのオブジェクト下位構成要素がネストされうる。例における印刷ページ構成要素、帯領域構成要素及びオブジェクト構成要素は三つのレベルの階層を形成する。帯領域構成要素及びオブジェクト構成要素は印刷ページ構成要素の下位構成要素であり、オブジェクト構成要素は帯領域構成要素の下位構成要素である。ステップ２０１においては、構成要素のリストが作成されて、後に表示リスト構築の際に用いられうる。
【００３４】
ステップ２０２において、降格フラグ表を作成しうる。降格フラグ表は、それぞれが画像の構成要素に対応する複数の降格フラグを含みうる。いくつかの実施例においては、降格フラグはブーリアンフラグであって、真（１）か偽（０）のいずれかの値をとりうる。降格フラグが真である場合、対応する構成要素が降格可能であることを示しうる。同様に、降格フラグが偽である場合、対応する構成要素が降格可能ではないことを示しうる。また、降格フラグは、整数フラグ等のその他あらゆる種類のフラグであることができると考えられる。
【００３５】
ステップ２０３において、すべての降格フラグを所定の状態に初期設定しうる。いくつかの実施例においては、降格フラグは真に初期設定され、すべての構成要素は降格可能であることを示しうる。また、降格フラグは偽に初期設定され、すべての構成要素は降格可能ではないことを示しうる。降格フラグ表の降格フラグは表示リストの処理中における様々な時点で更新しうる。
【００３６】
いくつかの実施例によれば、包含構成要素の降格フラグはそのすべての下位構成要素の降格フラグに基づいて設定しうる。例えば、包含構成要素の降格フラグは、当該下位構成要素の降格フラグがすべて真であれば真に設定され、包含構成要素の降格フラグは、下位構成要素のいずれかの降格フラグが偽であれば偽に設定されうる。他の例としては、包含構成要素の降格フラグが真である場合でも、包含構成要素に偽のフラグを含む下位構成要素を組み込むことによって包含構成要素の降格フラグは偽に変更されうる。包含構成要素の降格フラグが偽である場合、包含構成要素に偽フラグ又は真フラグのいずれかを含む下位構成要素を組み込むことによっても包含構成要素の降格フラグは変更されないことがある。図示の目的上、図２で図示される例示的実施例においては、すべての降格フラグは真に初期設定される（すべてのフラグ＝１）。
【００３７】
降格フラグ表が初期設定された後、表示リスト構築ステージ２１が開始され、ステップ２０４〜２１２を含みうる。ステップ２０４では最初又は次の構成要素が検討され処理されうる。いくつかの実施例においては、構成要素は階層順に処理されうる。例えば、包含構成要素の処理は、そのいずれの下位構成要素の処理が開始される前に開始することができ、そのすべての下位構成要素の処理が終了してから終了することができる。
【００３８】
ステップ２０５においては、現在の構成要素が降格可能か判断されうる。構成要素は、当該構成要素のすべての色データが降格可能であれば、降格可能である。色データは、当該データがより低次元の降格可能な色空間において正確に表現できれば、降格可能である。いくつかの実施例においては、現在の構成要素に関連する色空間について確認を行って、色空間が降格可能か判断しうる。例えば、関連する色空間がＣＭＹＫ色空間である場合、降格可能と判断しうる。次に、現在の構成要素の色データについて確認を行って、当該データがより低次元の色空間で表現することができるか判断しうる。例えば、色データがＣＭＹＫ色空間で表現することができ、Ｃ、Ｍ及びＹ平面のピクセル値がすべてゼロである場合（つまりＣ＝Ｍ＝Ｙ＝０）、当該色データは一次元空間において正確に表現することができ、よって色データは降格可能と判断しうる。他の例としては、色がＲＧＢ色空間において表現することができ、Ｒ、Ｇ、及びＢ平面のピクセル値が同一である場合（つまりＲ＝Ｇ＝Ｂ）、色データは降格可能と判断しうる。さらなる例として、色がＣＭＹ色空間で表現することができ、Ｃ、Ｍ、及びＹ平面のピクセル値が同一である場合（つまりＣ＝Ｍ＝Ｙ）、色データは降格可能と判断しうる。よって、現在の構成要素の色データが降格可能である場合、現在の構成要素は降格可能と判断しうる。
【００３９】
ステップ２０５において現在の構成要素が降格可能ではないと判断された場合、ステップ２０６において現在の構成要素の降格フラグは偽（つまりフラグ＝０）と設定されうる。ステップ２０７において、現在の降格フラグの更新に基づいて、現在の構成要素を含むすべての構成要素について降格フラグは更新されうる。例えば、偽の降格フラグを有する現在の構成要素が真の降格フラグを有する包含構成要素に組み込まれてネストされる場合、包含構成要素の降格フラグは偽と設定されうる。偽の降格フラグを有する包含構成要素については更新を行わないことがありうる。
【００４０】
いくつかの実施例においては、現在の構成要素の包含構成要素が互いに階層を形成し、これらの包含構成要素の降格フラグが階層におけるそのレベルの順序で更新されうる。例えば、現在の構成要素は帯領域構成要素にネストされ、これがさらにページ構成要素にネストされうる。帯領域構成要素の降格フラグはまず現在の構成要素の降格フラグに基づいて更新され、次にページ構成要素の降格フラグは帯領域構成要素の降格フラグに基づいて更新されうる。現在の構成要素の降格フラグが偽と設定された場合、現在の構成要素のすべての包含構成要素の降格フラグも偽と設定されうる。
【００４１】
ステップ２０８においては、フルカラーの色空間が現在の構成要素とその現在の構成要素を有するすべての構成要素と関連しうる。例えば、ＣＭＹＫ色空間等のプリンタ１０の色空間は、降格可能ではない現在の構成要素とそのすべての包含構成要素と関連しうる。
【００４２】
ステップ２０５において、現在の構成要素が降格可能と判断された場合、降格フラグは更新されないことがあり、ステップ２０９において、現在の構成要素の色データが降格されうる。いくつかの実施例においては、まず現在の構成要素がラスタライズ可能な構成要素か判断されうる。本明細書の開示の目的上、ラスタライズ可能な構成要素とは、色情報を含み、他のこのようなデータからは独立してラスタライズしうるあらゆるデータでありうる。例としては、ラスタライズ可能な構成要素とはバンド、帯領域又はタイル等の印刷ページの幾何学的サブセットであることができ、これはメモリの使用の縮小又はラスタライゼーションの速さの増加のため、実行に固有の態様に保たれる。いくつかの実施例では、ラスタライズ可能な構成要素は印刷ページ全体又は印刷ジョブ全体であることができる。よって、現在の構成要素がラスタライズ可能な構成要素である場合には現在の構成要素の色データは降格可能でありうる。他の例としては、ラスタライズ可能な構成要素は、テキストの文字、塗りつぶしコマンド、画像コマンド等の独立した描画可能なオブジェクトでありうる。
【００４３】
いくつかの実施例においては、構成要素の色データの降格はより高次元の色空間からより低次元の表現に色データを変換することによって実行しうる。例えば、ゼロ値のＣ、Ｍ及びＹ平面を含むＣＭＹＫ色データは一次元の表現に変換されうる。このような変換はＣ、Ｍ及びＹ平面のデータを削除して（なぜならＣ＝Ｍ＝Ｙ＝０）、Ｋ平面のピクセル値を保持することによって一次元の表現を取得することを含みうる。他の例としては、Ｒ、Ｇ及びＢ平面において同一のピクセル値（つまりＲ＝Ｇ＝Ｂ）を有するＲＧＢ色データは一次元の表現に変換されうる。このような変換はいずれかの一平面（例えばＲ平面）にデータを保持し、その他の二平面（例えばＧ及びＢ平面）のデータを削除することを含みうる。さらなる例としては、Ｃ、Ｍ、及びＹ平面において同一のピクセル値（つまりＣ＝Ｍ＝Ｙ）を有するＣＭＹ色データは、一次元の表現に変換されうる。このような変換はいずれかの一平面（例えばＣ平面）にデータを保持し、その他の二平面（例えばＭ及びＹ平面）のデータを削除することを含みうる。ある実施例においては、降格はプリンタ１０の色管理モジュールによって実行しうる。ステップ２１０においては、対応する降格された色空間は現在の構成要素と関連しうる。例えば、一次元空間は黒テキストのみを含む構成要素と関連しうる。
【００４４】
いくつかの実施例においては、ステップ２０９において、色データの降格はより高次元の色空間における色データのより簡潔な表現によっても実行しうる。例えば、Ｃ、Ｍ及びＹ平面におけるゼロピクセル値は、色データがＣＭＹＫ色空間によって表現されたままでもプリンタ１０によって格納又は処理されないことがある。このような実施例によれば、ステップ２１０において、ブーリアンフラグが現在の構成要素に添付され、現在の構成要素の色データが降格されたかを示しうる。例えば、真を示すブーリアンフラグは、ステップ２０９において現在の構成要素の色データが降格されたことを示しうる。
【００４５】
ステップ２０８又はステップ２１０の後に、アルゴリズムはステップ２１１に進みうる。ステップ２１１において、現在の構成要素は、表示リストに書き込まれうる。例えば、ステップ２０５において現在の構成要素が降格可能と判断された場合、現在の構成要素は表示リストにフルカラーで書き込まれうる。ステップ２０５において現在の構成要素が降格可能ではないと判断された場合、現在の構成要素は表示リストに降格された形式で書き込まれうる。ステップ２１２において、アルゴリズムはすべての構成要素の色データが表示リストに書き込まれて検討されたか判断する。すべての構成要素の色データが検討された場合、アルゴリズムはラスタライゼーションステージ２２へ進みうる。いずれかの構成要素が検討されていない場合、アルゴリズムは表示リストの画像のすべての構成要素が検討されるまでステップ２０４〜２１４を繰り返しうる。
【００４６】
ラスタライゼーションステージ２２は、ステップ２１３〜２１７を含みうる。ステップ２１３において、最初又は次のラスタライズ可能な構成要素が検討されうる。いくつかの実施例においては、表示リストにあるいくつかの構成要素で、表示リスト構築ステージ２１で検討されたものは、ラスタライズ可能な構成要素でありうる。いくつかの実施例においては、ラスタライズ可能な構成要素は階層順にラスタライズされうる。例えば、包含構成要素の処理は、そのいずれかの下位構成要素の処理が開始される前に開始し、その下位構成要素の処理が完了した後に終了する。
【００４７】
ステップ２１４において、アルゴリズムは現在のラスタライズ可能な構成要素が降格されたか判断しうる。いくつかの実施例においては、現在の構成要素の降格フラグを、降格フラグ表において参照しうる。降格フラグが真である場合、現在のラスタライズ可能な構成要素は降格されたと判断し、降格フラグが偽である場合、対象とされる現在の構成要素は降格されていないと判断しうる。いくつかの実施例においては、現在の構成要素と関連する色空間は確認されうる。色空間が降格された空間である場合、現在のラスタライズ可能な構成要素は降格されたと判断し、色空間がフルカラー空間である場合、対象とされる現在の構成要素は降格されていないと判断しうる。いくつかの実施例においては、現在の構成要素に添付されたブーリアンフラグが確認されうる。ブーリアンフラグが真である場合、現在のラスタライズ可能な構成要素は降格されたと判断し、ブーリアンフラグが偽である場合、対象とされる現在の構成要素は降格されていないと判断しうる。
【００４８】
現在のラスタライズ可能な構成要素が降格されていないと判断された場合、続いてステップ２１５において、現在のラスタライズ可能な構成要素における以前降格されたすべての下位構成要素の色空間は、下位構成要素が包含構成要素に組み込まれる際に昇格されうる。例えば、ＲＧＢ色空間においては、以前一次元空間に降格されたＲ＝Ｇ＝Ｂである帯領域等の下位構成要素は、包含構成要素に組み込まれる際に適切なＲ、Ｇ、及びＢ値によって、再び三次元に昇格することができる。いくつかの実施例においては、昇格は印刷直前に実行しうる。印刷前のデータ昇格によって、色平面からのデータがページ上にマークを置くのに用いられる場合に元の色空間の色データの正確性が保存されることを確保する。
【００４９】
いくつかの実施例によれば、色データの昇格はより低次元の色空間から他のより高次元の色空間へ色データを変換することによって実行しうる。いくつかの実施例によれば、色データの昇格は、より高次元の色空間における簡潔な表現から色データを復旧することによっても実現しうる。例えば、色データは一次元空間からフルカラー色空間（例えばＣＭＹＫ色空間）へ変換しうる。例えば、ＣＭＹＫ色空間においては、Ｋ平面のみにデータがある場合にはＣ、Ｍ及びＹ平面はゼロで埋められうる。このような変換は、Ｃ、Ｍ及びＹ平面のすべてのピクセル値をゼロに設定し（つまりＣ＝Ｍ＝Ｙ＝０）、Ｋ平面について一次元の色データを用いること（つまりＫ＝Ｄで、Ｄは一次元色データを表す）を含みうる。他の例としては、色データは一次元色空間からＲＧＢ色空間へ変換されうる。このような変換は、一次元データを繰り返しＲ、Ｇ，及びＢ平面において保存することを含みうる（つまりＲ＝Ｇ＝Ｂ＝Ｄ）。さらなる例として、色データは一次元色空間からＣＭＹ色空間へ変換されうる。このような変換は一次元データを繰り返しＣ、Ｍ及びＹ平面（つまりＣ＝Ｍ＝Ｙ＝Ｄ）において保存することを含みうる。ある実施例においては、昇格はプリンタ１０の色管理モジュールを用いて実行しうる。
【００５０】
現在のラスタライズ可能な構成要素が降格されたと判断された場合は、アルゴリズムはステップ２１５を飛ばして直接ステップ２１６へと進みうる。ステップ２１６では、現在の構成要素がラスタライズされうる。ステップ２１７においては、アルゴリズムは対象とされるすべての構成要素がラスタライズされたか判断する。対象とされるすべての構成要素がラスタライズされると、次にアルゴリズムは終了しうる。いずれかの対象とされる構成要素がラスタライズされていない場合は、アルゴリズムはすべての対象とされる構成要素がラスタライズされるまでステップ２１３〜２１７を繰り返しうる。
【００５１】
図３は例示的な印刷ページ３１０の例示的な降格フラグ表３０を図示している。図３に示すように、印刷ページ３１０は帯領域３２０及び帯領域３３０を有しうる。帯領域３２０はオブジェクト３２１及びオブジェクト３２２を含み、オブジェクト３２１及び３２２はいずれもすべて黒テキストを含みうる。帯領域３３０はすべて黒テキストを含むオブジェクト３３１及びカラー画像を含むオブジェクト３３２を含みうる。この例においては、ページ３１０は帯領域３２０及び帯領域３３０の包含構成要素であり、帯領域３２０は下位構成要素オブジェクト３２１及び３２２の包含構成要素であり、帯領域３３０は下位構成要素オブジェクト３３１及び３３２の包含構成要素である。
【００５２】
降格フラグ表４０は、例えば例示的処理２０のステップ２０２において作成されうる。説明の便宜上、例示的な降格フラグ表４０においてはページ４１０、帯領域３２０及び帯領域３３０についての降格フラグのみが図示されている。降格フラグ表４０はまた、オブジェクト３２１、３２２、３３１及び３３２についての降格フラグを含みうる。いくつかの実施例においては、降格表４０は、例えば降格フラグ＝１と設定することによってすべての降格フラグが真に設定されるように初期設定しうる。例えば、ページ４１０、帯領域３２０及び帯領域３３０の降格フラグは真として初期設定されうる。
【００５３】
降格表４０は例えば例示的処理２０の表示リスト構築ステージ２１の際に更新されうる。いくつかの実施例においては、構成要素は階層順に処理されうる。例えば、ページ３１０に対応する表示リストコマンドが最初に開始されうる。次に、帯領域３２０に対応する表示リストコマンドが開始されうる。オブジェクト３２１の色データが表示リストに書き込まれうる。アルゴリズムはオブジェクト３２１がすべて黒テキストを含み、よってその色データはすべてグレースケールデータであるので、降格可能であると判断しうる。オブジェクト３２１の降格フラグは真に設定されうる（図示せず）。よって、その包含構成要素である帯領域３２０の降格フラグは変更されないことがある。
【００５４】
次に、オブジェクト３２２の色データは表示リストに書き込まれうる。アルゴリズムはオブジェクト３２２についてもその色データがすべてグレースケールデータであるので、降格可能と判断しうる。オブジェクト３２２の降格フラグも真に設定されうる（図示せず）。また、包含構成要素である帯領域３２０の降格フラグもまた変更されないことがある。帯領域３２０に対応する表示リストコマンドは、オブジェクト３２２が書き込まれて検討された後に、終了しうる。帯領域３２０の降格フラグは、帯領域３２０のすべての下位構成要素（オブジェクト３２１及び３２２）が降格可能であるので、初期値としての真のままでありうる。よって、その包含構成要素であるページ３１０の降格フラグも初期値としての真のままでありうる。
【００５５】
次に、帯領域３３０に対応する表示リストコマンドが開始されうる。オブジェクト３３１の色データが表示リストに書き込まれうる。アルゴリズムはオブジェクト３３１もすべて黒テキストを含み、よってその色データがすべてグレースケールデータであるので、降格可能であると判断しうる。オブジェクト３３１の降格フラグは真に設定されうる（図示せず）。よって、その包含構成要素である帯領域３３０の降格フラグは変更されないことがある。
【００５６】
次に、オブジェクト３３２の色データが表示リストに書き込まれうる。アルゴリズムはオブジェクト３３２がカラー画像を含み、その色データがフルカラー色空間で表現されなければならないので、降格可能ではないと判断しうる。次に、オブジェクト３２２の降格フラグは偽に設定されうる（図示せず）。よって、その包含構成要素である帯領域３３０の降格フラグは偽に設定されうる。帯領域３３０に対応する表示リストコマンドはオブジェクト３３２が書き込まれて検討された後に、終了しうる。帯領域３３０の下位構成要素（オブジェクト３３２）が降格可能ではないので、帯領域３３０の降格フラグは真から偽に変更されている。よって、帯領域３３０が今では降格可能ではないので、その包含構成要素であるページ３１０の降格フラグは偽に設定されうる。ページ３１０に対応する表示リストコマンドはすべての構成要素が書き込まれて検討された後に終了しうる。降格フラグ表４０の構築はこの後に完了しうる。
【００５７】
本発明のその他の実施例は、本明細書に開示される、詳細な説明の検討及び本発明の実施により当業者にとって明らかとなるであろう。具体的には、説明されている各方法は、コンピュータ、表示装置及び／又は印刷装置の組合せに適用しうる。当業者には当然のことながら、プリンタに関する説明は、例示的なもののみであり、開示される各方法は適切な変更により表示装置及びその他のラスタライゼーションを行う装置に適用することができる。本明細書と実施例は、例示とすることのみを意図しており、本発明の真の範囲や意図は添付される請求項において示される。
【図１】
0005479750.tif 000002
【図２】
0005479750.tif 000003
【図３】
0005479750.tif 000004