(57)【要約】【課題】  ユーザが意図する印刷結果を矛盾なく出力することできる情報処理装置及びその制御方法、コンピュータプログラムを提供する。【解決手段】  入力された印刷用データに対する印刷設定を取得する。プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する。作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を設定する。取得した印刷設定によって指定されている機能に対する処理を、機能グループ毎に設定されている実行順番に従って印刷用データに適用する。処理を適用することによって生成した印刷データをプリンタに出力する。【選択図】  図１０
2008257468.tif 000002
【特許請求の範囲】
【請求項１】
プリンタに出力する印刷データを生成する情報処理装置であって、
入力された印刷用データに対する印刷設定を取得する取得手段と、
前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する作成手段と、
前記作成手段で作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を設定する設定手段と、
前記取得手段で取得した印刷設定によって指定されている機能に対する処理を、前記機能グループ毎に前記設定手段で設定されている実行順番に従って前記印刷用データに適用する適用手段と、
前記適用手段で前記処理を適用することによって生成した印刷データを前記プリンタに出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記印刷設定によって、異なる機能グループ間で同一の機能が重複している場合、その旨を示す警告情報を出力する警告情報出力手段を更に備える
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記作成手段は、前記機能を適用する前記印刷用データの処理単位となるページ属性別に、前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記ページ属性は、前記印刷データの処理単位が単一ページであるか複数ページであるかを示す情報である
ことを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記設定手段は、
前記機能グループ毎に、機能グループ内で配列される機能群の並び順と、その機能グループ内で前記印刷設定によって選択状態にある機能数に基づいて、前記機能群それぞれの優先度を算出する算出手段と
前記算出手段で算出した優先度に基づいて、前記実行順番を変更する変更手段と
を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項６】
プリンタに出力する印刷データを生成する情報処理装置の制御方法であって、
取得手段が、入力された印刷用データに対する印刷設定を取得する取得工程と、
作成手段が、前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する作成工程と、
設定手段が、前記作成工程で作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を各機能の優先度に基づいて設定する設定工程と、
適用手段が、前記取得工程で取得した印刷設定によって指定されている機能に対する処理を、前記機能グループ毎に前記設定工程で設定されている実行順番に従って前記印刷用データに適用する適用工程と、
出力手段が、前記適用工程で前記処理を適用することによって生成した印刷データを前記プリンタに出力する出力工程と
を備えることを特徴とする情報処理装置の制御方法。
【請求項７】
プリンタに出力する印刷データを生成する情報処理装置の制御をコンピュータに実行させるためのコンピュータプログラムであって、
取得手段が、入力された印刷用データに対する印刷設定を取得する取得工程と、
作成手段が、前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する作成工程と、
設定手段が、前記作成工程で作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を各機能の優先度に基づいて設定する設定工程と、
適用手段が、前記取得工程で取得した印刷設定によって指定されている機能に対する処理を、前記機能グループ毎に前記設定工程で設定されている実行順番に従って前記印刷用データに適用する適用工程と、
出力手段が、前記適用工程で前記処理を適用することによって生成した印刷データを前記プリンタに出力する出力工程と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【請求項８】
プリンタに出力される印刷データを作成する情報処理装置であって、
指定された機能の実行により矛盾が発生しないように分類された機能グループに所属する機能群を表示する表示手段と、
前記表示手段により表示された機能グループに所属する機能群から機能を選択する選択手段と、
前記選択手段により選択された機能に従って印刷データを作成する作成手段と
を備えることを特徴とする情報処理装置。
【請求項９】
プリンタに出力される印刷データを作成する情報処理方法であって、
表示手段が、指定された機能の実行により矛盾が発生しないように分類された機能グループに所属する機能群を表示する表示工程と、
選択手段が、前記表示工程により表示された機能グループに所属する機能群から機能を選択する選択工程と、
作成手段が、前記選択工程により選択された機能に従って印刷データを作成する作成工程と
を備えることを特徴とする情報処理方法。
【請求項１０】
プリンタに出力される印刷データを作成するコンピュータで実行されるコンピュータプログラムであって、
表示手段が、指定された機能の実行により矛盾が発生しないように分類された機能グループに所属する機能群を表示する表示工程と、
選択手段が、前記表示工程により表示された機能グループに所属する機能群から機能を選択する選択工程と、
作成手段が、前記選択工程により選択された機能に従って印刷データを作成する作成工程と
をコンピュータに実行させることを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタに出力する印刷データを生成する情報処理装置及びその制御方法、コンピュータプログラムに関するものである。
【背景技術】
【０００２】
従来、ホストコンピュータに接続されたプリンタによって印刷を行う際には、印刷実行者は、ホストコンピュータにインストールされているプリンタドライバのユーザインタフェースを用いて印刷処理方法等の印刷設定を行う。この印刷設定には、印刷データに対して指定した加工を施すことがある。
【０００３】
加工の種類を指定するための項目は、複数種類存在していて、指定する項目の組み合わせによっては実現される機能同士が干渉することもある。そのため、それらを考慮して、指定可能な項目を選別した上で、ユーザインタフェースに表示するものがある（例えば、特許文献１等）。また、設定された組み合わせをチェックし、機能の矛盾が起きている場合には、その矛盾を解消するように組み合わせを変更する処理を行うものもある（例えば、特許文献２等）。また、印刷設定により指定された加工処理の順番を、ユーザが任意に指定することで印刷時の加工処理順番の制御を行うものもある（例えば、特許文献３等）。
【特許文献１】特開平１１−８５４２２号公報
【特許文献２】特開２００２−２１５３５３号公報
【特許文献３】特開２００６−４８５３７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術においては、印刷設定の組み合わせが一定であっても実行順序を変えることで出力結果が異なることがある。このような場合に、実行順序も一意にプリンタドライバにより決定されると、ユーザが意図したとおりの結果にならない場合がある。さらに、この結果をうけて、ユーザが実行順序を任意に指定したとしても、そこから起こりうる実行順番による矛盾によりさらに設定が複雑となってしまっていた。
【０００５】
本発明は上記の課題を解決するためになされたものであり、ユーザが意図する印刷結果を矛盾なく出力することできる情報処理装置及びその制御方法、コンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、
プリンタに出力する印刷データを生成する情報処理装置であって、
入力された印刷用データに対する印刷設定を取得する取得手段と、
前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する作成手段と、
前記作成手段で作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を設定する設定手段と、
前記取得手段で取得した印刷設定によって指定されている機能に対する処理を、前記機能グループ毎に前記設定手段で設定されている実行順番に従って前記印刷用データに適用する適用手段と、
前記適用手段で前記処理を適用することによって生成した印刷データを前記プリンタに出力する出力手段と
を備える。
【０００７】
また、好ましくは、前記印刷設定によって、異なる機能グループ間で同一の機能が重複している場合、その旨を示す警告情報を出力する警告情報出力手段を更に備える。
【０００８】
また、好ましくは、前記作成手段は、前記機能を適用する前記印刷用データの処理単位となるページ属性別に、前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する。
【０００９】
また、好ましくは、前記ページ属性は、前記印刷データの処理単位が単一ページであるか複数ページであるかを示す情報である。
【００１０】
また、好ましくは、前記設定手段は、
前記機能グループ毎に、機能グループ内で配列される機能群の並び順と、その機能グループ内で前記印刷設定によって選択状態にある機能数に基づいて、前記機能群それぞれの優先度を算出する算出手段と
前記算出手段で算出した優先度に基づいて、前記実行順番を変更する変更手段と
を備える。
【００１１】
上記の目的を達成するための本発明による情報処理装置の制御方法は以下の構成を備える。即ち、
プリンタに出力する印刷データを生成する情報処理装置の制御方法であって、
取得手段が、入力された印刷用データに対する印刷設定を取得する取得工程と、
作成手段が、前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する作成工程と、
設定手段が、前記作成工程で作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を各機能の優先度に基づいて設定する設定工程と、
適用手段が、前記取得工程で取得した印刷設定によって指定されている機能に対する処理を、前記機能グループ毎に前記設定工程で設定されている実行順番に従って前記印刷用データに適用する適用工程と、
出力手段が、前記適用工程で前記処理を適用することによって生成した印刷データを前記プリンタに出力する出力工程と
を備える。
【００１２】
上記の目的を達成するための本発明によるコンピュータプログラムは以下の構成を備える。即ち、
プリンタに出力する印刷データを生成する情報処理装置の制御をコンピュータに実行させるためのコンピュータプログラムであって、
取得手段が、入力された印刷用データに対する印刷設定を取得する取得工程と、
作成手段が、前記プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する作成工程と、
設定手段が、前記作成工程で作成した機能グループ毎に、機能グループ内に所属する機能群の実行順番を各機能の優先度に基づいて設定する設定工程と、
適用手段が、前記取得工程で取得した印刷設定によって指定されている機能に対する処理を、前記機能グループ毎に前記設定工程で設定されている実行順番に従って前記印刷用データに適用する適用工程と、
出力手段が、前記適用工程で前記処理を適用することによって生成した印刷データを前記プリンタに出力する出力工程と
をコンピュータに実行させる。
【００１３】
上記の目的を達成するための本発明による情報処理装置は以下の構成を備える。即ち、
プリンタに出力される印刷データを作成する情報処理装置であって、
指定された機能の実行により矛盾が発生しないように分類された機能グループに所属する機能群を表示する表示手段と、
前記表示手段により表示された機能グループに所属する機能群から機能を選択する選択手段と、
前記選択手段により選択された機能に従って印刷データを作成する作成手段と
を備える。
【００１４】
上記の目的を達成するための本発明による情報処理方法は以下の構成を備える。即ち、
プリンタに出力される印刷データを作成する情報処理方法であって、
表示手段が、指定された機能の実行により矛盾が発生しないように分類された機能グループに所属する機能群を表示する表示工程と、
選択手段が、前記表示工程により表示された機能グループに所属する機能群から機能を選択する選択工程と、
作成手段が、前記選択工程により選択された機能に従って印刷データを作成する作成工程と
を備える。
【００１５】
上記の目的を達成するための本発明によるコンピュータプログラムは以下の構成を備える。即ち、
プリンタに出力される印刷データを作成するコンピュータで実行されるコンピュータプログラムであって、
表示手段が、指定された機能の実行により矛盾が発生しないように分類された機能グループに所属する機能群を表示する表示工程と、
選択手段が、前記表示工程により表示された機能グループに所属する機能群から機能を選択する選択工程と、
作成手段が、前記選択工程により選択された機能に従って印刷データを作成する作成工程と
をコンピュータに実行させる。
【発明の効果】
【００１６】
本発明によれば、ユーザが意図する印刷結果を矛盾なく出力することできる情報処理装置及びその制御方法、コンピュータプログラムを提供できる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態について図面を用いて詳細に説明する。
＜印刷システムの構成＞
図１は本発明の実施形態の印刷システムの構成を示すブロック図である。
【００１８】
尚、特に断らない限り、本発明の機能が実行されるのであれば、単体の機能であっても、複数の機器からなるシステムであっても本発明を適用できることは言うまでもない。更には、ＬＡＮ、ＷＡＮ等のネットワークを介して接続がなされ処理が行われるシステムであっても、本発明を適用できることは言うまでもない。
【００１９】
図１において、３０００はホストコンピュータ（情報処理装置）であり、ＣＰＵ１を備える。ＣＰＵ１は、ＲＯＭ３のプログラム用ＲＯＭ３ｂあるいは外部メモリ１１に記憶された文書処理プログラム（アプリケーションプログラム）等のプログラムに基づいて、図形、イメージ、文字、表（表計算等を含む）等の構成要素が混在した文書処理を実行する。更に、ＣＰＵ１は、ホストコンピュータ本体２０００内のシステムバス４に接続される各デバイスを総括的に制御する。
【００２０】
また、このＲＯＭ３のプログラム用ＲＯＭ３ｂあるいは外部メモリ１１には、ＣＰＵ１の制御プログラムであるオペレーティングシステムプログラム（以下、ＯＳ）等のプログラムも記憶している。また、ＲＯＭ３のフォント用ＲＯＭ３ａあるいは外部メモリ１１には、上記文書処理の際に使用するフォントデータ等のデータを記憶している。また、ＲＯＭ３のデータ用ＲＯＭ３ｃあるいは外部メモリ１１には、上記文書処理等の各種処理を行う際に使用する各種データを記憶する。
【００２１】
２はＲＡＭであり、ＣＰＵ１の主メモリ、ワークエリア等として機能する。５はキーボードコントローラ（ＫＢＣ）であり、キーボード（ＫＢ）９やポインティングデバイス（不図示）からのキー入力を制御する。６はＣＲＴコントローラ（ＣＲＴＣ）であり、ＣＲＴディスプレイ（ＣＲＴ）１０の表示を制御する。尚、ＣＲＴコントローラ６及びＣＲＴディスプレイ１０の代りに、ＬＣＤコントローラ及びＬＣＤを用いても良い。
【００２２】
７はディスクコントローラ（ＤＫＣ）であり、ブートプログラム、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル等の外部メモリ１１とのアクセスを制御する。さらに、ＤＫＣ７は、印刷制御コマンド生成プログラム（以下、プリンタドライバ）等の各種データを記憶する、ハードディスク（ＨＤ）、フロッピー（登録商標）ディスク（ＦＤ）等の外部メモリ１１とのアクセスも制御する。
【００２３】
８はプリンタコントローラ（ＰＲＴＣ）であり、所定の双方向インタフェース２１を介してプリンタ１５００に接続されて、プリンタ１５００との通信制御処理を実行する。双方向性インタフェースの例には、ＵＳＢインタフェース、ＩＥＥＥ１３９４インタフェース、無線ＬＡＮインタフェース等がある。
【００２４】
尚、ＣＰＵ１は、例えば、ＲＡＭ２上に設定された表示情報ＲＡＭへのアウトラインフォントの展開（ラスタライズ）処理を実行してＧＵＩを提供することで、ＣＲＴ１０上でのＷＹＳＩＷＹＧを可能としている。また、ＣＰＵ１は、ＣＲＴ１０上のマウスカーソル（不図示）等で指示されたコマンドに基づいて、登録された種々のウインドウを開き、種々のデータ処理を実行する。ユーザは、印刷を実行する際、印刷の設定に関するウインドウを開き、プリンタの設定や、印刷モードの選択を含むプリンタドライバに対する印刷方法の設定を行える。
【００２５】
プリンタ１５００において、１２はプリンタＣＰＵであり、プリンタＣＰＵ１２は、プリンタ制御部１０００内のシステムバス１５に接続される各デバイスを総括的に制御する。また、プリンタＣＰＵ１２は、ＲＯＭ１３のプログラム用ＲＯＭ１３ｂあるいは外部メモリ１４に記憶された制御プログラム等のプログラムに基づいて、システムバス１５に接続される印刷部（プリンタエンジン）１７に出力情報としての画像信号を出力する。
【００２６】
また、このＲＯＭ１３のプログラム用ＲＯＭ１３ｂには、プリンタＣＰＵ１２の制御プログラム等のプログラムを記憶している。また、ＲＯＭ１３のフォント用ＲＯＭ１３ａには、上記出力情報を生成する際に使用するフォントデータ等のデータを記憶している。また、ハードディスク（ＨＤ）、ＩＣカード等の外部メモリ１４がないプリンタの場合には、ＲＯＭ１３のデータ用ＲＯＭ１３ｃには、ホストコンピュータ３０００上で利用される情報等を記憶している。
【００２７】
プリンタＣＰＵ１２は、入力部１８を介してホストコンピュータ３０００との通信処理が可能となっており、プリンタ１５００内のステータス情報等の各種情報をホストコンピュータ３０００に通知可能に構成されている。１９はＣＰＵ１２の主メモリ、ワークエリア等として機能するＲＡＭである。このＲＡＭ１９は、増設ポート（不図示）に接続されるオプションＲＡＭによりメモリ容量を拡張することができるように構成されている。尚、ＲＡＭ１９は、出力情報展開領域、環境データ格納領域、ＮＶＲＡＭ等に用いられる。
【００２８】
外部メモリ１４は、メモリコントローラ（ＭＣ）２０によりアクセスが制御される。外部メモリ１４は、オプションとして接続され、フォントデータ、エミュレーションプログラム、フォームデータ等のデータを記憶する。また、１５０１は操作部であり、プリンタ１５００に対する各種操作を実現するための操作パネルやスイッチ、ＬＥＤ表示器等が構成されている。
【００２９】
また、外部メモリ１４は１個に限らず、少なくとも１個以上備え、内蔵フォントに加えてオプションフォントカード、言語系の異なるプリンタ制御言語を解釈するプログラムを格納した外部メモリを複数接続できるように構成されていても良い。さらに、ＮＶＲＡＭ（不図示）を有し、操作部１５０１からのプリンタモード設定情報を記憶するようにしてもよい。
【００３０】
印刷部１７は、本実施形態では、印刷方式として電子写真方式のプリンタエンジンを例に挙げて説明する。尚、本発明における印刷方式は、電子写真方式に限られないことはもちろんである。
【００３１】
次に、図１の印刷システムで印刷処理を実行するための機能構成について、図２を用いて説明する。
【００３２】
図２は本発明の実施形態の印刷システムで印刷処理を実行するための機能構成を示す図である。
【００３３】
アプリケーション２０１、グラフィックエンジン２０２、プリンタドライバ２０３及びシステムスプーラ２０４は、ホストコンピュータ３０００の外部メモリ１１に保存されたファイルとして存在する。そして、これらは、ホストコンピュータ３０００で動作するＯＳやそのモジュールを利用するモジュールによってＲＡＭ２にロードされて実行されるプログラムモジュールである。
【００３４】
また、アプリケーション２０１及びプリンタドライバ２０３は、外部メモリ１１あるいはネットワーク（不図示）を経由して外部メモリ１１に追加することが可能となっている。外部メモリ１１に保存されているアプリケーション２０１は、ＲＡＭ２にロードされて実行される。また、このアプリケーション２０１からプリンタ１５００に対して印刷を行う際には、同様に、ＲＡＭ２にロードされ実行可能となっているグラフィックエンジン２０２を利用して出力（描画）を行う。
【００３５】
グラフィックエンジン２０２は、プリンタ１５００毎に用意されたプリンタドライバ２０３を外部メモリ１１からＲＡＭ２にロードし、アプリケーション２０１の出力に処理を施した後、プリンタドライバ２０３に出力する。より具体的には、グラフィックエンジン２０２は、アプリケーション２０１から印刷設定もしくは印刷用データを受信して、プリンタドライバ２０３へ出力する。
【００３６】
プリンタドライバ２０３のＵＩ（ユーザインタフェース）コンポーネント２０５は、グラフィックエンジン２０２から印刷設定を受信し、印刷設定のＣＲＴ１０への表示、変更等の処理を行う。印刷設定の変更を行った場合は、プリンタドライバ２０３は、その変更した印刷設定をグラフィックエンジン２０２を通してアプリケーション２０１に返信する。
【００３７】
プリンタドライバ２０３のグラフィックコンポーネント２０６は、グラフィックエンジン２０２から印刷用データを受信し、プリンタ１５００が認識可能な制御コマンド、例えば、ＰＤＬ等のプリンタ制御コマンドに変換する。このプリンタ制御コマンドは、ＯＳによってＲＡＭ２にロードされたシステムスプーラ２０４を経て、双方向インタフェース２１経由でプリンタ１５００へ印刷データとして出力される。
【００３８】
尚、ＰＤＬとは、Ｐａｇｅ  Ｄｅｓｃｒｉｐｔｉｏｎ  Ｌａｎｇｕａｇｅの略称である。
【００３９】
＜印刷設定処理＞
次に、本発明における印刷設定処理について説明する。
【００４０】
まず、本発明の実施形態の印刷システムによる印刷設定に係るデータフローについて、図３を用いて説明する。
【００４１】
図３は本発明の実施形態の印刷システムによる印刷設定に係るデータフローを示す図である。尚、図３は、図２の構成要素の内、特に、印刷設定に係る構成要素の詳細構成を示すものである。
【００４２】
３０１は印刷設定制御部であり、印刷設定に係る禁則処理を行う。この禁則処理は、印刷設定に干渉が発生していないか否かを解析し、その解析結果に基づいて、その印刷設定を干渉が発生していない状態の印刷設定に変換する処理である。３０２はＵＩ表示部であり、禁則処理によって処理された印刷設定に基づいて、プリンタドライバユーザインタフェースの表示を行う。
【００４３】
３０３はアプリケーション２０１により設定されるアプリケーション印刷設定である。３０４はプリンタドライバ２０３により設定されるプリンタドライバ印刷設定である。ＵＩコンポーネント２０５は、アプリケーション印刷設定３０３を受信して、その内容を加工後、プリンタドライバ印刷設定３０４としてグラフィックエンジン２０２を介してアプリケーション２０１に返信する。
【００４４】
次に、プリンタドライバ２０３による印刷設定処理について、図４を用いて説明する。
【００４５】
図４は本発明の実施形態のプリンタドライバによる印刷設定処理を示すフローチャートである。
【００４６】
ステップＳ４０１で、ＵＩコンポーネント２０５は、アプリケーション印刷設定３０３を受信する。ステップＳ４０２で、ＵＩコンポーネント２０５は、受信したアプリケーション印刷設定３０３の解析を実行する。ステップＳ４０３で、ＵＩコンポーネント２０５は、アプリケーション印刷設定３０３に係る禁則処理として、そのアプリケーション印刷設定３０３を干渉の発生していない状態の印刷設定に変換する。ステップＳ４０４で、ＵＩコンポーネント２０５は、変換した印刷設定を有するプリンタドライバユーザインタフェース（ＵＩ）をＣＲＴ１０に表示する。
【００４７】
このプリンタドライバユーザインタフェースの一例を、図５Ａを用いて説明する。
【００４８】
図５Ａは本発明の実施形態のプリンタドライバユーザインタフェースの一例を示す図である。
【００４９】
プリンタドライバユーザインタフェース７０１は、アプリケーション印刷設定３０３を引き継ぎ、初期状態では、その設定内容を有する画面を表示する。ユーザは、このプリンタドライバユーザインタフェース７０１を介して、必要に応じて、その設定内容を適宜変更することが可能である。
【００５０】
プリンタドライバユーザインタフェース７０１において、７０２〜７０４はプリンタドライバユーザインタフェース７０１が保持する印刷機能の印刷設定の一部を実現するための各種コントロールである。例えば、プルダウンメニューであるコントロール７０２は、出力用紙サイズを変更するためのコントロールである。７０３はページレイアウトを変更するためのコントロールである。７０４はスタンプを付加、編集するためのコントロールである。
【００５１】
７０５は機能実行順番設定ボタンであり、印刷設定によって実行する機能の順番を制御（設定）するための機能実行順番変更ユーザインタフェース（図５Ｂ）を表示するためのボタンである。尚、機能実行順番変更ユーザインタフェースの詳細については後述する。
【００５２】
７０６はＯＫボタンであり、プリンタドライバユーザインタフェース７０１で設定される印刷設定を確定するためのボタンである。このＯＫボタン７０６が押下されると、プリンタドライバユーザインタフェース７０１で設定される印刷設定を印刷設定情報としてＲＡＭ２に記憶するとともに、プリンタドライバユーザインタフェース７０１の表示を終了する。
【００５３】
７０７はキャンセルボタンであり、プリンタドライバユーザインタフェース７０１で設定される印刷設定をキャンセルするためのボタンである。このキャンセルボタン７０７が押下されると、プリンタドライバユーザインタフェース７０１で設定される印刷設定をキャンセルして、プリンタドライバユーザインタフェース７０１の表示を終了する。
【００５４】
７０８は適用ボタンであり、プリンタドライバユーザインタフェース７０１で設定される印刷設定を一旦確定するためのボタンである。この適用ボタン７０８が押下されると、プリンタドライバユーザインタフェース７０１で設定される印刷設定を印刷設定情報として一旦確定する。但し、それ以降の印刷設定の変更を受付可能にするために、プリンタドライバユーザインタフェース７０１の表示は終了しない。
【００５５】
７０９はヘルプボタンであり、プリンタドライバユーザインタフェース７０１における印刷設定等に各種操作に関するヘルプ画面を表示するためのボタンである。
【００５６】
図４の説明に戻る。
【００５７】
ステップＳ４０５で、ＵＩコンポーネント２０５は、プリンタドライバユーザインタフェース７０１において、印刷設定の変更の有無を判定する。印刷設定の変更がある場合（ステップＳ４０５でＹＥＳ）、ステップＳ４０２に戻る。一方、印刷設定の変更がない場合（ステップＳ４０５でＮＯ）、ステップＳ４０６に進む。
【００５８】
尚、ここでの判定は、プリンタドライバユーザインタフェース７０１において、コントロール７０２〜７０４等の各種コントロールに対するユーザ操作によって、印刷設定の変更が指示されているか否かを検知することで実現する。
【００５９】
次に、ステップＳ４０６で、ＵＩコンポーネント２０５は、印刷設定によって実行する機能について、機能実行順番変更が指示されているか否かを判定する。機能実行順番変更が指示されている場合（ステップＳ４０６でＹＥＳ）、ステップＳ４０７に進む。一方、機能実行順番変更が指示されていない場合（ステップＳ４０６でＮＯ）、ステップＳ４０９に進む。
【００６０】
尚、ここで機能実行順番変更の指示の判定は、プリンタドライバユーザインタフェース７０１の機能実行順番設定ボタン７０５が押下された場合に、機能実行順番変更が指示されていると判定する。
【００６１】
ステップＳ４０７で、ＵＩコンポーネント２０５は、機能実行順番変更ユーザインタフェースを表示する。
【００６２】
この機能実行順番変更ユーザインタフェースの一例を、図５Ｂを用いて説明する。
【００６３】
図５Ｂは本発明の実施形態の機能実行順番変更ユーザインタフェースの一例を示す図である。
【００６４】
機能実行順番変更ユーザインタフェース７１０は、プリンタドライバ２０３によって実現される機能（プリンタ１５００で実行可能な機能）の実行順番を変更するためのユーザインタフェースである。特に、機能実行順番変更ユーザインタフェース７１０では、プリンタドライバユーザインタフェース７０１で設定されている印刷設定よって実行する機能の内、機能の適用順によっては、機能の干渉や矛盾が発生しない機能群を機能グループ別に管理している。
【００６５】
機能実行順番変更ユーザインタフェース７１０において、７１１〜７１４は機能グループをそれぞれ表している。各機能グループ７１１〜７１４には、機能グループに所属する機能（ページ枠や製本等）が適用される順番で上部から表示されている。
【００６６】
また、機能グループ中の各機能には、現在設定されている機能と設定されていない機能とを区別するためのチェックボックスが構成されている。チェックボックスにチェックがされている機能はその機能が設定されている状態を示し、チェックボックスにチェックがされていない機能はその機能が設定されていない状態を示している。
【００６７】
尚、各機能グループにおいて、処理対象として選択状態にある機能は、反転表示、ハイライト表示等の他の機能と識別可能な表示形態で表示される。
【００６８】
機能グループ７１１には、機能グループに所属する機能の適用順番を変更するための変更ボタン７１５及び７１６が構成されている。変更ボタン７１５は、機能グループに所属する選択状態にある機能を、機能グループ内の現在の位置から上部へ移動するためのボタンである。また、変更ボタン７１６は、機能グループに所属する選択状態にある機能を、機能グループ内の現在の位置から下部へ移動するためのボタンである。
【００６９】
機能グループ７１２、７１３及び７１４についても、機能グループ７１１と同様に、対応する変更ボタン７１７及び７１８、７１９及び７２０、及び７２１及び７２２が構成されている。
【００７０】
７２３はＯＫボタンであり、機能実行順番変更ユーザインタフェース７１０における各機能の設定状態を確定するためのボタンである。このＯＫボタン７２３が押下されると、その設定状態に変更があれば、プリンタドライバユーザインタフェース７０１で設定される対応する印刷設定に変更内容を反映するとともに、プリンタドライバユーザインタフェース７０１の表示に復帰する。
【００７１】
７２４はキャンセルボタンであり、機能実行順番変更ユーザインタフェース７１０における各機能の設定状態をキャンセルするためのボタンである。このキャンセルボタン７２４が押下されると、その設定状態に変更があれば、その設定状態をキャンセルして、プリンタドライバユーザインタフェース７０１の表示に復帰する。
【００７２】
７２５は追加ボタンであり、機能グループに新規の機能を追加するためのボタンである。この追加ボタン７２５が押下された場合には、追加可能な機能群から所望の機能を選択して追加するための機能リスト画面が表示される。７２６は削除ボタンであり、機能グループ内の選択状態にある機能を削除するためのボタンである。
【００７３】
このように、機能実行順番変更ユーザインタフェース７１０では、機能の設定状態の変更、機能の追加・削除を行うことが可能である。そして、機能の設定状態が変更された場合、あるいは追加ボタン７２５／削除ボタン７２６による機能の追加／削除が行われた場合、ステップＳ４０５における印刷設定の変更があると判定する。
【００７４】
これにより、変更後の印刷設定に対して、ステップＳ４０２〜ステップＳ４０４の処理が再度実行されることになる。また、この時のステップＳ４０４の処理では、プリンタドライバユーザインタフェース７０１においては、選択されている機能のみについての印刷設定を表示するようにすることも可能である。
【００７５】
また、機能実行順番変更ユーザインタフェース７１０では、例えば、機能グループ７１１と７１３内の機能「スタンプ」のように、同一あるいは類似の機能を重複させて存在させることも可能である。特に、重複する機能が複数選択された場合には、その旨を示す警告情報（警告画面）を出力（警告情報出力）して注意を促すことも可能である。
【００７６】
ここで、この警告画面の一例について、図５Ｃを用いて説明する。
【００７７】
図５Ｃは本発明の実施形態の警告画面の一例を示す図である。
【００７８】
警告画面７３０は、機能実行順番変更ユーザインタフェース７１０で、異なる機能グループ間で同一の機能が重複して選択されている場合に、その旨を示す警告画面である。
【００７９】
警告画面７３０において、７３１はＯＫボタンである。このＯＫボタン７３１を押下すると、異なる機能グループ間で同一の機能を重複させて存在させることを確定する。７３２はキャンセルボタンである。このキャンセルボタン７３２を押下すると、重複する機能の内、１つの機能だけを残して、残りを削除する。あるいは、警告画面を出力することなく、異なる機能グループ間で同一の機能が重複して選択されている場合には、重複する機能の内、１つの機能だけを残して、残りを削除することも可能である。ここで、削除対象とする機能の選定は、例えば、機能グループに対して算出される優先コード（優先度）に基づいて行う。
【００８０】
図４の説明に戻る。
【００８１】
ステップＳ４０８で、ＵＩコンポーネント２０５は、機能実行順番変更ユーザインタフェース７１０に対する操作に基づいて、機能実行順番を変更する。この際、機能実行順番変更ユーザインタフェース７１０における各機能グループの各機能を実行する優先度を示す優先コードを、機能グループ内で配列される機能の並び順と選択状態の機能数に基づいて算出する。そして、算出した優先コードに従って、適用する機能の機能実行順番を設定（変更）する。尚、この処理の詳細については後述する。
【００８２】
ステップＳ４０９で、ＵＩコンポーネント２０５は、設定された機能実行順番に基づいて、現在の印刷設定を変更して、その変更した印刷設定をプリンタドライバ印刷設定３０４として作成する。
【００８３】
次に、ステップ４０７の処理の詳細について、図６を用いて説明する。
【００８４】
図６は本発明の実施形態のステップＳ４０７の処理の詳細を示すフローチャートである。
【００８５】
ステップＳ５０１で、受信した印刷設定から機能の取得を行う。ステップＳ５０２で、取得した機能が順番変更可能機能であるか否かを判定する。順番変更可能機能である場合（ステップＳ５０２でＹＥＳ）、ステップＳ５０３に進む。順番変更可能機能でない場合（ステップＳ５０２でＮＯ）、ステップＳ５０８に進む。
【００８６】
ステップＳ５０３で、取得した機能が所属する機能グループを示す所属機能グループ属性と、その機能に対応する優先コードを取得する。尚、処理対象の機能が、順番変更可能であるか否かの情報、所属機能グループ属性及び優先コードに関する情報は、ＵＩコンポーネント２０５が予め保持してもよいし、外部ファイルとして提供されていてもよい。
【００８７】
ステップＳ５０４で、取得した機能を所属機能グループ属性に従って、機能グループに追加する。
【００８８】
ステップＳ５０５で、取得した機能がプリンタドライバユーザインタフェース７０１において、現在、選択状態であるか否かを判定する。選択状態である場合（ステップＳ５０５でＹＥＳ）、ステップＳ５０６に進む。そして、ステップＳ５０６で、機能実行順番変更ユーザインタフェース７１０において、その機能を選択状態で表示する。図５（ｂ）の例では、該当する機能のチェックボックスにチェックをすることで、その機能を選択状態で表示する。
【００８９】
一方、選択状態でない場合（ステップＳ５０５でＮＯ）、ステップＳ５０７に進む。そして、ステップＳ５０７で、機能実行順番変更ユーザインタフェース７１０において、その機能を非選択状態で表示する。図５（ｂ）の例では、該当する機能のチェックボックスにチェックをしないことで、その機能を非選択状態で表示する。
【００９０】
ステップＳ５０８で、印刷設定から取得される全機能に対する処理が終了したか否かを判定する。処理が終了していない場合（ステップＳ５０８でＮＯ）、ステップＳ５０１へ戻る。一方、終了している場合（ステップＳ５０８でＹＥＳ）、処理を終了する。
【００９１】
次に、ステップＳ４０８の処理の詳細について、図７を用いて説明する。
【００９２】
図７は本発明の実施形態のステップＳ４０８の処理の詳細を示すフローチャートである。この処理は、機能適用順番変更における優先コードの設定に関するフローチャートである。
【００９３】
この処理は、図５（ｂ）の機能実行順番変更ユーザインタフェース７１０において、ＯＫボタン７２３が押下されると、機能グループ毎に各機能の優先コードの算出を実行する。
【００９４】
まず、ステップＳ６０１で、対象の機能グループにおいて選択されている機能数Ｎを取得する。ステップＳ６０２で、処理数をカウントするための機能インデックス値ｉを０に設定する。ステップＳ６０３で、ｉを１加算する。ステップＳ６０４で、機能実行順番変更ユーザインタフェース７１０の対象の機能グループに表示されている機能の内、チェック（選択）状態にある機能を上部から１つ取得する。ステップＳ６０５で、取得した機能の優先コードＰを算出する。算出方法としての一例は、下記のようになる。
【００９５】
Ｐ＝ｉ×（１／Ｎ）
算出結果として得られる優先コードＰは、０〜１の範囲の値が割り当てられる。そして、その算出した優先コードＰを取得した機能に設定する。
【００９６】
次に、ステップＳ６０７で、ｉ＝Ｎであるか否か、つまり、対象の機能グループにおいて選択状態の全機能の優先コードを算出したか否かを判定する。ｉ＝Ｎでない場合（ステップＳ６０７でＮＯ）、ステップＳ６０３に戻る。一方、ｉ＝Ｎである場合（ステップＳ６０７でＹＥＳ）、処理を終了する。
【００９７】
以上、これらの優先コードの算出処理を、機能グループ毎に行う。また、この処理によって、各機能についての機能情報を得ることができる。
【００９８】
次に、この機能情報の一例について、図８を用いて説明する。
【００９９】
図８は本発明の実施形態の機能についての機能情報の一例を示す図である。
【０１００】
図８に示す機能情報は、プリンタドライバ２０３のＵＩコンポーネント２０５より作成される印刷設定の各機能が保持する情報の一例である。また、機能情報の形態としては、ＸＭＬのようなテキスト形式でもよいし、バイナリデータとして存在してもよい。更に、この機能情報は、プリンタドライバ２０３が保持してもよいし、外部ファイルとして存在してもよい。
【０１０１】
８０１は機能自身を特定するための属性であり、例えば、名前やＩＤ等の情報である。８０２は機能固有の属性を示す情報である。例えば、ページレイアウト機能であれば、１ページにＮページをまとめて配置して印刷するような機能（Ｎ  ｉｎ  １やＮＵｐ）におけるＮが、機能固有の属性に相当する。
【０１０２】
８０３は機能が所属する機能グループを示す属性である。ここで、機能グループは、機種毎にプリンタドライバが保持する全機能に対し、その適用順番の変更が自由であり、かつ順番の変更により干渉が発生しない機能群を集めて構成したものである。
【０１０３】
本実施形態においては、例として、機能が所属する機能グループのグループ属性として、単一論理ページ、複数論理ページ、単一物理ページ、複数物理ページを機能の対象とするグループに分類する。また、ここでいう機能グループは、機能グループとして一意に実行される順番は特定される。
【０１０４】
本実施形態においては、例えば、単一論理ページ機能グループ、複数論理ページ機能グループ、単一物理ページ機能グループ、複数物理ページ機能グループの順番で、各機能グループ内の機能が適用されていくものとする。但し、順番の変更により干渉が発生しない機能を集めるという条件を満足すれば、どのように機能グループを形成してもかまわない。
【０１０５】
８０４は機能に対して算出された優先コードを示す属性である。ここで、優先コードとは各機能グループにおいて各機能がどのような順番で実行されるかを特定するための情報である。また、本実施形態では、優先コードは、図７の処理によって算出する構成としているが、これに限定されない。例えば、使用するプリンタドライバが既知の場合には、通常は、そのプリンタドライバが保持する機能も既知であるため、各機能に対応する優先コードをプリンタドライバ２０３が予め保持してもよい。
【０１０６】
＜印刷実行処理＞
次に、本発明における印刷実行処理について説明する。
【０１０７】
まず、本発明の実施形態の印刷システムによる印刷実行処理に係るデータフローについて、図９を用いて説明する。
【０１０８】
図９は本発明の実施形態の印刷システムによる印刷実行処理に係るデータフローを示す図である。尚、図９は、図２の構成要素の内、特に、印刷実行処理に係る構成要素の詳細構成を示すものである。
【０１０９】
９０６は入出力管理部であり、印刷用データ９０７をグラフィックエンジン２０２から入力するとともに、最終的に生成した印刷データ９０８をシステムスプーラを介して出力する。９０１は印刷機能制御部であり、印刷設定から得られる機能を、機能グループ９０２〜９０５に分類するとともに、その適用順番を制御する。
【０１１０】
次に、プリンタドライバ２０３による印刷実行処理について、図１０を用いて説明する。
【０１１１】
図１０は本発明の実施形態のプリンタドライバによる印刷実行処理を示すフローチャートである。
【０１１２】
ステップＳ１００１で、入出力管理部９０６は、アプリケーション２０１が作成した印刷用データ９０７をグラフィックエンジン２０２を通じて取得もしくは受信する。ステップＳ１００２で、印刷機能制御部９０１は、印刷用データ９０７から印刷設定を取得し、解析を行う。ステップＳ１００３で、印刷機能制御部９０１は、解析した印刷設定から印刷用データ９０７に適用可能な機能（適用機能）を、各機能グループ９０２〜９０４の内、適用可能な機能グループに格納（設定）する。
【０１１３】
尚、本実施形態では、機能グループ９０２（機能グループＡ）は、単一論理ページを対象とする機能とする。機能グループ９０３（機能グループＢ）は、複数論理ページを対象とする機能とする。機能グループ９０４（機能グループＣ）は、単一物理ページを対象とする機能とする。機能グループ９０５（機能グループＤ）は、複数物理ページを対象とする機能とする。また、ステップＳ１００２及びステップＳ１００３の処理の詳細については、図１１を用いて後述する。
【０１１４】
ステップＳ１００４で、印刷用データ９０７に対する印刷設定によって実行する各機能を適用する。尚、ステップＳ１００４の処理の詳細については、図１２を用いて後述する。
【０１１５】
ステップＳ１００５で、入出力管理部９０６は、機能を適用済の印刷用データをプリンタ１５００が理解可能な形式、例えば、ＰＤＬ等の印刷データ９０８に変換して作成する。そして、その印刷データ９０８をシステムスプーラ２０４を通して、プリンタ１５００へ送信し、処理を終了する。
【０１１６】
次に、ステップＳ１００２（印刷実行時の機能グループの作成に関する処理）の詳細について、図１１を用いて説明する。
【０１１７】
図１１は本発明の実施形態のステップＳ１００２の処理の詳細を示すフローチャートである。
【０１１８】
ステップＳ１１０１で、印刷機能制御部９０１は、機能グループ９０２〜９０４を作成する。ステップＳ１１０２で、取得した印刷設定から印刷機能制御部９０１がサポートしている機能（適用機能）を取得する。ステップＳ１１０３で、取得した機能の所属グループ属性８０３を取得する。ステップ１１０４で、取得した機能の所属グループ属性８０３に基づいて、機能グループ９０２〜９０４の内、その機能を適用可能な機能グループに取得した機能を格納する。
【０１１９】
ステップ１１０５で、印刷設定から得られる印刷機能制御部９０１がサポートしている全機能についての機能グループの格納が終了したか否かを判定する。格納が終了していない場合（ステップＳ１１０５でＮＯ）、ステップＳ１１０２に戻る。一方、格納が終了している場合（ステップＳ１１０５でＹＥＳ）、ステップＳ１１０６に進む。
【０１２０】
ステップＳ１１０６で、機能グループに格納されている機能の実行順番を、優先コード８０４に基づいて変更する（並び替える）。
【０１２１】
次に、ステップＳ１００３（機能適用の処理）の詳細について、図１２を用いて説明する。
【０１２２】
図１２は本発明の実施形態のステップＳ１００３の処理の詳細を示すフローチャートである。
【０１２３】
ステップＳ１２０１で、印刷機能制御部９０１は、現在実行対象となっている機能グループ（９０２〜９０４のいずれか）に問い合わせ、印刷用データ９０７から得られる入力ページ数Ｓの取得を行う。ステップＳ１２０２で、現在、印刷機能制御部９０１が保持している実行対象となっている機能グループの入力ページ数Ｎを取得する。
【０１２４】
ステップＳ１２０３で、ＳとＮとを比較し、ＮがＳ以上であるか否かを判定する。ＮがＳ以上である場合（ステップＳ１２０３でＹＥＳ）、ステップＳ１２０４に進む。一方、ＮがＳ未満である場合（ステップＳ１２０３でＮＯ）、ステップＳ１２０５に進む。
【０１２５】
ステップＳ１２０４で、対象となっている機能グループに格納されている機能を優先コードに従い並べられた順番で印刷用データ９０７中の処理対象のページデータに対して適用して実行する。
【０１２６】
ステップＳ１２０５で、全機能グループの機能の印刷データへの適用が終了したか否かを判定する。終了していない場合（ステップＳ１２０５でＮＯ）、ステップＳ１２０１に戻る。一方、終了している場合（ステップＳ１２０５でＹＥＳ）、処理を終了する。
【０１２７】
尚、本処理は、印刷用データからページデータを取得する毎に実行し、最終ページデータを取得時には、本処理とあわせジョブ終了処理として、適用する機能に合わせた処理を実行する。
【０１２８】
＜印刷機能の分類及び実行順番による出力結果の相違点について＞
図１３は本発明の実施形態の機能の分類例を示す図である。
【０１２９】
分類方法として、機能間の適用順番変更による干渉の発生を防止するために、機能適用対象ページの属性を考慮する。ここで、本実施形態では、対象ページの属性として、論理ページ、物理ページを想定している。つまり、本実施形態では、機能を適用する印刷データの処理単位となるページ属性別に、プリンタで実行可能な機能群から、その実行順番の変更により矛盾が発生しない機能群毎の機能グループを作成する。
【０１３０】
ここで、論理ページとは、アプリケーションが作成する論理的なページを意味する。また、物理ページとは、アプリケーションが作成した論理ページを元に最終的にプリンタにて印刷結果として出力される物理用紙と同様の座標により表されるページを意味する。
【０１３１】
本実施形態では、論理ページの機能は物理ページの機能より前に存在（処理）しなければならないという条件を考慮に入れて、論理ページ、物理ページの機能を異なる機能として分類している。
【０１３２】
また、本実施形態では、論理ページ、物理ページ共に、印刷用データから得られる入力ページ数にも着目し、単一ページのものと複数ページのものとで分類している。これは機能実行の際のパフォーマンスを向上させることが目的となっている。さらには、これらをさらに細かく分類して、必要入力ページ数によって機能グループを作成してもよい。
【０１３３】
図１３では、単一論理ページ、複数論理ページ、単一物理ページ、複数物理ページを機能の対象とするグループに分類した場合の分類機能例である。単一論理ページ対象機能としては、ページ枠、スタンプ、ポスター、拡縮等が考えられる。複数論理ページ対象機能としては、製本印刷機能やＮＵｐ機能等が考えられる。単数物理ページ対象機能としては、拡縮、スタンプ、綴じ代等が考えられる。複数物理ページ対象機能としては、コレート印刷、逆順印刷等が考えられる。
【０１３４】
これらの分類は、プリンタドライバ毎にて独自に持つこととなり、印刷設定時にこれらの分類に従い設定がなされ印刷設定が作成される。そして、作成された印刷設定に基づいて、印刷が実行されることになる。
【０１３５】
図１４は本発明の実施形態の印刷実行時に機能の適用順番を変化させることで得られる出力結果の相違例を示す図である。
【０１３６】
図１４（ａ）は、単一論理ページ対象機能のスタンプ、拡縮の内の縮小を選択し、優先コードとしてはスタンプ、縮小の順で実行するように設定する。さらに、複数論理ページ対象機能としてＮＵｐ機能を選択している。
【０１３７】
図１４（ｂ）は、単一論理ページ対象機能のスタンプ、拡縮の内の縮小を選択し、優先コードとしては縮小、スタンプの順で実行するように設定する。さらに、複数論理ページ対象機能としてＮＵｐ機能を選択している。
【０１３８】
図１４（ｃ）は、複数論理ページ対象機能としてＮＵｐ機能を選択している。さらに、単一物理ページ対象機能のスタンプ、拡縮の内の縮小を選択し、優先コードとしては、縮小、スタンプの順で実行するように設定する。
【０１３９】
図１４（ｄ）は、複数論理ページ対象機能としてＮＵｐ機能を選択している。さらに、単一物理ページ対象機能のスタンプ、拡縮の内の縮小を選択し、優先コードとしては、スタンプ、縮小の順で実行するように設定する。
【０１４０】
ユーザは、図１４に示すような出力結果を考慮して、機能の順番を機能の順番を容易に制御し、自身が意図する出力結果を得ることが可能となる。
【０１４１】
以上説明したように、本実施形態によれば、ユーザは、印刷設定を行う際に印刷設定を組み合わせて設定した際に、その印刷設定によって実行する機能の順番による矛盾を考慮することなく容易に、実行順番を設定することが可能になる。これにより、ユーザは意図したとおりの印刷結果を得ることが可能となる。
【０１４２】
以上、実施形態例を詳述したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
【０１４３】
尚、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラム（実施形態では図に示すフローチャートに対応したプログラム）を、システムあるいは装置に直接あるいは遠隔から供給する。そして、そのシステムあるいは装置のコンピュータが該供給されたプログラムコードを読み出して実行することによっても達成される場合を含む。
【０１４４】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１４５】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であっても良い。
【０１４６】
プログラムを供給するための記録媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスクがある。また、更に、記録媒体としては、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などがある。
【０１４７】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、その接続先のホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１４８】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１４９】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。また、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現され得る。
【０１５０】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によっても前述した実施形態の機能が実現される。
【図面の簡単な説明】
【０１５１】
【図１】本発明の実施形態の印刷システムの構成を示すブロック図である。
【図２】本発明の実施形態の印刷システムで印刷処理を実行するための機能構成を示す図である。
【図３】本発明の実施形態の印刷システムによる印刷設定に係るデータフローを示す図である。
【図４】本発明の実施形態のプリンタドライバによる印刷設定処理を示すフローチャートである。
【図５Ａ】本発明の実施形態のプリンタドライバユーザインタフェースの一例を示す図である。
【図５Ｂ】本発明の実施形態の機能実行順番変更ユーザインタフェースの一例を示す図である。
【図５Ｃ】本発明の実施形態の警告画面の一例を示す図である。
【図６】本発明の実施形態のステップＳ４０７の処理の詳細を示すフローチャートである。
【図７】本発明の実施形態のステップＳ４０８の処理の詳細を示すフローチャートである。
【図８】本発明の実施形態の機能についての機能情報の一例を示す図である。
【図９】本発明の実施形態の印刷システムによる印刷実行処理に係るデータフローを示す図である。
【図１０】本発明の実施形態のプリンタドライバによる印刷実行処理を示すフローチャートである。
【図１１】本発明の実施形態のステップＳ１００２の処理の詳細を示すフローチャートである。
【図１２】本発明の実施形態のステップＳ１００３の処理の詳細を示すフローチャートである。
【図１３】本発明の実施形態の機能の分類例を示す図である。
【図１４】本発明の実施形態の印刷実行時に機能の適用順番を変化させることで得られる出力結果の相違例を示す図である。
【符号の説明】
【０１５２】
１  ＣＰＵ
２  ＲＡＭ
３  ＲＯＭ
４  システムバス
５  ＫＢＣ（キーボードコントローラ）
６  ＣＲＴＣ（ＣＲＴコントローラ）
７  ＤＫＣ（ディスクコントローラ）
８  ＰＲＴＣ（プリンタコントローラ）
９  ＫＢ（キーボード）
１０  ＣＲＴ
１１  外部メモリ
１２  ＣＰＵ
１３  ＲＯＭ
１４  外部メモリ
１５  システムバス
１６  印刷部Ｉ／Ｆ
１７  印刷部
１８  入出力部
１９  ＲＡＭ
２０  ＭＣ（メモリコントローラ）
２１  双方向インタフェース
１０００  プリンタ制御部
１５００  プリンタ
１５０１  操作部
３０００  ホストコンピュータ
【図１】
2008257468.tif 000003
【図２】
2008257468.tif 000004
【図３】
2008257468.tif 000005
【図４】
2008257468.tif 000006
【図５Ａ】
2008257468.tif 000007
【図５Ｂ】
2008257468.tif 000008
【図５Ｃ】
2008257468.tif 000009
【図６】
2008257468.tif 000010
【図７】
2008257468.tif 000011
【図８】
2008257468.tif 000012
【図９】
2008257468.tif 000013
【図１０】
2008257468.tif 000014
【図１１】
2008257468.tif 000015
【図１２】
2008257468.tif 000016
【図１３】
2008257468.tif 000017
【図１４】
2008257468.tif 000018