(57)【要約】【課題】  システムによりドライバの画面で色調整が許されない場合でも、アプリケーションで設定された色調整値で色調整を可能とすること。【解決手段】  システムのカラーマッチングが指定されているか否かを判断し、アプリケーションから情報の更新があった際に、色調整処理の設定を有効にする情報を書込み、システムのカラーマッチングが指定されていると判断された際、色調整処理の設定を有効にする情報が書込まれていない場合に、色調整処理の設定を無効に設定し、色調整処理が無効に設定されている場合、ドライバでの色調整を行わずに印刷処理を実行し、色調整処理が有効に設定されている場合、アプリケーションで指定された色調整値に基づきドライバで色調整を行い印刷処理を実行する。【選択図】  図６
2011053870.tif 000002
【特許請求の範囲】
【請求項１】
システムのカラーマッチングが指定されているか否かを判断する判断手段と、
アプリケーションから情報の更新があった際に、色調整処理の設定を有効にする情報を書込む書込み手段と、
前記判断手段によりシステムのカラーマッチングが指定されていると判断された際、前記色調整処理の設定を有効にする情報が書込まれていない場合に、色調整処理の設定を無効に設定する設定手段と、
前記設定手段により色調整処理が無効に設定されている場合、ドライバでの色調整を行わずに印刷処理を実行し、前記設定手段により色調整処理が有効に設定されている場合、アプリケーションで指定された色調整値に基づきドライバで色調整を行い印刷処理を実行する印刷処理手段とを有することを特徴とする情報処理装置。
【請求項２】
前記色調整処理の設定を有効にする情報は、アプリケーションにより設定されることを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記書込む手段は、アプリケーションから色調整の情報の更新があった際に、色調整処理の設定を有効にする情報を書込むことを特徴とする請求項１記載の情報処理装置。
【請求項４】
システムのカラーマッチングが指定されているか否かを判断する判断ステップと、
アプリケーションから情報の更新があった際に、色調整処理の設定を有効にする情報を書込む書込みステップと、
前記判断ステップによりシステムのカラーマッチングが指定されていると判断された際、前記色調整処理の設定を有効にする情報が書込まれていない場合に、色調整処理の設定を無効に設定する設定ステップと、
前記設定ステップにより色調整処理が無効に設定されている場合、ドライバでの色調整を行わずに印刷処理を実行し、前記設定ステップにより色調整処理が有効に設定されている場合、アプリケーションで指定された色調整値に基づきドライバで色調整を行い印刷処理を実行する印刷処理ステップとを有することを特徴とする情報処理方法。
【請求項５】
前記色調整処理の設定を有効にする情報は、アプリケーションにより設定されることを特徴とする請求項４記載の情報処理方法。
【請求項６】
前記書込むステップは、アプリケーションから色調整の情報の更新があった際に、色調整処理の設定を有効にする情報を書込むことを特徴とする請求項４記載の情報処理方法。
【請求項７】
システムのカラーマッチングが指定されているか否かを判断する判断ステップと、
アプリケーションから情報の更新があった際に、色調整処理の設定を有効にする情報を書込む書込みステップと、
前記判断ステップによりシステムのカラーマッチングが指定されていると判断された際、前記色調整処理の設定を有効にする情報が書込まれていない場合に、色調整処理の設定を無効に設定する設定ステップと、
前記設定ステップにより色調整処理が無効に設定されている場合、ドライバでの色調整を行わずに印刷処理を実行し、前記設定ステップにより色調整処理が有効に設定されている場合、アプリケーションで指定された色調整値に基づきドライバで色調整を行い印刷処理を実行する印刷処理ステップとをコンピュータに実行させるプログラム。
【請求項８】
前記色調整処理の設定を有効にする情報は、アプリケーションにより設定されることを特徴とする請求項７記載のプログラム。
【請求項９】
前記書込むステップは、アプリケーションから色調整の情報の更新があった際に、色調整処理の設定を有効にする情報を書込むことを特徴とする請求項７記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。特にホストコンピュータ等に存在する印刷データをプリンタ等の出力装置によって印刷する情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
一般に、ホストコンピュータなどの情報処理装置に搭載されるオペレーティングシステム（以降、ＯＳと呼ぶ）には、印刷要求を行うホストコンピュータにプリンタが接続された環境での印刷をサポートするための印刷システムが備えられている。ホストコンピュータには、その印刷システムおよび使用するプリンタの機種に対応したプリンタドライバが搭載されている。ホストコンピュータ上で動作する各種アプリケーションなどで作成した画像を印刷する際には、プリンタドライバはプリンタに特有の印刷データを生成しプリンタに送信することによって、画像の印刷を行うようになっている。各種アプリケーションなどで作成した画像データをプリンタに良好に出力する場合、画像データに応じた色補正処理、色変換処理等の画像処理を行うことが必要となる。一般にアプリケーションによって作成された画像データの印刷はアプリケーションからの描画命令をプリンタドライバが画像化し、ページ全体の画像データを作成して印刷を行っている。
【０００３】
近年、ホストコンピュータにおいては、ディスプレイやプリンタの表示、出力色をアプリケーションで作成された現画像の色に近づけるためのしくみとして、カラーマッチングシステムが取り入れられている。その代表的なシステムとして、米国アップル社の「Ｍａｃ  ＯＳ  Ｘ（登録商標）」に導入されているＣｏｌｏｒＳｙｎｃ（登録商標）システムが知られている。これは、アプリケーションや入力装置に依存する色空間の画像信号を、アプリケーションや装置に依存しない色空間へ変換する。さらに、アプリケーションや装置に依存しない色空間の画像信号を、プリンタなど出力装置に依存する色空間に変換することで、システム上で共通のカラーマッチングシステムを実現している。この変換処理のための変換特性を表すデータはプロファイルと呼ばれ、デバイスごとにホストコンピュータに用意され、変換の際に自動もしくは手動で選ばれたプロファイルを用いて画像信号の色空間が変換される。システムやアプリケーションによっては、画像データに対してこのプロファイルの指定が行われ、プリンタドライバはその指定内容を使用して、より高品位な出力を得ることが可能となっている。カラーマッチングの際、特に複雑な色調補正が要求される場合には、アプリケーションはプリンタドライバの外部でカラーマッチングを行うことができる。この場合、カラーマッチング適用の有無や使用するプロファイルの選択は、アプリケーションのユーザインターフェースにおけるユーザの指定によって設定できる。
【０００４】
一方、プリンタドライバにはデバイスの個体差を調整するためにアプリケーションやＯＳとは独立して色補正処理などを行う独自の画像処理機能を備えている。プリンタドライバのユーザインターフェースにおけるユーザの指定に従って、印刷データ生成の際に色補正等の各種画像処理を施すことができる。このため、アプリケーション側でカラーマッチングを施した画像に対して、さらにプリンタドライバ固有の色補正処理を行うと、二重に色処理が行われるため適正な出力色が得られないという不具合が生じる場合がある。この不具合を回避するために、アプリケーション側のカラーマッチングとプリンタドライバ側の画像処理の双方を行うという不適切な設定を行ったことによってユーザの期待した出力効果を得ることができない場合にユーザにそれを通知する。また出力続行の可否を選択させることによりユーザが望まない印刷処理が行われることを防ぐような技術が存在する（〔特許文献１〕参照）。
【０００５】
また、Ｍａｃ  ＯＳ  Ｘ（登録商標）においては、ＯＳのＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを行うか、ＣｏｌｏｒＳｙｎｃ（登録商標）システムによらないプリンタドライバ固有のカラーマッチングを行うかの選択を行うユーザインターフェースを提供している。このＯＳが提供するユーザインターフェースにおける設定は、ユーザによって設定できるばかりでなく、アプリケーションから直接指定することも可能である。アプリケーションが独自のユーザインターフェースを備え、ユーザがアプリケーション側でカラーマッチング適用の有無や使用するプロファイルの選択を行った場合には、アプリケーションからＯＳが提供するＡＰＩ（アプリケーション・プログラム・インターフェース）を利用することにより、アプリケーション側のカラーマッチング設定用ユーザインターフェースにおける設定をＯＳに通知することができる。これによって、プリンタドライバはプリンタドライバの画像処理機能設定用ユーザインターフェースを表示する際に、ＯＳを介してアプリケーションからのカラーマッチングの有無を示す色処理モードを知ることができる。またアプリケーション側とプリンタドライバ側の双方でカラーマッチングが行われるような設定の場合に、このような設定のもとではプリンタドライバ側の画像処理を無効にするという仕様を取り入れるプリンタドライバが増えてきている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００２−３２８７９８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、アプリケーションによっては、アプリケーション側でカラーマッチングを施した画像に対して、プリンタドライバが独自に備える機能を利用して各種画像処理を実現したい場合がある。アプリケーションがプリンタドライバ独自の機能を利用するためには、プリンタドライバが独自に定義したプリンタドライバ命令を持つ必要がある。アプリケーションは、プリンタドライバに対して定義されたプリンタドライバ命令を直接利用することによって印刷情報の制御を行い、アプリケーションのユーザインターフェース上にプリンタドライバ固有の設定項目を表示している。このようなアプリケーションにとって、プリンタドライバがアプリケーション側のカラーマッチングの適用の有無によってプリンタドライバ側の設定を無効にするような仕様であるのか、アプリケーション側のカラーマッチングの適用の有無に関わらずプリンタドライバ側の設定を有効のままにするような仕様であるのかを知ることはできない。そのため、アプリケーション側でプリンタドライバ固有の設定項目を設定した場合に、プリンタドライバ側でその設定が有効になったり無効になったり、プリンタドライバの仕様によって異なる動作をしてしまうと、ユーザは設定が適用される場合と、適用されない場合の違いを知ることができず、期待した出力を得るためにどのような操作を行えばよいかが分からないという問題があった。
【０００８】
そこで、本発明では上記の問題点を鑑み、システムによりドライバの画面で色調整が許されない場合でも、アプリケーションで設定された色調整値で色調整を可能とすることを目的とする。
【課題を解決するための手段】
【０００９】
上述のような課題を解決するために本発明は以下のような構成を備える。
すなわち、システムのカラーマッチングが指定されているか否かを判断する判断手段と、
アプリケーションから情報の更新があった際に、色調整処理の設定を有効にする情報を書込む書込み手段と、
前記判断手段によりシステムのカラーマッチングが指定されていると判断された際、前記色調整処理の設定を有効にする情報が書込まれていない場合に、色調整処理の設定を無効に設定する設定手段と、
前記設定手段により色調整処理が無効に設定されている場合、ドライバでの色調整を行わずに印刷処理を実行し、前記設定手段により色調整処理が有効に設定されている場合、アプリケーションで指定された色調整値に基づきドライバで色調整を行い印刷処理を実行する印刷処理手段とを有することを特徴とする。
【発明の効果】
【００１０】
以上説明したように、本発明によれば、システムによりドライバの画面で色調整が許されない場合でも、アプリケーションで設定された色調整値で色調整を可能とする。
【図面の簡単な説明】
【００１１】
【図１】本実施形態の一形態に係る情報処理装置のハードウェアの構成を示すブロック図である。
【図２】本実施形態の一形態に係る情報処理装置のソフトウェアの構成を示すブロック図である。
【図３】本発明の第１の実施形態を示し、印刷実行時のアプリケーションの処理の流れを説明するフローチャートである。
【図４】本発明の第１の実施形態を示し、印刷実行時の印刷システムの処理の流れを説明するフローチャートである。
【図５】本発明の第１の実施形態を示し、プリンタドライバに用意された拡張モジュールの処理の流れを説明するフローチャートである。
【図６】本発明の第１の実施形態を示し、プリンタドライバの処理の流れを説明するフローチャートである。
【図７】本発明の第２の実施形態を示し、印刷実行時のアプリケーションの処理の流れを説明するフローチャートである。
【図８】本発明の第２の実施形態を示し、プリンタドライバに用意された拡張モジュールの処理の流れを説明するフローチャートである。
【図９】本実施形態の一形態に係るＯＳが提供するユーザインターフェースを表す図である。
【図１０】本実施形態の一形態に係るプリンタドライバが提供するユーザインターフェースを表す図である。
【図１１】本実施形態の一形態に係るアプリケーションが提供するユーザインターフェースを表す図である。
【発明を実施するための形態】
【００１２】
以下、添付図面を参照して本発明の好適な実施の形態を詳しく説明する。尚、以下の実施の形態は特許請求の範囲に係る本発明を限定するものでなく、また本実施の形態で説明されている特徴の組み合わせの全てが本発明の解決手段に必須のものとは限らない。
【００１３】
＜実施形態１＞
本発明の第１の実施形態のコンピュータ装置の構成について、図１のブロック図を参照して説明する。ホストコンピュータ１とＥｔｈｅｒｎｅｔ（登録商標）やＵＳＢなどの通信バス１１１を介してプリンタＡ２、プリンタＢ３とが通信可能な印刷システムの例である。ホストコンピュータ１には、ＯＳとして「Ｍａｃ  ＯＳ  Ｘ（登録商標）」と同等のＯＳがインストールされているものとする。図１では、プリンタは２つのみ図示したが、通信バス１１１を介して任意の数のプリンタが接続可能である。
【００１４】
ホストコンピュータ１において、１０１はＲＡＭ１０３および外部記憶装置１０４に格納されたプログラムに従って各部を制御するＣＰＵである。プリンタＡ２およびプリンタＢ３に対応したプリンタドライバを実行し、アプリケーションプログラムに基づいて作成された出力情報をプリンタに対応する出力コマンドに変換し、プリンタＡ２またはプリンタＢ３に所定のプロトコルで出力する。１０２はＲＯＭで、ＣＰＵ１０１が実行するＢＩＯＳプログラムやフォントデータを格納するＲＯＭである。１０３はＲＡＭで、必要に応じてＣＰＵ１０１がデータの書き込みや読み出しを行ったりするために使用され、プリンタドライバ起動時には、プリンタドライバのプログラムコードがこのＲＡＭ１０３にロードされる。１０４は外部記憶装置で、ＣＰＵ１０１が読み出すプログラムコードが格納されており、本実施形態の機能の一部を実現するデバイスで、例えばＦＤ、ＣＤ−ＲＷ、ＨＤＤなどである。１０５が入力デバイス制御部で、キーボードやマウス等の入力デバイス１０７を制御する。１０６は表示装置制御部で、ＣＲＴ等の表示装置１０８を制御する。１０９は内部バスで、各構成要素間のデータ通信を行うデータバス、システムバスで構成される。１１０は通信Ｉ／Ｆで、通信バス１１１を介してプリンタＡ２およびプリンタＢ３との通信を司り、双方向通信可能である。
【００１５】
なお、シリアルインターフェースとしてはＵＳＢ、ＩＥＥＥ１３９４など、パラレルインターフェースとしてはセントロニクス、ＳＣＳＩなどでも構わない。ネットワークとしてはＥｔｈｅｒｎｅｔ（登録商標）や無線ＬＡＮ（ＩＥＥＥ８０２．１１）など、複数の種類が想定されるが、双方向の通信を実現するものであればどのようなインターフェースでも構わない。
【００１６】
プリンタＡ２において、１１３はプリンタコントローラで、通信Ｉ／Ｆ１１２より得られたプリンタコマンドをもとにプリンタエンジン１１４を制御し印刷を行う。１１４はプリンタエンジンで、プリンタヘッドの操作や記録媒体の搬送を行う機構である。
【００１７】
図２は、本発明の実施の形態に係るホストコンピュータ１のソフトウェア構成を示すブロック図である。ホストコンピュータ１は、印刷システム２０２、プリンタドライバ２０３を備える。アプリケーション２０１から受け取った印刷データを印刷システム２０２およびプリンタドライバ２０３を通じてプリンタ２が処理可能（印刷可能）なプリントデータに変換して出力する。
【００１８】
アプリケーション２０１は、印刷システム２０２に対して印刷要求を行うものであり、印刷を行う印刷データの作成／編集や、作成された印刷データをＯＳの印刷システム２０２へ渡す制御を行う。印刷システム２０２は、ＯＳの印刷制御プログラムであり、プリンタ２に印刷を実行させるための印刷処理全般を管理する処理を行う。この印刷システム２０２は、印刷要求があった場合、アプリケーション２０１から送られた印刷データのスプール処理や、プリンタドライバ２０３のロード／実行などの様々な印刷制御を行うプログラムで構成される。
【００１９】
プリンタドライバ２０３は、プリンタドライバ全体を構成するブロックであり、ドライバ２０４とバックエンド２０５と、拡張モジュール２０６で構成される。ドライバ２０４は、ＯＳによりスプールされたアプリケーション２０１の印刷データファイルをプリンタ２のコマンドへ変換する制御プログラムで構成される。バックエンド２０５は、接続されたプリンタ２との通信制御を担当する制御プログラムである。
【００２０】
拡張モジュール２０６は、Ｍａｃ  ＯＳ  Ｘ（登録商標）システムで定義されているプリンタドライバ命令（Ｄｅｖｉｃｅ  Ｄｒｉｖｅｒ  Ｉｎｔｅｒｆａｃｅ、略して以後ＤＤＩと呼ぶ）とは別に、独自のプリンタドライバ命令（以後、拡張ＤＤＩと呼ぶ）を新たに定義し印刷情報の制御を行う制御プログラムである。アプリケーション２０１は、プリンタドライバ２０３に用意されたこの拡張モジュール２０６を直接利用することで、アプリケーション２０１からは直接読み書きできない印刷情報の制御を行う。そして、アプリケーション２０１のユーザインターフェース上にプリンタドライバ２０３固有の設定項目をメニューとして用意することができる。
【００２１】
一般的にＭａｃ  ＯＳ  Ｘ（登録商標）システムにおいて、プリンタドライバの設定情報を格納するための印刷オブジェクトが用意されている。この印刷オブジェクトには、現在選択されているプリンタ名称や、用紙サイズ、オリエンテーションなどの印刷設定の一般的な項目が保持されている。そして、アプリケーションは自身のプログラム内部で直接現在の設定を参照し、同時にアプリケーションから直接更新することが可能である。さらに、印刷オブジェクトにはプリンタドライバの仕様に固有の情報についても保持されているが、これについては、プリンタドライバごとにその内部構造が異なるためアプリケーションは直接現在の設定を参照したり、更新したりすることができない。従って、アプリケーションはプリンタドライバの用意した拡張ＤＤＩを利用することでプリンタドライバ固有の印刷情報のやりとりを行い、アプリケーションのユーザインターフェース上にプリンタドライバ固有の設定項目をメニューとして用意することができる。拡張モジュールは、アプリケーションが拡張ＤＤＩを利用して印刷情報をコントロールする場合において、アプリケーションからの入力情報を印刷オブジェクトの形で受け取る。
【００２２】
図３は、アプリケーション２０１の処理の流れを表すフローチャートである。本アプリケーション２０１はホストコンピュータ１で実行されるプリンタドライバ２０３に用意された拡張モジュール２０６を利用してプリンタドライバ固有の設定項目を設定可能である。
【００２３】
アプリケーション２０１は、ホストコンピュータ１において起動される（ＳＴＥＰ３０１）。そして、アプリケーション２０１のユーザインターフェースにおいてユーザが設定した内容に基づいてアプリケーション２０１側でカラーマッチング処理を行うか否かを判断して色処理モードを決定する（ＳＴＥＰ３０２）。そして、アプリケーション２０１はＳＴＥＰ３０３において、決定した色処理モードをＯＳの印刷システム２０２に通知する。次に、プリンタドライバ２０３固有の設定項目をアプリケーション２０１のユーザインターフェースに表示する必要がある。そのために、ＳＴＥＰ３０４においてアプリケーション２０１は、プリンタドライバ２０３の拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の取得を要求する。アプリケーション２０１は、拡張モジュール２０６から全ての必要な印刷情報の取得が完了するまで処理を繰り返す（ＳＴＥＰ３０５／Ｎｏ）。また、拡張モジュール２０６からの印刷情報の取得が完了すると（ＳＴＥＰ３０５／Ｙｅｓ）、アプリケーション２０１はアプリケーション２０１のユーザインターフェースにプリンタドライバ２０３固有の設定項目をメニューとして表示する（ＳＴＥＰ３０６）。表示されたメニューに対してユーザが各種設定項目を変更したと判断する（ＳＴＥＰ３０７）。ＳＴＥＰ３０７でＹｅｓと判断されると、アプリケーション２０１はその変更情報をプリンタドライバ２０３に通知するために拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の更新を依頼する（ＳＴＥＰ３０８）。拡張モジュール２０６に対して全ての印刷情報の更新が完了するまで処理を繰り返す（ＳＴＥＰ３０９／Ｎｏ）。そして、全ての印刷情報の更新が完了するか判別する（ＳＴＥＰ３０９）。ＳＴＥＰ３０９でＹｅｓと判別されると、ＳＴＥＰ３１０においてアプリケーション２０１は、更新された印刷オブジェクトをパラメータとしてＯＳの印刷システム２０２に対して印刷処理を実行して、処理を終了する（ＳＴＥＰ３１１）。
【００２４】
図４は、本発明の実施の形態に係るアプリケーション２０１による印刷処理実行時にＯＳの印刷システム２０２によって行われる処理の流れを表すフローチャートである。まず、図３のＳＴＥＰ３１０においてアプリケーション２０１から印刷処理が実行されると（ＳＴＥＰ４０１）、ＳＴＥＰ４０２において印刷システム２０２は、対応するプリンタドライバ２０３に対して印刷準備処理を実行する。実行されたプリンタドライバ２０３は、独自の画像処理等に必要な準備処理を行う。ＳＴＥＰ４０３において印刷システム２０２は、図３のＳＴＥＰ３０３においてアプリケーション２０１から通知された色処理モードを取得し、プリンタドライバ２０３にアプリケーション側でのカラーマッチング処理の有無を通知する。ＳＴＥＰ４０４において印刷システム２０２は、アプリケーションの指定した印刷設定などをパラメータとして、プリンタドライバ２０３に対して描画オブジェクトの種類に対応した描画関数を呼び出すことによって印刷データの描画処理を行う。呼び出した描画関数からの戻り値が正常終了を示す値であった場合、印刷システム２０２は、印刷データの描画処理を完了したと判断し（ＳＴＥＰ４０５／Ｙｅｓ）、ＳＴＥＰ４０６に進む。異常終了を示す値が返却された場合には（ＳＴＥＰ４０５／Ｎｏ）、エラーが発生したとみなして処理を中断し、ＳＴＥＰ４０７に進む。ＳＴＥＰ４０６において印刷システム２０２は、全ページ分の全ての描画オブジェクトに対して処理が完了したかを判断する。まだ完了していない場合には（ＳＴＥＰ４０６／Ｎｏ）、ＳＴＥＰ４０４に戻り、残りの描画オブジェクトについての処理を行う。プリンタドライバ２０３は、印刷システム２０２から実行された描画命令によってオブジェクトが描画された描画バッファのデータに基づいて、プリンタ２に転送する印刷データを生成してバックエンド２０５に渡し、印刷を実行する。印刷システム２０２は、プリンタドライバ２０３が全ての描画オブジェクトに対して描画処理を完了したと判断する（ＳＴＥＰ４０６）。ＳＴＥＰ４０６でＹｅｓと判断した場合には、プリンタドライバ２０３に対して印刷終了処理を呼び出し（ＳＴＥＰ４０７）、一連の処理を終了する（ＳＴＥＰ４０８）。呼び出されたプリンタドライバ２０３は、描画バッファのクリアなどを行い、一連の印刷処理を終了する。
【００２５】
図５は、本発明の実施の形態に係るホストコンピュータ１で実行されるプリンタドライバ２０３の処理の流れを表すフローチャートである。図３のＳＴＥＰ３０４およびＳＴＥＰ３０８において、アプリケーション２０１からプリンタドライバ２０３の拡張モジュール２０６に対して印刷情報の取得要求、および更新依頼を受け付けた場合に拡張モジュール２０６が行う処理の流れを表すものである。アプリケーション２０１からプリンタドライバ２０３の拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の取得要求、および更新依頼があった場合に拡張モジュール２０６が起動される（ＳＴＥＰ５０１）。そして、ＳＴＥＰ５０２において拡張モジュール２０６は、印刷情報の取得、および更新命令を受信する。次に拡張モジュール２０６は、アプリケーション２０１から受信した命令が、印刷情報の取得であるのか（ＳＴＥＰ５０３）、印刷情報の更新であるのか（ＳＴＥＰ５０５）を判断する。受信した命令が印刷情報の取得命令であった場合には（ＳＴＥＰ５０３／Ｙｅｓ）、ＳＴＥＰ５０４に進み、拡張モジュール２０６は要求された印刷情報の取得処理を行う。受信した命令が印刷情報の更新命令であった場合には（ＳＴＥＰ５０５／ＹＥＳ）、ＳＴＥＰ５０６に進み、拡張モジュール２０６は受け取った印刷オブジェクトに対して印刷情報の更新処理を行う。次に、ＳＴＥＰ５０７において拡張モジュール２０６は、アプリケーション２０１から印刷オブジェクトの形で受け取った印刷情報に対して、プリンタドライバ２０３固有の色調整などの画像処理の設定を有効にするか無効にするかの情報を記述するキー（以後、ＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙと呼ぶ）を新たに設け、「有効（＝Ｅｎａｂｌｅ）」を表す値を書き込み、印刷オブジェクトを更新する。最後に、ＳＴＥＰ５０８において拡張モジュール２０６は、アプリケーション２０１から受信した命令に従って、要求された印刷情報と更新した印刷オブジェクトをアプリケーション２０１に返却して、処理を終了する（ＳＴＥＰ５０９）。なお、図５の処理では、アプリケーションから印刷情報の取得や印刷情報の更新があった場合、色調整処理の設定を有効にする情報を書込んでいた。しかしながら、アプリケーションから色調整情報の更新があった場合のみに、色調整処理の設定を有効にする情報を書込むようにしても良い。
【００２６】
図６は、本発明の実施の形態に係るホストコンピュータ１で実行されるプリンタドライバ２０３の印刷処理の流れを表すフローチャートである。本フローはアプリケーション２０１からの印刷要求を受けて印刷システム２０２がプリンタドライバ２０３に印刷実行を命令した際に、ドライバ２０４が行う処理の流れを表すものである。ドライバ２０４は、アプリケーション２０１からの印刷要求を受けて印刷システム２０２から印刷オブジェクトをパラメータとして印刷実行命令を受け付ける（ＳＴＥＰ６０１）。そして、ＳＴＥＰ６０２においてドライバ２０４は、図４のＳＴＥＰ４０３における印刷システム２０２から通知されたアプリケーション側でのカラーマッチングの有無を示す色処理モードを取得する。ここで、Ｍａｃ  ＯＳ  Ｘ（登録商標）において、アプリケーション側でカラーマッチング処理を行う場合には、アプリケーションはＯＳに対してＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを示す色処理モードを通知するのが仕様である。従って、ＳＴＥＰ６０３においてドライバ２０４は、アプリケーション２０１がＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを指定してきているか否かを判断する。アプリケーション２０１がＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを指定していない場合には（ＳＴＥＰ６０３／Ｎｏ）、ＳＴＥＰ６０９に進む。そして、ＣｏｌｏｒＳｙｎｃ（登録商標）システムによらないプリンタドライバ独自のカラーマッチング処理をはじめ各種印刷に必要な処理を実行する。アプリケーション２０１がＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを指定していた場合には（ＳＴＥＰ６０３／Ｙｅｓ）、アプリケーション側でカラーマッチング処理が行われると判断してＳＴＥＰ６０４に進む。ＳＴＥＰ６０４においてドライバ２０４は、プリンタドライバの色調整などの画像処理設定メニューをグレーアウト表示して、ユーザからの設定の変更を許可しないことで、ユーザに対してプリンタドライバ側の画像処理設定が適用されないことを知らせる。次に、ＳＴＥＰ６０５においてドライバ２０４は、印刷システム２０２を介してアプリケーション２０１からパラメータとして渡された印刷オブジェクトからプリンタドライバ２０３固有の色調整などの画像処理の設定を有効にするか無効にするかの情報を記述したＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙを参照する。印刷オブジェクトにＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙ設定が存在しているか判定する（ＳＴＥＰ６０６）。判定により、存在していなければ、ドライバ204は、アプリケーション201がプリンタドライバ203の拡張モジュール206を利用して印刷情報のやりとりを行わないアプリケーションであると判断する。そして、STEP608においてドライバ204は、プリンタドライバの仕様に沿って、色調整などプリンタドライバ固有の画像処理設定を無効にして、ＳＴＥＰ６０９に進む。そして、ドライバでの色調整処理をせずに、その他の各種印刷に必要な処理を実行する。一方、印刷オブジェクトにＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙ設定が存在していれば（ＳＴＥＰ６０６／Ｙｅｓ）、ＳＴＥＰ６０７に進みドライ���２０４は、ＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙの設定値が「有効（＝Ｅｎａｂｌｅ）」を表す値であるか判断する（ＳＴＥＰ６０７）。ＳＴＥＰ６０７でＹｅｓと判断された場合、ドライバ２０４は、アプリケーション２０１がプリンタドライバ２０３の拡張モジュール２０６を利用して印刷情報のやりとりを行う。そして、プリンタドライバ２０３が独自に備える機能を利用して各種画像処理を実現したいアプリケーションであると判断する。そして、色調整などプリンタドライバ固有の画像処理の設定を有効に保持したまま、ＳＴＥＰ６０９に進む。ＳＴＥＰ６０９においてドライバ204は、アプリケーションで指定された色調整値に基づきドライバで色処理を施し、各種印刷に必要な処理を実行し、ドライバ２０４は一連の処理を終了する（ＳＴＥＰ６１０）。
【００２７】
図９は、本発明の実施の形態に係るＯＳが提供するユーザインターフェースの一例を表す図である。Ｍａｃ  ＯＳ  Ｘ（登録商標）におけるＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを行うか、ＣｏｌｏｒＳｙｎｃ（登録商標）システムによらないプリンタドライバ固有のカラーマッチングを行うかの選択を行うために表示されるものである。ＯＳが提供するユーザインターフェース９０１は、プリンタ選択メニュー部９０２と印刷設定パネル選択メニュー部９０３と印刷設定パネル表示部９０４から構成される。プリンタ選択メニュー部９０２は、ＯＳにプリンタが複数登録されている場合にその一覧をメニュー項目として表示し選択可能とするものである。印刷設定パネル選択メニュー部９０３は、印刷処理に必要な各種設定項目を関連する項目群で分類し、その項目群の一覧をメニュー項目として表示し選択可能とするものである。設定パネル表示部９０４は、印刷設定パネル選択メニュー部９０３で選択されたメニュー項目に基づいて分類された設定項目群が表示される。９０５はカラーマッチング設定部で、印刷設定パネル選択メニュー部９０３で「カラー・マッチング」を選択した場合に表示される設定項目である。ＯＳの印刷システム２０２は、図３のＳＴＥＰ３０３においてアプリケーション２０１から通知された色処理モードを、図４のＳＴＥＰ４０３において取得する。そして、アプリケーション２０１がＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを指定した場合には「ＣｏｌｏｒＳｙｎｃ」を選択しカラーマッチング設定部９０５に反映させる。一方、プリンタドライバ固有のカラーマッチングを指定した場合には「製造元のマッチング」を選択し、カラーマッチング設定部９０５に反映させる。
【００２８】
図１０は、本発明の実施の形態に係るプリンタドライバ２０３が提供するユーザインターフェースの一例を表す図で、プリンタドライバ２０３固有の色調整などの各種画像処理設定を行うために表示されるものである。プリンタ選択メニュー部１００２および印刷設定パネル選択メニュー部１００３は、図９のプリンタ選択メニュー部９０２と印刷設定パネル選択メニュー部９０３と同等の役割を果たすもので、プリンタ選択メニュー部１００２はＯＳが提供するものである。プリンタドライバ２０３が提供するユーザインターフェース１００１は、印刷設定パネル選択メニュー部１００３で「カラーオプション」を選択した場合に表示される。そして、プリンタドライバ２０３固有の各種画像処理項目として、カラーバランス（シアン）設定部１００４、カラーバランス（マゼンタ）設定部１００５、カラーバランス（イエロー）設定部１００６で構成される。さらに、明るさ設定部１００７、濃度設定部１００８、コントラスト設定部１００９で構成される。図６のＳＴＥＰ６０６およびＳＴＥＰ６０７においてドライバ２０４は、アプリケーション２０１がプリンタドライバ２０３の拡張モジュール２０６を利用して各種画像処理機能設定部１００４〜１００９に対応する設定のいずれかに変更を行ったアプリケーションであると判断した場合には、図６のＳＴＥＰ６０２においてドライバ２０４が印刷システム２０２から取得した色処理モードがＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングであった場合においても、各種画像処理機能設定部１００４〜１００９に対応する設定を有効にして印刷処理を行う。
【００２９】
図１１は、本発明の実施の形態に係るアプリケーション２０１が提供するユーザインターフェースの一例を表す図である。アプリケーション２０１がプリンタドライバ２０３の拡張モジュール２０６を利用してプリンタドライバ２０３固有の色調整などの各種画像処理設定を行うために表示するものである。アプリケーション２０１が提供するユーザインターフェース１１０１は、プリンタ選択メニュー部１１０２と色処理モード選択メニュー部１１０３と、画像処理機能設定部１１０４から構成される。プリンタ選択メニュー部１１０２は、ＯＳにプリンタが複数登録されている場合にその一覧の中からアプリケーション２０１がサポートするプリンタの一覧をメニュー項目として表示し選択可能とするものである。色処理モード選択メニュー部１１０３は、図３のＳＴＥＰ３０２においてアプリケーション２０１が色処理モードを決定するためにアプリケーション２０１側でカラーマッチング処理を行うか否かをメニュー項目として表示し選択可能とするものである。画像処理機能設定部１１０４は、プリンタドライバ２０３固有の画像処理機能を設定可能とするものである。カラーバランス（シアン）設定部１１０５、カラーバランス（マゼンタ）設定部１１０６、カラーバランス（イエロー）設定部１１０７、明るさ設定部１１０８、コントラスト設定部１１０９で構成される。図３のＳＴＥＰ３０４においてアプリケーション２０１がプリンタドライバ２０３の拡張モジュール２０６に対して拡張ＤＤＩを利用して必要な設定項目に関する印刷情報を取得する。そして、その取得した情報に基づいて図３のＳＴＥＰ３０６においてアプリケーション２０１がメニューとして画像処理機能設定部１１０４の各種設定部１１０５〜１１０９に表示する。図３のＳＴＥＰ３０７においてアプリケーション２０１は、ユーザが各種設定部１１０５〜１１０９いずれかの設定を変更したと判断する。そして変更したと判断した場合には、図３のＳＴＥＰ３０８においてアプリケーション２０１は、拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の更新を行う。
【００３０】
このように、本実施形態では、アプリケーション側とプリンタドライバ側の双方でカラーマッチングが行われるような設定の場合に、このような設定のもとではプリンタドライバ側の画像処理を無効にするという処理を行うプリンタドライバにおいても、アプリケーション側でカラーマッチングを施した場合にプリンタドライバが独自に備える画像処理の出力効果を実現することができる。ユーザは、アプリケーション側で設定した各種画像処理が常に適用された出力結果を得ることが可能となり操作性の向上につながる。
つまり、アプリケーション側とプリンタドライバ側の双方でカラーマッチングが行われるような設定の場合にプリンタドライバ側の画像処理を無効にする仕様を備えたプリンタドライバと、このような設定のもとであってもプリンタドライバ側の画像処理を有効のままにする仕様を備えたプリンタドライバとをアプリケーション側で意識することはなく、ユーザはアプリケーションのユーザインターフェースを使ってプリンタドライバ固有の設定項目を設定した場合に、ユーザは常に期待した出力を得ることができる。
【００３１】
＜実施形態２＞
次に第２の実施形態について説明する。尚、以下の説明では、第１の実施形態と共通する図およびその説明は省略し、異なる点についてのみ説明する。
【００３２】
第１の実施形態では、プリンタドライバの拡張モジュール内部でＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙ設定値に固定値（「有効（＝Ｅｎａｂｌｅ）」）を書き込むことによって、プリンタドライバの拡張モジュールを利用してプリンタドライバ固有の印刷情報のやりとりを行うアプリケーションに限っては、常にプリンタドライバ固有の画像処理を有効にすることを実現していた。一方、第２の実施形態では、アプリケーション側でプリンタドライバ固有の画像処理を有効にするか否かを指定することができるというものである。
【００３３】
図７は、本発明の第２の実施の形態に係るアプリケーションの処理の流れを表すフローチャートである。本アプリケーションは、ホストコンピュータ１で実行されるプリンタドライバ２０３に用意された拡張モジュール２０６を利用してプリンタドライバ固有の設定項目を設定可能である。
【００３４】
アプリケーション２０１は、ホストコンピュータ１において起動される（ＳＴＥＰ７０１）。次に、アプリケーション２０１の色処理モード選択メニュー部１１０３においてユーザが設定した内容に基づいてアプリケーション２０１側でカラーマッチング処理を行うか否かを判断して色処理モードを決定する（ＳＴＥＰ７０２）。そして、アプリケーション２０１はＳＴＥＰ７０３において、決定した色処理モードをＯＳの印刷システム２０２に通知する。アプリケーション２０１が決定した色処理モードがＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングであった場合には（ＳＴＥＰ７０４／Ｙｅｓ）、ＳＴＥＰ７０５に進む。ＳＴＥＰ７０５においてアプリケーション２０１は、まずプリンタドライバ２０３の拡張モジュール２０６に対してプリンタドライバ２０３側の色調整などの画像処理を有効にするか無効にするかの設定をサポートしているかを問合せる。拡張モジュール２０６からの戻り値が色調整などの画像処理を有効にするか無効にするかの設定をサポートしていることを示す値であったか判別する（ＳＴＥＰ７０６）。ＳＴＥＰ７０６でＹｅｓの場合、ＳＴＥＰ７０７に進み、アプリケーション２０１は、アプリケーション側でカラーマッチング処理を行う上に、プリンタドライバ２０３固有の画像処理も有効にした出力効果を実現したいかどうかを決定する。アプリケーション２０１が、プリンタドライバの仕様に沿って、プリンタドライバ２０３固有の画像処理を無効にするか判断する（ＳＴＥＰ７０７）。ＳＴＥＰ７０７でＮｏと判断した場合、ＳＴＥＰ７０９においてアプリケーション２０１は、拡張モジュール２０６に対して拡張ＤＤＩを利用してプリンタドライバ２０３固有の画像処理の設定を有効にするか無効にするかの情報を記述したＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙに「無効（＝Ｄｉｓａｂｌｅ）」を示す値をセットしてもらうように印刷オブジェクトの更新を依頼する。これを受けて、プリンタドライバ２０３のドライバ２０４は、アプリケーション２０１からの印刷実行時、図６のＳＴＥＰ６０５においてＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙの設定値を参照する。そして、図６のＳＴＥＰ６０７において「無効（＝Ｄｉｓａｂｌｅ）」を表す値であったと判断する（図６、ＳＴＥＰ６０７）。図６、ＳＴＥＰ６０７でＮｏと判断された場合、図６のＳＴＥＰ６０８においてドライバ２０４は、色調整などプリンタドライバ固有の画像処理設定を無効にしてＳＴＥＰ６０９に進み、その他の各種印刷に必要な処理を実行する。一方、アプリケーション２０１が、プリンタドライバ２０３固有の画像処理を有効にした出力効果を実現したいと判断した場合（ＳＴＥＰ７０７／Ｙｅｓ）、ＳＴＥＰ７０８においてアプリケーション２０１は、拡張モジュール２０６に対してＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙに「有効（＝Ｅｎａｂｌｅ）」を示す値をセットしてもらうように印刷オブジェクトの更新を依頼してＳＴＥＰ７１０に進む。次に、プリンタドライバ２０３固有の設定項目をアプリケーション２０１のユーザインターフェースに表示する必要がある。そのために、アプリケーション２０１はＳＴＥＰ７１０においてプリンタドライバ２０３の拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の取得を要求する。拡張モジュール２０６から全ての必要な印刷情報の取得が完了するまで処理を繰り返す（ＳＴＥＰ７１１／Ｎｏ）。そして拡張モジュール２０６からの印刷情報の取得が完了すると（ＳＴＥＰ７１１／Ｙｅｓ）、アプリケーション２０１は画像処理機能設定部１１０４にプリンタドライバ２０３固有の設定項目をメニューとして表示する（ＳＴＥＰ７１２）。このとき、ＳＴＥＰ７０７においてアプリケーション２０１が、プリンタドライバ２０３の仕様に合わせて、色処理モードがＣｏｌｏｒＳｙｎｃ（登録商標）システムによるカラーマッチングを行う設定のもとではプリンタドライバ２０３固有の画像処理を無効にさせたい場合、アプリケーション２０１は、図１１の画像処理機能設定部１１０４におけるプリンタドライバ２０３固有の設定項目メニューをグレーアウト表示するなどして、ユーザに各種画像処理への設定が適用されないことを知らせる。一方、プリンタドライバ２０３固有の設定項目メニューが設定可能で、表示されたメニューに対してユーザが各種設定項目を変更したか判断する（ＳＴＥＰ７１３）。ＳＴＥＰ７１３でＹｅｓと判断すると、アプリケーション２０１はその変更情報をプリンタドライバ２０３に通知するために拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の更新を依頼する（ＳＴＥＰ７１４）。そして、アプリケーション201は、拡張モジュール２０６に対して全ての印刷情報の更新が完了したか判断する（ＳＴＥＰ７１５）。ＳＴＥＰ７１５でＮｏと判断されるとＳＴＥＰ７１４に戻る。全ての印刷情報の更新が完了すると（ＳＴＥＰ７１５／Ｙｅｓ）、アプリケーション２０１は、ＳＴＥＰ７１６において更新された印刷オブジェクトをパラメータとしてＯＳの印刷システム２０２に対して印刷処理を実行して、処理を終了する（ＳＴＥＰ７１７）。
【００３５】
図８は、本発明の第２の実施の形態に係るホストコンピュータ１で実行されるプリンタドライバ２０３の処理の流れを表すフローチャートである。図７のＳＴＥＰ７０５およびＳＴＥＰ７０８、ＳＴＥＰ７０９、ＳＴＥＰ７１０、ＳＴＥＰ７１４において、アプリケーション２０１からプリンタドライバ２０３の拡張モジュール２０６に対して印刷情報の取得要求、および更新依頼を受け付けた場合に拡張モジュール２０６が行う処理の流れを表すものである。アプリケーション２０１からプリンタドライバ２０３の拡張モジュール２０６に対して拡張ＤＤＩを利用して印刷情報の取得要求、および更新依頼があった場合に拡張モジュール２０６が起動される（ＳＴＥＰ８０１）。そして、ＳＴＥＰ８０２において拡張モジュール２０６は、印刷情報の取得、および更新命令を受信する。次に拡張モジュール２０６は、アプリケーション２０１から受信した命令が、印刷情報の取得であるのか（ＳＴＥＰ８０３）、印刷情報の更新であるのか（ＳＴＥＰ８０５）を判断する。受信した命令が印刷情報の取得命令であった場合には（ＳＴＥＰ８０３／Ｙｅｓ）、ＳＴＥＰ８０４に進み、拡張モジュール２０６は要求された印刷情報の取得処理を行う。図７のＳＴＥＰ７０５において、拡張モジュール２０６がプリンタドライバ２０３側の画像処理を有効にするか無効にするかの設定をサポートしているかを問合せてきた場合、拡張モジュール２０６は印刷情報の取得要求という形でアプリケーション２０１から命令を受信し、要求された印刷情報の取得処理、すなわちプリンタドライバ２０３側の画像処理を有効にするか無効にするかの設定をサポートしているか否かの情報を取得する。一方、受信した命令が印刷情報の更新命令であった場合には（ＳＴＥＰ８０５／ＹＥＳ）、ＳＴＥＰ８０６に進み、拡張モジュール２０６は受け取った印刷オブジェクトに対して印刷情報の更新処理を行う。図７のＳＴＥＰ７０８およびＳＴＥＰ７０９において、拡張モジュール２０６に対して拡張ＤＤＩを利用してプリンタドライバ２０３固有の画像処理の設定を有効にするか無効にするかの情報を記述するためのＣｏｌｏｒＯｐｔｉｏｎＳｅｔｔｉｎｇＫｅｙに値をセットする場合、拡張モジュール２０６は印刷情報の更新依頼という形でアプリケーション２０１から命令を受信する。そして、受け取った印刷オブジェクトに対して印刷情報の更新処理を行う。最後に、ＳＴＥＰ８０７において拡張モジュール２０６は、アプリケーション２０１から受信した命令に従って、要求された印刷情報と更新した印刷オブジェクトをアプリケーション２０１に返却して、処理を終了する（ＳＴＥＰ８０８）。
【００３６】
このように、本実施形態では、アプリケーション側とプリンタドライバ側の双方でカラーマッチングが行われるような設定の場合に、プリンタドライバ側の画像処理を無効にする仕様を備えたプリンタドライバと、このような設定のもとであってもプリンタドライバ側の画像処理を有効のままにする仕様を備えたプリンタドライバとで、それぞれプリンタドライバの仕様に合わせてアプリケーションのユーザインターフェースを使ったプリンタドライバ固有の設定項目の表示を切り替えることが可能となる。つまり、ユーザは、アプリケーション側で設定した各種画像処理が適用される場合と、適用されない場合の違いを知ることができるようになり、常に期待した出力を得るための操作を行うことができる。
【００３７】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００３８】
１  ホストコンピュータ
２、３  プリンタ
２０１  アプリケーション
２０２  印刷システム
２０３  プリンタドライバ
２０４  ドライバ
２０５  バックエンド
２０６  拡張モジュール
【図１】
2011053870.tif 000003
【図２】
2011053870.tif 000004
【図３】
2011053870.tif 000005
【図４】
2011053870.tif 000006
【図５】
2011053870.tif 000007
【図６】
2011053870.tif 000008
【図７】
2011053870.tif 000009
【図８】
2011053870.tif 000010
【図９】
2011053870.tif 000011
【図１０】
2011053870.tif 000012
【図１１】
2011053870.tif 000013