(57)【要約】【課題】  スクリーンキーボードの表示を制限すべき特定状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で入力操作を行えることである。【解決手段】  コントローラ部１７０が液晶ディスプレイ４２０３上で入力フォーカスが入力領域に当たったことを検知した場合に、スクリーンキーボードの表示を制限すべき特定状態かどうかを判定し、該判定結果に基づいて、情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する構成を特徴とする。【選択図】  図７
2005346179.tif 000002
【特許請求の範囲】
【請求項１】
画像形成に関する複数の機能を有し、各機能を設定するための設定情報を表示手段に表示された情報入力画面を用いて操作入力することが可能な画像処理装置において、
前記情報入力画面上に仮想的なスクリーンキーボードを表示するキーボード表示手段と、
前記スクリーンキーボードの表示を制限すべき特定状態かどうかを判定する判定手段と、
入力フォーカスが入力領域に当たったことを検知する検知手段と、
前記検知手段により入力フォーカスが検知された場合に、前記判定手段による判定結果に基づいて、前記キーボード表示手段による前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する制御手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記判定手段は、特定のデバイスの拡張接続状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記拡張接続されるデバイスは、ハードウエアキーボードであることを特徴とする請求項２記載の画像処理装置。
【請求項４】
前記スクリーンキーボードの自動表示の可否を設定する設定手段を有し、
前記判定手段は、前記設定手段による設定状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定することを特徴とする請求項１記載の画像処理装置。
【請求項５】
前記制御手段は、前記検知手段により入力フォーカスが入力領域から外れたことを検知した場合に、前記スクリーンキーボードを自動非表示とすることを特徴とする請求項１記載の画像処理装置。
【請求項６】
画像形成に関する複数の機能を有し、各機能を設定するための設定情報を表示手段に表示された情報入力画面を用いて操作入力することが可能な画像処理装置における表示制御方法において、
前記情報入力画面上に仮想的なスクリーンキーボードを表示するキーボード表示ステップと、
前記スクリーンキーボードの表示を制限すべき特定状態かどうかを判定する判定ステップと、
入力フォーカスが入力領域に当たったことを検知する検知ステップと、
前記検知ステップにより入力フォーカスが検知された場合に、前記判定ステップによる判定結果に基づいて、前記キーボード表示ステップによる前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する制御ステップと、
を有することを特徴とする表示制御方法。
【請求項７】
前記判定ステップは、特定のデバイスの拡張接続状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定することを特徴とする請求項６記載の表示制御方法。
【請求項８】
前記拡張接続されるデバイスは、ハードウエアキーボードであることを特徴とする請求項７記載の表示制御方法。
【請求項９】
前記スクリーンキーボードの自動表示の可否を設定する設定ステップを有し、
前記判定ステップは、前記設定ステップによる設定状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定することを特徴とする請求項６記載の表示制御方法。
【請求項１０】
前記制御ステップは、前記検知ステップにより入力フォーカスが入力領域から外れたことを検知した場合に、前記スクリーンキーボードを自動非表示とすることを特徴とする請求項６記載の表示制御方法。
【請求項１１】
請求項６〜１０のいずれかに記載の表示制御方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【請求項１２】
請求項６〜１０のいずれかに記載の表示制御方法を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プリンタ、画像入力、文書ファイリング、文書送受信、画像変換等の機能を有する画像処理装置および表示制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムに関するものである。
【背景技術】
【０００２】
プリンタ、画像入力、文書ファイリング、文書送受信、画像変換等の機能を有する画像処理装置では、それぞれの機能を処理するために、ユーザから様々な設定情報を入力させる必要がある。これらの情報入力方法として、下記特許文献１では、表示手段の画面上に、情報が入力される入力領域とともに、設定情報に応じたスクリーンキーボードを表示し、このスクリーンキーボードを用いて各種入力情報を入力している。これによりハードウエアキーボードを接続せずとも設定情報の入力を可能とし、コストダウン、省スペース化を実現している。
【特許文献１】特開平１１−１３３８１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、入力のし易さ、入力の速度という面では、スクリーンキーボードはハードウエアキーボードに劣ると感じるユーザが多く、大量の設定情報を入力する必要が多いユーザほどその傾向は強い。
【０００４】
この場合、画像処理装置、または前記画像処理装置の拡張制御装置に、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）などを介してハードウエアキーボードを接続し、ハードウエアキーボードからの入力を可能にすることで前記要望を満たすことが出来る。
【０００５】
しかしながら、ハードウエアキーボードを接続したにも関わらず、不要になったスクリーンキーボードが従来通り表示されてしまい、表示画面の一部を隠してしまう、入力領域に入力フォーカスが当たるたびに表示、非表示を繰り返し煩わしいという問題があった。
【０００６】
また、スクリーンキーボードの自動表示は、初心者ユーザにとっては簡単に利用できるため有効な手段であるが、ユーザが誤って入力領域に入力フォーカスを当ててしまった場合も表示されてしまうため、ユーザが操作に慣れてくるとかえって煩わしいという問題もあった。
【０００７】
本発明は、上記の課題を解決するためになされたもので、本発明の目的は、入力フォーカスが入力領域に当たったことを検知した場合に、スクリーンキーボードの表示を制限すべき特定状態かどうかを判定し、該判定結果に基づいて、前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御することにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき特定状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で入力操作を行える画像処理装置および表示制御方法およびコンピュータが読み取り可能なプログラムを格納した記憶媒体およびプログラムを提供することである。
【課題を解決するための手段】
【０００８】
本発明に係る画像処理装置は、以下の特徴的構成を備える。
【０００９】
画像形成に関する複数の機能を有し、各機能を設定するための設定情報を表示手段に表示された情報入力画面を用いて操作入力することが可能な画像処理装置において、前記情報入力画面上に仮想的なスクリーンキーボードを表示するキーボード表示手段と、前記スクリーンキーボードの表示を制限すべき特定状態かどうかを判定する判定手段と、入力フォーカスが入力領域に当たったことを検知する検知手段と、前記検知手段により入力フォーカスが検知された場合に、前記判定手段による判定結果に基づいて、前記キーボード表示手段による前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する制御手段とを有することを特徴とする。
【００１０】
本発明に係る表示制御装置は、以下の特徴的構成を備える。
【００１１】
画像形成に関する複数の機能を有し、各機能を設定するための設定情報を表示手段に表示された情報入力画面を用いて操作入力することが可能な画像処理装置における表示制御方法において、前記情報入力画面上に仮想的なスクリーンキーボードを表示するキーボード表示ステップと、前記スクリーンキーボードの表示を制限すべき特定状態かどうかを判定する判定ステップと、入力フォーカスが入力領域に当たったことを検知する検知ステップと、前記検知ステップにより入力フォーカスが検知された場合に、前記判定ステップによる判定結果に基づいて、前記キーボード表示ステップによる前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する制御ステップとを有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき特定状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で入力操作を行える。
【発明を実施するための最良の形態】
【００１３】
次に本発明を実施するための最良の形態について図面を参照して説明する。
【００１４】
〔第１実施形態〕
図１は、本発明の第１実施形態を示す拡張画像処理システムを適用可能な画像処理システム構成を説明する図である。
【００１５】
図１において、拡張画像処理システム１０は、画像処理装置１００（本実施形態では、ディスプレイユニットを具備する操作部と、スキャナ部、ハードディスク等のメモリユニット、画像処理ユニット、データ通信ユニット、プリント部等を具備する画像形成装置を、画像処理装置１００の一例として説明する）と、拡張コントローラ１０３（本実施形態では、ディスプレイユニット、ハードディスク等のメモリユニット、データ処理ユニット、データ通信ユニット、制御ユニットを有するコンピュータ等の情報処理装置を、拡張コントローラ１０３の一例として説明する）と、画像処理装置１００と拡張コントローラ１０３とを接続するＬＡＮ４００等の所定のデータ通信媒体等を有するシステムであり、プリンタ、画像入力、文書ファイリング、文書送受信、画像変換等の機能を有する画像処理装置１００に対してさらに拡張された機能を提供する。画像処理装置１００と拡張コントローラ１０３はそれぞれＬＡＮ４００に接続され、ＬＡＮ４００を介して他のネットワークノードと通信する。
【００１６】
クライアントパーソナルコンピュータ（クライアントＰＣ）１１は個人向けの情報処理装置であり、いわゆるＣＰＵ，ＲＡＭ，ＲＯＭ等を含むコントローラ部を備え、入力デバイスをユーザが操作することで、主にユーザの机上に置かれ各種のアプリケーションプログラムが実行される。クライアントＰＣ１１はＬＡＮ４００に接続され、ＬＡＮ４００を介して他のネットワークノードが提供するサービスを利用したり、他のネットワークノードにサービスを提供したりする。
【００１７】
サーバコンピュータ１２は大規模な情報処理装置であり、ＬＡＮ４００に接続され、ＬＡＮ４００を介して主に他のネットワークノードに対するサービスを提供する。
【００１８】
プリンタ１３はネットワーク対応した周辺機器であり、ＬＡＮ４００に接続され、ＬＡＮ４００を介して他のネットワークノードに対して画像形成装置のサービスを提供する。
【００１９】
ルータ１５はネットワークとネットワークを接続するネットワークノードであり、インターネットやバーチャルプライベートネットワークなどの広域ネットワーク１６とＬＡＮ４００とを接続する。
【００２０】
ＬＡＮ４００はユーザのオフィスなどに敷設されたローカルエリアネットワークである。
【００２１】
図２は、図１に示した拡張画像処理システム１０の構成を説明するブロック図であり、拡張画像処理システム１０が画像処理装置１００と拡張コントローラ１０３の組み合わせによってシステムが構成される場合に対応する。
【００２２】
図２において、画像処理装置１００は、プリンタ、画像入力、文書ファイリング、文書送受信、画像変換など各種の基本的な画像処理機能を提供する。
【００２３】
リーダ部（画像入力装置）２００は、原稿画像を光学的に読み取り、画像データに変換する。リーダ部２００は、原稿を読取るための機能を持つスキャナユニット２１０と、原稿用紙を搬送するための機能を持つ原稿給紙ユニット２５０とで構成される。
【００２４】
プリンタ部（画像出力装置）３００は、記録紙を搬送し、その上に画像データを可視画像として印刷して装置外に排紙する。プリンタ部３００は、複数種類の記録紙カセットを持つ給紙ユニット３６０と、画像データを記録紙に転写、定着させる機能を持つマーキングユニット３１０と、印刷された記録紙をソート、ステイプルして機外へ出力する機能を持つ排紙ユニット３７０とで構成される。
【００２５】
制御装置１１０は、リーダ部２００、プリンタ部３００と電気的に接続され、さらにＬＡＮ４００にと接続されている。制御装置１１０は、リーダ部２００を制御して、原稿の画像データを読込み、プリンタ部３００を制御して画像データを記録用紙に出力してコピー機能を提供する。
【００２６】
また、リーダ部２００から読取った画像データを、コードデータに変換し、ＬＡＮ４００を介して図示しないホストコンピュータへ送信するスキャナ機能、ホストコンピュータからＬＡＮ４００を介して受信したコードデータを画像データに変換し、プリンタ部３００に出力するプリンタ機能を提供する。
【００２７】
なお、画像処理装置１００には、複数ページのデータを格納可能なハードディスク等のメモリユニットを具備し、制御部１１０は、画像処理装置１００が具備するリーダ部２００からの画像データや、情報処理装置等の外部装置からの画像データを上記メモリユニットに格納可能に制御する。そして、該メモリユニットから読み出した画像データのプリント処理をプリンタ部３００に実行可能に制御する。このように、制御部１１０は、画像処理装置１００が具備する各ユニットを統括的に制御する。
【００２８】
画像処理装置１００が具備するタッチパネル形式のディスプレイユニットやハードキー群を具備する操作部１５０（本システムの第１の操作部とも呼ぶ）は、制御装置１１０に接続され、液晶タッチパネルで構成され、画像入出力システムを操作するためのユーザＩ／Ｆを提供する。
【００２９】
拡張コントローラ１０３は制御装置１７０とタッチパネル形式のディスプレイユニットを具備する操作部１７１（本システムの第２の操作部とも呼ぶ）と周辺機器１７２を有する。
【００３０】
拡張コントローラ１７０は、よく知られているパーソナルコンピュータ等の情報処理装置と同等のハードウェアアーキテクチャで構成され、汎用オペレーティングシステムや各種デバイスドライバや各種アプリケーションプログラムを含む一般的なソフトウエアを実行することができる。
【００３１】
操作部１７１は、ユーザが拡張コントローラ１０３を操作するためのユーザインタフェースを提供する。周辺機器１７２は一般的なパーソナルコンピュータ等の情報処理装置用に提供されている各種の周辺機器であり、拡張コントローラ１７０のハードウェアを拡張する。
【００３２】
画像処理装置１００と拡張コントローラ１０３はＬＡＮ４００を介して接続され相互に通信できる。ローカルインタフェース２０１は両者の間に専用の通信経路を提供するためのオプションインタフェースであり、ＵＳＢや専用バスなどによって実装される。
【００３３】
図３は、図１に示した拡張画像処理システムの外観を示す斜視図であり、画像処理装置と拡張コントローラの組み合わせによって構成された拡張画像処理システムの外観に対応し、特に（ａ）は操作部側から視た状態に対応し、（ｂ）は背面側から視た状態に対応する。
【００３４】
図３において、画像処理装置１００は各種の画像処理機能（コピー機能や、スキャン機能や、ファクシミリ機能や、プリント機能等の少なくとも何れかの機能を含む複数の機能）を提供するデジタル複合機である。画像処理装置の操作部１５０（図２の操作部１５０に相当）は、画像処理装置の画像処理機能を操作するためのユーザインタフェースを提供する。
【００３５】
これは、メカ的なハードキーで構成しても良いが、ソフトキーで構成されても良い）は、画像処理装置の機能を利用不能なオフ状態と機能を利用可能なオン状態とをユーザ操作に応答し切り替えるためのスイッチである。画像処理装置１００がオン状態にあるときには、操作部１５０の表示や入力を介してユーザが画像処理装置１００の機能を利用できたり、ネットワークを介して他のネットワークノードから画像処理装置１００が提供するネットワークサービス（たとえばプリントサーバ機能など）を利用できたりする。
【００３６】
拡張コントローラ１０３は画像処理装置１００の背面に設置される。操作部１７１は図３に示すように透明タッチパネルを表面に貼った液晶ディスプレイであり、拡張コントローラ１０３と電気的に接続されている。周辺機器１７２は拡張コントローラ１０３と電気的に接続されたＩ／Ｏ装置であり、例えば操作者を特定する為のユーザ認証機能を具備するＩＣカードリーダライタユニットや、メモリメディアドライブなどで構成される。
【００３７】
拡張コントローラ１０３の操作部１７１と周辺機器１７２は専用スタンドに設置され、画像処理装置１００の前に立ったユーザによって容易に操作できるように配置されている。
【００３８】
拡張コントローラ１０３の電源スイッチ３０２は拡張コントローラ１０３の機能を利用不能なオフ状態と機能を利用可能なオン状態とをユーザ操作に応答し切り替えるためのスイッチ（メカ的なハードキーで構成しているが、ソフトキーでも良い）である。なお、この情報処理装置等に相当する拡張コントローラ１０３が具備するユーザにより押下可能な電源キー（電源スイッチ３０２）を、本システムにおける第２の電源キーとも称する。
【００３９】
これは、メカ的なハードキーで構成しても良いが、ソフトキーで構成されても良い。
【００４０】
拡張コントローラ１０３がオン状態にあるときには、操作部１７１の表示や入力を介してユーザが拡張コントローラ１０３の機能を利用できたり、ネットワークを介して他のネットワークノードから拡張コントローラ１０３が提供するネットワークサービス（例えば暗号化プリントアプリケーションのジョブ受け付け）を利用できたりする。
【００４１】
ここで、本実施形態で述べている、本画像処理システム（画像形成システムとも呼ぶ）の存在意義、及び、本システムにより提供できる作用効果、およびそれらに係る背景、開発設計検討事項等の一例を紹介する。
【００４２】
まず、上記の如く、本システムが具備する画像処理装置１００（画像形成装置とも呼ぶ）は、自装置にてコピー機能、ネットワークスキャナ機能、プリント機能、ボックス機能、ファクシミリ機能等の各種の機能を具備しており、拡張コントローラ１０３が接続されていなくとも、該拡張コントローラ１０３無しに、独立して動作可能な装置であり、この画像処理装置１００だけでも十分に高性能且つ高機能のサービス、付加価値を顧客に提供可能に構成している。
【００４３】
一方、拡張コントローラ１０３（例えばＰＣ等の情報処理装置）は、この装置のみだけでは存在意義はなく、本画像処理装置１００のオプションとして、本画像処理装置１００と協働することで、本画像処理装置１００だけでは提供できない更なる高機能高性能高付加価値を提供するために存在する。
【００４４】
ここで、本画像処理装置１００内部に本拡張コントローラ１０３を内蔵せずに、図３に示すが如く、別筐体、別売りで、拡張コントローラ１０３を提供可能に本システムを構成している理由は、上記の如く、本画像処理装置１００単独でも高機能、高性能、高付加価値を提供可能に構成されているので、これでも十分に満足する顧客が存在することに起因する。
【００４５】
例えば、画像処理装置１００だけでも十分満足する顧客に対しては画像処理装置１００のみを提供し、一方、更なる高機能、高性能高付加価値を望む顧客に対しては、画像処理装置１００と拡張コントローラ１０３とをセットにして高機能な画像処理システムとして提供することで、無駄な生産開発コストを防止できる。
【００４６】
予め、拡張コントローラ１０３の機能を内蔵した画像処理装置を生産してしまうと、本来ならば画像処理装置１００の機能だけでも十分に満足する顧客に対しても、このような装置を提供することになり、無駄なコストがかかるし、その分、生産期間の延長なども発生する。
【００４７】
本実施形態のように、本画像処理装置１００と別売りで拡張コントローラ１０３を提供すれば、顧客が必要としている分だけを受注生産でき、その分、無駄な在庫も発生させずに済む。このような効果を奏すべく、本実施形態は、例えば図３のような、画像処理装置１００と拡張コントローラ１０３とが互いに独立した（別筐体にした）システム構成としている。そして、本実施形態は、このようなシステム構成を前提としたうえで、更に、コンパクト化、デザイン性、安全性等を考慮して、例えば本システム内にて、画像処理装置１００と拡張コントローラ１０３とを、例えば図３に示すような物理的な配設関係で設計している。
【００４８】
そして、このような背景、構成、効果を前提として、本実施形態が提供するシステムでは、本システムが具備する拡張コントローラ１０３自身が有する電源スイッチ３０２をユーザが押下することで、該拡張コントローラ１０３を起動可能に構成する（第１の起動モードとも呼ぶ）と共に、尚且つ、後述する本システムの画像処理装置１００における該画像処理装置１００が具備する操作部１５０におけるユーザ操作に応答した制御により、該拡張コントローラ１０３を起動可能に構成する（第２の起動モードとも呼ぶ）ようにしている。
【００４９】
これは、例えば、ユーザが拡張コントローラ１０３の電源を立ち上げたいと考えた場合に、図３のように、わざわざ、立ち姿勢から体等を屈めるような動作を必要としてはじめて操作可能な、拡張コントローラ１０３が具備する電源スイッチ３０２を押下することなく、ユーザが、より操作しやすい位置に配備している画像処理装置１００の操作部１５０の電源キー３０１を操作することで拡張コントローラ１０３を起動可能とすることで、ユーザの使い勝手を向上させる為の設計としているからである。
【００５０】
なお、且つ、例えば、第２の起動モードは、単に、画像処理装置１００の電源を立ち上げたからといって、一律的且つ自動的に拡張コントローラ１０３の電源を立ち上げるのではなく、拡張コントローラ１０３のステータス情報や、画像処理装置１００と拡張コントローラ１０３との接続状況や、画像処理装置１００のユーザ操作等に基づいて、画像処理装置１００から拡張コントローラ１０３に対して起動させるよう制御している。
【００５１】
このように構成することで、ユーザが望んでもいないのに、画像処理装置１００の制御装置１１０の独断で勝手に拡張コントローラ１０３を起動させることを禁止して、これらの装置に無駄な動作をさせたり、不必要なデータのやり取りをさせたり、不必要な消費電力の発生などの各種の不具合を防止できるようにしており、このような不具合の発生防止とユーザの操作性向上との両立を実現できるようなシステム設計としている。
【００５２】
図４は、図２に示した画像処理装置１００の制御装置１１０のハードウェア構成を示すブロック図である。
【００５３】
図４において、メインコントローラ１１１は、主にＣＰＵ１１２と、バスコントローラ１１３、各種Ｉ／Ｆコントローラ回路を有する。
【００５４】
ＣＰＵ１１２とバスコントローラ１１３は制御装置１１０全体の動作を制御するものであり、ＣＰＵ１１２はＲＯＭ１１４からＲＯＭ  Ｉ／Ｆ１１５を経由して読込んだプログラムに基づいて動作する。また、ホストコンピュータから受信したＰＤＬ（ページ記述言語）コードデータを解釈し、ラスタイメージデータに展開する動作も、このプログラムに記述されており、ソフトウエアによって処理される。バスコントローラ１１３は各Ｉ／Ｆから入出力されるデータ転送を制御するものであり、バス競合時の調停やＤＭＡデータ転送の制御を行う。
【００５５】
ＤＲＡＭ１１６はＤＲＡＭ  Ｉ／Ｆ１１７によってメインコントローラ１１１と接続されており、ＣＰＵ１１２が動作するためのワークエリアや、画像データを蓄積するためのエリアとして使用される。
【００５６】
Ｃｏｄｅｃ１１８は、ＤＲＡＭ１１６に蓄積されたラスタイメージデータをＭＨ／ＭＲ／ＭＭＲ／ＪＢＩＧ／ＪＰＥＧ等の方式で圧縮し、また逆に圧縮され蓄積されたコードデータをラスタイメージデータに伸長する。ＳＲＡＭ１１９はＣｏｄｅｃ１１８の一時的なワーク領域として使用される。Ｃｏｄｅｃ１１８はＩ／Ｆ１２０を介してメインコントローラ１１１と接続され、ＤＲＡＭ１１６との間のデータの転送は、バスコントローラ１１３によって制御されＤＭＡ転送される。
【００５７】
Ｇｒａｐｈｉｃ  Ｐｒｏｃｅｓｓｏｒ（Ｇｒａｐｈｉｃ）１３５は、画像回転、変倍処理、色空間変換等の画像処理を行う。
【００５８】
外部装置とのデータ通信処理が可能な通信ユニットとしての外部通信Ｉ／Ｆ１２１はコネクタ１２２によってメインコントローラ１１１と接続され、コネクタ１２２によって外部ネットワークと接続される。
【００５９】
汎用高速バス１２５には、拡張ボードを接続するための拡張コネクタ１２４とＩ／Ｏ制御部１２６とが接続される。汎用高速バス１２５としては、一般的にＰＣＩバスがあげられる。
【００６０】
Ｉ／Ｏ制御部１２６には、リーダ部２００、プリンタ部３００の各ＣＰＵと制御コマンドを送受信するための調歩同期のシリアル通信コントローラ１２７が２チャンネル装備されており、Ｉ／Ｏバス１２８によって外部Ｉ／Ｆ回路１４０，１４５に接続されている。
【００６１】
パネルＩ／Ｆ１３２は、ＬＣＤコントローラ１３１に接続され、操作部１５０上の液晶画面に表示を行うためのＩ／Ｆと、ハードキーやタッチパネルキーの入力を行うためのキー入力Ｉ／Ｆ１３０とから構成される。
【００６２】
操作部１５０は液晶表示部と液晶表示部上に張り付けられたタッチパネル入力装置と、複数個のハードキーを有する。タッチパネルまたはハードキーにより入力された信号は前述したパネルＩ／Ｆ１３２を介してＣＰＵ１１２に伝えられ、液晶表示部はパネルＩ／Ｆ１３２から送られてきた画像データを表示するものである。液晶表示部には、本画像処理装置の操作における機能表示や画像データ等を表示する。
【００６３】
リアルタイムクロックモジュール１３３は、機器内で管理する日付と時刻を更新／保存するためのもので、バックアップ電池１３４によってバックアップされている。
【００６４】
Ｅ−ＩＤＥコネクタ１６１は、外部記憶装置を接続するためのものである。本実施形態においては、このＥ−ＩＤＥコネクタ１６１を介してハードディスクドライブ１６０を接続し、ハードディスク１６２へ画像データを記憶させたり、ハードディスク１６２から画像データを読み込ませたりする動作を行う。
【００６５】
コネクタ１４２とコネクタ１４７は、それぞれリーダ部２００とプリンタ部３００とに接続され、同調歩同期シリアルＩ／Ｆ１４３，１４８とビデオＩ／Ｆ１４４，１４９とから構成される。
【００６６】
スキャナＩ／Ｆ１４０は、コネクタ１４２を介してリーダ部２００と接続され、また、スキャナバス１４１によってメインコントローラ１１１と接続されており、リーダ部２００から受け取った画像に対して所定の処理を施す機能を有し、さらに、リーダ部２００から送られたビデオ制御信号をもとに生成した制御信号を、スキャナバス１４１に出力する機能も有する。
【００６７】
スキャナバス１４１からＤＲＡＭ１１６へのデータ転送は、バスコントローラ１１３によって制御される。
【００６８】
プリンタＩ／Ｆ１４５は、コネクタ１４７を介してプリンタ部３００と接続され、また、プリンタバス１４６によってメインコントローラ１１１と接続されており、メインコントローラ１１１から出力された画像データに所定の処理を施して、プリンタ部３００へ出力する機能を有し、さらに、プリンタ部３００から送られたビデオ制御信号をもとに生成した制御信号を、プリンタバス１４６に出力する機能も有する。
【００６９】
ＤＲＡＭ１１６上に展開されたラスタイメージデータのプリンタ部３００への転送は、バスコントローラ１１３によって制御され、プリンタバス１４６、ビデオＩ／Ｆ１４９を経由して、プリンタ部３００へＤＭＡ転送される。
【００７０】
図５は、図２に示した画像処理装置１００のコントローラ部１１０のソフトウエアのモジュール構造を示すブロック図である。
【００７１】
図５において、画像処理装置１００に内蔵されるコントローラ部１１０によって処理されるソフトウエアは、いわゆるファームウェアとして実装されており、図４に示したＣＰＵ１１２によって実行される。
【００７２】
リアルタイムＯＳ５００１はリアルタイムオペレーティングシステムであり、組み込みシステムの制御に最適化された各種資源管理のサービスと枠組みをその上で動作するソフトウエアのために提供する。リアルタイムＯＳ５００１が提供する各種資源管理のサービスと枠組みには、ＣＰＵ１１２による処理の実行コンテクストを複数管理することによって複数の処理を実質的に並行動作させるマルチタスク管理（スレッド管理）、タスク間の同期やデータ交換を実現するタスク間通信、メモリ管理、割り込み管理、各種のデバイスドライバ、ローカルインタフェースやネットワークや通信などの各種プロトコルの処理を実装したプロトコルスタックなどがある。
【００７３】
ファイルシステム５００２は、ハードディスク１６２やメモリなどの記憶装置上に構築されたデータを格納するための機構である。画像処理装置１００のコントローラ部１１０が扱うジョブをスプールしたり各種データを保存したりするために用いる。
【００７４】
ジョブ制御・装置制御モジュール５００３は、画像処理装置１００のハードウェアを制御し、また、画像処理装置１００の主にハードウェアが提供する基本機能（プリント、スキャン、通信、画像変換など）を利用するジョブを制御する。これにより、リーダ部２００や外部装置から入力された画像データのプリント処理やデータ送信処理等を実行可能に制御している。
【００７５】
管理モジュール５００４はコントローラ部１１０の動作に係る内部状態を制御するなど、コントローラの動作を管理する。制御ＡＰＩ５００５は、この層よりも下位のソフトウエアモジュール群が提供するサービスをこの層よりも上位の組み込みアプリケーション群が利用するために設けられたアプリケーションプログラミングインタフェースである。
【００７６】
ネットワークサービス５００６は、制御ＡＰＩ５００５とネットワークプロトコルとを相互変換することによって、クライアントＰＣなど外部のネットワークノードから装置の基本機能を利用可能とする。また、特にネットワークプリントのための各種プロトコル（ＬＰＲ、ＮｅｔＷａｒｅ、ＳＭＢ、ＰＡＰ、ＩＰＰなど）を実装したネットワークサーバ機能を備え、クライアントＰＣなど外部のネットワークノードからのプリントジョブの投入を可能とする。
【００７７】
組み込みアプリケーションロジック５００７、プレゼンテーションインタフェース５００８、組み込みアプリケーションＵＩ５００９は、組み込みアプリケーションを構成する。
【００７８】
ここで、組み込みアプリケーションは、画像処理装置１００の基本機能に加えてさらにコピー、画像スキャン、文書送受信、文書ファイリングなどの上位機能を、制御ＡＰＩの基本機能を利用して実現する。組み込みアプリケーションロジック５００７は、組み込みアプリケーションのビジネスロジック部分に相当する。
【００７９】
プレゼンテーションインタフェース５００８は組み込みアプリケーションのビジネスロジックとプレゼンテーションロジックを分離するために設けられたインタフェースである。組み込みアプリケーションＵＩ５００９は組み込みアプリケーションのプレゼンテーションロジックに相当し、ユーザによる組み込みアプリケーションの操作を可能とするためにグラフィカルユーザインタフェース（ＧＵＩ）の表示や入力の制御を行う。
【００８０】
組み込みアプリケーションＵＩ５００９は、画像処理装置１００の操作部１５０上にローカルなユーザインタフェースを提供するだけでなく、ＨＴＭＬなどのマークアップ言語とＨＴＴＰなどのＷｅｂ技術を用いて実現したＷｅｂアプリケーションも提供する。ユーザはクライアントＰＣなどの上で動作するＷｅｂブラウザからこのＷｅｂアプリケーションに接続して、画像処理装置１００を遠隔操作できる。Ｗｅｂアプリケーションとして実装した組み込みアプリケーションのプレゼンテーション層のことをここではリモートＵＩと呼ぶ。
【００８１】
組み込みＪａｖａ（登録商標）環境５０１０は、Ｊａｖａ（登録商標）仮想機械を中心に構成されるインタプリタ環境である。組み込みＪａｖａ（登録商標）環境５０１０はＪａｖａ（登録商標）のバイトコードで記述された命令列データを実行時に読み込み結合し、Ｊａｖａ（登録商標）仮想機械が命令を逐次的に読み込み解釈し実行するように構成されている。
【００８２】
したがって、リアルタイムＯＳも含めてあらかじめ全体が単一のロードモジュールに静的結合されているファームウェア上にあって、ごく部分的ながらソフトウエアを動的に追加したり入れ替えたりできる拡張性や柔軟性を確保できる。リアルタイムＯＳやジョブ制御・装置制御ＡＰＩなどを含むファームウェア（ネイティブシステム）の資源やサービスをＪａｖａ（登録商標）のプログラムから利用可能なように構成したＪａｖａ（登録商標）のクラスライブラリ群が、Ｊａｖａ（登録商標）  Ｎａｔｉｖｅ  Ｉｎｔｅｒｆａｃｅ（ＪＮＩ）によって提供されている。組み込みＪａｖａ（登録商標）環境５０１０の基本部分は、よく知られているＪａｖａ（登録商標）  ２  Ｐｌａｔｆｏｒｍ，  Ｍｉｃｒｏ  Ｅｄｉｔｉｏｎによって構築されている。
【００８３】
図６は、図２に示した画像処理装置１００の操作部１５０の表示部に表示させる基本画面を説明する図であり、画像処理装置１００の制御装置１１０による表示制御により表示される画面に対応する。
【００８４】
尚、この画面はタッチパネルとなっており、それぞれ表示される機能の枠内（ソフトキー）をユーザが触れることにより、その機能が実行される。コピーモードキー５２４は、複写動作を行う場合に押すキーである。そして、このコピーモードキー５２４が押されたときに、後述する図１２に示すコピーモードの画面５３０を表示させるよう制御する。拡張機能キー５０１は、このキー５０１を押すことによって両面複写、多重複写、移動、綴じ代の設定、枠消しの設定等のモードに入るよう制御している。
【００８５】
５４０はステータスラインであり、制御装置１１０は、機器の状態や印刷情報を示すメッセージを表示させるよう制御する。本図の場合、自装置のステータス状況を獲得した結果、コピー待機中「コピーできます」であることを通知させている。
【００８６】
画像モードキー５０２は、複写画像に対して網掛け、影付け、トリミング、マスキングを行うための設定モードに入る為の指示をユーザにより入力させる為のキーである。ユーザモードキー５０３は、モードメモリの登録、標準モード画面の設定が行える。応用ズームキー５０４は、原稿のＸ方向、Ｙ方向を独立に変倍するモード、原稿サイズと複写サイズから変倍率を計算するズームプログラムのモードに入る。
【００８７】
Ｍ１キー５０５、Ｍ２キー５０６、Ｍ３キー５０７は、それぞれに登録されたモードメモリを呼び出す際に押すキーである。オプションキー５０９は、フィルムから直接複写するため、フィルムプロジェクタ等のオプション機能の設定を行うキーである。５０８はコールキーである。
【００８８】
ソータキー５１０は、ソート、ノンソート、グループの設定を行うキーである。原稿混載キー５１１は、原稿フィーダにＡ４サイズとＡ３サイズ、またはＢ５サイズとＢ４サイズの原稿を一緒にセットする際に押すキーである。
【００８９】
等倍キー５１２は、複写倍率を１００％にする際に押すキーである。縮小キー５１４、拡大キー５１５は、定型の縮小、拡大を行う際に押すキーである。５１６は所望の倍率を指定するズームキーである。用紙選択キー５１３は、複写用紙の選択を行う際に押すキーである。
【００９０】
濃度キー５１８、５２０は、キー５１８を押す毎に濃く複写され、キー５２０を押す毎に薄く複写される。濃度表示５１７は、濃度キー５１８、５２０を押すと表示が左右に変化する。ＡＥキー５１９は、新聞のように地肌の濃い原稿を自動濃度調整複写するときに押すキーである。ＨｉＦｉキー５２１は、写真原稿のように中間調の濃度が濃い原稿の複写の際に押すキーである。
【００９１】
文字強調キー５２２は、文字原稿の複写で文字を際だたせたい場合に押すキーである。５６０は履歴キーであり、これを押下することで、印刷済みのジョブの履歴情報を表示する。例えば、印刷ジョブの、終了時刻、ユーザ名、ファイル名、印刷枚数等の情報を表示する。６００はプリンタ選択キーであり、リモートコピーや重連コピーを行う場合の受信側複写機を選択する際に押すキーである。
【００９２】
ガイドキー５２３は、あるキーの機能がわからないとき押すキーであり、そのキーの説明が表示される。ファックスキー５２５は、ファックスを行うときに押すキーであり、Ｂｏｘキー５２６は、Ｂｏｘ機能を表示させたいときに押すキーである。プリンタキー５２７は、プリントの濃度を変更する、あるいは、リモートのホストコンピュータからのＰＤＬデータのプリント出力詳細情報を参照したい場合に押すキーである。５２８はＩＤキーである。
【００９３】
本画像処理装置１００の制御装置１１０による表示制御により操作部１５０の表示部の操作画面上に表示させるシステム状況キーは、画像処理装置１００のハードウェアおよびファームウェアを含むシステムとしての装置状況をユーザが確認したり、各種機能のジョブの状態や履歴をユーザが参照したり、ユーザ操作によりジョブを中止させたりするための操作画面を表示部に表示させる指示をユーザにより入力可能にする為のソフトキーである。ユーザがこのキーを押すと、該制御部は、後述する図１７のデバイス状況表示ダイアログ画面を操作部１５０の表示部に表示させるよう制御する。
【００９４】
図７は、図２に示した拡張コントローラ１０３のハードウェア構成を示すブロック図である。
【００９５】
図７において、メインＣＰＵ（ＣＰＵ）４１０１は、全体の制御を行う中央演算装置であり、ＲＯＭ４１０５およびハードディスクユニット４１０６に記憶されたプログラムを実行する。ネットワークインタフェース４１０２は、他の機器との間でネットワークを介したデータ通信を行うための制御部である。
【００９６】
ＣＰＵ４１０１によって実行されるソフトウエアは、ＬＡＮ４００を介して、印刷デバイスや他のネットワーク機器、あるいは他のコンピュータと双方向のデータのやり取りを行うことができる。周辺インタフェース４１０３は、周辺機器の制御を行うための制御部である。
【００９７】
メモリ４１０４は、ＣＰＵ４１０１で実行する命令や、データなどを保存するための、一般的には揮発性の記憶部である。ＲＯＭ４１０５は、基本的なハードウェア制御を行うためのプログラムやデータなどを保存するための読み取り専用記憶部である。ハードディスクユニット４１０６は、拡張コントローラ１０３で実行されるプログラムや演算されたデータなどを保存するための、一般的には不揮発性の記憶部であり、ブートプログラム（起動プログラム：ハードやソフトの実行（動作）を開始するプログラム）、複数のアプリケーション、編集ファイル、ユーザファイルそしてネットワーク管理プログラム等を記憶する。
【００９８】
ディスプレイインタフェース４１０７は、拡張コントローラ１０３の内部状態や、実行状態などを表示するための表示部（図３の拡張コントローラ１０３が具備する操作部１７１の表示部）を接続するため制御部である。キーボードインタフェース４１０８やマウスインタフェース４１０９は、拡張コントローラ１０３に対してユーザがデータや命令を入力するための入力装置を接続できる。周辺機器インタフェース４１０３は、ＵＳＢ、ＲＳ−２３２Ｃシリアル、ＩＥＥＥ１３９４などの仕様を実装した周辺機器１７２を接続するための制御部である。周辺機器１７２は、例えば、ＣＤ−ＲＯＭドライブやメモリメディアドライブなどの外部記憶装置や、ユーザを特定するためのユーザ認証装置などである。
【００９９】
拡張コントローラ１０３が具備する操作部１７１は液晶ディスプレイ４２０３とその表面に透明なシート状に貼られたタッチパネル４２０２とから構成される。タッチパネル４２０２はマウスと同様のポインティングデバイスである。ＣＰＵ４１０１で実行されるソフトウエアはタッチパネル４２０２によってユーザがポイントした表示上の位置を座標データとして検出することができる。タッチパネル４２０２は周辺機器インタフェース４１０３によって駆動される。
【０１００】
液晶ディスプレイ４２０３は拡張コントローラ１０３の内部状態や、実行状態などを表示するための表示部である。ＣＰＵ４１０１で実行されるソフトウエアは液晶ディスプレイ４２０３上にグラフィカルユーザインタフェースを描画できる。液晶ディスプレイ４２０３はディスプレイインタフェース４１０７によって駆動される。
【０１０１】
図８は、図２に示した拡張コントローラ１０３内のアプリケーションが画像処理装置１００とインタフェースするためのＡＰＩを示す図であり、各インタフェースは、拡張コントローラ１０３のＣＰＵ４１０１によって実行されるソフトウエアのプログラム的なモジュールに対応する。
【０１０２】
図８において、アプリケーション８００１は拡張コントローラ１０３で実行される各種アプリケーションに対応する。ＡＰＩ８００２はアプリケーション８００１が画像処理装置１００のコントローラ部１１０上のソフトウエアとインタフェースするためのアプリケーションプログラムインタフェースである。
【０１０３】
プリンタドライバ８００３はアプリケーション８００１によるプリントを可能とするモジュールである。プリントを実現するために、プリントサービスのプロトコルに従って実装されたクライアントとして、画像処理装置１００のネットワークサービス５００６とインタフェースする。
【０１０４】
スキャナドライバ８００４はアプリケーション８００１による画像スキャンを可能とするモジュールである。スキャンを実現するために、画像処理装置１００内の制御ＡＰＩ５００５に相当するプロトコルにしたがって実装されたクライアントとして、制御ＡＰＩ５００５とインタフェースする。
【０１０５】
ジョブ制御・装置制御インタフェース８００５はアプリケーション８００１による基本的なジョブ制御と装置制御を可能とするモジュールである。基本的なジョブ制御と装置制御を実現するために、画像処理装置１００内の制御ＡＰＩ５００５に相当するプロトコルにしたがって実装されたクライアントとして、制御ＡＰＩ５００５とインタフェースする。プレゼンテーション拡張インタフェース８００６は、アプリケーション８００１による画像処理装置１００内組み込みアプリケーションＵＩ５００９の拡張を可能とするためのモジュールである。
【０１０６】
このモジュールは、プレゼンテーションインタフェース５００８に相当するプロトコルにしたがって実装されたクライアントとして、プレゼンテーションインタフェース５００８とインタフェースする。このモジュールが提供するＡＰＩによって、拡張コントローラ１０３内のアプリケーション８００１は、画像処理装置１００に組み込まれた組み込みアプリケーションのＵＩ５００９に相当するプレゼンテーションロジック（つまりアプリケーションのＵＩ）を実装することができる。また、アプリケーション８００１の実装次第で、組み込みアプリケーションＵＩ５００９にはない機能を拡張したりカスタマイズしたりすることもできる。
【０１０７】
組み込みアプリケーション拡張インタフェース８００７は、アプリケーション８００１による画像処理装置１００内組み込みアプリケーションロジック５００７のカスタマイズを可能とするためのモジュールである。このモジュールは、組み込みアプリケーションロジック内部が備えるプラグインのためのインタフェース（不図示）に相当するプロトコルにしたがって実装されたクライアントであり、組み込みアプリケーションロジック５００７とインタフェースする。
【０１０８】
このモジュールが提供するＡＰＩによって、拡張コントローラ１０３内のアプリケーション８００１は、画像処理装置１００に組み込まれた組み込みアプリケーションロジック５００７の一部を置き換えたり拡張したりするプラグインを実装することができる。
【０１０９】
画像ジョブ制御インタフェース８００８は、アプリケーション８００１による特に高速の画像処理を可能とするためのモジュールである。このモジュールは、ジョブ制御・装置制御モジュール内部の内部ＡＰＩに相当するプロトコルにしたがって実装されたクライアントであり、また、ローカルインタフェース２０１による画像転送を組み合わせることによって、拡張コントローラ１０３と画像処理装置１００の間で画像や文書をやり取りするジョブの高速化を達成する。
【０１１０】
図９は、図２に示した拡張コントローラ１０３のソフトウエアのモジュール群の階層構造を示すブロック図である。
【０１１１】
図９において、汎用オペレーティングシステム（ＯＳ）９００１は拡張コントローラ１０３のオペレーティングシステムである。リアルタイムＯＳと異なり汎用ＯＳは主に情報処理装置やコンピュータの土台を提供するソフトウエアとして開発されてきている。汎用ＯＳの例として、Ｗｉｎｄｏｗｓ（登録商標）、Ｍａｃ（登録商標）ＯＳ、Ｓｏｌａｒｉｓ（登録商標）、Ｌｉｎｕｘ（登録商標）、ＦｒｅｅＢＳＤ、ＮｅｔＢＳＤ、ＯｐｅｎＢＳＤなどがある。
【０１１２】
汎用ＯＳ９００１は拡張コントローラ１０３が備えるハードウェア的およびソフトウエア的な各種資源を抽象化して、より上位のソフトウエアから容易かつ効率的に利用可能とする。汎用ＯＳが提供する機構にはたとえば以下のものがある。すなわち、ＣＰＵによる処理の実行コンテクストを複数管理することによって複数の処理を実質的に並行動作させるマルチプロセス機構やスレッド機構、プロセス間およびスレッド間の同期やデータ交換を実現するプロセス間通信やスレッド間通信、プロセスごとに保護されたメモリ管理、割り込み管理、各種のデバイスドライバ、ローカルインタフェースやネットワークや通信などの各種プロトコルの処理を実装したプロトコルスタックなどが提供される。
【０１１３】
特筆すべきは、市販されている一般のコンピュータ周辺機器のデバイスドライバは汎用ＯＳ用のものが多く提供されていることである。この理由は、一般にコンピュータ周辺機器は汎用ＯＳが稼動するパーソナルコンピュータなど汎用の情報処理装置のために開発されるためである。
【０１１４】
汎用ＯＳを採用することで、市場に出回っている多種多様なコンピュータ周辺機器のハードウェアとデバイスドライバをそのまま、または比較的容易に、拡張コントローラ１０３のために流用することができる。拡張コントローラ１０３は画像処理装置１００の拡張性や柔軟性を補うために付加されるアクセサリであるが、その目的は汎用の情報処理装置と同等のハードウェア構成を採用するだけでなくさらにソフトウエア的には汎用のＯＳを採用することによってより効率的に達成される。
【０１１５】
拡張コントローラプラットフォーム９００２は拡張コントローラ１０３のソフトウエアの動作環境を提供する土台となるソフトウエア（ライブラリ、フレームワーク、およびランタイムモジュールなど）である。また、画像処理装置１００に内蔵された組み込みアプリケーションと連携するアプリケーションを拡張コントローラ１０３内に容易に構築可能とするために用意されたユーティリティライブラリ、フレームワーク、およびランタイムモジュール群を含む。
【０１１６】
システムアプリケーション９００４は拡張コントローラ１０３に標準搭載され、ユーザによる拡張画像処理システムの利用や管理を助けるためのユーティリティアプリケーション群である。システムアプリケーション９００４に分類されるアプリケーション群はどれもアプリケーション８００１に対応し、アプリケーションの実装においてＡＰＩ８００２を利用することができる。
【０１１７】
ユーザランドアプリケーション９００５に分類されるアプリケーション群は、拡張画像処理システムの拡張された機能をユーザに提供するためのアプリケーション群である。ユーザランドアプリケーション９００５に分類されるアプリケーションはアプリケーションを単位としてインストールによって追加することもアンインストールによって削除することも可能である。
【０１１８】
また、アプリケーションプログラムの実体だけでなく、ユーザがそのアプリケーションプログラムを実行する許諾（ライセンス）を購入したときのみアプリケーションを活性化（アクティベート）するように制御することもできる。ユーザランドアプリケーション９００５に分類されるアプリケーション群はどれもアプリケーション８００１に対応し、アプリケーションの実装においてＡＰＩ８００２を利用することができる。
【０１１９】
ＭＦＰ統合アプリケーション９００６は画像処理装置１００の組み込みアプリケーションに対応するユーザランドアプリケーションであり、画像処理装置１００が提供する上位機能や基本機能を拡張コントローラ１０３から利用可能とする。ＭＦＰ統合アプリケーション９００６はプレゼンテーション拡張インタフェース８００６や組み込みアプリケーション拡張インタフェース８００７によって、画像処理装置１００の組み込みアプリケーションとインタフェースする。
【０１２０】
ＭＦＰ統合アプリケーション９００６は単に画像処理装置１００の組み込みアプリケーションとまったく同様な機能性やユーザインタフェースを提供するだけでなくそれらを拡張して提供することもできる。ＭＦＰ統合アプリケーション９００６は９００７〜９０１２のアプリケーション部品を内部に含み統合している。
【０１２１】
コピー９００７は画像処理装置１００の組み込みアプリケーションの一機能であるコピー機能に相当するアプリケーション部品である。ボックス９００８は画像処理装置１００の組み込みアプリケーションの一機能である文書ファイリング機能に相当するアプリケーション部品である。
【０１２２】
送信９００９は画像処理装置１００の組み込みアプリケーションの一機能である文書送受信機能に相当するアプリケーション部品である。ポータル９０１０はユーザの好みに応じてよく使う機能や定型処理を簡単に呼び出すための入り口を提供するアプリケーション部品である。ＭＦＰ統合アプリケーション９００６はアプリケーション部品をまたがって動作パラメータの設定や一連の操作などをマクロ化し、複数のマクロを実行するためのカスタマイズボタン群を自在に配置可能なユーザインタフェースを提供する。
【０１２３】
本体ジョブモニタ９０１１は画像処理装置１００内部で実行中のジョブの状況や完了したジョブの履歴などを参照するためのアプリケーション部品である。
【０１２４】
デバイス管理９０１２は画像処理装置１００のハードウェアを管理するためのユーザインタフェースを提供するアプリケーション部品である。
【０１２５】
メモリメディア操作９０１３は拡張コントローラ１０３に周辺機器として接続された各種のリムーバブルストレージ（光磁気メディアドライブ、ＵＳＢストレージ、スマートカードやコンパクトフラッシュ（登録商標）に代表されるメモリカードなど）の操作を行うためのユーザランドアプリケーションである。
【０１２６】
メモリメディア内部に格納された文書を画像処理装置１００に引き渡してプリント、送信、またはファイリングしたり、画像処理装置１００が画像スキャンまたは受信した文書やファイリングされていた文書を受け取ってメモリメディアに格納したりすることができる。
【０１２７】
暗号化セキュアプリント９０１４は、クライアントＰＣから暗号化されたプリント要求を受信して暗号化されたままいったん格納し、許可されたユーザによる操作であることがユーザ認証された場合のみ複合化して実際の画像処理装置１００へのプリントを行うという、暗号化留め置きプリント機能を提供するユーザランドアプリケーションである。
【０１２８】
ブラウザ９０１５は拡張コントローラ１０３の操作部でＷｅｂなどのブラウジング機能を提供するユーザランドアプリケーションである。９０１６、９０１７、９０１８は他のユーザランドアプリケーションである。前述したように、ユーザランドアプリケーションは柔軟に追加や削除または活性化や不活性化することができる。
【０１２９】
図１０は、図９に示したシステムアプリケーション９００４のアプリケーション群を説明するブロック図である。
【０１３０】
図１０において、拡張コントローラ１０３のシステムアプリケーション９００４として分類されるソフトウエアモジュール（パッケージ）には以下のユーティリティプログラムやランタイムモジュールなどが含まれる。
【０１３１】
ファンクションキーパネル１０００１は機能メニューやソフトウエアキー等を拡張コントローラ操作部表示部のデスクトップに配置するフレームワークとコンテナである。ファンクションキーとして以下を配置することができる。システム既定のキー（例えばログアウト、シャットダウン、カウンタ確認、余熱、システム状況、システム設定、スクリーンキーボード呼び出し）等である。
【０１３２】
選択中のアプリケーションに応じて動作が切り替わるアプリケーションコンテキストキー（たとえばガイド、アプリケーション設定、アプリケーション状況）、選択中のアプリケーションがその操作を助けるために追加配置するカレントアプリケーション追加キー（たとえばアプリケーション内部の固有メニューの一部をキーとして展開配置したもの）など、キーのレイアウトとルック＆フィールはユーザの好みに応じてカスタマイズ（パーソナライズ）できる。
【０１３３】
ファンクションキーパネルのルック＆フィールは、システム全体のテーマと連動して切り替わる。例えば高コントラストや反転などのテーマが選ばれると、ファンクションキーパネルの表示もそれぞれの特性を反映するように切り替わる。ファンクションキーパネルにはソフトウエアキーやメニューだけでなく時計やメール着信フラグなどのアプリケーションコンポーネントも配置できる。あるユーザの利用状況においては、ファンクションキーパネルには「ユーザモード」、「キーボード」、「操作パネル」、「ガイド」、「アバウト」および「リセット」と名づけられたキーが配置される。
【０１３４】
「ユーザモード」は、選択中のカレントアプリケーションに対して環境設定ダイアログを開くことを指示するか、または、システムアプリケーションのひとつであるシステム環境設定１０００９を起動する。
【０１３５】
「キーボード」はシステムアプリケーションのひとつであるスクリーンキーボード１０００２の起動を指示する。「操作パネル」はシステムアプリケーションのひとつである操作パネルエミュレータ１０００３の起動を指示する。
【０１３６】
「ガイド」は、選択中のカレントアプリケーションに対して、システムアプリケーションのひとつであるヘルプを用いて、アプリケーションの動作状況に応じたオンラインマニュアルを表示することを指示する。「アバウト」は、選択中のカレントアプリケーションに対して、バージョン、開発元、著作権などのアプリケーション情報を表示することを指示するか、あるいは、システム全体に関するモジュールごとのバージョンや著作権情報などを表示する。
【０１３７】
「リセット」は選択中のカレントアプリケーションに対して、ユーザが途中まで行った一連の操作を取り消してその時点の状況に応じたひとつ前のチェックポイントまでロールバックすることを指示する。たとえばユーザがテキスト入力フィールドに文字列を入力にリセットを押下すると入力途中の文字列がクリアされたり、あるいは文字列の仮名漢字変換途中にリセットを押下すると変換候補選択状態が解除されて仮名に戻ったり、画像処理ジョブの動作パラメータを設定するためのダイアログに対して設定値の変更を施している最中にリセットを押下すると変更途中の設定はキャンセルされて当初の値に戻ったりする。
【０１３８】
スクリーンキーボード１０００２は物理的なフルキーボードをエミュレーションするためのソフトウエアキーボードである。タッチパネルを指で操作するために操作性を最適化してある。拡張コントローラ１０３にはオプションで物理的なキーボードが装着される場合もあることを考慮して、システムのできるだけ低レベルで物理キーボードをエミュレートする（すなわちシステムのほとんどのレベルで、物理キーボードと区別する必要がないように構成される）。
【０１３９】
スクリーンキーボードの表示が前面を覆うことによって、入力の宛先となるアプリケーションの操作性は低下してしまうが、できるだけ邪魔にならないように配慮され、たとえば、表示・非表示の切り替えや表示位置の移動が指で簡単に操作できる。またディスプレイがより高解像度化したとき指での操作にむかないほどキートップが小さくならないように、解像度独立に構成される。スクリーンキーボードは国際化の対象であり、拡張コントローラ１０３の出荷される仕向けのローカル（ｌｏｃａｌｅ）に応じて入力言語などが切り替わる。
【０１４０】
操作パネルエミュレータ１０００３は、画像処理装置１００の物理的な操作パネルをエミュレーションするためのソフトウエアパネルである。操作パネルを構成するスタートキー・ストップキー・テンキーなどをソフトウエアによってエミュレートする。各種キーのコンポーネントが押されたとき生成するキーコードは、拡張コントローラにオプションとして接続される物理的なキーボードが生成するキーコードにマッピングされる。
【０１４１】
例えば、テンキーのキーが押されたとき、各キーに相当する物理フルキーボードのキーコードが生成される。操作パネルエミュレータのＧＵＩはアプリケーションからの要求に応じて表示される。また、ユーザの明示的な操作によって表示させることもできる。操作パネルエミュレータは、画像処理装置１００の機種依存な差異を選択するために複数のモードを持つ。
【０１４２】
例えば画像処理装置１００がファクス対応機である場合はファクス用キー（＊や＃など）を備えたモードで動作する。また、アプリケーションが操作パネルエミュレータを呼び出す場合には、アプリケーションからキーごとの表示・非表示を選択できる。
【０１４３】
アイコンボックス１０００４は、カレントアプリケーションを切り替えるためのシステムアプリケーションである。その時点で操作対象とするユーザランドアプリケーションをユーザが選択するためのアプリケーション選択リストのプレゼンテーションロジックを提供する。アイコンボックス１０００４には、アイコン画像、および／または、アプリケーション名がリスト表示され、ユーザが選択するとカレントアプリケーションがそのアプリケーションに切り替わる。
【０１４４】
アプリケーション名はテキスト、または、画像のどちらの形式で与えられても表示できる。テキストは国際化フレームワークに連動したローカライズ対象である。アイコン画像やアプリケーション名のリソースは、各ユーザランドアプリケーションモジュールの中に含まれるリソースを利用する。ユーザがアイコンの表示順序を編集することができる。ルック＆フィールはテーマと連動して切り替わる。アイコンボックスそのものはアプリケーションのセレクタであってラウンチャではない。ただし、ライフサイクル管理の遅延起動機構を提供することにより、アプリケーションは最初に選択されたときにはじめて起動されるように登録することもできる。アプリケーションごとの強制終了やアラート表示などの機能を追加してもよい。
【０１４５】
インストーラ１０００５は拡張コントローラ１０３を構成する各種のソフトウエアをインストールするためのインストーラである。インストール対象のソフトウエアは、ユーザランドアプリケーション、システムアプリケーション、ライブラリ、ドライバ、拡張コントローラプラットフォームのモジュール群などがある。インストールするソフトウエアモジュールはリムーバブルメディアなどローカルファイルシステムから供給するだけでなく、ネットワーク経由で供給することもできる。
【０１４６】
アップデータ１０００６は拡張コントローラ１０３を構成する各種のソフトウエアをアップデートするためのシステムアプリケーションである。アップデート対象のソフトウエアはインストーラ１０００５のインストール対象と同様である。アップデートするソフトウエアモジュールはローカルファイルシステム（リムーバブルメディアも含む）から供給するだけでなく、ネットワーク経由で供給することもできる。サーバに存在するアップデータの更新をネットワーク経由で検出し、更新されていれば管理者ユーザにアップデートを促す機能も有する。
【０１４７】
カウンタ参照１０００７は、カウンタ値を参照するためのシステムアプリケーションである。画像処理装置１００のカウンタと拡張コントローラ１０３のアプリケーション利用をカウントするカウンタの両方を参照できる。
【０１４８】
アンチウィルス１０００８はウィルス感染の予防と検出、および、感染時の修復を行うシステムアプリケーションである。
【０１４９】
システム環境設定１０００９は拡張コントローラ１０３のシステムソフトウエアやハードウェアの各種の環境設定項目（プリファレンス、プロパティ）を参照したり編集したりするためのシステムアプリケーションである。システム環境設定は複数のコンポーネントをプラグイン可能なコンテナであり、各種の環境設定項目はそのカテゴリにしたがってそれぞれを設定するためのコンポーネントによって処理される。設定対象（設定項目）によって、たとえばシステム管理者のみが参照可能であったり設定可能であったりというように適切にアクセス制御される。
【０１５０】
テーマ１００１０は、アプリケーションごとに有するカスタマイズ項目（プリファレンス）を、統一感を維持して一元的に設定するための機構を提供するシステムアプリケーションである。たとえば、ユーザが自身の好みや身体的特性に合わせて全体的な色調設定やコンポーネントの表示サイズ設定などをテーマとして指定すると、各種アプリケーションはテーマに連動した動作モードで動作する。
【０１５１】
起動アプリケーション選択１００１１は、ユーザ毎に、アプリケーションの起動と停止を制御するシステムアプリケーションである。ユーザはシステムにインストールされているアプリケーションの一覧から、アプリケーションを選択し、実行状態に状態遷移させることができる。実際に実行が許可されるかどうかはユーザの権限に基づく。また、実行状態にあるアプリケーションの中からアプリケーションを選択し停止状態に状態遷移させることができる。システム管理者は、全ユーザに共通の共通設定を行うこともできる。
【０１５２】
ログインダイアログ１００１２はログイン機構に対応するシステムアプリケーションである。拡張画像処理システムをユーザが利用するユーザセッションの開始に必要なユーザとの対話を行う。必要な対話とは、たとえば、システムがユーザに対してユーザ認証に必要な情報（ドメイン名、ユーザ名、パスワード）のエントリを求める。ユーザ名のエントリは、テキスト入力だけでなく、より簡易にユーザリストから選択可能なように設定できる。
【０１５３】
特にゲストユーザ（認証不要のユーザ）による操作を許す運用を行う場合、ゲストユーザによるログイン操作は簡易に行えるように設定できる。ログイン方法の設定変更はシステム管理者ユーザが行う。ユーザがログインしていない状態（ユーザセッション中ではないシステムセッション中）に表示されるユーザインタフェースを備えるので、システムセッションの管理操作（シャットダウンなど）を行うための機能を付加したり、画像処理装置１００の状態表示を行う機能を付加したりする場合もある。
【０１５４】
ユーザセッションの開始に際して、ＩＣカード（スマートカード）や生体認証などに基づくユーザ認証を行う場合、専用のログインダイアログ実装で置き換えられるように構成されている（ログイン機構の実装も同様に置き換えられる）。
【０１５５】
ユーザ管理１００１３は拡張画像処理システムを利用するユーザの管理とユーザの権限の管理を行うシステムアプリケーションである。
【０１５６】
アドレス帳１００１４はシステム内部または外部のディレクトリサービスに接続しディレクトリ情報を編集操作するためのシステムアプリケーションである。
【０１５７】
アドレス情報は、宛先情報を含むが、これに限定されず、ユーザ、組織、デバイス、あるいはサービスなどの各種エンティティごとにその諸属性をディレクトリ情報として扱う。
【０１５８】
ステータスティッカ１００１５はシステムとアプリケーションが通知するステータス情報やメッセージを表示するためのシステムアプリケーションである。テキストやアイコン画像などを表示することができる。ステータスティッカ１００１５は、並行する複数のメッセージ表示要求に対し優先度ベースの調停や時分割表示なども行う。ステータスティッカのメッセージ表示はアニメーションなどによるさまざまな表示効果に対応している。
【０１５９】
システム状況モニタ１００１６は拡張コントローラ１０３のハードウェアおよびソフトウエアの両面に関するシステムの状況とアプリケーションの状況を監視するためのシステムアプリケーションである。拡張画像処理システム１０を構成する各種モジュール群のバージョンや著作権などの情報を確認することもできる。
【０１６０】
ログビューア１００１７は拡張コントローラ１０３および画像処理装置１００のそれぞれのシステムや組み込みアプリケーションが残すログ情報を参照したり管理したりするためのシステムアプリケーションである。
【０１６１】
システムセットアップ１００１８は拡張画像処理システム１０を設置する際の初期セットアップ手順や、画像処理装置１００を新機種に交換する際のリプレース処理手順、何らかのトラブルによって拡張コントローラ１０３のシステムが破壊され復旧する必要が生じた際の回復手順などを補助するためのユーティリティシステムアプリケーションである。
【０１６２】
バックアップ１００１９は拡張コントローラ１０３と画像処理装置１００のそれぞれが持つハードディスクや不揮発性メモリに格納されたデータを、拡張コントローラ１０３に接続されたリムーバブルメディア、外部記憶装置、またはネットワークストレージなどの安全な記憶手段に退避し、また退避したデータを元に戻すリストアを行うためのシステムアプリケーションである。
【０１６３】
スクリーンセーバ１００２０はユーザが拡張コントローラ１０３の操作部を利用していないときに表示部の焼きつきを防ぐために表示の制御を行うシステムアプリケーションである。スクリーンセーバ１００２０では拡張画像処理システム１０の便利な使い方などを紹介するアニメーションを再生することもできる。また、画像処理装置１００の紙なしなどのアラーム情報を表示したり、システム管理者などが設定したメッセージ（たとえば「定期メンテナンス日時のお知らせ」など）などを掲載した仮想的な伝言板を表示したり、ネットワーク経由でサーバから最新の情報（天気予報やニュースなど）を取得して表示したりすることもできる。複数のユーザが交互にログインして拡張コントローラ１０３を用いる運用形態においては、スクリーンセーバ１００２０はログアウトし忘れて装置の前を離れたユーザを自動的にログアウトさせるためのオートログアウト処理を行う。
【０１６４】
ヘルプシステム１００２１は、拡張画像処理システム１０のシステム全体の利用方法などを解説する文書を表示したり、それぞれのユーザランドアプリケーションがその解説文書を表示することを助けたりするためのシステムアプリケーションである。システムのモジュールや各アプリケーションモジュールなどがそれぞれモジュール単位で供給した解説文書コンテンツを、システム全体として統合するポータル機能を備える。
【０１６５】
アプリケーションプログラムからヘルプシステム１００２１に対してコンテンツ内の任意の箇所をユーザに提示するように指示することが可能である。したがって、アプリケーションはその動作状況に応じて最適な情報をユーザに提示できる。ヘルプシステム１００２１はＷｅｂアプリケーションとして構成されているため、拡張コントローラ１０３の操作部１７１に解説文書を表示するだけでなく、クライアントＰＣ１１などで稼動するＷｅｂブラウザ上に解説文書を表示することもできる。
【０１６６】
文書ビューア１０２２は、テキスト、画像、およびアプリケーション固有形式など各種フォーマットの文書データを表示するためのシステムアプリケーションである。表示する文書の形式の例には、テキスト、ＨＴＭＬやＸＭＬやＳＧＭＬなどのマークアップ言語で記述された文書、ＪＰＥＧやＰＮＧやＴＩＦＦやＪＢＩＧなどの画像、ＬＩＰＳ（登録商標）やＰｏｓｔＳｃｒｉｐｔ（登録商標）などのページ記述言語、ＰＤＦなどの文書、Ｍａｃｒｏｍｅｄｉａ  ＦｌａｓｈやＳｕｎ  Ｊａｖａ（登録商標）  Ａｐｐｌｅｔなどの表示を伴うプログラム、アニメーション、あるいは、ワードプロセッサやプレゼンテーションや表計算など各種アプリケーションプログラム固有のプロプラエタリなフォーマットに基づく文書データなどがある。文書ビューア１０２２が扱う文書の一部または全部は、画像処理装置１００によってプリント、スキャン、送受信、ファイリングなどが可能である。
【０１６７】
ファイル操作１００２３は、拡張コントローラ１０３に内蔵または接続された各種記憶手段の上に構築されたファイルシステム、画像処理装置１００が持つファイルシステム、または、ネットワーク経由でサーバコンピュータ１２やクライアントＰＣ１１などが提供するネットワーク共有のファイルシステムを操作するシステムアプリケーションである。
【０１６８】
文書管理１００２４は、拡張コントローラ１０３に搭載された文書管理システム（ｄｏｃｕｍｅｎｔ  ｍａｎａｇｅｍｅｎｔ  ｓｙｓｔｅｍ）である。文書管理１００２４は拡張コントローラ１０３のファイルシステムや外部サーバのデータベース管理システムなどを用いて各種の文書データの蓄積、検索、管理などを実現するための機能を提供する。
【０１６９】
図１１は、図２に示した拡張コントローラ１０３のソフトウエアプラットフォームを構成するソフトウエアパッケージ群を説明するブロック図である。
【０１７０】
図１１において、システムセッション管理１１００１は拡張コントローラ１０３のブートアップからシャットダウンまで、システム全体のセッション管理を行うためにシステム全体の構成および設定を管理する。デーモン型サービス（常駐型アプリケーションとして実装されたシステムアプリケーションとユーザアプリケーション）のライフサイクル管理も行う。
【０１７１】
電源制御１１００２は拡張コントローラ１０３の省電力設定など電力制御の管理を行う。Ｗａｋｅ  Ｏｎ  ＬＡＮ、ＡＣＰＩなどハードウェアシステムとＢＩＯＳ設定を管理する。
【０１７２】
ユーザセッション管理１１００３はログインからログアウトまで、ユーザによるログインセッションを管理する。コンソール型アプリケーション（ユーザのログインセッション中に動作するシステムアプリケーションとユーザアプリケーション）のライフサイクル管理を行う。またＷｅｂアプリケーションのログインセッション管理機構を助ける。
【０１７３】
ログイン機構１１００４はユーザがユーザセッションを開始する機構である。ユーザ管理およびユーザ認証パッケージによりユーザの特定を行う。ユーザ環境へのインテグレーションのために、個別のニーズに合わせたログイン機構がプラグイン可能である。たとえばＩＣカード（スマートカード）によるユーザ認証や生体認証に基づくログイン機構を統合することができる。
【０１７４】
アクセス制御１１００５はユーザ毎に、および、ユーザが所属するグループ毎に、拡張画像処理システム１０を構成する各種リソースのアクセス権限を管理する。
【０１７５】
ユーザ管理・ユーザ認証１１００６はシステムを利用するユーザアカウントの管理とユーザの特定（識別）を行う。パスワードなどによるｗｈａｔ−ｙｏｕ−ｋｎｏｗ型の認証だけなくＩＣカード（スマートカード）などによるｗｈａｔ−ｙｏｕ−ｈａｖｅ型や生体認証などによるｗｈａｔ−ｙｏｕ−ａｒｅ型の認証も利用できる。
【０１７６】
ディレクトリサービス連携１１００７は拡張コントローラ１０３のユーザ管理、ユーザ認証、またはディレクトリ情報の管理を外部のディレクトリサービスに委譲する。
【０１７７】
ディレクトリ１１００８は拡張コントローラ１０３が備えるローカルディレクトリサービスであり、ユーザ、および、各種リソースの情報を管理する。管理する情報は、ディレクトリサービスが管理対象とするあらゆるエンティティの属性とエンティティ間の関係である。たとえばＮＤＳなどのディレクトリサービスが管理するエンティティの例には、ユーザ、プリンタ、ファイルサーバなどがあげられる。管理対象は、拡張コントローラ１０３システム内部のリソースと画像処理装置１００内部のリソースの両者である。
【０１７８】
アプリケーションライフサイクル管理１１００９はシステムアプリケーションおよびユーザランドアプリケーションのライフサイクル（インストール、アップデート、アンインストール、起動、中断、停止）を管理する。ライセンス管理１１０１０は拡張コントローラ１０３における各アプリケーションの利用許諾を管理する。
【０１７９】
アプリケーションカウンタ１１０１１は拡張コントローラ１０３に搭載された各アプリケーションの利用量と、アプリケーションの利用に伴うシステムリソースの利用量をカウントする。システムトータルのカウントだけでなくユーザ毎のカウントも可能である。
【０１８０】
環境設定管理１１０１２はシステム全体やアプリケーション毎の環境設定（プリファレンス、プロパティ、構成）を保持するデータベースである。ユーザに依存しない共通設定と、ユーザごとのユーザ固有設定とがそれぞれ管理される。
【０１８１】
なお、後述するように、図１８に示すスクリーンキーボードの表示設定による情報は、ハードディスクで記憶され、かつ、環境設定管理１１０１２によりその設定値が参照されることで、拡張コントローラ１０３が図１６または図１７に示す表示制御に従い、液晶ディスプレイ４２０３へのスクリーンキーボードの表示が制御される。
【０１８２】
リソース管理１１０１３はアプリケーションを構成する各種リソース（ローカライズ可能文字列、アイコン画像、サウンド、プラグイン、ＧＵＩ記述、補助データなど）の構造化と管理を助ける。
【０１８３】
パーソナライズフレームワーク１１０１４は複数のアプリケーションのアプリケーション固有設定に対し横断的にユーザの好みを反映するための枠組みを提供する。テーマ（例えば画面全体の色調を選択すると個々のアプリケーションの色調が連動するなど）や、ユーザ固有で複数のアプリケーションから共通に参照される汎用の環境設定（ＰＯＰサーバ情報など）を実現する。
【０１８４】
ユーザアシスタンス１１０１５は拡張コントローラ１０３のシステム全体およびアプリケーション群のドキュメンテーション（ガイド・ヘルプ、マニュアル、チュートリアルなど）を登録管理し、ユーザによるシステムやアプリケーションの利用を補助するための機構である。
【０１８５】
インプット１１０１６はユーザからの入力イベントを処理する。ユーザと拡張コントローラ１０３システム間のインタラクションにおいてユーザからのイベント入力源は、物理的なキーボードや操作部ハードキー、マウスなどのポインティングデバイス、スクリーンキーボードや操作部エミュレータ、ファンクションキーパネル上のスクリーンファンクションキーなどがある。インプットメソッド（各国語の文字入力のための入力手段あるいはフロントエンドプロセッサ）に関連する処理も行う。
【０１８６】
ステータスメッセージ管理１１０１７は各アプリケーションが表明する状態あるいはメッセージを受け付け管理する。ユーザや他のアプリケーションがその状態またはメッセージを取得するための機構を提供する。たとえばステータスティッカ１００１５がメッセージを取得する。
【０１８７】
国際化フレームワーク１１０１８はシステムとアプリケーションの国際化を助ける。
【０１８８】
ロギング１１０１９は各アプリケーションがログを残すための機構を提供する。アプリケーションがアプリケーションステータスメッセージ管理に対して送信した状態やメッセージの一部は自動的にロギングされる。エンドユーザのためのログだけでなく、開発者がアプリケーションをデバグするためのログも扱う。
【０１８９】
ウィンドウマネージャ１１０２０はネイティブの汎用ＯＳ９００１用ウィンドウマネージャとの連携によって実装される、拡張コントローラ１０３に最適化されＯＳ独立なウィンドウマネージャである。各種アプリケーションが開くＧＵＩウィンドウの表示や重なりを制御する。また、指で操作しやすいウィンドウタイトル、メニュー、スライダなどを提供する。
【０１９０】
ＧＵＩツールキット１１０２１は拡張コントローラ１０３システム用にルック＆フィールをデザインしたＧＵＩフレームワーク、ＧＵＩ部品（コンポーネント）、および、ランタイムモジュールである。
【０１９１】
サウンド１１０２２はタップ音、警告音など音による、システムやアプリケーションからユーザへの情報提示を制御する。拡張コントローラ１０３システム用にデザインしたサウンドデータのライブラリが用意される。サウンドの設定はパーソナライズの対象である。
【０１９２】
セキュア通信チャネル１０２３は暗号化などの技術により実現される安全なネットワークコネクションを提供する。ＩＥＴＦのＳｅｃｕｒｅ  Ｓｈｅｌｌ（ｓｅｃｓｈまたはＳＳＨ）を用いて、セキュアでないＴＣＰコネクションを簡単にトネリングする機構も提供する。
【０１９３】
セキュアファイルシステム１１０２４は安全なファイルシステムを提供する。暗号化などの技術によって実現される。暗号処理１１０２５は暗号処理のための機構を提供する。鍵管理１１０２６は各種の暗号処理のために必要な鍵を安全に管理する機構を提供する。
【０１９４】
画像処理１１０２７は各種画像処理のための機構を提供する。画像処理装置１００が内蔵する画像処理ハードウェアなどを用いた専用の画像処理機能を分散サービスとして拡張コントローラ１０３のアプリケーションから利用するための分散イメージング機構も提供される。またＯＣＲやブロックセレクションの技術も画像処理の一環として扱われる。
【０１９５】
プレゼンテーション拡張インタフェース１１０２８は拡張コントローラ１０３システム内アプリケーションによって実装されるプレゼンテーションロジックから、画像処理装置１００内の組み込みアプリケーションのビジネスロジックへの、通信機構を提供する。
【０１９６】
組み込みアプリケーション拡張インタフェース１１０２９は画像処理装置１００内の組み込みアプリケーションのビジネスロジックを分散コンポーネント化するためのフレームワークとアプリケーションプロトコルによって実現されるインタフェースである。
【０１９７】
ジョブ制御・装置制御インタフェース１１０３０は画像処理装置の製品シリーズをまたがって共通で統一的な制御モデルを提供するプリミティブなインタフェースである。ジョブ制御・装置制御インタフェース１１０３は、拡張コントローラ１０３システムのアプリケーションが画像処理装置１００のデバイス機能を制御することを可能とする。ジョブ制御・装置制御インタフェース１１０３０によって、拡張コントローラ１０３内のソフトウエアと画像処理装置１００内の組み込みアプリケーション層とがインタフェースすることはできない。
【０１９８】
画像ジョブ制御インタフェース１１０３１は画像処理装置１００によってプリントやスキャンなどの画像転送を伴う処理を高速に行うための高水準インタフェースである。画像ジョブ制御インタフェース１１０３１は拡張コントローラ１０３システム内のアプリケーションが画像処理装置１００本体のデバイス機能を利用することを可能とする。このインタフェースによって画像処理装置１００本体内の組み込みアプリケーション層とインタフェースすることはできない。
【０１９９】
プリンタドライバ１１０３２はネイティブの汎用ＯＳ９００１が提供するプリントフレームワークによって、拡張コントローラ１０３のアプリケーションから画像処理装置１００に対するプリントジョブやファクス送信ジョブや文書ファイル格納ジョブなどを投入する機構である。
【０２００】
スキャナドライバ１１０３３はネイティブの汎用ＯＳ９００１が提供する画像スキャンフレームワークによって、拡張コントローラ１０３のアプリケーションから画像処理装置１００に対するプルスキャンジョブの投入とスキャン画像の取得を行う機構である。
【０２０１】
アプリケーション間通信１１０３４は拡張コントローラ１０３で動作するソフトウエアのプロセス間およびスレッド間の通信機構を提供する。拡張コントローラ１０３の汎用ＯＳ９００１はその上で動作する各プロセスに対してそれぞれ独立した保護されたメモリ空間を提供するため、異なるプロセスとして動作するアプリケーション間で通信を行うためには特別な機構を必要とする。
【０２０２】
上記アプリケーション間通信１１０３４は汎用ＯＳ９００１が提供する共有メモリ、パイプ、ソケットなどの機構を用いて、プロセス間通信のトランスポート層を実装している。プロセス間通信のアプリケーションプロトコル層はＸＭＬプロトコル（ＳＯＡＰ）を用いたＸＭＬベースのメッセージ交換を基本とし、ＸＭＬプロトコルの扱いを助けるツールキット、フレームワーク、エンジンが提供される。
【０２０３】
また、アプリケーション間通信１１０３４は、拡張コントローラ１０３と画像処理装置１００、および、拡張コントローラ１０３と外部システムなど、複数のノードに分散しネットワークを介した協調を行う複数のソフトウエア群による分散システムの構築を助けるためのフレームワークも含む。この枠組みには、前記のプログラミング言語独立なＸＭＬプロトコルに基づくものと、Ｊａｖａ（登録商標）の分散オブジェクト技術であるＲＭＩに基づくものとが提供される。
【０２０４】
マクロ・スクリプティング１１０３５はエンドユーザプログラミングやスクリプティング、あるいは、例題学習（ユーザが行った動作を記録して、再生可能とする）などの技巧によって、ソフトウエアにおける一連の処理を単一の処理にまとめるマクロ機構である。
【０２０５】
マクロ・スクリプティング１１０３５によって、ユーザは単一のアプリケーションの中で行う一連の処理をマクロ化するだけでなく、複数のアプリケーションの処理を組み合わせた処理を定型業務のようなマクロとして登録し利用することもできる。
【０２０６】
実行スケジューリング１１０３６は定時実行（ＵＮＩＸ（登録商標）のユーティリティであるｃｒｏｎに類似している）、および、システムセッションのイベント（たとえばブートアップ、シャットダウン）やユーザセッションのイベント（たとえばログイン、ログアウト）などに同期して所望の処理を自動的に実行するための機構である。
【０２０７】
Ｗｅｂサーバ１１０３７は、よく知られたネットワークプロトコルであるＨＴＴＰ（あるいはそれをセキュアにしたＨＴＴＰＳなども同様）に基づく要求に応えて要求元との間でデータの送受信を行うサービスである。
【０２０８】
アプリケーションサーバ１１０３８はＷｅｂサーバ１１０３７と連動し、クライアントとの間で動的なデータの交換を行うＷｅｂアプリケーションのために動作環境を提供する。Ｗｅｂサーバ１１０３７が受信したＨＴＴＰの要求メッセージをその要求メッセージに応じた適切なアプリケーションに対して要求として引渡し、アプリケーションの処理結果に基づくアプリケーションからの応答を受け取って対応するＨＴＴＰ応答メッセージとして元のＨＴＴＰ要求の要求元へと返送する。
【０２０９】
アプリケーションサーバ１１０３８は、Ｗｅｂアプリケーションを効率的に開発し動作させるために、テンプレートとテンプレート言語に基づくプログラムとの組み合わせによって動的にメッセージを生成するテンプレートエンジンを含む。またアプリケーションサーバ１１０３８は、Ｗｅｂアプリケーションを効率的に開発し動作させるために、ＭＶＣ（Ｍｏｄｅｌ−Ｖｉｅｗ−Ｃｏｎｔｒｏｌｌｅｒ）アーキテクチャに基づくアプリケーションフレームワークを備える。
【０２１０】
ＳＯＡＰエンジン１１０３９は、よく知られているＸＭＬプロトコルを処理するプロセッサの開発を容易にするためのエンジンである。ＳＯＡＰエンジン１１０３９はアプリケーションサーバ１１０３８と連動するように構成している。ＳＯＡＰエンジン１１０３９はＳＯＡＰクライアントから送られてきたＳＯＡＰ要求メッセージを処理し、メッセージを処理するための適切なソフトウエアに引き渡す。ＳＯＡＰ要求メッセージを処理するソフトウエアが適切な処理を完了してリターンするとＳＯＡＰエンジンはそのリターンに相当するＳＯＡＰ応答メッセージを生成して要求元のＳＯＡＰクライアントに返送する。
【０２１１】
ＸＭＬツールキット１１０４０は、拡張コントローラ１０３上のソフトウエア群が、ＸＭＬやその応用として規定された各種マークアップ言語の解釈、生成、変換などの処理を実行することを助けるためのツールキットである。
【０２１２】
Ｊａｖａ（登録商標）プラットフォーム１１０４１の基本部分はＪａｖａ（登録商標）  ２  Ｐｌａｔｆｏｒｍ，  Ｓｔａｎｄａｒｄ  ＥｄｉｔｉｏｎまたはＪａｖａ（登録商標）  ２  Ｒｕｎｔｉｍｅ  Ｅｎｖｉｒｏｎｍｅｎｔとしてよく知られているＪａｖａ（登録商標）プラットフォームによって構築されている。このように、本システムが具備する拡張コントローラ１０３は、本システムの画像処理装置１００に各種の動作を実行させる為の機能を含む複数種類の機能を実行可能に構成している。
【０２１３】
図１２は、図２に示した拡張コントローラ１０３が具備する操作部１７１の表示部に表示させる表示画面の一例を示す図である。
【０２１４】
図１２において、拡張コントローラ１０３は、例えばＰＣ等の情報処理装置を使用しており、拡張コントローラ１０３が具備する操作部１７１の表示モニタは１０２４ドット×７６８ドットの解像度のＬＣＤタッチパネルを使用するよう構成している。
【０２１５】
また、本システムでは、該拡張コントローラ１０３の操作部１７１を介して、画像処理装置１００の操作部１５０を介してユーザにより指示操作可能な操作と同等の操作をユーザにより実行可能にすると共に、画像処理装置１００側には具備していない機能を拡張コントローラ１０３を用いて実行させる為の指示操作をも実行可能にするように、各種のユーザインタフェース画面を操作部１７１に提供させるよう制御している。
【０２１６】
画面中央付近がアプリケーション表示エリア１２００１であり、図示するようにコピー画面をはじめとして、複数のウィンドウが同じサイズに重なっている。ユーザから見た場合は最前面のウィンドウが１つだけ動いているように見える。
【０２１７】
また、画面左端のアイコンボックス１２００２は、前述のウィンドウ切り替え手段に該当する。各ウィンドウに１対１で対応したアプリケーション名とアイコンが表示されており、利用可能なアプリケーションが多数存在し画面内に収まりきらない場合は、スクロールして表示を行うことが出来る。
【０２１８】
アイコンボックス上の任意のアイコンを押すことで、アプリケーション表示エリア上に該当するウィンドウが表示される。画面上部のファンクションキーパネル１２００３は拡張コントローラ操作部で共通に利用する機能ボタンの集合である。ユーザモードボタン１２００４は、ボタンを押下することにより本拡張コントローラ全体またはアプリケーション表示エリアに表示されているアプリケーションの設定画面を呼び出すメニューが表示され、それぞれの設定を行うことが出来る。スクリーンキーボードボタン１２００５は、後述するスクリーンキーボードを起動することが出来る。
【０２１９】
操作部パネルエミュレータボタン１２００６は、後述する操作部パネルエミュレータを起動することが出来る。ガイドボタン１２００７は、ボタンを押下することにより本拡張コントローラ１０３全体またはアプリケーション表示エリアに表示されているアプリケーションのガイド画面を呼び出すメニューが表示され、それぞれのガイドを閲覧することが出来る。
【０２２０】
アバウトボタン１２００８は、ボタンを押下することにより本拡張コントローラ全体またはアプリケーション表示エリアに表示されているアプリケーションのアバウト画面を呼び出すメニューが表示され、それぞれのアバウト情報を閲覧することが出来る。リセットキー１２００９は、アプリケーション表示エリアに表示されているアプリケーションに対してリセットキーのキーコードを送信することが可能であり、リセットキーを受けたアプリケーションは、アプリケーション既定のリセット動作を行う。
【０２２１】
画面下部のログオフボタン１２０１０は、ログイン中ユーザのログオフまたは本拡張コントローラ１０３のシャットダウンを行うことが出来る。ソフトタリー１２０１１は、画像処理装置のタリーランプをエミュレートしたものであり、本拡張コントローラ１０３の状態（例えば正常、警告、エラーなど）を赤および青の点滅、点灯、消灯によって通知することが出来る。ステータスティッカ１２０１２はアプリケーションが発生するメッセージを表示するエリアであり、複数のアプリケーションから送られるメッセージのうち優先度の最も高いメッセージを表示する。メッセージはスクロール表示可能であるため長いメッセージに関しても全てを確認することが可能である。履歴ボタン１２０１３は本拡張コントローラ１０３の履歴画面を表示することが出来る。デバイス状況ボタン１２０１４は画像処理装置の状況、履歴画面を表示することが出来る。
【０２２２】
シングルユーザモードで運用している場合、ログオフボタン１２０１０によって拡張コントローラ１０３のシャットダウンを指示できる。マルチユーザモードで運用している場合は、ログオフボタン１２０１０によって利用中のユーザのログオフ（すなわちユーザセッションの終了）と、拡張コントローラ１０３のシャットダウン（すなわちシステムセッションの終了）とを、選択して指示することができる。ユーザがシャットダウンを指示すると、拡張コントローラプラットフォーム９００２から各アプリケーションに対してシステムセッション終了のイベントが通知され終了処理を促す。
【０２２３】
さらに、拡張コントローラプラットフォーム９００２は汎用オペレーティングシステム９００１が備えるシャットダウン手続きを呼び出して、ＯＳレベルの終了処理を促す。この結果として、よく知られたＰＣアーキテクチャのコンピュータと同様に、拡張コントローラ１０３のソフトウエアシステム全体が停止し、ハードウェアシステムも電源部とネットワークインタフェース部など一部のモジュールを除いてほとんど電力を消費しない状態に遷移する。画像処理装置１００が単体で持つ機能性を最大限維持しながら、拡張コントローラ１０３による柔軟な拡張性の付加を可能とするために、両者は基本的に疎結合に構成されている。そのため拡張コントローラ１０３の電源部と画像処理装置１００の電源部は相互にまったく独立しており、それぞれが単体で動作可能である。すなわち、拡張コントローラ１０３をシャットダウンしても画像処理装置１００は動作し続けることができる。
【０２２４】
図１３は、図１２に示したファンクションキーパネル１２００３から起動されるスクリーンキーボードの構成を説明する図である。
【０２２５】
スクリーンキーボードは、ＬＣＤタッチパネル上での文字入力を可能にするものである。キーボード設定に応じて、１０１キーボードや１０６キーボードのようにレイアウトを変更することが可能である。
【０２２６】
図１４は、図１２に示したファンクションキーパネル１２００３から起動される画像処理装置の操作部パネルエミュレータを構成を説明する図である。
【０２２７】
図１４に示すように、本実施形態における操作部パネルエミュレータは、画像処理装置のハード操作部のテンキーやスタートキー、ストップキーと同様の入力を可能にするものである。
【０２２８】
図１５は、図２に示した拡張コントローラ１０３に搭載されるユーザランドアプリケーションの一つである暗号化セキュアプリントの画面を示す図である。
【０２２９】
本実施形態において、暗号化セキュアプリントは、出力装置において排紙された印刷原稿が第三者の目に触れないようにする機密保持、およびネットワーク上を流れる印刷データの機密保持を目的としたアプリケーションである。
【０２３０】
ユーザはクライアントＰＣにおいて印刷ジョブを発行する際に、任意の暗証番号やパスワードの入力や、ＩＣカードを利用して、印刷データを暗号化し拡張コントローラ１０３へ送信する。暗号化された印刷データは拡張コントローラ１０３上において暗号化された状態でスプールされる。
【０２３１】
その後、ユーザは拡張コントローラ１０３において、任意の暗証番号やパスワードの入力やＩＣカードを挿入することにより、暗号化された印刷データを復号化し、所望の印刷原稿の機密性を保持して入手することが可能となる。
【０２３２】
ここで、ＢＫＤは仮想キーボードで、メニュー上の暗号プリントボタンＢＴ１０が押下指示されて、ＩＤ入力画面１５００１が表示されることを拡張コントローラ１０３が検出した場合で、かつ、後述するような仮想キーボード表示に対する表示設定を判定して、表示または非表示が制御される構成となっている。
【０２３３】
本実施形態では、入力フォーカスが入力領域にあたったことを検知するとは、フォアグラウンドのウィンドウを取得し、さらにそのウィンドウ内のフォーカスを持つウィンドウのハンドルを取得し、更にそのウィンドウのクラス名および入力タイプが入力可能条件を満たすか否かで判定している。図１５のＷｏｒｋｐｌａｃｅ  Ｇａｔｅｗａｙと表示されているダイアログがフォアグラウンドのウィンドウであり、その中のＩＤと表示されている入力領域を前記手順で検知し、キーボードが表示されることになる。
【０２３４】
なお、本実施形態では、外部接続可能なキーボードが所定のインタフェースを介して接続される場合には、非表示とする設定を行うことが可能に構成され、該設定に関する情報は、ハードディスク等に記憶することができる。
【０２３５】
図１６は、本発明に係る画像処理システムにおける第１のデータ処理手順の一例を示すフローチャートであり、スクリーンキーボード表示制御のアルゴリズムに対応する。なお、Ｓ１６０１〜Ｓ１６１１は各ステップを示す。また、本処理は、本画像処理装置１００の拡張コントローラ１０３が実行するステップに対応する。
【０２３６】
ハードウエアキーボードの接続状態に応じて、スクリーンキーボード自動表示するしないを切り換える処理を示すフローチャートである。
【０２３７】
ステップＳ１６０１において、拡張コントローラ１０３は、システムが起動した後、ステップＳ１６０２においてスクリーンキーボードの初期化処理を行い、非表示状態とする。次に、ステップＳ１６０３において、入力領域に入力フォーカスがあるかを検知する検知ループに入り、入力領域に入力フォーカスがないと拡張コントローラ１０３が判断した場合は、ステップＳ１６０３における検知処理を継続し、入力領域に入力フォーカスがあると判断した場合は、ステップＳ１６０４に進む。
【０２３８】
そして、ステップＳ１６０４において、例えば図４に示した拡張コネクタ１２４を介してハードウエアキーボードが接続状態となっているかどうかを拡張コントローラ１０３が判定し、ハードウエアキーボードが接続されていると判断した場合は、ステップＳ１６０３に処理を戻し続行し、ハードウエアキーボードが接続されていないと判定した場合は、ステップＳ１６０５に進む。
【０２３９】
ここで、ハードウエアキーボードの接続状態は、公知であるＵＳＢのプラグアンドプレイ機構を利用するため詳細は省略する。
【０２４０】
次に、ステップＳ１６０５においては、スクリーンキーボードが既に表示中であるかを拡張コントローラ１０３が判定し、表示されていないと判定した場合は、ステップＳ１６０６において、スクリーンキーボードを液晶ディスプレイ４２０３上に表示し、ステップＳ１６０７に進む。
【０２４１】
一方、ステップＳ１６０５で、すでにスクリーンキーボードが液晶ディスプレイ４２０３上に表示されていると判断した場合は、ステップＳ１６０７に進む。
【０２４２】
そして、ステップＳ１６０７においては、スクリーンキーボード表示状態の、入力領域から入力フォーカスが外れているのかを行う検知ループに入り、入力フォーカスが外れていると拡張コントローラ１０３が判断した場合は、ステップＳ１６０９に進み、スクリーンキーボードを液晶ディスプレイ４２０３上に非表示にした後、ステップＳ１６１０に進む。
【０２４３】
一方、ステップＳ１６０７で、入力フォーカスが外れていないと判断した場合は、ステップＳ１６０８に進む。
【０２４４】
そして、ステップＳ１６０８では、ユーザからの意図的なスクリーンキーボード非表示指示があるかを拡張コントローラ１０３が判定する。
【０２４５】
なお、本実施形態において、非表示指示とは、図１３に示した右下に表示されている「閉じる」ボタンＣＢの押下である。
【０２４６】
そして、ステップＳ１６０８で、非表示指示があったと拡張コントローラ１０３が判断した場合はステップＳ１６０９に進み、スクリーンキーボードを液晶ディスプレイ４２０３上で非表示にした後、ステップＳ１６１０に進み、非表示指示がなかったと判断した場合は、スクリーンキーボードを液晶ディスプレイ４２０３上で表示したまま、ステップＳ１６１０に進む。
【０２４７】
そして、ステップＳ１６１０においては、システム終了指示があるかどうかを拡張コントローラ１０３が判断して、システム終了指示がないと判断した場合は、ステップＳ１６０３において前記手順を繰り返し、システム終了指示があると判断した場合は、ステップＳ１６１１に進み終了する。
【０２４８】
上記実施形態によれば、ハードウエアキーボードが接続されていることを拡張コントローラ１０３が検出している場合には、通常のスクリーンキーボードの表示が制限されることなり、表示画面上に煩わしくスクリーンキーボードの表示、非表示が繰り返される事態が回避され、ユーザはハードウエアキーボードによる入力操作に専念することができる。
【０２４９】
〔第２実施形態〕
図１７は、本発明に係る画像処理システムにおける第２のデータ処理手順の一例を示すフローチャートであり、スクリーンキーボード表示制御（スクリーンキーボード自動表示機能の設定値に応じて、スクリーンキーボード自動表示するしないを切り換える処理）のアルゴリズムに対応する。なお、Ｓ１７０１〜Ｓ１７１１は各を示す。また、本処理は、本画像処理装置１００の拡張コントローラ１０３が実行するステップに対応する。
【０２５０】
先ず、ステップＳ１７０１においてシステムが起動した後、ステップＳ１７０２において、拡張コントローラ１０３はスクリーンキーボードの初期化処理を行い、液晶ディスプレイ４２０３上でスクリーンキーボードを非表示状態とする。次に、ステップＳ１７０３において、入力領域に入力フォーカスがあるかを検知する検知ループに入り、入力領域に入力フォーカスがないと拡張コントローラ１０３が判定した場合は、ステップＳ１７０３における検知処理を継続し、入力領域に入力フォーカスがあると判定した場合は、ステップＳ１７０４に進み、スクリーンキーボードの自動表示設定を拡張コントローラ１０３が記憶されている設定フラグ等より判定し、スクリーンキーボード自動表示が無効とされていたと判定した場合は、ステップＳ１７０３に処理を戻し続行し、スクリーンキーボード自動表示が有効とされていた場合は、ステップＳ１７０５に進む。
【０２５１】
そして、ステップＳ１７０５においては、スクリーンキーボードが液晶ディスプレイ４２０３上で既に表示中であるかを拡張コントローラ１０３が判定し、表示されていないと判定した場合は、ステップＳ１７０６においてスクリーンキーボードを液晶ディスプレイ４２０３上で表示する制御を拡張コントローラ１０３が行い、ステップＳ１７０７に進む。
【０２５２】
一方、すでに液晶ディスプレイ４２０３上でスクリーンキーボードが表示されていると判断した場合は、そのままステップＳ１７０７に進む。
【０２５３】
そして、Ｓ１７０７においては、スクリーンキーボード表示状態で入力領域から入力フォーカスが外れているか否かの検知ループに入り、入力フォーカスが外れていると拡張コントローラ１０３が判定した場合は、ステップＳ１７０９に進み、スクリーンキーボードを液晶ディスプレイ４２０３上で非表示にした後、ステップＳ１７１０に進む。
【０２５４】
一方、ステップＳ１７０７で、入力フォーカスが外れていないと拡張コントローラ１０３が判定した場合は、ステップＳ１７０８に進む。そして、ステップＳ１７０８では、ユーザからの意図的なスクリーンキーボード非表示指示があるかを拡張コントローラ１０３が判定する。
【０２５５】
ここで、非表示指示とは、図１３の右下に表示されている「閉じる」ボタンの押下である。
【０２５６】
そして、非表示指示があったと拡張コントローラ１０３が判定した場合は、ステップＳ１７０９に進み、拡張コントローラ１０３は、スクリーンキーボードを液晶ディスプレイ４２０３上で非表示にした後、ステップＳ１７１０に進み、非表示指示がなかったと判定した場合は、スクリーンキーボードを液晶ディスプレイ４２０３上で表示したまま、ステップＳ１７１０に進む。
【０２５７】
そして、ステップＳ１７１０においては、システム終了指示があるかどうかを拡張コントローラ１０３が判定して、システム終了指示がないと判定した場合は、ステップＳ１７０３において前記手順を繰り返し、システム終了指示があると判定した場合は、ステップＳ１７１１に進み、本処理を終了する。
【０２５８】
図１８は、図７に示した液晶ディスプレイ４２０３に表示されるスクリーンキーボード自動表示機能の設定値の画面例を示す図である。
【０２５９】
なお、図１８に示すスクリーンキーボード自動表示機能の設定値の画面において、キーボード自動表示が「ＯＮ」に設定された場合、該設定値は拡張コントローラ１０３の環境設定管理１１０１２で設定可能であり、設定値はハードディスクに記録される。
【０２６０】
上記実施形態では、画像形成に関する複数の機能を有し、各機能を操作するための情報を入力することが可能な画像処理装置、または前記画像処理装置の拡張制御装置であって、仮想的なスクリーンキーボードを表示して、入力フォーカスが入力領域に当たったことを検知し、スクリーンキーボード自動表示に関わる特定の状態に応じて、自動表示するしないを切り換える制御をするので、スクリーンキーボードの自動表示に関して、ユーザのユースケースに応じた構成を提供することが可能になる。
【０２６１】
さらに、前記スクリーンキーボード自動表示に関わる特定の状態が、ハードウエアキーボードの接続状態であって、ハードウエアキーボードが接続されていればスクリーンキーボード自動表示を行わないとともに、ハードウエアキーボードが接続されていなければスクリーンキーボード自動表示を行うので、ハードウエアキーボードを接続したにも関わらず、不要になったスクリーンキーボードが従来通り表示されてしまい、表示画面の一部を隠してしまう、入力領域に入力フォーカスが当たるたびに表示、非表示を繰り返し煩わしい、という問題を回避することが可能になる。
【０２６２】
さらに、スクリーンキーボード自動表示に関わる特定の状態が、スクリーンキーボード自動表示機能の設定値であって、スクリーンキーボード自動表示有効であればスクリーンキーボード自動表示を行うとともに、スクリーンキーボード自動表示無効であればスクリーンキーボード自動表示を行わないので、ユーザが操作に慣れてくるとかえって煩わしい、という問題を回避することが可能になる。
【０２６３】
さらに、スクリーンキーボードが、入力フォーカスが入力領域から外れたことを検知した場合スクリーンキーボードを自動非表示にするので、ユーザが意図して「閉じる」キーを押下せずとも、スクリーンキーボードを非表示にすることが可能であり、キータッチを減らすことが可能になる。
【０２６４】
以下、図１９に示すメモリマップを参照して本発明に係る画像処理システムで読み取り可能なデータ処理プログラムの構成について説明する。
【０２６５】
図１９は、本発明に係る画像処理システムで読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【０２６６】
なお、特に図示しないが、記憶媒体に記憶されるプログラム群を管理する情報、例えばバージョン情報，作成者等も記憶され、かつ、プログラム読み出し側のＯＳ等に依存する情報、例えばプログラムを識別表示するアイコン等も記憶される場合もある。
【０２６７】
さらに、各種プログラムに従属するデータも上記ディレクトリに管理されている。また、各種プログラムをコンピュータにインストールするためのプログラムや、インストールするプログラムが圧縮されている場合に、解凍するプログラム等も記憶される場合もある。
【０２６８】
本実施形態における図１６、図１７に示す機能が外部からインストールされるプログラムによって、ホストコンピュータにより遂行されていてもよい。そして、その場合、ＣＤ−ＲＯＭやフラッシュメモリやＦＤ等の記憶媒体により、あるいはネットワークを介して外部の記憶媒体から、プログラムを含む情報群を出力装置に供給される場合でも本発明は適用されるものである。
【０２６９】
以上のように、前述した実施形態の機能を実現するソフトウエアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の目的が達成されることは言うまでもない。
【０２７０】
この場合、記憶媒体から読み出されたプログラムコード自体が本発明の新規な機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２７１】
従って、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０２７２】
プログラムを供給するための記憶媒体としては、例えばフレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤなどを用いることができる。
【０２７３】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０２７４】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムそのもの、もしくは、圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバやｆｔｐサーバ等も本発明の請求項に含まれるものである。
【０２７５】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０２７６】
また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２７７】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【０２７８】
本発明は上記実施形態に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施形態の有機的な組合せを含む）が可能であり、それらを本発明の範囲から排除するものではない。
【０２７９】
本発明の様々な例と実施形態を示して説明したが、当業者であれば、本発明の趣旨と範囲は、本明細書内の特定の説明に限定されるものではない。
【０２８０】
なお、本発明は、上記した実施形態に限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。以下、その実施態様１〜１２について説明する。
【０２８１】
〔実施態様１〕
画像形成に関する複数の機能を有し、各機能を設定するための設定情報を表示手段に表示された情報入力画面を用いて操作入力することが可能な画像処理装置において、前記情報入力画面上に仮想的なスクリーンキーボードを表示するキーボード表示手段（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０６あるいは図１７に示すステップＳ１７０６）と、前記スクリーンキーボードの表示を制限すべき特定状態かどうかを判定する判定手段（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０４）と、入力フォーカスが入力領域に当たったことを検知する検知手段（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０３、あるいは図１７に示すステップＳ１７０３）と、前記検知手段により入力フォーカスが検知された場合に、前記判定手段による判定結果に基づいて、前記キーボード表示手段による前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する制御手段（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０６，Ｓ１６０９，図１７に示すステップＳ１７０６，Ｓ１７０９）とを有することを特徴とする画像処理装置。
【０２８２】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき特定状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で入力操作を行える。
【０２８３】
〔実施態様２〕
前記判定手段は、特定のデバイスの拡張接続状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定する（図１６に示すステップＳ１６０４）ことを特徴とする実施態様１記載の画像処理装置。
【０２８４】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき、特定のデバイスが接続されている状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で特定のデバイスから入力操作を行える。
【０２８５】
〔実施態様３〕
前記拡張接続されるデバイスは、ハードウエアキーボードであることを特徴とする実施態様２記載の画像処理装置。
【０２８６】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき、ハードウエアキーボードが接続されている状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態でハードウエアキーボードから入力操作を行える。
【０２８７】
〔実施態様４〕
前記スクリーンキーボードの自動表示の可否を設定する設定手段（図１８に示す設定画面により設定され、該設定状態が拡張コントローラ１０３により図１７に示すステップＳ１７０４）を有し、前記判定手段は、前記設定手段による設定状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定する（拡張コントローラ１０３により図１７に示すステップＳ１７０４）ことを特徴とする実施態様１記載の画像処理装置。
【０２８８】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態そのものをユーザの操作環境に適応して変更し、スクリーンキーボードの表示を制限としたり、非表示としたりするようにスクリーンキーボードの表示環境をカスタマイズできる。
【０２８９】
〔実施態様５〕
前記制御手段は、前記検知手段により入力フォーカスが入力領域から外れたことを検知した場合に、前記スクリーンキーボードを自動非表示とすることを特徴とする実施態様１記載の画像処理装置。
【０２９０】
これにより、情報入力画面上で入力フォーカスが入力領域に入出するかどうかを検知するという簡単な構成で、適時にスクリーンキーボードが表示され、操作入力状態に応じて、自動的にスクリーンキーボードが情報入力画面から消失するので、スクリーンキーボードの表示、非表示を要求する操作が不要となり、ユーザの入力操作負担が軽減されて、必要な情報の入力操作に専念できる。
【０２９１】
〔実施態様６〕
画像形成に関する複数の機能を有し、各機能を設定するための設定情報を表示手段に表示された情報入力画面を用いて操作入力することが可能な画像処理装置における表示制御方法において、前記情報入力画面上に仮想的なスクリーンキーボードを表示するキーボード表示ステップ（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０６あるいは図１７に示すステップＳ１７０６）と、前記スクリーンキーボードの表示を制限すべき特定状態かどうかを判定する判定ステップ（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０４）と、入力フォーカスが入力領域に当たったことを検知する検知ステップ（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０３、あるいは図１７に示すステップＳ１７０３）と、前記検知ステップにより入力フォーカスが検知された場合に、前記判定ステップによる判定結果に基づいて、前記キーボード表示ステップによる前記情報入力画面上での仮想的なスクリーンキーボードの表示、非表示を制御する制御ステップ（図２に示す拡張コントローラ１０３による図１６に示すステップＳ１６０６，Ｓ１６０９，図１７に示すステップＳ１７０６，Ｓ１７０９）とを有することを特徴とする表示制御方法。
【０２９２】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき特定状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で入力操作を行える。
【０２９３】
〔実施態様７〕
前記判定ステップは、特定のデバイスの拡張接続状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定することを特徴とする実施態様６記載の表示制御方法。
【０２９４】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき、特定のデバイスが接続されている状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態で特定のデバイスから入力操作を行える。
【０２９５】
〔実施態様８〕
前記拡張接続されるデバイスは、ハードウエアキーボードであることを特徴とする請求項７記載の表示制御方法。
【０２９６】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態であっても、スクリーンキーボードの表示を制限すべき、ハードウエアキーボードが接続されている状態である場合には、スクリーンキーボードの表示、非表示が制限されることで、表示装置上の情報入力画面にスクリーンキーボードが頻繁に表示、非表示が繰り返されることがなくなり、情報入力画面の視認性が向上した状態でハードウエアキーボードから入力操作を行える。
【０２９７】
〔実施態様９〕
前記スクリーンキーボードの自動表示の可否を設定する設定ステップを有し、前記判定ステップは、前記設定ステップによる設定状態に基づいて前記スクリーンキーボードの表示を制限すべき特定状態であるかどうかを判定することを特徴とする実施態様６記載の表示制御方法。
【０２９８】
これにより、画像処理装置における仮想的なスクリーンキーボードの表示、非表示が有効に制御される状態そのものをユーザの操作環境に適応して変更し、スクリーンキーボードの表示を制限としたり、非表示としたりするようにスクリーンキーボードの表示環境をカスタマイズできる。
【０２９９】
〔実施態様１０〕
前記制御ステップは、前記検知ステップにより入力フォーカスが入力領域から外れたことを検知した場合に、前記スクリーンキーボードを自動非表示とすることを特徴とする実施態様６記載の表示制御方法。
【０３００】
これにより、情報入力画面上で入力フォーカスが入力領域に入出するかどうかを検知するという簡単な構成で、適時にスクリーンキーボードが表示され、操作入力状態に応じて、自動的にスクリーンキーボードが情報入力画面から消失するので、スクリーンキーボードの表示、非表示を要求する操作が不要となり、ユーザの入力操作負担が軽減されて、必要な情報の入力操作に専念できる。
【０３０１】
〔実施態様１１〕
実施態様６〜１０のいずれかに記載の表示制御方法を実行させるためのプログラムを格納したことを特徴とするコンピュータが読み取り可能な記憶媒体。
【０３０２】
これにより、実施態様６〜１０における効果を奏する。
【０３０３】
〔実施態様１２〕
実施態様６〜１０のいずれかに記載の表示制御方法を実行させることを特徴とするプログラム。
【０３０４】
これにより、実施態様６〜１０における効果を奏する。
【図面の簡単な説明】
【０３０５】
【図１】本発明の第１実施形態を示す拡張画像処理システムを適用可能な画像処理システム構成を説明する図である。
【図２】図１に示した拡張画像処理システムの構成を説明するブロック図である。
【図３】図１に示した拡張画像処理システムの外観を示す斜視図である。
【図４】図２に示した画像処理装置の制御装置のハードウェア構成を示すブロック図である。
【図５】図２に示した画像処理装置のコントローラ部のソフトウエアのモジュール構造を示すブロック図である。
【図６】図２に示した画像処理装置の操作部の表示部に表示させる基本画面を説明する図である。
【図７】図２に示した拡張コントローラのハードウェア構成を示すブロック図である。
【図８】図２に示した拡張コントローラ内のアプリケーションが画像処理装置とインタフェースするためのＡＰＩを示す図である。
【図９】図２に示した拡張コントローラのソフトウエアのモジュール群の階層構造を示すブロック図である。
【図１０】図２に示した拡張コントローラのシステムアプリケーション群を説明するブロック図である。
【図１１】図２に示した拡張コントローラのソフトウエアプラットフォームを構成するソフトウエアパッケージ群を説明するブロック図である。
【図１２】図２に示した拡張コントローラが具備する操作部の表示部に表示させる表示画面の一例を示す図である。
【図１３】図１２に示したファンクションキーパネルから起動されるスクリーンキーボードの構成を説明する図である。
【図１４】図１２に示したファンクションキーパネルから起動される画像処理装置の操作部パネルエミュレータの構成を説明する図である。
【図１５】図２に示した拡張コントローラに搭載されるユーザランドアプリケーションの一つである暗号化セキュアプリントの画面を示す図である。
【図１６】本発明に係る画像処理システムにおける第１のデータ処理手順の一例を示すフローチャートである。
【図１７】本発明に係る画像処理システムにおける第２のデータ処理手順の一例を示すフローチャートである。
【図１８】図７に示した液晶ディスプレイに表示されるスクリーンキーボード自動表示機能の設定値の画面例を示す図である。
【図１９】本発明に係る画像処理装置で読み取り可能な各種データ処理プログラムを格納する記憶媒体のメモリマップを説明する図である。
【符号の説明】
【０３０６】
１０  拡張画像処理システム
１００  画像処理装置
１０３  拡張コントローラ
【図１】
2005346179.tif 000003
【図２】
2005346179.tif 000004
【図３】
2005346179.tif 000005
【図４】
2005346179.tif 000006
【図５】
2005346179.tif 000007
【図６】
2005346179.tif 000008
【図７】
2005346179.tif 000009
【図８】
2005346179.tif 000010
【図９】
2005346179.tif 000011
【図１０】
2005346179.tif 000012
【図１１】
2005346179.tif 000013
【図１２】
2005346179.tif 000014
【図１３】
2005346179.tif 000015
【図１４】
2005346179.tif 000016
【図１５】
2005346179.tif 000017
【図１６】
2005346179.tif 000018
【図１７】
2005346179.tif 000019
【図１８】
2005346179.tif 000020
【図１９】
2005346179.tif 000021