(57)【要約】【課題】印刷制御の設定と設定画面のカスタマイズを簡便に行うことが可能な印刷制御装置、設定画面制御方法、及び設定画面制御プログラムを提供する。【解決手段】印刷制御装置１００は、画像形成装置２００の印刷動作を制御する装置であって、印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、画像形成装置２００に装着可能なオプション機器及び／又は画像形成装置２００の提供機能に関する情報や、画像形成装置２００に対応する印刷制御設定画面Ｗのレイアウトに関する情報が定義された機種依存データ５１ｎを解析するデータ解析手段４１と、  データ解析手段４１による解析結果から得られる、印刷制御設定画面Ｗを制御するときに用いる制御値に基づき、印刷制御設定画面Ｗの生成や表示を制御する設定画面制御手段２１と、を有することを特徴とする。【選択図】図４
2010026656.tif 000002
【特許請求の範囲】
【請求項１】
画像形成装置の印刷動作を制御する印刷制御装置であって、
印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、前記画像形成装置に装着可能なオプション機器及び／又は前記画像形成装置の提供機能に関する情報や、前記画像形成装置に対応する印刷制御設定画面のレイアウトに関する情報が定義された機種依存データを解析するデータ解析手段と、
前記データ解析手段による解析結果から得られる、前記印刷制御設定画面を制御するときに用いる制御値に基づき、前記印刷制御設定画面の生成や表示を制御する設定画面制御手段と、を有することを特徴とする印刷制御装置。
【請求項２】
当該印刷制御装置は、
前記印刷制御設定画面を制御するときに用いる制御値が設定された画面制御設定データを生成するデータ生成手段を有し、
前記設定画面制御手段は、
前記データ生成手段により前記画面制御設定データが生成された場合に、
生成された画面制御設定データに設定される制御値に基づき、前記印刷制御設定画面の生成や表示を制御することを特徴とする請求項１に記載の印刷制御装置。
【請求項３】
前記データ生成手段は、
印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品により実現されることを特徴とする請求項２に記載の印刷制御装置。
【請求項４】
前記設定画面制御手段は、
前記データ解析手段による解析結果から得られる、前記印刷制御設定画面のレイアウトに関する制御値に基づいて、
前記印刷制御設定画面の画面領域内における画面を構成するグラフィック部品の配置を制御することを特徴とする請求項１ないし３のいずれか一項に記載の印刷制御装置。
【請求項５】
前記設定画面制御手段は、
前記データ解析手段による解析結果から得られる、前記画像形成装置に装着可能なオプション機器に関する制御値に基づいて、
前記印刷制御設定画面における使用可能なオプション機器の表示を制御することを特徴とする請求項１ないし４のいずれか一項に記載の印刷制御装置。
【請求項６】
前記設定画面制御手段は、
前記データ解析手段による解析結果から得られる、前記画像形成装置の提供機能に関する制御値に基づいて、
前記印刷制御設定画面における使用可能な提供機能の表示を制御することを特徴とする請求項１ないし５のいずれか一項に記載の印刷制御装置。
【請求項７】
前記設定画面制御手段は、
前記画像形成装置の提供機能に関する制御値である、前記提供機能の有効化又は無効化を示す値に基づいて、
前記提供機能の表示又は非表示を制御することを特徴とする請求項６に記載の印刷制御装置。
【請求項８】
前記設定画面制御手段は、
前記画像形成装置の提供機能に関する制御値である、前記提供機能に対する制御設定の設定変更可否を示す値に基づいて、
前記提供機能を、半輝度の状態で表示するように制御することを特徴とする請求項６又は７に記載の印刷制御装置。
【請求項９】
当該印刷制御装置は、
データ解析対象の機種依存データを指定するデータ指定手段を有し、
前記データ解析手段は、
前記データ指定手段により指定された機種依存データを解析することを特徴とする請求項１ないし８のいずれか一項に記載の印刷制御装置。
【請求項１０】
画像形成装置の印刷動作を制御する印刷制御装置における設定画面制御方法であって、
印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、前記画像形成装置に装着可能なオプション機器及び／又は前記画像形成装置の提供機能に関する情報や、前記画像形成装置に対応する印刷制御設定画面のレイアウトに関する情報が定義された機種依存データを解析するデータ解析手順と、
前記データ解析手順による解析結果から得られる、前記印刷制御設定画面を制御するときに用いる制御値に基づき、前記印刷制御設定画面の生成や表示を制御する設定画面制御手順と、を有することを特徴とする設定画面制御方法。
【請求項１１】
画像形成装置の印刷動作を制御する印刷制御装置における設定画面制御プログラムであって、
コンピュータを、
印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、前記画像形成装置に装着可能なオプション機器及び／又は前記画像形成装置の提供機能に関する情報や、前記画像形成装置に対応する印刷制御設定画面のレイアウトに関する情報が定義された機種依存データを解析するデータ解析手段と、
前記データ解析手段による解析結果から得られる、前記印刷制御設定画面を制御するときに用いる制御値に基づき、前記印刷制御設定画面の生成や表示を制御する設定画面制御手段として機能させる設定画面制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタドライバなどの印刷制御ソフトウェアを搭載した印刷制御装置に関し、特に、印刷制御ソフトウェアが提供する印刷制御設定画面（ＵＩ画面）をカスタマイズする技術に関するものである。
【背景技術】
【０００２】
ユーザは、アプリケーションソフトウェアなどにより作成・編集した文書データなどを印刷する場合に、使用しているＰＣ（Personal Computer）にインストールされたプリンタドライバ（印刷制御ソフトウェア）を介して、接続されるプリンタなどの画像形成装置に印刷データを送信し印刷を行う。このとき、プリンタドライバは、文書データなどのアプリケーションデータを、画像形成装置が印刷処理可能なデータ形式に変換し、変換後のデータを送信している。
【０００３】
このように、プリンタドライバにおいて実現される機能は、画像形成装置に搭載されている機能のスペックに依存している。
【０００４】
そのため、ユーザは、画像形成装置ごとに互換性のあるプリンタドライバを入手し、ＰＣにインストールする必要があり、その対応作業は煩雑である。
【０００５】
また、画像形成装置を製造するメーカーは、製品ごとのプリンタドライバを開発し、ユーザに対して提供する必要があり、製品の多いメーカーにとって多大な負担となる。
【０００６】
そこで、特許文献１には、「画像形成装置に共通するプリンタドライバが、データ通信可能な画像形成装置から当該装置の性質（アトリビュート）を示す構成データを取得し、取得した構成データに基づいて印刷処理を行う」ことによって、開発者が画像形成装置ごとに異なるプリンタドライバを開発しなくてもよく、また、ユーザが画像形成装置ごとの印刷環境に容易に対応することができるプリンタドライバのカスタマイズ手法が提案されている。
【特許文献１】特開２００５−３０２０３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、特許文献１に開示されたプリンタドライバのカスタマイズ手法では、画像形成装置が有する機能の有無（提供機能の状態）を、動的にプリンタドライバへ反映させることは可能であるが、ユーザがプリンタドライバの設定画面を介して変更した印刷制御の各種設定（ユーザ独自の設定）までを反映させることはできない。
【０００８】
例えば、ユーザが使用するＰＣを、新しいＰＣに入れ替える作業を行った場合、新しいＰＣから、以前と同じように画像形成装置を利用するためには、プリンタドライバをインストールする必要がある。そのため、新しいＰＣ環境において、ユーザは、プリンタドライバをインストール後に、再び印刷制御の設定変更を行わなければならない。この作業は、ユーザにとって煩雑なものである。さらに、システム管理者の場合では、入れ替える台数が多ければ、設定変更作業を繰り返して行わなければならず、手間がかかり煩雑さが増す。
【０００９】
また、従来のプリンタドライバでは、印刷制御の設定環境としてユーザに提供されるユーザインタフェース（ＵＩ）について、カスタマイズすることができない。
【００１０】
現在の画像形成装置は、情報処理技術の高度化やユーザニーズの多様化などに伴い、単体で様々な機能を提供可能な構成となっている。これに対応するように、現在のプリンタドライバは、画像形成装置が有する機能を制御するための様々な設定が可能で、その設定画面の内容は複雑化してきている。
【００１１】
そこで、プリンタドライバでは、ユーザビリティ向上の観点から、画像形成装置が有する機能の有無だけでなく、ユーザによる設定変更の内容も、設定画面へ動的に反映する（ユーザによって変更された印刷制御項目を設定済み状態にする）機能の提供や、ユーザが使用用途に応じて、必要な設定画面を選択決定できるなどの設定画面のカスタマイズが可能な機能を提供することが望まれる。
【００１２】
本発明では、上記従来技術の問題点を鑑み提案されたものであり、その目的とするところは、印刷制御の設定と設定画面のカスタマイズを簡便に行うことが可能な印刷制御装置、設定画面制御方法、及び設定画面制御プログラムを提供することにある。
【課題を解決するための手段】
【００１３】
上記目的を達成するため、本発明にあっては、印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、前記画像形成装置に装着可能なオプション機器及び／又は前記画像形成装置の提供機能に関する情報や、前記画像形成装置に対応する印刷制御設定画面のレイアウトに関する情報が定義された機種依存データを解析するデータ解析手段と、前記データ解析手段による解析結果から得られる、前記印刷制御設定画面を制御するときに用いる制御値に基づき、前記印刷制御設定画面の生成や表示を制御する設定画面制御手段と、を有する印刷制御装置を要旨としている。
【００１４】
このような構成によって、本発明に係る印刷制御装置は、プリンタドライバを構成するソフトウェア部品群に含まれない、印刷制御対象である画像形成装置に依存する機器・機能情報や画面レイアウト情報が定義される機種依存データを解析し、その解析結果から得られるＵＩドライバにより生成・表示される印刷制御設定画面の制御に用いる各種制御値に基づいて、プリンタドライバが提供する印刷制御設定画面の生成・表示、また、プリンタドライバが提供する各種機能の有効化／無効化、設定変更の可否、さらに、設定画面を構成するグラフィック部品の配置（レイアウト）などを制御する。
【００１５】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記印刷制御設定画面を制御するときに用いる制御値が設定された画面制御設定データを生成するデータ生成手段を有し、前記設定画面制御手段が、前記データ生成手段により前記画面制御設定データが生成された場合に、生成された画面制御設定データに設定される制御値に基づき、前記印刷制御設定画面の生成や表示を制御することを特徴とする。
【００１６】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記データ生成手段が、印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品により実現されることを特徴とする。
【００１７】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記設定画面制御手段が、前記データ解析手段による解析結果から得られる、前記印刷制御設定画面のレイアウトに関する制御値に基づいて、前記印刷制御設定画面の画面領域内における画面を構成するグラフィック部品の配置を制御することを特徴とする。
【００１８】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記設定画面制御手段が、前記データ解析手段による解析結果から得られる、前記画像形成装置に装着可能なオプション機器に関する制御値に基づいて、前記印刷制御設定画面における使用可能なオプション機器の表示を制御することを特徴とする。
【００１９】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記設定画面制御手段が、前記データ解析手段による解析結果から得られる、前記画像形成装置の提供機能に関する制御値に基づいて、前記印刷制御設定画面における使用可能な提供機能の表示を制御することを特徴とする。
【００２０】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記設定画面制御手段が、前記画像形成装置の提供機能に関する制御値である、前記提供機能の有効化又は無効化を示す値に基づいて、前記提供機能の表示又は非表示を制御することを特徴とする。
【００２１】
また、上記目的を達成するため、本発明に係る印刷制御装置は、前記設定画面制御手段が、前記画像形成装置の提供機能に関する制御値である、前記提供機能に対する制御設定の設定変更可否を示す値に基づいて、前記提供機能を、半輝度の状態で表示するように制御することを特徴とする。
【００２２】
また、上記目的を達成するため、本発明に係る印刷制御装置は、データ解析対象の機種依存データを指定するデータ指定手段を有し、前記データ解析手段が、前記データ指定手段により指定された機種依存データを解析することを特徴とする。
【００２３】
これによって、本発明の印刷制御装置は、印刷制御の設定と設定画面のカスタマイズを簡便に行うことができる。
【００２４】
上記目的を達成するため、本発明に係る設定画面制御方法は、画像形成装置の印刷動作を制御する印刷制御装置における制御方法であって、印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、前記画像形成装置に装着可能なオプション機器及び／又は前記画像形成装置の提供機能に関する情報や、前記画像形成装置に対応する印刷制御設定画面のレイアウトに関する情報が定義された機種依存データを解析するデータ解析手順と、前記データ解析手順による解析結果から得られる、前記印刷制御設定画面を制御するときに用いる制御値に基づき、前記印刷制御設定画面の生成や表示を制御する設定画面制御手順と、を有することを特徴とする。
【００２５】
このような手順によって、本発明に係る設定画面制御方法は、印刷制御装置において、プリンタドライバを構成するソフトウェア部品群に含まれない、印刷制御対象である画像形成装置に依存する機器・機能情報や画面レイアウト情報が定義される機種依存データを解析し、その解析結果から得られるＵＩドライバにより生成・表示される印刷制御設定画面の制御に用いる各種制御値に基づいて、プリンタドライバが提供する印刷制御設定画面の生成・表示、また、プリンタドライバが提供する各種機能の有効化／無効化、設定変更の可否、さらに、設定画面を構成するグラフィック部品の配置（レイアウト）などを制御する設定画面制御動作を実現する。
【００２６】
これによって、本発明に係る設定画面制御方法は、印刷制御の設定と設定画面のカスタマイズを簡便に行うことが可能な印刷制御の設定環境を提供できる。
【００２７】
上記目的を達成するため、本発明に係る設定画面制御プログラムは、画像形成装置の印刷動作を制御する印刷制御装置におけるプログラムであって、コンピュータを、印刷制御機能を実現するソフトウェア部品群とは別のソフトウェア部品として、前記画像形成装置に装着可能なオプション機器及び／又は前記画像形成装置の提供機能に関する情報や、前記画像形成装置に対応する印刷制御設定画面のレイアウトに関する情報が定義された機種依存データを解析するデータ解析手段と、前記データ解析手段による解析結果から得られる、前記印刷制御設定画面を制御するときに用いる制御値に基づき、前記印刷制御設定画面の生成や表示を制御する設定画面制御手段として機能させる。
【発明の効果】
【００２８】
本発明によれば、プリンタドライバを構成するソフトウェア部品群に含まれない、印刷制御対象である画像形成装置に依存する機器・機能情報や画面レイアウト情報が定義される機種依存データを基に、プリンタドライバが提供する印刷制御設定画面表示や画面構成を制御可能な構成としたことにより、印刷制御の設定と設定画面のカスタマイズを簡便に行うことができる。
【発明を実施するための最良の形態】
【００２９】
以下、本発明の好適な実施の形態（以下、「実施形態」という。）について、図面を用いて詳細に説明する。
【００３０】
［第１の実施形態］
＜システム構成＞
まず、本実施形態に係る印刷システムについて説明する。図１は、本発明の第１の実施形態に係る印刷システム１の構成例を示す図である。
【００３１】
図１に示すように、印刷システム１は、プリンタドライバなどの印刷制御ソフトウェアを搭載し、印刷時の動作設定や印刷の実行指示などを行う印刷制御装置１００と、印刷指示を受け付けると、指定された動作設定に従って印刷を行う画像形成装置２００とから構成され、それぞれがネットワークなどのデータ伝送路９０に接続されている。
【００３２】
このような構成により、印刷制御装置１００において、ユーザがアプリケーションソフトウェアなどにより作成・編集した文書の印刷データを、プリンタドライバを介して画像形成装置２００へ送信し、画像形成装置２００において、受信した印刷データを基に印刷を行うことができる。
【００３３】
なお、図１では、印刷制御装置１００と画像形成装置２００とが直接データ伝送路９０で接続される例を示したが、これに限らず、複数の印刷制御装置１００及び画像形成装置２００が、有線及び／又は無線回線により構築されたＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network）などのネットワーク（データ通信網）を介して接続される構成であっても良く、互いの装置間でデータ通信が可能なシステム環境であれば良い。
【００３４】
＜ハードウェア構成＞
続いて、本実施形態に係る印刷制御装置１００のハードウェア構成について説明する。図２は、本発明の第１の実施形態に係る印刷制御装置１００のハードウェア構成例を示す図である。
【００３５】
図２に示すように、印刷制御装置１００は、入力装置１０１と、表示装置１０２と、ドライブ装置１０３と、ＲＡＭ（Random Access Memory）１０４と、ＲＯＭ（Read Only Memory）１０５と、ＣＰＵ（Central Processing Unit）１０６と、インタフェース装置１０７と、ＨＤＤ（Hard Disk Drive）１０８とから構成され、それぞれバスで相互に接続されている。
【００３６】
入力装置１０１は、キーボード及びマウスなどで構成され、印刷制御装置１００に各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイなどで構成され、印刷制御装置１００による処理結果などを表示する。
【００３７】
インタフェース装置１０７は、印刷制御装置１００をデータ伝送路９０に接続するインタフェースである。データ伝送路９０には、例えばＵＳＢ（Universal Serial Bus）ケーブルやネットワークケーブルなどが挙げられる。印刷制御装置１００は、インタフェース装置１０７を介して画像形成装置２００などの外部機器とのデータ通信を行う。なお、本実施形態に係るインタフェース装置１０７では、有線によるデータ通信を一例としているが、無線通信装置（非図示）を、インタフェース装置１０７を介して接続し、データ通信を行う構成であっても良い。
【００３８】
ＨＤＤ１０８は、大容量の記憶領域を備えた不揮発性の記憶装置である。ＨＤＤ１０８には、例えば、印刷制御装置１００全体を制御し、基本情報処理システムを提供するプログラムやデータ、また、情報処理システムにおいて各種機能（例えば「印刷制御機能やデータ通信機能」などのアプリケーション）を提供するプログラムやデータなどが格納されている。また、ＨＤＤ１０８は、格納しているこれらのプログラムやデータを、所定のファイルシステムやＤＢ（Data Base）により管理する。
【００３９】
なお、上記プログラムやデータは、例えばＣＤ（Compact Disk）などの記録媒体１０３ａによって印刷制御装置１００に提供されるか、データ伝送路９０からインタフェース装置１０７を介してダウンロードされる。その中で、記録媒体１０３ａから提供される場合は、記録媒体１０３ａを読み取り可能なドライブ装置１０３を介してＨＤＤ１０８にインストールされる。
【００４０】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、印刷制御装置１００が起動されるときに実行される起動システム（例えばＢＩＯＳ（Basic Input/Output System）など）を提供するプログラムやデータ、また、印刷制御装置１００の各種システム設定やネットワーク関連の設定などのデータが格納されている。
【００４１】
一方、ＲＡＭ１０４は、上記各種記憶装置から読み出されたプログラムやデータを一時保持する揮発性の半導体メモリ（記憶装置）である。
【００４２】
ＣＰＵ１０６は、ＲＡＭ１０４に読み出されたプログラムを実行し、印刷制御装置１００全体を制御するとともに、印刷制御装置１００が提供する各種機能を実現する。
【００４３】
＜ソフトウェア構成＞
続いて、本実施形態に係る印刷制御装置１００のソフトウェア構成について説明する。なお、以下の説明では、印刷制御機能に関する構成についてのみ説明する。
【００４４】
図３は、本発明の第１の実施形態に係る印刷制御装置１００のソフトウェア構成例を示す図である。
【００４５】
本実施形態に係る印刷制御装置１００は、主に、ＵＩドライバ２１と、画像処理ドライバ２２と、データ通信ドライバ２３とから構成されるソフトウェア部品群（プリンタドライバ）によって、ユーザに提供する印刷制御機能を実現している。
【００４６】
ＵＩドライバ２１は、印刷制御機能のＵＩ機能を実現するソフトウェア部品群であり、印刷制御に関する設定画面の生成・表示などを制御する各種プログラムやデータにより構成される。
【００４７】
画像処理ドライバ２２は、印刷データに対して、指定された設定に従って所定の画像処理を施す機能を実現するソフトウェア部品群であり、印刷データによる描画命令から中間データ（例えば、「印刷制御コード」や「描画コマンド」など。）を生成する前処理２２ａや、中間データから画像形成装置２００が印刷処理可能なデータ（ＰＤＬ（Page Description Language）データ）への変換や画像を編集（集約や回転）する後処理２２ｂを行う各種プログラムやデータにより構成される。
【００４８】
データ通信ドライバ２３は、インタフェース装置１０７を介して、印刷制御装置１００と画像形成装置２００との間でデータ通信を行う機能を実現するソフトウェア部品群である。より具体的には、データ通信ドライバ２３は、各種通信ポートへの対応を制御するマルチポートマネージャ２３ａと、データ通信に関する複数のモジュールから共通して利用されるＤＬＬ（Dynamic Link Library）であるリソースＤＬＬ２３ｂやデータＤＬＬ２３ｃと、画像形成装置２００と双方向のデータ通信を行いながら、後処理後のデータ（例えば「ＰＤＬデータ」など）を転送するランゲージモニタ２３ｄとの各種プログラムやデータにより構成される。
【００４９】
また、印刷制御機能は、上記ソフトウェア部品群の他に、印刷制御装置１００に搭載された基本情報処理システムであるＯＳ（Operating System）が有するＧＤＩ（Graphic Device Interface）１１、スプーラ１２、ローカルポートモニタ１３などを用いて機能を実現している。
【００５０】
これらのソフトウェア部品群により構成された印刷制御装置１００では、プリンタドライバが、アプリケーションＡＰにより生成されたデータの印刷実行指示を受け付けると、次のような印刷制御処理を実行する。
【００５１】
印刷制御装置１００では、まず、アプリケーションＡＰが、ＧＤＩ１１に対して、予め定められたＯＳに依存する形式の出力コマンドを渡す（ＧＤＩ関数を呼ぶ）。また、このとき、プリンタドライバが有するＵＩドライバ２１により受け付けた印刷実行時の動作設定（印刷条件設定）も印刷制御値としてＧＤＩ１１へと渡される。
【００５２】
ＧＤＩ１１は、受け取った出力コマンドと印刷制御値とに応じた描画命令を、プリンタドライバが有する画像処理ドライバ２２の前処理２２ａへと渡す。
【００５３】
画像処理ドライバ２２では、前処理２２ａが、受け取った描画命令から中間データを生成し、後処理２２ｂが、生成された中間データを、画像形成装置２００が印刷処理可能なデータに変換し、その後、後処理２２ｂによって、変換後のデータがスプーラ１２へと渡される。
【００５４】
スプーラ１２は、変換後のデータを、プリンタドライバが有するデータ通信ドライバ２３のランゲージモニタ２３ｄへ渡す。
【００５５】
データ通信ドライバ２３では、ランゲージモニタ２３ｄにより、印刷制御装置１００と画像形成装置２００とが、どのようなデータ伝送路９０によって接続されデータ通信可能な状態となっているかを確認し、確認されたデータ伝送路９０に応じて、マルチポートマネージャ２３ａ又はローカルポートモニタ１３のどちらか一方へ、変換後のデータが渡される。
【００５６】
このとき、マルチポートマネージャ２３ａにデータが渡された場合には、マルチポートマネージャ２３ａが、リソースＤＬＬ２３ｂ及びデータＤＬＬ２３ｃを利用して、データ通信に関する所定の処理（例えば「双方向通信」など。）を行う。
【００５７】
その結果、変換後のデータが、マルチポートマネージャ２３ａから、印刷制御装置１００が備えるインタフェース装置１０７を介して、画像形成装置２００へ送信される。
【００５８】
以上のように、印刷制御装置１００では、上記ハード及びソフトウェア構成により、例えば、ユーザが動作中のアプリケーションＡＰにおいて［印刷］メニューを選択指示したことを受けて、プリンタドライバのプログラムが、ハードディスク１０８からＲＡＭ１０４に読み出され、ＣＰＵ１０６により実行され、上記印刷制御処理を行うことで、印刷対象であるアプリデータを基に生成された印刷データ（画像形成装置２００が印刷処理可能なデータ）を画像形成装置２００へ送信することができる。
【００５９】
なお、前述したソフトウェア構成及び印刷制御機能の動作は、印刷制御装置１００が搭載するＯＳが、米国Ｍｉｃｒｏｓｏｆｔ（登録商標）社のＷｉｎｄｏｗｓ（登録商標）であった場合の一例である。
【００６０】
＜設定画面制御機能＞
ここからは、前述したソフトウェア構成を踏まえて、印刷制御装置１００が有する印刷制御機能において動作する設定画面制御処理について説明する。
【００６１】
上記設定画面制御処理は、前述した印刷制御機能を実現するプリンタドライバにおいて、ＵＩドライバ２１により行われる。
【００６２】
ＵＩドライバ２１により行われる設定画面制御処理では、印刷実行時の動作設定などの画像形成装置２００が有する印刷機能に関する各種設定を受け付ける設定画面（ＵＩ画面）の生成・表示などの動作を制御することで、印刷制御の設定や設定画面のカスタマイズなどを、ユーザが簡便に行うことが可能な環境を提供する。
【００６３】
以下に、上記設定画面制御機能を実現する機能構成とその動作について説明する。
【００６４】
《機能構成》
図４は、本発明の第１の実施形態に係る設定画面制御機能の構成例を示す図である。図４に示すように、設定画面制御機能は、主に、ＵＩドライバ２１が有する（実現する）初期化部３１と、機種依存データ指定部３２と、画面制御部３３と、機能制御部３４との複数の機能部と、ＵＩドライバ２１のソフトウェア部品群と異なり、独立したソフトウェア部品（異なるプログラム）により機能実現されるデータ生成部４１とから構成される。
【００６５】
初期化部３１は、ＵＩドライバ２１が動作を開始したときに初期化処理を行う。初期化部３１が行う初期化処理には、指定された表示コントロールの親画面の決定や、設定画面制御に用いる各制御値の設定（Ｄｅｖｍｏｄｅメンバの設定）などがある。
【００６６】
上記各制御値の設定は、例えばＨＤＤ１０８などの記憶装置に格納される、設定画面制御に用いる各制御値が設定された画面制御設定データ（プリンタドライバ用データ）５２ｎを基に行う。また、上記画面制御設定データ５２ｎが、ＨＤＤ１０８に格納されていない場合には、後述するデータ生成部４１に対して機種依存データ５１ｎのデータ解析及び画面制御設定データ５２ｎの生成を要求し、その応答として取得した解析結果を基に行う。
【００６７】
機種依存データ指定部３２は、データ生成部４１により読み込む、画像形成装置２００が装着可能なオプション構成指定、及び機能の有効化／無効化や設定変更可否指定と言った画像形成装置２００に依存する機器・機能情報、ならびに、印刷制御設定画面の構成などの画面レイアウト情報が定義された機種依存データ５１ｎの指定を行う。
【００６８】
上記機種依存データ５１ｎは、ＨＤＤ１０８に格納されており、機種依存データ指定部３２は、データ格納先を、ファイルパスやＵＲＬ（Uniform Resource Locator）などによって指定する。
【００６９】
画面制御部３３は、初期化部３１によって設定された各制御値に従って、設定画面の生成・表示を制御する。画面制御部３３が行う設定画面制御処理には、印刷制御設定画面を構成するグラフィック部品群の選択や画面上での配置（レイアウト）などがある。
【００７０】
機能制御部３４は、初期化部３１はよって設定された各制御値に従って、印刷制御機能の有効化／無効化（画像形成装置２００による提供機能の使用許可／不許可）、また、その設定変更可否などを制御する。
【００７１】
データ生成部４１は、初期化部３１からの要求に応じて、機種依存データ指定部３２により指定された機種依存データ５１ｎから画面制御設定データ５２ｎを生成する。このとき、データ生成部４１は、機種依存データ５１ｎに対してデータ解析を行い、解析結果を基に画面制御設定データ５２ｎを生成し、ＨＤＤ１０８にデータファイルとして出力し格納する。また、データ生成部４１は、機種依存データ５１ｎの解析結果を、前述した初期化部３１へ渡す。
【００７２】
このように、設定画面制御機能は、ＵＩドライバ２１が有する上記各機能部と、ＵＩドライバ２１から独立して機能するデータ生成部４１とが、機種依存データ５１ｎと画面制御設定データ５２ｎとを介して連携動作することで機能を実現している。
【００７３】
これにより、データ生成部４１は、複数のＵＩドライバ２１（プリンタドライバ）から共通して利用することができる。その結果、プリンタドライバを構成するソフトウェア部品群のデータ量を軽減することができる。つまり、複数のプリンタドライバにおいて、利用モジュールの共通化を図ることができる。
【００７４】
さらに、機種依存データ５１ｎのデータ形式などの変更に伴う対応も、データ生成部４１のみで行うことができ、プリンタドライバの保守・管理を簡便に行うことができる。
【００７５】
また、画像形成装置２００に依存する機器・機能情報を、機種ごとに対応した１つの機種依存データ５１ｎとして管理する。従来では、画像形成装置２００に依存する各種情報を、ＵＩドライバ２１のソフトウェア部品に含めて管理していたが、本実施形態では、ＵＩドライバ２１と異なり独立したデータファイル、すなわち外部ファイルとして管理する。
【００７６】
さらに、機種依存データ５１ｎを基に画面制御設定データ５２ｎを動的に生成する。
【００７７】
これにより、機種依存データ５１ｎを追加・削除することで、印刷環境の変化に柔軟に対応することができる。
【００７８】
続いて、設定画面制御機能における上記各機能の連携動作と、設定画面制御時に使用される各種データの詳細について説明する。
【００７９】
《機能の基本動作》
図５は、本発明の第１の実施形態に係るＵＩドライバ２１の印刷制御設定画面（ＵＩ画面）を表示する処理手順例を示すフローチャートである。なお、図５に示す処理手順では、画面制御設定データ５２ｎが、まだ生成されていない場合（まだ、所定の記憶装置に格納されていない場合）を想定したものである。
【００８０】
各機能部の説明において前述したように、初期化部３１は、画面制御設定データ５２ｎが生成されていない場合に、データ生成部４１へデータの生成を要求し、一度、データが生成されると、明示的にその内容の変更が要求されない限り、生成を行わない。
【００８１】
図５に示すように、ＵＩドライバ２１は、まず、初期化部３１が、機種依存データ指定部３２により、機種依存データ５１ｎの格納先が指定されているか否かを判定し（ステップＳ１０１）、指定されていると判定された場合には（ステップＳ１０１：ＹＥＳ）、指定された格納先から機種依存データ５１ｎを取得する（ステップＳ１０２）。
【００８２】
次に、初期化部３１は、取得した機種依存データ５１ｎをデータ生成部４１へ渡し（データ生成を指示し）、データ生成部４１が、機種依存データ５１ｎのデータ解析を行う（ステップＳ１０３）。
【００８３】
続いて、データ生成部４１は、その解析結果を、要求元の初期化部３１へ応答すると伴に、解析結果を基に、画面制御設定データ５２ｎを生成し（ステップＳ１０４）、データファイルとしてＨＤＤ１０８へ格納（ファイル出力）する（ステップＳ１０５）。
【００８４】
その後、初期化部３１は、データ生成部４１から取得した解析結果を基に、設定画面制御に用いる各制御値を設定し、画面制御部３３及び機能制御部３４に対して動作指示する。その結果、画面制御部３３及び機能制御部３４が、各制御値に従って、設定画面の生成・表示と、印刷制御機能の有効化／無効化、また設定変更可否などを制御し、表示装置１０２の表示画面に、これらの制御結果が反映された印刷制御設定画面（ＵＩ画面）が表示される（ステップＳ１０６）。
【００８５】
一方、ステップＳ１０１において、機種依存データ５１ｎが指定されていないと判定された場合には（ステップＳ１０１：ＮＯ）、ステップＳ１０６の処理へ移行し、既存の画面制御設定データ５２ｎを基に印刷制御設定画面を表示する。
【００８６】
《使用データの構成》
以下に、上記ステップＳ１０３において、データ生成部４１がデータ解析を行う機種依存データ５１ｎについて説明する。
【００８７】
図６から図７は、本発明の第１の実施形態に係る機種依存データ５１の構成例（その１〜３）を示す図である。
【００８８】
機種依存データ５１ｎには、主に、（Ａ）オプション構成指定、（Ｂ）機能の有効化／無効化や設定変更の可否指定、（Ｃ）画面レイアウト指定の３種類の情報（機器・機能情報と画面レイアウト情報）を定義できる。図６には、上記（Ａ）の情報が定義されたデータ構成例、図７には、上記（Ｂ）の情報が定義されたデータ構成例、図８には、上記（Ｃ）の情報が定義されたデータ構成例それぞれが示されている。なお、図６から図８では、上記（Ａ）から（Ｃ）の情報が、それぞれ別の機種依存データ５１１から５１３として定義されている例が示されているが、１つのデータファイルとしてまとめられていても良い。
【００８９】
（Ａ）オプション構成指定
図６に示すように、オプション構成指定が定義された機種依存データ５１１は、オプションの名称（OptionName）に対して、オプションのＤｅｖｍｏｄｅ（DevmodeLayout）、Ｄｅｖｍｏｄｅのタイプ（Type）、オプションの種類（OptionType）、オプションの属性（Attribute）、及びオプションの使用可否（Use）の複数の情報項目が対応付けられたデータ構成となっている。
【００９０】
この中で、オプションの属性の定義により、    設定画面制御時において、印刷制御設定画面上に表示させる印刷制御設定可能なオプション候補を制御する。さらに、設定可能なオプションに対しては、オプションの使用可否の定義により、オプションを使用するか否かを制御する。
【００９１】
（Ｂ）機能の有効化／無効化や設定変更の可否指定
図７に示すように、機能の有効化／無効化や設定変更の可否指定が定義された機種依存データ５１２は、機能の名称（FunctionName）に対して、機能のＤｅｖｍｏｄｅ（DevmodeLayout）、Ｄｅｖｍｏｄｅのタイプ（Type）、機能の有効化／無効化（Enable）、機能の初期値（Value）、及び機能の設定変更可否（Limitation）の複数の情報項目が対応付けられたデータ構成となっている。
【００９２】
この中で、機能の有効化／無効化の定義により、設定画面制御時において、印刷制御設定画面上に対象機能を表示するか否かを制御する。さらに、有効な機能に対しては、機能の設定変更可否の定義により、常にその機能を使用する（機能を固定化する）ように制御する。
【００９３】
例えば、常にその機能を使用するように制御された場合には、印刷制御設定画面上のチェックボックスがチェックされ、半輝度状態で表示されることになり、ユーザが設定変更などの操作を行うことができない。この設定画面制御の具体的な利用例としては、管理者が「不正コピー抑止」（CopyProtect）の機能に対して、機種依存データ５１２内の該当する機能の設定変更可否を「否：Limitation＝Ｙｅｓ」（変更不可）に設定することで固定化し、常にコピー抑止の地紋印刷が行われ、情報を一律的に管理することができるなどが挙げられる。なお、図７では、設定変更可能な不正コピー抑止機能のデータ例が示されている。
【００９４】
（Ｃ）画面レイアウト指定
図８に示すように、画面レイアウト指定が定義された機種依存データ５１３は、機能の名称（FunctionName）に対して、機能のＤｅｖｍｏｄｅ（DevmodeLayout）、Ｄｅｖｍｏｄｅのタイプ（Type）、コントロールを表示（配置）する元の画面（親画面）の指定（Dialog）、コントロールの種類（Class）、コントロールの縦・横オフセット（OffsetX,OffsetY）、コントロールの幅・高さ（SizeX,SizeY）の複数の情報項目が対応付けられたデータ構成となっている。
【００９５】
この中で、コントロールを表示（配置）する元の画面（親画面）を指定する定義を基に、設定画面制御時において、印刷制御設定画面上に対象機能の設定を行う表示コントロールを、プリンタドライバが有する複数画面のうち、どの画面に表示するかを制御する。
【００９６】
また、表示コントロールに対しては、コントロールの種類の定義を基に、チェックボックス、ラジオリスト、リストボックス、コンボボックスなどの複数のグラフィック部品種のうち、どの種類を使用するか制御する。
【００９７】
さらに、コントロールの縦・横オフセットや幅・高さの定義を基に、印刷制御画面上のコントロールの配置位置や表示サイズの大きさなどを制御する。なお、オフセットで定義される値は、画面左上を起点とした二次元空間上の移動距離である。
【００９８】
このようなデータ構成から、上記機種依存データ５１ｎでは、新たなオプション装置や拡張機能への対応を、上記データ構成が既存データに追加されることで対応できる。
【００９９】
また、上記機種依存データ５１ｎは、Ｅｘｃｅｌ（登録商標）データやＣＳＶデータと言った形式で記述されており、データ編集用の特殊なソフトウェアを必要とせず、定義内容を変更可能となっている。なお、上記機種依存データ５１ｎでは、テーブル形式のデータ構成例を示したが、オプションや機能の名称から、対応する定義情報が参照可能な構成であれば良い。
【０１００】
そのため、例えば、技術的に知識がある開発者や管理者などが定義内容を変更する場合には、データを直接参照しテキスト編集で対応可能であり、一方、一般ユーザが変更する場合には、予め、機種依存データ５１ｎの簡易編集ツールを用意し、この編集ツールを介しての定義変更を行えるようにしても良い。さらには、上記（Ｃ）の画面レイアウト指定の場合には、より設定変更が容易に行えるように、機種依存データ５１３の編集をＧＵＩ（Graphic User Interface）を介して行うことが可能な画面レイアウト編集ツールを提供しても良い。
【０１０１】
また、一般ユーザが上記（Ａ）の機種依存データ５１１を変更する場合には、オプションの名称とその使用可否の定義内容を変更するだけで、他の情報項目（例えば「対応するＤｅｖｍｏｄｅ」や「Ｄｅｖｍｏｄｅのタイプ」など）については、変更後にデータ保存する際、動的に定義されるようにしても良い。上記（Ｂ）の機種依存データ５１２や上記（Ｃ）の機種依存データ５１３の場合も同様であり、技術的な知識がない一般的なユーザであっても容易に変更可能な構成とする（技術的に知識が必要な箇所は変更対象としない構成とする）。
【０１０２】
ここで、上記Ｄｅｖｍｏｄｅについて簡単に説明する。「Ｄｅｖｍｏｄｅ」とは、提供機能、レイアウト設定、仕上げ設定、給紙・排紙設定、印字品質設定などの画像形成装置２００に関するデフォルトの動作条件を含む各種設定を記憶するために、米国Ｍｉｃｒｏｓｏｆｔ（登録商標）社が規定したＤｅｖｍｏｄｅ構造体を示し、Ｄｅｖｍｏｄｅメンバとは、Ｄｅｖｍｏｄｅ構造体のメンバを示す。この構造体には、基本部分と拡張部分がある。この基本部分のデータ構造は一般に公開されている。このため、基本部分は、テキスト化して可視的にプログラミングすることも可能である。そして、拡張部分とは、各社が比較的自由に機能拡張可能なフィールドである。
【０１０３】
このように、機種依存データ５１ｎでは、そのデータ構成の中で、上記（Ａ）から（Ｃ）の指定において関連するＤｅｖｍｏｄｅ構造体に関する情報を定義しておくことで、データ生成部４１によってデータ解析後、初期化部３１により、解析結果から得られた画面制御設定データ５２ｎ内の各種制御値を、適切なＤｅｖｍｏｄｅ構造体のメンバに設定することができる。その結果、画面制御部３３や機能制御部３４により、各制御処理を行うことが可能となる。
【０１０４】
図９は、本発明の第１の実施形態に係る機種依存データ５１ｎと画面制御設定データ５２ｎとの関係を示す図である。
【０１０５】
機種依存データ５１ｎでは、前述した各種設定項目により、オプション構成指定、機能の有効化／無効化や設定変更の可否指定、画面レイアウト指定の３種類の指定が可能であり、これらの指定は、出力オプション（例えば「フィニッシャー」や「排紙トレイ」など）、入力オプション（例えば「給紙トレイ」など）、キャパビリティ（例えば「使用可能用紙サイズ」や「紙種」など）などの単位で、機器・機能固有の情報に対して行うことができる。
【０１０６】
これらの機種依存データ５１ｎは、例えば、プリンタドライバのインストールキット（ディスクキット）に同梱させ、ドライバインストール時に、印刷制御装置１００が備えるＨＤＤ１０８の所定の記憶領域に格納する。
【０１０７】
また、機種依存データ５１ｎは、ファイル化されており、プリンタドライバとは別に用意することができる。そのため、印刷制御装置１００に、単独でプリンタドライバをインストールした後に、機種依存データ５１ｎのファイルのみを、所定の記憶領域に格納しても良い。
【０１０８】
さらに、機種依存データ５１ｎは、同一の印刷制御装置１００内に、複数個存在しても良く、前述したが、機種依存データ指定部３２により明示的にデータを指定したり、予め決められた格納先やファイル名などを基に、複数個の中から１つのデータファイルを特定したりすることができる。
【０１０９】
このようにして、印刷制御装置１００内で、プリンタドライバとは別の形態で管理される機種依存データ５１ｎは、プリンタドライバとは別のソフトウェア部品により機能実現されるデータ生成部４１によりデータ解析後、解析結果を基に、プリンタドライバ用データである画面制御設定データ５２ｎが生成され、データファイルとして保存される。
【０１１０】
その結果、例えば、プリンタドライバは、起動時にＵＩドライバ２１により、保存されている画面制御設定データ５２ｎを参照し、印刷制御設定画面を生成・表示する。
【０１１１】
このように、一度、機種依存データ５１ｎから画面制御設定データ５２ｎを生成すると、明示的に設定変更を行わない限り、プリンタドライバは、生成された画面制御設定データ５２ｎを基に、印刷制御設定画面を生成・表示する。
【０１１２】
これにより、プリンタドライバでは、起動時に、機種依存データ５１ｎの取得やデータ変換処理などを、その都度行う必要がないため、起動時間の短縮が期待できる。
【０１１３】
《設定画面表示例》
図１０は、本発明の第１の実施形態に係る印刷制御設定画面（ＵＩ画面）Ｗの表示例を示す図である。
【０１１４】
印刷制御装置１００では、前述した設定画面制御機能により、図１０に示すように、機種依存データ５１ｎの定義に基づき動的にカスタマイズされた印刷制御設定画面Ｗを、表示装置１０２の表示画面に表示する。
【０１１５】
《設定画面制御の詳細な動作》
では、前述した機種依存データ５１ｎの定義内容から画面制御設定データ５２ｎを生成したり、各種制御値を基に印刷制御設定画面を生成・表示したりする機能動作について説明する。なお、以降に説明する処理手順は、ＵＩドライバ２１が印刷制御設定画面Ｗを表示するときに実行される処理である。
【０１１６】
（Ａ）設定画面制御：オプション構成指定
図１１は、本発明の第１の実施形態に係る画面制御設定データ５２ｎの構成例（その１）を示す図である。
【０１１７】
データ生成部４１は、オプション構成指定が定義された機種依存データ５１１を基に、図１１に示すような制御値で構成される画面制御設定データ５２１を生成する。
【０１１８】
画面制御設定データ５２１は、機器情報管理テーブルと、テーブル内で管理される各機器情報（図中の「オプション情報」）の詳細な情報項目値（制御値）とから構成される。図１１には、機器情報管理テーブルを構造体（図中の「_OPTION_INFO_BLOCK」）、また各機器情報の詳細な情報項目を構造体のメンバ（図中の「dwOptionType」や「sUse」など）とするデータ構成例が示されている。なお、画面制御設定データ５２１は、各オプション装置への対応を上記構造体単位で行う。
【０１１９】
データ生成部４１は、機種依存データ５１１をデータ解析後、データ内に定義された設定値を、該当する機器情報の詳細な情報項目値として、画面制御設定データ５２１内の該当する構造体メンバに設定する。
【０１２０】
図１２は、本発明の第１の実施形態に係るオプション構成指定時の印刷制御設定画面Ｗを制御する処理手順例を示すフローチャートである。図１２には、オプション構成指定に生成された画面制御設定データ５２１を基に、Ｄｅｖｍｏｄｅ構造体の設定から設定画面Ｗの表示までの処理手順例が示されている。
【０１２１】
図１２に示すように、ＵＩドライバ２１は、初期化部３１が、データ生成部４１により生成され保存されている画面制御設定データ５２１を参照し、データ内の機器情報（指定されたオプションの情報）の詳細な情報項目に、オプションの使用可否を示す制御値が設定されているか（使用可否指定されているか）否かを判定する（ステップＳ２０１）。
【０１２２】
ステップＳ２０１において、使用可否指定されていると判定された場合には（ステップＳ２０１：ＹＥＳ）、画面制御設定データ５２１内で、指定オプションに対応するＤｅｖｍｏｄｅ構造体の名前を示す構造体メンバ「sDmName」を基に、特定された対応Ｄｅｖｍｏｄｅ構造体のメンバに、その制御値を設定する（ステップＳ２０２）。
【０１２３】
一方、使用可否指定されていないと判定された場合には（ステップＳ２０１：ＮＯ）、ステップＳ２０３の処理へ移行する。
【０１２４】
初期化部３１は、画面表示指示を受け付けると、オプションの使用可否の制御値が設定されているＤｅｖｍｏｄｅ構造体のメンバの値を確認する（ステップＳ２０３）。
【０１２５】
ステップＳ２０３において、Ｄｅｖｍｏｄｅ構造体のメンバの値が、使用可能を示す制御値が設定される場合には（ステップＳ２０３：ＹＥＳ）、画面制御部３３及び機能制御部３４に対して動作指示を行い、各機能部が、制御値に従って印刷制御設定画面Ｗ（対応コントロール）の生成・表示、及び指定オプションの使用可否の制御を行う（ステップＳ２０４）。
【０１２６】
一方、使用可能を示す制御値が設定されていない場合には（ステップＳ２０３：ＮＯ）、図の処理を終了する。
【０１２７】
その結果、ＵＩドライバ２１は、例えば図１３に示すような印刷制御設定画面（ＵＩ画面）Ｗを表示する。図１３（Ｂ）には、指定されたオプションが「両面ユニット」であった場合の例が示されており、設定画面Ｗ上のオプション選択欄における両面ユニットの使用可否設定（図中の「チェックボックス」）に、機種依存データ５１１で定義された設定内容が動的に反映されている（チェックされている）。
【０１２８】
一方、（Ａ）には、オプション構成として何も指定されていない場合の例が示されている。このような場合には、印刷制御設定画面Ｗからオプション構成の指定を受け付けて、画面制御設定データ５２１内における、指定オプションに関する使用可否設定を更新する。
【０１２９】
（Ｂ）設定画面制御：機能有効化／無効化、設定変更可否指定
図１４は、本発明の第１の実施形態に係る画面制御設定データ５２ｎの構成例（その２）を示す図である。
【０１３０】
データ生成部４１は、機能有効化／無効化、設定変更可否指定が定義された機種依存データ５１２を基に、図１４に示すような制御値で構成される画面制御設定データ５２２を生成する。
【０１３１】
画面制御設定データ５２２は、機能情報の詳細な情報項目値（制御値）で構成される。図１４には、機能情報の詳細な情報項目を構造体（図中の「_ITEM_CONTROL_BLOCK」）のメンバ（図中の「bHide」や「bDisable」）とするデータ構成例が示されている。なお、画面制御設定データ５２２は、各機能（表示コントロール）への対応を上記構造体単位で行う。
【０１３２】
データ生成部４１は、機種依存データ５１２をデータ解析後、データ内に定義された設定値を、該当する機能情報の詳細な情報項目値として、画面制御設定データ５２２内の該当する構造体メンバに設定する。
【０１３３】
図１５は、本発明の第１の実施形態に係る機能有効化／無効化、設定変更可否指定時の印刷制御設定画面Ｗを制御する処理手順例を示すフローチャートである。図１５には、機能有効化／無効化、設定変更可否指定が定義された機種依存データ５１２を基に、Ｄｅｖｍｏｄｅ構造体の設定、画面制御設定データ５２２の生成、及び設定画面Ｗの表示までの処理手順例が示されている。
【０１３４】
図１５に示すように、ＵＩドライバ２１は、初期化部３１が、データ生成部４１による機種依存データ５１２のデータ解析結果から得られた、機能（指定された機能）の初期値（Value）を、対応する機能のＤｅｖｍｏｄｅ（DevmodeLayout）に基づき特定された対応Ｄｅｖｍｏｄｅ構造体のメンバに、その制御値を設定する（ステップＳ３０１）。
【０１３５】
また、データ生成部４１は、データ解析結果を基に、機種依存データ５１２内に、機能の有効化／無効化（Enable）が設定されているか（機能有効化／無効化指定されているか）否かを判定する（ステップＳ３０２）。
【０１３６】
ステップＳ３０２において、機能有効化／無効化指定されていると判定された場合には（ステップＳ３０２：ＹＥＳ）、画面制御設定データ５２２内の情報項目（bHide）に、その制御値を設定する（ステップＳ３０３）。
【０１３７】
一方、機能有効化／無効化指定されていないと判定された場合には（ステップＳ３０２：ＮＯ）、ステップＳ３０６の処理へ移行する。
【０１３８】
続いて、データ生成部４１は、データ解析結果を基に、機種依存データ５１２内に、設定変更の可否（Limitation）が設定されているか（設定変更可否指定されているか）否かを判定する（ステップＳ３０４）。
【０１３９】
ステップＳ３０４において、設定変更可否指定されていると判定された場合には（ステップＳ３０４：ＹＥＳ）、画面制御設定データ５２２内の情報項目（bDisable）に、その制御値を設定する（ステップＳ３０５）。
【０１４０】
一方、設定変更可否指定されていないと判定された場合には（ステップＳ３０４：ＮＯ）、ステップＳ３０６の処理へ移行する。
【０１４１】
初期化部３１は、画面制御部３３及び機能制御部３４に対して動作指示を行い、各機能部が、制御値に従って印刷制御設定画面Ｗ（対応コントロール）の生成・表示、及び指定機能の使用可否の制御を行う（ステップＳ３０６）。
【０１４２】
その結果、ＵＩドライバ２１は、例えば図１６に示すような印刷制御設定画面（ＵＩ画面）Ｗを表示する。図１６（Ｂ）には、指定された機能が「不正コピー抑止機能」であった場合の例が示されており、設定画面Ｗ上のオプション選択欄における不正コピー抑止の有効化／無効化指定（図中の「チェックボックス」）に、機種依存データ５１２で定義された設定内容（Enable：Yes）が動的に反映されている（チェックされている）。また、設定画面Ｗの表示は、通常表示時と同じ輝度状態となっており、機種依存データ５１２で定義された設定内容（Limitation：No）が動的に反映され、ユーザが設定変更などの操作が可能となっている。
【０１４３】
一方、（Ａ）には、制御対象機能として不正コピー抑止が指定されていない場合の例が示されている。このような場合には、印刷制御設定画面Ｗから機能指定を受け付けて、画面制御設定データ５２２内における、指定機能に関する有効化／無効化の設定内容を更新する（Enable：Yes  →  No）。
【０１４４】
また、指定された機能が無効の場合には、印刷制御設定画面Ｗ上に表示されず、指定された機能が有効で、かつ、設定変更可否指定によりその設定変更が許可されていない場合には、印刷制御設定画面Ｗ上の表示を半輝度状態となる。
【０１４５】
（Ｃ）設定画面制御：画面レイアウト指定
図１７は、本発明の第１の実施形態に係る画面制御設定データ５２ｎの構成例（その３）を示す図である。
【０１４６】
データ生成部４１は、画面レイアウト指定が定義された機種依存データ５１３を基に、図１７に示すような制御値で構成される画面制御設定データ５２３を生成する。
【０１４７】
画面制御設定データ５２３は、機能情報の詳細な情報項目値（制御値）で構成される。図１７には、機能情報の詳細な情報項目を構造体（図中の「_ITEM_CONTROL_BLOCK」）のメンバ（図中の「x」や「y」、「Width」や「Height」）とするデータ構成例が示されている。
【０１４８】
データ生成部４１は、機種依存データ５１３をデータ解析後、データ内に定義された設定値を、該当する機能情報の詳細な情報項目値として、画面制御設定データ５２３内の該当する構造体メンバに設定する。
【０１４９】
図１８は、本発明の第１の実施形態に係る画面レイアウト指定時の印刷制御設定画面Ｗを制御する処理手順例を示すフローチャートである。図１８には、画面レイアウト指定が定義された機種依存データ５１３を基に、画面制御設定データ５２３の生成、及び設定画面Ｗの表示までの処理手順例が示されている。
【０１５０】
図１８に示すように、ＵＩドライバ２１は、初期化部３１が、データ生成部４１による機種依存データ５１３のデータ解析結果から得られた、コントロールを表示（配置）する元の画面（親画面）の指定（Dialog）に基づき、表示コントロールを、プリンタドライバが有する複数画面のうち、どの画面（親画面）に表示するのかを決定する（ステップＳ４０１）。
【０１５１】
また、データ生成部４１は、データ解析結果を基に、機種依存データ５１２内に定義された表示コントロールの種類（Class）と、配置情報（OffsetX,OffsetY,SizeX,SizeY）とを取得し、画面制御設定データ５２３の表示コントロールの種類（Class）と、配置情報（x,y,Width,Height）として設定する（ステップＳ４０２）。
【０１５２】
次に、データ生成部４１は、データ解析結果を基に、機種依存データ５１２内に定義された機能のＤｅｖｍｏｄｅ（DevmodeLayout）に関する情報を取得し、画面制御設定データ５２３のＤｅｖｍｏｄｅ情報（*lpSelFunc）として設定する（ステップＳ４０４）。
【０１５３】
初期化部３１は、画面制御部３３に対して動作指示を行い、各機能部が、制御値に従って印刷制御設定画面Ｗ（対応コントロール）の生成・表示を制御する（ステップＳ４０５）。
【０１５４】
また、画面制御部３３は、表示された設定画面Ｗから受け付けたユーザ操作を、Ｄｅｖｍｏｄｅ構造体のメンバへ設定し、操作結果として保存する（ステップＳ４０６）。
【０１５５】
その結果、ＵＩドライバ２１は、例えば図１９に示すような印刷制御設定画面（ＵＩ画面）Ｗを表示する。図１９（Ｂ）には、画面レイアウト指定された機能が「両面／製本機能」であった場合の例が示されており、機種依存データ５１３で定義された表示コントロールの種類と配置情報に基づき、設定画面Ｗ上に、所望する表示コントロール（図中の「チェックボックス」）が、機能名とともに表示されている。
【０１５６】
一方、（Ａ）には、制御対象機能の両面／製本機能に対して画面レイアウト指定されていない場合の例が示されている。
【０１５７】
なお、ここまでの説明の中で、画面制御設定データ５２ｎは、構造体により構成されるデータ例を用いて説明を行ってきたが、プリンタドライバが動作時にデータの参照を行ったときに、読み込み可能なデータであれば良い。
【０１５８】
《設定画面をカスタマイズするタイミング》
ここからは、以下の３つの場面を想定して、前述した設定画面制御機能が動作するタイミングについて説明する。
【０１５９】
（Ａ）ドライバインストール時の自動カスタマイズ
印刷制御装置１００は、まず、ユーザから受け付けたドライバインストール実行指示に従って、例えば、ドライブ装置１０３を介して、インストールキットを記憶する記録媒体１０３ａにアクセスし、インストールの実行を開始する。
【０１６０】
このとき用いられるインストールキットには、カスタマイズ済みの機種依存データ５１ｎが同梱されている。
【０１６１】
そのため、印刷制御装置１００では、インストール処理が進行し、ＵＩドライバ２１がインストールされると、ＵＩドライバ２１が有する各機能部とデータ生成部４１とを連携動作させ、自動的に設定画面制御処理を行い、印刷制御設定画面Ｗを自動カスタマイズする。
【０１６２】
以上のように、ドライバインストールの動作と連携し、自動カスタマイズを行うことができる。これにより、ユーザの保守・管理にかかる作業の手間を軽減することができるとともに、開発側においても、ユーザに対して、カスタマイズしたプリンタドライバの提供を容易に行うことができる。
【０１６３】
（Ｂ）ドライバインストール時の手動カスタマイズ
まず、ユーザが、インストールキットに同梱された機種依存データ５１ｎの格納先（例えば「ファイルパス」や「ＵＲＬ」など）を定義可能な特定データを編集する。続いて、特定データに定義した格納先に、カスタマイズ済み機種依存データ５１ｎを配置する。
【０１６４】
その後に、印刷制御装置１００は、ユーザから受け付けたドライバインストール実行指示に従って、インストールの実行を開始する。
【０１６５】
インストール処理が進行し、ＵＩドライバ２１がインストールされると、ＵＩドライバ２１が有する各機能部とデータ生成部４１とを連携動作させ、特定データに定義されている格納先に基づき、機種依存データ５１ｎを特定し、設定画面制御処理を行い、印刷制御設定画面Ｗをカスタマイズする。
【０１６６】
以上のように、ドライバインストールの動作を行う前に、ユーザが、カスタマイズを行った任意の機種依存データ５１ｎを選択指定することができ、選択された機種依存データ５１ｎを基にカスタマイズを行うことができる。これにより、例えば、ユーザが使用するＰＣ環境が更新された場合に、改めてプリンタドライバをインストールする必要があるが、上記のカスタマイズ方法であれば、ドライバインストール時に、ユーザが、以前のＰＣ環境で用いていた機種依存データ５１ｎに基づき、カスタマイズを行うことができる。つまり、ユーザや管理者は、新しい動作環境に対応した印刷環境の移行を容易に行うことができる。
【０１６７】
（Ｃ）ドライバインストール後の手動カスタマイズ
印刷制御装置１００には、既にプリンタドライバがインストールされている。このような場合には、ユーザが、既存のプリンタドライバが有するプロパティ画面などを介して、カスタマイズ済み機種依存データ５１ｎを指定する。
【０１６８】
印刷制御装置１００は、ユーザから受け付けた機種依存データ５１ｎの指定に従って、規定された機種依存データ５１ｎを、データ生成部４１により読み込み、設定画面制御処理を行い、印刷制御設定画面Ｗをカスタマイズする。
【０１６９】
以上のように、インストール済みのプリンタドライバであっても、任意のタイミングで、画面制御設定を更新することができる。
【０１７０】
＜まとめ＞
以上のように、本発明の第１の実施形態によれば、本実施形態に係る印刷処理装置１００は、プリンタドライバを構成するソフトウェア部品群に含まれない、印刷制御対象である画像形成装置２００に依存する機器・機能情報や画面レイアウト情報が定義される機種依存データ５１ｎを解析し、その解析結果から得られるＵＩドライバ２１により生成・表示される印刷制御設定画面Ｗの制御に用いる各種制御値に基づいて、プリンタドライバが提供する印刷制御設定画面Ｗの生成・表示、また、プリンタドライバが提供する各種機能の有効化／無効化、設定変更の可否、さらに、設定画面Ｗを構成するグラフィック部品の配置（レイアウト）などを制御する。
【０１７１】
また、印刷制御装置１００では、データ解析の解析結果を基に、ＵＩドライバ２１により生成・表示される印刷制御設定画面Ｗの制御に用いる各種制御値が設定されたデータファイルとして画面制御設定データ（プリンタドライバ用データ）５２ｎを生成する。
【０１７２】
このとき、印刷制御装置１００は、画面制御設定データ５２ｎを生成したときに、当該装置が備える記憶手段に記憶し、生成後の印刷制御設定画面Ｗの生成・表示は、記憶された画面制御設定データ５２ｎを用いて行う。
【０１７３】
これによって、印刷制御装置１００は、印刷制御の設定と設定画面Ｗのカスタマイズを簡便に行うことができる。
【０１７４】
ここまで、上記実施形態に基づき本発明の説明を行ってきたが、上記実施形態に係る印刷制御装置１００が有する「設定画面制御機能」は、図を用いて説明を行った各処理手順を、当該印刷制御装置１００の動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムとしてコンピュータで実行することで実現することができる。よって、上記プログラム（設定画面制御プログラム）は、コンピュータが読み取り可能な記録媒体１０３ａに格納することができる。
【０１７５】
よって、上記プログラムは、フロッピー（登録商標）ディスク、ＣＤ、ＤＶＤ（Digital Versatile Disk）などの記録媒体１０３ａに記憶させることによって、これらの記録媒体１０３ａを読み取り可能なドライブ装置１０３を介して印刷制御装置１００にインストールすることができる。また、印刷制御装置１００は、データ伝送路９０に接続可能なインタフェース装置１０７を備えていることから、電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
【０１７６】
また、上記実施形態において、機種依存データ５１ｎを、印刷制御装置１００が備えるＨＤＤ１０８に格納する構成について説明を行ったが、例えば、当該印刷制御装置１００が備えるインタフェース装置１０７を介してデータ通信可能な外部機器に格納され、リモート参照する構成であっても良い。また、記録媒体１０３ａに記録され、印刷制御装置１００が備えるドライブ装置１０３を介して参照する構成であっても良い。
【０１７７】
最後に、上記各実施形態に挙げた形状に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【図面の簡単な説明】
【０１７８】
【図１】本発明の第１の実施形態に係る印刷システムの構成例を示す図である。
【図２】本発明の第１の実施形態に係る印刷制御装置のハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態に係る印刷制御装置のソフトウェア構成例を示す図である。
【図４】本発明の第１の実施形態に係る設定画面制御機能の構成例を示す図である。
【図５】本発明の第１の実施形態に係るＵＩドライバの印刷制御設定画面（ＵＩ画面）を表示する処理手順例を示すフローチャートである。
【図６】本発明の第１の実施形態に係る機種依存データの構成例（その１）を示す図である。
【図７】本発明の第１の実施形態に係る機種依存データの構成例（その２）を示す図である。
【図８】本発明の第１の実施形態に係る機種依存データの構成例（その３）を示す図である。
【図９】本発明の第１の実施形態に係る機種依存データと画面制御設定データとの関係を示す図である。
【図１０】本発明の第１の実施形態に係る印刷制御設定画面（ＵＩ画面）の表示例を示す図である。
【図１１】本発明の第１の実施形態に係る画面制御設定データの構成例（その１）を示す図である。
【図１２】本発明の第１の実施形態に係るオプション指定時の印刷制御設定画面を制御する処理手順例を示すフローチャートである。
【図１３】本発明の第１の実施形態に係るオプション指定時の印刷制御設定画面（ＵＩ画面）の表示例を示す図である。
【図１４】本発明の第１の実施形態に係る画面制御設定データの構成例（その２）を示す図である。
【図１５】本発明の第１の実施形態に係る機能有効化／無効化、設定変更可否指定時の印刷制御設定画面を制御する処理手順例を示すフローチャートである。
【図１６】本発明の第１の実施形態に係る機能有効化／無効化、設定変更可否指定時の印刷制御設定画面（ＵＩ画面）の表示例を示す図である。
【図１７】本発明の第１の実施形態に係る画面制御設定データの構成例（その３）を示す図である。
【図１８】本発明の第１の実施形態に係る画面レイアウト指定時の印刷制御設定画面を制御する処理手順例を示すフローチャートである。
【図１９】本発明の第１の実施形態に係る画面レイアウト指定時の印刷制御設定画面（ＵＩ画面）の表示例を示す図である。
【符号の説明】
【０１７９】
１    印刷システム
１１    ＧＤＩ
１２    スプーラ
１３    ローカルポートモニタ
２１    ＵＩドライバ
２２    画像処理ドライバ（ａ：前処理，ｂ：後処理）
２３    双方向通信ドライバ
２３ａ  マルチポートマネージャ
２３ｂ  リソースＤＬＬ
２３ｃ  データＤＬＬ
２３ｄ  ランゲージモニタ
３１    初期化部
３２    機種依存データ指定部
３３    画面制御部
３４    機能制御部
４１    データ生成部
５１ｎ  機種依存データ
５２ｎ  画面制御設定データ（プリンタドライバ用データ）
９０    データ伝送路
１００  印刷制御装置
１０１  入力装置
１０２  表示装置
１０３  ドライブ装置（ａ：記録媒体）
１０４  ＲＡＭ
１０５  ＲＯＭ
１０６  ＣＰＵ
１０７  インタフェース装置
１０８  ＨＤＤ
２００  画像形成装置
ＡＰ  アプリケーション
Ｗ  印刷制御設定画面
【図１】
2010026656.tif 000003
【図２】
2010026656.tif 000004
【図３】
2010026656.tif 000005
【図４】
2010026656.tif 000006
【図５】
2010026656.tif 000007
【図６】
2010026656.tif 000008
【図７】
2010026656.tif 000009
【図８】
2010026656.tif 000010
【図９】
2010026656.tif 000011
【図１０】
2010026656.tif 000012
【図１１】
2010026656.tif 000013
【図１２】
2010026656.tif 000014
【図１３】
2010026656.tif 000015
【図１４】
2010026656.tif 000016
【図１５】
2010026656.tif 000017
【図１６】
2010026656.tif 000018
【図１７】
2010026656.tif 000019
【図１８】
2010026656.tif 000020
【図１９】
2010026656.tif 000021