(57)【要約】【課題】  各種プリンタの機能に的確に応じた定型印刷を実行することができなかった。【解決手段】  コンピュータに接続される周辺機器の駆動条件を設定するＵＩの表示を制御するにあたり、上記周辺機器に定型動作を実施させるための駆動条件を規定した定型駆動データであって複数の定型駆動データを予め所定の記憶媒体に記憶しておき、上記定型駆動データを参照して所定の出力装置に対して複数の定型動作候補を表示するとともにその指定を受け付け、上記受け付けた定型動作の駆動条件の設定値を示す設定値データを所定の記憶媒体に記憶し、駆動条件の設定指示を受け付けて所定の出力装置に対して駆動条件を設定するための選択肢を表示するとともに駆動条件の設定値の入力を受け付け、上記駆動条件入出力工程にて入力された駆動条件の設定値にて上記設定値データを更新する。【選択図】  図８
2005063113.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに接続される周辺機器の駆動条件をＵＩによって設定する際に当該ＵＩの表示を制御するＵＩ制御装置であって、
上記周辺機器に定型動作を実施させるための駆動条件を規定した定型駆動データであって複数の定型駆動データを記憶する定型駆動データ記憶手段と、
上記定型駆動データを参照して所定の出力装置に対して複数の定型動作候補を表示するとともにその指定を受け付ける定型駆動指定受付手段と、
上記受け付けた定型動作の駆動条件の設定値を示す設定値データを記憶する設定値データ記憶手段と、
駆動条件の設定指示を受け付けて所定の出力装置に対して駆動条件を設定するための選択肢を表示するとともに駆動条件の設定値の入力を受け付ける駆動条件入出力手段と、
上記駆動条件入出力手段にて入力された駆動条件の設定値にて上記設定値データを更新する設定値データ更新手段とを具備することを特徴とするＵＩ制御装置。
【請求項２】
上記駆動条件同士の依存関係を示す依存関係データを記憶する依存関係データ記憶手段と、
上記駆動条件の設定可能範囲を示す設定可能範囲データを記憶する設定可能範囲データ記憶手段とを備え、
上記駆動条件入出力手段は、上記選択肢を表示するにあたり上記設定可能範囲データを参照して表示対象の駆動条件の設定可能範囲を取得して上記所定の出力装置に対して表示し、
当該選択肢の表示は、上記設定可能範囲データを参照して上記設定値の入力によって変更された駆動条件に依存する駆動条件の設定可能範囲を取得し所定の出力装置に対して当該依存する駆動条件の設定可能範囲を表示する駆動条件更新手段によって更新されることを特徴とする上記請求項１に記載のＵＩ制御装置。
【請求項３】
上記駆動条件入出力手段は、上記周辺機器の駆動開始指示の入力を受け付け可能であり、当該駆動開始指示の入力に応じて上記設定値データ記憶手段に記憶された設定値に従って上記周辺機器を駆動させることを特徴とする上記請求項１または請求項２のいずれかに記載のＵＩ制御装置。
【請求項４】
上記設定値データ記憶手段は、上記受け付けた定型駆動データに規定されていない駆動条件について予め決められた優先度順に上記設定可能範囲内で設定値を決定し、当該設定値と上記定型駆動データの駆動条件の設定値とを示す設定値データを記憶することを特徴とする上記請求項２または請求項３のいずれかに記載のＵＩ制御装置。
【請求項５】
コンピュータに接続される周辺機器の駆動条件をＵＩによって設定する際に当該ＵＩの表示を制御するＵＩ制御方法であって、
上記周辺機器に定型動作を実施させるための駆動条件を規定した定型駆動データであって複数の定型駆動データを予め所定の記憶媒体に記憶しておき、
上記定型駆動データを参照して所定の出力装置に対して複数の定型動作候補を表示するとともにその指定を受け付ける定型駆動指定受付工程と、
上記受け付けた定型動作の駆動条件の設定値を示す設定値データを所定の記憶媒体に記憶する設定値データ記憶工程と、
駆動条件の設定指示を受け付けて所定の出力装置に対して駆動条件を設定するための選択肢を表示するとともに駆動条件の設定値の入力を受け付ける駆動条件入出力工程と、
上記駆動条件入出力工程にて入力された駆動条件の設定値にて上記設定値データを更新する設定値データ更新工程とを具備することを特徴とするＵＩ制御方法。
【請求項６】
コンピュータに接続される周辺機器の駆動条件をＵＩによって設定する際に当該ＵＩの表示を制御するＵＩ制御プログラムであって、
上記周辺機器に定型動作を実施させるための駆動条件を規定した定型駆動データであって複数の定型駆動データを予め所定の記憶媒体に記憶しておき、
上記定型駆動データを参照して所定の出力装置に対して複数の定型動作候補を表示するとともにその指定を受け付ける定型駆動指定受付機能と、
上記受け付けた定型動作の駆動条件の設定値を示す設定値データを所定の記憶媒体に記憶する設定値データ記憶機能と、
駆動条件の設定指示を受け付けて所定の出力装置に対して駆動条件を設定するための選択肢を表示するとともに駆動条件の設定値の入力を受け付ける駆動条件入出力機能と、
上記駆動条件入出力機能にて入力された駆動条件の設定値にて上記設定値データを更新する設定値データ更新機能とをコンピュータに実現させることを特徴とするＵＩ制御プログラム。
【請求項７】
コンピュータに接続される印刷装置の印刷条件をＵＩによって設定するとともに当該ＵＩで設定された印刷条件で印刷装置を制御する印刷制御装置であって、
上記周辺機器に定型印刷を実施させるための印刷条件を規定した定型印刷データであって複数の定型印刷データを記憶する定型印刷データ記憶手段と、
上記定型印刷データを参照して所定の出力装置に対して複数の定型印刷候補を表示するとともにその指定を受け付ける定型印刷指定受付手段と、
上記受け付けた定型印刷の印刷条件の設定値を示す設定値データを記憶する設定値データ記憶手段と、
印刷条件の設定指示を受け付けて所定の出力装置に対して印刷条件を設定するための選択肢を表示するとともに印刷条件の設定値の入力を受け付ける印刷条件入出力手段と、
上記印刷条件入出力手段にて入力された印刷条件の設定値にて上記設定値データを更新する設定値データ更新手段と、
印刷を実行する指示を受け付ける印刷実行指示受付手段と、
同印刷を実行する指示に応じて上記設定値データに規定された印刷条件にて印刷装置を駆動し、画像を印刷させる印刷制御手段とを具備することを特徴とする印刷制御装置。
【請求項８】
コンピュータに接続される印刷装置の印刷条件をＵＩによって設定するとともに当該ＵＩで設定された印刷条件で印刷装置を制御する印刷制御方法であって、
上記周辺機器に定型印刷を実施させるための印刷条件を規定した定型印刷データであって複数の定型印刷データを予め所定の記憶媒体に記憶しておき、
上記定型印刷データを参照して所定の出力装置に対して複数の定型印刷候補を表示するとともにその指定を受け付ける定型印刷指定受付工程と、
上記受け付けた定型印刷の印刷条件の設定値を示す設定値データを所定の記憶媒体に記憶する設定値データ記憶工程と、
印刷条件の設定指示を受け付けて所定の出力装置に対して印刷条件を設定するための選択肢を表示するとともに印刷条件の設定値の入力を受け付ける印刷条件入出力工程と、
上記印刷条件入出力工程にて入力された印刷条件の設定値にて上記設定値データを更新する設定値データ更新工程と、
印刷を実行する指示を受け付ける印刷実行指示受付工程と、
同印刷を実行する指示に応じて上記設定値データに規定された印刷条件にて印刷装置を駆動し、画像を印刷させる印刷制御工程とを具備することを特徴とする印刷制御方法。
【請求項９】
コンピュータに接続される印刷装置の印刷条件をＵＩによって設定するとともに当該ＵＩで設定された印刷条件で印刷装置を制御する印刷制御プログラムであって、
上記周辺機器に定型印刷を実施させるための印刷条件を規定した定型印刷データであって複数の定型印刷データを予め所定の記憶媒体に記憶しておき、
上記定型印刷データを参照して所定の出力装置に対して複数の定型印刷候補を表示するとともにその指定を受け付ける定型印刷指定受付機能と、
上記受け付けた定型印刷の印刷条件の設定値を示す設定値データを所定の記憶媒体に記憶する設定値データ記憶機能と、
印刷条件の設定指示を受け付けて所定の出力装置に対して印刷条件を設定するための選択肢を表示するとともに印刷条件の設定値の入力を受け付ける印刷条件入出力機能と、
上記印刷条件入出力機能にて入力された印刷条件の設定値にて上記設定値データを更新する設定値データ更新機能と
印刷を実行する指示を受け付ける印刷実行指示受付機能と、
同印刷を実行する指示に応じて上記設定値データに規定された印刷条件にて印刷装置を駆動し、画像を印刷させる印刷制御機能とをコンピュータに実現させることを特徴とする印刷制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＵＩ制御装置、ＵＩ制御方法、ＵＩ制御プログラム、印刷制御装置、印刷制御方法および印刷制御プログラムに関する。
【背景技術】
【０００２】
印刷装置など、コンピュータの周辺機器を駆動するためには通常ドライバと呼ばれる制御プログラムが利用される。このドライバにおいては周辺機器を駆動するための駆動条件の設定を受け付け、この設定に従って周辺機器を駆動する。ここで、ディスプレイ等にＵＩ（User Interface）を表示し、このＵＩを通じて利用者に駆動条件を設定させるのが一般的である。周辺機器において多くの機能を実現可能に構成したとしても、多くの利用者は同じ目的でその周辺機器を利用する。そこで、当該周辺機器で実現可能な機能を実現するための駆動条件を予め規定し、定型的な動作を実施するためのプリセットをＵＩ上で選択させることが行われており、例えば、プリセットによる印刷を簡単に実行する技術が開発されている（例えば、特許文献１）。
【特許文献１】特願２００２−２５２７６９号
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上述した従来の技術においては、ＵＩ上で定型印刷を指定するのみで周辺機器に定型動作を実施させることができるものの、定型動作における駆動条件の一部を変更して周辺機器を駆動することができなかった。すなわち、定型動作が多くの利用者の目的に合致しているといっても、総ての利用者が定型動作の通りに周辺機器を駆動してその目的に合致しするとは限らない。また、利用者の多様なニーズに応えるためには、おおむね定型動作と同様の動作を行わせるとしても、一部の駆動条件は定型動作の駆動条件と異なるものとして設定可能であった方が好ましい。
本発明は、上記課題にかんがみてなされたもので、周辺機器に定型動作を行わせるに際してその一部の駆動条件を変更可能にするＵＩ制御装置、ＵＩ制御方法、ＵＩ制御プログラム、印刷制御装置、印刷制御方法および印刷制御プログラムの提供を目的とする。
【課題を解決するための手段】
【０００４】
上記目的を達成するため本発明では、定型動作を実施させるための定型駆動データを予め所定の記憶媒体に記憶しておき、このデータに基づいて定型動作の候補をＵＩ上に表示する。そして、このＵＩ上での定型動作候補の指定によって定型動作の駆動条件を設定可能にするため、指定された定型動作の駆動条件を示す設定値データを記録する。本発明においては、さらに駆動条件の設定指示に応じて駆動条件の設定を受け付け、この設定値の入力に従って上述の設定値データを更新する。
【０００５】
すなわち、ＵＩにおいては定型動作の選択を実施可能にするとともに、必要に応じてさらに詳細に駆動条件を設定可能に構成しており、かかる構成により、周辺機器に定型動作を行わせるに際してその一部の駆動条件を変更することが可能になる。この結果、定型動作を指定するのみでほとんどの駆動条件を一回のみの指定動作で非常に容易に設定することが可能であり、かつ利用者のニーズに応じた詳細な設定をも実施可能であり、より便利なＵＩを提供することが可能になる。
【０００６】
ここで、周辺機器としては、コンピュータに接続されて駆動される機器であればよく、種々の機器がこの周辺機器に該当する。例えば、コンピュータに接続されて画像の出力動作を行うプリンタやディスプレイ，プロジェクタ等の出力機器や、コンピュータに接続されて画像の入力動作を行うスキャナやデジタルカメラ等の入力機器や、コンピュータに接続されたデータの記録動作を行うハードディスクドライブ等の記録機器等、種々の機器が周辺機器となり得る。
【０００７】
定型動作は、周辺機器において所定の目的を達するための動作であればよく、様々な決め方を採用可能である。例えば、定型動作を実施させるための駆動条件を決めることによって定型動作の内容や目的を特定することもできるし、感覚的な言葉で定型動作の内容や目的を特定するなどの構成を採用可能である。より具体的には、印刷装置において印刷条件として用紙サイズや用紙の種類、印刷速度を特定し、「Ａ４，普通紙（速い）」などの定型印刷を規定しても良いし、「最高画質」「すごくきれい」などのように感覚的な言葉で定型印刷を規定してもよく、種々の構成を採用可能である。プロジェクタにおいては、プレゼンテーション会場の大きさや投影する画像の種類によって定型動作を特定するなど、種々の構成を採用可能である。
【０００８】
定型駆動データは、周辺機器において種々の定型動作を実施させるための駆動条件を規定したデータであればよく、定型動作を実施させるために最低限必要な駆動条件を規定しても良いし、定型動作を実施させるために必要な総ての駆動条件を規定しても良い。上述の例において「Ａ４，普通紙（速い）」という定型動作を実施するためには、印刷条件として印刷用紙のサイズと印刷用紙の種類と当該サイズおよび種類にて実施可能な印刷速度のうち高速に印刷を実施させるための設定とが最低限必要な駆動条件となる。定型動作を実施するために必要な総ての駆動条件を規定するのであれば、このほかにも印刷用紙上でのマージンの設定や画像処理の有無などを規定すればよい。尚、前者のように、定型動作を実施させるために最低限必要な駆動条件を規定するのであれば、周辺機器を駆動するために必要な他の駆動条件は自動で設定するのが好ましい。
【０００９】
定型駆動指定受付手段においては、上述の複数の定型駆動データを参照してＵＩ上に定型動作候補として表示し、その指定を受け付けることができればよく、種々の構成を採用可能である。ここでは、ＵＩ表示を行うとともに定型駆動の指定を受け付けるインタフェースを提供していればよく、例えば、ディスプレイ等の所定の出力装置に対して駆動条件の選択肢を表示するとともに、キーボードやマウス等の入力装置によって利用者の意図通りに設定値を入力可能にする構成を採用可能である。定型動作の候補としては、上記複数の定型駆動データの総てを表示しても良いし、その一部を表示しても良い。尚、周辺機器の接続状況や機種毎の機能等の制約によって一部の定型動作を実施することができない環境では、当該一部の定型動作をＵＩ上で非表示とするか、表示したとしても指定不能にすることが好ましい。
【００１０】
設定値データ記憶手段においては、定型動作の駆動条件を示す設定値データを記憶することができればよく、少なくとも上記定型駆動指定受付手段にて指定を受け付けた定型動作の駆動条件を示す設定値データを記憶する。上述のように定型駆動データが定型動作を実施させるために最低限必要な駆動条件を規定するデータであり、周辺機器を駆動するために必要な他の駆動条件を自動で設定する場合は、この設定後の設定値を示すデータを設定値データ記憶手段に記憶する。この場合、その設定内容を明示する構成を採用しても良い。尚、ここで駆動条件の設定値といっても、その値が各条件に対応していればよく、数値のみには限られない。すなわち、駆動条件を文字列で特定する場合も含む。但し、コンピュータにて扱う機器においては各条件を数値に対応付け、数値によって駆動条件を指定する構成が好ましい。
【００１１】
この設定値データ記憶手段においては、周辺機器を駆動させる前に、仮に設定値を記憶しておくことができればよい。従って、例えばＵＩ制御装置のワークエリアとなるＲＡＭに記憶するように構成すればよい。ＲＡＭは他の記憶装置、例えばＥＥＰＲＯＭやＨＤＤと比較して高速にアクセスすることができるので、ＲＡＭに設定値データを記憶することによって高速に処理を進めることができる。むろん、設定値データを記憶するという意味ではＥＥＰＲＯＭやＨＤＤを使用してもかまわない。
【００１２】
駆動条件入出力手段は、上述の定型駆動指定受付手段と同様にＵＩ表示と所定の入力指示を実施可能であり、駆動条件を設定するための選択肢の表示とその選択を実施可能であればよく、種々の構成を採用可能である。ＵＩに対して表示する駆動条件は当該ＵＩによって周辺機器を制御する際の目的に応じて適宜必要な駆動条件を選択すればよい。例えば、定型動作の駆動条件であって変更されることが多い駆動条件を選択して表示するなどの構成を採用可能である。むろん、総ての駆動条件について設定可能に選択肢を表示しても良い。
【００１３】
設定値データ更新手段では、入力された駆動条件の設定値にて上記設定値データ記憶手段での記憶内容を更新することができればよい。このように、必要に応じて設定値データを更新する構成においては、ＵＩにて定型動作を選択するのみで定型動作を実施させるための設定値データを記憶させることもできるし、ＵＩにて定型動作を選択した後、設定値データを更新するために詳細に駆動条件の設定を行って、利用者のニーズに応じた設定の設定値データを記憶することもできる。設定値データを記憶しておけば、周辺機器の駆動開始指示の入力を受け付け可能に構成し、この指示に応じて上記駆動手段に対する設定を行うことにより、この設定通りに周辺機器を駆動することが可能になる。
【００１４】
すなわち、このＵＩにおける設定では設定値を所定の記憶媒体に記憶し、実際にドライバなど、周辺機器を駆動するための駆動手段に対して設定を行っていないが、周辺機器の駆動開始指示に対してこの設定値に従った駆動を実施可能であれば、定型動作を実施させることもできるし、定型動作以外の動作をも実施させることができる。特に定型動作の一部の駆動条件を変更して周辺機器を駆動させたい場合に、非常に容易にその設定を完了し、駆動させることができる。尚、以上のように、実際に駆動手段に対する設定を行うことなく、ＵＩで指定された設定値を更新する構成においては、当該設定値を参照するのみでＵＩを構築することができ、ＵＩでの入力に応じて逐次駆動手段に対して設定を行う構成と比較して、高速にＵＩの表示及び更新を実施することができる。
【００１５】
駆動条件入出力手段においては、駆動条件を設定するための構成を採用していればよいが、その好適な構成例として、駆動条件同士の依存関係およびその設定可能範囲に基づいて、設定対象の駆動条件につき常に自動で適切な設定可能範囲を提示するように構成することも可能である。このために、予め依存関係データと設定可能範囲データとを所定の記憶媒体に記憶しておき、これらのデータを参照する。このとき、駆動条件入出力手段は設定可能範囲データに基づいて適切な設定可能範囲での表示を行わせ、依存関係のある駆動条件については駆動条件更新手段によって設定可能範囲を更新する。
【００１６】
すなわち、周辺機器においては、特定の駆動条件の設定値が異なると他の駆動条件にて設定可能な設定値の範囲が変動する場合があり、このような場合に駆動条件同士に依存関係があるとしている。上述の駆動条件入出力手段によって駆動条件の設定がなされたときに、当該設定された駆動条件と他の駆動条件とに依存関係がある場合、設定可能範囲が変動し得る。そこで、駆動条件入出力手段によって上記選択肢を表示するにあたり、上記設定可能範囲データを参照して設定可能範囲を取得する構成とし、駆動条件更新手段にて依存関係にある駆動条件の設定可能範囲を取得してＵＩを更新することにより適切な設定可能範囲でＵＩ表示をすることが可能になる。
【００１７】
このＵＩ表示の更新において設定可能範囲を適切に表示するためには、所定の記憶媒体に記憶された依存関係データと設定可能範囲データとを参照すればよいので、ここにおいても、上述のように実際に駆動手段に対する設定を行うことなくＵＩ表示を更新することができる。従って、ＵＩでの入力に応じて逐次駆動手段に対して設定を行い、その設定における設定可能範囲を駆動手段に対して問い合わせる必要がなく、高速にＵＩの表示及び更新を実施することができる。、
【００１８】
尚、駆動条件更新手段においては、上記ＵＩを更新させることができればよく、ＵＩ上で駆動条件の設定値が入力されたときに、これに伴って入力された設定値を表示させ、また、必要に応じて依存関係のある他の駆動条件の設定可能範囲を更新することができればよい。従って、上記設定値が入力された駆動条件に対して依存関係がある駆動条件を依存関係データによって判定し、さらに、設定可能範囲データによって当該判定した駆動条件について設定可能範囲を取得することができればよい。
【００１９】
また、依存関係データは、依存関係がある場合に依存関係がある駆動条件同士を特定することができればよく、種々の書式を採用可能である。依存関係データの好適な具体例として、特定の駆動条件の設定値が異なると他の駆動条件にて設定可能な設定値の範囲が変動する場合にこれらの駆動条件同士を対応づけたデータを採用可能である。より具体的には、所定の区切り毎に依存関係のある駆動条件を記述することとし、一つの区切りにおいて依存関係にある駆動条件同士を列記したデータ等を採用することが可能である。さらに、依存関係としては、特定の駆動条件の設定値が異なると他の駆動条件にて設定可能な設定値の範囲が変動するという状況であり、当該特定の駆動条件を先に決めるべきである。そこで、当該特定の駆動条件を上記他の駆動条件に対する上位の条件とし、ある駆動条件に対してその上位の駆動条件を記述したり、逆にある駆動条件に対して下位の駆動条件を記述するなど、特定の規則を持ったデータ構造とすることが好ましい。
【００２０】
また、設定可能範囲データは、各駆動条件について設定可能な設定値の範囲を示すことができればよく、むろん、特定の駆動条件と他の駆動条件とに依存関係が存在する場合には、特定の駆動条件の設定値を特定するデータとその設定値であるときの他の駆動条件の設定可能範囲を特定するデータとによって設定可能範囲データを構成する。設定可能範囲データの好適な具体例として、設定可能範囲の規定対象となっている規定対象駆動条件に対して依存関係にある駆動条件が特定の条件であることを前提とし、当該特定の条件である場合に規定対象駆動条件の設定可能範囲を示すデータにする構成を採用可能である。
【００２１】
上述のように特定の駆動条件に対して他の駆動条件が上位の条件であるか否かという考え方を採用すれば、規定対象駆動条件に対する上位の条件についてその設定値を特定し、当該上位の条件が当該設定値であるときの設定可能範囲を規定することで、容易に設定可能範囲データを作成することができる。むろん、ここでも所定の区切り毎に各駆動条件の設定可能範囲を記述することとし、一つの区切りにおいて上位の条件およびその設定値を記述するとともに規定対象駆動条件の設定可能範囲を記述するデータ等を採用することが可能である。
【００２２】
さらに、設定可能範囲データにおいて駆動条件を示す文字列データを含むように構成してもよい。すなわち、駆動条件の選択肢をＵＩ上に示すに際して、設定可能範囲が変動することによってＵＩ上の文字列も変更した方が好ましい場合があり、設定可能範囲データとして文字列データを備えていれば、この文字列データを利用することによってＵＩ上の文字列を容易に変更することができる。この結果、非常にわかりやすいＵＩを提供することが可能になる。
【００２３】
さらに、ドライバ等の駆動手段によって周辺機器を駆動し、インタフェース手段を介して駆動手段に対する駆動条件の設定や設定可能範囲の取得を実施する構成においては、予め上記依存関係データを記憶媒体に記憶しておくことにより、上記設定可能範囲データを作成することができる。従って、本発明にかかるＵＩ制御装置をコンピュータによって実現するために周辺機器のメーカがそのドライバプログラム等を提供するに際し、上記依存関係データおよび上記設定可能範囲データ作成を実現するプログラムを予め作成し、利用者に提供すればよく、提供データ及びプログラムの容量および作業工程を低減することができる。
【００２４】
特に、設定可能範囲データはドライバのバージョンアップ等により内容が変更する可能性があるので、設定可能範囲データ作成手段によって設定可能範囲データを作成可能に構成しておき、バージョンアップ等の前に依存関係データのみを書き換えるようにしておけば、バージョンアップ等に対応した設定可能範囲データを容易に提供することが可能になる。設定可能範囲データ作成手段においては、インタフェース手段を介して駆動手段を介して駆動条件の設定可能範囲を取得することができるので、依存関係データを参照すれば依存関係のある上位の駆動条件について条件設定をしながら下位の駆動条件について設定可能範囲を取得することができる。
【００２５】
尚、ＵＩの表示に際して設定可能範囲データは必要であるため、周辺機器を駆動する前に上記設定可能範囲データ作成手段によって設定可能範囲データを作成しておく。インタフェース手段は、設定可能範囲データ作成手段によって駆動条件の設定可能範囲を取得する際に必要に応じて利用されればよいが、むろん、上記ドライバ等の駆動手段に対するインタフェースとなるので、実際に周辺機器を駆動するときは当該インタフェース手段によって駆動手段に対して駆動条件を設定する。
【００２６】
さらに、設定可能範囲データ作成手段によって依存関係データから設定可能範囲データを作成する構成において、周辺機器の駆動条件のすべてについて予め設定可能範囲データを作成しておくことが必須というわけではない。例えば、依存関係にある駆動条件の数が非常に多く、設定可能範囲データを作成する際に非常に多くの時間を要する駆動条件や、ＵＩ上での利用頻度が低い駆動条件については設定可能範囲データを作成しないように構成することができる。かかる構成によれば、設定可能範囲データを作成するための時間を短く抑えることができる。
【００２７】
設定可能範囲データ作成手段によって総ての駆動条件について設定可能範囲データを作成していない状態で、作成済みではない駆動条件についてＵＩ上での表示が必要になった場合には、インタフェース手段を介して設定可能範囲データを取得すればよい。すなわち、インタフェース手段によって駆動条件の設定と設定可能範囲の取得とを実施可能であるので、予め記憶媒体に設定可能範囲データを記憶させておく構成よりも時間はかかるが、駆動条件の設定可能範囲データを取得できないということはない。上述のように設定可能範囲データを作成する際の時間を短縮することと、インタフェース手段を介して設定可能範囲データを取得する頻度を低減することとのいずれを重視するのかによって予め作成しておく設定可能範囲データを選択すればよい。
【００２８】
上述のように定型駆動データが定型動作を実施させるために最低限必要な駆動条件の設定値を規定するデータであり、周辺機器を駆動するために必要な他の駆動条件を自動で設定する場合の構成例として当該他の駆動条件について予め決められた優先度に従って条件を選定し、設定する構成を採用可能である。すなわち、各駆動条件においては、その項目毎に設定可能範囲が存在し、駆動条件に選択肢が存在し得るが、各項目毎に条件について優先度が決められていることにより、条件を選定する選定基準を容易に提供することができる。この選定基準に従うことにより、容易に上記他の駆動条件を決定することができる。
【００２９】
また、本発明において設定可能範囲データを利用する場合には、各駆動条件同士で依存関係がある場合に、特定の駆動条件の設定値によって上記他の駆動条件の設定可能範囲が変動するので、当該設定可能範囲内で優先度順に条件を選定し、設定値を規定すれば、条件として選定不能なものを選定することなく適切な条件を優先度順に抽出することが可能になる。このように定型動作を実施させるために最低限必要な駆動条件以外のデータを含めて設定値データとすることにより、この設定で周辺機器を駆動することが可能になる。
【００３０】
優先度としては、種々の基準によって決定することができる。例えば、駆動条件の設定値を数値で示した場合にその数値の昇順あるいは降順に優先度を決定しても良いし、周辺機器にて実現する機能によって決定しても良い。周辺機器にて実現する機能によって優先度を決定する例としては、例えば、周辺機器の動作速度，周辺機器によって得られる機能の品質等を採用可能である。前者は印刷装置における印刷速度，スキャナにおけるスキャン速度の順に決定するような場合が相当し、後者は印刷装置における解像度，画像処理の種類，スキャナにおける解像度を得られる品質の順に決定する場合が相当する。いずれにしても、予め優先度を決めておくことにより、容易に駆動条件を決定することができる。むろん、定型動作毎に予め優先度を決定しておき、定型動作毎に優先度を変動させても良い。
【００３１】
また、以上のような構成により、上述のように感覚的な言葉で定型動作を規定したとしてもその定型動作を実現する設定値を容易に選定することが可能になる。例えば、「すごくきれい」という定型動作を実現するためには、高品質を得るための駆動条件であるほど優先度を高くし、この優先度において設定可能範囲内で駆動条件を選定すれば、周辺機器で実現しうるできるだけ最高の品質の結果が得られ、「すごくきれい」という定型動作を実現することが可能になる。
【００３２】
さらに、設定可能範囲データ作成手段によって依存関係データから設定可能範囲データを作成する構成では、第１のファイルに依存関係データを記述し、第２のファイルに依存関係データおよび設定可能範囲データを記述する構成を採用可能である。但し、第１のファイルに依存関係データのみを記述する構成が必須ではない。特に、設定可能範囲データを第１のファイルにも記述可能にしておき、駆動条件更新手段によって特定の駆動条件の設定可能範囲データを参照するに際して第２のファイル，第１のファイルの順に検索する構成を採用することにより、通常は第２のファイルに基づいて設定可能範囲データを取得する構成としつつも、第２のファイルに記述されていない設定可能範囲データについては第１のファイルを参照するという手順を実現することができる。
【００３３】
すなわち、第１のファイルから第２のファイルを作成するにあたり、総ての駆動条件について設定可能範囲を第２のファイルとしないことにすれば、非常に多くの時間が費やされることを防止することができる。この場合であっても、第２のファイルに記述されなかった駆動条件について設定可能範囲データを予め把握し、第１のファイルに記述しておけば、このファイルを参照して設定可能範囲データを取得することができる。従って、インタフェース手段を介して設定可能範囲を取得する必要がなく、処理速度を高速化すると共に第２のファイルの作成時間も低減することが可能になる。
【００３４】
さらに、設定可能範囲データ作成手段によって一部の駆動条件について設定可能範囲データを作成する構成の場合、周辺機器駆動手段にわずかな変更が生じているときやエラー等に起因して駆動手段から設定可能範囲が適切に取得できない場合に備えて、設定可能範囲データの一部を予め作成し、依存関係データに含めていても良い。すなわち、依存関係データに設定可能範囲データの一部を含む場合には、当該依存関係データを参照して当該設定可能範囲データを取得する。これにより、周辺機器駆動手段にわずかな変更が生じているときやエラー等が生じていても的確に設定可能範囲データを取得することが可能になる。
【００３５】
上述のように、定型動作の指定に加えて詳細設定を実施可能にする手法は必ずしも実体のある装置に限られるものではなく、請求項５に記載した発明のように方法の発明としても有効である。また、上述のＵＩ制御装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としては、各種の態様を含むものである。また、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
【００３６】
発明の思想の具現化例としてＵＩ制御装置のソフトウェアとなる場合には、かかるソフトウェアも本発明に相当する。その一例として、請求項６に記載した発明ではＵＩ制御プログラムとして発明を特定している。むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。さらに、これらのＵＩ制御方法、ＵＩ制御プログラムにおいて上記請求項２〜請求項４に対応した構成にすることも可能である。
【００３７】
さらに、周辺機器として印刷装置を採用した場合に、上述のＵＩによって駆動条件としての印刷条件を設定し、印刷を実行する構成においても依存関係データおよび設定可能範囲データに従って、適切にＵＩを更新することが可能になる。このため、請求項７〜請求項９のように、印刷制御装置、印刷制御方法、印刷制御プログラムとしても発明は成立する。むろん、これらの印刷制御装置、印刷制御方法、印刷制御プログラムにおいて上記請求項２〜請求項４に対応した構成にすることも可能である。
【発明を実施するための最良の形態】
【００３８】
ここでは、下記の順序に従って本発明の実施の形態について説明する。
（１）本発明の構成：
（１−１）ＵＩ制御モジュールの構成：
（２）定型印刷データの構成：
（３）プリンタＤＢの構成：
（４）リソースＤＢの構成：
（５）印刷制御処理およびＵＩ表示例：
（６）他の実施形態：
【００３９】
（１）本発明の構成：
図１は本発明にかかる印刷制御装置となるコンピュータの概略構成を示すブロック図である。コンピュータ１０は演算処理の中枢をなす図示しないＣＰＵや記憶媒体としてのＲＯＭやＲＡＭ１４等を備えており、ＨＤＤ１５等の周辺機器を利用しながら所定のプログラムを実行することができる。コンピュータ１０にはシリアル通信用Ｉ／Ｏ１９ａを介してキーボードやマウス等の操作用入力機器が接続されており、ディスプレイ用Ｉ／Ｏ１９ｃを介して表示用のディスプレイも接続されている。さらに、プリンタ４０とはＵＳＢ用Ｉ／Ｏ１９ｂを介して接続されている。
【００４０】
本実施形態におけるプリンタ４０は複数色のインクを充填するインクカートリッジを色毎に着脱可能な機構を備えており、この機構にＣＭＹＫｌｃｌｍＧ（シアン，マゼンタ，イエロー，ブラック，ライトシアン，ライトマゼンタ，グレー）の各インクのカートリッジを搭載可能である。また、本実施形態におけるプリンタ４０は、Ｋインクとして光沢紙および普通紙で使用するフォトブラックとマット紙での画質を優先したマットブラックとの２種類のＫインクを使用可能である。
【００４１】
プリンタ４０においては、各Ｋインクのいずれかを利用することもできるし、Ｇインクの代わりにマットブラックのインクカートリッジを２本搭載して使用することもできる。尚、Ｇインクは溶媒内に黒色の色剤が含まれるインクであるが、Ｋインクと比較して色剤の濃度が小さいため、Ｇインクを使用することにより、高精度の階調変化を表現することが可能である。プリンタ４０では各インクを組み合わせて多数の色を形成可能であり、これにより印刷媒体上に画像を形成する。
【００４２】
むろん、プリンタ４０で使用可能にするインク色は一例であり、他にもダークイエローインクを利用可能にしてもよいし、レッドインクやバイオレットインク等を利用可能にしてもよいし、光沢感を調整する無色インクを利用可能にしてもよい。また、色数としても７色に限られないし、色の組み合わせとしても上述の組み合わせには限られない。本実施形態におけるプリンタ４０は、いわゆるインクジェット方式のプリンタであり、各インクが充填されたヘッドの内部でインクに対して力を作用させ各インクを吐出する。このとき、ピエゾ素子に対して電圧を印加してインクに対して吐出力を作用させてもよいし、ヘッド内でバブルを形成してインクに対して吐出力を作用させてもよい。また、インクジェット方式の他にもレーザー方式等、種々のプリンタに対して本発明を適用可能である。
【００４３】
本コンピュータ１０の構成は簡略化して説明しているが、パーソナルコンピュータとして一般的な構成を有するものを採用することができる。むろん、本発明が適用されるコンピュータはパーソナルコンピュータに限定されるものではない。また、コンピュータ１０とプリンタ４０の接続インタフェースも上述のものに限る必要はなくパラレルインタフェースやＳＣＳＩ接続，無線接続など種々の接続態様を採用可能であるし、今後開発されるいかなる接続態様であっても同様である。
【００４４】
さらに、本実施形態においてはコンピュータ１０によって印刷制御装置を構成しているが、プリンタ４０に搭載するプログラム実行環境によって本発明にかかる印刷制御処理を実施可能に構成し、プリンタ４０に対して直接的に接続されるデジタルカメラから画像データを取得して印刷制御処理を行ってもよい。ＵＩはプリンタ４０に搭載する小型の液晶ディスプレイに表示しても良いし、デジタルカメラに搭載する液晶ディスプレイに表示しても良い。むろん、同様の構成においてデジタルカメラにて印刷制御処理を実施してもよいし、他にも分散処理によって本発明にかかる印刷制御処理を実施するなど種々の構成を採用可能である。画像を取り込むスキャナと画像を印刷するプリンタとが一体となったいわゆる複合機において本発明にかかる印刷制御処理を行ってもよい。
【００４５】
本実施形態にかかるコンピュータ１０では、プリンタドライバ（ＰＲＴＤＲＶ）２１と入力機器ドライバ（ＤＲＶ）２２とディスプレイドライバ（ＤＲＶ）２３とがＯＳ２０に組み込まれている。ディスプレイＤＲＶ２３はディスプレイにおける画像データ等の表示を制御するドライバであり、入力機器ＤＲＶ２２はシリアル通信用Ｉ／Ｏ１９ａを介して入力される上記キーボードやマウスからのコード信号を受信して所定の入力操作を受け付けるドライバである。
【００４６】
ＡＰＬ２５は、カラー画像のレタッチ等を実行可能なアプリケーションプログラムであり、利用者は当該ＡＰＬ２５の実行下において上記操作用入力機器を操作して当該カラー画像をプリンタ４０にて印刷させることができる。すなわち、ＡＰＬ２５の画像処理部２５ａは利用者の指示によりＨＤＤ１５に記録された画像データ１５ａをＲＡＭ１４に読み出して、ディスプレイＤＲＶ２３を介して当該画像データ１５ａに基づく画像をディスプレイ上に表示させる。利用者が上記入力機器を操作するとその操作内容が入力機器ＤＲＶ２２を介して取得されて内容が解釈されるようになっており、画像処理部２５ａはその操作内容に応じてコントラスト調整等種々の画像処理を行う。
【００４７】
上記画像データ１５ａはＲＧＢ（レッド，グリーン，ブルー）の各色成分を階調表現して各画素の色を規定したドットマトリクス状のデータであり、本実施形態では各色２５６階調であり、ｓＲＧＢ規格に従った表色系を採用した画像データである。本実施形態においてはこの画像データ１５ａを例にして説明するが、ＹＣｂＣｒ表色系を採用したＪＰＥＧ画像データやＣＭＹＫ表色系を採用した画像データ等、種々のデータを採用可能である。むろん、Ｅｘｉｆ２．２規格（Ｅｘｉｆは社団法人電子情報技術産業協会の登録商標）に準拠したデータ、Print Image Matching（PIM:PIMはセイコーエプソン株式会社の登録商標）に対応したデータ等について本発明を適用することもできる。
【００４８】
ＡＰＬ２５においては、画像処理部２５ａにおける画像処理後の画像等についてプリンタ４０で印刷を実行させることが可能であり、印刷に際しては利用者に対して印刷条件項目の設定を行わせるＵＩを表示し、ＵＩでの指示に従って印刷を実行させる。さらに、このＵＩでは、利用者に多数の印刷条件設定作業を課さないように簡易なＵＩを表示し、予め決められた複数の定型印刷から所望の定型を選択させるとともに、詳細に印刷条件を設定したい利用者のために利用者が選択したときには詳細設定用のＵＩを表示して詳細設定も実施できるようにしている。このためにＡＰＬ２５はＵＩ表示制御部２５ｂと印刷実行部２５ｃとを備えており、ＵＩ表示制御部２５ｂでは印刷条件項目を設定するＵＩを表示するためのデータをディスプレイＤＲＶ２３に対して出力する。また、ＵＩ上で表示すべき印刷条件項目の設定可能範囲および項目間の依存関係を示すデータをＵＩ制御モジュール３０から取得する。
【００４９】
印刷条件項目は、印刷を実行するために必要な複数の条件の項目であり、印刷解像度，インクの種類（カラー、モノクロの選択やインクセット（インク色の組み合わせ）の選択），印刷媒体の種類やサイズ，印刷時のレイアウト，縁なし印刷の可否，印刷品質（きれい、はやい等），カラーマネジメントの種類（自動調整の可否やディスプレイの色域を超えた色の使用可否等），双方向印刷の可否，ドライバによる画像処理の可否等、ＰＲＴＤＲＶ２１に対して設定可能な種々の印刷条件項目がある。尚、本実施形態においては、上述のように印刷解像度やインクの種類など、項目毎に印刷条件を設定するようになっているため異なる印刷条件を項目として区別する。また、各印刷条件の設定内容はその内容に対応した数値（設定値）で特定するようになっており、この数値を項目値と呼ぶ。
【００５０】
また、ＵＩ表示制御部２５ｂでは、上述のＵＩをディスプレイ上に表示し、このＵＩに従って利用者が行う操作入力内容を上記入力機器ＤＲＶ２２を介して取得し、操作入力によって指定された定型印刷を把握する。また、定型印刷における設定値を変更したい場合には詳細設定を実施可能であり、詳細設定対象項目について操作入力によって指定された印刷条件項目の項目値を取得する。ここで、各定型印刷についてはその定型印刷を行う上で必須の複数の印刷条件項目についてその項目値が予め決定されているのみであり、ＵＩ表示制御部２５ｂは上記定型印刷が指定されると上記予め決定された項目値を取得し、他の項目については自動で設定された項目値を取得する。
【００５１】
すなわち、定型印刷として項目値が予め決定された項目以外であって印刷実行に必要な項目については後述する優先度及び設定可能範囲に従って後述するＵＩ制御モジュール３０が項目値を決定し、ＵＩ表示制御部２５ｂに受け渡す。このようにして決定された定型印刷についての項目値および上記詳細設定対象項目の項目値は仮設定値として保持しておく。印刷条件項目において設定可能な項目値は他の印刷条件項目の項目値に依存している場合があり、この場合、ある項目値を設定したことによって他の印刷条件項目で設定可能な項目値の範囲が変動する。
【００５２】
ＵＩ表示制御部２５ｂはＵＩ制御モジュール３０から上述のように設定可能範囲および項目間の依存関係を示すデータを取得するので、このデータを参照し、ある項目値を設定したことによって設定可能範囲に影響がある他の印刷条件項目についてＵＩの表示を更新することができる。すなわち、上記詳細設定においては印刷条件項目の項目値を変更し得るのでこの変更によって他の項目の設定可能範囲が変動した場合であっても、適正にＵＩ表示上の設定可能範囲を変動させることができる。
【００５３】
尚、詳細設定を実施する詳細設定対象項目は、ＡＰＬ２５の作成者が任意に選択し予め詳細設定対象として設定しておけばよく、総ての印刷条件項目であってもよいし、一部の印刷条件項目であってもよい。上記定型印刷を実施得るために必須の印刷条件項目について変更可能に構成してもよいし、当該必須の印刷条件項目については変更できないように構成してもよい。かかる構成により、定型印刷によって簡易に印刷条件を設定して印刷実行することを望む利用者のニーズと定型印刷の設定を変更して印刷実行することを望む利用者のニーズの双方に対応することができる。
【００５４】
このＵＩにおいては印刷実行指示を行うことも可能であり、ＵＩ表示制御部２５ｂがＵＩ上の操作内容に基づいて当該印刷実行指示を検出したときに印刷実行部２５ｃでの処理が開始される。印刷実行部２５ｃは上述のようにして仮設定値として保持された各印刷条件項目の項目値を印刷条件としてＰＲＴＤＲＶ２１に設定させ、印刷対象の画像データをＰＲＴＤＲＶ２１に受け渡す。ＰＲＴＤＲＶ２１は、解像度変換や色変換，ハーフトーン処理等の処理を行う図示しないモジュールを備えており、各モジュールによって印刷対象の画像データに対して印刷条件項目の項目値に応じた処理が実施され、印刷データが生成される。生成された印刷データはＵＳＢ用Ｉ／Ｏ１９ｂを介してプリンタ４０に出力され、プリンタ４０は当該印刷データに基づいて印刷を実行する。
【００５５】
（１−１）ＵＩ制御モジュールの構成：
上記ＵＩ制御モジュール３０は、上記ＵＩ表示制御部２５ｂに対してＵＩ表示に必要な印刷条件項目の設定可能範囲と依存関係および印刷条件項目の項目値を示すデータ、定型印刷での項目値を受け渡す処理を司っている。本実施形態においてはこのモジュールによって簡易に印刷条件を設定する定型印刷を実行可能に構成し、さらに詳細設定時に複雑な依存関係のある印刷条件項目について項目値の変更に応じて高速かつ適切にＵＩ表示を変更可能な構成を採用している。このために、ＵＩ制御モジュール３０は、項目値仮設定部３１と項目値取得部３２と項目値設定可能範囲取得部３３とリソースＤＢ作成部３４と項目値設定部３５と定型印刷項目取得部３６とを備えている。
【００５６】
ＵＩ制御モジュール３０は、ＵＩ表示制御部２５ｂにおいて定型印刷の一覧を表示できるようにするため定型印刷項目取得部３６を備えており、ＨＤＤ１５には定型印刷項目取得部３６が参照するデータとして予め定型印刷データ１５ｄが記録されている。定型印刷データ１５ｄには、複数の定型印刷の名称および各定型印刷を実施するために必須の印刷条件項目の項目値を示すデータが記録されている。
【００５７】
定型印刷項目取得部３６は、当該定型印刷データ１５ｄを参照することによって上記複数の定型印刷の名称を取得し、当該名称を示すデータを上記ＵＩ表示制御部２５ｂに受け渡す。これにより、ＵＩ表示制御部２５ｂは複数の定型印刷の名称を一覧表示することができる。ＵＩ表示制御部２５ｂにおいて定型印刷の指定を受け付けると、指定された定型印刷を示すデータは項目値仮設定部３１に対して受け渡され、項目値仮設定部３１はその定型印刷を実施するための印刷条件項目値を仮設定する。
【００５８】
すなわち、当該受け渡された定型印刷に関し、上記定型印刷データ１５ｄに記述されている項目値については、当該定型印刷データ１５ｄを参照して取得して仮設定値とする。定型印刷データ１５ｄに記述されていない項目値については項目値仮設定部３１が自動で仮設定を行う。このようにして仮設定された項目値はＲＡＭ１４に対して仮設定値１４ａとして記録される。
【００５９】
項目値仮設定部３１が定型印刷データ１５ｄに記述されていない項目値について自動で仮設定を行う際には、各印刷条件項目について予め決められた優先度および各項目値の設定可能範囲を参照する。本実施形態における優先度は各項目値の大きさ順としている。すなわち、本実施形態において各項目の設定は”１，２，、、、、”等の数値で規定されており、”１”が最も高優先度であって、値が大きくなるにつれて優先度が低くなるようにしている。
【００６０】
また、設定可能範囲は各印刷条件項目において項目値として設定し得る値であり、特定の印刷条件項目における項目値の変更によって他の印刷条件項目の項目値の設定可能範囲が変動し得る（本明細書では前者を上位項目とし、後者を下位項目とする）。そこで、本実施形態においては、予め作成されたデータベースを参照して各項目の設定可能範囲および依存関係を取得できるようにしている。このために、少なくともＵＩ制御の開始前にはＨＤＤ１５にプリンタＤＢ１５ｂとリソースＤＢ１５ｃとが記録されているようにしてある。
【００６１】
本実施形態において、プリンタＤＢ１５ｂは各印刷条件項目間の依存関係を記述したデータベースであり、ＰＲＴＤＲＶ２１のインストール時にＨＤＤ１５に記録される。リソースＤＢ１５ｃには、各印刷条件項目の上位項目およびその上位項目の各項目値での印刷条件項目値が記録されている。従って、ある印刷条件項目の項目値が変更されたとき、この項目を上位項目とする印刷条件項目が取り得る項目値を取得することができ、設定可能範囲を取得することができると言える。
【００６２】
ＵＩ制御モジュール３０のリソースＤＢ作成部３４は、ソフトウェアＩ／Ｆ２７を利用して上記プリンタＤＢ１５ｂを参照してリソースＤＢ１５ｃを作成する。すなわち、ソフトウェアＩ／Ｆ２７はＰＲＴＤＲＶ２１とデータの授受を行い、各項目値の取得、設定可能範囲の取得、各項目値の設定を実施可能に構成されており、リソースＤＢ作成部３４はソフトウェアＩ／Ｆ２７を介して各項目値を設定しながら依存関係のある項目値について設定可能範囲を取得する。
【００６３】
印刷条件は上述のように依存関係があるが、ソフトウェアＩ／Ｆ２７によって特定の印刷条件項目の上位項目値を固定した状態で当該特定の印刷条件項目の設定可能範囲を取得することができる。従って、上位項目についてとり得るすべての値を設定する作業を繰り返し、設定可能範囲を取得すれば、特定の印刷条件項目について設定可能範囲および依存関係を取得することができる。むろん、依存関係のない印刷条件項目について繰り返し作業をする必要はない。
【００６４】
このソフトウェアＩ／Ｆ２７においては、所定の処理時間を要するものの、当該繰り返し作業によって設定可能範囲を取得することができる。そこで、この依存関係および設定可能範囲を示すデータを作成してリソースＤＢ１５ｃとすることができる。むろん、上記依存関係のない印刷条件項目についてもリソースＤＢ１５ｃに対して設定可能範囲を記録しておく。
【００６５】
本実施形態においては、コンピュータ１０において初めてプリンタ４０を指定した印刷を実行する際にリソースＤＢ１５ｃが作成され、一旦作成された後にはＨＤＤ１５に保持される。従って、本実施形態においてリソースＤＢ１５ｃもプリンタＤＢ１５ｂも印刷実行に際しては予め作成されていると言える。各データベースの内容については後に詳述する。
【００６６】
このようなリソースＤＢ１５ｃが作成されている状況で、項目値仮設定部３１にて上述のように定型印刷データ１５ｄに記述されていない項目値について自動で仮設定を行うために、項目値設定可能範囲取得部３３は当該リソースＤＢ１５ｃを参照し、各印刷条件項目の設定可能範囲を示すデータを項目値仮設定部３１に受け渡す。そして、項目値仮設定部３１は、上記定型印刷データ１５ｄに記述されていない印刷条件項目の項目値のうち、最も上位の項目から随時項目値を仮設定する。
【００６７】
ここで、項目値仮設定部３１は特定の印刷条件項目について項目値を決定するにあたり、その上位項目の仮設定値を把握するとともに上記項目値設定可能範囲取得部３３から受け渡されるデータを参照して特定の印刷条件項目の設定可能範囲を取得し、その中で最も優先度が高い項目値を選択して仮設定値とする。尚、最も上位の項目について設定をする場合にはそれより上位の項目に依存することはないので、その項目の設定可能範囲内で最も高優先度の項目値を仮設定する。
【００６８】
以上のように、利用者から見るとＵＩ上で定型印刷を選択するのみであるが、これにより当該定型印刷を実行するために必要な印刷条件が仮設定されることになる。当該仮設定値１４ａは仮設定した項目値をＲＡＭ１４上に記憶させたのみであり、実際に各設定値がＰＲＴＤＲＶ２１に設定されているわけではないが、利用者がＵＩによって印刷条件項目の項目値を決定し、印刷実行指示を行ったときには、項目値設定部３５がソフトウェアＩ／Ｆ２７を介して項目値の設定を行う。項目値設定部３５は、ソフトウェアＩ／Ｆ２７を介してＰＲＴＤＲＶ２１に印刷条件を指定するためのデータフォーマットを解釈するとともに当該データフォーマットに応じながらＰＲＴＤＲＶ２１に対して各印刷条件項目の項目値を設定させることが可能である。
【００６９】
すなわち、ＲＡＭ１４の仮設定値１４ａを参照し、各印刷条件項目の項目値を仮設定値１４ａが示す値とするように上記フォーマットのデータを作成する。そして、ソフトウェアＩ／Ｆ２７に当該データを受け渡すと、ＰＲＴＤＲＶ２１においては当該データに記述された通りに各印刷条件項目の項目値を設定する。尚、ソフトウェアＩ／Ｆ２７を介して所定フォーマットのデータにて印刷条件を設定する構成は、印刷条件を指定するための構成がＯＳ毎に異なっているところ、これを吸収して少なくともＡＰＬ２５においてはＯＳによる差異を意識することなくＵＩ表示のためのデータ処理を実施するための構成である。
【００７０】
すなわち、各種ＯＳにおいて一般的にはＰＲＴＤＲＶ２１に対して印刷条件項目の項目値を設定するための機能を備えているが、印刷条件の設定手法はＯＳ毎に異なっている。そこで、本実施形態においてはＵＩ制御モジュール３０によってＯＳに依存しない汎用的な手法でＵＩ表示を制御可能な構成を採用し、実際に印刷を実行するに際しては項目値設定部３５において印刷条件の設定手法を判別しつつ印刷条件を設定するようにした。この結果、ＡＰＬ２５およびその印刷時のＵＩを提供するアプリケーション制作者が、ＯＳの差異を意識することなく共通の手法で印刷条件項目の項目値を指定し、また、ＰＲＴＤＲＶ２１を制御するためのプログラムを作成することができる。
【００７１】
以上のような構成により、本実施形態では定型印刷の指定のみで簡単に印刷条件を設定可能であるが、利用者の多様なニーズに応えるため、さらに詳細に印刷条件を設定できるようにしている。この場合も、印刷条件項目の設定可能範囲と依存関係を高速に取得できるようにするため、ＵＩ上で詳細設定として入力された項目値を仮設定として保持し、予め作成されたデータベースを参照してこの仮設定がなされた場合の設定可能範囲および依存関係をＵＩ表示制御部２５ｂに返すように構成されている。
【００７２】
すなわち、ＵＩにおいては「詳細設定ボタン」等によって利用者の意図に応じて詳細設定を実施可能にしておき、当該詳細設定ボタンによって詳細設定を実施する意図が示されたときには、ＵＩ表示制御部２５ｂが詳細設定用のＵＩを表示する。このとき、項目値設定可能範囲取得部３３がリソースＤＢ１５ｃを参照し、詳細設定対象の印刷条件項目についてその設定可能範囲を示すデータをＵＩ表示制御部２５ｂに受け渡す。また、項目値取得部３２は、印刷条件項目について現在の項目値（仮設定中の項目値）を取得する。従って、ＵＩ表示制御部２５は詳細設定対象の項目について上述の設定可能範囲を選択肢として表示するとともに、仮設定された項目値をデフォルトとして選択した状態のＵＩを形成し、表示することが可能になる。
【００７３】
このように詳細設定用のＵＩが表示されている状態で、上記ＵＩ表示制御部２５ｂによって項目値の変更が受け付けられたときに、上記項目値仮設定部３１はその項目値を仮設定値１４ａとしてＲＡＭ１４に記録する。従って、ＵＩ上で変更がなされた項目値についてはＲＡＭ１４の仮設定値１４ａが更新され、この段階でＰＲＴＤＲＶ２１に対して項目値の更新は行われない。
【００７４】
仮設定値１４ａが更新されてから上記項目値取得部３２で仮設定値１４ａを取得し、項目値設定可能範囲取得部３３が設定可能範囲を取得すれば、ＵＩ表示制御部２５ｂにおいて項目値の更新に応じて適宜設定可能範囲を変更したＵＩを表示させることができる。すなわち、項目値が更新されたことによって依存関係のある項目の設定可能範囲が変動したとしても、その都度項目値設定可能範囲取得部３３がリソースＤＢ１５ｃを参照することによって適正な設定可能範囲とすることができる。
【００７５】
尚、ＵＩ表示の更新については後に詳述する。また、以上の説明においては、簡単のために設定可能範囲を取得するためにリソースＤＢ１５ｃを参照することとしたが、本実施形態においてＵＩ表示を更新する際に実際は後述するようにリソースＤＢ１５ｃ、プリンタＤＢ１５ｂの順に検索を行い、検出された設定可能範囲データを参照することとしている。また、本発明において、簡易に印刷条件を設定可能なＵＩと必要に応じて詳細な設定を実施可能に構成し、また、ＡＰＬ作成者所望のＵＩを提供するという意味では、ソフトウェアＩ／Ｆ２７によって上述のようにＯＳの差による影響を吸収する構成は必須とはならない。例えば、ソフトウェアＩ／Ｆ２７を介して印刷条件項目の項目値設定等をするのではなく、ＵＩ制御モジュール３０が各ＰＲＴＤＲＶ２１に対して直接的に印刷条件項目の項目値設定等を行う構成を採用してもよい。
【００７６】
（２）定型印刷データの構成：
次に、本実施形態における定型印刷データ１５ｄの構成を詳説する。図２は定型印刷データ１５ｄのデータ記述例を示す図である。同図に示すように定型印刷データ１５ｄには、定型印刷の名称およびその定型印刷を実施するために必須の印刷条件項目値を示すデータが記述されている。同図に示す例では「はがき裏面（写真）」という名称の定型印刷であって、はがき用紙に写真を印刷するために必須の印刷条件項目値として使用インク”１”および印刷媒体のサイズ”２”が指定されている。尚、同図において、使用インク”１”はＣＭＹＫｌｃｌｍＧインクを使用する設定（非モノクロ）であり、印刷媒体のサイズ”２”は印刷媒体としてはがきを使用する設定である。
【００７７】
この例では、ＵＩで「はがき裏面（写真）」を選択したとき、使用インクおよび印刷媒体のサイズ以外の印刷条件項目については、上記プリンタ４０における設定可能範囲に含まれる項目値であって優先度が最も高い項目値に仮設定されることになる。すなわち、はがき裏面に写真を印刷するためには、少なくともカラーインクを使用し、印刷媒体としてはがきを設定してあればよいため、これらの印刷条件項目については必須の既定値を利用し、これ以外は優先度順に設定されるように構成してある。
【００７８】
むろん、定型印刷の例としてはこの他にも種々の態様を採用することができる。例えば、「はがき宛名」，「Ａ４最高画質」，「Ａ４光沢紙四辺縁なし」「Ａ４普通紙（速い）」「Ａ４普通紙（きれい）」など種々の名称の定型印刷を規定することができ、その定型印刷を実施するために少なくとも必要な印刷条件項目の項目値を予め決定し、定型印刷データ１５ｄに記述しておけばよい。
【００７９】
尚、本発明において定型印刷の名称と必須の項目とは密接に関連するが、必ずしも名称から一義的に決定されることができるとは限らない。例えば、定型印刷の名称は「Ａ４最高画質」などのようにある程度の曖昧さのある感覚的な文言を含む名称であっても良く、この場合最高画質という文言から画質についての印刷条件項目値が一義的に確定するわけではない。しかし、画質の良い印刷条件項目値から順に高優先度としておき、印刷媒体のサイズとして”Ａ４”を指定しておけば、「Ａ４最高画質」という定型印刷を実行することが可能になる。
【００８０】
（３）プリンタＤＢの構成：
次に、本実施形態におけるプリンタＤＢ１５ｂの構成を詳説する。図３はプリンタＤＢ１５ｂのデータ記述例を示す図である。同図に示すようにプリンタＤＢ１５ｂにはプリンタ名、ドライババージョン、インクセット、依存関係を示すデータが記述されている。プリンタ名はプリンタ４０の機種名（本実施形態では”ＰＭ−＊＊＊＊”）を指定するデータであり、ＰＲＴＤＲＶ２１はこのプリンタ４０に対応したドライバである。印刷条件項目および依存関係が機種に依存するので、本実施形態ではプリンタＤＢ１５ｂがいずれの機種のプリンタに使用されるのかを記述している。この記述は、コンピュータ１０に対して複数のプリンタを接続し、各プリンタに応じた複数のＰＲＴＤＲＶをインストールすることによりそのいずれかまたは組み合わせを使用可能にした場合に、いずれのプリンタに対して記述されたプリンタＤＢであるのかを識別するために利用される。
【００８１】
ドライババージョンはＰＲＴＤＲＶ２１のバージョン（本実施形態ではバージョン５．３ｅ）を指定するデータである。プリンタドライバのバージョンによって新機能が追加され、上記依存関係が変更されるやエラーの修正等によってバージョンが変わることがあり得るので、本実施形態ではプリンタＤＢ１５ｂがいずれのドライババージョン用であるのかを記述している。この記述は、コンピュータ１０の利用者がバージョンアップしたＰＲＴＤＲＶ２１を入手し、インストールする場合に、いずれのドライババージョンに対して使用されるべきプリンタＤＢであるのかを識別するために利用される。後述するように、リソースＤＢ１５ｃがＨＤＤ１５に記録されていたとしても、プリンタＤＢ１５ｂに記述されたドライババージョン用のリソースＤＢ１５ｃがＨＤＤ１５に記録されていなければ当該リソースＤＢ１５ｃを再構築し直すので、ドライババージョンの変更によって新機能が追加し、依存関係が変更されたとしても変更後の依存関係に対応することができる。
【００８２】
インクセットはプリンタ４０に搭載される上記インクカートリッジの組み合わせおよび種類（本実施形態では顔料系のインクであってＣＭＹＫｌｃｌｍＧインクのセット）を一義的に指定するデータである。使用するインク色の組み合わせによってカラーマネジメントや画像処理の可否が異なり、上記依存関係が変更されることがあり得るので、本実施形態ではプリンタＤＢ１５ｂがいずれのインクセット用であるのかを記述している。この記述は、コンピュータ１０の利用者がプリンタ４０に搭載するインク色の組み合わせを変更した場合に、いずれのインクセットに対して使用されるべきプリンタＤＢであるのかを識別するために利用される。後述するように、リソースＤＢ１５ｃがＨＤＤ１５に記録されていたとしても、インクセットをＣＭＹＫｌｃｌｍＧからＣＭＹＫｌｃｌｍＫに変更するなどして、プリンタＤＢ１５ｂに記述されたインクセット用のリソースＤＢ１５ｃがＨＤＤ１５に記録されていない状態になっていれば当該リソースＤＢ１５ｃを再構築し直すので、インクセット変更後の依存関係に対応することができる。
【００８３】
依存関係は、依存関係を規定する対象の印刷条件項目（対象項目）とその上位項目とを対応づけながら列記することによって規定しており、本実施形態においては”対象項目ｎ，上位項目の項目数ｍ，上位項目ｎ１，，，上位項目ｎｍ”を示すデータを順に記述することによって依存関係を規定している。ここで、ｎ，ｍは０もしくは自然数であり、ｎ個の対象項目のそれぞれについてｍ個の上位項目が存在し、各上位項目を列記する。上位項目が存在しない対象項目についてはｍを０として上位項目は記述しない。対象項目や上位項目についてはその項目自体を特定することができればよく、例えば、対象項目が印刷品質であり、上位項目が印刷媒体の種類であって上位項目数が一つの場合、”印刷品質，１，印刷媒体の種類”と記述することになる。
【００８４】
本実施形態において、プリンタＤＢ１５ｂはリソースＤＢ１５ｃを作成するために参照されるので、このためには、上述のプリンタ名、ドライババージョン、インクセットを特定するデータおよび依存関係を示すデータが記述されていればよいが、本実施形態においては、さらに利便性を高めるために、設定可能範囲を記述できるようにしてある。設定可能範囲は図３の下部に示してあり、”対象項目ｘ，上位項目の項目数ｌ，上位項目ｘ１およびその値，，，上位項目ｘｌおよびその値，設定可能範囲”を示すデータを順に記述する書式となっている。
【００８５】
すなわち、ある対象項目ｘについてその上位項目数と上位項目とを記述することによって依存関係を示すことは上記依存関係の書式と共通であるが、設定可能範囲の書式においては上位項目の項目値を特定し、最後に上位項目がその項目値であるときの対象項目値を記述する。これにより、上位依存関係にある項目値が特定の値であるときの対象項目の設定可能範囲を特定することができる。かかる書式は後述するリソースＤＢ１５ｃに記述する設定可能範囲の書式と共通である。リソースＤＢ１５ｃはプリンタＤＢ１５ｂに記述された依存関係によって作成されるが、この作成時にＰＲＴＤＲＶ２１のエラー等に起因して設定可能範囲が適切に取得できない場合があり、この場合には適切な設定可能範囲をリソースＤＢ１５ｃに記述できない。
【００８６】
そこで、ＰＲＴＤＲＶ２１の作成後に適切な設定可能範囲をプリンタＤＢ１５ｂに記述し、上記リソースＤＢ作成部３４によってリソースＤＢ１５ｃを作成する際にまずプリンタＤＢ１５ｂを参照し、プリンタＤＢ１５ｂに設定可能範囲が記述されているときには当該プリンタＤＢ１５ｂの記述内容を取得するようにしている。かかる構成により、ＰＲＴＤＲＶ２１のエラー等に起因して設定可能範囲が適切に取得できない場合が生じても容易に適切な設定可能範囲を項目値設定可能範囲取得部３３に伝えることが可能になる。また、総ての項目について設定可能範囲をリソースＤＢ１５ｃに登録すると、非常に時間がかかってしまう場合、一部の設定可能範囲データをリソースＤＢ１５ｃに記述するように構成することが可能である。かかる構成においてＵＩ表示を行う場合、リソースＤＢ１５ｃには設定可能範囲データが記述されていないので、プリンタＤＢ１５ｂを参照して設定可能範囲データを取得することになる。
【００８７】
（４）リソースＤＢの構成：
次に、本実施形態におけるリソースＤＢ１５ｃの構成を詳説する。図４はリソースＤＢ１５ｃのデータ記述例を示す図である。同図に示すようにリソースＤＢ１５ｃにはプリンタ名、ドライババージョン、インクセット、設定可能範囲を示すデータが記述されている。設定可能範囲は”対象項目ｎ，上位項目の項目数ｍ，上位項目ｎ１およびその値，，，上位項目ｍｌおよびその値，設定可能範囲”を示すデータを順に記述する書式となっている。
【００８８】
これにより、上位依存関係にある項目値が特定の値であるときの対象項目の設定可能範囲を特定しており、例えば、対象項目が印刷品質、上位項目が印刷媒体の種類、上位項目数が一つの場合であって印刷媒体の種類の項目値が”１”のときに印刷品質の項目値が”２，３”である場合、”印刷品質，１，印刷媒体の種類＝１，２，３”と記述することになる。尚、ここでも依存関係のない対象項目は上位項目の項目数が”０”とされ、上位項目およびその値を記述することなく上位項目の項目数の直後に設定可能範囲を記述する。
【００８９】
リソースＤＢ１５ｃに記述する対象項目数は各種調整を行うことができる。ＰＲＴＤＲＶ２１の印刷条件項目として存在する項目すべてについて記述してもよいし、リソースＤＢ１５ｃの作成に非常に多くの時間が費やされることを防止するため、上位項目の項目数が所定の数以下（例えば４以下）の対象項目のみ記述するようにしてもよい。他にもＵＩ上で利用頻度が低い印刷条件項目を予め把握しておき、利用頻度が低い項目やＵＩ上に現れない印刷条件項目（印刷を実行するために設定が必要であるが、ユーザが決定するのではなくＡＰＬが決定する印刷条件等）についてはリソースＤＢ１５ｃに記述しないように構成してもよい。
【００９０】
以上のように、プリンタＤＢ１５ｂ、リソースＤＢ１５ｃおよび定型印刷データ１５ｄにおいては、各印刷条件項目の項目値を数値で指定するようになっており、各数値が意味するところが予め決められている。例えば、印刷媒体の種類＝１は”普通紙”などと予め決められている。従って、本明細書では各印刷条件項目について印刷条件を指定することを項目値を決定すると呼んでいるが、むろん、本発明においては印刷条件を指定することができればよいので、数値によって印刷条件を特定することが必須というわけではなく、文字列で指定するなど種々の構成を採用可能である。
【００９１】
また、プリンタＤＢ１５ｂ，リソースＤＢ１５ｃ，定型印刷データ１５ｄのいずれにおいてもプリンタ名や対象項目、定型印刷の名称等、上述の各種情報を示すデータを記述していればよく、データの記述形式は上述の書式に限られない。むろん、データを記述しておくという意味では各種情報を示していればよく、コンピュータ１０においてテキスト形式を採用してもよいし、バイナリ形式を採用してもよく、種々の構成を採用可能である。
【００９２】
図５は、以上のようにして決定される設定可能範囲を依存関係とともに示す例である。同図においてＡ〜Ｈは印刷条件項目を示し、依存関係を矢印によって示している。矢印が指す先端に位置する印刷条件項目は下位項目であり、逆側の端部に示す印刷条件項目が上位項目である。例えば、印刷条件項目Ａは印刷条件項目Ｂ，Ｄの上位項目である。尚、依存関係においてある項目に対して上位項目と下位項目が一対一である関係、すなわち図５に示すＢ，Ｃのような依存関係を独立ツリーと呼び、ある項目に対して下位項目や上位項目が複数ある場合、すなわち図５に示す印刷条件項目Ｆ（上位項目がＤとＥ）のような項目を非独立ツリーと呼ぶ。
【００９３】
各印刷条件項目の依存関係を示す上記プリンタＤＢ１５ｂにおいては、独立ツリーであっても非独立ツリーであっても記述することができ、非常に簡易な書式で複雑な依存関係を記述することができる。すなわち、独立ツリーの場合は、例えば印刷条件項目Ｃの上位項目として印刷条件項目Ｂを示せばよいし、非独立ツリーの場合であっても、例えば印刷条件項目Ｆの上位項目数が２つであるとして印刷条件項目Ｄ，Ｅを示せばよい。
【００９４】
さらに、設定可能範囲を示す上記リソースＤＢ１５ｃにおいては、上位項目と当該上位項目の具体的な項目値を示しつつ対象項目の設定可能範囲を示すので、図５に示すような複雑な依存関係および設定可能範囲を容易に記述することができる。同図においては、各印刷条件項目について、上位項目の項目値と当該項目値における対象項目の項目値を示している。例えば、印刷条件項目Ｂにおいては、上位項目Ａの項目値が”１”のとき、項目Ｂの設定可能範囲が”１，２”であることを示し、上位項目Ａの項目値が”２”のとき、項目Ｂの設定可能範囲が”３”であることを示している。
【００９５】
図５に示す印刷条件項目Ｆにおいては、同図に示すように上位項目Ｅが”２”であるときに項目Ｆが”１”、上位項目Ｅが”１”かつ上位項目Ｄが”１”であるときに項目Ｆが”２”、これ以外のとき項目Ｆが”１，２”となっている。このように、上位項目が特定の項目値であるときに項目Ｆの項目値が上位項目に依存するという複雑な依存関係になっている。しかし、このような依存関係であっても、リソースＤＢ１５ｃにおける簡易な書式にて容易に記述することができる。すなわち、上記Ｅ＝２の場合、Ｅ＝１かつＤ＝１の場合を含めて総ての場合について上位項目の値および項目Ｆの値をリソースＤＢ１５ｃに記述すればよい。
【００９６】
印刷条件項目Ｇのように、さらに複雑な依存関係になっても同様である。印刷条件項目Ｇでは、上位項目Ｆが”１，２”で切り換え可能ならＧは”１，２”、切り換え不可能なら項目Ｆが”１”のとき項目Ｇが”２”，項目Ｆが”２”のとき項目Ｇが”１”という条件になっている。すなわち、項目Ｇにおいては項目Ｆが切り換え可能か否かという条件と項目Ｆの項目値とに依存している。項目Ｆが切り換え可能か否かという条件については項目Ｆと項目Ｇとの依存関係のみで規定することはできないが、項目Ｆの上位項目である項目Ｄ，Ｅをも利用すれば項目Ｇの設定可能範囲を規定することができる。
【００９７】
従って、この場合項目Ｄ，Ｅ，Ｆが項目Ｇの上位項目となり、項目Ｄ，Ｅ，Ｆの項目値を規定した上で項目Ｇの設定可能範囲を記述することによって、上述のように項目Ｆの切り換え可否を含む複雑な条件を規定することができる。具体的には、図５の右下に示すように、切り換え不可とは項目Ｆの設定可能範囲に任意性がなく、項目値が”１”のみあるいは”２”のみであるということであり、項目Ｆが”１”のみであるのは上述のようにＥ＝２のときである。従って、この場合、項目Ｇの上位項目を項目Ｅ，Ｄ，Ｆとし、項目Ｅの項目値を”２”、項目Ｄの項目値を”１，２”、項目Ｆの項目値を”１”とし、項目Ｇの設定可能範囲を”２”としてリソースＤＢ１５ｃに記述する。
【００９８】
項目Ｆが”２”のみである場合については項目Ｇの上位項目を項目Ｅ，Ｄ，Ｆとし、それぞれの項目値を”１”，”１”，”２”とし、項目Ｇの設定可能範囲を”１”としてリソースＤＢ１５ｃに記述する。切り換え可能な場合については上述の上位項目Ｄ，Ｅ，Ｆの項目値を上記例以外の値として項目Ｇの設定可能範囲を”１，２”としたデータを列記すればよい。以上、本実施形態においてリソースＤＢ１５ｃに上位項目およびその値を記述する書式を採用していることにより、複雑な依存関係であっても容易に記述してリソースＤＢ１５ｃを作成することができる。
【００９９】
（５）印刷制御処理およびＵＩ表示例：
次に、上記構成における印刷制御処理およびＵＩ表示例を説明する。印刷制御処理は図６，図７に示すフローに従って実施され、図８はこのときに表示されるＵＩの例を示している。利用者は、ＡＰＬ２５の実行中にレタッチ対象の画像等について印刷指示を行うことができ、画像処理部２５ａが印刷指示を受け付けると（ステップＳ１００）、ＵＩ表示制御部２５ｂはＵＩ制御モジュール３０と連携してＵＩ表示を制御する。このとき、リソースＤＢ作成部３４は、当該指示にかかる印刷時に使用するプリンタのプリンタ名を取得する（ステップＳ１０５）。また、当該プリンタを制御するＰＲＴＤＲＶ２１のバージョンとインクセットも併せて取得する。
【０１００】
尚、プリンタ名としてはＯＳ２０によって通常使用されるプリンタとして設定されているプリンタの機種名を取得すればよいが、むろん、印刷指示に際して利用者が特定のプリンタを指定したときにはその機種名を取得する。ＰＲＴＤＲＶ２１のバージョンおよびインクセットとしてはＰＲＴＤＲＶ２１に対して問い合わせ、ＰＲＴＤＲＶ２１が自身のバージョンおよび搭載されたインクセットを返信する構成を採用してもよいし、プリンタ４０と通信を行ってインクセットを示す情報を取得する構成を採用してもよいし、ＰＲＴＤＲＶ２１のインストールあるいはバージョンアップ時に予め所定の記憶媒体にバージョンを示す情報を記録しておき、この情報を参照する構成を採用してもよく、種々の構成を採用可能である。
【０１０１】
いずれにしても、使用するプリンタ名とドライバのバージョンとインクセットを示す情報を取得したら、リソースＤＢ作成部３４はステップＳ１１０においてＨＤＤ１５を参照し、当該プリンタ名とドライバのバージョンとインクセット用のリソースＤＢ１５ｃが既に構築され、ＨＤＤ１５に記録済みであるか否かを判定する。同ステップＳ１１０にてリソースＤＢ１５ｃが既に構築されていると判定されないときには、リソースＤＢ作成部３４がステップＳ１１５にて当該プリンタ名とドライバのバージョンとインクセットに対応するプリンタＤＢ１５ｂを参照しリソースＤＢ１５ｃを構築するための処理を実行する。
【０１０２】
ステップＳ１１０にてリソースＤＢ１５ｃが既に構築されていると判定されたときには、ステップＳ１１５をスキップする。すなわち、コンピュータ１０に対してプリンタ４０を接続してＰＲＴＤＲＶ２１をインストール後初めて印刷を実行するとき、ＰＲＴＤＲＶ２１のバージョンアップ等によってＰＲＴＤＲＶ２１のバージョンを変更後初めて印刷を実行するとき、プリンタ４０に搭載するインク色の組み合わせを変更後初めて印刷を実行するときにリソースＤＢ１５ｃが構築される。
【０１０３】
図１に示す例では接続されているプリンタ４０が一台であり、インストールされているＰＲＴＤＲＶ２１が一種類であるので、ＰＲＴＤＲＶ２１をインストール、バージョンアップあるいはインクセットを変更した後初めて印刷を実行する場合にリソースＤＢ１５ｃが構築されることになる。尚、リソースＤＢ１５ｃの構築に際してはある程度の時間を要するため、ディスプレイ上にはプログレスバーを表示するなどして利用者に処理中であることを示す構成を採用することが好ましい。
【０１０４】
ＰＲＴＤＲＶ２１をインストール、バージョンアップあるいはインクセットを変更した後２回目以降の印刷ではリソースＤＢ１５ｃを構築することなく処理を進めることになる。尚、ステップＳ１１５においては、プリンタＤＢ１５ｂを参照してリソースＤＢ１５ｃを構築することができればよく、例えば、ある項目の上位項目の項目値を決定した上でその下位項目の設定可能範囲を取得する作業を逐次上位から下位に向けて実施する処理等によって実現可能である。
【０１０５】
プリンタＤＢ１５ｂは上述のようにＰＲＴＤＲＶ２１のインストール時にＨＤＤ１５に記録されるので、プリンタＤＢ１５ｂとリソースＤＢ１５ｃとがＨＤＤ１５に記録されている状態でステップＳ１２０以降の処理を実行することになる。ステップＳ１２０以降の処理では、ＵＩ表示制御部２５ｂが定型印刷を選択させるためのＵＩを表示し、また、利用者の選択に応じて詳細設定を行うためのＵＩを表示する。このためにまずステップＳ１２０においては定型印刷項目取得部３６が定型印刷データ１５ｄを参照し、定型印刷を一覧表示させるべく、定型印刷データ１５ｄに記述された複数の定型印刷を示すデータをＵＩ表示制御部２５ｂに受け渡す。
【０１０６】
これによりＵＩ表示制御部２５ｂは、ステップＳ１２５にて当該データを利用して複数の定型印刷を一覧表示するとともにその中から択一選択することが可能なＵＩを上記ディスプレイ上に表示させる。さらに、ＵＩ表示制御部２５ｂは、ステップＳ１３０において利用者が上記入力装置を操作していずれかの定型印刷を指定し、当該指定を受け付けたか否かを判別しており、定型印刷の指定を受け付けたと判別されるまでステップＳ１２５以降の処理を繰り返す。
【０１０７】
ステップＳ１３０において定型印刷の指定を受け付けたと判別したときには、ステップＳ１３２にて上記項目値仮設定部３１が上記定型印刷データ１５ｄを参照し、当該指定された定型印刷をするために必須の印刷条件項目値を取得する。この項目値は仮設定値１４ａとしてＲＡＭ１４に記録される。さらに、項目値仮設定部３１はステップＳ１３５において上記必須の印刷条件項目値以外の項目（非必須項目）についての設定可能範囲データを上記項目値設定可能範囲取得部３３から取得する。そして、ステップＳ１４０にて当該設定可能範囲データを参照しつつ、上位の項目から設定可能範囲内で最も優先度の高い項目値になるように印刷条件項目値を設定する。ここで設定された項目値も仮設定値１４ａとしてＲＡＭ１４に記録される。
【０１０８】
以上の処理によって定型印刷の印刷条件を仮に設定する処理が終了したことになるが、本実施形態においてはさらなる詳細設定を実施可能にするため、ＵＩ表示制御部２５ｂにおいて詳細設定を行う旨の指示を受け付けたか否かを判別している（ステップＳ１４５）。同ステップＳ１４５にて詳細設定を行う旨の指示を受け付けたと判別されたときにはステップＳ１５０にて詳細設定処理を行い、この処理によって利用者所望の詳細設定を行わせ、その設定内容を上記仮設定値１４ａとして記録する。
【０１０９】
図７は当該詳細設定処理のフローを示している。本実施形態においては、詳細設定対象の印刷条件項目を予めＡＰＬ２５の作成者が決めておく構成を採用しているが、むろん、総ての印刷条件項目について設定を実施可能に構成しても良い。この詳細設定においては、まずステップＳ２００にて項目値設定可能範囲取得部３３がリソースＤＢ１５ｃ，プリンタＤＢ１５ｂをこの順に検索し、ステップＳ２０５では詳細設定対象の印刷条件項目が上記対象項目として記述されているか否かを判別する。
【０１１０】
同ステップＳ２０５にて詳細設定対象の印刷条件項目が上記対象項目として記述されていると判別されないときには、リソースＤＢ作成部３４がステップＳ２１０にてＰＲＴＤＲＶ２１に対して実際に項目値を設定して設定可能範囲を取得する。すなわち、プリンタＤＢ１５ｂを参照して詳細設定対象の印刷条件項目について上位項目があるか否かを判別し、上位項目が存在する場合にはその上位項目についてソフトウェアＩ／Ｆ２７を介してＰＲＴＤＲＶ２１に項目値を設定し、このように上位項目の項目値を設定した状態で詳細設定対象の印刷条件項目がとり得る設定可能範囲を取得する。
【０１１１】
このとき上位項目の項目値については当該上位項目が取りうる項目値のすべてについて逐次設定し、上位項目の各項目値について詳細設定対象の印刷条件項目の設定可能範囲を取得する。詳細設定対象の印刷条件項目に対して上位項目が存在しない場合には他の項目の項目値を設定することなく、ソフトウェアＩ／Ｆ２７を介して当該印刷条件項目の設定可能範囲を取得する。また、取得した設定可能範囲は、リソースＤＢ１５ｃに記述する。
【０１１２】
従って、詳細設定対象の印刷条件項目についてプリンタＤＢ１５ｂおよびリソースＤＢ１５ｃに記述されていないとされたことがあったとしても、次回の印刷時には記述されていないと判別されることがない。尚、本実施形態では次回以降の利用のため、詳細設定対象の印刷条件項目のすべてについて項目値を逐次設定したが、むろん、ＵＩを表示するためには現在の設定値、すなわち仮設定値１４ａの設定通りに上位項目の項目値を設定し、この設定における詳細設定対象の項目値を取得するように構成しても良い。
【０１１３】
このステップＳ２１０については実際にＰＲＴＤＲＶ２１に対して項目値を設定した上で設定可能範囲を取得する処理を行うので、ある程度の時間がかかる処理である。しかし、詳細設定対象の印刷条件項目がリソースＤＢ１５ｃに記述されていないという状況が起こり得るのは、上述のようにリソースＤＢ１５ｃの作成に非常に多くの時間が費やされることを防止するためなど、特定の場合に限られ、ＵＩ表示を実施するために必要な項目のほとんどは予めリソースＤＢ１５ｃに記述されている。従って、実際はステップＳ２１０が実施されることはまれである。
【０１１４】
ステップＳ２１５においては、項目値設定可能範囲取得部３３が上記ステップＳ２００でリソースＤＢ１５ｃ，プリンタＤＢ１５ｂに記述されていると検出した印刷条件項目、あるいはステップＳ２１０にてリソースＤＢ１５ｃに記述した印刷条件項目について設定可能範囲を取得する。ステップＳ２２０においては、項目値取得部３２がＲＡＭ１４の仮設定値１４ａを参照して現在の項目値を取得する。ステップＳ２２５においては、上記ステップＳ２１５で取得した設定可能範囲を選択可能な選択肢にするとともに、上記ステップＳ２２０で取得した仮設定値が仮に設定された状態でＵＩを表示する。
【０１１５】
この結果、上記詳細設定対象の印刷条件項目について仮設定値が設定された状態でその項目値を設定可能なＵＩが形成される。さらに、ステップＳ２３０ではＵＩ表示制御部２５ｂが項目値の変更を受け付けたか否かを判別し、項目値の変更を受け付けたと判別されたときには、ステップＳ２３５にて項目値仮設定部３１が変更後の項目値を仮設定値として取得し、ＲＡＭ１４の仮設定値１４ａを更新してステップＳ２００以降の処理を繰り返す。
【０１１６】
この繰り返し処理においては、ステップＳ２３５の項目値の変更によって詳細設定対象の印刷条件項目の依存関係が変動したとしても、ステップＳ２１５の処理により適切な設定可能範囲が取得され、ステップＳ２２０のＵＩ表示では選択不能の印刷条件項目を選択可能に表示させることなくＵＩを更新することができる。また、繰り返し処理においてステップＳ２２０にて現項目値を取得する際にはソフトウェアＩ／Ｆ２７を介してＰＲＴＤＲＶ２１に対して項目値を設定することが無い。従って、高速にＵＩ表示を切り替えることができる。
【０１１７】
ステップＳ２３０にて項目値の変更を受け付けたと判別されないときには、上記図６に示すフローに復帰する。この詳細設定後、あるいは図６におけるステップＳ１４５にて詳細設定を行う旨の指示を受け付けたと判別されないときには、図６のステップＳ１５５においてＵＩ表示制御部２５ｂが印刷指示を受け付けたか否かを判別し、印刷指示を受け付けたときにはステップＳ１６０にて印刷を実行する。ステップＳ１５５で印刷指示を受け付けたと判別されないときにはステップＳ１４５以降の処理を繰り返す。
【０１１８】
尚、ステップＳ１６０においては、印刷実行部２５ｃが印刷対象の画像データをＰＲＴＤＲＶ２１に対して出力するとともに、項目値仮設定部３１に対して印刷条件を設定するように指示を出す。また、項目値仮設定部３１がソフトウェアＩ／Ｆ２７にアクセスし、ＰＲＴＤＲＶ２１に対して仮設定値１４ａに記録されている印刷条件項目値を設定する。この結果、ＰＲＴＤＲＶ２１は画像データに対して印刷条件に従った画像処理を施すとともに印刷条件に従って印刷を実行するための印刷データを作成し、プリンタ４０に出力し、印刷を実行する。
【０１１９】
以上の処理により、ＵＩによって定型印刷を指定するのみで必要な総ての印刷条件設定を完了することが可能であるとともに、利用者が望む場合にはさらに詳細に利用者所望の設定になるように印刷条件を設定可能なＵＩを提供することができる。また、定型印刷を行うために必須の印刷条件項目以外は設定可能範囲内かつ優先度順に項目値が設定される。従って、定型印刷を指定するのみであってもプリンタ４０にて実施不可能な印刷設定をしてしまうことはなく、確実に印刷を実行することができる。
【０１２０】
さらに、所定の基準に従って優先度を決定すれば、プリンタ４０の能力を最大限に発揮させることが可能になる。例えば、各印刷条件項目の項目値同士で比較したときに相対的に高画質になる項目値の優先度をより高くしておけば、定型印刷を実施するために必須の印刷条件項目以外の項目が、できるだけ高画質の印刷を実施するように設定され、結果として定型印刷を実行するために最大限高画質の印刷物を得ることができる。他にも、各印刷条件項目の項目値同士で比較したときに相対的に高速な処理となる項目値の優先度をより高くしておけば、できるだけ高速に印刷を実施するように印刷条件項目が設定され、結果として定型印刷を実行するために最大限高速に処理を終えることができる。
【０１２１】
むろん、本実施形態のように画一的な優先度とするのではなく、利用者に優先度を選択させてもよいし、定型印刷の種類によって（例えば、速度優先の定型印刷であるか画質優先の定型印刷であるかによって）優先度を変更しても良い。これらの場合は、上記利用者による選択時に優先度を示すデータを作成したり、定型印刷の種類によって予め優先度を示すデータを作成しておくなどすればよく、上記項目値仮設定部３１による設定の際にこのデータを参照すればよい。
【０１２２】
さらに、定型印刷の印刷条件項目を設定しながらも、詳細設定によって印刷条件項目の項目値を調整することができるので、簡単に印刷設定をしながら利用者所望の印刷結果を得るようにＵＩ上での指定を実施することが可能になる。例えば、写真を印刷する定型印刷であって、詳細設定を行わなければカラーで印刷を実行するところ、詳細設定によって利用者がインク色を黒のみに設定すれば、カラー画像をあえてモノクロで印刷したりすることも可能になり、利用者に対して多様な利用法を提供することができる。むろん、他にも種々の利用が可能であり、例えば定型印刷では最高画質に印刷を行うところ、試し刷りを行うために速度を優先するように、設定を変更するようなことも可能になる。
【０１２３】
図８は、本実施形態におけるＵＩ画面例を示している。本実施形態にかかるＵＩでは、まず、利用者に対して定型印刷の一覧を提供するとともに選択可能に提示する。図８に示す例においては画面左側に定型印刷の一覧Ｌが提供されている。この段階では、図８の右側において詳細設定選択ボタンＢ１と印刷指示ボタンＢ２が表示されており、破線で囲まれたＵＩ（詳細設定用ＵＩ）は表示されない。利用者は、上記マウス等によって「はがき裏面（写真）」等、定型印刷の選択肢から所望の定型印刷を選択するようになっており、この選択を行うと上記ステップＳ１３０〜Ｓ１４０にて定型印刷を実行するための印刷条件項目が仮設定される。
【０１２４】
ここで、利用者がマウス等によって印刷ボタンＢ２を選択すると、上記ステップＳ１５５にて印刷指示を受け付けたとしてステップＳ１６０にて印刷を実行する。定型印刷の選択後、利用者がマウス等によって詳細設定ボタンＢ１を選択すると、上記ステップＳ１４５にて詳細設定指示を受け付けたとして図７の詳細設定処理を実行する。このとき、ステップＳ２００〜ステップＳ２２５の処理により図８に示す破線で囲まれたＵＩを表示する。
【０１２５】
すなわち、この例では詳細設定対象の印刷条件項目は「使用するインク（カラーあるいは黒）」と「カラーマネジメント」の有無である。ここで、「カラーマネジメント」は、印刷対象画像の元画像データが示す画像の色と印刷物の色とを一致させるための処理を行うか否かを特定する印刷条件項目であり、「使用するインク」は「カラーマネジメント」の上位項目である。すなわち、図８の右側に示すように設定可能範囲データとしては使用するインクについて「カラー」が設定されているときにカラーマネジメント「あり」「なし」の双方が設定可能であり、使用するインクについて「黒」が設定されているときにカラーマネジメント「なし」のみが設定可能であることを示すデータとなっている。
【０１２６】
図８に示す例ではインクに関する優先度は「カラー」の方が「黒」より高く、カラーマネジメントに関する優先度は「あり」の方が「なし」より高くなっている。従って、上記定型印刷の指定後に、項目値仮設定部３１が「使用するインク」について「カラー」を仮設定し、「カラーマネジメント」について「あり」を仮設定していることになる。詳細設定ボタンＢ１を選択する段階ではこの設定が仮設定値１４ａとして記録されているので、上記ステップＳ２２０の処理によって「使用するインク」が「カラー」、「カラーマネジメント」は「あり」という設定が現項目値として取得される。
【０１２７】
この結果、ステップＳ２２５では図８の破線で囲まれた部位に示すＵＩを表示する。すなわち、詳細設定用のＵＩとしては「使用するインク」として「カラー」が設定されており、「カラーマネジメント」として「あり」が設定されており、かつ設定範囲としては「使用するインク」として「カラー」「黒」の双方、「カラーマネジメント」として「あり」「なし」の双方が表示されたＵＩとなる。むろん、利用者がマウス等で使用するインクを「黒」に設定したときには、上記ステップＳ２３５で仮設定値が変更され、ステップＳ２１５〜２２５の処理によって「使用するインク」として「黒」が設定されており、「カラーマネジメント」として「なし」が設定されており、かつ設定範囲としては「使用するインク」として「カラー」「黒」の双方、「カラーマネジメント」として「なし」のみが表示されたＵＩとなる。
【０１２８】
以上の処理により、選択不能な選択肢を不必要に提示して利用者を煩わせることがなくなる。また、このようにして詳細設定を実施した後に利用者が印刷ボタンＢ２を選択すると、上記ステップＳ１５５にて印刷指示を受け付けたとしてステップＳ１６０にて印刷を実行する。このとき、仮設定値１４ａは詳細設定の通りの項目値となっているので、詳細設定を反映した印刷条件項目値によって印刷を実行することになる。
【０１２９】
（６）他の実施形態：
本発明においては、周辺機器に対して定型動作を実施させるためのＵＩと利用者の指示に応じて詳細設定を実施可能にするＵＩとを提供することができればよく、上記実施形態の他にも種々の構成を採用可能である。例えば、上述の実施形態においては、コンピュータ１０において少なくともＵＩでの印刷条件設定の前に、ＨＤＤ１５に記録されたプリンタＤＢ１５ｂを参照してリソースＤＢ１５ｃを作成する構成を採用していたが、むろん、予めコンピュータ１０以外のコンピュータにてリソースＤＢ１５ｃを作成し、ＨＤＤ１５に記録するようにしても良い。
【０１３０】
すなわち、プリンタ４０を提供するプリンタメーカーが予めリソースＤＢ１５ｃを作成し、ＰＲＴＤＲＶ２１のプログラムとリソースＤＢ１５ｃのデータを記録した媒体をコンピュータ１０の利用者に提供し、ＰＲＴＤＲＶ２１のインストール時にリソースＤＢ１５ｃをＨＤＤ１５に記録する構成を採用しても良い。かかる構成によれば、コンピュータ１０にてリソースＤＢ１５ｃを作成するためにプリンタＤＢ１５ｂを備える必要がないので、ＨＤＤ１５に必要とされるデータ容量を抑えることができる。また、利用者がコンピュータ１０を操作しているときにリソースＤＢ１５ｃを作成する必要がないので、作成のための時間を必要とせず、ＵＩ表示の初回から利用者を待たせることがない。
【０１３１】
一方、ＨＤＤ１５に記録されたプリンタＤＢ１５ｂを参照してリソースＤＢ１５ｃを作成する上記構成においては、上述のようにドライバのバージョンやインクセットの変更時に容易にリソースＤＢ１５ｃを再構築することができるので、状況の変更に容易に対応することができる。また、上述のようにエラー等に起因してＰＲＴＤＲＶ２１から設定可能範囲が適切に取得できない場合であってもプリンタＤＢ１５ｂに適切な設定可能範囲データを記録すればよいため、エラーが生じた場合にも容易に修正をすることができる。
【０１３２】
また、リソースＤＢ１５ｃに設定可能範囲データを登録するのは、上記ステップＳ１１５における構築時、ステップＳ２１０における設定可能範囲の学習時に限られず、例えば、印刷実行後に所定の設定可能範囲データを登録しても良い。すなわち、印刷領域の設定など、ＵＩ上でのプレビュー時に利用される場合には正確な値が必要なく、印刷時には正確な値が必要な類のデータであれば、印刷時にＰＲＴＤＲＶ２１に印刷領域を設定する際にその設定可能範囲を取得し、リソースＤＢ１５ｃに登録しても良い。かかる構成によれば、ＵＩ表示の際にＰＲＴＤＲＶ２１に対して設定することを防止してＵＩ表示処理を高速に実施することが可能であり、一旦リソースＤＢ１５ｃに設定可能範囲データを登録した後には、高速に正確な値を使用することができる。
【０１３３】
さらに、上記実施形態においてはコンピュータ１０に対して一台のプリンタ４０が接続されていたが、むろん、複数台のプリンタが接続され、複数のＰＲＴＤＲＶがインストールされている状況において本発明を適用することも可能である。すなわち、各プリンタを示すデータはプリンタＤＢ１５ｂやリソースＤＢ１５ｃの先頭に記述され、このデータによってプリンタが識別される。従って、各プリンタにて初めて印刷を実行する際にはリソースＤＢ１５ｃが未登録であるとし、そのプリンタについて作成されたプリンタＤＢ１５ｂを参照することによってリソースＤＢ１５ｃを作成することができる。この結果、各プリンタについて作成されたプリンタＤＢ１５ｂやリソースＤＢ１５ｃを参照し、各プリンタ毎の印刷条件項目の設定可能範囲に応じたＵＩを表示することが可能になる。
【０１３４】
さらに、上述のようにリソースＤＢ１５ｃにおいて印刷条件項目の設定可能範囲として、項目値と併せて項目値に対応した文字列を記録することにすれば、設定可能範囲をＵＩ表示する際にその項目値を文字によって明示することが可能になり、よりわかりやすいＵＩを提供することが可能になる。
【０１３５】
さらに、上記実施形態においては、コンピュータに接続される周辺機器としてのプリンタに本発明を適用していたが、むろん、ＵＩによって駆動条件を設定可能な総ての周辺機器について本発明を適用することができる。例えば、ディスプレイ，プロジェクタ，スキャナ，デジタルカメラ，ハードディスクドライブ等に対して本発明を適用可能である。本発明においては、複雑に依存する駆動条件について設定可能範囲データで適切な設定可能範囲を特定するので、多数の駆動条件が存在し、また、多くの依存関係を有する周辺機器について本発明を適用するのが好ましい。この意味で、スキャナ等が好適な適用例であるし、スキャナとプリンタとコピーやｆａｘが一つの機体に構成された複合機なども好適な適用例である。
【図面の簡単な説明】
【０１３６】
【図１】印刷制御装置の概略構成を示すブロック図である。
【図２】定型印刷データ記述例を示す図である。
【図３】プリンタＤＢのデータ記述例を示す図である。
【図４】リソースＤＢのデータ記述例を示す図である。
【図５】設定可能範囲を依存関係とともに示す図である。
【図６】印刷制御処理のフローチャートである。
【図７】印刷制御処理のフローチャートである。
【図８】ＵＩの表示例を示す図である。
【符号の説明】
【０１３７】
１０…コンピュータ、１４…ＲＡＭ、１４ａ…仮設定値、１５…ＨＤＤ、１５ａ…画像データ、１５ｂ…プリンタＤＢ、１５ｃ…リソースＤＢ、２０…ＯＳ、２１…ＰＲＴＤＲＶ、２２…入力機器ＤＲＶ、２３…ディスプレイＤＲＶ、２５…ＡＰＬ、２５ａ…画像処理部、２５ｂ…ＵＩ表示制御部、２５ｃ…印刷実行部、３０…ＵＩ制御モジュール、３１…項目値仮設定部、３２…項目値取得部、３３…項目値設定可能範囲取得部、３４…リソースＤＢ作成部、３５…項目値設定部、３６…定型印刷項目取得部、４０…プリンタ
【図１】
2005063113.tif 000003
【図２】
2005063113.tif 000004
【図３】
2005063113.tif 000005
【図４】
2005063113.tif 000006
【図５】
2005063113.tif 000007
【図６】
2005063113.tif 000008
【図７】
2005063113.tif 000009
【図８】
2005063113.tif 000010