(57)【要約】      （修正有）【課題】デスティネーションに依存するＲＯＰコマンドを除去して、直接に装置の色空間およびピクセル深度に合わせてレンダリングできるようにする。【解決手段】  コンピュータシステム内でグラフィカル・オブジェクトを組み合わせる手法は、デスティネーションに依存するＲＯＰコマンドを除去して、直接に装置色空間およびピクセル深度に合わせてレンダリングできるようにすることで、機能する。このソリューションは、アプリケーションが、トランスペアレンシーや複雑なクリッピングなどの様々な特定のプリント効果を生み出すのに使用するＧＤＩコマンド・シーケンスを認識することである。そのアプリケーションの当初の目的は、それが認められさえすれば、決定でき、それにより、デスティネーションに依存せずに、ＧＤＩコマンド・シーケンスを、同等の出力を発生させるものに代えることができる。【選択図】図３
2006059320.tif 000002
【特許請求の範囲】
【請求項１】
レンダリング装置を制御する方法において、
アプリケーションにより生成された基本色空間内の受け取られたレンダリング・コマンド・シーケンスを解釈する工程と、
前記アプリケーションの当初の目的を決定する工程と、
新規レンダリング・コマンド・シーケンスを、前記レンダリング装置の色空間内に生成して、前記決定された当初の目的を明らかにする工程と、
を含むことを特徴とする方法。
【請求項２】
前記レンダリング装置がプリンタであることを特徴とする請求項１記載の方法。
【請求項３】
前記受け取られたレンダリング・コマンド・シーケンスが、デスティネーション（送り先）に依存していることを特徴とする請求項１記載の方法。
【請求項４】
前記新規レンダリング・コマンド・シーケンスを生成する工程が、デスティネーションに依存してない新規レンダリング・コマンド・シーケンスを生成する工程を含むことを特徴とする請求項３記載の方法。
【請求項５】
前記新規レンダリング・コマンド・シーケンスを生成する工程が、デスティネーションに依存してない新規レンダリング・コマンド・シーケンスを生成する工程を含むことを特徴とする請求項１記載の方法。
【請求項６】
前記決定された当初の目的がプリント効果を含むことを特徴とする請求項５記載の方法。
【請求項７】
前記決定された当初の目的がトランスペアレンシー・プリント効果を含むことを特徴とする請求項５記載の方法。
【請求項８】
前記決定された当初の目的がクリッピング・プリント効果を含むことを特徴とする請求項５記載の方法。
【請求項９】
前記決定された当初の目的がカラーフィルを含むことを特徴とする請求項５記載の方法。
【請求項１０】
プログラム命令が記憶されているコンピュータ読取り可能な媒体を含み、かつ、レンダリング装置を制御するコンピュータ・ソフトウェア製品において、前記プログラム命令をコンピュータで読取ると、コンピュータが、アプリケーションにより生成された基本色空間内の受け取られたレンダリング・コマンド・シーケンスを解釈して、前記アプリケーションの当初の目的を決定し、次に、新規レンダリング・コマンド・シーケンスを、前記レンダリング装置の色空間内に生成して、前記決定された当初の目的を明らかにすることを特徴とするコンピュータ・ソフトウェア製品。
【請求項１１】
前記レンダリング装置がプリンタであることを特徴とする請求項１０記載のコンピュータ・ソフトウェア製品。
【請求項１２】
前記コンピュータ読取り可能な媒体がコンピュータ・ディスクであることを特徴とする請求項１０記載のコンピュータ・ソフトウェア製品。
【請求項１３】
前記レンダリング装置がプリンタであり、かつ前記プログラム命令がプリンタ・ドライバであることを特徴とする請求項１０記載のコンピュータ・ソフトウェア製品。
【請求項１４】
前記受け取られたレンダリング・コマンド・シーケンスが、デスティネーションに依存していることを特徴とする請求項１０記載のコンピュータ・ソフトウェア製品。
【請求項１５】
前記受け取られたレンダリング・コマンド・シーケンスがデスティネーションに依存しており、かつ、前記新規レンダリング・コマンド・シーケンスがデスティネーションに依存してないことを特徴とする請求項１４記載のコンピュータ・ソフトウェア製品。
【請求項１６】
前記受け取られたレンダリング・コマンド・シーケンスがデスティネーションに依存しており、かつ、前記新規レンダリング・コマンド・シーケンスがデスティネーションに依存してないことを特徴とする請求項１０記載のコンピュータ・ソフトウェア製品。
【請求項１７】
前記決定された当初の目的がプリント効果を含むことを特徴とする請求項１６記載のコンピュータ・ソフトウェア製品。
【請求項１８】
前記決定された当初の目的がトランスペアレンシー・プリント効果を含むことを特徴とする請求項１６記載のコンピュータ・ソフトウェア製品。
【請求項１９】
前記決定された当初の目的がクリッピング・プリント効果を含むことを特徴とする請求項１６記載のコンピュータ・ソフトウェア製品。
【請求項２０】
前記決定された当初の目的がカラーフィルを含むことを特徴とする請求項１６記載のコンピュータ・ソフトウェア製品。
【請求項２１】
レンダリング装置を制御するプリンタ・ドライバにおいて、アプリケーションにより生成された基本色空間内の受け取られたレンダリング・コマンド・シーケンスを解釈し、前記アプリケーションの当初の目的を決定し、新規レンダリング・コマンド・シーケンスを、前記レンダリング装置の色空間内に生成して、前記決定された当初の目的を明らかにすることを特徴とするプリンタ・ドライバ。
【請求項２２】
前記受け取られたレンダリング・コマンド・シーケンスが、デスティネーションに依存していることを特徴とする請求項２１記載のプリンタ・ドライバ。
【請求項２３】
前記新規レンダリング・コマンド・シーケンスを生成する工程が、デスティネーションに依存してない新規レンダリング・コマンド・シーケンスを生成する工程を含むことを特徴とする請求項２２記載のプリンタ・ドライバ。
【請求項２４】
前記新規レンダリング・コマンド・シーケンスを生成する工程が、デスティネーションに依存してない新規レンダリング・コマンド・シーケンスを生成する工程を含むことを特徴とする請求項２１記載のプリンタ・ドライバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置の色空間内でアプリケーション・ページ記述を行う方法とシステムに関するものである。
【背景技術】
【０００２】
コンピュータのオペレーティング・システムは、このオペレーティング・システム上で実行する様々なアプリケーション・プログラムと、コンピュータ・モニタやプリンタなどのレンダリング装置または出力装置との間のインターフェースとして機能するコマンド・セットを指定することが多い。これらのインターフェースは、上記コマンドと、上記コマンドをこれらのアプリケーション・プログラムが解釈するための標準的な方法とを指定する。Ｍｉｃｒｏｓｏｆｔ Ｗｉｎｄｏｗｓ（Ｒ）のオペレーティング・システムは、このようなコマンド・インターフェースを持っている。具体的に言えば、ＧＤＩ（ｇｒａｐｈｉｃａｌ ｄｅｖｉｃｅ ｉｎｔｅｒｆａｃｅ）は、グラフィカル・オブジェクトを表現して、これらのグラフィカル・オブジェクト(graphical object)を、アプリケーションとレンダリング装置との間で送るための標準である。これらのＧＤＩコマンドは、印刷されるページの内容を記述するために使用される。
【０００３】
Ｗｉｎｄｏｗｓ（Ｒ）のオペレーティング・システム上で実行するアプリケーションは、トランスペアレンシー(transparency)または複雑なクリッピングなどの特定のプリント効果を生み出そうとするときには、一般に、特定の一連のＧＤＩコールを生成する。これらのＧＤＩコールは、このアプリケーションの当初の目的を表わしながら、相互に作用して所望の効果を生み出すことを目的としている。多くの場合に、このアプリケーションは、デスティネーション（送り先）に依存するビット単位のラスタ演算（ＲＯＰ）を用いて、これらのＧＤＩコールの組合せを行うことになる。デスティネーションに依存するＲＯＰは、新規ピクセル値を計算する際に、このデスティネーションピクセル値を含む。
【０００４】
例えば、色（ＣＯＬＯＲ）と奇妙な形をしたマスク（ＭＡＳＫ）により定められる奇妙な形をしたカラーフィルを、このデスティネーションピクセル（ＤＥＳＴ）に依存するビット単位のラスタ演算を用いて提供する代表的な組合せは、次の通りである：
ＤＥＳＴ＝ＣＯＬＯＲ ＸＯＲ ＤＥＳＴ；
ＤＥＳＴ＝ＭＡＳＫ ＡＮＤ ＤＥＳＴ；
ＤＥＳＴ＝ＣＯＬＯＲ ＸＯＲ ＤＥＳＴ。
【０００５】
これらのビット単位の演算により、色、対応する奇妙な形をしたマスク、および、対応するデスティネーションピクセルの組合せに基づいて、カラーフィル（color fill）を施すことができる。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
概して、モニタまたはプリンタなどのターゲット・レンダリング装置の最適性能は、このイメージデータが、ターゲット・レンダリング装置のピクセル深度および色空間に合致するときに、実現される。装置のピクセル深度は、この装置がレンダリングできる色の数に相当する。装置の色空間は、このレンダリング装置がイメージをレンダリングするのに使用する有色のインク／トナーまたは光の特定パレットに相当する。一般に、ディスプレイは、表示ピクセルの赤蛍光体、緑蛍光体、青蛍光体から、赤、緑、青（ＲＧＢ）光を組み合わせることによる加色法を使用している。これと対照的に、印刷装置は、一般に、連続するインクまたはトナーを印刷媒体上に被着させる減色法を使用している。しばしば、シアン、マゼンタ、イエロー、ブロックの色が使用される（ＣＭＹＫ）。しかしながら、もっと最近の装置では、シアンおよびマゼンタの明るいものと暗いものを含め、追加の色を使用することができる。
【０００７】
しかしながら、ＲＯＰの組合せを使用しているとき、特に印刷装置上でレンダリングしているときに、問題が起る。これは、ＲＯＰの組合せが、ＲＧＢ色空間内にあるＧＤＩコマンド・セットに基づいて、２４ビットのピクセル深度を用いて定められるからである。ピクセル深度の制約のために、一連のＧＤＩコマンドを組み合わせているときに、情報が失われることもある。このような問題は、一般に、装置の色空間に合わせて描こうとするときに、なおいっそう厳しくなる。これは、装置の色空間が、一般にＲＧＢ色空間ではなくて、かつ、通常、ハーフトーン処理されるからである。装置の色空間内でＲＯＰを施そうとすることにより、しばしば、不正確な結果、あるいは少なくとも最適とは言えない結果がもたらされることもある。
【０００８】
本発明は、コンピュータシステム内でグラフィカル・オブジェクトを組み合わせる手法を対象としている。本発明は、ＧＤＩコマンド・セットを用いるＷｉｎｄｏｗｓ（Ｒ）のオペレーティング・システムに関連して述べられる。本発明は、デスティネーションに依存するＲＯＰコマンドを除去して、直接に装置の色空間およびピクセル深度に合わせてレンダリングできるようにすることで、機能する。
【課題を解決するための手段】
【０００９】
このソリューションは、アプリケーションが、トランスペアレンシーや複雑なクリッピングなどの様々な特定のプリント効果を生み出すのに使用するＧＤＩコマンド・シーケンスを認識することである。アプリケーションの当初の目的は、それが認められさえすれば、決定でき、それにより、デスティネーションに依存しないようにしながら、ＧＤＩコマンド・シーケンスを、同等の出力を発生させる別のものに代えることができる。
【００１０】
一般に、1つの実施態様により、本発明は、レンダリング装置を制御する方法を特徴としている。この方法は、アプリケーションにより生成された基本色空間内の受け取られたレンダリング・コマンド・シーケンスを解釈することを含む。次に、これらのアプリケーションの当初の目的が決定される。最後に、新規レンダリング・コマンド・シーケンスが、ターゲット・レンダリング装置の色空間内に生成されて、その決定された当初の目的を明らかにする。
【００１１】
代表的な実施例では、このレンダリング装置は、ＣＭＹＫなどの色空間を使用するプリンタである。基本色空間は、一般に、赤、緑、青で表わす。この受け取られたレンダリング・コマンド・シーケンスは、一般に、デスティネーションに依存している。本発明は、新規シーケンスがデスティネーションに依存しない新規レンダリング・コマンド・シーケンスを生成することで、機能する。
【００１２】
一般に、他の実施態様により、本発明は、レンダリング装置を制御するコンピュータ・ソフトウェア製品を特徴としている。コンピュータ・ソフトウェア製品は、プログラム命令が記憶されているコンピュータ読取り可能な媒体（例えば、ディスク）を含む。これらの命令をコンピュータで読取ると、コンピュータは一連の動作を実行する。まず、最初に受け取られたレンダリング・コマンド・シーケンスを解釈する。これらのレンダリング・コマンドは、一般に、アプリケーションにより生成された基本色空間内にある。次に、これらのアプリケーションの当初の目的が決定される。新規レンダリング・コマンド・シーケンスは、このレンダリング装置の色空間内に生成されて、この決定された当初の目的を明らかにする。
【００１３】
次に、諸部分の構成および組合せの様々な新規詳細と、他の利点を含め、本発明の上記特徴および他の特徴は、添付図面を参照して、さらに具体的に説明し、かつ、特許請求の範囲に指摘することになる。本発明を実施する特定の方法および装置は、本発明の限定するものとしてではなく、例示として示されるものとする。本発明の原理および特徴は、本発明の範囲から逸脱することなく、多数の様々な実施例において使用できる。
【発明を実施するための最良の形態】
【００１４】
添付図面において、参照番号は、これらの異なる図の全体を通して同一部分をさす。これらの図面は、必ずしも定尺ではない。その代り、本発明の原理の図解に重点が置かれている。
【００１５】
図１は、従来のように、ディスプレイのレンダリング装置１２およびプリンタのレンダリング装置１４に接続されたコンピュータシステム１０を示している。
【００１６】
さらに詳細には、コンピュータ１０は、ディスプレイ・インターフェース１６とプリンタ・インターフェース１８を介して、それぞれディスプレイ１２とプリンタ１４とやり取りする。しばしば、プリンタ・インターフェース１８は、単にコンピュータ１０上の物理（パラレル）ポートでしかないこともある。しかしながら、他の場合には、プリンタ１４はネットワークされることがあり、その場合、このインターフェースは、コンピュータ１０とプリンタ１４間のネットワーク通信で定められる。
【００１７】
コンピュータ１０は、階層的に編成されたいくつかのソフトウェア・コンポーネントを実行する。具体的に言えば、オペレーティング・システム３０は、コンピュータ１０の総合的な動作を制御する。オペレーティング・システム３０は、ディスプレイ・ドライバ３２を介して、ディスプレイ・インターフェース１６およびディスプレイ１２とやり取りする。ディスプレイ・ドライバ３２は、コンピュータのグラフィックス・カードを実行するようなハードウェア機能を扱って、一般に、オペレーティング・システム３０で生成されたデータを、ディスプレイ１２で解釈できる形式に変換するのに役立つ。
【００１８】
プリンタ・ドライバ３４はまた、オペレーティング・システム３０および印刷装置１４と協働して、オペレーティング・システム３０からのコマンドを、プリンタ・インターフェース１８を介してプリンタ１４を駆動するのに必要な命令に変換する。しばしば、プリンタ・ドライバ３４は、代表的なプリンタ１４に使用されるように、連続階調（連続調、ｃｏｎｔｏｎｅ）イメージの形式でＲＧＢ色空間内に受け取られたデータを、ＣＭＹＫ色空間に変換する。さらに、この連続調イメージは、プリンタ・ドライバ３４により、ハーフトーン処理されたイメージに変換される。
【００１９】
ほとんどの印刷装置は、任意の色深度を表現できないために、ハーフトーン処理が必要となる。その代り、これらの印刷装置は、ページ上のそれぞれのアドレス指定可能な場所（ピクセル）に、インクまたはトナーを被着させるか、あるいは被着させない場合もある。その結果、ハーフトーン処理を利用して、色の任意の彩度レベルを表現する。
【００２０】
アプリケーション４０は、オペレーティング・システム３０上で実行する。一般に、本発明に直接関係のありそうなアプリケーションは、グラフィカル・オブジェクト(graphical object)を処理するアプリケーションである。
【００２１】
図解された例では、アプリケーション４０は、例えばユーザにより生成されたフィル命令（fill instruction）１１２に基づいて、デスティネーションイメージ(destination image)１１０を変更している。具体的に言えば、アプリケーション４０は、デスティネーションイメージ１１０に対応する一連のＧＤＩコール１１４と、フィル命令１１２を生成する。これらのＧＤＩコマンドは、ＲＧＢ色空間内に生成される。共通の色深度は２４ビットである。アプリケーション４０は、一般に、デスティネーションに依存するビット単位のＲＯＰを利用して、このような組合せを実行することになる。
【００２２】
図２は、従来技術において実行される総合プロセスを示すフローチャート図である。具体的に言えば、工程２１０において、プリント効果は、デスティネーショングラフィックスに施されるように、アプリケーションで選択される。次に、工程２１２において、このアプリケーションがＧＤＩコールを生成する。
【００２３】
工程２１４において、このアプリケーションは、ＲＧＢ色空間にビット単位のラスタ演算を用いて、これらのＧＤＩコールを組み合わせる。最後に、工程２１６において、プリンタ・ドライバは、この組み合わされたイメージ１１８を受け取って、それを、例えば印刷装置１４上でレンダリングできるように、必要とされる命令に変換する。
【００２４】
図３は、本発明の原理により構成されたシステムを示している。
【００２５】
前述の通り、本発明は、一般に、ディスプレイ１２と、プリンタなどの関連するレンダリング装置１４を持つコンピュータ１０に関連して動作する。グラフィックス処理に向けられるアプリケーション４０は、オペレーティング・システム３０上で実行する。さらに、このオペレーティング・システム３０は、ディスプレイ・ドライバ３２と、一般にディスク３５からコンピュータ１０上にロードされるプリンタ・ドライバ３４とを持っている。
【００２６】
本発明により、アプリケーション４０で生成されたＧＤＩコールは、本発明のプリンタ・ドライバ３４に直接にわたされる。具体的に言えば、デスティネーションイメージ１１０に関連するＧＤＩコールと、フィル命令１１２は、アプリケーション４０において組み合わさせるのではなくて、プリンタ・ドライバ３４に直接に渡される。
【００２７】
次に、本発明のプリンタ・ドライバ３４は、特定のＧＤＩコールを分析して、アプリケーション４０の当初の目的を決定する。例えば、アプリケーション４０が、トランスペアレンシー(transparency)または複雑なクリッピング動作などのプリント効果を施している場合に、プリンタ・ドライバ３４は、その一連のＧＤＩコールから、このような当初の目的を決定する。次に、プリンタ・ドライバ３４は、デスティネーション(destination)に依存せずに、同等の出力を発生させるようなシーケンスを決定する。
【００２８】
例えば、奇妙な形をしたカラーフィルを施す前例では、それと同等なコマンドは、ｄｅｓｔ＝ｏｄｄｌｙ−ｓｈａｐｅ−ｃｏｌｏｒ ｆｉｌｌであるかもしれない。
【００２９】
したがって、ＧＤＩコールの組合せがプリンタ・ドライバ３４により提供されて、その結果として組み合わされたイメージ１１８を生成する。しかしながら、これは、ターゲット印刷装置１４の色空間およびピクセル深度において行われる。次に、プリンタ・ドライバ３４は、組み合わされたイメージ１１８’を、印刷装置１４の色空間およびピクセル深度において、印刷装置１４に送り、それにより、いかなる情報の喪失も避けられる。
【００３０】
本発明により、ＧＤＩコマンド・ストリームを収集し、かつ、それを処理して、問題となるシーケンスを取り替えることで、ページ記述言語（ＰＤＬ）を最適化でき、それにより、デスティネーションに依存するＲＯＰを使用せずに、そのアプリケーションの当初の目的が保たれる。
【００３１】
図４は、本発明のコマンド・シーケンスを示している。具体的に言えば、工程４１０において、プリント効果１１２は、デスティネーショングラフィックス１１０に施されるように、アプリケーションで選択される。次に、このアプリケーションは、プリント効果を施すために必要なＧＤＩコールを生成する。
【００３２】
しかしながら、工程４１４において、これらのＧＤＩコールをプリンタ・ドライバ３４に渡す。次に、プリンタ・ドライバ３４は、工程４１６において、当初の目的を決定して、工程４１８において、組み合わされたイメージ１１８を、デスティネーションに依存せずに、装置の色空間内に生成する。
【００３３】
ここに、デスティネーションに依存するシーケンス・タイプと、それらのタイプが、本発明のシステムにより変えられるものの一対の共通例がある。
【００３４】
ケース１：ＸＯＲ演算が行われ（サブシーケンス１）、その後で、マスキング（ブラック）演算が行われ（サブシーケンス２）、さらにその後で、サブシーケンス１に見られるものと同じＸＯＲ演算が行われる（サブシーケンス３）。
【００３５】
上記シーケンス（１、２、３）を、変更されたサブシーケンス１（現在、ＸＯＲではなくて、ＣＯＰＹを用いている）が入っている新規シーケンスに代えて、その新規シーケンスを、サブシーケンス２において定められた形状に合わせてクリッピングすることで、デスティネーション依存を除去できる。
【００３６】
ケース２：ＲＯＰｘ８８を用いてＢｉｔＢｌｔ（＃１）演算を行い（ＤＳａ）、その直後に、ＲＯＰｘＥＥを用いて、同じデスティネーションでＢｉｔＢｌｔ（＃２）演算を行う（ＤＳｏ）。
【００３７】
ここでは、マスクとしてＢｉｔＢｌｔ＃１からのビットマップと、ソースとしてＢｉｔＢｌｔ＃２からのビットマップを用いて、２つのＢｌｔ演算をただ１つのＢｉｔＢｌｔ演算に代えることで、デスティネーション依存を除去できる。
【００３８】
本発明は、特に、本発明の好ましい実施形態を参照して図示され、説明されてきたが、当業者であれば、併記の特許請求の範囲が包含する本発明の範囲から逸脱することなく、これらの実施形態に、形態および細部に関して様々な変更を行えることが理解されよう。
【図面の簡単な説明】
【００３９】
【図１】代表的なコンピュータシステムとレンダリング装置を示すブロック図である。
【図２】プリント効果を施すための従来技術のプロセスを示すフローチャート図である。
【図３】本発明のシステムを用いるコンピュータシステムとレンダリング装置を示すブロック図である。
【図４】本発明により、プリント効果を施すプロセスを示すフローチャート図である。
【図１】
2006059320.tif 000003
【図２】
2006059320.tif 000004
【図３】
2006059320.tif 000005
【図４】
2006059320.tif 000006
【外国語明細書】
2006059320000001.pdf