(57)【特許請求の範囲】
【請求項１】
画像形成処理で使用されるハードウェア資源を有し、画像形成処理にかかるユーザサービスを行うアプリケーションを備え、前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける描画処理方法であって、
前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理ステップと、
描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記画像形成装置の表示部に描画処理を行う描画処理ステップと、
を含んだことを特徴とする画像形成装置用端末エミュレータにおける描画処理方法。
【請求項２】
画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスと、操作入力および描画情報出力を行うオペレーションパネルとを備え、前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける描画処理方法であって、
前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理ステップと、
描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記オペレーションパネルの表示部に描画処理を行う描画処理ステップと、
を含んだことを特徴とする画像形成装置用端末エミュレータにおける描画処理方法。
【請求項３】
前記端末機能処理ステップと前記描画処理ステップとの間に、描画属性が付加されたテキスト情報をメモリに記憶させる記憶ステップを備え、前記描画処理ステップは、メモリに記憶されたテキスト情報を読み出して加工することを特徴とする請求項１または２に記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項４】
前記端末機能処理ステップは、前記描画属性としてキー入力かマウス入力かの区別、座標位置、下線情報、文字属性情報、および入力形態情報のうち少なくとも１つをテキスト情報に付加することを特徴とする請求項１〜３のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項５】
前記端末機能処理ステップは、端末の仕様に合わせて画面制御情報の設定を行うことを特徴とする請求項１〜４のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項６】
前記端末機能処理ステップは、端末の仕様に合わせて、行数、コラム数、バックスペースの使用の可否、画面消去、カーソル移動、およびアンダーラインのうち少なくとも１つの画面制御情報を設定することを特徴とする請求項５に記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項７】
前記描画処理ステップは、テキスト情報を前記端末表示アプリケーション用に加工する際に、テキスト情報を描画する描画関数が登録されたライブラリに対して描画関数の呼び出しを行うことを特徴とする請求項１〜６のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項８】
前記描画処理ステップは、前記オペレーションパネルの表示部に描画する特定の文字列の表示位置と文字属性情報とを前記ライブラリに渡してボタン表示を行うことを特徴とする請求項７に記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項９】
前記記憶ステップは、前記メモリにテキスト情報を書き込む際に、行単位で表示内容の変更の有無をチェックすることを特徴とする請求項１〜８のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法。
【請求項１０】
画像形成処理で使用されるハードウェア資源を有し、画像形成処理にかかるユーザサービスを行うアプリケーションを備え、前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける入力イベント処理方法であって、
入力操作に対応するイベントを受信する受信ステップと、
受信したイベントをイベントに含まれる描画属性に基づいて前記端末表示アプリケーションへの入力に変換する入力変換ステップと、
を含み、変換された入力を前記端末表示アプリケーションに通知することを特徴とする画像形成装置用端末エミュレータにおける入力イベント処理方法。
【請求項１１】
画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスと、操作入力および描画情報出力を行うオペレーションパネルとを備え、前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける入力イベント処理方法であって、
入力操作に対応するイベントを受信する受信ステップと、
受信したイベントをイベントに含まれる描画属性に基づいて前記端末表示アプリケーションへの入力に変換する入力変換ステップと、
を含み、変換された入力を前記端末表示アプリケーションに通知することを特徴とする画像形成装置用端末エミュレータにおける入力イベント処理方法。
【請求項１２】
前記入力変換ステップは、受信イベントの描画属性に応じてキーイベントまたはマウスイベントの入力にそれぞれ変換することを特徴とする請求項１０または１１に記載の画像形成装置用端末エミュレータにおける入力イベント処理方法。
【請求項１３】
請求項１〜１２のいずれか一つに記載された方法をコンピュータに実行させるプログラム。
【請求項１４】
画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスを行うアプリケーションと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置であって、
前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理手段と、
前記描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記オペレーションパネルの表示部に描画処理を行う描画処理手段と、
を備えたことを特徴とする画像形成装置。
【請求項１５】
画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスと、操作入力および描画情報出力を行うオペレーションパネルと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置であって、
前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理手段と、
描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記オペレーションパネルの表示部に描画処理を行う描画処理手段と、
を備えたことを特徴とする画像形成装置。
【請求項１６】
前記端末機能処理手段により描画属性が付加されたテキスト情報をメモリに記憶する記憶手段をさらに備え、前記描画処理手段は、メモリに記憶されたテキスト情報を読み出して加工することを特徴とする請求項１４または１５に記載の画像形成装置。
【請求項１７】
前記端末機能処理手段は、前記描画属性としてキー入力かマウス入力かの区別、座標位置、下線情報、文字属性情報、および入力形態情報のうち少なくとも１つをテキスト情報に付加することを特徴とする請求項１４〜１６のいずれか一つに記載の画像形成装置。
【請求項１８】
前記端末機能処理手段は、端末の仕様に合わせて画面制御情報の設定を行うことを特徴とする請求項１４〜１７のいずれか一つに記載の画像形成装置。
【請求項１９】
前記端末機能処理手段は、端末の仕様に合わせて行数、コラム数、バックスペースの使用の可否、画面消去、カーソル移動、およびアンダーラインのうち少なくとも１つの画面制御情報を設定することを特徴とする請求項１８に記載の画像形成装置。
【請求項２０】
前記オペレーションパネルの表示部にテキスト情報を描画する描画関数が登録された関数ライブラリ手段をさらに備え、
前記描画処理手段は、テキスト情報を前記端末表示アプリケーション用に加工する際に、前記関数ライブラリ手段に対して描画関数の呼び出しを行うことを特徴とする請求項１４〜１９のいずれか一つに記載の画像形成装置。
【請求項２１】
前記描画処理手段は、前記オペレーションパネルの表示部に描画する特定の文字列の表示位置と文字属性情報とを前記関数ライブラリ手段に渡してボタン表示を行うことを特徴とする請求項１４〜２０のいずれか一つに記載の画像形成装置。
【請求項２２】
前記記憶手段は、前記メモリにテキスト情報を書き込む際に、行単位で表示内容の変更の有無をチェックすることを特徴とする請求項１４〜２１のいずれか一つに記載の画像形成装置。
【請求項２３】
画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスを行うアプリケーションと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置であって、
前記オペレーションパネルからの入力操作に対応するイベントを受信し、受信したイベントに含まれる描画属性に基づいて前記端末表示アプリケーションの入力となるようにイベントの変換処理を行うイベント変換手段を備え、
前記イベント変換手段による変換結果を入力として前記端末表示アプリケーションに通知することを特徴とする画像形成装置。
【請求項２４】
画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスと、操作入力および描画情報出力を行うオペレーションパネルと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置であって、
前記オペレーションパネルからの入力操作に対応するイベントを受信し、受信したイベントに含まれる描画属性に基づいて前記端末表示アプリケーションの入力となるようにイベントの変換処理を行うイベント変換手段を備え、
前記イベント変換手段の変換結果を入力として前記端末表示アプリケーションに通知することを特徴とする画像形成装置。
【請求項２５】
前記イベント変換手段は、
受信したイベントをイベントに含まれる描画属性に基づいてキーイベントまたはマウスイベントに振り分けるイベント解析手段と、
振り分けられた前記キーイベントを前記端末表示アプリケーションの入力に変換するキーイベント変換手段と、
振り分けられた前記マウスイベントを前記端末表示アプリケーションの入力に変換するマウスイベント変換手段と、
を備え、前記キーイベント変換手段および前記マウスイベント変換手段の変換結果を入力として前記端末表示アプリケーションに通知することを特徴とする請求項２４に記載の画像形成装置。
【請求項２６】
前記オペレーションパネルは、表示部と入力部とを一体化するタッチパネルを採用し、
前記タッチパネルから入力された座標情報に対応するイベント関数をイベントとして前記イベント変換手段に通知することを特徴とする請求項２３〜２５のいずれか一つに記載の画像形成装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、コピー、プリンタ、スキャナあるいはファクシミリなどの画像形成処理にかかるユーザサービスを提供する画像形成装置のオペレーションパネルに描画処理やイベント処理機能を持たせる端末表示アプリを移植する画像形成装置用端末エミュレータにおける描画処理方法および入力イベント処理方法、その方法をコンピュータに実行させるプログラム、並びにこれらを実行することができる画像形成装置に関するものである。
【０００２】
【従来の技術】
従来、プリンタ、コピー、ファクシミリ、あるいは、スキャナなどいずれかの機能を備えた画像形成装置が一般的に知られている。さらに、近年では、プリンタ、コピー、ファクシミリ、スキャナなどの各装置の機能を１つの筐体内に収納した画像形成装置（以下、「複合機」という。）が知られている。この複合機は、１つの筐体内に表示部、印刷部および撮像部などを設けるとともに、プリンタ、コピーおよびファクシミリ装置にそれぞれ対応した３種類のソフトウェアを設け、これらのソフトウェアを切り替えることによって、当該装置をプリンタ、コピー、スキャナまたはファクシミリ装置として動作させるものである。
【０００３】
このような従来の画像形成装置におけるオペレーションパネルとしては、操作を行うための操作キーと、操作表示やエラー表示を行うための小さなディスプレイが設けられたもの、あるいは、画面上に操作表示やエラー表示を行うとともに、操作キーを表示パネル上に表示し、これに直接触れて操作することができるタッチパネルタイプのものなどがあった。
【０００４】
【発明が解決しようとする課題】
しかしながら、このような従来の画像形成装置にあっては、ワークステーションやパーソナルコンピュータのようなキーボードやディスプレイに対応する端末を具備していなかったため、例えば、画像形成装置のオペレーションパネルの表示部を使ってブラウジング画面などのデータを描画表示させようとして、Ｗｅｂブラウザなど汎用の端末表示アプリケーションを移植しても標準入出力の対応がとれず、そのままではオペレーションパネルの表示部に画面表示することができなかった。もちろん、端末表示アプリケーションを移植先の画像形成装置に合うように、アプリケーション内部に大幅な変更を加えれば描画表示も可能となるが、アプリケーション内部を変更するには、時間、手間およびコストがかかるという問題があった。
【０００５】
また、従来の複合機では、プリンタ、コピー、スキャナおよびファクシミリ装置に対応するソフトウェアをそれぞれ別個に設けているため、各ソフトウェアの開発に多大の時間を要していた。このため、出願人は、表示部、印刷部および撮像部などの画像形成処理で使用されるハードウェア資源を有し、プリンタ、コピーまたはファクシミリなどの各ユーザサービスにそれぞれ固有の処理を行うアプリケーションを複数搭載し、これらのアプリケーションとハードウェア資源との間に介在して、ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行う各種コントロールサービスからなるプラットホームを備えた画像形成装置（複合機）を発明した。この複合機によれば、アプリケーションの少なくとも２つが共通的に必要とするハードウェア資源の管理、実行制御並びに画像形成処理を行うプラットホームを備えた構成とすることによって、ソフトウェア開発の効率化を図るとともに、装置全体としての生産性を向上させることが可能となる。
【０００６】
このように、出願人が発明をした新規な複合機では、アプリケーションとコントロールサービスとを別個に設けているため、複合機の出荷後にユーザもしくは第三者であるサードベンダーが新規なアプリケーションを開発して複合機に搭載可能な構成となっている。しかし、この複合機に新規なアプリケーションを搭載する場合も上記と同様であり、複合機側にアプリケーションの標準入出力に対応する端末が無い場合は、そのまま搭載することができず、アプリケーション内部に変更を加える必要があった。特に、複合機の場合、少なくともプリンタ、コピー、スキャナおよびファクシミリ装置に対応するアプリケーションはそれぞれ別個に開発しなければならないため、各ソフトウェアの開発に多大の時間を要する上、汎用の端末表示アプリケーションを追加移植しようとすると、アプリケーション内部に変更を加えなければならず、開発期間がさらに延びてソフトウェアの開発効率が低下するという問題があった。
【０００７】
この発明は上記に鑑みてなされたもので、画像形成装置のオペレーションパネルを用いて各種画像を表示させたり入力処理することができる端末表示アプリケーションを、アプリケーション内部に大幅な変更を加えることなく容易に移植することができる画像形成装置用端末エミュレータにおける描画処理方法および入力イベント処理方法、その方法をコンピュータに実行させるプログラム、並びに画像形成装置を得ることを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するため、請求項１にかかる発明は、画像形成処理で使用されるハードウェア資源を有し、画像形成処理にかかるユーザサービスを行うアプリケーションを備え、前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける描画処理方法であって、前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理ステップと、描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記画像形成装置の表示部に描画処理を行う描画処理ステップと、を含んだことを特徴とする。
【０００９】
この請求項１にかかる発明によれば、アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータの描画処理方法として、端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理ステップと、描画属性が付加されたテキスト情報を端末表示アプリケーション用に加工して、前記画像形成装置の表示部に描画する描画処理ステップとを含んでいる。このため、汎用の端末表示アプリケーションの出力先がディスプレイとなっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部に変更を加えずに容易に移植することができる。また、出力からの受信データに含まれるテキスト情報には、受信した制御コードに基づく属性が付加されるため、オペレーションパネルを使って端末表示アプリケーションによる画面表示が可能となり、一層利便性が向上することから、画像形成装置のメンテナンス等にも有用に用いることができる。
【００１０】
また、この請求項２にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスと、操作入力および描画情報出力を行うオペレーションパネルとを備え、前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける描画処理方法であって、前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理ステップと、描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記オペレーションパネルの表示部に描画処理を行う描画処理ステップと、を含んだことを特徴とする。
【００１１】
この請求項２にかかる発明によれば、アプリケーションの１つである端末表示アプリケーションを搭載可能にする複合機上で動作する画像形成装置用端末エミュレータの描画処理方法として、端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理ステップと、描画属性が付加されたテキスト情報を端末表示アプリケーション用に加工して、オペレーションパネルの表示部に描画する描画処理ステップとを含んでいる。このため、汎用の端末表示アプリケーションの出力先がディスプレイとなっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部に変更を加えずに容易に移植することができる。また、出力からの受信データに含まれるテキスト情報には、受信した制御コードに基づく属性が付加されるため、オペレーションパネルを使って端末表示アプリケーションによる画面表示が可能となり、一層利便性が向上することから、画像形成装置のメンテナンス等にも有用に用いることができる。さらに、それぞれのソフトウェアを別個に開発する必要のある複合機の場合でも、汎用の端末表示アプリケーションを変更せずにそのまま移植できることから、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【００１２】
また、この請求項３にかかる発明は、請求項１または２に記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記端末機能処理ステップと前記描画処理ステップとの間に、描画属性が付加されたテキスト情報をメモリに記憶させる記憶ステップを備え、前記描画処理ステップは、メモリに記憶されたテキスト情報を読み出して加工することを特徴とする。
【００１３】
この請求項３にかかる発明によれば、端末機能処理ステップと描画処理ステップとの間に、描画属性が付加されたテキスト情報をメモリに記憶させる記憶ステップを備えているため、画面に表示する描画属性が付加されたテキスト情報をメモリに保存して、端末の仕様に応じた画面制御情報に関する基本的な設定動作を行うことができる。そして、描画処理ステップでは、メモリに記憶されたテキスト情報を必要に応じて読み出すだけで、任意のタイミングで描画用に加工することができる。
【００１４】
また、この請求項４にかかる発明は、請求項１〜３のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記端末機能処理ステップは、前記描画属性としてキー入力かマウス入力かの区別、座標位置、下線情報、文字属性情報、および入力形態情報のうち少なくとも１つをテキスト情報に付加することを特徴とする。
【００１５】
この請求項４にかかる発明によれば、端末機能処理ステップにおける描画属性として、キー入力かマウス入力かの区別、座標位置、下線情報、文字属性情報、および入力形態情報のうち少なくとも１つをテキスト情報に付加するようにしたため、オペレーションパネルでの操作環境を端末表示アプリケーションの操作環境に近づけることができる。
【００１６】
また、この請求項５にかかる発明は、請求項１〜４のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記端末機能処理ステップは、端末の仕様に合わせて画面制御情報の設定を行うことを特徴とする。
【００１７】
この請求項５にかかる発明によれば、端末機能処理ステップにおいて、端末の仕様に合わせて画面制御情報を設定するようにしたため、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【００１８】
また、この請求項６にかかる発明は、請求項５に記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記端末機能処理ステップは、端末の仕様に合わせて、行数、コラム数、バックスペースの使用の可否、画面消去、カーソル移動、およびアンダーラインのうち少なくとも１つの画面制御情報を設定することを特徴とする。
【００１９】
この請求項６にかかる発明によれば、端末機能処理ステップにおいて、端末の仕様に合わせて、行数、コラム数、バックスペースの使用の可否、画面消去、カーソル移動、およびアンダーラインのうち少なくとも１つの画面制御情報を設定するようにしたため、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【００２０】
また、この請求項７にかかる発明は、請求項１〜６のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記描画処理ステップは、テキスト情報を前記端末表示アプリケーション用に加工する際に、テキスト情報を描画する描画関数が登録されたライブラリに対して描画関数の呼び出しを行うことを特徴とする。
【００２１】
この請求項７にかかる発明によれば、描画処理ステップにおいて、テキスト情報を端末表示アプリケーション用に加工する際に、テキスト情報を描画する描画関数が登録されたライブラリに対して描画関数を呼び出すようにしたため、ライブラリを変更するだけで種々の端末表示アプリケーションにも対応することができる。
【００２２】
また、この請求項８にかかる発明は、請求項７に記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記描画処理ステップは、前記オペレーションパネルの表示部に描画する特定の文字列の表示位置と文字属性情報とを前記ライブラリに渡してボタン表示を行うことを特徴とする。
【００２３】
この請求項８にかかる発明によれば、描画処理ステップにおいて、オペレーションパネルの表示部に描画する特定の文字列の表示位置と文字属性情報とをライブラリに渡してボタン表示を行うようにしたため、端末表示アプリケーションの標準入出力をオペレーションパネル上で容易に実現することができる。
【００２４】
また、この請求項９にかかる発明は、請求項１〜８のいずれか一つに記載の画像形成装置用端末エミュレータにおける描画処理方法において、前記記憶ステップは、前記メモリにテキスト情報を書き込む際に、行単位で表示内容の変更の有無をチェックすることを特徴とする。
【００２５】
この請求項９にかかる発明によれば、記憶ステップにおいて、メモリにテキスト情報を書き込む際に、行単位で表示内容の変更の有無をチェックするようにしたため、そのチェック内容を確認するだけで、表示内容に変更があった行だけを容易かつ効率的に書き換えることができる。
【００２６】
また、この請求項１０にかかる発明は、画像形成処理で使用されるハードウェア資源を有し、画像形成処理にかかるユーザサービスを行うアプリケーションを備え、前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける入力イベント処理方法であって、入力操作に対応するイベントを受信する受信ステップと、受信したイベントをイベントに含まれる描画属性に基づいて前記端末表示アプリケーションへの入力に変換する入力変換ステップと、を含み、変換された入力を前記端末表示アプリケーションに通知することを特徴とする。
【００２７】
この請求項１０にかかる発明によれば、アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータの入力イベント処理方法として、入力操作に対応するイベントを受信する受信ステップと、受信したイベントをイベントに含まれる描画属性に基づいて前記端末表示アプリケーションへの入力に変換する入力変換ステップとを含み、変換された入力を端末表示アプリケーションに通知するようにしたため、入力元がキーボードとなっている汎用の端末表示アプリケーションであっても、エミュレーション機能によりアプリケーション内部に変更を加えることなく容易に移植することができる。
【００２８】
また、この請求項１１にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションのプロセスと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスのプロセスと、操作入力および描画情報出力を行うオペレーションパネルとを備え、前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置上で動作する画像形成装置用端末エミュレータにおける入力イベント処理方法であって、入力操作に対応するイベントを受信する受信ステップと、受信したイベントをイベントに含まれる描画属性に基づいて前記端末表示アプリケーションへの入力に変換する入力変換ステップと、を含み、変換された入力を前記端末表示アプリケーションに通知することを特徴とする。
【００２９】
この請求項１１にかかる発明によれば、アプリケーションの１つである端末表示アプリケーションが搭載可能な複合機上で動作する画像形成装置用端末エミュレータにおける入力イベント処理方法であって、入力操作に対応するイベントを受信する受信ステップと、受信したイベントをイベントに含まれる描画属性に基づいて前記端末表示アプリケーションへの入力に変換する入力変換ステップとを含み、変換された入力を端末表示アプリケーションに通知するようにしたため、入力元がキーボードとなっている汎用の端末表示アプリケーションであっても、エミュレーション機能によりアプリケーション内部に変更を加えることなく容易に移植することができる。また、それぞれのソフトウェアを別個に開発する必要のある複合機に、汎用の端末表示アプリケーションを変更せずにそのまま移植できることから、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【００３０】
また、この請求項１２にかかる発明は、請求項１０または１１に記載の画像形成装置用端末エミュレータにおける入力イベント処理方法において、前記入力変換ステップは、受信イベントの描画属性に応じてキーイベントまたはマウスイベントの入力にそれぞれ変換することを特徴とする。
【００３１】
この請求項１２にかかる発明によれば、入力変換ステップにおいて、受信イベントの描画属性に応じてキーイベントまたはマウスイベントの入力にそれぞれ変換されるため、画像形成装置に汎用の端末表示アプリケーションを搭載し、オペレーションパネルからイベント入力が行われても、キーイベントとマウスイベントとが確実に区別された通知を受けることができる。
【００３２】
また、この請求項１３にかかる発明は、請求項１〜１２のいずれか一つに記載された方法をコンピュータに実行させるプログラムとしたため、いずれか一つの動作をコンピュータに実行させることができる。
【００３３】
また、この請求項１４にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスを行うアプリケーションと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置であって、前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理手段と、描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して、前記オペレーションパネルの表示部に描画処理を行う描画処理手段と、を備えたことを特徴とする。
【００３４】
この請求項１４にかかる発明によれば、端末エミュレータを介してアプリケーションの１つである端末表示アプリケーションを追加して搭載可能とし、端末機能処理手段により端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加し、描画処理手段により描画属性が付加されたテキスト情報を端末表示アプリケーション用に加工して、前記オペレーションパネルの表示部に描画処理を行うようにしたため、汎用の端末表示アプリケーションの出力先がディスプレイになっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部を変更せずに容易に移植することができる。また、出力からの受信データに含まれるテキスト情報には、受信した制御コードに基づく描画属性が付加され、この描画属性により端末表示アプリケーション用に加工するため、オペレーションパネルの表示部を使って端末表示アプリケーションの画面が表示可能となり、一層利便性が向上し、画像形成装置のメンテナンス等にも有用に用いることができる。
【００３５】
また、この請求項１５にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスと、操作入力および描画情報出力を行うオペレーションパネルと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置であって、前記端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加する端末機能処理手段と、描画属性が付加されたテキスト情報を前記端末表示アプリケーション用に加工して前記オペレーションパネルの表示部に描画処理を行う描画処理手段と、を備えたことを特徴とする。
【００３６】
この請求項１５にかかる発明によれば、端末エミュレータを介してアプリケーションの１つである端末表示アプリケーションを搭載可能とする複合機において、端末機能処理手段により端末表示アプリケーションの出力から受信したデータに含まれる制御コードに基づいてテキスト情報に描画属性を付加し、描画処理手段により描画属性が付加されたテキスト情報を端末表示アプリケーション用に加工してオペレーションパネルの表示部に描画するようにしたため、汎用の端末表示アプリケーションの出力先がディスプレイとなっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部に変更を加えることなく容易に移植することができる。また、出力からの受信データに含まれるテキスト情報には、受信した制御コードに基づく属性が付加されるため、オペレーションパネルを使って端末表示アプリケーションによる画面表示が可能となり、一層利便性が向上することから、画像形成装置のメンテナンス等にも有用に用いることができる。さらに、それぞれのソフトウェアを別個に開発する必要のある複合機の場合であっても、汎用の端末表示アプリケーションを変更せずにそのまま移植できることから、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【００３７】
また、この請求項１６にかかる発明は、請求項１４または１５に記載の画像形成装置において、前記端末機能処理手段により描画属性が付加されたテキスト情報をメモリに記憶する記憶手段をさらに備え、前記描画処理手段は、メモリに記憶されたテキスト情報を読み出して加工することを特徴とする。
【００３８】
この請求項１６にかかる発明によれば、端末機能処理手段により描画属性が付加されたテキスト情報を記憶手段のメモリに記憶するようにしたため、端末の仕様に応じた画面制御情報に関する基本的な設定動作を行うことができる。そして、描画処理手段は、メモリに記憶されたテキスト情報を必要に応じて読み出すことにより、任意のタイミングで描画用に加工することができる。
【００３９】
また、この請求項１７にかかる発明は、請求項１４〜１６のいずれか一つに記載の画像形成装置において、前記端末機能処理手段は、前記描画属性としてキー入力かマウス入力かの区別、座標位置、下線情報、文字属性情報、および入力形態情報のうち少なくとも１つをテキスト情報に付加することを特徴とする。
【００４０】
この請求項１７にかかる発明によれば、端末機能処理手段による描画属性としては、キー入力かマウス入力かの区別、座標位置、下線情報、文字属性情報、および入力形態情報のうち少なくとも１つをテキスト情報に付加するようにしたため、オペレーションパネルでの操作環境を端末表示アプリケーションの操作環境に近づけることができる。
【００４１】
また、この請求項１８にかかる発明は、請求項１４〜１７のいずれか一つに記載の画像形成装置において、前記端末機能処理手段は、端末の仕様に合わせて画面制御情報の設定を行うことを特徴とする。
【００４２】
この請求項１８にかかる発明によれば、端末機能処理手段が端末の仕様に合わせて画面制御情報を設定するようにしたため、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【００４３】
また、この請求項１９にかかる発明は、請求項１８に記載の画像形成装置において、前記端末機能処理手段は、端末の仕様に合わせて行数、コラム数、バックスペースの使用の可否、画面消去、カーソル移動、およびアンダーラインのうち少なくとも１つの画面制御情報を設定することを特徴とする。
【００４４】
この請求項１９にかかる発明によれば、端末機能処理手段が端末の仕様に合わせて行数、コラム数、バックスペースの使用の可否、画面消去、カーソル移動、およびアンダーラインのうち少なくとも１つの画面制御情報を設定するようにしたため、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【００４５】
また、この請求項２０にかかる発明は、請求項１４〜１９のいずれか一つに記載の画像形成装置において、前記オペレーションパネルの表示部にテキスト情報を描画する描画関数が登録された関数ライブラリ手段をさらに備え、前記描画処理手段は、テキスト情報を前記端末表示アプリケーション用に加工する際に、前記関数ライブラリ手段に対して描画関数の呼び出しを行うことを特徴とする。
【００４６】
この請求項２０にかかる発明によれば、オペレーションパネルの表示部にテキスト情報を描画する描画関数が登録された関数ライブラリ手段を設け、描画処理手段がテキスト情報を端末表示アプリケーション用に加工する際に、関数ライブラリ手段に対して描画関数の呼び出しを行うようにしたため、関数ライブラリ手段の登録描画関数を変更するだけで種々の端末表示アプリケーションに対応することができる。
【００４７】
また、この請求項２１にかかる発明は、請求項１４〜２０のいずれか一つに記載の画像形成装置において、前記描画処理手段は、前記オペレーションパネルの表示部に描画する特定の文字列の表示位置と文字属性情報とを前記関数ライブラリ手段に渡してボタン表示を行うことを特徴とする。
【００４８】
この請求項２１にかかる発明によれば、描画処理手段がオペレーションパネルの表示部に描画する特定の文字列の表示位置と文字属性情報とを関数ライブラリ手段に渡してボタン表示するようにしたため、端末表示アプリケーションの標準入出力をオペレーションパネル上で容易に実現することができる。
【００４９】
また、この請求項２２にかかる発明は、請求項１４〜２１のいずれか一つに記載の画像形成装置において、前記記憶手段は、前記メモリにテキスト情報を書き込む際に、行単位で表示内容の変更の有無をチェックすることを特徴とする。
【００５０】
この請求項２２にかかる発明によれば、記憶手段がメモリにテキスト情報を書き込む際に、行単位で表示内容の変更の有無をチェックするようにしたため、そのチェック結果を見るだけで表示内容に変更があった行が容易にわかるため、行単位の書き換えを効率的に行うことができる。
【００５１】
また、この請求項２３にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスを行うアプリケーションと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを追加して搭載可能にする画像形成装置であって、前記オペレーションパネルからの入力操作に対応するイベントを受信し、受信したイベントに含まれる描画属性に基づいて前記端末表示アプリケーションの入力となるようにイベントの変換処理を行うイベント変換手段を備え、前記イベント変換手段による変換結果を入力として前記端末表示アプリケーションに通知することを特徴とする。
【００５２】
この請求項２３にかかる発明によれば、画像形成装置にアプリケーションレベルで端末エミュレータを介在させてアプリケーションの１つである端末表示アプリケーションを追加して搭載可能とし、イベント変換手段によりオペレーションパネルからの入力操作に対応するイベントを受信し、受信したイベントに含まれる描画属性に基づいて、端末表示アプリケーションの入力となるようにイベントの変換処理を行い、その入力を端末表示アプリケーションに通知するようにしたため、汎用の端末表示アプリケーションであってもアプリケーション内部に変更を加えることなく容易に移植することができる。
【００５３】
また、この請求項２４にかかる発明は、画像形成処理で使用されるハードウェア資源と、画像形成処理にかかるユーザサービスにそれぞれ固有の処理を行うアプリケーションと、前記アプリケーションと前記ハードウェア資源との間に介在し、前記ユーザサービスを提供する際に、アプリケーションの少なくとも２つが共通的に必要とする前記ハードウェア資源の獲得要求、管理、実行制御並びに画像形成処理を行うコントロールサービスと、操作入力および描画情報出力を行うオペレーションパネルと、アプリケーションレベルでオペレーションパネルに対する入出力をエミュレーションする端末エミュレータと、を備え、前記端末エミュレータを介して端末表示を行う前記アプリケーションの１つである端末表示アプリケーションを搭載可能にする画像形成装置であって、前記オペレーションパネルからの入力操作に対応するイベントを受信し、受信したイベントに含まれる描画属性に基づいて前記端末表示アプリケーションの入力となるようにイベントの変換処理を行うイベント変換手段を備え、前記イベント変換手段の変換結果を入力として前記端末表示アプリケーションに通知することを特徴とする。
【００５４】
この請求項２４にかかる発明によれば、複合機からなる画像形成装置にアプリケーションレベルで端末エミュレータを介在させてアプリケーションの１つである端末表示アプリケーションを搭載可能とし、イベント変換手段によりオペレーションパネルからの入力操作に対応するイベントを受信し、受信したイベントに含まれる描画属性に基づいて端末表示アプリケーションの入力となるようにイベントの変換処理を行い、その入力を端末表示アプリケーションに通知するようにしたため、汎用の端末表示アプリケーションであってもアプリケーション内部に変更を加えることなく容易に移植することができる。また、それぞれのソフトウェアを別個に開発する必要のある複合機であっても、汎用の端末表示アプリケーションを変更せずにそのまま移植できるため、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【００５５】
また、この請求項２５にかかる発明は、請求項２４に記載の画像形成装置において、前記イベント変換手段は、受信したイベントをイベントに含まれる描画属性に基づいてキーイベントまたはマウスイベントに振り分けるイベント解析手段と、振り分けられた前記キーイベントを前記端末表示アプリケーションの入力に変換するキーイベント変換手段と、振り分けられた前記マウスイベントを前記端末表示アプリケーションの入力に変換するマウスイベント変換手段と、を備え、前記キーイベント変換手段および前記マウスイベント変換手段の変換結果を入力として前記端末表示アプリケーションに通知することを特徴とする。
【００５６】
この請求項２５にかかる発明によれば、イベント変換手段が、イベント解析手段、キーイベント変換手段、およびマウスイベント変換手段で構成され、イベント解析手段により受信したイベントをイベントに含まれる描画属性に基づいてキーイベントまたはマウスイベントに振り分け、その振り分けられたキーイベントをキーイベント変換手段により端末表示アプリケーションの入力に変換するとともに、マウスイベントをマウスイベント変換手段により端末表示アプリケーションの入力に変換し、そのキーイベント変換手段およびマウスイベント変換手段の変換結果を標準入力として端末表示アプリケーションに通知するようにしたため、入力元がキーボードとなっている汎用の端末表示アプリケーションを画像形成装置に搭載する場合でも、端末エミュレータのエミュレーション機能によりアプリケーション内部に変更を加えることなくオペレーションパネルからの入力を標準入力として端末表示アプリケーションへ通知することができる。さらに、描画属性に応じてキー入力とマウス入力とに区別することができる。
【００５７】
また、この請求項２６にかかる発明は、請求項２３〜２５のいずれか一つに記載の画像形成装置において、前記オペレーションパネルは、表示部と入力部とを一体化するタッチパネルを採用し、前記タッチパネルから入力された座標情報に対応するイベント関数をイベントとして前記イベント変換手段に通知することを特徴とする。
【００５８】
この請求項２６にかかる発明によれば、オペレーションパネルに表示部と入力部とを一体化するタッチパネルが採用され、タッチパネルから入力された座標情報に対応するイベント関数をイベントとしてイベント変換手段に通知するようにしたため、ボタン表示等で予め設定しておいた文字列に入力があると、これを認識することが可能となり、標準入力として端末表示アプリケーションに通知することができる。
【００５９】
【発明の実施の形態】
以下に添付図面を参照して、この発明にかかる画像形成装置用端末エミュレータにおける描画処理方法および入力イベント処理方法、その方法をコンピュータに実行させるプログラム、並びに画像形成装置の好適な実施の形態を詳細に説明する。
【００６０】
（実施の形態１）
図１は、この発明の実施の形態である画像形成装置（以下、「複合機」という）の機能的構成を示すブロック図である。図１に示すように、複合機１００は、白黒ラインプリンタ（B&W LP）１０１と、カラーラインプリンタ（Color LP）１０２と、スキャナ、ファクシミリ、ハードディスク、メモリ、ネットワークインタフェースなどのハードウェアリソース１０３を有するとともに、プラットホーム１２０とアプリケーション１３０とから構成されるソフトウェア群１１０とを備えている。
【００６１】
プラットホーム１２０は、アプリケーション１３０からの処理要求を解釈してハードウェア資源の獲得要求を発生させるコントロールサービスと、一または複数のハードウェア資源の管理を行い、コントロールサービスからの獲得要求を調停するシステムリソースマネージャ（ＳＲＭ）１２３と、汎用ＯＳ１２１とを有する。
【００６２】
コントロールサービスは、複数のサービスモジュールにより形成され、ＳＣＳ（システムコントロールサービス）１２２、ＥＣＳ（エンジンコントロールサービス）１２４、ＭＣＳ（メモリコントロールサービス）１２５、ＯＣＳ（オペレーションパネルコントロールサービス）１２６、ＦＣＳ（ファックスコントロールサービス）１２７、およびＮＣＳ（ネットワークコントロールサービス）１２８などで構成されている。なお、このプラットホーム１２０は、あらかじめ定義された関数によって前記アプリケーション１３０からの処理要求を受信可能とするアプリケーションプログラムインタフェース（ＡＰＩ）を有している。
【００６３】
汎用ＯＳ１２１は、ＵＮＩＸ（登録商標）などの汎用オペレーティングシステムであり、プラットホーム１２０並びにアプリケーション１３０の各ソフトウェアをそれぞれプロセスとして並列実行する。
【００６４】
ＳＲＭ１２３のプロセスは、ＳＣＳ１２２とともにシステムの制御およびリソースの管理を行うものである。ＳＲＭ１２３のプロセスは、スキャナ部やプリンタ部などのエンジン、メモリ、ＨＤＤファイル、ホストＩ／Ｏ（セントロＩ／Ｆ、ネットワークＩ／Ｆ、ＩＥＥＥ１３９４  Ｉ／Ｆ、ＲＳ２３２Ｃ  Ｉ／Ｆなど）のハードウェア資源を利用する上位層からの要求にしたがって調停を行い、実行制御する。
【００６５】
具体的には、このＳＲＭ１２３は、要求されたハードウェア資源が利用可能であるか（他の要求により利用されていないかどうか）を判断し、利用可能であれば要求されたハードウェア資源が利用可能である旨を上位層に伝える。また、ＳＲＭ１２３は、上位層からの要求に対してハードウェア資源の利用スケジューリングを行い、要求内容（例えば、プリンタエンジンにより紙搬送と作像動作、メモリ確保、ファイル生成など）を直接実施している。
【００６６】
ＳＣＳ１２２のプロセスは、アプリ管理、操作部制御、システム画面表示、ＬＥＤ表示、リソース管理、割り込みアプリ制御などを行う。
【００６７】
ＥＣＳ１２４のプロセスは、白黒ラインプリンタ（B&W LP）１０１、カラーラインプリンタ（Color LP）１０２、スキャナ、ファクシミリなどからなるハードウェアリソース１０３のエンジンの制御を行う。
【００６８】
ＭＣＳ１２５のプロセスは、画像メモリの取得および解放、ハードディスク装置（ＨＤＤ）の利用、画像データの圧縮および伸張などを行う。
【００６９】
ＦＣＳ１２７のプロセスは、システムコントローラの各アプリ層からＰＳＴＮ／ＩＳＤＮ網を利用したファクシミリ送受信、ＢＫＭ（バックアップＳＲＡＭ）で管理されている各種ファクシミリデータの登録／引用、ファクシミリ読みとり、ファクシミリ受信印刷、融合送受信を行うためのＡＰＩを提供する。
【００７０】
ＮＣＳ１２８のプロセスは、ネットワークＩ／Ｏを必要とするアプリケーションに対して共通に利用できるサービスを提供するためのプロセスであり、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行う。
【００７１】
ＯＣＳ１２６のプロセスは、オペレータ（ユーザ）と本体制御間の情報伝達手段となる後述のオペレーションパネル（操作パネル）を制御するプロセスであり、不図示のオペレーションパネルの表示部からのキー押下をキーイベントとして取得し、取得したキーに対応するキーイベント関数をＳＣＳ１２２へ送信するものである。また、上記アプリケーション１３０の端末表示アプリ１１３からＯＣＳ１２６に対して要求を行う場合は、オペレーションパネルの表示部に各種画像を描画出力する描画関数やその他オペレーションパネルに対する制御を行う関数などがあらかじめ登録された後述のＯＣＳ関数ライブラリを具備している。このＯＣＳ関数ライブラリは、アプリケーション１３０およびコントロールサービスの各モジュールにリンクされて実装されている。なお、ＯＣＳ１２６のすべてをプロセスとして動作させるように構成しても良く、あるいはＯＣＳ１２６のすべてをＯＣＳ関数ライブラリとして構成しても良い。
【００７２】
アプリケーション１３０は、ページ記述言語（ＰＤＬ）、ＰＣＬ、およびポストスクリプト（ＰＳ）を有するプリンタ用のアプリケーションであるプリンタアプリ１１１と、コピー用アプリケーションであるコピーアプリ１１２と、端末表示用のアプリケーションである端末表示アプリ（例えば、汎用のＷｅｂブラウザなど）１１３と、ファクシミリ用アプリケーションであるファックスアプリ１１５と、スキャナ用アプリケーションであるスキャナアプリ１１６と、ネットワークファイル用アプリケーションであるネットファイルアプリ１１７と、工程検査用アプリケーションである工程検査アプリ１１８とを有している。
【００７３】
端末表示アプリ１１３は、本実施の形態１の複合機１００に移植するための汎用アプリ、あるいは、開発されたアプリの一例であって、ＡＰＩ上のアプリケーションレベルに設けられた本発明の特徴的な端末エミュレータ１１４を介して実装される。この端末表示アプリ１１３は、本発明における必須要件ではないが、後述する端末エミュレータ１１４がエミュレーションすることによって、アプリ内部に変更を加えなくても搭載が可能となる。すなわち、コピー機、プリンタ、ファクシミリ装置、あるいは、それらの機能を併せ持つ複合機１００は、キーボードやディスプレイに相当する端末を具備していないため、それらの端末を前提とする（標準入出力）汎用の端末表示アプリをそのまま移植しても動作しないが、端末エミュレータ１１４のエミュレーション機能により、端末表示アプリ１１３の標準入出力を端末エミュレータ１１４が移植先の複合機などのオペレーションパネルで扱えるデータに変換処理（リダイレクション）するからである。
【００７４】
また、図２の描画処理部１４４は、テキストメモリ１４３に格納されたテキスト情報を端末表示アプリ１１３用に加工して、オペレーションパネル１６０の表示部に描画処理を行うものである。描画処理を行う際は、描画処理部１４４からボタンや文字列などの画像を描画する描画関数が登録されたＯＣＳ関数ライブラリ１４５に対して描画関数の呼び出しを行い、その内容をオペレーションパネル１６０の表示部に表示する。ここでは、端末表示アプリ１１３にＷｅｂブラウザのアプリケーションを用いているため、ブラウジング画面中に表示されるハイパーリンクやＦＯＲＭ入力などの画面に対する操作が必要になってくる。本実施の形態１では、複合機１００のオペレーションパネル１６０の表示部にタッチパネル入力が可能なＬＣＤ画面を採用しているが、ＬＣＤ画面にはタッチパネル入力の座標を取得する機構がないため、タッチパネル入力が必要な部分（ハイパーリンクやＦＯＲＭ入力部分）をボタン形式などで予め表示しておく必要がある。
【００７５】
図４は、端末エミュレータ上で端末表示アプリを実行した場合のブラウジング画面の一例を示す図である。描画処理部１４４では、図４に示すように、ハイパーリンク画像１５１の場合、文字に青色（図には色表示しない）の下線を付加したボタンを生成し、ＦＯＲＭ入力画像１５２の場合、赤色（色表示しない）の反転文字ボタンを生成し、インライン画像１５３の場合、緑色（色表示しない）の反転文字ボタンを生成することができる。しかし、このようなボタンを生成し、ボタンから画面操作を行っても、そのままでは端末表示アプリ１１３側に操作内容を通知することができない。そこで、後述するように特定の文字列に対してボタン表示を行うようにし、このボタンが操作された場合は、その入力をマウスのダブルクリックに変換して端末表示アプリ１１３へ通知する機構を採用している。
【００７６】
次に、図５は、端末表示アプリからの端末表示要求によってオペレーションパネルの表示部に表示されるまでの動作を説明するフローチャートである。図５に示すように、行表示要求関数では、まずこれから表示する行を削除し（ステップＳ１０１）、表示データの中の文字属性を有する文字からなる文字列を先頭文字から走査する（ステップＳ１０２）。そして、文字属性が一つ前の文字の文字属性と比較して変化したかどうかをチェックする（ステップＳ１０３）。そして、文字属性が変化していない場合には、文字属性を含む文字列の終端まで走査したか否かを判断し（ステップＳ１１１）、まだ終端まで走査していない場合には、ステップＳ１０２の表示データの文字走査を繰り返す。
【００７７】
一方、ステップＳ１０３において、文字属性が一つ前の文字の文字属性から変化した場合は、前回の文字属性変化位置の文字から現在の一つ前の文字までの文字列を、文字列変数ｍｓｇに格納する（ステップＳ１０４）。そして、かかる文字列に共通する文字属性を調査する（ステップＳ１０５）。
【００７８】
文字属性が「黒」である場合には、ユーザからの押下の対象ではない通常表示の文字であることを示しているので、ｍｓｇの文字列の先頭文字の位置座標（ｘ，ｙ）にｍｓｇの文字列を黒色で表示し（ステップＳ１０６）、ＯＣＳ関数ライブラリ１４５に登録されているＯＣＳ描画関数呼び出しを行う（ステップＳ１１０）。これによってオペレーションパネル１６０のＬＣＤ画面に文字列が黒色で通常表示されることになる。
【００７９】
ステップＳ１０５の調査において、文字属性が「青」である場合には、ハイパーリンクが指定された文字であることを示しているので、ｍｓｇの文字列の先頭文字の位置座標（ｘ，ｙ）にｍｓｇの文字列を青色で、かつボタン形式で表示する（ステップＳ１０７）。そして、ユーザがオペレーションパネル１６０のＬＣＤ画面から入力した場合の位置座標を取得するためのタッチコードを生成し（ステップＳ１０９）、ＯＣＳ関数ライブラリ１４５に登録されているＯＣＳ描画関数呼び出しを行う（ステップＳ１１０）。これによってオペレーションパネル１６０のＬＣＤ画面に文字列が青色（ハイパーリンク）のボタン形式で表示されることになる。
【００８０】
次に、ステップＳ１０５の調査において、文字属性が「緑」である場合には、ＦＯＲＭ入力またはインライン画像の文字であることを示しているので、ｍｓｇの文字列の先頭文字の位置座標（ｘ，ｙ）にｍｓｇの文字列を文字属性で指定された色（ここでは、「緑」）の反転文字で表示する（ステップＳ１０８）。そして、タッチコードを生成して（ステップＳ１０９）、ＯＣＳ関数ライブラリ１４５に登録されているＯＣＳ描画関数呼び出しを行う（ステップＳ１１０）。これによってオペレーションパネル１６０のＬＣＤ画面に文字列が緑色の反転文字で表示されることになる。そして、このようなステップＳ１０２からＳ１１０までの処理は、表示データ中、文字属性を含む文字列の終端までの走査が完了するまで繰り返される（ステップＳ１１１）。
【００８１】
このように、端末エミュレータ１１４の描画処理部１４４によって、端末表示アプリ１１３が想定している画面をオペレーションパネル１６０の表示部上に描画表示し、その表示の少なくとも一部をボタン形式にて表示することにより、ブラウジング画面と同様にハイパーリンクなどが使える表示画面を得ることができる。
【００８２】
（端末表示アプリの移植形態）
次に、本実施の形態１にかかる画像形成装置に汎用の端末表示アプリを移植して、オペレーションパネルの表示部にブラウジング画面等を描画表示させるようにする場合、端末表示アプリには殆ど変更を加えずに移植できるようにするため、以下に示すような方法を用いている。
【００８３】
図６は、端末機能対応のアプリを端末デバイスのない機器に移植した場合の図であり、（ａ）はアプリ内容を変更した場合の図、（ｂ）は端末エミュレータを介在させた場合の図である。端末機能対応のアプリを端末デバイス（キーボードやディスプレイ）が接続された機器に移植する場合、アプリケーションを変更することなく移植できる。しかし、本実施の形態のように端末機能対応のアプリを端末デバイスが存在しない機器（コピー機、プリンタ、ファクシミリ装置あるいは複合機など）に移植しようとすると、データの入出力先としてはオペレーションパネルの表示部や入力部程度しかなく、そのまま端末機能対応のアプリを移植しても動作しない。このため、図６（ａ）に示すように、端末機能対応アプリ１７３の内部に端末デバイスにアクセスする個所をＡＰＩ１７６を使って端末デバイスに代替するようにアプリ自身に変更を加える必要がある（アプリ変更部分１７３ａ）。
【００８４】
しかし、本実施の形態１では、アプリケーションを移植する際にアプリ内部に変更を加える手間を省くため、図６（ｂ）に示すように、端末エミュレータ１７５を端末機能対応アプリ１７３とＡＰＩ１７６との間に介在させて、端末機能対応アプリ１７３の標準入出力をキーボードやディスプレイを持たない複合機に移植したとしても適合するように、標準入出力の変換処理（エミュレーション）を行うようにしたものである。これにより、端末機能対応アプリ１７３には殆ど変更を加えることなく移植することが可能となる。
【００８５】
以上説明したように、本実施の形態１によれば、端末機能に対応した汎用のアプリケーションをアプリケーション内部に殆ど変更を加えることなく移植することが可能である。このため、開発期間が短縮できることから開発効率が向上するとともに、低コストに開発できるという利点がある。特に、本実施の形態１で説明した複合機のように、複数のアプリケーションを搭載する機器であれば、個々のソフトウェアをそれぞれ開発する必要があるため、開発期間の短縮や開発コストの低減が強く要望されているが、端末表示アプリケーションを搭載するにあたって、汎用ソフトに変更を加えることなくそのまま移植できるという利点は大きい。
【００８６】
（実施の形態２）
次に、本実施の形態２では、オペレーションパネルの入力部からの入力を標準入力に変換して端末表示アプリ１１３へ通知する場合について説明する。
【００８７】
まず、図２に示すオペレーションパネル１６０の表示部には、パネル面に触れるとその座標値が入力される入力部を兼ねたタッチパネルを採用している。このため、オペレーションパネル１６０の所定位置に下線やボタン、あるいは、後述するようなソフトキーボードを表示させ、それらのボタン位置やキー位置に対応する座標値が入力された場合に、当該ボタンやキーが押下されたとするイベントメッセージを発生させることができる。すなわち、図２に示すＯＣＳ１２６は、オペレーションパネル１６０の入力部からキーイベントメッセージを取得すると、取得したキーに対応したイベント関数をＳＣＳ１２２のプロセスに送信する。そして、ＳＣＳ１２２のプロセスでは、ＯＣＳ１２６から受信したイベント関数を端末エミュレータ１１４のイベント解析部１４７に送信する。
【００８８】
また、オペレーションパネル１６０の入力部からのイベントがマウスイベントの場合もほぼこれと同様であって、ＯＣＳ１２６は、タッチ位置における座標値の入力があるとその座標値に対応したイベント関数がＳＣＳ１２２のプロセスに送信され、そのイベント関数が端末エミュレータ１１４のイベント解析部１４７に送信される。
【００８９】
そして、イベント解析部１４７では、入力されたイベント関数がキー入力かマウス入力かを受信イベントによって解析し、キー入力の場合はそのイベントをキー操作入力変換部１４９へ、マウス入力の場合はそのイベントをマウス入力変換部１４８に送るものである。
【００９０】
マウス入力変換部１４８は、イベント解析部１４７により振り分けられたマウスイベントを端末表示アプリ１１３の標準入力に変換処理するものである。このとき、入力形態情報の描画属性が含まれている場合は、シングルクリックをダブルクリックに読み替えることが行われるため、速やかに実行処理が開始される。
【００９１】
また、キー操作入力変換部１４９は、イベント解析部１４７により振り分けられたキーイベントを端末表示アプリ１１３の標準入力に変換処理するものである。例えば、図４に示すように、オペレーションパネル１６０の表示部の右側に、フレームを用いてＬＣＤ画面上に各種のボタン１６１〜１６９を形成し、キー操作入力変換部１４９がオペレーションパネル１６０のＬＣＤ画面の表示レイアウトを管理するオブジェクトを生成することにより、ｐｒｅｖボタン（前に戻る）１６１、ｆｉｎｄボタン（ファイルの末尾に向かって正規表現を検索）１６２、ｕｐボタン（前のページを表示：逆スクロール）１６３、ｌｅｆｔボタン（画面全体を左：表示内容を右）１６４、ｒｉｇｈｔボタン（画面全体を右：表示内容を左）１６５、ｄｏｗｎボタン（次のページを表示：スクロール）１６６、ｇｏＵＲＬボタン（ＵＲＬを指定して開く）１６７、ｈｅｌｐボタン（ヘルプファイルを表示）１６８、ｅｘｉｔボタン（端末表示アプリを終了）１６９の管理を行い、このうちのいずれかのボタンが操作された場合に、そのボタン入力を端末表示アプリ１１３の標準入力に変換している。
【００９２】
（オペレーションパネルから端末表示アプリへのイベント通知処理）
図７は、オペレーションパネルの入力部のボタン押下が端末表示アプリに送出されるまでの動作を説明するフローチャートである。この図７を用いて、オペレーションパネル上に表示されたボタンが押下された時のイベント通知動作を説明する。
【００９３】
まず、図７のように、オペレーションパネル１６０上にボタンが表示され、そのボタンが押下されると（ステップＳ１２０）、イベント通知関数（keycode） にタッチコードを引数として渡す（ステップＳ１２２）。
【００９４】
このとき、タッチコードの最上位ビット（ＭＳＢ）を調べ（ステップＳ１２４）、ステップＳ１２６にて最上位ビット（ＭＳＢ）が「１」であればマウス入力と判定され（ステップＳ１２８）、マウス入力変換部１４８において行列位置をダブルクリックしたことを示す制御コードが標準出力として送出される（ステップＳ１３０）。
【００９５】
また、ステップＳ１２６にてタッチコードの最上位ビット（ＭＳＢ）が「０」であればキー入力と判定され（ステップＳ１３２）、キー操作入力変換部１４９において各ボタンのＩＤ番号に対応した文字列コードを標準入力として送出される（ステップＳ１３４）。
【００９６】
そして、図２の送信ＦＩＦＯキュー１５０では、上記したマウス入力変換部１４８またはキー操作入力変換部１４９を経て標準入力に変換されたデータ列を取り込んだ順に蓄積してゆき、取り込んだ順に端末表示アプリ１１３に対して通知することを行っている。
【００９７】
このように、本実施の形態２によれば、複合機などの画像形成装置に対して、アプリケーションレベルで端末エミュレータ１１４を介してＷｅｂブラウザなどの汎用の端末表示アプリ１１３を移植することにより、端末表示アプリ１１３の標準入出力を行うキーボードやディスプレイのない機器でも、アプリの内容に変更を加えずにオペレーションパネルなどから入力操作が行えるようになる。これは、端末エミュレータ１１４が入力イベントを標準入力に変換して端末表示アプリに通知するため、端末表示アプリ１１３側から見るとキーボードなどの入力端末が存在するのと同様のデータ入力処理が行えるからである。
【００９８】
（実施の形態３）
本実施の形態３では、図２に示す端末エミュレータ１１４において、上記実施の形態１で説明した構成に加えて、受信ＦＩＦＯキュー１４０、構文解析部１４１、および関数呼出部１４６をそれぞれ付加した場合である。
【００９９】
（受信ＦＩＦＯキュー）
受信ＦＩＦＯキュー１４０は、構文解析部１４１の前段にＦＩＦＯ（先入れ先出し）を介在させて、端末表示アプリ１１３から受け取った制御コードを順に蓄積するとともに、受け取った順序で次段の構文解析部１４１へ出力するものである。また、受信ＦＩＦＯキュー１４０内では、受信した制御コードの不定長ブロックの比較が行われ、該当する制御コードと認識するとストリーム位置を更新する機能を備えている。これは、端末表示アプリ１１３からの受信ストリームを構文解析部１４１により直接解析させると、受信ストリームが不定長の制御コードにより構成されているため、そのままでは容易に解析できないからである。そこで、本実施の形態３にかかる受信ＦＩＦＯキュー１４０では、端末表示アプリ１１３から標準出力される制御コードをバッファリングするとともに、不定長の制御コードを比較することにより、制御コードの長さに応じた構文解析が行えるようになっている。なお、受信ストリームオブジェクトの関数群としては、文字列比較（IsCmpString）、文字比較（IsCmpChar）、文字評価取得（IsGetChar）、文字取得（GetChar）、数値取得（GetNum）、およびストリーム位置変更(SetOffset）などが用いられている。
【００１００】
また、受信ＦＩＦＯキュー１４０は、上記実施の形態１で説明した描画処理部１４４に対して、オペレーションパネル１６０の表示部への描画タイミングを指示することを行っている。すなわち、図２に示すように、受信ＦＩＦＯキュー１４０が描画処理部１４４に対して描画指示信号１５４（破線矢印）を送信すると、描画処理部１４４は、そのタイミングでオペレーションパネル１６０の表示部上に描画表示が行われる。これは、画像形成装置のオペレーションパネルとしては、操作情報やエラー表示（静止画）などが表示できれば良く、ＯＣＳ関数ライブラリに対して関数を呼び出す描画方式を採用している。しかし、画面をスクロールしたり、種々の画像データを表示するなどの高速描画処理をそのまま上記方式で行うと、画面がチラツクなど不自然な表示画面になるのを防ぐ必要がある。
【０１０１】
そこで、本実施の形態３においては、受信ＦＩＦＯキュー１４０が描画処理部１４４に対して描画指示信号１５４を送信するタイミングとして、▲１▼端末表示アプリ１１３から受信ＦＩＦＯキュー１４０に対して標準出力を出さなくなった（途切れた）時点、あるいは、▲２▼受信ＦＩＦＯキュー１４０内の制御コードが空になった（端末表示アプリ１１３から標準出力を出さなくなり、受信ＦＩＦＯキュー１４０内の制御コードが構文解析部１４１に全て出力された）時点などが考えられる。このように、受信ＦＩＦＯキュー１４０が描画指示信号１５４を送信するタイミングで描画処理部１４４が処理した描画データをまとめてオペレーションパネル１６０の表示部上に描画表示させるタイミングを計ることにより、まとまった描画データ単位で描画表示が行われるため、画面のチラツキや表示の不自然さを解消することができる。
【０１０２】
（構文解析部）
次に、構文解析部１４１は、端末表示アプリ１１３からの標準出力データを解析し、その制御コードに応じた適切な処理を呼び出すための構文解析手段であり、パーサー（parser）とも称される。本実施の形態３における構文解析処理は、標準出力データの制御コードが端末制御コードか拡張制御コード（ＥＳＣコード）かを判別し、端末制御コードの場合は、上記実施の形態１で説明した端末機能処理部１４２における処理を呼び出し、拡張制御コードの場合は、次段の関数呼出部１４６における処理を呼び出すようにする。このように、構文解析部１４１では、標準出力を構文解析した制御コードの種類に応じて端末表示処理を２つに分けて処理するようにしたため、オペレーションパネルの表示部上に種々の画面を表示することができる。特に、次段の関数呼出部１４６における処理では、上記した端末機能処理部１４２だけでは処理できないソフトキーボード処理やイメージ貼り付け処理などを行うことができるため、オペレーションパネル１６０の描画表示機能を一層多機能化することができる。
【０１０３】
（関数呼出部）
次に、関数呼出部１４６は、受信ストリーム中に拡張制御コード（ＥＳＣコード）があった場合に、オペレーションパネル１６０の表示部上にソフトキーボード表示したり、イメージ貼り付け等を行うものである。ソフトキーボードとは、オペレーションパネル１６０のＬＣＤ画面上にキーボードを表示し、タッチパネルなどを使ってハードウェアのキーボードと同様のキー入力操作が行えるようにしたものである。
【０１０４】
関数呼出部１４６によるソフトキーボード制御は、端末制御コードを用いることにより、ソフトキーボードをオペレーションパネルの表示部上に容易に表示することができ、また、表示されたソフトキーボードからの入力を標準入力として端末表示アプリ１１３に通知することができる。以下、ソフトキーボードの表示動作と、その表示されたソフトキーボードからのキー入力動作について、図２および図８〜図１１を用いて説明する。
【０１０５】
図８は、ソフトキーボードを表示するために端末表示アプリから標準出力として出力される制御コード書式の一例を示す図であり、図９は、オペレーションパネルの表示部上に表示されたソフトキーボードの表示例を示す図であり、図１０は、ソフトキーボードを表示するための標準出力動作を説明するフローチャートであり、図１１は、ソフトキーボードからの入力を標準入力に変換する動作を説明するフローチャートである。
【０１０６】
（ソフトキーボード処理）
まず、ソフトキーボードを表示するためには、図８に示すように、制御コードが図２の端末表示アプリ１１３から標準出力として出力される（図１０のステップＳ１４０）。この制御コードは、図８の（ａ）〜（ｇ）に示されるように、関数呼出を行う関数呼出部１４６の指定コードから始まり、入力エリア終端文字コードまでの７つの部分で構成されている。
【０１０７】
このソフトキーボードの制御コードを用いて、関数呼出部１４６からＯＣＳ関数ライブラリ１４５に対して関数呼び出しを行うことにより、ソフトキーボード要求関数に変換され（図１０のステップＳ１４２）、オペレーションパネル１６０のＬＣＤ画面にソフトキーボードが表示される（図１０のステップＳ１４４）。これは、ソフトキーボードの制御コードがソフトキーボード要求関数（SysSoftOpen）を実行するための制御コードだからである。
【０１０８】
また、オペレーションパネル１６０には、図９に示すようにソフトキーボードが表示され、パネル表面にはタッチパネルが採用されている。このため、オペレータは、オペレーションパネル１６０の表示部上のソフトキーボードを見て、入力したいキー位置のパネル部分にタッチするだけでキー入力を行うことができる（図１１のステップＳ１５０）。
【０１０９】
キー入力があると、ステップＳ１５２でキー入力判定を行い、取り消しボタンやＯＫボタン以外のボタンが押下されたと判定されると、ステップＳ１５０に戻る。また、ステップＳ１５２で図９のソフトキーボードのＯＫボタン１６０ａが押下されたと判定されると、入力文字列が図２のキー操作入力変換部１４９にてキー入力に変換され（ステップＳ１５４）、ソフトキーボードから入力されたデータの末尾には、リターンコード0x0aが付加される。
【０１１０】
また、ステップＳ１５２で図９のソフトキーボードの取り消しボタン１６０ｂが押下されたと判定されると、入力が無効となり、Control-C コードに対応した0x03が通知される（ステップＳ１５８）。
【０１１１】
上記ステップＳ１５４で変換されたキー入力と、ステップＳ１５８でのControl-C（0x03）の通知は、図２の送信ＦＩＦＯキュー１５０を介して端末表示アプリ１１３の標準入力となる（ステップＳ１５６）。すなわち、ソフトキーボードから入力されたデータは、端末表示アプリ１１３の標準入力としてリダイレクトされたことになる。
【０１１２】
（イメージ貼り付け処理）
次に、これまでのコピー機、プリンタ、ファクシミリ装置、あるいは、複合機などの画像形成装置には、イメージ表示可能なイメージウィンドウ（オペレーションパネルの表示部など）が存在しなかった。このため、本実施の形態３では、上記した拡張制御コード処理の一つとして、イメージ画像を表示するためのイメージ貼り付け処理を行うことができる。
【０１１３】
図１２は、イメージ表示を行う場合のＥＳＣコード書式の一例を示す図であり、図１３は、イメージ表示するＧＩＦファイルの一例を示す図であり、図１４は、図１３のＧＩＦファイルを画面に表示するためのプログラム例を説明する図であり、図１５は、図１４のプログラムを実行してオペレーションパネルの表示部上に表示したイメージ表示例を示す図である。
【０１１４】
まず、オペレーションパネルの表示画面の所定位置に所望のイメージ表示を行うため、図１２に示すＥＳＣコードが図２の端末表示アプリ１１３から標準出力として出力される。このＥＳＣコードは、図１２の（ａ）〜（ｅ）に示されるように、関数呼出を行う関数呼出部１４６の指定コードから始まり、終端文字コードまでの５つの部分で構成されている。
【０１１５】
次に、ＧＩＦファイルとして、図１３のabc.gif を表示するためのプログラム（図１４）は、イメージ表示を指示する図１２のＥＳＣコードを用いて、図１３のabc.gif イメージをオペレーションパネルの表示部の座標（ｘ，ｙ）＝（５０，５０）位置に表示されるよう、イメージ表示位置およびイメージファイルを図１４中の▲１▼のように指定している。また、図１４中▲２▼のプログラムは、標準入力からＱ文字を受信した場合にプログラムが終了することを意味し、図１４中の▲３▼は、イメージ表示がアイコン登録機能を使用して擬似的にイメージウィンドウを実現していることから、イメージ表示を終了する場合は、イメージウィンドウおよびイメージ登録を破棄する必要があることを示している。
【０１１６】
このように、図１４に示すプログラムを実行することにより、図１５に示すようなオペレーションパネル１６０の表示部上の所定位置に、図１３に示したようなＧＩＦファイルのイメージを貼り付けて表示させることができる。
【０１１７】
（ＧＵＩ機能の追加方法）
また、図１６は、端末機能対応のアプリを端末デバイスのない機器に移植し、さらにＧＵＩ機能を追加する場合の図であり、（ａ）はアプリ内にＧＵＩ機能を追加した図、（ｂ）は端末エミュレータ内にＧＵＩ機能を追加した図である。端末機能対応のアプリは、テキスト操作を行うインターフェース（ＣＵＩ：キャラクタ・ユーザ・インターフェース）であるが、テキスト表示以外にも拡張された機能として、ボタン操作やイメージ表示、タッチパネルなど多くの機能が搭載されている。そこで、このような様々な機能を使ってＧＵＩ（グラフィック・ユーザ・インターフェース）に対応したアプリに変更する場合、アプリに対してＡＰＩを直接操作し、グラフィック用のユーザ・インターフェース（ＧＵＩ）を追加する必要がある。そこでこの追加形態としては、例えば図１６（ａ）に示すように、▲１▼端末機能対応アプリ１７３内にＡＰＩ１７６を直接操作する部分を付加することによりＧＵＩ１７３ｂを追加する方法と、図１６（ｂ）に示すように、▲２▼端末エミュレータ１７５内に端末機能に対応したアプリに応じたＧＵＩ１７５ａを追加する方法の２通りが考えられる。図１６（ａ）の追加方法は、端末機能に対応したアプリケーション内部の動作を把握して変更を加える必要がある上、ＡＰＩ１７６の操作も把握しなければならないため、移植が大変困難となる。これに対して、図１６（ｂ）の追加方法は、端末機能対応アプリ１７３を変更する必要がなく、移植が容易に行えるという利点がある。
【０１１８】
そこで、本実施の形態３では、端末機能に対応した汎用アプリを移植する場合、ＧＵＩにも対応可能なアプリケーションに変更するようにする。この場合の具体的なＧＵＩ機能の追加方法を図２を用いて説明する。
【０１１９】
図２において、ＧＵＩ機能を追加する場合の特徴的な構成としては、個別のアプリに対応したＣＵＩをＧＵＩに変更するための動的なグラフィック変換ライブラリ１８０を備えている点にある。このグラフィック変換ライブラリ１８０は、端末表示アプリ１１３とＡＰＩ（図示省略）との間に介在していて、ＣＵＩをＧＵＩに変更する機能を有している。
【０１２０】
また、図２に示すグラフィック変換ライブラリ１８０内には、端末表示アプリ１１３に特化したＯＣＳ関数ライブラリ１４５への表示画面を管理する表示画面管理部１８１を備えている。この表示画面管理部１８１は、端末表示アプリ１１３の操作コマンドをボタンに変更することにより、端末表示アプリ１１３に対する標準入力をストリームデータに変換して通知するものであり、さらに、端末表示アプリ１１３が表示するブラウザ画面などの子ウィンドウのハンドルの管理も行っている。
【０１２１】
図２のグラフィック変換ライブラリ１８０内の描画処理部１４４は、テキストメモリ１４３が管理するテキスト情報を端末表示アプリ用に加工してオペレーションパネル１６０のＬＣＤ画面に描画する。描画処理部１４４の機能は、上記実施の形態１で説明したため、ここでは説明を省略する。
【０１２２】
また、図２のグラフィック変換ライブラリ１８０内のキー操作入力変換部１４９は、オペレーションパネル１６０のＬＣＤ画面の表示レイアウトを管理するオブジェクトを生成するものであり、上記実施の形態２で説明したため、ここでは説明を省略する。
【０１２３】
また、図２のグラフィック変換ライブラリ１８０内のマウス入力変換部１４８は、オペレーションパネル１６０のＬＣＤ画面上のタッチ入力をマウス入力に変換処理するものであり、上記実施の形態２で説明したため、ここでは説明を省略する。
【０１２４】
以上説明したように、本実施の形態３によれば、実施の形態１の効果に加えて、受信ＦＩＦＯキュー１４０を設けたことにより、標準出力の不定長の制御コードに対して容易に構文解析が行えるようになり、標準出力からの受信ストリームを蓄積するＦＩＦＯが空になるか、ＦＩＦＯに標準出力を出さなくなった時点でオペレーションパネルの表示部へ描画するようにしたため、画面のチラツキや表示の不自然さを解消することができる。
【０１２５】
また、本実施の形態３によれば、実施の形態１の効果に加えて、構文解析部１４１により標準出力データの解析を行い、制御コードに応じた適切な描画処理を呼び出すようにしたため、オペレーションパネル１６０の表示部上に種々の画面表示を行うことが可能となる。
【０１２６】
さらに、本実施の形態３によれば、実施の形態１の効果に加えて、受信ストリーム中に拡張制御コード（ＥＳＣコード）がある場合は、関数呼出部により上記端末機能処理部１４２では処理できなかったソフトキーボード処理やイメージ貼り付け処理などを行うことができる。
【０１２７】
なお、上記した実施の形態１〜３では、端末表示アプリケーションを搭載する機器として複合機を用いた例で説明したが、本発明は必ずしも複合機に限定されるものではなく、コピー機、プリンタ、ファクシミリ装置、あるいはスキャナ装置などオペレーションパネルを備えた単体の画像形成装置についても適用することが可能であり、上記と同様に好適な効果を得ることができる。
【０１２８】
【発明の効果】
以上説明したように、請求項１にかかる発明によれば、汎用の端末表示アプリケーションの標準出力先がディスプレイとなっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部に変更を加えずに容易に移植することができる。また、オペレーションパネルを使って端末表示アプリケーションによる画面表示が可能となり、一層利便性が向上することから、画像形成装置のメンテナンス等にも有用に用いることができる。
【０１２９】
また、請求項２にかかる発明によれば、汎用の端末表示アプリケーションの標準出力先がディスプレイとなっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部に変更を加えずに容易に移植することができる。また、オペレーションパネルを使って端末表示アプリケーションによる画面表示が可能となり、一層利便性が向上することから、画像形成装置のメンテナンス等にも有用に用いることができる。さらに、複合機の場合でも、開発効率が向上し、開発期間が短縮できる上、低コスト化できる利点がある。
【０１３０】
また、請求項３にかかる発明によれば、画面に表示する描画属性が付加されたテキスト情報をメモリに保存して、端末の仕様に応じた画面制御情報に関する基本的な設定動作を行うことができる。
【０１３１】
また、請求項４にかかる発明によれば、オペレーションパネルでの操作環境を端末表示アプリケーションの操作環境に近づけることができる。
【０１３２】
また、請求項５にかかる発明によれば、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【０１３３】
また、請求項６にかかる発明によれば、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【０１３４】
また、請求項７にかかる発明によれば、ライブラリを変更するだけで種々の端末表示アプリケーションにも対応することができる。
【０１３５】
また、請求項８にかかる発明によれば、端末表示アプリケーションの標準入出力をオペレーションパネル上で容易に実現することができる。
【０１３６】
また、請求項９にかかる発明によれば、チェック内容を確認するだけで、表示内容に変更があった行だけを容易かつ効率的に書き換えることができる。
【０１３７】
また、請求項１０にかかる発明によれば、標準入力元がキーボードとなっている汎用の端末表示アプリケーションであっても、エミュレーション機能によりアプリケーション内部に変更を加えることなく容易に移植することができる。
【０１３８】
また、請求項１１にかかる発明によれば、標準入力元がキーボードとなっている汎用の端末表示アプリケーションであっても、エミュレーション機能によりアプリケーション内部に変更を加えることなく容易に移植することができる。また、複合機の場合は、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【０１３９】
また、請求項１２にかかる発明によれば、画像形成装置に汎用の端末表示アプリケーションを搭載し、オペレーションパネルからイベント入力が行われても、キーイベントとマウスイベントとが確実に区別された通知を受けることができる。
【０１４０】
また、請求項１３にかかる発明によれば、請求項１〜１２のいずれか一つの動作をコンピュータに実行させることができる。
【０１４１】
また、請求項１４にかかる発明によれば、汎用の端末表示アプリケーションの標準出力先がディスプレイになっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部を変更せずに容易に移植することができる。また、オペレーションパネルの表示部を使って端末表示アプリケーションの画面が表示可能となり、一層利便性が向上し、画像形成装置のメンテナンス等にも有用に用いることができる。
【０１４２】
また、請求項１５にかかる発明によれば、汎用の端末表示アプリケーションの標準出力先がディスプレイとなっていても、端末エミュレータのエミュレーション機能により端末表示アプリケーション内部に変更を加えることなく容易に移植することができる。また、オペレーションパネルを使って端末表示アプリケーションによる画面表示が可能となり、一層利便性が向上することから、画像形成装置のメンテナンス等にも有用に用いることができる。さらに、複合機の場合でも、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【０１４３】
また、請求項１６にかかる発明によれば、端末の仕様に応じた画面制御情報に関する基本的な設定動作を行うことができる。
【０１４４】
また、請求項１７にかかる発明によれば、オペレーションパネルでの操作環境を端末表示アプリケーションの操作環境に近づけることができる。
【０１４５】
また、請求項１８にかかる発明によれば、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【０１４６】
また、請求項１９にかかる発明によれば、端末表示アプリケーションの画面と同様な環境をオペレーションパネルに再現することができる。
【０１４７】
また、請求項２０にかかる発明によれば、関数ライブラリ手段の登録描画関数を変更するだけで種々の端末表示アプリケーションに対応することができる。
【０１４８】
また、請求項２１にかかる発明によれば、端末表示アプリケーションの標準入出力をオペレーションパネル上で容易に実現することができる。
【０１４９】
また、請求項２２にかかる発明によれば、チェック結果を見るだけで表示内容に変更があった行が容易にわかり、行単位の書き換えを効率的に行うことができる。
【０１５０】
また、請求項２３にかかる発明によれば、汎用の端末表示アプリケーションであってもアプリケーション内部に変更を加えることなく容易に移植することができる。
【０１５１】
また、請求項２４にかかる発明によれば、汎用の端末表示アプリケーションであってもアプリケーション内部に変更を加えることなく容易に移植することができる。また、複合機の場合でも、開発効率が向上し、開発期間が短縮できる上、低コスト化できるという利点がある。
【０１５２】
また、請求項２５にかかる発明によれば、アプリケーション内部に変更を加えることなくオペレーションパネルからの入力を標準入力として端末表示アプリケーションへ通知することができ、さらに、描画属性に応じてキー入力とマウス入力とに区別することができる。
【０１５３】
また、請求項２６にかかる発明によれば、ボタン表示等で予め設定しておいた文字列に入力があると、これを認識することが可能となり、標準入力として端末表示アプリケーションに通知することができる。
【図面の簡単な説明】
【図１】この発明の実施の形態である画像形成装置の機能的構成を示すブロック図である。
【図２】図１の画像形成装置用端末エミュレータの機能的構成とデータの流れを示すブロック図である。
【図３】属性が付加された文字コードがテキストメモリに格納されている状態を示す図である。
【図４】端末エミュレータ上で端末表示アプリを実行した場合のブラウジング画面の一例を示す図である。
【図５】端末表示アプリからの端末表示要求によってオペレーションパネルに表示されるまでの動作を説明するフローチャートである。
【図６】端末機能対応のアプリを端末デバイスのない機器に移植した場合の図であり、（ａ）はアプリ内容を変更した場合の図、（ｂ）は端末エミュレータを介在させた場合の図である。
【図７】オペレーションパネルの入力部のボタン押下が端末表示アプリに送出されるまでの動作を説明するフローチャートである。
【図８】ソフトキーボードを表示するために端末表示アプリから標準出力として出力される制御コード書式の一例を示す図である。
【図９】オペレーションパネル上に表示されたソフトキーボードの表示例を示す図である。
【図１０】ソフトキーボードを表示するための標準出力動作を説明するフローチャートである。
【図１１】ソフトキーボードからの入力を標準入力に変換する動作を説明するフローチャートである。
【図１２】イメージ表示を行う場合のＥＳＣコード書式の一例を示す図である。
【図１３】イメージ表示するＧＩＦファイルの一例を示す図である。
【図１４】図１３のＧＩＦファイルを画面に表示するためのプログラム例を説明する図である。
【図１５】図１４のプログラムを実行してオペレーションパネル上に表示したイメージ表示例を示す図である。
【図１６】端末機能対応のアプリを端末デバイスのない機器に移植するとともにＧＵＩ機能を追加した場合の図であり、（ａ）はアプリ内にＧＵＩ機能を追加した図、（ｂ）は端末エミュレータ内にＧＵＩ機能を追加した図である。
【符号の説明】
１００  複合機
１０１  白黒ラインプリンタ（B&W LP）
１０２  カラーラインプリンタ（Color LP）
１０３  その他ハードウェアリソース
１１０  ソフトウェア群
１１１  プリンタアプリ
１１２  コピーアプリ
１１３  端末表示アプリ
１１４  端末エミュレータ
１１５  ファックスアプリ
１１６  スキャナアプリ
１１７  ネットファイルアプリ
１１８  工程検査アプリ
１２０  プラットホーム
１２１  汎用ＯＳ
１２２  ＳＣＳ
１２３  ＳＲＭ
１２４  ＥＣＳ
１２５  ＭＣＳ
１２６  ＯＣＳ
１２７  ＦＣＳ
１２８  ＮＣＳ
１３０  アプリケーション
１４０  受信ＦＩＦＯキュー
１４１  構文解析部
１４２  端末機能処理部
１４３  テキストメモリ
１４４  描画処理部
１４５  ＯＣＳ関数ライブラリ
１４６  関数呼出部
１４７  イベント解析部
１４８  マウス入力変換部
１４９  キー操作入力変換部
１５０  送信ＦＩＦＯキュー
１６０  オペレーションパネル
１８０  グラフィック変換ライブラリ
１８１  表示画面管理部
【図１】
0003683863.tif 000002
【図２】
0003683863.tif 000003
【図３】
0003683863.tif 000004
【図４】
0003683863.tif 000005
【図５】
0003683863.tif 000006
【図６】
0003683863.tif 000007
【図７】
0003683863.tif 000008
【図８】
0003683863.tif 000009
【図９】
0003683863.tif 000010
【図１０】
0003683863.tif 000011
【図１１】
0003683863.tif 000012
【図１２】
0003683863.tif 000013
【図１３】
0003683863.tif 000014
【図１４】
0003683863.tif 000015
【図１５】
0003683863.tif 000016
【図１６】
0003683863.tif 000017