(57)【要約】【課題】特定の領域を拡大表示している最中に、表示領域外で表示情報が更新された場合、ユーザがその更新に気付かない場合がある。【解決手段】拡大機能表示制御部は、画面更新が発生したアプリケーション部から表示領域変更指示を受け取り、指示された倍率、位置で再描画を行うことにより、画面更新の種類に応じて適切な倍率や位置で再描画を行う。これにより、ユーザによる操作なしで、更新された情報を表示部に表示することができる。【選択図】図２
2019046201.tif 000002
【特許請求の範囲】
【請求項１】
表示部（１１９）に任意の倍率で拡大した画面を表示可能な表示制御部（２０１）と、表示制御部（２０１）を介して表示部（１１９）に表示する画像を生成し描画要求を行うアプリケーション部（４０１）を有する情報処理装置であって、
表示制御部（２０１）は、
通常表示領域（６０２）と拡張表示領域（６０３）を含む仮想表示領域（６０１）と、
アプリケーション部（４０１）で生成された画像を変倍し、拡張表示領域（６０３）に描画する拡大画面表示制御部（３０７）と、
入力部（１１８）により、拡大モードへの移行や拡大モードの解除を受け付けたことを検知する拡大モード変更検知部（２０２、３０２）と、
拡大モード変更検知部（２０２、３０２）により拡大モードへの移行を検知した場合、表示部（１１９）に表示する表示領域を拡大表示領域（６０３）に切り替え、拡大モードの解除を検知した場合、表示部（１１９）に表示する表示領域を通常表示領域（６０２）に切り替える切り替え部（２０４）と、
アプリケーション部（４０１）から、表示領域変更指示を受け付ける指示受信部（２０２）を有し、
指示受信部（２０２）が表示領域変更指示を受け付けると拡大モード移行済みか否か判断し（Ｓ２０３）、
拡大モード移行済みと判断した場合、拡大表示制御部（３０７）に対し表示領域変更指示を行い（Ｓ２０４）、
拡大画面表示制御部（３０７）は表示領域変更指示に基づきアプリケーション部（４０１）で生成された画像を変倍し、拡張表示領域（６０３）に描画する（Ｓ３０１〜Ｓ３０７）ことを特徴とする情報処理装置。
【請求項２】
指示受信部（２０２）が受信する表示領域変更指示には、表示倍率および表示位置情報を含む（Ｓ１０５〜Ｓ１０６）ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
指示受信部（２０２）が受信する表示領域変更指示で指定された表示倍率が１００％の場合は、切り替え部（２０４）は表示部（１１９）に表示する表示領域を通常表示領域（６０２）に切り替える（Ｓ３０２〜Ｓ３０３）ことを特徴とする請求項１又は２に記載の情報処理装置。
【請求項４】
拡大モードには画面全体を拡大する全体拡大と、画面内の一部の領域のみ拡大する部分拡大を含み、指示受信部（２０２）が受信する表示領域変更指示には、全体拡大から部分拡大への移行を含み、拡大画面表示制御部（３０７）は表示領域変更指示に基づきアプリケーション部（４０１）で生成された画像の一部を変倍し、拡張表示領域（６０３）に描画する（Ｓ５０３〜Ｓ５０８）ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の指示点を検出可能な入力デバイスを備えた情報処理装置及びその制御方法、並びにプログラムと記憶媒体に関する。
【背景技術】
【０００２】
近年、タッチパネルを備えたコンピュータ機器が広く普及しており、ユーザがタッチパネル上を指などでタッチした接触点を複数同時に検知したり、接触したまま移動した方向、距離を検知したりできるものがある。このようなコンピュータ機器では、２点同時に検知した接触点の２点間の距離の変化を計算し、距離の変化に応じて表示している画像の倍率を変更する処理が一般的になっている。
【０００３】
つまり、ユーザが人差し指と親指の２本の指を同時に使ってタッチパネルにタッチし、それら２本の指でタッチパネルの表面をつまむような動作を行って２点の距離を縮めると表示画像を縮小し、２本の指を広げるようにすると表示画像を拡大するものがある。
【０００４】
このような、２本の指により画面をつまむような操作を一般的にピンチ操作と呼ぶ。このピンチ操作は、柔軟性を持つ物理的な物体を扱うように、指でつまんで広げることでその物体を拡大し、指の間隔を縮めることで物体を縮小するような操作であるため、ユーザにとって非常に直感的でわかりやすいインターフェース操作である。また、ピンチ操作では、指でつまんだ２点の中心点を、拡大或いは縮小の中心点として扱うため、ユーザは画面上のどの部分の画像を拡大或いは縮小したいかを、簡単にかつ直感的に指定することができる。またピンチ操作を行うと、その指の移動による２点間の距離に合わせて、リアルタイムで画面の倍率を変更できる。このため、表示倍率を設定するための特別な設定画面へ切り替えることなく、ユーザが所望の倍率に素早く設定できるという利点もある。
【０００５】
特許文献１には、表示画面において複数点を指定して、画像の拡大／縮小を行う方法として、ユーザが２点を順番に指定し、その２点を通る矩形と相似な矩形画像に対して拡大或いは縮小を行うことが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平４−２２２０６３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、上記の方法によって特定の領域を拡大表示している最中に、表示領域外で文字や画像が更新された場合、ユーザがその更新に気付かない場合がある。また拡大表示中に画面遷移が発生、あるいは画面を覆うようなポップアップ画面が表示された場合、ユーザは確認すべき情報が表示されている位置に表示領域を移動するか、倍率を１００％に戻す必要がある。
【課題を解決するための手段】
【０００８】
表示部（１１９）に任意の倍率で拡大した画面を表示可能な表示制御部（２０１）と、表示制御部（２０１）を介して表示部（１１９）に表示する画像を生成し描画要求を行うアプリケーション部（４０１）を有する情報処理装置であって、
表示制御部（２０１）は、
通常表示領域（６０２）と拡張表示領域（６０３）を含む仮想表示領域（６０１）と、
アプリケーション部（４０１）で生成された画像を変倍し、拡張表示領域（６０３）に描画する拡大画面表示制御部（３０７）と、
入力部（１１８）により、拡大モードへの移行や拡大モードの解除を受け付けたことを検知する拡大モード変更検知部（２０２、３０２）と、
拡大モード変更検知部（２０２、３０２）により拡大モードへの移行を検知した場合、表示部（１１９）に表示する表示領域を拡大表示領域（６０３）に切り替え、拡大モードの解除を検知した場合、表示部（１１９）に表示する表示領域を通常表示領域（６０２）に切り替える切り替え部（２０４）と、
アプリケーション部（４０１）から、表示領域変更指示を受け付ける指示受信部（２０２）を有し、
指示受信部（２０２）が表示領域変更指示を受け付けると拡大モード移行済みか否か判断し、
拡大モード移行済みと判断した場合、拡大表示制御部（３０７）に対し表示領域変更指示を行い、
拡大画面表示制御部（３０７）は表示領域変更指示に基づきアプリケーション部（４０１）で生成された画像を変倍し、拡張表示領域（６０３）に描画することを特徴とする情報処理装置。
【発明の効果】
【０００９】
本発明により、特定の領域を拡大表示している最中に、表示領域外で文字や画像が更新された場合にも、適切な位置や倍率で再描画を行うことが可能である。よって、ユーザが倍率の変更や表示位置の移動を行うことなく、更新された情報を確認することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施形態における情報処理装置のハードウェア構成を示す図
【図２】本発明の実施形態における情報処理装置のソフトウェア構成を示す図
【図３】本発明の実施形態におけるディスプレイ領域の概念を示す図
【図４】本発明の実施形態における拡大鏡表示の画面を表す図
【図５】本発明の実施形態における全体拡大表示の画面を表す図
【図６】本発明の実施形態における表示領域変更指示送信処理の一例を示すフローチャート
【図７】本発明の実施形態におけるアプリケーション部が表示する画面例を示す図
【図８】本発明の実施形態における表示領域変更処理の一例を示すフローチャート
【図９】本発明の実施形態における拡大表示処理の一例を示すフローチャート
【図１０】本発明の実施形態における画面切り替え処理の一例を示すフローチャート
【図１１】本発明の実施形態における拡大表示描画処理の一例を示すフローチャート
【図１２】本発明の実施形態における画面キャプチャ処理の一例を示すフローチャート
【発明を実施するための形態】
【００１１】
以下、本発明の発明を実施するための最良の形態について図面を用いて説明する。
【実施例１】
【００１２】
＜ハードウェア構成＞
図１は、本発明の各実施形態を適用可能な情報処理装置１０１のハードウェア構成を示す図である。図１において、システムバス１１０に対してＣＰＵ１１１、ＲＡＭ１１２、ＲＯＭ１１３、入力制御部１１４、表示制御部１１５、外部メモリＩ／Ｆ１１６、通信Ｉ／Ｆコントローラ１１７が接続される。また、タッチパネル１１８、ディスプレイ１１９、外部メモリ１２０が接続される。システムバス１１０に接続される各部は、システムバス１１０を介して互いにデータのやりとりを行うことができるように構成されている。
【００１３】
ＲＯＭ１１３は、不揮発性のメモリであり、画像データやその他のデータ、ＣＰＵ１１１が動作するための各種プログラムなどが、それぞれ所定の領域に格納される。ＲＡＭ１１２は、揮発性のメモリであり、ＣＰＵ１１１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＣＰＵ１１１は、ＲＯＭ１１３や外部メモリ１２０に格納されるプログラムに従い、ＲＡＭ１１２をワークメモリとして用いて、この情報処理装置１０１の各部を制御する。
【００１４】
入力制御部１１４は、ユーザ操作を受け付け、操作に応じた制御信号を生成し、ＣＰＵ１１１に供給する。例えば、入力制御１１４は、ユーザ操作を受け付ける入力デバイスとして、キーボードといった文字情報入力デバイス（不図示）や、マウス（不図示）やタッチパネル１１８といったポインティングデバイスなどを有する。なお、タッチパネル１１８は、例えば平面的に構成された入力部に対して接触された位置に応じた座標情報が出力されるようにした入力デバイスである。ＣＰＵ１１１は、入力デバイスに対してなされたユーザ操作に応じて入力制御部１１４で生成され供給される制御信号に基づき、プログラムに従いこの情報処理装置１０１の各部を制御する。これにより、情報処理装置１０１に対し、ユーザ操作に応じた動作を行わせることができる。
【００１５】
表示制御部１１５は、ディスプレイ１１９に対して画像を表示させるための表示信号を出力する。ＣＰＵ１１１は、表示制御部１１５に対してプログラムに従い生成した表示制御信号を供給する。表示制御部１１５は、この表示制御信号に基づき、ＧＵＩ（Ｇｒａｐｈｉｃａｌ  Ｕｓｅｒ  Ｉｎｔｅｒｆａｃｅ）を構成するＧＵＩ画面をディスプレイ１１９に表示させる。
【００１６】
タッチパネル１１８はディスプレイ１１９と一体的に構成される。タッチパネル１１８は、光の透過率がディスプレイ１１９の表示を妨げないように構成され、ディスプレイ１１９の表示面の上層に取り付けられる。そして、ＣＰＵ１１１は、タッチパネル１１８における入力座標と、ディスプレイ１１９上の表示座標とを対応付ける。これにより、あたかもユーザがディスプレイ１１９上に表示された画面を直接的に操作可能であるかのようなＧＵＩを構成することができる。
【００１７】
外部メモリＩ／Ｆ１１６には、例えばハードディスクやフロッピーディスク、又はＣＤやＤＶＤ、メモリーカード等の外部メモリ１２０が装着可能になっている。ＣＰＵ１１１の制御に基づき、装着された外部メモリ１２０からのデータの読み出しや、当該外部メモリ１２０に対するデータの書き込みを行う。
【００１８】
通信Ｉ／Ｆコントローラ１１７は、ＣＰＵ１１１の制御に基づき、例えばＬＡＮやインターネット、有線、無線等の各種ネットワーク１０２に対する通信を行う。なお、ＣＰＵ１１１はタッチパネル１１８への例えば以下の操作や状態を検知できる。
【００１９】
・タッチパネルを指やペンで触れたこと（タッチダウン）
・タッチパネルを指やペンで触れている状態であること（タッチオン）
・タッチパネルを指やペンで触れたまま移動していること（ムーブ）
・タッチパネルへ触れていた指やペンを離したこと（タッチアップ）
・タッチパネルに何も触れていない状態（タッチオフ）
等である。
【００２０】
これらの操作や、タッチパネル上に指やペンが触れている位置座標はシステムバス１１０を通じてＣＰＵ１１１に通知され、ＣＰＵ１１１は通知された情報に基づいてタッチパネル上にどのような操作が行なわれたかを判定する。ムーブについてはタッチパネル上で移動する指やペンの移動方向についても、位置座標の変化に基づいて、タッチパネル上の垂直成分・水平成分毎に判定できる。
【００２１】
また、タッチパネル１１８は、タッチオンやムーブしている箇所を複数同時に検出することができる。タッチパネルを２本の指やペンで触れている状態から、その２点を結ぶ線分の方向に対して、２点間の距離を縮めたり伸ばしたりするように指を移動することがある。ユーザは２本の指を近づけたり離したりすることで指示するが、この操作がちょうど指で物をつまんだり、引き延ばす行為に似ていることから、ピンチ操作と呼ばれる。
【００２２】
通常、ピンチ操作は、ユーザの親指と人差し指を使って指示されることが多い。ＣＰＵ１１１は、２点同時にタッチオンされている状態から、それぞれもしくは一方の点がムーブしたときをピンチ操作が行われたと判断する。また、ＣＰＵ１１１は、ピンチ操作している２点を結ぶ線分の中心点座標、２点間の距離を計算することができる。タッチパネル１１８は、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のタッチパネルのうちいずれの方式のものを用いても良い。
【００２３】
＜ソフトウェア構成＞
図２は本発明の情報処理装置のソフトウェア構成の一例である。なお、本実施例は特に断らない限り、図示されたソフトウェアモジュール間のやりとりは、ＣＰＵ１１１がシステムバス１１０を介してＲＡＭ１１２、ＲＯＭ１１３、入力制御部１１４、表示制御部１１５を制御する。
【００２４】
本実施形態を説明するにあたり、拡大機能には２種類あり、画面全体をピンチ操作などで拡大縮小して表示可能な全体拡大機能と、虫眼鏡のように枠の中に元の画面の一部分を大きく映し出す拡大鏡機能である。以下の説明ではそれぞれ全体拡大、拡大鏡として説明を行う。
【００２５】
表示制御部１１５は、画面制御部２０１、拡大機能制御部３０１、アプリケーション部４０１、デバイス情報制御部５０１からなる。
【００２６】
画面制御部２０１は、画面情報制御部２０２、画面情報格納部２０３、画面表示部２０４、画面入力情報制御部２０５、画面入力情報通知部２０６からなる。
【００２７】
画面情報制御部２０２は、デバイス情報制御部５０２から拡大モードが切り替わった通知を受け、画面情報格納部２０３への情報格納を行う。また同時に、拡大機能情報制御部３０２に対して拡大モードを通知するとともに、拡大機能情報制御部３０２からの指示により、画面表示部２０４を介してディスプレイ領域の切り替えの指示を行う。画面情報格納部２０３には、画面情報制御部２０２から拡大モード情報が格納される。
【００２８】
画面表示部２０４は、画面情報制御部２０２から指示を受け、ディスプレイ表示領域の切り替えや、拡大機能表示制御部３０７およびアプリケーション部４０１から描画指示を受け、ディスプレイ１１９に画面を描画する。ディスプレイ領域の切り替えの詳細は後述する。
【００２９】
画面入力情報制御部２０５は、タッチパネル１１８から操作を入力制御部１１４が信号に変換した信号を受信および解析し、アプリケーションへ送信できるイベントの形式に変換し、画面入力情報通知部２０６に通知を指示する。画面入力情報通知部２０６は、画面入力情報制御部２０５から受け付けたイベントを各アプリケーションへ通知する。この際、画面情報格納部２０３に保持されている拡大モード情報を参照し、拡大機能が無効である場合はアプリケーション部４０１へイベントの通知を行う。拡大モードが有効である場合には、拡大機能入力制御部３０５に対してイベントの通知を行う。また、画面入力情報通知部２０６は、タッチパネルで何かしらの操作を受け付けたとして、タイマー制御部５０３に対してタイマーのリセットを指示する。
【００３０】
拡大機能制御部３０１は、拡大機能情報制御部３０２、拡大機能画面キャプチャ部３０３、拡大機能画面キャプチャ格納部３０４、拡大機能入力制御部３０５、拡大機能入力情報格納部３０６、拡大機能表示制御部３０７、拡大機能表情報格納部３０８からなる。
【００３１】
拡大機能情報制御部３０２は、画面情報制御部２０２からの通知を受け、拡大モードの情報を拡大機能表示制御部３０７に通知する。拡大機能画面キャプチャ部３０３は、拡大機能表示制御部３０７からの指示により、画面表示部２０４で管理されている画面をキャプチャし、拡大機能画面キャプチャ格納部３０４に画像を格納する。拡大機能画面キャプチャ格納部３０４は、拡大機能画面キャプチャ部３０３でキャプチャした画像を保持する。
【００３２】
拡大機能入力制御部３０５は、タッチイベントによる入力情報を受け付け、その入力情報を拡大機能入力情報格納部３０６に格納するとともに、拡大機能表示制御部３０７に通知する。拡大機能入力情報格納部３０６は、拡大機能入力制御部３０５で受け付けたタッチイベント情報が格納される。具体的には、前述したタッチダウン、タッチアップ、ムーブ等のイベント種類、および座標情報などを含み、１点だけでなく複数のタッチイベント情報が１つのイベント情報として通知される場合もある。
【００３３】
拡大機能表示制御部３０７には大きく３つの役割がある。まず１つ目は、拡大機能表示制御部３０７は、拡大機能入力制御部３０５からの通知を受ける。そして、拡大機能入力情報格納部３０６に格納されている、イベントの種類と座標情報、および拡大機能表示情報格納部３０８に格納されている、拡大モード、表示倍率、表示位置座標情報等を用いて、新たな表示倍率、または新たな表示位置座標情報等を計算する。そして、拡大機能表示情報格納部３０８の情報を更新する。
【００３４】
２つ目は、拡大機能表示制御部３０７は、常に拡大機能表示情報格納部３０８を監視し、拡大モードが有効であれば、拡大機能画面キャプチャ部３０３に対して画面キャプチャを指示し、画面キャプチャ格納部３０４に格納されている画面キャプチャを取得する。そして、取得した画面キャプチャを拡大表示情報格納部３０８に格納されている拡大モードと表示倍率に基づいて拡大縮小を行い、表示位置座標情報に従って、画面表示部２０４に描画要求を行う。拡大モードが無効であれば、これらの画面表示制御は行わない。
【００３５】
３つ目は、拡大機能表示制御部３０７は、拡大機能情報制御部３０２から拡大モードの通知を受け、無効になったと判断した場合には通常表示領域に変更する。また、拡大モードが有効になったと判断した場合には、拡大機能情報制御部３０２および画面情報制御部２０２を介して、ディスプレイ表示領域の切り替えを指示する。通常表示領域、拡張表示領域については後述する。拡大機能表示情報格納部３０８は、拡大モード、表示倍率、表示位置座標情報などが格納される。
【００３６】
アプリケーション部４０１は、デバイス設定アプリケーション４０２、一般アプリケーション４０３等からなる。
【００３７】
デバイス設定アプリケーション４０２は、主に管理者がデバイス本体の設定値をそれぞれの使用環境に合わせて設定可能なアプリケーションであり、設定値はデバイス情報格納部５０４に格納される。例えば、言語設定、省電力設定、ネットワーク設定、拡大機能設定などが含まれ、この設定に合わせてデバイスの動作が決定される。つまり本実施形態においては、拡大機能設定によって拡大モードを設定することでデバイス情報格納部５０４の設定値を更新し、拡大機能が使用可能となる。一般アプリケーション４０３は、一般のユーザが使うアプリケーションであり、例えばコピー、スキャンして送信、スキャンして保存、プリントなど、様々なアプリケーションが存在する。これらのアプリケーション部４０１が、画面表示部２０４に画面描画要求をすることで、実際のディスプレイ１１９に画面が表示される。
【００３８】
デバイス情報制御部５０１は、デバイス情報制御部５０２、タイマー制御部５０３、デバイス情報格納部５０４、タイマー情報格納部５０５からなる。
【００３９】
デバイス情報制御部５０２は、常にデバイス情報格納部５０４を監視しており、設定値が更新されたことを検知し、画面情報制御部２０２に更新された設定値を通知する。また、タイマー制御部５０３からの通知要求を受け、画面情報制御部２０２に通知する。タイマー制御部５０３は、デバイスが一定時間操作されなかった場合に移行する省電力モードや、ユーザが途中まで操作していた画面をデフォルトの画面に戻すオートクリア等の管理を行う。具体的には、タイマー制御部５０３は自身で時間をカウントアップしておき、デバイス情報格納部５０４に格納されている省電力モードへの移行時間やオートクリアする時間と比較を行う。比較の結果、それらの時間を過ぎた場合には、デバイス情報制御部５０２に対して、省電力モードやオートクリアの要求を出す。また、画面入力情報通知部２０６からタイマーのリセット要求を受けつけた場合には、自身のタイマーをリセットすることで、省電力モードやオートクリア等の処理を遅延させる。
【００４０】
＜仮想ディスプレイ領域の拡張と表示領域の切り替え＞
図３は、最終的な画面の転送先であるハードウェアのディスプレイ１１９と、画面がディスプレイ１１９に転送される直前の仮想的なディスプレイ領域６０１を表している。実際には仮想ディスプレイ領域６０１のサイズ（ここでは横幅２０４８ｐｘ×高さ６００ｐｘ）うち、ハードウェアであるディスプレイ１１９のサイズ（ここでは横幅１０２４ｐｘ×高さ６００ｐｘ）だけが表示可能である。
【００４１】
仮想ディスプレイ領域６０１は、通常表示領域６０２と拡張表示領域６０３の横幅が２０４８ｐｘ、高さが６００ｐｘで構成される。通常表示領域６０２には、アプリケーション部４０１が生成した画面と描画座標情報を用いて、画面表示部２０４が通常領域開始座標６０４のＸ座標０、Ｙ座標０を始点として、仮想ディスプレイ領域６０１に描画を行う。拡張表示領域６０３には、拡大機能表示制御部３０７が生成した画面と描画座標情報を用いて、画面表示部２０４が拡張領域開始座標６０４のＸ座標１０２４、Ｙ座標０を始点として、仮想ディスプレイ領域６０１に描画を行う。
【００４２】
画面表示部２０４は、画面情報制御部２０２からの指示により、通常表示領域６０２または拡張領域６０３のどちらかの領域をディスプレイ１１９に転送する。本図３では拡張領域６０３をディスプレイ１１９に転送していることを表している。
【００４３】
＜拡大鏡の表示と表示位置座標情報＞
図４は拡張表示領域６０３に拡大鏡を表示しているときの図である。図４の７０５は拡大鏡を表しており、座標７０１は拡大鏡７０５の中心を表す座標である。この中心座標７０１（ｘ１、ｙ１）は拡張表示領域６０３の左上の座標を（１０２４、０）とした場合、その座標を含めた座標となる。この拡大鏡内に表示される拡大画像は拡大鏡中心座標７０１の裏にある１００％の状態の画像の同座標付近の画像を拡大し、その一部をクリップして表示する。この拡大鏡７０５を表示している状態では、中心座標の他に拡大鏡の横幅７０７、高さ７０８を表示位置座標情報として、拡大機能表示情報格納部３０８に拡大鏡の情報として保持する。
【００４４】
次に、図４では拡大鏡を７０５から７０６の位置に移動させるために、移動開始点７０３（ｘｘ１、ｙｙ１）でタッチダウンして、指をつけたままムーブして移動終了点７０４（ｘｘ２、ｙｙ２）でタッチアップしていることを表している。この際に拡大鏡移動後の中心座標７０２を求めることで、拡大鏡７０６ではその中心座標の裏にある拡大前の画像を拡大しその一部を拡大鏡内に表示する。例えば移動後の中心座標７０２は以下のように求めることができ、新たに求めた表示位置座標情報を拡大機能表示情報格納部３０８に格納される。
【００４５】
ｘ２＝ｘ１＋（ｘｘ２−ｘｘ１）
ｙ２＝ｙ１＋（ｙｙ２−ｙｙ１）
また、図４では開始と終了の拡大鏡のみ表しているが、実際には移動開始点と終了点の間のムーブイベント操作中にも複数の移動点が存在し、その際には同様の座標計算、および拡大鏡の表示を行う。なお座標位置情報の計算および拡大鏡の表示は、拡大機能表示制御部３０７が行う。
【００４６】
＜全体拡大の表示と表示位置座標情報＞
図５は拡張表示領域６０３に全体拡大を表示しているときの図である。図５の拡大画像８０１は、特定の倍率に拡大された画像であり、そのうちディスプレイ領域に収まる部分だけをクリップして、拡張表示領域６０３に表示している。
【００４７】
ここで拡大画像８０１の中のディスプレイ領域に収まる部分の原点８０８（ｘ００、ｙ００）を、拡張表示領域６０３の左上の座標（１０２４、０）を考慮した座標で表す。例えば、ピンチ操作による拡大後の画像の（５０、３０）の位置からから拡張表示領域６０３の横幅１０２４ｐｘ、高さ６００ｐｘをクリップして拡張表示領域６０３に表示している場合、拡大画像の原点８０９の座標は（９７４、−３０）となる。
【００４８】
次に、ピンチ操作によって画像を拡大したときの拡大率、および拡大後の拡大画像８０１の原点を求める処理について説明する。ピンチ座標８０２、８０３、８０４、８０５は指で２点をタッチして、１点目をピンチ開始座標８０２からピンチ終了座標８０３に、２点目をピンチ開始座標８０４からピンチ終了座標８０５に移動したときの座標を表している。
【００４９】
このピンチ操作ではピンチ開始座標の２点の距離に比べて、ピンチ終了座標の２点の距離の方が大きいことから、画面を拡大する操作と考えられる。その際の新しい拡大率をＲ２とすると、ピンチ操作の座標による２点の距離Ｄ１、Ｄ２および、現在の拡大率Ｒ１を元に、例えば以下のような式で求めることができ、拡大機能表示制御部３０７はこの新しい拡大率（Ｒ２）で画像を拡大する。
【００５０】
Ｄ１＝√（（ｘｘ２１−ｘｘ１１）２＋（ｙｙ２１−ｙｙ１１）２）
Ｄ２＝√（（ｘｘ２２−ｘｘ１２）２＋（ｙｙ２２−ｙｙ１２）２）
Ｒ２＝Ｒ１×Ｄ２／Ｄ１
次にこの拡大率から拡大後の原点８０９（ｘ０１、ｙ０１）の座標を求める。ここでは拡大するためのピンチ操作による２点の中心座標を起点に画像を大きくする場合の説明を行う。ここで、前述したピンチ座標の操作において、２点の中心点８０６（ｘ１、ｙ１）、８０７（ｘ２、ｙ２）は同位置であったと仮定すると、拡大画像の原点８０９の座標は以下のように求めることができる。
【００５１】
ｘ０１＝ｘ００−（ｘ１×Ｒ２−ｘ１×Ｒ１）
ｙ０１＝ｙ００−（ｙ１×Ｒ２−ｙ１×Ｒ１）
しかしながら、実際には常に中心点が一致するということは稀であり、微妙にずれが生じるため、その中心点の座標の前後の移動量を計算し、上記式に加算することで求めることができる。まず、ピンチ操作を行う際の、ピンチ開始時の中心点８０６とピンチ終了時の中心点８０７それぞれの２点の中心点座標は以下のようになる。
【００５２】
ｘ１＝（ｘｘ１１＋ｘｘ２１）／２
ｙ１＝（ｙｙ１１＋ｙｙ２１）／２
ｘ２＝（ｘｘ１２＋ｘｘ２２）／２
ｙ２＝（ｙｙ１２＋ｙｙ２２）／２
そしてピンチ操作後の中心点の移動量Ｘｄ、Ｙｄは以下のように求めることができる。
【００５３】
Ｘｄ＝ｘ２−ｘ１
Ｙｄ＝ｙ２−ｙ１
これにより、拡大画像８０１の新しい原点８０９（ｘ０１、ｘ０１）は次の式によって求めることができる。
【００５４】
ｘ０１＝ｘ００−（ｘ１×Ｒ２−ｘ１×Ｒ１）＋Ｘｄ
ｙ０１＝ｙ００−（ｙ１×Ｒ２−ｙ１×Ｒ１）＋Ｙｄ
また、図５ではピンチ操作を行う際の中心点として、８０６と８０７を表しているが、１点のタッチによるムーブ操作としても同様に考えることができる。例えば、移動開始点８０６でタッチダウンして、移動終了点８０７でタッチアップしたとすると、その間の移動量は前述した通りの式で求めることができ、拡大画像の原点を再計算することで、拡張表示領域６０３に表示する領域を決定することができる。
【００５５】
また、図５ではそれぞれピンチ操作による開始と終了、ムーブ操作による開始と終了のみ表しているが、実際には移動開始点と終了点の間のムーブイベント操作中にも複数の移動点が存在し、その際には同様の座標計算、および全体拡大の表示を行う。
【００５６】
なお座標位置情報の計算および全体拡大の表示は、拡大機能表示制御部３０７が行い、拡大率、拡大画像の原点座標、拡大画像の横幅、拡大画像の高さ等を拡大機能表示情報格納部３０８に保持する。
【００５７】
＜表示領域変更指示の送信＞
図６は本発明の実施形態に係る表示領域変更指示の画面制御部への送信処理を示すフローチャートであり、情報処理装置１０１のＣＰＵ１１１において実行される。Ｓ１０１からＳ１０８は各ステップを示す。
【００５８】
まず、ステップＳ１０１で、アプリケーション部４０１は画面更新を検知する。画面更新の検知は、タッチパネル１１８からの入力や情報処理装置１０１の状態変化などによりアプリケーション部４０１がディスプレイ１１９に表示されている文字列やアイコンの更新や画面遷移が必要であると判断した際に発生する。図７（ａ）に更新前の画面の例を示す。ステップＳ１０２で、アプリケーション部４０１は画面更新が図７（ｂ）に示すようなサービスマンコールエラー表示であるか判断する。ステップＳ１０２でサービスマンコールエラー表示と判断した場合は、アプリケーション部４０１は画面情報制御部２０２に１００％表示への表示変更指示を送信し（ステップＳ１０３）、処理を終了する。
【００５９】
ステップＳ１０２でサービスマンコールエラー表示ではないと判断した場合、アプリケーション部４０１は画面更新が図７（ｃ）に示すようなエラーポップアップ表示であるか判断する（ステップＳ１０４）。ステップＳ１０４でエラーポップアップ表示と判断した場合、アプリケーション部４０１は表示するエラーポップアップのサイズと表示位置から、拡大表示した際の倍率と表示位置（座標）を計算する（ステップＳ１０５）。ステップＳ１０６で、アプリケーション部４０１は画面情報制御部２０２にステップＳ１０５で計算した倍率と座標での表示変更指示を送信し、処理を終了する。
【００６０】
ステップＳ１０４でエラーポップアップ表示ではないと判断した場合、アプリケーション部４０１はステップＳ１０７で画面更新が図７（ｄ）に示すようなソフトキーボード表示であるか判断する。ステップＳ１０７でソフトキーボード表示でないと判断した場合、処理を終了する。ステップＳ１０７でソフトキーボード表示であると判断した場合、アプリケーション部４０１は画面情報制御部２０２に拡大鏡表示への表示変更指示を送信し（ステップＳ１０８）、処理を終了する。
【００６１】
＜表示領域変更処理＞
図８は本発明の実施形態に係るアプリケーション部４０１から受信した表示領域の変更処理を示すフローチャートであり、情報処理装置１０１のＣＵ１１１において実行される。Ｓ２０１からＳ２０８は各ステップを示す。
【００６２】
まず、ステップＳ２０１で画面情報制御部２０２はアプリケーション部４０１から表示領域変更指示を受信する。ステップＳ２０２で画面情報制御部２０２は画面情報格納部２０３に格納されている拡大モードを取得する。ステップＳ２０３で画面情報制御部２０２は拡大モードが有効か無効かを判断し、無効と判断した場合は処理を終了する。ステップＳ２０３で拡大モードが有効と判断した場合、画面情報制御部２０２は拡大機能情報制御部３０２に表示領域変更指示を送信する（ステップＳ２０４）。
【００６３】
ステップＳ２０５で拡大機能情報制御部３０２は表示領域変更指示を受信し、拡大機能表示制御部３０７に通知する（ステップＳ２０６）。ステップＳ２０７で拡大機能表示制御部は受信した表示領域へ脳指示から取得した表示倍率、表示位置座標、拡大モードを含む表示情報を拡大機能表示情報格納部３０８に格納する。ステップＳ２０８で拡大機能表示制御部３０７は、図９に示す拡大表示処理を行い、処理を終了する。
【００６４】
＜拡大表示処理＞
図９は本発明の実施形態に係る拡大表示処理を示すフローチャートであり、情報処理装置１０１のＣＰＵ１１１において実行される。Ｓ３０１からＳ３０７は各ステップを示す。
【００６５】
まず、ステップＳ３０１で拡大機能表示制御部３０７は、拡大機能情報制御部３０２から変更指示情報を受け取る。ステップＳ３０２で拡大機能表示制御部３０７は、変更指示が１００％表示への変更指示か判断する。ステップＳ３０２で１００％表示への変更指示であると判断した場合、拡大機能表示制御部３０７はステップＳ３０３で図１０に示す画面切り替え処理を行い、処理を終了する。
【００６６】
ステップＳ３０２で１００％表示への変更指示ではないと判断した場合、拡大機能表示制御部３０７は変更指示が倍率・座標指定の変更指示か判断する（ステップＳ３０５）。ステップＳ３０５で倍率・座標指定の変更指示と判断した場合、ステップＳ３０５で拡大機能表示制御部３０７は図１０に示す画面切り替え処理を行い、処理を終了する。ステップＳ３０４で倍率・座標指定の変更指示ではないと判断した場合、拡大機能表示制御部３０７は変更指示が拡大鏡表示への変更指示か判断し（ステップＳ３０６）、拡大鏡表示への変更指示ではないと判断した場合、処理を終了する。ステップＳ３０６で拡大鏡表示への変更指示であると判断した場合、拡大機能表示制御部３０７はステップＳ３０７で図１０に示す画面切り替え処理を行い、処理を終了する。
【００６７】
＜画面切り替え処理＞
図１０は本発明の実施形態に係る通常表示領域と拡大表示領域の画面切り替え処理を示すフローチャートであり、情報処理装置１０１のＣＰＵ１１１において実行される。Ｓ４０１からＳ４０９は各ステップを示す。
【００６８】
まず、ステップＳ４０１で拡大機能表示制御部３０７は通常表示領域への切り替えか否かを判断し、通常表示領域への切り替えの場合は拡大機能情報制御部３０２を介して画面情報制御部２０２に通常表示領域への画面切り替えを要求する（ステップＳ４０２）。ステップＳ４０１で通常表示領域への切り替えではないと判断した場合、拡大機能表示制御部３０７は拡大機能情報制御部３０２を介して画面情報制御部２０２に拡張表示領域への画面切り替えを要求する（ステップＳ４０３）。
【００６９】
画面情報制御部２０２は拡大機能情報制御部３０２から画面切り替え要求を受信する（ステップＳ４０４）。ステップＳ４０５で画面情報制御部２０２は、受信した画面切り替え要求が通常表示領域か否か判断し、通常表示領域と判断した場合、画面表示部２０４を介してディスプレイ１１９に通常表示領域を表示する（ステップＳ４０６）。ステップＳ４０５で受信した画面切り替え要求が通常表示領域ではないと判断した場合、画面情報制御部２０２は画面表示部２０４を介してディスプレイ１１９に拡張表示領域を表示する（ステップＳ４０７）。
【００７０】
ステップＳ３４０８で画面情報制御部２０２は拡大情報制御部３０２を介して拡大機能表示制御部３０７に画面切り替え完了通知を送信する。ステップＳ４０９で拡大機能表示制御部３０７は画面切り替え完了通知を受信し、処理を終了する。
【００７１】
＜拡大表示描画処理＞
図１１は本発明の実施形態に係る拡大表示描画処理を示すフローチャートであり、情報処理装置１０１のＣＰＵ１１１において実行される。Ｓ５０１からＳ５０８は各ステップを示す。
【００７２】
まず、ステップＳ５０１で拡大機能表示制御部３０７は、拡大機能画面キャプチャ格納部３０４に格納されている画面キャプチャを取得する。画面キャプチャ処理については図１２で説明する。ステップＳ５０２で拡大機能表示制御部３０７は、拡大機能表示情報格納部３０８に格納されている拡大モード、表示倍率、表示位置座標情報を取得する。ステップＳ５０３で拡大機能表示制御部３０７は、ステップＳ４０１で取得した画面キャプチャをステップＳ５０２で取得した表示倍率に拡大する。拡大機能表示制御部３０７はステップＳ５０２で取得した拡大モードが全体拡大か判断する（ステップＳ５０４）。ステップＳ５０４で全体拡大であると判断した場合、拡大機能表示制御部３０７はステップＳ４０３で拡大した画面キャプチャを、表示位置座標情報を元にディスプレイの大きさにクリップし（ステップＳ５０５）、ステップＳ５０８以降の処理を行う。
【００７３】
ステップＳ５０４で全体拡大ではない（拡大鏡である）と判断した場合、拡大機能表示制御部３０７はステップＳ４０３で拡大した画面キャプチャを、表示位置座標情報を元に拡大鏡の大きさにクリップする（ステップＳ５０６）。拡大機能表示制御部３０７は、拡大していない画面キャプチャに、ステップＳ５０６でクリップした拡大画面キャプチャを表示位置座標情報で示す位置に合成して貼り付けを行い（ステップＳ５０７）、ステップＳ５０８以降の処理を行う。ステップＳ５０８で拡大機能表示制御部３０７は、画面表示部２０４を介して画面の描画を行い、処理を終了する。
【００７４】
＜画面キャプチャ処理＞
図１２は本発明の実施形態に係る画面キャプチャ処理を示すフローチャートであり、情報処理装置１０１のＣＰＵ１１１において実行される。Ｓ６０１からＳ６０４は各ステップを示す。本処理は、デバイスが起動されると処理を開始し一定の時間で常に処理を行い、デバイスが終了すると同時に処理が停止する。
【００７５】
まずステップＳ６０１で拡大機能表示制御部３０７は、拡大機能表示情報格納部３０８に格納されている拡大モードを取得する。ステップＳ６０２で拡大機能表示制御部３０７は、拡大モードが無効かを判断し、無効だと判断した場合にはステップＳ６０１の処理に戻る。ステップＳ６０２で拡大モードが無効ではないと判断した場合には、拡大機能表示制御部３０７は、通常表示領域の画面キャプチャを取得し拡大機能画面キャプチャ格納部３０４に画像を格納する（ステップＳ６０３）。ステッＳ６０４で拡大機能表示制御部３０７は図７で説明した拡大表示描画処理を行い、処理を終了する。
【００７６】
以上のように、特定の領域を拡大表示している最中に、表示領域外で文字や画像が更新された場合にも、適切な位置や倍率で再描画を行うことが可能である。よって、ユーザが倍率の変更や表示位置の移動を行うことなく、更新された情報を確認することができる。
【符号の説明】
【００７７】
１０１：情報処理装置
１１１：ＣＰＵ
１１８：タッチパネル
１１９：ディスプレイ
３０１：拡大機能制御部
３０５：拡大機能入力制御部
３０７：拡大機能表示制御部
４０１：アプリケーション部ｂ
【図１】
2019046201.tif 000003
【図２】
2019046201.tif 000004
【図３】
2019046201.tif 000005
【図４】
2019046201.tif 000006
【図５】
2019046201.tif 000007
【図６】
2019046201.tif 000008
【図７】
2019046201.tif 000009
【図８】
2019046201.tif 000010
【図９】
2019046201.tif 000011
【図１０】
2019046201.tif 000012
【図１１】
2019046201.tif 000013
【図１２】
2019046201.tif 000014