JP2005063112A - 駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造 - Google Patents
駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造 Download PDFInfo
- Publication number
- JP2005063112A JP2005063112A JP2003291674A JP2003291674A JP2005063112A JP 2005063112 A JP2005063112 A JP 2005063112A JP 2003291674 A JP2003291674 A JP 2003291674A JP 2003291674 A JP2003291674 A JP 2003291674A JP 2005063112 A JP2005063112 A JP 2005063112A
- Authority
- JP
- Japan
- Prior art keywords
- settable range
- condition
- item
- printing
- drive
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title description 66
- 230000002093 peripheral effect Effects 0.000 abstract description 41
- 238000007639 printing Methods 0.000 description 138
- 238000012545 processing Methods 0.000 description 62
- 239000000976 ink Substances 0.000 description 56
- 230000008569 process Effects 0.000 description 50
- 230000008859 change Effects 0.000 description 15
- 239000003086 colorant Substances 0.000 description 10
- 238000010276 construction Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 230000001419 dependent effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- OTVNACHPZVGLNB-KNNPZSQVSA-N (4s)-4-amino-5-[[(2r)-3-(2-bromo-2-chloro-1,1-difluoroethyl)sulfanyl-1-(carboxymethylamino)-1-oxopropan-2-yl]amino]-5-oxopentanoic acid Chemical compound OC(=O)CC[C@H](N)C(=O)N[C@@H](CSC(F)(F)C(Cl)Br)C(=O)NCC(O)=O OTVNACHPZVGLNB-KNNPZSQVSA-N 0.000 description 2
- 108700005240 S-(2-bromo-2-chloro-1,1-difluoroethyl)glutathione Proteins 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000008094 contradictory effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000001042 pigment based ink Substances 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
Images
Landscapes
- Accessory Devices And Overall Control Thereof (AREA)
Abstract
【課題】 ある駆動条件の設定後に他の駆動条件の設定可能範囲を高速かつ適切に表示するのが困難であった。
【解決手段】 コンピュータに接続される周辺機器の駆動条件の設定可能範囲を抽出するにあたり、上記周辺機器に対して駆動条件を設定し、周辺機器を駆動する周辺機器制御部において駆動条件を設定しこの設定における他の駆動条件の設定可能範囲を取得可能であり、上記駆動条件同士の依存関係を示す依存関係データを所定の記憶媒体に記憶しておき、上記周辺機器制御部によって特定の駆動条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の駆動条件に依存する他の駆動条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶する。
【選択図】 図10
【解決手段】 コンピュータに接続される周辺機器の駆動条件の設定可能範囲を抽出するにあたり、上記周辺機器に対して駆動条件を設定し、周辺機器を駆動する周辺機器制御部において駆動条件を設定しこの設定における他の駆動条件の設定可能範囲を取得可能であり、上記駆動条件同士の依存関係を示す依存関係データを所定の記憶媒体に記憶しておき、上記周辺機器制御部によって特定の駆動条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の駆動条件に依存する他の駆動条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶する。
【選択図】 図10
Description
本発明は、駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造に関する。
印刷装置など、コンピュータの周辺機器を駆動するためには通常ドライバと呼ばれる制御プログラムが利用される。このドライバにおいては周辺機器を駆動するための駆動条件の設定を受け付け、この設定に従って周辺機器を駆動する。ここで、ディスプレイ等にUI(User Interface)を表示し、このUIを通じて利用者に駆動条件を設定させるのが一般的である。UIにおいては周辺機器の各駆動条件についてその設定可能範囲を選択肢として提供する必要があるが、コンピュータによって実行されるアプリケーションソフトウェアには様々なものがあり、利用者に選択させるべき駆動条件はアプリケーションソフトウェア毎に異なるので、アプリケーションソフトウェア毎に固有のUIを提供するのが利用者にとって好ましい。
一方、UIによって駆動条件が設定されたとしても、利用者が選択された駆動条件以外の駆動条件であって周辺機器を駆動するために必要な条件は、やはりドライバに対して設定する必要がある。ドライバに対する設定はコンピュータの基本ソフトウェアであるOSを介して所定の書式に従ってドライバに対して設定されるので、アプリケーションソフトウェアによって固有のUIを使用して駆動条件の設定値を把握したとしても、ドライバへの設定は上記所定の書式に合致させる必要がある。アプリケーションの提供者が、上述のようにUIによる設定後、さらにこの設定に矛盾することなく、しかも所定の書式に合致させつつ他の駆動条件を設定するように構成するのは煩雑である。この結果、アプリケーションソフトウェアの提供者としては固有のUIを提供しづらく、OSで汎用的に使用されるUIを使用することが多かった。
そこで、アプリケーションソフトウェアとOSとの間に介在するソフトウェアI/Fによってドライバから周辺機器の能力(駆動条件の設定可能範囲)を取得してUI表示の制御部に提供し、また、UI表示の制御部から任意の駆動条件の設定指示を受け付けてドライバに対して設定する技術が開発されている。この技術は、プリセットによる印刷を簡単に実行するための構成に対して適用されている(例えば、特許文献1)。
特願2002−252769号
上述した従来の技術において、周辺機器を駆動するためには一般に複数の駆動条件を設定する必要があるが、駆動条件の中には互いに依存関係を有する駆動条件があり、ある駆動条件の設定後に他の駆動条件の設定可能範囲を高速かつ適切に表示するのが困難であった。すなわち、駆動条件に依存関係がある場合には、ある駆動条件の設定によって他の駆動条件の設定可能範囲が変動し得るので、適切なUIを表示するためには上記ソフトウェアI/FでUI上の表示対象となるすべての駆動条件の設定可能範囲を取得する必要がある。
このためには、UI上で駆動条件が変更される度に、ソフトウェアI/Fによってドライバに対して実際に条件を設定し、その設定条件下で上記表示対象となるすべての駆動条件の設定可能範囲を取得することになる。この処理は、ドライバとのデータ授受が多く、高速に実行することができない。従って、UIを視認する利用者にストレスを与えてしまう。
本発明は、上記課題にかんがみてなされたもので、複雑な依存関係を有する駆動条件を設定するにあたり駆動条件の設定可能範囲を高速に取得可能なデータを作成する駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造の提供を目的とする。
本発明は、上記課題にかんがみてなされたもので、複雑な依存関係を有する駆動条件を設定するにあたり駆動条件の設定可能範囲を高速に取得可能なデータを作成する駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造の提供を目的とする。
上記目的を達成するため本発明では、予め駆動条件同士の依存関係を示す依存関係データを記憶し、この依存関係データを参照してある駆動条件に依存関係がある駆動条件についての設定可能範囲を取得する。駆動条件設定手段においては周辺機器に対して駆動条件を設定し、この設定における他の駆動条件の設定可能範囲を取得可能であるので、設定可能範囲取得手段はこの駆動条件設定手段を介して設定可能範囲を取得することができる。
すなわち、複数の駆動条件において駆動条件同士が複雑に依存するが、この依存関係は予め依存関係データに記述されているので、この依存関係データを参照することにより、特定の駆動条件の設定値が変動した場合にいずれの駆動条件の設定範囲が変動するのかを把握することができ、複雑な依存関係を加味した上で設定可能範囲を取得することができる。尚、特定の駆動条件の設定値を変動させると他の駆動条件の設定可能範囲が変動するような関係にあるときに両者に依存関係があるとしている。
駆動条件の設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶することができれば、これにより、コンピュータにおいて高速かつ的確に駆動条件の設定可能範囲を取得することが可能になる。従って、当該コンピュータにおいて周辺機器を駆動する際に、当該設定可能範囲データを参照することによって適切な設定可能範囲を選択肢として提供するUIを高速に表示することが可能になる。このUIがコンピュータで利用されるアプリケーションプログラムに固有のUIであったとしても、そのUIで表示する表示対象の駆動条件について設定可能範囲データを参照すれば、適切な設定可能範囲を取得することが可能である。
上記固有のUIにおいては、UIに対して表示する駆動条件を周辺機器を制御する際の目的に応じて適宜選択すればよい。例えば、はがきや伝票など特定の印刷媒体に対して印刷を実行するためのアプリケーションソフトウェアであれば駆動条件として印刷媒体サイズを選択するためのUIを表示させる必要はないし、高画質のカラー画像を印刷するためのアプリケーションソフトウェアであれば駆動条件としてモノクロあるいはカラーの選択をするためのUIを表示する必要はない。むろん、UI上に表示する駆動条件の項目を必要最小限にするとしても、詳細な設定を行いたい利用者のためにオプションとして他の駆動条件を設定可能に構成しておいてもよい。
ここで、周辺機器としては、コンピュータに接続されて駆動される機器であればよく、種々の機器がこの周辺機器に該当する。例えば、コンピュータに接続されて画像の出力動作を行うプリンタやディスプレイ,プロジェクタ等の出力機器や、コンピュータに接続されて画像の入力動作を行うスキャナやデジタルカメラ等の入力機器や、コンピュータに接続されたデータの記録動作を行うハードディスクドライブ等の記録機器等、種々の機器が周辺機器となり得る。
また、駆動条件設定手段においては周辺機器に対して駆動条件を設定し、この設定における他の駆動条件の設定可能範囲を取得可能であればよく、上記周辺機器に一般的なドライバおよびドライバに対するソフトウェアインタフェース等によって構成可能である。すなわち、ドライバはコンピュータ上のプログラム実行環境によって実行され、周辺機器に対して各種駆動条件を設定しながら駆動を制御するプログラムであり、このドライバにおいてある駆動条件をある設定値に設定すると、他の駆動条件についてある設定値に設定できないような状況が発生する。
そこで、ソフトウェアインタフェースによってドライバに対して各種指示および問い合わせを実施可能に構成し、ドライバにおいてある駆動条件をある設定値に設定し、この状態で他の駆動条件について各設定値を設定可能であるか否かを判別すれば設定可能範囲を取得することができる。すなわち、コンピュータにおいて周辺機器を駆動するドライバがインストールされた状態でドライバに対して駆動条件の設定と設定可能範囲の取得を実施可能に構成すれば、設定可能範囲取得手段において依存関係データによって判明する依存関係に従って必要な駆動条件の設定可能範囲を問い合わせるのみで容易に設定可能範囲を取得することができる。
依存関係データにおいては、特定の駆動条件の設定値が異なると他の駆動条件にて設定可能な設定値の範囲が変動する場合に依存関係がある駆動条件同士を特定することができればよい。すなわち、この依存関係データによって駆動条件同士の依存関係を把握することにより、依存関係のある駆動条件について設定可能範囲を取得することができ、依存関係のない駆動条件についてまで設定可能範囲を取得する処理を実行することを防止し、必要最低限の処理工程で設定可能範囲データを作成することができる。
また、設定可能範囲データは、周辺機器に対して駆動条件を設定するためのUIを表示する際に利用することができればよく、各駆動条件について設定可能な設定値の範囲を示すことができればよい。むろん、特定の駆動条件と他の駆動条件とに依存関係が存在する場合には、特定の駆動条件の設定値を特定するデータとその設定値であるときの他の駆動条件の設定可能範囲を特定するデータとによって設定可能範囲データを構成する。また、ここで、駆動条件の設定値といっても、その値が各条件に対応していればよく、数値のみには限られない。すなわち、駆動条件を文字列で特定する場合も含む。但し、コンピュータにて扱う機器においては各条件を数値に対応付け、数値によって駆動条件を指定する構成が好ましい。尚、文字列によって設定可能範囲を記述するデータにおいては、駆動条件の選択肢をUI上に示すに際して、設定可能範囲が変動することによってUI上の文字列も変更することが可能である。
依存関係としては、特定の駆動条件の設定値を変動させると他の駆動条件の設定可能範囲が変動するような関係であればよいが、その好適な構成例としてこの依存関係が階層構造を形成する場合に本発明を適用する構成を採用しても良い。すなわち、特定の駆動条件の設定値を変動させると他の駆動条件の設定可能範囲が変動する関係において前者の駆動条件を上位の駆動条件と呼び、後者の駆動条件を下位の駆動条件と呼ぶとき、ある条件に対する下位の駆動条件が他の条件の上位になるなど、上位下位の関係が連鎖的に連なっているときに、依存関係が階層構造を形成する。
この場合、ある駆動条件の設定可能範囲は、その上位の駆動条件について設定値を特定しなければ特定することができないという関係の駆動条件が階層を形成しているので、設定可能範囲取得手段ではまず上位の駆動条件を特定の駆動条件を特定の設定値に設定させ、その下位の駆動条件の設定可能範囲を取得するという処理を下位階層に向けて逐次実施する。すなわち、当該設定可能範囲を取得した下位の駆動条件が他の駆動条件の上位になっている場合には、等が設定可能範囲を取得した駆動条件につき設定値を特定し、当該他の駆動条件の設定可能範囲を設定する処理を行う。
むろん、ある駆動条件に対する上位の駆動条件が複数個ある場合には、当該複数の駆動条件について何らかの設定値を特定した上で設定可能範囲を取得する。かかる構成により、駆動条件の設定可能範囲を特定不能な状況で設定可能範囲を問い合わせることがなく、無駄な問い合わせや設定を行うことなく一連の処理を進めることができる。
かかる構成においては、依存関係データとしても非常に単純な形式で提供することができる。すなわち、所定の区切り毎に依存関係のある駆動条件を記述することとし、一つの区切りにおいて上位の駆動条件と下位の駆動条件とを対応づけつつ、依存関係がある駆動条件同士を対応づけたデータを列記する。これにより、複雑な依存関係総てを容易に記述することができる。さらに、設定可能範囲データの好適な具体例として、設定可能範囲の規定対象となっている規定対象駆動条件に対してその上位の駆動条件および設定値を特定し、当該上位の条件が当該設定値であるときの設定可能範囲を記述する構成を採用可能である。むろん、ここでも所定の区切り毎に各駆動条件の設定可能範囲を記述することとし、一つの区切りにおいて上位の条件およびその設定値を記述するとともに規定対象駆動条件の設定可能範囲を記述するデータ等を採用することが可能である。
さらに、依存関係データとして好適な構成例として、依存関係データを単一のファイルとして保持し、さらにこのファイルに対して設定可能範囲データを記述可能にする構成を採用可能である。かかる構成において設定可能範囲取得手段が上記特定の駆動条件を特定の設定値に設定させる前に上記ファイルを検索し、当該特定の駆動条件の設定可能範囲データを検出したときにそのデータを参照して設定可能範囲を取得することにより、上記駆動条件設定手段に対する問い合わせ以外に設定可能範囲を取得する手段を提供することができる。
すなわち、上記駆動条件設定手段は上述のように周辺機器を駆動するためのドライバ等によって構成されるが、ドライバにエラーが存在してドライバへの問い合わせによって適正な設定可能範囲を取得することができない場合でも、依存関係データに適正な設定可能範囲データを記述するのみで設定可能範囲取得手段にて適正な設定可能範囲データを取得可能になる。従って、上記所定の記憶媒体に記憶する設定可能範囲データとしても適正なデータにすることができる。
また、ドライバのバージョンアップ等によって設定可能範囲が追加されるなどの変更が生じた場合でも、変更が必要な設定可能範囲データを依存関係データに記述するのみで設定可能範囲取得手段にて変更後の設定可能範囲データを取得可能になる。従って、設定可能範囲データの変更に際して、上記所定の記憶媒体に記憶済みの設定可能範囲データ(バージョンアップ前のデータ)を総て更新する作業をすることなく、変更後の設定可能範囲データを所定の記憶媒体に記憶させることができ、処理作業の手間と時間とを節約することができる。
さらに、設定可能範囲取得手段にて設定可能範囲を取得する際の好適な処理例として、特定の駆動条件を特定の設定値に設定させる前に記憶済みの設定可能範囲データを参照する構成を採用可能である。すなわち、この参照によって上記他の駆動条件の設定可能範囲データが記述済みであることを検出したときには、当該設定可能範囲データを採用し、上記駆動条件設定手段に対する設定可能範囲の問い合わせはしない。従って、単に記憶媒体を参照するのみで設定可能範囲を取得することができ、駆動条件設定手段を介して設定可能範囲を取得するよりも高速に処理を実施することができる。
駆動条件の設定可能範囲データが記述済みである状況としては、種々の状況が存在しうる。例えば、上述のように上位の駆動条件について先に設定値を設定し、逐次下位の駆動条件について設定可能範囲を取得する構成において、ある階層Mの駆動条件に対して下位(階層M+1)の設定可能範囲に共通の設定値がある場合、さらにその下位(階層M+2)の設定可能範囲については設定可能範囲が記述済みである状況が発生する。すなわち、階層Mの駆動条件についてある設定値を設定し、階層M+1、階層M+2と設定可能範囲を取得していく処理の後に階層Mの駆動条件について他の設定値を設定したとき、階層M+1の設定可能範囲に共通の設定値が存在すれば、この設定値における階層M+2の設定可能範囲は取得済みである。
このとき、当該設定値における階層M+2の設定可能範囲を取得する処理を重複して行うのは無駄である。そこで、設定可能範囲データに記述済みの設定値については再度駆動条件設定手段に問い合わせを行うことをせず、当該記憶済みの設定可能範囲データを参照して設定可能範囲を取得する。この結果、駆動条件設定手段を介して設定可能範囲を取得するよりも高速に処理を実施することができる。
さらに、所定の記憶媒体に設定可能範囲データを記憶するに際して、総ての駆動条件について設定可能範囲データを作成して記録することが必須となるわけではない。すなわち、設定可能範囲データは、周辺機器に対して駆動条件を設定するためのUIを表示する際に利用することができればよく、全駆動条件がX個であるときにX−1個以下の駆動条件について設定可能範囲データを作成する構成を採用しても良い。
例えば、依存関係がある駆動条件の数が非常に多く、設定可能範囲データを作成する際に非常に多くの時間を要する駆動条件や、UI上での利用頻度が低い駆動条件については設定可能範囲データを作成しないように構成することができる。かかる構成によれば、設定可能範囲データを作成するための時間を短く抑えることができる。設定可能範囲データ作成手段によって総ての駆動条件について設定可能範囲データを作成していない状態で、作成済みではない駆動条件についてUI上での表示が必要になった場合には、設定可能範囲取得手段で設定可能範囲データを取得すればよい。むろん、一旦設定可能範囲データを取得した後にはこのデータを保持する。また、自動で設定可能範囲データを作成する構成において一部の設定可能範囲データを除外し、当該一部については自動で作成しない場合、これらの設定可能範囲データは手作業で予め作成しておいても良い。
尚、全駆動条件の一部について設定可能範囲データを記憶しておく構成において、記憶する駆動条件を選定する基準としては、種々の構成を採用可能であるが、その例として、駆動条件の依存関係が上述のように階層構造を形成している構成において、所定数以下の上位階層に依存する駆動条件について設定可能範囲データを記憶する構成を採用可能である。すなわち、多数の上位階層に依存する駆動条件について設定可能範囲を取得するためには多数の上位階層の駆動条件について予め設定値を特定した上で設定可能範囲を取得する必要があり、上位階層の各駆動条件の設定可能範囲が増加するとその組み合わせ数が飛躍的に増加する。
従って、上位階層の駆動条件に対する駆動条件の設定を当該組み合わせ数と同じ回数繰り返す必要があり、多数の設定動作が必要になる。従って、所定数より多数の上位階層に依存する駆動条件を除外して設定可能範囲データを取得することにより、設定可能範囲データの作成を開始し終了するまでの時間を短く抑えることができる。かかる構成は、コンピュータにて利用者が周辺機器を駆動するにあたり、初めてUIを表示する前に設定可能範囲データを作成する構成において特に有用である。すなわち、設定可能範囲データを作成する時間を短く抑えることにより、利用者に対してUIを提示するまで待ち時間を短くすることができる。
また、依存関係は周辺機器の機種によって異なり、予め機種毎に依存関係を特定可能であって総て手作業によって依存関係データを作成しても良いが、自動で作成する処理によって作成作業を効率化しても良い。すなわち、駆動条件の依存関係は周辺機器の機種によって変動し得るが、共通の駆動条件も存在する。実際は、プリンタのように複雑な依存関係を有する駆動条件が複数存在する周辺機器であっても機種間で共通の依存関係を有する駆動条件の方が多い。
そこで、周辺機器の複数の機種に共通の依存関係となっている駆動条件についてその依存関係を示すデータが記述されたファイルを予め作成しておけば、複数の周辺機器のそれぞれについて依存関係データを作成する際に、当該ファイルの内容をコピーし、残りのデータ(機種毎に依存関係が異なるデータ)については周辺機器毎に依存関係データを手作業等によって作成すればよい。かかる構成により、各周辺機器の依存関係データを少ない手間で作成することができる。
また、上述のように上記コンピュータにおいて駆動条件を設定するためのUIを所定の出力装置に表示して各駆動条件の設定可能範囲を決定する際に設定可能範囲データが参照される構成とすることができる。この構成において、適正なUIを表示するために状況に応じて設定可能範囲取得手段にて設定可能範囲データを取得するようにすると好ましい。設定可能範囲を取得する必要があるのは、コンピュータに設定可能範囲データが未登録である場合、あるいは登録済みの設定可能範囲データの内容を更新する必要がある場合である。
そこで、駆動条件を設定する対象の周辺機器について上記コンピュータにて初めて上記UIを表示する場合と上記駆動条件設定手段が更新された後に初めて上記UIを表示する場合と上記周辺機器の構成部品を交換した後に初めて上記UIを表示する場合とのいずれかまたは組み合わせが生じているときに上記設定可能範囲取得手段が設定可能範囲の取得を行うことにより、常に適正な設定可能範囲データとすることができる。
すなわち、コンピュータにて初めて上記UIを表示する場合には設定可能範囲データを所定の記憶媒体に記憶していない状況であるので、この場合に設定可能範囲を取得し、設定可能範囲データとして記憶することにより、これ以後、適正なUIを表示可能になる。また、上記ドライバ等によって構成される駆動条件設定手段が更新された後に初めて上記UIを表示する場合、すなわちドライバのバージョンアップ等がなされた場合には機能向上等により設定可能範囲が変動しうるので、この場合に設定可能範囲を取得して設定可能範囲データを更新すれば、これ以後、適正なUIを表示可能になる。さらに、周辺機器の構成部品を交換した後に初めて上記UIを表示する場合、例えば、プリンタにおけるインクの変更,カッター等の付属品の装着やスキャナにおける光源部品の交換等により設定可能範囲が変動しうるのでこの場合に設定可能範囲を取得して設定可能範囲データを更新すれば、これ以後、適正なUIを表示可能になる。
尚、UIの表示は、上記設定可能範囲データを参照して上記駆動条件の設定可能範囲を取得し、所定の出力装置に対して当該設定可能範囲で駆動条件を設定するための選択肢を表示するとともに駆動条件の設定値の入力を受け付ける駆動条件入出力手段と、上記設定可能範囲データを参照して上記設定値の入力によって変更された駆動条件に依存する駆動条件の設定可能範囲を取得し、所定の出力装置に対して当該依存する駆動条件の設定可能範囲を表示する駆動条件更新手段とを構成するなどして実現可能である。
上述のように、依存関係データを参照して設定可能範囲データを作成、記憶する手法は必ずしも実体のある装置に限られるものではなく、請求項9に記載した発明のように方法の発明としても有効である。また、上述の装置は単独で存在する場合もあるし、ある機器に組み込まれた状態で利用されることもあるなど、発明の思想としては、各種の態様を含むものである。また、ソフトウェアであったりハードウェアであったりするなど、適宜、変更可能である。
発明の思想の具現化例としてUI制御装置のソフトウェアとなる場合には、かかるソフトウェアも本発明に相当する。その一例として、請求項10に記載した発明では駆動条件取得プログラムとして発明を特定している。むろん、その記録媒体は、磁気記録媒体であってもよいし光磁気記録媒体であってもよいし、今後開発されるいかなる記録媒体においても全く同様に考えることができる。また、一次複製品、二次複製品などの複製段階については全く問う余地無く同等である。さらに、これらの駆動条件取得方法、駆動条件取得プログラムにおいて上記請求項2〜請求項8に対応した構成にすることも可能である。
さらに、周辺機器として印刷装置を採用した場合に、上述のUIによって駆動条件としての印刷条件を設定し、印刷を実行する構成においても依存関係データを参照して設定可能範囲データを作成することができる。このため、請求項11〜請求項13のように、印刷制御装置、印刷制御方法、印刷制御プログラムとしても発明は成立する。むろん、これらの印刷制御装置、印刷制御方法、印刷制御プログラムにおいて上記請求項2〜請求項8に対応した構成にすることも可能である。
さらに、本発明によって作成される設定可能範囲データを、UI表示等のために参照する際に便利な書式として請求項14の様にデータ構造として発明を特定することも可能である。すなわち、依存関係が階層構造を形成する駆動条件については、ある駆動条件の上位について設定値を特定すれば当該ある駆動条件の設定可能範囲を一義的に特定することができるので、当該ある駆動条件の設定可能範囲を上位の駆動条件の設定値と組で記述する。これにより、複雑な依存関係のある駆動条件であっても非常に単純に記述することができるし、UI表示等のために設定可能範囲を参照する際には当該ある駆動条件に対していずれの駆動条件が上位であるのかを容易に判定可能であるし、その上位の設定値における設定可能範囲も容易に取得可能になる。
ここでは、下記の順序に従って本発明の実施の形態について説明する。
(1)本発明の構成:
(1−1)UI制御モジュールの構成:
(2)プリンタDBの構成:
(3)リソースDBの構成:
(4)印刷制御処理およびUI表示例:
(5)リソースDBの構築処理:
(6)他の実施形態:
(1)本発明の構成:
(1−1)UI制御モジュールの構成:
(2)プリンタDBの構成:
(3)リソースDBの構成:
(4)印刷制御処理およびUI表示例:
(5)リソースDBの構築処理:
(6)他の実施形態:
(1)本発明の構成:
図1は本発明にかかる印刷制御装置となるコンピュータの概略構成を示すブロック図である。コンピュータ10は演算処理の中枢をなす図示しないCPUや記憶媒体としてのROMやRAM14等を備えており、HDD15等の周辺機器を利用しながら所定のプログラムを実行することができる。コンピュータ10にはシリアル通信用I/O19aを介してキーボードやマウス等の操作用入力機器が接続されており、ディスプレイ用I/O19cを介して表示用のディスプレイも接続されている。さらに、プリンタ40とはUSB用I/O19bを介して接続されている。
図1は本発明にかかる印刷制御装置となるコンピュータの概略構成を示すブロック図である。コンピュータ10は演算処理の中枢をなす図示しないCPUや記憶媒体としてのROMやRAM14等を備えており、HDD15等の周辺機器を利用しながら所定のプログラムを実行することができる。コンピュータ10にはシリアル通信用I/O19aを介してキーボードやマウス等の操作用入力機器が接続されており、ディスプレイ用I/O19cを介して表示用のディスプレイも接続されている。さらに、プリンタ40とはUSB用I/O19bを介して接続されている。
本実施形態におけるプリンタ40は複数色のインクを充填するインクカートリッジを色毎に着脱可能な機構を備えており、この機構にCMYKlclmG(シアン,マゼンタ,イエロー,ブラック,ライトシアン,ライトマゼンタ,グレー)の各インクのカートリッジを搭載可能である。また、本実施形態におけるプリンタ40は、Kインクとして光沢紙および普通紙で使用するフォトブラックとマット紙での画質を優先したマットブラックとの2種類のKインクを使用可能である。
プリンタ40においては、各Kインクのいずれかを利用することもできるし、Gインクの代わりにマットブラックのインクカートリッジを2本搭載して使用することもできる。尚、Gインクは溶媒内に黒色の色剤が含まれるインクであるが、Kインクと比較して色剤の濃度が小さいため、Gインクを使用することにより、高精度の階調変化を表現することが可能である。プリンタ40では各インクを組み合わせて多数の色を形成可能であり、これにより印刷媒体上に画像を形成する。
むろん、プリンタ40で使用可能にするインク色は一例であり、他にもダークイエローインクを利用可能にしてもよいし、レッドインクやバイオレットインク等を利用可能にしてもよいし、光沢感を調整する無色インクを利用可能にしてもよい。また、色数としても7色に限られないし、色の組み合わせとしても上述の組み合わせには限られない。本実施形態におけるプリンタ40は、いわゆるインクジェット方式のプリンタであり、各インクが充填されたヘッドの内部でインクに対して力を作用させ各インクを吐出する。このとき、ピエゾ素子に対して電圧を印加してインクに対して吐出力を作用させてもよいし、ヘッド内でバブルを形成してインクに対して吐出力を作用させてもよい。また、インクジェット方式の他にもレーザー方式等、種々のプリンタに対して本発明を適用可能である。
本コンピュータ10の構成は簡略化して説明しているが、パーソナルコンピュータとして一般的な構成を有するものを採用することができる。むろん、本発明が適用されるコンピュータはパーソナルコンピュータに限定されるものではない。また、コンピュータ10とプリンタ40の接続インタフェースも上述のものに限る必要はなくパラレルインタフェースやSCSI接続,無線接続など種々の接続態様を採用可能であるし、今後開発されるいかなる接続態様であっても同様である。
さらに、本実施形態においてはコンピュータ10によって印刷制御装置を構成しているが、プリンタ40に搭載するプログラム実行環境によって本発明にかかる印刷制御処理を実施可能に構成し、プリンタ40に対して直接的に接続されるデジタルカメラから画像データを取得して印刷制御処理を行ってもよい。UIはプリンタ40に搭載する小型の液晶ディスプレイに表示しても良いし、デジタルカメラに搭載する液晶ディスプレイに表示しても良い。むろん、同様の構成においてデジタルカメラにて印刷制御処理を実施してもよいし、他にも分散処理によって本発明にかかる印刷制御処理を実施するなど種々の構成を採用可能である。画像を取り込むスキャナと画像を印刷するプリンタとが一体となったいわゆる複合機において本発明にかかる印刷制御処理を行ってもよい。
本実施形態にかかるコンピュータ10では、プリンタドライバ(PRTDRV)21と入力機器ドライバ(DRV)22とディスプレイドライバ(DRV)23とがOS20に組み込まれている。ディスプレイDRV23はディスプレイにおける画像データ等の表示を制御するドライバであり、入力機器DRV22はシリアル通信用I/O19aを介して入力される上記キーボードやマウスからのコード信号を受信して所定の入力操作を受け付けるドライバである。
APL25は、カラー画像のレタッチ等を実行可能なアプリケーションプログラムであり、利用者は当該APL25の実行下において上記操作用入力機器を操作して当該カラー画像をプリンタ40にて印刷させることができる。すなわち、APL25の画像処理部25aは利用者の指示によりHDD15に記録された画像データ15aをRAM14に読み出して、ディスプレイDRV23を介して当該画像データ15aに基づく画像をディスプレイ上に表示させる。利用者が上記入力機器を操作するとその操作内容が入力機器DRV22を介して取得されて内容が解釈されるようになっており、画像処理部25aはその操作内容に応じてコントラスト調整等種々の画像処理を行う。
上記画像データ15aはRGB(レッド,グリーン,ブルー)の各色成分を階調表現して各画素の色を規定したドットマトリクス状のデータであり、本実施形態では各色256階調であり、sRGB規格に従った表色系を採用した画像データである。本実施形態においてはこの画像データ15aを例にして説明するが、YCbCr表色系を採用したJPEG画像データやCMYK表色系を採用した画像データ等、種々のデータを採用可能である。むろん、Exif2.2規格(Exifは社団法人電子情報技術産業協会の登録商標)に準拠したデータ、Print Image Matching(PIM:PIMはセイコーエプソン株式会社の登録商標)に対応したデータ等について本発明を適用することもできる。
APL25においては、画像処理部25aにおける画像処理後の画像等についてプリンタ40で印刷を実行させることが可能であり、印刷に際しては利用者に対して印刷条件項目の設定を行わせるUIを表示し、UIでの指示に従って印刷を実行させる。このためにAPL25はUI表示制御部25bと印刷実行部25cとを備えており、UI表示制御部25bでは印刷条件項目を設定するUIを表示するためのデータをディスプレイDRV23に対して出力する。また、UI上で表示すべき印刷条件項目の設定可能範囲および項目間の依存関係を示すデータをUI制御モジュール30から取得する。
印刷条件項目は、印刷を実行するために必要な複数の条件の項目であり、印刷解像度,インクの種類(カラー、モノクロの選択やインクセット(インク色の組み合わせ)の選択),印刷媒体の種類やサイズ,印刷時のレイアウト,縁なし印刷の可否,印刷品質(きれい、はやい等),カラーマネジメントの種類(自動調整の可否やディスプレイの色域を超えた色の使用可否等),双方向印刷の可否,ドライバによる画像処理の可否等、PRTDRV21に対して設定可能な種々の印刷条件項目がある。尚、本実施形態においては、上述のように印刷解像度やインクの種類など、項目毎に印刷条件を設定するようになっているため異なる印刷条件を項目として区別する。また、各印刷条件の設定内容はその内容に対応した数値(設定値)で特定するようになっており、この数値を項目値と呼ぶ。
また、UI表示制御部25bでは、上述のUIをディスプレイ上に表示し、このUIに従って利用者が行う操作入力内容を上記入力機器DRV22を介して取得し、操作入力によって指定された各印刷条件項目の項目値を取得する。ここで取得した項目値は仮設定値として保持しておく。尚、前回の印刷実行時における印刷条件項目の項目値は所定の記憶媒体に保持されており、UIを表示する際にこの項目値が表示される。従って、利用者が設定を行わない印刷条件項目については前回の項目値がそのまま設定されることになる。
印刷条件項目において設定可能な項目値は他の印刷条件項目の項目値に依存している場合があり、この場合、ある項目値を設定したことによって他の印刷条件項目で設定可能な項目値の範囲が変動する。UI表示制御部25bはUI制御モジュール30から上述のように設定可能範囲および項目間の依存関係を示すデータを取得するので、このデータを参照し、ある項目値を設定したことによって設定可能範囲に影響がある他の印刷条件項目についてUIの表示を更新する。すなわち、取得した設定可能範囲のデータに従ってUI表示上の設定可能範囲を変動させる。
尚、本実施形態にかかるUIでは、後述するように、一画面で少数の印刷条件項目を表示させ、その項目について入力を実施したときには画面を切り替えて他の印刷条件項目を表示させる構成としている。従って、ある画面である印刷条件項目値を設定して次の画面に進んだ場合とある画面で他の印刷条件項目値を設定して次の画面に進んだ場合とではUI上の選択可能範囲が異なり得る。むろん、一画面で表示されている複数の印刷条件項目について依存関係があるときには、ある印刷条件項目の設定によって他の印刷条件項目の設定範囲が変化し得るので、この場合、選択不可能な印刷条件項目の項目値を選択肢として表示せず、選択可能な印刷条件項目の項目値を選択肢として表示する。また、一画面で多数の印刷条件項目を表示させる場合も同様であり、ある印刷条件項目の設定によって他の印刷条件項目の設定範囲が変化した場合には、選択不可能な印刷条件項目の項目値を選択肢として表示させず、選択可能な項目値を選択肢として表示する。
さらに、UI表示制御部25bでは非常に多くの印刷条件項目の中で、APL25による印刷に必要な印刷条件項目のみを変更可能なUIを表示するようになっており、UI表示されていない印刷条件項目については所定の記憶媒体に保持されたデフォルトの項目値が使用される。例えば、はがき印刷に特化したAPLであればはがきサイズ以外の印刷用紙を選択する必要がないので、印刷条件項目としての印刷媒体のサイズをはがきサイズで固定するなどの構成が採用可能である。かかる構成により、APLの作成者がUIに表示する印刷条件項目を予め決めておくことができ、必要以上に煩雑なUIを表示せず、利用者にわかりやすいインタフェースを提供することが可能になる。
また、このUIにおいては印刷実行指示を行うことが可能であり、UI表示制御部25bがUI上の操作内容に基づいて当該印刷実行指示を検出したときに印刷実行部25cでの処理が開始される。印刷実行部25cは上述のようにして仮設定値として保持された各印刷条件項目の項目値を印刷条件としてPRTDRV21に設定させ、印刷対象の画像データをPRTDRV21に受け渡す。PRTDRV21は、解像度変換や色変換,ハーフトーン処理等の処理を行う図示しないモジュールを備えており、各モジュールによって印刷対象の画像データに対して印刷条件項目の項目値に応じた処理が実施され、印刷データが生成される。生成された印刷データはUSB用I/O19bを介してプリンタ40に出力され、プリンタ40は当該印刷データに基づいて印刷を実行する。
(1−1)UI制御モジュールの構成:
上記UI制御モジュール30は、上記UI表示制御部25bに対してUI表示に必要な印刷条件項目の設定可能範囲と依存関係および印刷条件項目の項目値を示すデータを受け渡す処理を司っており、本実施形態においてはこのモジュールによって複雑な依存関係のある印刷条件項目について項目値の変更に応じて高速に表示を変更可能な構成を採用している。このために、UI制御モジュール30は、項目値仮設定部31と項目値取得部32と項目値設定可能範囲取得部33とリソースDB作成部34と項目値設定部35とを備えている。
上記UI制御モジュール30は、上記UI表示制御部25bに対してUI表示に必要な印刷条件項目の設定可能範囲と依存関係および印刷条件項目の項目値を示すデータを受け渡す処理を司っており、本実施形態においてはこのモジュールによって複雑な依存関係のある印刷条件項目について項目値の変更に応じて高速に表示を変更可能な構成を採用している。このために、UI制御モジュール30は、項目値仮設定部31と項目値取得部32と項目値設定可能範囲取得部33とリソースDB作成部34と項目値設定部35とを備えている。
UI制御モジュール30は、UI表示制御部25bにおいて印刷条件項目の設定可能範囲と依存関係を高速に取得できるようにするため、上記UI上で選択された各印刷条件項目の項目値を仮設定として保持し、予め作成されたデータベースを参照してこの仮設定がなされた場合の設定可能範囲および依存関係をUI表示制御部25bに返すように構成されている。
このために、少なくともUI制御の開始前にはHDD15にプリンタDB15bとリソースDB15cとが記録されているようにしてある。本実施形態において、プリンタDB15bは各印刷条件項目間の依存関係を記述したデータベースであり、PRTDRV21のインストール時にHDD15に記録される。リソースDB15cには、各印刷条件項目の上位項目およびその上位項目の各項目値での印刷条件項目値が記録されている。従って、ある印刷条件項目の項目値が変更されたとき、この項目を上位項目とする印刷条件項目が取り得る項目値を取得することができ、設定可能範囲を取得することができると言える。尚、上位項目はある印刷条件項目と他の印刷条件項目とにおいて、ある印刷条件項目の項目値が決定すると他の印刷条件項目の項目値の設定可能範囲が決定するという関係にある場合の前者である。
UI制御モジュール30のリソースDB作成部34は、ソフトウェアI/F27を利用して上記プリンタDB15bを参照してリソースDB15cを作成する。すなわち、ソフトウェアI/F27はPRTDRV21とデータの授受を行い、各項目値の取得、設定可能範囲の取得、各項目値の設定を実施可能に構成されており、リソースDB作成部34はソフトウェアI/F27を介して各項目値を設定しながら依存関係のある項目値について設定可能範囲を取得する。
印刷条件は上述のように依存関係があるが、ソフトウェアI/F27によって特定の印刷条件項目の上位項目値を固定した状態で当該特定の印刷条件項目の設定可能範囲を取得することができる。従って、上位項目について値を設定し、設定可能範囲を取得する作業を上位項目が取り得る総ての項目値について繰り返せば、特定の印刷条件項目についての設定可能範囲および依存関係を取得することができる。むろん、依存関係のない印刷条件項目について繰り返し作業をする必要はない。
このソフトウェアI/F27においては、所定の処理時間を要するものの、当該繰り返し作業によって設定可能範囲を取得することができる。そこで、この依存関係および設定可能範囲を示すデータを作成してリソースDB15cとすることができる。むろん、上記依存関係のない印刷条件項目についてもリソースDB15cに対して設定可能範囲を記録しておく。
本実施形態においては、コンピュータ10において初めてプリンタ40を指定した印刷を実行する際にリソースDB15cが作成され、一旦作成された後にはHDD15に保持される。従って、本実施形態においてリソースDB15cもプリンタDB15bも印刷実行に際しては予め作成されていると言える。リソースDB15cの作成および各データベースの内容については後に詳述する。
UI表示制御部25bがUIを作成する際には、項目値設定可能範囲取得部33がリソースDB15cあるいはプリンタDB15bを参照し、UI表示対象の印刷条件項目についてその設定可能範囲を示すデータをUI表示制御部25bに受け渡す。また、項目値取得部32は、印刷条件項目について現在の項目値を取得する。従って、UI表示制御部25bは各印刷条件項目について上述の設定可能範囲を選択肢として表示するとともに、現在の項目値をデフォルトとして選択した状態のUIを形成し、表示することが可能になる。
ここで、現在の項目値は、項目値取得部32が処理を行う時点での項目値であり、画像印刷のためにUIを表示する初期においてはソフトウェアI/F27を介して前回の印刷実行時における印刷条件項目の項目値を取得する。上記項目値取得部32によって取得された前回の項目値はUI表示制御部25bに現項目値として受け渡されるとともに、仮設定値14aとしてRAM14に記録される。
UIが表示されてから印刷が実行されるまでに一度でもUI上で項目値を変更した場合に、項目値取得部32はソフトウェアI/F27を介して項目値を取得することなく仮設定値14aが示す項目値を現項目値としてUI表示制御部25bに出力する。従って、UI表示制御部25bによってUIを表示する際に、ソフトウェアI/F27を介してPRTDRV21とデータの授受を実行する必要が無く、高速に現項目値を取得することができる。
項目値仮設定部31は、上記UI表示制御部25bによって項目値の変更が受け付けられたときに、その項目値を仮設定値として取得し、ソフトウェアI/F27を介して当該仮設定値をPRTDRV21に対して設定することなく仮設定値14aとしてRAM14に記録する。従って、UI上で変更がなされた項目値についてはRAM14の仮設定値14aが更新され、この段階でPRTDRV21に対して項目値の更新は行われない。
仮設定値14aが更新されてから上記項目値取得部32で仮設定値14aを取得し、項目値設定可能範囲取得部33が設定可能範囲を取得すれば、UI表示制御部25bにおいて項目値の更新に応じて適宜設定可能範囲を変更したUIを表示させることができる。すなわち、項目値が更新されたことによって依存関係のある項目の設定可能範囲が変動したとしても、その都度項目値設定可能範囲取得部33がリソースDB15cを参照することによって適正な設定可能範囲とすることができる。尚、UI表示の更新については後に詳述する。
UIでの印刷条件項目値の設定は仮設定値14aとして保持され、実際にはPRTDRV21に設定されていないが、利用者がUIによって印刷条件項目の項目値を決定し、印刷実行指示を行ったときには、項目値設定部35がソフトウェアI/F27を介して項目値の設定を行う。項目値設定部35は、ソフトウェアI/F27を介してPRTDRV21に印刷条件を指定するためのデータフォーマットを解釈するとともに当該データフォーマットに応じながらPRTDRV21に対して各印刷条件項目の項目値を設定させることが可能である。
すなわち、RAM14の仮設定値14aを参照し、各印刷条件項目の項目値を仮設定値14aが示す値とするように上記フォーマットのデータを作成する。そして、ソフトウェアI/F27に当該データを受け渡すと、PRTDRV21においては当該データに記述された通りに各印刷条件項目の項目値を設定する。尚、ソフトウェアI/F27を介して所定フォーマットのデータにて印刷条件を設定する構成は、印刷条件を指定するための構成がOS毎に異なっているところ、これを吸収して少なくともAPL25においてはOSによる差異を意識することなくUI表示のためのデータ処理を実施するための構成である。
すなわち、各種OSにおいて一般的にはPRTDRV21に対して印刷条件項目の項目値を設定するための機能を備えているが、印刷条件の設定手法はOS毎に異なっている。そこで、本実施形態においてはUI制御モジュール30によってOSに依存しない手法で高速にUI表示を制御可能な構成を採用し、実際に印刷を実行するに際しては項目値設定部35において印刷条件の設定手法を判別しつつ印刷条件を設定するようにした。この結果、APL25およびその印刷時のUIを提供するアプリケーション制作者が、OSの差異を意識することなく共通の手法で印刷条件項目の項目値を指定し、また、PRTDRV21を制御するためのプログラムを作成することができる。
尚、本発明において、高速で設定可能範囲を適切に表示し、また、APL作成者所望のUIを提供するという意味では、リソースDB15cと項目値仮設定部31と項目値取得部32と項目値設定可能範囲取得部33とを備えていればよく、ソフトウェアI/F27によってOSの差異を吸収する構成は必須とはならない。例えば、ソフトウェアI/F27を介して印刷条件項目の項目値設定等をするのではなく、UI制御モジュール30が各PRTDRV21に対して直接的に印刷条件項目の項目値設定等を行う構成を採用してもよい。
(2)プリンタDBの構成:
次に、本実施形態におけるプリンタDB15bの構成を詳説する。図2はプリンタDB15bのデータ記述例を示す図である。同図に示すようにプリンタDB15bにはプリンタ名、ドライババージョン、インクセット、依存関係を示すデータが記述されている。プリンタ名はプリンタ40の機種名(本実施形態では”PM−****”)を指定するデータであり、PRTDRV21はこのプリンタ40に対応したドライバである。印刷条件項目および依存関係が機種に依存するので、本実施形態ではプリンタDB15bがいずれの機種のプリンタに使用されるのかを記述している。この記述は、コンピュータ10に対して複数のプリンタを接続し、各プリンタに応じた複数のPRTDRVをインストールすることにより、そのいずれかまたは組み合わせを使用可能にした場合に、いずれのプリンタに対して記述されたプリンタDBであるのかを識別するために利用される。
次に、本実施形態におけるプリンタDB15bの構成を詳説する。図2はプリンタDB15bのデータ記述例を示す図である。同図に示すようにプリンタDB15bにはプリンタ名、ドライババージョン、インクセット、依存関係を示すデータが記述されている。プリンタ名はプリンタ40の機種名(本実施形態では”PM−****”)を指定するデータであり、PRTDRV21はこのプリンタ40に対応したドライバである。印刷条件項目および依存関係が機種に依存するので、本実施形態ではプリンタDB15bがいずれの機種のプリンタに使用されるのかを記述している。この記述は、コンピュータ10に対して複数のプリンタを接続し、各プリンタに応じた複数のPRTDRVをインストールすることにより、そのいずれかまたは組み合わせを使用可能にした場合に、いずれのプリンタに対して記述されたプリンタDBであるのかを識別するために利用される。
ドライババージョンはPRTDRV21のバージョン(本実施形態ではバージョン5.3e)を指定するデータである。プリンタドライバのバージョンによって新機能が追加され、上記依存関係が変更されることやエラーの修正等によってバージョンが変わることがあり得るので、本実施形態ではプリンタDB15bがいずれのドライババージョン用であるのかを記述している。この記述は、コンピュータ10の利用者がバージョンアップしたPRTDRV21を入手し、インストールする場合に、いずれのドライババージョンに対して使用されるべきプリンタDBであるのかを識別するために利用される。後述するように、リソースDB15cがHDD15に記録されていたとしても、プリンタDB15bに記述されたドライババージョン用のリソースDB15cがHDD15に記録されていなければ当該リソースDB15cを再構築し直すので、ドライババージョンの変更によって新機能が追加し、依存関係が変更されたとしても変更後の依存関係に対応することができる。
インクセットはプリンタ40に搭載される上記インクカートリッジの組み合わせおよび種類(本実施形態では顔料系のインクであってCMYKlclmGインクのセット)を一義的に指定するデータである。使用するインク色の組み合わせによってカラーマネジメントや画像処理の可否が異なり、上記依存関係が変更されることがあり得るので、本実施形態ではプリンタDB15bがいずれのインクセット用であるのかを記述している。この記述は、コンピュータ10の利用者がプリンタ40に搭載するインク色の組み合わせを変更した場合に、いずれのインクセットに対して使用されるべきプリンタDBであるのかを識別するために利用される。後述するように、リソースDB15cがHDD15に記録されていたとしても、インクセットをCMYKlclmGからCMYKlclmKに変更するなどして、プリンタDB15bに記述されたインクセット用のリソースDB15cがHDD15に記録されていない状態になっていれば当該リソースDB15cを再構築し直すので、インクセット変更後の依存関係に対応することができる。
依存関係は、依存関係を規定する対象の印刷条件項目(対象項目)とその上位項目とを対応づけながら列記することによって規定しており、本実施形態においては”対象項目n,上位項目の項目数m,上位項目n1,,,上位項目nm”を示すデータを順に記述することによって依存関係を規定している。ここで、n,mは0もしくは自然数であり、n個の対象項目のそれぞれについてm個の上位項目が存在し、各上位項目を列記する。上位項目が存在しない対象項目についてはmを0として上位項目は記述しない。対象項目や上位項目についてはその項目自体を特定することができればよく、例えば、対象項目が印刷品質であり、上位項目が印刷媒体の種類であって上位項目数が一つの場合、”印刷品質,1,印刷媒体の種類”と記述することになる。
本実施形態において、プリンタDB15bはリソースDB15cを作成するために参照されるので、このためには、上述のプリンタ名、ドライババージョン、インクセットを特定するデータおよび依存関係を示すデータが記述されていればよいが、本実施形態においては、さらに利便性を高めるために、設定可能範囲を記述できるようにしてある。設定可能範囲は図2の下部に示してあり、”対象項目x,上位項目の項目数l,上位項目x1およびその値,,,上位項目xlおよびその値,設定可能範囲”を示すデータを順に記述する書式となっている。
すなわち、ある対象項目xについてその上位項目数と上位項目とを記述することによって依存関係を示すことは上記依存関係の書式と共通であるが、設定可能範囲の書式においては上位項目の項目値を特定し、最後に上位項目がその項目値であるときの対象項目値を記述する。これにより、上位依存関係にある項目値が特定の値であるときの対象項目の設定可能範囲を特定することができる。かかる書式は後述するリソースDB15cに記述する設定可能範囲の書式と共通である。リソースDB15cはプリンタDB15bに記述された依存関係によって作成されるが、この作成時にPRTDRV21のエラー等に起因して設定可能範囲が適切に取得できない場合があり、この場合には適切な設定可能範囲をリソースDB15cに記述できない。
そこで、PRTDRV21の作成後に適切な設定可能範囲をプリンタDB15bに記述し、上記リソースDB作成部34によってリソースDB15cを作成する際にまずプリンタDB15bを参照し、プリンタDB15bに設定可能範囲が記述されているときには当該プリンタDB15bの記述内容を取得するようにしている。かかる構成により、PRTDRV21のエラー等に起因して設定可能範囲が適切に取得できない場合が生じても容易に適切な設定可能範囲を項目値設定可能範囲取得部33に伝えることが可能になる。また、総ての項目について設定可能範囲をリソースDB15cに登録すると、非常に時間がかかってしまう場合、一部の設定可能範囲データをリソースDB15cに記述するように構成することが可能である。かかる構成においてUI表示を行う場合、リソースDB15cには設定可能範囲データが記述されていないので、プリンタDB15bを参照して設定可能範囲データを取得することになる。
(3)リソースDBの構成:
次に、本実施形態におけるリソースDB15cの構成を詳説する。図3はリソースDB15cのデータ記述例を示す図である。同図に示すようにリソースDB15cにはプリンタ名、ドライババージョン、インクセット、設定可能範囲を示すデータが記述されている。設定可能範囲は”対象項目n,上位項目の項目数m,上位項目n1およびその値,,,上位項目mlおよびその値,設定可能範囲”を示すデータを順に記述する書式となっている。
次に、本実施形態におけるリソースDB15cの構成を詳説する。図3はリソースDB15cのデータ記述例を示す図である。同図に示すようにリソースDB15cにはプリンタ名、ドライババージョン、インクセット、設定可能範囲を示すデータが記述されている。設定可能範囲は”対象項目n,上位項目の項目数m,上位項目n1およびその値,,,上位項目mlおよびその値,設定可能範囲”を示すデータを順に記述する書式となっている。
これにより、上位依存関係にある項目値が特定の値であるときの対象項目の設定可能範囲を特定しており、例えば、対象項目が印刷品質、上位項目が印刷媒体の種類、上位項目数が一つの場合であって印刷媒体の種類の項目値が”1”のときに印刷品質の項目値が”2,3”である場合、”印刷品質,1,印刷媒体の種類=1,2,3”と記述することになる。尚、ここでも依存関係のない対象項目は上位項目の項目数が”0”とされ、上位項目およびその値を記述することなく上位項目の項目数の直後に設定可能範囲を記述する。
リソースDB15cに記述する対象項目数は、全項目数X個のうちX−1個について既述するなど各種調整を行うことができる。PRTDRV21の印刷条件項目として存在する項目すべてについて記述してもよいし、リソースDB15cの作成に非常に多くの時間が費やされることを防止するため、上位項目の項目数が所定の数以下(例えば4以下)の対象項目のみ記述するようにしてもよい。他にもUI上で利用頻度が低い印刷条件項目を予め把握しておき、利用頻度が低い項目やUI上に現れない印刷条件項目(印刷を実行するために設定が必要であるが、ユーザが決定するのではなくAPLが決定する印刷条件等)についてはリソースDB15cに記述しないように構成してもよい。
以上のように、プリンタDB15bおよびリソースDB15cにおいては、各印刷条件項目の項目値を数値で指定するようになっており、各数値が意味するところが予め決められている。例えば、印刷媒体の種類=1は”普通紙”などと予め決められている。従って、本明細書では各印刷条件項目について印刷条件を指定することを項目値を決定すると呼んでいるが、むろん、本発明においては印刷条件を指定することができればよいので、数値によって印刷条件を特定することが必須というわけではなく、文字列で指定するなど種々の構成を採用可能である。
また、プリンタDB15b,リソースDB15cのいずれにおいてもプリンタ名や対象項目等、上述の各種情報を示すデータを記述していればよく、データの記述形式は上述の書式に限られない。むろん、データを記述しておくという意味では各種情報を示していればよく、コンピュータ10においてテキスト形式を採用してもよいし、バイナリ形式を採用してもよく、種々の構成を採用可能である。
図4は、以上のようにして決定される設定可能範囲を依存関係とともに示す例である。同図においてA〜Hは印刷条件項目を示し、依存関係を矢印によって示している。矢印が指す先端に位置する印刷条件項目は下位項目であり、逆側の端部に示す印刷条件項目が上位項目である。例えば、印刷条件項目Aは印刷条件項目B,Dの上位項目である。尚、依存関係においてある項目に対して上位項目と下位項目が一対一である関係、すなわち図4に示すB,Cのような依存関係を独立ツリーと呼び、ある項目に対して下位項目や上位項目が複数ある場合、すなわち図4に示す印刷条件項目F(上位項目がDとE)のような項目を非独立ツリーと呼ぶ。
各印刷条件項目の依存関係を示す上記プリンタDB15bにおいては、独立ツリーであっても非独立ツリーであっても記述することができ、非常に簡易な書式で複雑な依存関係を記述することができる。すなわち、独立ツリーの場合は、例えば印刷条件項目Cの上位項目として印刷条件項目Bを示せばよいし、非独立ツリーの場合であっても、例えば印刷条件項目Fの上位項目数が2つであるとして印刷条件項目D,Eを示せばよい。
さらに、設定可能範囲を示す上記リソースDB15cにおいては、上位項目と当該上位項目の具体的な項目値を示しつつ対象項目の設定可能範囲を示すので、図4に示すような複雑な依存関係および設定可能範囲を容易に記述することができる。同図においては、各印刷条件項目について、上位項目の項目値と当該項目値における対象項目の項目値を示している。例えば、印刷条件項目Bにおいては、上位項目Aの項目値が”1”のとき、項目Bの設定可能範囲が”1,2”であることを示し、上位項目Aの項目値が”2”のとき、項目Bの設定可能範囲が”3”であることを示している。
図4に示す印刷条件項目Fにおいては、同図に示すように上位項目Eが”2”であるときに項目Fが”1”、上位項目Eが”1”かつ上位項目Dが”1”であるときに項目Fが”2”、これ以外のとき項目Fが”1,2”となっている。このように、上位項目が特定の項目値であるときに項目Fの項目値が上位項目に依存するという複雑な依存関係になっている。しかし、このような依存関係であっても、リソースDB15cにおける簡易な書式にて容易に記述することができる。すなわち、上記E=2の場合、E=1かつD=1の場合を含めて総ての場合について上位項目の値および項目Fの値をリソースDB15cに記述すればよい。
印刷条件項目Gのように、さらに複雑な依存関係になっても同様である。印刷条件項目Gでは、上位項目Fが”1,2”で切り換え可能ならGは”1,2”、切り換え不可能なら項目Fが”1”のとき項目Gが”2”,項目Fが”2”のとき項目Gが”1”という条件になっている。すなわち、項目Gにおいては項目Fが切り換え可能か否かという条件と項目Fの項目値とに依存している。項目Fが切り換え可能か否かという条件については項目Fと項目Gとの依存関係のみで規定することはできないが、項目Fの上位項目である項目D,Eをも利用すれば項目Gの設定可能範囲を規定することができる。
従って、この場合項目D,E,Fが項目Gの上位項目となり、項目D,E,Fの項目値を規定した上で項目Gの設定可能範囲を記述することによって、上述のように項目Fの切り換え可否を含む複雑な条件を規定することができる。具体的には、図4の右下に示すように、切り換え不可とは項目Fの設定可能範囲に任意性がなく、項目値が”1”のみあるいは”2”のみであるということであり、項目Fが”1”のみであるのは上述のようにE=2のときである。従って、この場合、項目Gの上位項目を項目E,D,Fとし、項目Eの項目値を”2”、項目Dの項目値を”1,2”、項目Fの項目値を”1”とし、項目Gの設定可能範囲を”2”としてリソースDB15cに記述する。
項目Fが”2”のみである場合については項目Gの上位項目を項目E,D,Fとし、それぞれの項目値を”1”,”1”,”2”とし、項目Gの設定可能範囲を”1”としてリソースDB15cに記述する。切り換え可能な場合については上述の上位項目D,E,Fの項目値を上記例以外の値として項目Gの設定可能範囲を”1,2”としたデータを列記すればよい。以上、本実施形態においてリソースDB15cに上位項目およびその値を記述する書式を採用していることにより、複雑な依存関係であっても容易に記述してリソースDB15cを作成することができる。
(4)印刷制御処理およびUI表示例:
次に、上記構成における印刷制御処理およびUI表示例を説明する。印刷制御処理は図5に示すフローに従って実施され、図6はこのときに表示されるUIの例を示している。利用者は、APL25の実行中にレタッチ対象の画像等について印刷指示を行うことができ、画像処理部25aが印刷指示を受け付けると(ステップS100))、UI表示制御部25bはUI制御モジュール30と連携してUI表示を制御する。このとき、リソースDB作成部34は、当該指示にかかる印刷にて使用するプリンタのプリンタ名を取得する(ステップS105)。また、当該プリンタを制御するPRTDRV21のバージョンとインクセットも併せて取得する。
次に、上記構成における印刷制御処理およびUI表示例を説明する。印刷制御処理は図5に示すフローに従って実施され、図6はこのときに表示されるUIの例を示している。利用者は、APL25の実行中にレタッチ対象の画像等について印刷指示を行うことができ、画像処理部25aが印刷指示を受け付けると(ステップS100))、UI表示制御部25bはUI制御モジュール30と連携してUI表示を制御する。このとき、リソースDB作成部34は、当該指示にかかる印刷にて使用するプリンタのプリンタ名を取得する(ステップS105)。また、当該プリンタを制御するPRTDRV21のバージョンとインクセットも併せて取得する。
尚、プリンタ名としてはOS20によって通常使用されるプリンタとして設定されているプリンタの機種名を取得すればよいが、むろん、印刷指示に際して利用者が特定のプリンタを指定したときにはその機種名を取得する。PRTDRV21のバージョンおよびインクセットとしてはPRTDRV21に対して問い合わせ、PRTDRV21が自身のバージョンおよび搭載されたインクセットを返信する構成を採用してもよいし、プリンタ40と通信を行ってインクセットを示す情報を取得する構成を採用してもよいし、PRTDRV21のインストールあるいはバージョンアップ時に予め所定の記憶媒体にバージョンを示す情報を記録しておき、この情報を参照する構成を採用してもよく、種々の構成を採用可能である。
いずれにしても、使用するプリンタ名とドライバのバージョンとインクセットを示す情報を取得したら、リソースDB作成部34はステップS110においてHDD15を参照し、当該プリンタ名とドライバのバージョンとインクセット用のリソースDB15cが既に構築され、HDD15に記録済みであるか否かを判定する。同ステップS110にてリソースDB15cが既に構築されていると判定されないときには、リソースDB作成部34がステップS115にて当該プリンタ名とドライバのバージョンとインクセットに対応するプリンタDB15bを参照しリソースDB15cを構築するための処理を実行する。
ステップS110にてリソースDB15cが既に構築されていると判定されたときには、ステップS115をスキップする。すなわち、コンピュータ10に対してプリンタ40を接続してPRTDRV21をインストール後初めて印刷を実行するとき、PRTDRV21のバージョンアップ等によってPRTDRV21のバージョンを変更後初めて印刷を実行するとき、プリンタ40に搭載するインク色の組み合わせを変更後初めて印刷を実行するときにリソースDB15cが構築される。
図1に示す例では接続されているプリンタ40が一台であり、インストールされているPRTDRV21が一種類であるので、PRTDRV21をインストール、バージョンアップあるいはインクセットを変更した後初めて印刷を実行する場合にリソースDB15cが構築されることになる。尚、リソースDB15cの構築に際してはある程度の時間を要するため、ディスプレイ上にはプログレスバーを表示するなどして利用者に処理中であることを示す構成を採用することが好ましい。PRTDRV21をインストール、バージョンアップあるいはインクセットを変更した後2回目以降の印刷ではリソースDB15cを構築することなく処理を進めることになる。
プリンタDB15bは上述のようにPRTDRV21のインストール時にHDD15に記録されるので、プリンタDB15bとリソースDB15cとがHDD15に記録されている状態でステップS120以降の処理を実行することになる。ステップS120以降の処理では、UI表示制御部25bが所定のUIを表示するため、UI表示対象の各印刷条件項目について設定可能範囲を取得する。まずステップS120においては、項目値設定可能範囲取得部33がリソースDB15c,プリンタDB15bをこの順に検索し、ステップS125ではUI表示対象の印刷条件項目が上記対象項目として記述されているか否かを判別する。
同ステップS125にてUI表示対象の印刷条件項目が上記対象項目として記述されていると判別されないときには、リソースDB作成部34がステップS130にてPRTDRV21に対して実際に項目値を設定して設定可能範囲を取得する。すなわち、プリンタDB15bを参照してUI表示対象の印刷条件項目について上位項目があるか否かを判別し、上位項目が存在する場合にはその上位項目についてソフトウェアI/F27を介してPRTDRV21に項目値を設定し、このように上位項目の項目値を設定した状態でUI表示対象の印刷条件項目がとり得る設定可能範囲を取得する。
このとき上位項目の項目値については当該上位項目が取りうる項目値のすべてについて逐次設定し、上位項目の各項目値についてUI表示対象の印刷条件項目の設定可能範囲を取得する。UI表示対象の印刷条件項目に対して上位項目が存在しない場合にはUI表示対象の印刷条件項目以外の項目値を設定することなく、ソフトウェアI/F27を介して当該印刷条件項目の設定可能範囲を取得する。また、取得した設定可能範囲は、リソースDB15cに記述する。従って、UI表示対象の印刷条件項目についてプリンタDB15bおよびリソースDB15cに記述されていないとされたことがあったとしても、次回の印刷時には記述されていないと判別されることがない。
このステップS130については実際にPRTDRV21に対して項目値を設定した上で設定可能範囲を取得する処理を行うので、ある程度の時間がかかる処理である。しかし、UI表示対象の印刷条件項目がリソースDB15cに記述されていないという状況が起こり得るのは、上述のようにリソースDB15cの作成に非常に多くの時間が費やされることを防止するためなど、特定の場合に限られ、UI表示を実施するために必要な項目のほとんどは予めリソースDB15cに記述されている。従って、実際はステップS130が実施されることはまれである。
ステップS135においては、項目値設定可能範囲取得部33が上記ステップS120でリソースDB15c,プリンタDB15bに記述されていると検出した印刷条件項目、あるいはステップS130にてリソースDB15cに記述した印刷条件項目について設定可能範囲を取得する。ステップS140においては、項目値取得部32がRAM14の仮設定値14aを参照し、あるいはソフトウェアI/F27を介して現在の項目値を取得する。
すなわち、ステップS120以降のループ処理において初回の処理であればソフトウェアI/F27を介して前回の印刷実行時における印刷条件項目の項目値を取得し、UI表示制御部25bに現項目値として受け渡す。このとき、現項目値を仮設定値14aとしてRAM14に記録する。また、ステップS120以降のループ処理において2回目以降の処理であれば仮設定値14aを参照してUI表示制御部25bに現項目値として受け渡す。
ステップS145においては、上記ステップS135で取得した設定可能範囲を選択可能な選択肢にするとともに、上記ステップS140で取得した仮設定値が仮に設定された状態でUIを表示する。さらに、ステップS150ではUI表示制御部25bが項目値の変更を受け付けたか否かを判別し、項目値の変更を受け付けたと判別されたときには、ステップS155にて項目値仮設定部31が変更後の項目値を仮設定値として取得し、RAM14の仮設定値14aを更新してステップS120以降の処理を繰り返す。
この繰り返し処理においては、ステップS155の項目値の変更によってUI表示対象の印刷条件項目の依存関係が変動したとしても、ステップS135の処理により適切な設定可能範囲が取得され、ステップS140のUI表示では選択不能の印刷条件項目を選択可能に表示させることなくUIを更新することができる。また、繰り返し処理においてステップS140にて現項目値を取得する際にはソフトウェアI/F27を介してPRTDRV21に対して項目値を設定することが無い。従って、UIが表示されてから印刷が実行されるまでに一度でもUI上で項目値を変更した場合には、高速にUI表示を切り替えることができる。
本実施形態にかかるUIでは、利用者に選択を促す全印刷条件項目のうち一部のみを一画面に表示し、一画面で少数の印刷条件項目を入力しながら画面を逐次切り替えて最終的に印刷実行指示を受け付けるようにしている。そこで、ステップS160では、UI表示制御部25bが画面の切替指示を受け付けたか否かを判別し、画面の切替指示を受け付けたと判別したときにはステップS165にてUI画面を切り替える。そして、切り替え後のUI表示対象の印刷条件項目について適切な表示をするため、ステップS120以降を繰り返す。
ステップS160にて画面の切替指示を受け付けたと判別しないときには、ステップS170にてUI表示制御部25bが印刷実行指示を受け付けたか否かを判別する。そして、印刷実行指示を受け付けたと判別したときには、ステップS175にて印刷実行部25cが印刷対象の画像データをPRTDRV21に対して出力するとともに、項目値仮設定部31に対して印刷条件を設定するように指示を出す。また、項目値仮設定部31がソフトウェアI/F27にアクセスし、PRTDRV21に対して仮設定値14aに記録されている印刷条件項目値を設定する。この結果、PRTDRV21は画像データに対して印刷条件に従った画像処理を施すとともに印刷条件に従って印刷を実行するための印刷データを作成し、プリンタ40に出力し、印刷を実行する。
図6は、本実施形態におけるUI画面が切り替わる様子を示している。本実施形態にかかるUIでは、利用者に選択を促す全印刷条件項目のうち一部のみを一画面に表示し、一画面で少数の印刷条件項目を入力しながら画面を逐次切り替えて最終的に印刷実行指示を受け付けるようにしている。図6に示す例においては印刷媒体のレイアウトを選択するUIをUI1と示している。当該UI1においては左側に印刷条件項目としての印刷媒体サイズを選択するフレーム1aを表示し、右側に印刷条件項目としてのレイアウトを選択するフレーム1bを表示している。また、図6のUI0は縁なし印刷(媒体の四辺に余白を設けない印刷)を実施するか否かを選択するUIである。
尚、各UIにおいてはラジオボタンやアイコンのクリックによって各印刷条件項目を指定するようになっており、画面右下の「戻る」ボタンによって一つ前のUI画面に戻り、「次へ」ボタンによって次のUI画面に進むようになっており、最後のUIにおいては印刷実行指示ボタンによって印刷実行指示を実施できるようになっている。この例において、レイアウトは印刷媒体上での画像配置を規定しており、印刷媒体サイズはレイアウトの上位項目である。また、プリンタ40においては縁なし印刷を実施可能な印刷媒体のサイズが限られており、この意味で縁なし印刷の可否は印刷媒体の上位項目である。図6の例ではプリンタ40において、はがき,L版,2L版,A3〜A6の各印刷媒体サイズで印刷を実行可能であり、このうち、はがき,L版,2L版,A3,A4の各印刷媒体サイズで縁なし印刷を実施可能である。
従って、UI0において設定可能範囲として縁ありと縁なしを表示し、項目値として縁なしを選択しつつ次のUI1に進んだときには、フレーム1aにおいて選択可能範囲としてはがき,L版,2L版,A3,A4を表示する。UI0において項目値として縁ありを選択しつつ次のUI1に進んだときには、フレーム1aとして選択可能範囲としてはがき,L版,2L版,A3〜A6を表示する。また、UI1のフレーム1aにて印刷媒体サイズが選択されたときには、フレーム1bにてレイアウトが自動的に更新され、当該選択中の印刷媒体サイズにて印刷実行可能なレイアウトのみが設定可能範囲として提示される。
以上のように、本実施形態にかかるUIにおいてはAPL25の制作者が所望の印刷条件項目を選択し、UIの表示対象として設定しておくのみで、各項目値の設定可能範囲はUI制御モジュール30が取得し、適切な表示のみを行うことができ、容易かつ高速に表示可能であり、かつ表示対象の任意性が高いUI表示を実施することができる。
尚、本実施形態にかかるUIにおいて、印刷条件項目に依存関係が存在することから、より上位にある印刷条件項目から選択するように逐次画面を切り替える構成を採用するのが好ましい。また、ある項目の上位項目が複数あるのであれば、これら上位項目は同じUI画面上で選択されるのが好ましい。さらに、一画面で多数の印刷条件項目を表示させるUIを構成してもよく、ある印刷条件項目の設定によって他の印刷条件項目の設定可能範囲が変化した場合には、選択不可能な項目値を選択肢として表示させず、選択可能な項目値を選択肢として表示する。むろん、UIの構成は種々の構成が可能であり、選択不可能な項目値をグレーアウトさせる構成を採用してもよい。
(5)リソースDBの構築処理:
次に、上記ステップS115に示すリソースDB15cの構築処理について説明する。図7〜図9はこの構築処理を示すフローチャートであり、図10は図4に示す依存関係のリソースDB15cを構築する際の処理例を説明する説明図である。以降、図10に示す例に沿って図7〜図9のフローチャートを説明する。尚、リソースDB15cの構築処理においては、RAM14をワークエリアとし、印刷条件項目のリストを示すデータをバッファリングしながら処理を進めており、バッファリングの目的とループによって適宜リストを切り換えながらリソースDB15cを作成する。
次に、上記ステップS115に示すリソースDB15cの構築処理について説明する。図7〜図9はこの構築処理を示すフローチャートであり、図10は図4に示す依存関係のリソースDB15cを構築する際の処理例を説明する説明図である。以降、図10に示す例に沿って図7〜図9のフローチャートを説明する。尚、リソースDB15cの構築処理においては、RAM14をワークエリアとし、印刷条件項目のリストを示すデータをバッファリングしながら処理を進めており、バッファリングの目的とループによって適宜リストを切り換えながらリソースDB15cを作成する。
上記図5のステップS110にてリソースDB15cが既に構築されていると判定されないときには、リソースDB作成部34がステップS115の処理を実行して図7のステップS200以降を開始する。ステップS200では、まず、上記ステップS105で取得したプリンタ名とドライバのバージョンとインクセットを示すデータをリソースDB15cに登録する。ステップS205では、プリンタDB15bに記述された全項目をリストL1nに登録する。尚、このリストL1nは、設定可能範囲が未確定である未確定項目を登録するリストである。また、番号nは自然数であって初期値は”1”であり、この番号nによって異なるリストをバッファし、ループの段階によって使い分ける。
ステップS210では、リストL1nの中で上位項目および下位項目を有していない項目(独立項目)を抽出し、ステップS215で上記ソフトウェアI/F27を介してPRTDRV21に独立項目の設定可能範囲を問い合わせ、取得した設定可能範囲をリソースDB15cに登録する。図4に示す例では印刷条件項目Hが上位項目および下位項目を有していないので、設定可能範囲(図4では”1,2,3”)を取得し、リソースDB15cに登録する。
以上のようにしてリソースDB15cに登録した独立項目は未確定項目ではなくなるので、ステップS220にてリストL1nから削除する。ステップS225以降では、依存関係のある項目についてより上位の項目から項目値を決定し、上位の項目がその項目値であるときの下位項目の設定可能範囲を取得するようにして処理を進める。このため、ステップS225ではリストL1nからある項目Nを抽出し、ステップS230ではプリンタDB15bを参照し、当該項目Nの上位項目を抽出する。
ステップS235では、当該抽出した上位項目が総て確定しているか否かを判別し(項目Nの上位項目がリストL1nに存在すれば未確定と判別)、総て確定していると判別されなければステップS240にて項目Nを変更するとともにステップS230以降の処理を繰り返す。すなわち、このループにより、上位項目のない、最上位の項目を項目Nとして処理を進めることになる。尚、図10では、図4に示す依存関係についてステップS220以降にてバッファリングされるリストの例を上から下に向けて時系列的に並べて示している。この段階で番号nは初期値であってリストL1nはリストL11であり、同図(a)に示すようにリストL11=ABCDEFGである。また、同(a)では、項目Nとして項目Aを抽出した例を示している。
ステップS235にて上位項目が総て確定していると判別されると、ステップS245にて項目Nの設定可能範囲データをプリンタDB15b,リソースDB15cの順に検索し、ステップS250において項目Nの設定可能範囲データがプリンタDB15b,リソースDB15cに存在しているか否かを判別する。ステップS250にて項目Nの設定可能範囲データが存在すると判別されたときにはステップS255をスキップし、ステップS260にて当該設定可能範囲データをリソースDB15cに登録する。
ステップS250にて項目Nの設定可能範囲データが存在すると判別されないときには、ステップS255にてソフトウェアI/F27を介してPRTDRV21に上位項目の項目値を設定し、項目Nの設定可能範囲を取得する。そして、ステップS260にて当該設定可能範囲データをリソースDB15cに登録する。尚、ステップS245にてプリンタDB15bを優先するのは、上述のようにエラー等に起因してPRTDRV21から設定可能範囲が適切に取得できない場合があり、この場合には適切な設定可能範囲をプリンタDB15bに記述することにしているので、まずプリンタDB15bを検索することとしたものである。
次にリソースDB15cを検索するのは、PRTDRV21に対する重複した設定を防止するためであり、既に設定可能範囲データがリソースDB15cに存在する場合はPRTDRV21に対する設定をすることなくリソースDB15cから設定可能範囲を取得することとしている。すなわち、本実施形態における処理においては、上位の項目について項目値を決定し、その下位の項目について設定可能範囲を取得する処理を上位から下位に向けて逐次実施するので、項目Nより2つ上位の階層(階層Mとする)の項目値が異なっていても、項目Nより1つ上位の階層(階層M+1)の項目値が共通の値であれば、項目Nの設定可能範囲は共通である。
従って、ステップS245の処理において項目Nの設定可能範囲について既に記述された設定可能範囲データを検出する場合もあり、この場合はステップS255をスキップする。このように、まずプリンタDB15bとリソースDB15cとを検索すれば、検索によって設定可能範囲データを発見したときにPRTDRV21への設定をする必要がなく、HDD15を参照するのみで設定可能範囲を取得することができる。従って、ソフトウェアI/F27を介してPRTDRV21に対して上位項目を設定させ、その下位項目の設定可能範囲を取得するよりも高速に設定可能範囲を取得することができる。
図10の(a)に示す項目値N=Aの処理においては、処理の最初であってリソースDB15cに項目Aの設定可能範囲が保存されていないため、ステップS245,S250の処理を経てステップS255にてPRTDRV21を介して設定可能範囲データ(A=1,2)を取得する。この例において項目Aには上位項目がないのでステップS255にて上位項目を設定することなく項目Aの設定可能範囲データを取得することができる。
ステップS265ではプリンタDBを参照し、項目Nより下位の項目を抽出してリストL2nに登録する。すなわち、リストL2nは項目Nに依存する下位の項目を列記したリストである。従って、図10の(a)に示す例では項目N=Aに依存しない項目Eを除く下位項目の総てが番号n=1のリストL2nに登録され、リストL21=BCDFGとなる。ステップS265での処理の後には図8のステップS300にてリストL2nの項目総てについて設定可能範囲が確定しているか否かを判別する。
同ステップS300にてリストL2nの全項目について設定可能範囲が確定していると判別されたときには、ステップS305にてリストL1nから項目Nを削除して上記図7のステップS270以降の処理を行う。ステップS300にてリストL2nの全項目について設定可能範囲が確定していると判別されないときには、ステップS310にてリストL1nをリストL3nにコピーし、リストL3nから項目Nを削除する。すなわち、リストL2nの項目は項目Nの下位項目であるため、ステップS300でこれらの下位項目が確定していると判別されたときには、項目Nおよびその下位項目が確定しているので未確定項目リストL1nから項目Nを削除して、さらに残りの未確定項目について処理を進める。
ステップS300で項目Nの下位項目が確定していると判別されないときには、当該下位項目を確定させるため、未確定項目のうち項目Nを除いてリストL3nとし、処理を進める。この意味でリストL3nは未確定項目の一部を登録するリストである。また、リストL3nは各ループで処理を行う未確定項目の一部を一時的に登録するリストである。図10の(a)に示す例では、リストL21の項目BCDFGが確定していないため、ステップS300の判別を経てステップS310にてL31=BCDEFGとする。
ステップS315では、リストL2nの各項目が上述の独立ツリーであるか否かを判別する。同ステップS315でリストL2nの各項目が独立ツリーであると判別されたときには、ステップS320でリストL3nをリストL2nで置き換える。すなわち、独立ツリーの下位項目をループ内での処理対象としてリストL3nに登録する。ステップS315でリストL2nの各項目が独立ツリーであると判別されないときにはステップS320をスキップする。図10の(a)に示す例ではステップS320がスキップされる。
ステップS325では、項目Nの項目値を仮設定する。すなわち、項目Nを特定の値にした状態で下位項目の設定可能範囲を決定するため、項目Nの項目値を特定の値に仮設定する。尚、同じ項目Nに対してこのステップS325が繰り返しによって再度実行されるときには、仮設定する項目値を前回の処理と異なる値とする。ステップS330では、番号nをインクリメントし、リストL1nにリストL3(n−1)をコピーする。すなわち、未確定項目に前回の番号(n−1)におけるループでの未確定項目をコピーする。
そして、ステップS270にて当該リストL1nに項目が存在しているか否かを判別し、項目が存在しているときには未確定項目が存在するので、ステップS225以降の処理を繰り返す。ステップS270にてリストL1nに項目が存在していると判別されないときには、図9に示すステップS400以降の処理を実行する。図10の(b)に示す例では項目N=AであってステップS325にてA=1を仮設定した例を示しており、ステップS330以降では番号nが”2”となるので、リストL12=BCDEFGとなる。
同図に示す例ではリストL12=BCDEFGであり、ステップS270においてリストL12に項目が存在するので、ステップS225で新たな項目Nを設定する。図10の(b)では新たな項目Nが項目Bであり、この項目Bの上位項目Aの設定可能範囲が総て確定しているのでステップS235の判別を経てステップS245〜S255の処理を行う。このとき、項目Bの設定可能範囲はプリンタDB15bおよびリソースDB15cに登録されていないので、ステップS255にてPRTDRV21に上記仮設定された項目A=1を設定し、項目Bの設定可能範囲B=1,2を取得する。この結果、ステップS260では項目Bの設定可能範囲データとしてA=1のとき、B=1,2をリソースDB15cに登録する。
さらに処理を続行し、ステップS265ではリストL22=Cとし、ステップS310ではリストL32=CDEFGとし、ステップS320ではリストL32=Cとする。そして、ステップS325では項目Bの下位項目Cについて処理を行うため、項目B=1を仮設定し、ステップS330でリストL13=Cとする。さらに、ステップS270に戻ると、リストL13に項目Cが存在することからステップS225以降の処理を繰り返し、項目N=Cについて処理を行う(図10(c))。ステップS245〜S260の処理では項目Cの設定可能データとしてB=1のとき、C=1,2をリソースDB15cに登録する。
さらに、ステップS265では項目N=Cより下位が存在しないことから、L23を空とし、ステップS300でL23の項目が空であることによって総て確定していると判別し、ステップS305にてリストL13を空にしてステップS270の判別を行う。このとき、リストL13が空であることによって図9のステップS400の処理を行う。ステップS400では、項目Nの上位項目について全項目値を設定済みであるか否かを判別し、項目Nの上位項目について全項目値を設定済みであると判別しないときには、ステップS402にて番号nをデクリメントしてステップS325以降の処理を繰り返す。ステップS400にて項目Nの上位項目について全項目値を設定済みであると判別したときには、ステップS403にて番号nをデクリメントしてステップS405以降の処理を実施する。
図10に示す例では、項目N=Cの上位項目Bについて項目値2を設定していないので、ステップS325の処理にて項目Bに項目値2を設定する(図10(d))。そして、ステップS330ではリストL13にリストL32をコピーしてリストL13=Cとする。これ以後ステップS270,S225〜ステップS260にて上記と同様の処理を行い、項目Cの設定可能データとしてB=2のとき、C=2,3,4をリソースDB15cに登録する。この結果、項目B,Cについては設定可能範囲が確定したことになる。
この場合のステップS265〜S305,S270でも上記B=1の場合と同様に判別を行うが、ステップS400では項目Cの上位Bについて全項目値を設定済みであると判別するので、ステップS403以降の処理を実施する。ステップS405ではリストL1nから項目Nの上位項目を削除し、ステップS410ではリストL1nからリストL3nの項目を削除する。図10に示す例では、ステップS405にてリストL12から項目Cの上位項目Bを削除する。この結果、リストL12=CDEFGとなる。さらに、ステップS410では、リストL12からリストL32の項目を削除する。この結果リストL12=DEFGとなる(図10(e))。
ステップS420ではプリンタDB15bに記述された全項目について設定可能範囲データの登録が終了したか否かを判別し、終了したと判別されるまでステップS270以降の処理を繰り返す。図10(e)に示す例では、リストL12=DEFGの段階でこれらの項目が未確定であるので、番号n=2でステップS270以降の処理を繰り返す。図10(e)では、この番号n=2、リストL12=DEFGとなっているときに、ステップS225にて項目N=Dとした場合の例を示している。この場合、上述のように項目A=1のとき項目B=1,2と決定した処理と同様の処理を経て、ステップS260では項目Dの設定可能範囲データとしてA=1のとき、D=1,2をリソースDB15cに登録する。
そして、ステップS265にてリストL22=FGとし、ステップS300の判別を経てステップS310にてリストL31=EFGとする。リストL22のFGは独立ツリーではないため、ステップS315の判別を経てステップS320をスキップし、ステップS325にて項目D=1を仮設定してステップS330以後の処理を続ける。以後、図7〜図9に示すフローチャートに従って、図10(f)に示すようにまず項目D=1として項目Eの設定可能範囲データを登録し、さらに図10(g)に示すように項目D=1,E=1として項目Fの設定可能範囲データを登録し、さらに、図10(h)に示すように項目D=1,E=1,F=2として項目Gの設定可能範囲データを登録する。
この場合の項目Gについて設定可能範囲データを登録したらさらに項目D=1,E=2を設定して項目F,項目Gの設定可能範囲データを登録する処理を行う。すなわち、図7〜図9に示すフローチャートに従って処理を行うことにより、上位項目から逐次項目値を設定し、その項目値での設定可能範囲データを登録しつつ徐々に下位項目を設定していく。これにより、依存関係のある総ての場合について上位項目値を設定し、その下位の項目について設定可能範囲データを登録する処理を行うことができる。従って、上記図4に示すような印刷条件項目F,Gのように複雑な依存関係を有する項目間の設定可能範囲データを容易に規定することができ、リソースDB15cを作成することができる。
(6)他の実施形態:
本発明においては、周辺機器の駆動条件の依存関係および設定可能範囲を参照し、設定可能範囲内でUIを表示しつつ利用者に駆動条件を設定させることができればよく、上記実施形態の他にも種々の構成を採用可能である。例えば、上述の実施形態においては、コンピュータ10において少なくともUIでの印刷条件設定の前に、HDD15に記録されたプリンタDB15bを参照してリソースDB15cを作成する構成を採用していたが、むろん、予めコンピュータ10以外のコンピュータにてリソースDB15cを作成し、HDD15に記録するようにしても良い。
本発明においては、周辺機器の駆動条件の依存関係および設定可能範囲を参照し、設定可能範囲内でUIを表示しつつ利用者に駆動条件を設定させることができればよく、上記実施形態の他にも種々の構成を採用可能である。例えば、上述の実施形態においては、コンピュータ10において少なくともUIでの印刷条件設定の前に、HDD15に記録されたプリンタDB15bを参照してリソースDB15cを作成する構成を採用していたが、むろん、予めコンピュータ10以外のコンピュータにてリソースDB15cを作成し、HDD15に記録するようにしても良い。
すなわち、プリンタ40を提供するプリンタメーカーが予めリソースDB15cを作成し、PRTDRV21のプログラムとリソースDB15cのデータを記録した媒体をコンピュータ10の利用者に提供し、PRTDRV21のインストール時にリソースDB15cをHDD15に記録する構成を採用しても良い。かかる構成によれば、コンピュータ10にてリソースDB15cを作成するためにプリンタDB15bを備える必要がないので、HDD15に必要とされるデータ容量を抑えることができる。また、利用者がコンピュータ10を操作しているときにリソースDB15cを作成する必要がないので、作成のための時間を必要とせず、UI表示の初回から利用者を待たせることがない。
一方、HDD15に記録されたプリンタDB15bを参照してリソースDB15cを作成する上記構成においては、上述のようにドライバのバージョンやインクセットの変更時に容易にリソースDB15cを再構築することができるので、状況の変更に容易に対応することができる。また、上述のようにエラー等に起因してPRTDRV21から設定可能範囲が適切に取得できない場合であってもエラーの修正後に修正後の設定可能範囲データをプリンタDB15bに記録可能であるため、エラーが生じた場合にも容易に修正をすることができる。
また、リソースDB15cに設定可能範囲データを登録するのは、上記ステップS115における構築時、ステップS130における設定可能範囲の学習時に限られず、例えば、印刷実行後に所定の設定可能範囲データを登録しても良い。すなわち、印刷領域の設定など、UI上でのプレビュー時に利用される場合には正確な値が必要なく、印刷時には正確な値が必要な類のデータであれば、印刷時にPRTDRV21に印刷領域を設定する際にその設定可能範囲を取得し、リソースDB15cに登録しても良い。かかる構成によれば、UI表示の際にPRTDRV21に対して設定することを防止してUI表示処理を高速に実施することが可能であり、一旦リソースDB15cに設定可能範囲データを登録した後には、高速に正確な値を使用することができる。
さらに、上記実施形態においてはコンピュータ10に対して一台のプリンタ40が接続されていたが、むろん、複数台のプリンタが接続され、複数のPRTDRVがインストールされている状況において本発明を適用することも可能である。すなわち、各プリンタを示すデータはプリンタDB15bやリソースDB15cの先頭に記述され、このデータによってプリンタが識別される。従って、各プリンタにて初めて印刷を実行する際にはリソースDB15cが未登録であるとし、そのプリンタについて作成されたプリンタDB15bを参照することによってリソースDB15cを作成することができる。この結果、各プリンタについて作成されたプリンタDB15bやリソースDB15cを参照し、各プリンタ毎の印刷条件項目の設定可能範囲に応じたUIを表示することが可能になる。
さらに、上記リソースDB15cの作成フローチャートは一例であり、上位項目の項目値を決定した上でその下位項目の設定可能範囲を取得する作業を逐次上位から下位に向けて実施できればよく、他にも種々のフローを採用可能である。上述の各リストを利用することも必須ではなく、種々の手法でバッファリングを行いながら処理を進めればよい。また、上記図5のステップS140において現在の項目値を取得する際に、初回のループ処理ではソフトウェアI/F27を介してPRTDRV21に項目値を問い合わせる構成を採用していたが、むろん、UI設定の終了後に、必要に応じて不揮発性メモリに転送するなどして仮設定値14aを保持しておき、初回のループ処理ではこの仮設定値を参照すれば、PRTDRV21に対する問い合わせを行わない構成にすることができる。
さらに、上述のようにリソースDB15cにおいて印刷条件項目の設定可能範囲として、項目値と併せて項目値に対応した文字列を記録することにすれば、設定可能範囲をUI表示する際にその項目値を文字によって明示することが可能になり、よりわかりやすいUIを提供することが可能になる。
さらに、上記実施形態においては、コンピュータに接続される周辺機器としてのプリンタに本発明を適用していたが、むろん、UIによって駆動条件を設定可能な総ての周辺機器について本発明を適用することができる。例えば、ディスプレイ,プロジェクタ,スキャナ,デジタルカメラ,ハードディスクドライブ等に対して本発明を適用可能である。本発明においては、複雑に依存する駆動条件について設定可能範囲データで適切な設定可能範囲を特定するので、多数の駆動条件が存在し、また、多くの依存関係を有する周辺機器について本発明を適用するのが好ましい。この意味で、スキャナ等が好適な適用例であるし、スキャナとプリンタとコピーやfaxが一つの機体に構成された複合機なども好適な適用例である。
さらに、上記プリンタDBは予め作成し、HDD15に記録しておけばよいが、異なるプリンタの機種についてプリンタDBを作成する際に、各機種で共通の依存関係データを予め作成しておけば効率的にプリンタDBを作成することが可能になる。図11は、効率的にプリンタDBを作成する作業を説明する説明図である。同図左側には、プリンタの機種が異なっていてもその依存関係が共通である場合にその依存関係を列記したデータ(パターンファイル)を示している。
効率的にプリンタDBを作成する際にはこのパターンファイルを予め作成しておく。図11に示す例では、依存関係を規定する対象の対象項目2〜対象項目nがプリンタ名PM−4000,PM−3000にて共通の依存関係データとなっている場合について示している。対象項目2〜対象項目nがプリンタ名PM−4000,PM−3000にて共通であるため、パターンファイルにはこれらの対象項目について依存関係を示すデータが予め記述されている。
プリンタ名PM−4000,PM−3000についてのプリンタDB150b,151bを作成する際には、このパターンファイルを参照し、その内容をプリンタDB150b,151bのそれぞれにコピーする。同図では、対象項目1の依存関係がプリンタの機種毎に異なる場合を示しており、このとき、上記プリンタDB150b,151bのそれぞれに対して各プリンタ機種用の依存関係を書き込む。また、プリンタDBの書式に従って、プリンタ名とドライババージョンとインクセットとを示すデータもプリンタDB150b,151bのそれぞれに書き込む。
以上のように、対象項目が多数(図ではn個)あったとしても、パターンファイルを参照する構成にすることにより、各プリンタDB150b,151bを作成する際には、非常に少ない項目についてデータを作成するのみで済み、作業を非常に効率的に進めることができる。プリンタの機種が増えるほどこの効率は高くなるので、多機種を製造するメーカーにとってこの利点は非常に大きい。また、以上の処理はパターンファイルを所定の記憶媒体に記録したコンピュータによって実現するのが好ましい。すなわち、パターンファイルを記録したコンピュータにおいて、必要最低限の対象項目の依存関係とプリンタ名とドライババージョンとインクセットを示すデータを入力すると、コンピュータの演算処理部がパターンファイル内の記録内容を加えてプリンタDBを出力する構成とするのが好ましい。この結果、非常に簡易な作業によりプリンタDBを作成可能になる。
10…コンピュータ、14…RAM、14a…仮設定値、15…HDD、15a…画像データ、15b…プリンタDB、15c…リソースDB、20…OS、21…PRTDRV、22…入力機器DRV、23…ディスプレイDRV、25…APL、25a…画像処理部、25b…UI表示制御部、25c…印刷実行部、30…UI制御モジュール、31…項目値仮設定部、32…項目値取得部、33…項目値設定可能範囲取得部、34…リソースDB作成部、35…項目値設定部、40…プリンタ
Claims (14)
- コンピュータに接続される周辺機器の駆動条件の設定可能範囲を抽出する駆動条件取得装置であって、
上記周辺機器に対して駆動条件を設定し、この設定における他の駆動条件の設定可能範囲を取得可能な駆動条件設定手段と、
上記駆動条件同士の依存関係を示す依存関係データを記憶する依存関係データ記憶手段と、
上記駆動条件設定手段によって特定の駆動条件を特定の設定値に設定させ、上記依存関係データを参照して当該特定の駆動条件に依存する他の駆動条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶する設定可能範囲取得手段とを具備することを特徴とする駆動条件取得装置。 - 上記駆動条件の依存関係は階層構造を形成しており、上記設定可能範囲取得手段は当該階層構造における上位の駆動条件を上記特定の駆動条件とし、下位の駆動条件を上記他の駆動条件として設定可能範囲を取得する処理を下位階層に向けて逐次実施することを特徴とする上記請求項1に記載の駆動条件取得装置。
- 上記依存関係データは単一のファイルとして所定の記憶媒体に記憶されているとともにこのファイルには上記設定可能範囲データを記述可能であり、上記設定可能範囲取得手段は上記特定の駆動条件を特定の設定値に設定させる前に上記ファイルを検索し、上記他の駆動条件の設定可能範囲データが記述されているときには当該記述されている設定可能範囲データを参照して設定可能範囲を取得することを特徴とする上記請求項1または請求項2のいずれかに記載の駆動条件取得装置。
- 上記設定可能範囲取得手段は、上記特定の駆動条件を特定の設定値に設定させる前に記憶済みの設定可能範囲データを参照し、上記他の駆動条件の設定可能範囲データが記述されているときには当該記述されている設定可能範囲データを参照して設定可能範囲を取得することを特徴とする上記請求項1〜請求項3のいずれかに記載の駆動条件取得装置。
- 上記設定可能範囲取得手段は、上記駆動条件がX個(Xは自然数)であるときにX−1個の駆動条件について上記設定可能範囲を取得して設定可能範囲データを記憶することを特徴とする上記請求項1〜請求項4のいずれかに記載の駆動条件取得装置。
- 上記駆動条件の依存関係は階層構造を形成しており、上記設定可能範囲取得手段は所定数以下の上位階層に依存する駆動条件について上記設定可能範囲を取得して設定可能範囲データを記憶することを特徴とする上記請求項1〜請求項5のいずれかに記載の駆動条件取得装置。
- 周辺機器の複数の機種に共通の依存関係となっている駆動条件についてその依存関係を示すデータが記述されたファイルが予め作成されており、上記依存関係データを作成する際にはこのファイルに記述されたデータを参照して依存関係データの一部としていることを特徴とする上記請求項1〜請求項6のいずれかに記載の駆動条件取得装置。
- 上記設定可能範囲データは上記コンピュータにおいて駆動条件を設定するためのUIを所定の出力装置に表示して各駆動条件の設定可能範囲を決定する際に参照され、駆動条件を設定する対象の周辺機器について上記コンピュータにて初めて上記UIを表示する場合と上記駆動条件設定手段が更新された後に初めて上記UIを表示する場合と上記周辺機器の構成部品を交換した後に初めて上記UIを表示する場合とのいずれかまたは組み合わせが生じているときに上記設定可能範囲取得手段が設定可能範囲の取得および設定可能範囲データの記憶を実施することを特徴とする上記請求項1〜請求項7のいずれかに記載の駆動条件取得装置。
- コンピュータに接続される周辺機器の駆動条件の設定可能範囲を抽出する駆動条件取得方法であって、
上記周辺機器に対して駆動条件を設定し、周辺機器を駆動する周辺機器制御部において、駆動条件を設定しこの設定における他の駆動条件の設定可能範囲を取得可能であり、
上記駆動条件同士の依存関係を示す依存関係データを所定の記憶媒体に記憶しておき、
上記周辺機器制御部によって特定の駆動条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の駆動条件に依存する他の駆動条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶することを特徴とする駆動条件取得方法。 - コンピュータに接続される周辺機器の駆動条件の設定可能範囲を抽出する駆動条件取得プログラムであって、
上記周辺機器に対して駆動条件を設定し、この設定における他の駆動条件の設定可能範囲を取得可能な駆動条件設定機能と、
上記駆動条件同士の依存関係を示す依存関係データを所定の記憶媒体に記憶する依存関係データ記憶機能と、
上記駆動条件設定機能によって特定の駆動条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の駆動条件に依存する他の駆動条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶する設定可能範囲取得機能とをコンピュータに実現させることを特徴とする駆動条件取得プログラム。 - コンピュータに接続される印刷装置の印刷条件をUIによって設定するとともに当該UIで設定された印刷条件で印刷装置を制御する印刷制御装置であって、
上記印刷装置に対して印刷条件を設定し、この設定における他の印刷条件の設定可能範囲を取得可能な印刷条件設定手段と、
上記印刷条件同士の依存関係を示す依存関係データを記憶する依存関係データ記憶手段と、
上記印刷条件設定手段によって特定の印刷条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の印刷条件に依存する他の印刷条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶する設定可能範囲取得手段と、
上記設定可能範囲データを参照して上記印刷条件の設定可能範囲を取得し、所定の出力装置に対して当該設定可能範囲で印刷条件を設定するための選択肢を表示するとともに印刷条件の設定値の入力を受け付ける印刷条件入出力手段と、
上記設定可能範囲データを参照して上記設定値の入力によって変更された印刷条件に依存する印刷条件の設定可能範囲を取得し、所定の出力装置に対して当該依存する印刷条件の設定可能範囲を表示する印刷条件更新手段と、
上記受け付けた設定値での印刷条件にて印刷を実行する指示を受け付ける印刷実行指示受付手段と、
同印刷を実行する指示に応じて上記受け付けた設定値での印刷条件にて印刷装置を駆動し、画像を印刷させる印刷制御手段とを具備することを特徴とする印刷制御装置。 - コンピュータに接続される印刷装置の印刷条件をUIによって設定するとともに当該UIで設定された印刷条件で印刷装置を制御する印刷制御方法であって、
上記印刷装置に対して印刷条件を設定し、印刷装置を駆動する印刷装置制御部において、印刷条件を設定しこの設定における他の印刷条件の設定可能範囲を取得可能であり、
上記印刷条件同士の依存関係を示す依存関係データを所定の記憶媒体に記憶しておき、
上記印刷装置制御部によって特定の印刷条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の印刷条件に依存する他の印刷条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶し、
上記設定可能範囲データを参照して上記印刷条件の設定可能範囲を取得し、所定の出力装置に対して当該設定可能範囲で印刷条件を設定するための選択肢を表示するとともに印刷条件の設定値の入力を受け付け、
上記設定可能範囲データを参照して上記設定値の入力によって変更された印刷条件に依存する印刷条件の設定可能範囲を取得し、所定の出力装置に対して当該依存する印刷条件の設定可能範囲を表示し、
上記受け付けた設定値での印刷条件にて印刷を実行する指示を受け付け、
同印刷を実行する指示に応じて上記受け付けた設定値での印刷条件にて印刷装置を駆動し、画像を印刷させることを特徴とする印刷制御方法。 - コンピュータに接続される印刷装置の印刷条件をUIによって設定するとともに当該UIで設定された印刷条件で印刷装置を制御する印刷制御プログラムであって、
上記印刷装置に対して印刷条件を設定し、この設定における他の印刷条件の設定可能範囲を取得可能な印刷条件設定機能と、
上記印刷条件同士の依存関係を示す依存関係データを所定の記憶媒体に記憶する依存関係データ記憶機能と、
上記印刷条件設定機能によって特定の印刷条件を特定の設定値に設定させ、上記依存関係を参照して当該特定の印刷条件に依存する他の印刷条件の設定可能範囲を取得するとともに当該設定可能範囲を示す設定可能範囲データを所定の記憶媒体に記憶する設定可能範囲取得機能と、
上記設定可能範囲データを参照して上記印刷条件の設定可能範囲を取得し、所定の出力装置に対して当該設定可能範囲で印刷条件を設定するための選択肢を表示するとともに印刷条件の設定値の入力を受け付ける印刷条件入出力機能と、
上記設定可能範囲データを参照して上記設定値の入力によって変更された印刷条件に依存する印刷条件の設定可能範囲を取得し、所定の出力装置に対して当該依存する印刷条件の設定可能範囲を表示する印刷条件更新機能と、
上記受け付けた設定値での印刷条件にて印刷を実行する指示を受け付ける印刷実行指示受付機能と、
同印刷を実行する指示に応じて上記受け付けた設定値での印刷条件にて印刷装置を駆動し、画像を印刷させる印刷制御機能とをコンピュータに実現させることを特徴とする印刷制御プログラム。 - コンピュータに接続される周辺機器の駆動条件の設定可能範囲を記述するためのデータ構造であって、
上記駆動条件の依存関係は階層構造を形成しているとともに、当該依存関係は上位の駆動条件の設定値を変動させるとその下位の駆動条件の設定可能範囲が変動する関係にあり、
設定可能範囲を規定する対象の規定対象駆動条件に対する上位の駆動条件を示すデータと当該上位の駆動条件の設定値を示すデータと当該設定値であるときに上記規定対象駆動条件に設定可能な設定可能範囲を示すデータとを組として、
この組を列記することによって規定対象駆動条件のそれぞれについて設定可能範囲を記述したことを特徴とするデータ構造。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003291674A JP2005063112A (ja) | 2003-08-11 | 2003-08-11 | 駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003291674A JP2005063112A (ja) | 2003-08-11 | 2003-08-11 | 駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2005063112A true JP2005063112A (ja) | 2005-03-10 |
Family
ID=34369287
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003291674A Pending JP2005063112A (ja) | 2003-08-11 | 2003-08-11 | 駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2005063112A (ja) |
-
2003
- 2003-08-11 JP JP2003291674A patent/JP2005063112A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4379577B2 (ja) | 周辺機器制御装置、周辺機器制御方法および周辺機器制御プログラム | |
JP5415836B2 (ja) | 記録制御装置、制御方法、及びプログラム | |
JP4344921B2 (ja) | Ui制御装置、ui制御方法、ui制御プログラム、印刷制御装置、印刷制御方法および印刷制御プログラム | |
US7548938B2 (en) | File management device, printer, and file management method | |
JP4420183B2 (ja) | 印刷制御装置、印刷制御方法および印刷制御プログラム | |
US20070146763A1 (en) | Printing control device and printing control method | |
JP2006268752A (ja) | 複数のバージョンに対応したモジュールの起動 | |
US20040239955A1 (en) | Print job creation apparatus and print job creation method | |
US8014023B2 (en) | System and method for identifying attributes of a printed image | |
JP4200384B2 (ja) | 印刷制御装置、印刷制御方法、印刷制御プログラム、印刷制御プログラムを記録した媒体、画像処理装置、画像処理コンピュータ | |
JP3768654B2 (ja) | 情報処理装置、印刷装置およびそれらの制御方法 | |
US20050254092A1 (en) | Method for printing image in voluntary template paper, print management apparatus and print system using the same | |
JP2005063112A (ja) | 駆動条件取得装置、駆動条件取得方法、駆動条件取得プログラム、印刷制御装置、印刷制御方法、印刷制御プログラムおよびデータ構造 | |
JP2005063111A (ja) | Ui制御装置、ui制御方法、ui制御プログラム、印刷制御装置、印刷制御方法および印刷制御プログラム | |
JP4458219B2 (ja) | 印刷システムおよび印刷制御プログラム | |
US8310712B2 (en) | Image forming controlling apparatus, image forming controlling method, and image forming controlling program embodied on computer readable recording medium | |
US20050024653A1 (en) | Print file editing method and apparatus and color image forming system employing the same | |
JP2005228202A (ja) | 駆動条件設定装置、駆動条件設定方法、駆動条件設定プログラム、印刷制御装置、印刷制御方法および印刷制御プログラム | |
JP4424228B2 (ja) | 表示処理装置、表示処理方法及びそのプログラム | |
JP4774805B2 (ja) | ファイル検索装置、印刷装置、ファイル検索方法及びそのプログラム | |
JP2002192814A (ja) | 印字属性印刷機能を備えた画像形成装置および印字属性印刷方法 | |
JP7342531B2 (ja) | プログラム及び情報処理装置 | |
JP2005258630A (ja) | データ転送装置、データ転送方法、及びプログラム | |
KR100548140B1 (ko) | 메뉴 트리의 수정이 가능한 화상형성시스템 및 그의제어방법 | |
JP2005189459A (ja) | プリント処理システム及び端末処理装置及び写真処理装置 |