JP2018124631A - 情報処理装置、制御方法、及びプログラム - Google Patents
情報処理装置、制御方法、及びプログラム Download PDFInfo
- Publication number
- JP2018124631A JP2018124631A JP2017014236A JP2017014236A JP2018124631A JP 2018124631 A JP2018124631 A JP 2018124631A JP 2017014236 A JP2017014236 A JP 2017014236A JP 2017014236 A JP2017014236 A JP 2017014236A JP 2018124631 A JP2018124631 A JP 2018124631A
- Authority
- JP
- Japan
- Prior art keywords
- image
- enlarged
- control unit
- display
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Abstract
【課題】OSやウィンドウシステムのカスタマイズを行うことなく画面の拡大表示を実現し、その上で操作を行うことが可能な情報処理装置を提供する。【解決手段】拡大機能が有効な場合に、拡大制御部301は、アプリケーション部401が生成する画像をキャプチャし、拡大機能において表示する画像を描画する処理を一定の時間間隔で繰り返し行う。また、拡大制御部301は、拡大機能を有効にする通知に含まれる拡大率及び座標に基づき、キャプチャした画像を拡大し、ディスプレイ119に表示されるように制御する。拡大機能が有効な場合に、ユーザがタッチパネル118を操作すると、拡大制御部301は、ユーザのタッチ位置を表す座標を、アプリケーション部401が生成した画像の座標に変換し、アプリケーション部401に送信する。アプリケーション部401は、変換された座標に基づき、該座標と関連付けられた処理を実行する。【選択図】図2
Description
本発明は、情報処理装置、制御方法、及びプログラムに関する。
表示装置を備えた情報処理装置には、表示装置の表示画面に表示する画像を自由な拡大率で拡大表示する拡大機能を有するものがある。この拡大機能は、写真や文字等のAP(アプリケーションソフトウェア)に依存するコンテンツの拡大ではなく、表示画面に表示された全体画像を拡大するものである。このため、拡大機能を備える情報処理装置は、アイコン等のオブジェクトを含む、表示画面に表示される全ての画像をユーザに最適な大きさで表示することが可能となり、ユーザのアクセシビリティが向上する。例えば、視力の弱いユーザであっても操作に支障をきたすことが少なくなりうる。
特許文献1は、ユーザが実際に操作している操作画面をリアルタイムにキャプチャし、キャプチャした画像を画面に表示する情報処理装置を開示している。また、特許文献1には、キャプチャ画像上の不要な領域を削除することにより特定の領域へズーミングが行われることが記載されている。
表示画面を常に更新しながら全体画像を拡大していく必要がある場合に、拡大機能は、OS(オペレーティングシステム)やウィンドウシステム等のシステムレベルで組み込まれる。すなわち、拡大機能を有するOSやウィンドウシステムを採用していない情報処理装置では、表示画面に表示される全体画像の拡大表示を行うことができない。また、OSやウィンドウシステムのカスタマイズはライセンス等の問題があるために、OSやウィンドウシステムに後付けで拡大機能を付加することは困難である。
さらに、APの実行画面を拡大機能により拡大して表示している場合、拡大された画像への操作によりAPを操作可能な情報処理装置は、現在市場に提供されていない。特許文献1は、操作ガイドに表示する画像をキャプチャする方法を開示しているが、キャプチャした画像の上でユーザが操作を行うことは想定されていない。
本発明は、OSやウィンドウシステムのカスタマイズを行うことなく画面の拡大表示を実現し、その上で操作を行うことが可能な情報処理装置を提供することを目的とする。
本発明の一実施形態の情報処理装置は、拡大表示を有効にする通知を受け付ける受け付け手段と、受け付け手段が通知を受け付けた場合に、アプリケーションが処理の結果として生成した画像を所定の時間間隔で繰り返しキャプチャするキャプチャ手段と、拡大表示を有効にする通知に含まれる拡大率、及び座標情報に基づき、直近にキャプチャされたアプリケーションが生成した画像を拡大し、該拡大した画像を表示するように制御する制御手段と、拡大した画像が表示されている際に、ユーザが該拡大した画像を操作した位置の座標情報を、アプリケーションが生成した画像の座標情報に変換する変換手段と、を備え、アプリケーションは、変換された座標情報に基づき、該座標情報と関連付けられた処理を実行する。
本発明の情報処理装置によれば、OSやウィンドウシステムのカスタマイズを行うことなく画面の拡大表示を実現し、その上で操作を行うことが可能となる。
(構成)
図1は、本発明の一実施形態に係る情報処理装置のハードウェア構成例を示す図である。情報処理装置101は、画像形成装置やスマートフォンのようにディスプレイ(表示装置)119を備えるコンピュータである。情報処理装置101は、OSやウィンドウシステム等のシステムレベルで拡大機能を有していないものとする。情報処理装置101は、ディスプレイ119の他に、制御部110、タッチパネル118、及び外部メモリ120を備える。
図1は、本発明の一実施形態に係る情報処理装置のハードウェア構成例を示す図である。情報処理装置101は、画像形成装置やスマートフォンのようにディスプレイ(表示装置)119を備えるコンピュータである。情報処理装置101は、OSやウィンドウシステム等のシステムレベルで拡大機能を有していないものとする。情報処理装置101は、ディスプレイ119の他に、制御部110、タッチパネル118、及び外部メモリ120を備える。
制御部110は、CPU(Central Processing Unit)111、RAM(Random Access Memory)112、及びROM(ReadOnly Memory)113を備え、情報処理装置101全体の動作を制御する。制御部110は、タッチパネル118に接続される入力制御部114、ディスプレイ119に接続される表示制御部115、及び外部メモリ120に接続される外部メモリI/F(インタフェース)116を備える。
また制御部110は、LAN(Local Area Network)等のネットワーク102との通信制御を行う通信I/Fコントローラ117を備える。CPU111、RAM112、ROM113、入力制御部114、表示制御部115、外部メモリI/F116、及び通信I/Fコントローラ117は、システムバスBを介して相互に通信可能に接続される。
CPU111は、ROM113や外部メモリ120に格納されるコンピュータプログラムを読み出し、RAM112をワークエリアとして用いて読み出したコンピュータプログラムを実行することで、情報処理装置101の各部の動作を制御する。ROM113は、不揮発性メモリであり、コンピュータプログラムの他に、処理に必要な各種のデータを保持する記憶媒体である。RAM112は、揮発性メモリであり、処理を行う際の一時記憶領域を提供する。
入力制御部114は、入力デバイスを用いたユーザの操作を受け付けて、受け付けた操作に応じた制御信号をCPU111に送信する。本実施形態では、図1に示すように、入力デバイスとしてタッチパネル118を備えているが、これに限られるものではない。例えば、入力デバイスとして、タッチパネル118の他に、キーボード等の文字入力デバイスやマウス等のポインティングデバイスを備えていてもよい。タッチパネル118は、ユーザの指やスタイラスペン等によりタッチされた位置を検出するポインティングデバイスである。
タッチパネル118は、抵抗膜方式や静電容量方式、表面弾性波方式、赤外線方式、電磁誘導方式、画像認識方式、光センサ方式等、様々な方式のものを用いることができる。入力制御部114は、タッチパネル118が検出した位置に応じた制御信号をCPU111に送信する。CPU111は、該制御信号に基づいて処理を実行する。CPU111は、これにより情報処理装置101に対するユーザの操作に応じた処理を行う。
表示制御部115は、CPU111の制御に基づき、ディスプレイ119に画像を表示させる。表示制御部115は、例えば、処理に関連付けられたオブジェクトで構成される画像をディスプレイ119に表示させる。本実施形態の表示制御部115は、ディスプレイ119に拡大率100%の画像を表示させる他に、この画像を所定の拡大率で拡大した拡大画像を表示させることも可能である。
ディスプレイ119の表示画面には、タッチパネル118が一体になるように設けられている。タッチパネル118は、ディスプレイ119の表示を妨げないような透過率で構成される。CPU111は、ディスプレイ119に表示されるオブジェクトの位置と、タッチパネル118で検出されたタッチ位置とから、ユーザが操作(タッチ)したオブジェクトを特定し、該オブジェクトに関連付けられた処理を実行する。このようにタッチパネル118及びディスプレイ119により、ユーザがディスプレイ119に表示された画像を直接的に操作して入力を行うような操作画面、すなわちGUI(Graphical User Interface)を構成することができる。
外部メモリI/F116には、ハードディスク、フレキシブルディスク、CD(Compact Disk)、DVD(Digital Versatile Disc)、メモリカード等の外部メモリ120が装着可能である。外部メモリI/F116は、CPU111の制御に基づき、装着された外部メモリ120からのデータの読み出しや、当該外部メモリ120へのデータの書き込みを行う。通信I/Fコントローラ117は、ネットワーク102を介して、ネットワーク102に接続された他の装置との通信を制御する。
なお、CPU111は、タッチパネル118への次のような操作や状態を検知することができる。タッチダウン:タッチパネル118を指等の指示体が触れたこと(タッチ開始)ムーブ:タッチパネル118を指示体が触れたままの状態(タッチ継続中)。タッチアップ:タッチパネル118に触れていた指示体が離れたこと(タッチ終了)。
これらの操作または状態や、タッチパネル118上でユーザがタッチする位置を表す位置座標等の情報は、入力制御部114及びシステムバスBを介してCPU111に通知される。CPU111は、通知された情報に基づいてタッチパネル118上でどのような操作が行なわれたかを判定する。CPU111は、ムーブ時の指やスタイラスペンの移動方向についても、位置座標の変化に基づいて、タッチパネル118上の垂直成分・水平成分毎に判定する。
また、上述した以外にも、CPU111は、タッチパネル118への次のような操作や状態を検知することができる。例えば、タッチパネル118上をタッチダウンから一定のムーブを経てタッチアップをしたとき、ストロークを描いたこととする。そして、素早くストロークを描く操作をフリックと呼ぶ。フリックは、タッチパネル上に指を触れたままある程度の距離だけ素早く動かして、そのまま離すといった操作であり、言い換えればタッチパネル上を指ではじくように素早くなぞる操作である。
所定距離以上を、所定速度以上でムーブしたことが検知され、そのままタッチアップが検知されるとフリックが行われたものと判定される。また、所定距離以上を、所定速度未満でムーブしたことが検出された場合は、ドラッグが行われたものと判定されるものとする。また、画面上の任意の1点を軽く叩く(プレス&リリース)操作を「シングルタッチ」と呼び、画面上の任意の1点を2回連続で軽く叩く(プレス&リリースを2セット繰り返す)操作を「ダブルタッチ」と呼ぶ。
また、タッチパネル118は、タッチオンやムーブしている位置を複数同時に検出するマルチタッチにも対応している。タッチパネルを2本の指やスタイラスペンで触れている状態から、その2点を結ぶ線分の方向に対して、2点間の距離を縮めたり伸ばしたりするように指を移動することがある。ユーザが2本の指を近づけたり離したりする操作は、ちょうど指で物をつまんだり、引き延ばす行為に似ていることから「ピンチ操作」と呼ばれる。通常、ピンチ操作は、ユーザの親指と人差し指を使って行われることが多い。
CPU111は、2点同時にタッチされている状態から、それぞれもしくは一方のタッチ位置が移動したとき、すなわち2点のムーブが同時に検出され、そのムーブの位置座標が変化した場合、ピンチ操作が行われたと判断する。また、CPU111は、ピンチ操作している2点を結ぶ線分の中心点座標、2点間の距離を算出することができる。CPU111は2点間の距離が大きくなった場合、ピンチアウト操作が行われたと判断し、2点間の距離が小さくなった場合、ピンチイン操作が行われたと判断する。
図2は、情報処理装置の制御部の機能構成例を示す図である。詳細には、情報処理装置101の制御部110が実現する表示制御のための機能構成例を示す。各機能ブロックは、CPU111がROM113や外部メモリ120からコンピュータプログラムを読み出して実行することで形成されるが、ハードウェアとして構成されてもよい。情報処理装置101は、画面制御部201、拡大制御部301、アプリケーション部401、及びデバイス制御部501を備える。
これら各機能ブロックにより、情報処理装置101は、ディスプレイ119に表示されている画像を拡大する拡大機能を実現する。情報処理装置101が有する拡大機能には、ディスプレイ119に表示される画像の全体をピンチ操作等で拡大縮小する全体拡大機能と、虫眼鏡のように枠の中に画像の一部分を拡大表示する拡大鏡機能との2つの機能がある。以下、全体拡大機能を単に「全体拡大」と称し、拡大鏡機能を単に「拡大鏡」と称する。
画面制御部201は、拡大機能を含むAP(アプリケーションソフトウェア)の管理、表示する画像の画像情報をディスプレイ119に転送する処理、ユーザによるタッチパネル118へのタッチ操作に応じたイベントをAPに通知する処理等を行う。画面制御部201は、画面情報制御部202、画面情報格納部203、画面表示部204、入力情報制御部205、及び入力情報通知部206を備える。
画面情報制御部202は、デバイス制御部501から拡大モード(拡大機能)が切り替わったことを表す拡大モード通知を受信し、画面情報格納部203へ拡大モード通知を格納する。拡大モード通知には、拡大機能が有効か否かを表す情報、拡大率、全体拡大か拡大鏡かを表す情報等が含まれる。また、画面情報制御部202は、拡大制御部301に対して拡大モード通知を送信し、拡大制御部301からの指示により、画面表示部204に表示領域の切り替えを指示する。
画面表示部204は、ディスプレイ119に表示される画像を表示領域に描画する。表示領域は、同じ表示サイズの2つの表示領域を備えている。2つの表示領域には、それぞれ拡大されていない通常の画像と、拡大機能により拡大された画像とが描画される。画面表示部204は、画面情報制御部202から表示領域の切り替えの指示を受信して、2つの表示領域に描画されている画像のうち、どちらをディスプレイ119に表示するかの切り替え処理を行う。
図3は、表示領域の切り替え処理を説明するための図である。図3は、最終的な画像の転送先であるディスプレイ119と、ディスプレイ119に転送される画像が描画される仮想ディスプレイ領域601(表示領域)とを表している。仮想ディスプレイ領域601は、例えばRAM112に設けられる。仮想ディスプレイ領域601は、同じ表示サイズ(例えば、本実施形態では横幅が1024ピクセル、高さが600ピクセル)の2つの表示領域である通常表示領域602と拡張表示領域603とで構成される。
通常表示領域602及び拡張表示領域603の表示サイズは、ディスプレイ119の表示サイズ(例えば横幅が1024ピクセル、高さが600ピクセル)に応じて決められる。ディスプレイ119には、仮想ディスプレイ領域601から、通常表示領域602に描画される画像と拡張表示領域603に描画される画像とのいずれか一方が表示される。
通常表示領域602には、画面表示部204が、開始座標604のX座標「0」、Y座標「0」を始点として画像を描画する。通常表示領域602に描画される画像は、アプリケーション部401が生成する。拡張表示領域603には、画面表示部204が、開始座標605のX座標「1024」、Y座標「0」を始点として画像を描画する。拡張表示領域603に描画される画像は、拡大表示制御部307で生成される。
つまり、アプリケーション部401でAPの実行により生成されるAPの実行画像が通常表示領域602に描画され、拡大制御部301で生成される実行画像の拡大画像が拡張表示領域603に描画される。図3の例では、コピーアプリケーションにより生成されるコピー設定画面が通常表示領域602に描画されている。また、コピー設定画面の一部を拡大した拡大画像が拡張表示領域602に描画されている。
画面表示部204は、画面情報制御部202からの表示領域の切り替えの指示により、通常表示領域602に描画された画像と、拡張表示領域603に描画された画像のいずれか一方をディスプレイ119に転送する。図3では、拡大機能が有効となっており、拡張表示領域603の画像がディスプレイ119に転送、表示されていることを表している。
図2の説明に戻る。入力情報制御部205は、ユーザのタッチパネル118への操作に応じた制御信号を解析して、APで処理可能なイベント情報の形式に変換し、入力情報通知部206に送信する。イベント情報は、タッチパネル118への操作や状態を表し、タッチ操作されたタッチ位置の座標情報等を含む。
入力情報通知部206は、入力情報制御部205からイベント情報を受信する。入力情報通知部206は、画面情報格納部203に格納されている拡大モード通知を参照して、拡大機能が無効であればアプリケーション部401へイベント情報を送信し、拡大機能が有効であれば拡大制御部301へイベント情報を送信する。また、入力情報通知部206は、イベント情報の受信によりタッチパネル118が操作されたと判断して、後述のタイマ制御部503に対してタイマのリセットを指示する。
拡大制御部301は、アプリケーション部401が通常表示領域602に描画した画像をキャプチャし、キャプチャした画像(キャプチャ画像)を拡大して拡張表示領域603に描画する。拡大制御部301は、拡大情報制御部302、画像キャプチャ部303、キャプチャ画像格納部304、拡大入力制御部305、拡大入力情報格納部306、拡大表示制御部307、及び拡大表示情報格納部308を備える。
拡大情報制御部302は、画面情報制御部202から拡大モード通知を受信し、受信した拡大モード通知を拡大表示制御部307に送信する。拡大情報制御部302は、画面情報制御部202から受信した拡大モード通知に基づき拡大機能が有効か否かを判断し、判断結果に応じて表示領域の切り替えを指示する。
画像キャプチャ部303は、拡大表示制御部307からの指示に基づき、画面表示部204で通常表示領域602に描画された画像をキャプチャし、キャプチャ画像をキャプチャ画像格納部304に格納する。
拡大入力制御部305は、入力情報通知部206からイベント情報を受信し、受信したイベント情報を拡大入力情報格納部306に格納する。また、拡大入力制御部305は、拡大表示制御部307にイベント情報を受信したことを通知する。拡大入力情報格納部306に格納されるイベント情報は、例えば、前述したタッチダウン、タッチアップ、ムーブ等のイベント種類、タッチされた位置を表す位置座標等を含む。イベント情報は、複数の位置のタッチによるイベント情報を1つのイベント情報として格納する場合もある。
拡大表示制御部307は、大きく分けて以下の3つの処理を行う。まず、拡大表示制御部307は、拡大表示情報の更新を行う。詳細には、拡大表示制御部307は、拡大入力制御部305から通知を受け付けると、拡大入力情報格納部306に格納されているイベント情報及び拡大表示情報格納部308に格納されている情報を取得する。
そして、拡大表示情報格納部308は、全体拡大機能の拡大率、全体画像の表示位置座標情報、拡大鏡の拡大率、拡大鏡の表示位置座標情報等の拡大表示情報を格納する。さらに、拡大表示制御部307は、取得した拡大表示情報を用いて新たな拡大率又は表示位置座標等を算出し、拡大表示情報格納部308に格納されている情報を更新する。拡大鏡及び全体拡大の表示位置座標については後述する。
また、拡大表示制御部307は、拡大機能のための画面表示制御を行う。詳細には、拡大表示制御部307は、常時、拡大表示情報格納部308を監視しており、拡大機能が有効であれば、画像キャプチャ部303に対して画像キャプチャを指示し、キャプチャ画像格納部304に格納されているキャプチャ画像を取得する。そして、拡大表示制御部307は、取得したキャプチャ画像を拡大表示情報格納部308に格納されている拡大率に基づいて拡大縮小を行い、拡大鏡の表示位置座標情報に従って、画面表示部204に描画指示を行う。拡大機能が無効であれば、拡大表示制御部307は、これらの画面表示制御を行わない。
また、拡大表示制御部307は、表示領域の切り替えを指示する。詳細には、拡大表示制御部307は、拡大情報制御部302から拡大モード通知を受信し、拡大機能が有効か否かに応じて、拡大情報制御部302に表示領域の切り替えを指示させる。拡大表示制御部307は、拡大機能が無効になったと判断した場合には、拡大情報制御部302に通常表示領域602への切り替えを指示させる。拡大表示制御部307は、拡大機能が有効になったと判断した場合には、拡大情報制御部302に拡張表示領域603への切り替えを指示させる。
アプリケーション部401は、ディスプレイ119への表示及びタッチパネル118による操作のための画像を生成するアプリケーションソフトウェア群である。アプリケーション部401は、デバイス設定アプリケーション402及び一般アプリケーション403を備える。アプリケーション部401が画面表示部204に描画指示を送信することで、通常表示領域602に画像が描画される。
デバイス設定アプリケーション402は、主に管理者が情報処理装置101本体の各種設定値を使用環境に合わせて設定するためのAPである。例えば、デバイス設定アプリケーション402は、言語設定、省電力設定、ネットワーク設定、拡大機能設定等の設定に用いられる。設定値に応じて情報処理装置101の動作が決定される。本実施形態においては、拡大機能の設定として、全体拡大機能の有効/無効、拡大鏡機能の有効/無効が設定される。なお、全体拡大機能と拡大鏡機能は排他関係にあり、いずれか一方のみ有効に設定できる。
例えば、全体拡大機能を有効に設定した場合は、拡大鏡機能は無効となる。デバイス設定アプリケーション402による拡大機能の設定に応じて拡大モード通知に含まれる情報が設定される。一般アプリケーション403は、一般のユーザが使用するAPであり、情報処理装置101が備える機能に対応するAPである。ここでは説明を簡略化するために一つの一般アプリケーション403のみ示しているが、一般アプリケーション403が複数あってもよい。一般アプリケーション403としては、例えばコピー、スキャン、スキャンしたデータの送信、保存、プリント等、様々なAPがある。
デバイス制御部501は、情報処理装置101の状態の監視及び管理を行う。デバイス制御部501は、デバイス情報制御部502、タイマ制御部503、及びデバイス情報格納部504を備える。
デバイス情報制御部502は、常時、デバイス情報格納部504を監視しており、デバイス設定アプリケーション402により設定値が更新されたことを検知すると、画面情報制御部202に更新された設定値を含む拡大モード通知を送信する。例えば、デバイス情報制御部502は、デバイス設定アプリケーション402により全体拡大機能又は拡大鏡機能が有効に設定されると、拡大モード通知を生成して画面情報制御部202に送信するデバイス情報格納部504は、デバイス設定アプリケーション402により設定された設定値を格納する他に、省電力モードへの移行時間やオートクリアする時間を格納する。
タイマ制御部503は、情報処理装置101が一定時間操作されなかった場合に移行する省電力モードや、ユーザが途中まで操作していた画像をデフォルト画像に戻すオートクリア等の管理を行う。具体的には、タイマ制御部503は、時間をカウントアップしておき、カウントアップしている時間とデバイス情報格納部504に格納されている省電力モードへの移行時間やオートクリアする時間との比較を行う。タイマ制御部503は、比較の結果、カウントアップしている時間がそれらの時間を過ぎた場合に、デバイス情報制御部502に対して、省電力モードやオートクリアの要求を行う。
デバイス情報制御部502は、タイマ制御部503からの通知要求を受けると、画面情報制御部202にオートクリア、または省電力モードに入ったことを通知する。また、タイマ制御部503は、入力情報通知部206からタイマのリセットの指示があれば、自身のタイマをリセットすることで、省電力モードやオートクリア等の処理を遅延させる。
<拡大鏡機能>
図4は、拡大鏡機能が有効な場合に、ディスプレイに表示される拡大鏡枠を説明するための図である。拡大鏡機能が有効な場合に、ディスプレイ119には、拡張表示領域603の画像が表示される。拡大鏡枠705は、拡張表示領域603よりも小さい大きさであり、拡張表示領域603内に表示される。中心座標701は、拡大鏡枠705の表示位置の中心座標である。拡大鏡枠705は、ユーザによるドラッグ操作に応じて拡張表示領域603内で移動可能である。図4では、拡大鏡枠705が移動して、中心座標702の拡大鏡枠706となった状態を表している。
図4は、拡大鏡機能が有効な場合に、ディスプレイに表示される拡大鏡枠を説明するための図である。拡大鏡機能が有効な場合に、ディスプレイ119には、拡張表示領域603の画像が表示される。拡大鏡枠705は、拡張表示領域603よりも小さい大きさであり、拡張表示領域603内に表示される。中心座標701は、拡大鏡枠705の表示位置の中心座標である。拡大鏡枠705は、ユーザによるドラッグ操作に応じて拡張表示領域603内で移動可能である。図4では、拡大鏡枠705が移動して、中心座標702の拡大鏡枠706となった状態を表している。
拡張表示領域603に描画される画像は、拡張表示領域603の左上の座標(1024,0)を原点として描画される。この画像は、通常表示領域602に描画される画像と同じであり、拡大されていない。拡大鏡枠705内に表示される画像(拡大鏡画像)は、拡大鏡枠705の左上の座標(0,0)を原点として描画される。拡大鏡枠705の中心座標701は、拡張表示領域603の左上の座標(1024,0)を原点として表される。拡大鏡枠705に表示される拡大鏡画像は、拡大鏡枠705の中心座標701と同座標の拡張表示領域603に描画される画像を拡大鏡の拡大率に応じて拡大し、その一部をクリップした画像である。
拡大鏡枠705の中心座標701、横幅707、及び高さ708は、拡大鏡枠705の表示位置座標情報として、拡大表示情報格納部308に格納される。なお、本実施形態では、拡大鏡枠の下に表示される画像は、通常表示領域602に描画される画像と同じであると説明したが、これに限られるものではない。拡大鏡枠の下に表示される画像が拡大されていてもよく、拡大鏡枠は、該拡大されている画像の上に表示され、さらに異なる拡大率で拡大表示されるように表示されてもよい。
ユーザは、ディスプレイ119上で拡大鏡枠705を拡大鏡枠706の位置に移動させるために、移動開始点703(xx1,yy1)でタッチダウンし、そのままムーブして移動終了点704(xx2,yy2)でタッチアップする。タッチダウン、ムーブ、タッチアップといった一連の操作によるイベントの座標として、通常表示領域602の横幅を含んだ仮想ディスプレイ領域601の座標がタッチパネル118から制御部110の画面制御部201に通知される。
拡大鏡枠706には、中心座標702と同座標の拡張表示領域603に描画される画像を拡大し、その一部をクリップした拡大鏡画像が表示される。移動後の拡大鏡枠706の中心座標702(x2,y2)は、例えば以下のように求められる。新たに求められた表示位置座標情報は、拡大表示情報格納部308に格納される。
x2=x1+(xx2−xx1)
y2=y1+(yy2−yy1)
図4では移動開始点の拡大鏡枠705及び移動終了点の拡大鏡枠706のみ表しているが、実際には移動開始点と移動終了点との間のムーブイベント中においても複数の移動点が存在する。このムーブイベント中の移動点についても同様に、座標計算及びそれに基づく拡大鏡の表示が行われる。以上の拡大鏡における座標計算及び表示に関する処理は、拡大表示制御部307が行う。
x2=x1+(xx2−xx1)
y2=y1+(yy2−yy1)
図4では移動開始点の拡大鏡枠705及び移動終了点の拡大鏡枠706のみ表しているが、実際には移動開始点と移動終了点との間のムーブイベント中においても複数の移動点が存在する。このムーブイベント中の移動点についても同様に、座標計算及びそれに基づく拡大鏡の表示が行われる。以上の拡大鏡における座標計算及び表示に関する処理は、拡大表示制御部307が行う。
<全体拡大機能>
図5は、全体拡大機能が有効な場合に、ディスプレイに表示される全体拡大された画像を説明するための図である。全体拡大された画像は、拡張表示領域603に描画される。全体拡大機能が有効な場合に、ディスプレイ119には、拡張表示領域603の画像が表示される。通常表示領域602に表示される画像を特定の拡大率で拡大した拡大画像801は、ディスプレイ119に表示可能な大きさだけクリップされて、拡張表示領域603に描画される。拡大画像801は、例えば、通常表示領域602の画像がディスプレイ119に表示された状態で、ピンチ操作されることで得られる。
図5は、全体拡大機能が有効な場合に、ディスプレイに表示される全体拡大された画像を説明するための図である。全体拡大された画像は、拡張表示領域603に描画される。全体拡大機能が有効な場合に、ディスプレイ119には、拡張表示領域603の画像が表示される。通常表示領域602に表示される画像を特定の拡大率で拡大した拡大画像801は、ディスプレイ119に表示可能な大きさだけクリップされて、拡張表示領域603に描画される。拡大画像801は、例えば、通常表示領域602の画像がディスプレイ119に表示された状態で、ピンチ操作されることで得られる。
図5の例では、拡大画像801の原点809が、元の画像の原点から見て(−50,−30)の位置となる。すなわち、拡大画像801の原点809から見て(50,30)の位置から拡張表示領域603の横幅1024ピクセル、高さ600ピクセルの範囲をクリップした画像が、拡張表示領域603に描画される。
ピンチ操作により画像を拡大するときの拡大率及び拡大画像801の原点809は、以下のように求められる。ピンチ操作では、タッチパネル118上の2点がタッチされる。1点目は、ピンチ操作開始時のピンチ開始座標802からピンチ操作終了時のピンチ終了座標803まで、タッチ位置が移動する。2点目は、ピンチ操作開始時のピンチ開始座標804からピンチ操作終了時のピンチ終了座標805まで、タッチ位置が移動する。これらの座標として、図3の通常表示領域602の横幅を含んだ仮想ディスプレイ領域601の座標が、タッチパネル118から制御部110の画面制御部201に入力される。
図5に示したピンチ操作では、ピンチ開始座標802とピンチ開始座標804との間の距離D1に比べて、ピンチ終了座標803とピンチ終了座標805と間の距離D2が大きい。このため、制御部110は、ピンチ操作が画像の拡大を指示していると判断する。距離D1、D2は、ピンチ開始座標802を(xx11,yy11)、ピンチ開始座標804を(xx21,yy21)、ピンチ終了座標803を(xx12,yy12)、ピンチ終了座標805を(xx22,yy22)とすると、以下の式で表される。
D1=√((xx21−xx11)2+(yy21−yy11)2)D2=√((xx22−xx12)2+(yy22−yy12)2)
通常表示領域602に描画される画像の現在の拡大率R1(通常は100%)、距離D1、D2とすると、ピンチ操作による画像の拡大率R2は、以下の式で表される。拡大表示制御部307は、この新しい拡大率R2で画像を拡大する。
R2=R1×D2/D1
R2=R1×D2/D1
拡大画像801の原点809の座標(x01,y01)は、新しい拡大率R2により求められる。ここでは、ピンチ操作を行う2点の中心点の座標を起点に画像を拡大する場合について説明する。ピンチ開始時の中心点806とピンチ終了時の中心点807とが同じ位置である場合、中心点の座標(x1,y1)は通常表示領域602の横幅を減算して以下の式で表される。
x1=(xx11−1024+xx21−1024)/2
y1=(yy11+yy21)/2
x1=(xx11−1024+xx21−1024)/2
y1=(yy11+yy21)/2
拡大前の画像の原点808の座標(x00,y00)から中心点までの距離は、以下の式で表される。
(拡大画像の原点のx座標から中心点のx座標までの距離)=x1−x00
(拡大画像の原点のy座標から中心点のy座標までの距離)=y1−y00
(拡大画像の原点のx座標から中心点のx座標までの距離)=x1−x00
(拡大画像の原点のy座標から中心点のy座標までの距離)=y1−y00
これらの式により、拡大画像801の原点809の座標(x01,y01)は、以下の式で表すことができる。
x01=x1−(x1−x00)×R2
y01=y1−(y1−y00)×R2
x01=x1−(x1−x00)×R2
y01=y1−(y1−y00)×R2
ピンチ開始時の中心点とピンチ終了時の中心点とが同じ位置であることは希であり、実際には、微妙にずれが生じる。そのために、中心点の座標の移動量を算出し、これを加味して拡大画像801の原点809の位置は求められる。ピンチ開始時の中心点806及びピンチ終了時の中心点807の各中心点座標(x1,y1)、(x2,y2)は、以下の式で表される。
x1=(xx11−1024+xx21−1024)/2
y1=(yy11+yy21)/2
x2=(xx12−1024+xx22−1024)/2
y2=(yy12+yy22)/2
x1=(xx11−1024+xx21−1024)/2
y1=(yy11+yy21)/2
x2=(xx12−1024+xx22−1024)/2
y2=(yy12+yy22)/2
中心点806から中心点807への移動量(Xd,Yd)は、以下の式で表される。
Xd=x2−x1
Yd=y2−y1
以上により、拡大画像801の原点809の座標(x01,y01)は、以下の式で表される。
x01=x1−(x1−x00)×R2+Xd
y01=y1−(y1−y00)×R2+Yd
Xd=x2−x1
Yd=y2−y1
以上により、拡大画像801の原点809の座標(x01,y01)は、以下の式で表される。
x01=x1−(x1−x00)×R2+Xd
y01=y1−(y1−y00)×R2+Yd
ピンチ操作以外にも、ムーブ操作により画像を拡大することも可能である。この場合、例えば中心点806、807が、ムーブ操作の開始点及び終了点となる。中心点806、807間の移動量(Xd,Yd)がムーブ操作による移動量となり、拡大画像801の原点809の座標が算出でき、拡張表示領域603に表示される画像の領域を決定することができる。
なお、ピンチ操作時、またはムーブ操作時のいずれにおいても、操作の開始位置から終了位置まで連続して、位置を表す座標がタッチパネル118から制御部110の画面制御部201に入力される。操作の開始から終了までの間においても、連続して座標計算及びそれに基づく全体拡大した画像の表示が行われる。以上の全体拡大における座標計算及び表示に関する処理は、拡大表示制御部307が行う。拡大表示制御部307は、拡大率、拡大画像の原点座標、拡大画像の横幅、拡大画像の高さ等の拡大表示情報を拡大表示情報格納部308に格納する。
なお、本実施形態では拡張表示領域603を通常表示領域602の右横に設けた構成としているが、下に設けてもよい。その場合、拡張表示領域603は、座標(0、600)から設けられる。操作によるタッチイベントでは、Y方向に600ピクセル加算された値が操作された位置を表す座標としてタッチパネル118から制御部110に入力される。
なお、本実施形態の計算式においては同様の座標を求められるものであれば、他の計算式によって計算することでもよい。
以上のような構成の情報処理装置101により実行される、ディスプレイ119への画像表示処理について説明する。
<第1実施形態>
<拡大機能による画像の切り替え処理>
図6は、拡大機能(全体拡大または拡大鏡)が有効か否かにより、ディスプレイに表示される画像を切り替える処理を説明するためのフローチャートである。画面情報制御部202は、デバイス情報制御部502から拡大モード通知を受け付けると(S101)、画面情報格納部203に、受け付けた拡大モード通知を格納する(S102)。また、画面情報制御部202は、受け付けた拡大モード通知を拡大情報制御部302に送信する(S103)。
<拡大機能による画像の切り替え処理>
図6は、拡大機能(全体拡大または拡大鏡)が有効か否かにより、ディスプレイに表示される画像を切り替える処理を説明するためのフローチャートである。画面情報制御部202は、デバイス情報制御部502から拡大モード通知を受け付けると(S101)、画面情報格納部203に、受け付けた拡大モード通知を格納する(S102)。また、画面情報制御部202は、受け付けた拡大モード通知を拡大情報制御部302に送信する(S103)。
拡大情報制御部302は、画面情報制御部202から送信された拡大モード通知を受信し、拡大表示制御部307に送信する(S104)。拡大表示制御部307は、拡大情報制御部302から送信された拡大モード通知を受信し、拡大表示情報格納部308に格納する(S105)。
拡大表示制御部307は、拡大モード通知により拡大機能が有効か否かを判断する(S106)。拡大機能が無効である場合(S106:N)、拡大表示制御部307は、拡大情報制御部302を介して画面情報制御部202に、ディスプレイ119に表示される画像を通常表示領域602の画像へ切り替えるように要求する(S107)。拡大機能が有効であれば場合(S106:Y)、拡大表示制御部307は、拡大情報制御部302を介して画面情報制御部202に、ディスプレイ119に表示される画像を拡張表示領域603の画像へ切り替えるように要求する(S108)。
画面情報制御部202は、拡大情報制御部302からディスプレイ119に表示される画像を切り替える要求を受信し(S109)、要求が通常表示領域602の画像への切り替えであるか否かを判断する(S110)。要求が通常表示領域602の画像への切り替えである場合(S110:Y)、画面情報制御部202は、画面表示部204がディスプレイ119に表示される画像を通常表示領域602の画像に切り替えるように指示する(S111)。要求が拡張表示領域603の画像への切り替えである場合(S110:N)、画面情報制御部202は、画面表示部204がディスプレイ119に表示される画像を拡張表示領域603の画像に切り替えるように指示する(S112)。
以上のように、拡大機能が切り替わったことを示す拡大モード通知をデバイス制御部501から受信したことに応じて、通常表示領域602の画像と拡大表示領域603の画像のいずれをディスプレイ119に表示させるかが切り替わる。
<イベント処理>
図7〜図11は、ユーザの操作によるタッチパネルからの入力に応じたイベントの処理を説明するためのフローチャートである。
図7〜図11は、ユーザの操作によるタッチパネルからの入力に応じたイベントの処理を説明するためのフローチャートである。
上述した通り、拡大鏡機能が有効な場合、ドラッグ操作により拡大鏡枠を移動させることができる。また、全体拡大機能が有効な場合、ドラッグ操作により拡大画像の表示位置を移動させることができる。一方、拡大鏡枠内に表示されているボタンを選択するためにタッチ操作を行うことや、全体拡大機能により拡大表示されている画像に含まれるリストをスクロール表示させるためにドラッグ操作を行うことが考えらえる。よって、例えば全体拡大機能が有効時にドラッグ操作が行われた場合、拡大画像の表示位置を移動させるための操作なのか、拡大表示されている画像に含まれるリストをスクロールするための操作なのかを適切に判断する必要がある。
そこで本実施形態では、最初にタッチパネル118の同じ位置を所定時間タッチし続ける長押し操作が行われたか否かに応じて、いずれを目的とした操作なのかを判断する例について説明する。
入力情報制御部205は、ユーザのタッチパネル118への操作に応じた制御信号を受信し(S201)、受信した制御信号をイベント情報に変換する(S202)。入力情報通知部206は、画面情報格納部203に格納されている拡大モード通知を取得し(S203)、取得した拡大モード通知により、拡大機能が有効か否かを判断する(S204)。拡大機能が無効であれば(S204:N)、入力情報通知部206は、アプリケーション部401にイベント情報を送信する(S205)。アプリケーション部401は、イベント情報に応じた処理を実行して処理を終了する。
例えば、コピーアプリケーションのコピー設定画面において、用紙選択ボタンが選択されたことを示すイベント情報を受信すると、コピーアプリケーションは、用紙選択画面(不図示)へ画面を切り替える。拡大機能が有効であれば合(S204:Y)、入力情報通知部206は、拡大入力制御部305にイベント情報を送信する(S206)。
拡大入力制御部305は、入力情報通知部206からイベント情報を受信する(S207)。拡大入力制御部305は、受信したイベント情報を拡大入力情報格納部306に格納し(S208)、拡大表示制御部307にイベント情報を受信したことを通知する(S209)。拡大表示制御部307は、拡大入力制御部305から通知に応じて、拡大入力情報格納部306からイベント情報を取得する(S210)。拡大表示制御部307は、拡大表示情報格納部308に格納されている拡大モード通知に基づき、全体拡大機能と拡大鏡機能のいずれが有効かを判断する(S211)。
拡大鏡機能が有効な場合(S211:拡大鏡)、拡大表示制御部307は、拡大鏡のイベント処理を実行する(図8参照)。全体拡大機能が有効な場合(S211:全体拡大)、拡大表示制御部307は、画像の全体拡大のイベント処理を実行する(図9参照)。
図8は、拡大鏡のイベント処理を表すフローチャートである。拡大表示制御部307は、拡大表示情報格納部308から拡大鏡の表示位置座標情報を取得する(S300)。拡大表示制御部307は、イベント情報から得られるタッチ位置が、取得した表示位置座標情報から得られる拡大鏡枠の表示エリア内か否かを判断する(S301)。
タッチ位置が拡大鏡枠の表示エリア内であれば(S301:Y)、拡大表示制御部307は、イベント情報が1点の座標情報のみを含んでいるか否かを判断する(S302)。
1点であれば(S302:Y)、イベント情報がムーブか否かを判断する(S303)。イベント情報がムーブであれば(S303:Y)、拡大表示制御部307は、APイベント送信フラグがオンか否かを判断する(S304)。
1点であれば(S302:Y)、イベント情報がムーブか否かを判断する(S303)。イベント情報がムーブであれば(S303:Y)、拡大表示制御部307は、APイベント送信フラグがオンか否かを判断する(S304)。
APイベント送信フラグは、アプリケーション部401にタッチイベントを送信中の場合にオンになるフラグである。つまり、APイベント送信フラグがオンである場合、拡大表示制御部307が受けたタッチパネルからのイベントはすべて通常表示領域のAPに送信するため、拡大画像の移動等は行われない。一方、APイベント送信フラグがオフである場合には、通常表示領域のAPにはタッチパネルからのイベントを送らず、拡大画像を動かすなど、拡大画像を操作するための処理が行われる。初期状態では、APイベント送信フラグはオフに設定されている。
APイベント送信フラグがオフであれば(S304:N)、拡大表示制御部307は、タッチダウン後のイベントを待機中かどうか判断する(S305)。S314、S315で後述するように、最初にタッチダウンを検出した際、長押しか否かを判断するために、APへのイベント送信や拡大画像の操作等を即座に行わずに、一定時間待機する。S305では、この待機時間中にムーブイベントを受信したか否かが判断される。待機中であれば(S305:Y)、拡大表示制御部307は、ムーブイベントで受信した座標とタッチダウンイベントで受信した座標とを比較し、タッチ位置が閾値以上移動したか否かを判断する(S306)。
閾値以上移動した場合(S306:Y)、長押しではないと判断し、待機状態を終了し(S307)、同様に長押しフラグをオフに設定する(S309)。閾値以上移動していないと判断したら(S306:N)、長押しフラグをオンに設定し(S308)処理を終了する。
この長押しフラグは、ユーザによるタッチ操作が、同じ位置を所定時間タッチし続ける長押し操作か否かを判断するためのフラグである。タッチダウンを検出後の待機中に、タッチ位置がほぼ動いてない場合に長押しフラグはオンになり、タッチ位置が所定以上移動した場合にオフになる。
S305において待機状態でない場合、もしくはS309で長押しフラグをオフに設定した後、拡大表示制御部307は、拡大鏡枠の表示位置座標を算出し、算出結果に応じて拡大表示情報格納部308の拡大表示情報を更新する(S310、S311)。S303において、イベント情報がムーブでなければ、拡大表示制御部307は、イベント情報がタッチアップか否かを判断する(S312)。イベント情報がタッチアップであれば(S312:Y)、拡大表示制御部307は、APイベント送信フラグがオンか否かを判断する(S313)。
APイベント送信フラグがオフの場合(S313:N)、処理を終了する。 S312において、イベント情報がタッチアップでなければ、拡大表示制御部307は、イベント情報がタッチダウンであるか否かを判断する(S314)。イベント情報がタッチダウンであれば(S314:Y)、拡大表示制御部307は所定時間待機する(S315)。所定時間が経過すると、拡大表示制御部307は、長押しフラグがオンであるかを判断する(S316)。長押しフラグがオンであれば(S316:Y)、APにイベント送信を開始すると判断し、S317以降の処理に進む。長押しフラグがオフであれば(S316:N)処理を終了する。イベント情報がタッチダウンでない場合(S314:N)、処理を終了する。
長押しフラグがオンである場合(S316:Y)、及びAPイベント送信フラグがオンである場合(S304:Y、S313:Y)、拡大表示制御部307は、イベント情報に含まれるタッチ位置を表す座標を通常表示領域602の座標に変換する(S317)。つまり、タッチイベントをすべてアプリケーション部401に送るために、拡大表示制御部307は、拡張表示領域603の座標から通常表示領域602の座標への座標変換を行う。座標変換について、図4により説明する。
図4の中心座標701(x1,y1)が拡大鏡枠705の中心位置を表し、移動開始点703(xx1,yy1)がイベント情報に含まれるタッチ位置を表す座標である。拡大鏡の拡大率はRである。座標変換後の通常表示領域602の座標(x,y)は、拡張表示領域603の左上の座標(1024,0)を用いて以下の式で表される。
x=((xx1−1024)−x1)/R+x1
y=(yy1−y1)/R+y1
拡大表示制御部307は、座標変換により算出した座標によりイベント情報を更新して、アプリケーション部401に画面制御部201を介してイベント情報を送信する(S318)。
x=((xx1−1024)−x1)/R+x1
y=(yy1−y1)/R+y1
拡大表示制御部307は、座標変換により算出した座標によりイベント情報を更新して、アプリケーション部401に画面制御部201を介してイベント情報を送信する(S318)。
このように、ユーザが拡大鏡枠内に拡大表示された画像に対してタッチ操作を行うと、該タッチ操作によるイベント情報が通常表示領域602の画像に対して行われたイベント情報に変換される。変換されたイベント情報は、通常表示領域602に画像を表示するAPに通知され、APは通知されたイベント情報に基づいて所定の動作を行う。よって、ユーザは、拡大鏡枠内に拡大表示された画像を見ながらAPの操作を行うことができる。
イベント情報の送信後、拡大表示制御部307は、イベント情報がタッチアップであるか否かを判断する。イベント情報がタッチアップであれば(S319:Y)、拡大表示制御部307は、APイベント送信フラグをオフにする(S320)。イベント情報がタッチアップ以外であれば(S319:N)、拡大表示制御部307は、APイベント送信フラグオンにする(S321)。拡大表示制御部307はAPイベント送信フラグを設定後、拡大鏡のイベント処理を終了する。
S301において、タッチ位置が拡大鏡枠の表示エリア外であれば、拡大表示制御部307は、イベント情報に含まれるタッチ位置を表す座標を通常表示領域602の座標に変換する(S322)。同様に、S302において、イベント情報が1点の座標情報でなければ(S302:N)、拡大表示制御部307は、2点以上のタッチ操作が行われたと判断し、イベント情報に含まれるタッチ位置を表す座標を通常表示領域602の座標に変換する(S322)。また、図4により説明すると、座標変換後の通常表示領域602の座標(x,y)は、拡張表示領域603の左上の座標(1024,0)を用いて以下の式で表される。
x=xx1−1024
y=yy1
x=xx1−1024
y=yy1
拡大表示制御部307は、座標変換により算出した座標によりイベント情報を更新して、アプリケーション部401に画面制御部201を介して送信する(S323)。このように、拡大鏡枠外に表示された画像に対してタッチ操作を行った場合や拡大鏡枠内の画像に対してピンチ操作を行った場合も、該タッチ操作によるイベント情報が通常表示領域602の画像に対して行われたイベント情報に変換される。変換されたイベント情報は、通常表示領域602に画像を表示するAPに通知され、APは通知されたイベント情報に基づいて所定の動作を行う。よって、ユーザは、拡大鏡枠の内外を問わず、表示された通りのAP操作を行うことができる。
図8のフローチャートについて、具体例を挙げて説明する。情報処理装置101ではスキャンしたデータを送信するためのセンドアプリケーションが起動しているものとする。そして、センドアプリケーションにおいてデータの送信先を選択するためのアドレス帳画面(図13)が表示されているものとする。ここで、拡大鏡機能が有効に設定され、拡大鏡がアドレス帳の一部を拡大表示しているものとする。
まず、ユーザが拡大鏡枠内に表示されたアドレス帳のリストをスクロールするために、拡大鏡枠内のアドレス帳リストを最初に長押ししてからドラッグ操作を行うものとする。この場合、最初にS314でタッチダウンが検出され、待機状態となる(S315)。続いてこの待機状態の間に、ムーブが検出されることとなるが(S303)、この時点ではAPイベント送信フラグがオフであり、指も動かしていないため、S304→S305→S306と進み、長押しフラグがオンになる(S308)。待機時間が経過するまでの間は、ムーブイベントが周期的に検出され続けるため、S303〜S308の処理が繰り返し行われる。
待機時間が経過すると、S316に進む。この時点では、長押しフラグがオンになっているため、座標の変換処理、座標変換後のセンドアプリケーションへのイベント送信処理が行われる(S317、S318)。また、S319ではイベント情報がタッチアップではないため、S321に進み、APイベント送信フラグがONになる。
ユーザが長押し後にドラッグ操作を行うと、S303で再びムーブが検出されることになる。この時点ではAPイベント送信フラグがオンになっているため(S304:Y)、座標の変換処理、座標変換後のセンドアプリケーションへのイベント送信処理が行われる(S317、S318)。
こうして、長押し後にユーザがドラッグ操作をしている間、タッチ位置に基いて座標変換されたイベント情報がセンドアプリケーションに送信され、センドアプリケーションでは当該イベント情報に基づいてアドレス帳リストをスクロールする。なお、センドアプリケーションによるスクロール中の画像は、後述する図10の処理により拡大制御部301によりキャプチャされ、後述する図11(a)の処理によりディスプレイ119に表示されることとなる。
続いて、ユーザが拡大鏡枠を移動させるために、拡大鏡枠をドラッグ操作するものとする。この場合、S314でタッチダウンが検出され、待機状態になった後(S315)、ムーブが検出される(S303)。この時点ではAPイベント送信フラグがオフであり(S304:N)、待機中であるため(S305)、タッチダウンイベントで受信した座標とムーブイベントで受信した座標に基づいて、タッチ位置が閾値以上移動したか否かが判断される(S306)。ここでは、閾値以上移動しているため(S306:Y)、待機状態が終了となり(S307)、長押しフラグがオフとなる(S309)。そして、拡大鏡枠の表示位置座標の算出、拡大表示情報の更新が行われることとなる(S310、S311)。
以上の通り、拡大鏡枠内でタッチダウンした後すぐにドラッグ操作を開始した場合、拡大制御部がイベントを処理して拡大鏡枠を移動させる。一方、拡大鏡枠外でドラッグ操作を行った場合および、拡大鏡枠内でタッチダウンした後、所定時間指を動かさずに待機した後でドラッグ操作を行った場合、拡大制御部は拡大率を考慮して座標変換を行ってAPにイベントを通知する。従って、ユーザは例えばAPが表示したリストをスクロールさせるなどドラッグ操作によるAP操作を行うことができる。また、ピンチイベントなど拡大鏡表示中は拡大制御部が処理しないイベントは拡大率を考慮して座標変換が行われ、APに通知される。従って、ユーザは例えばAPが表示した画像を拡大・縮小表示させるなどのAP操作を行うことができる。
図9は、全体拡大のイベント処理を説明するためのフローチャートである。拡大表示制御部307は、拡大表示情報格納部308から全体拡大の表示位置座標情報を取得する(S400)。表示位置座標情報を取得した拡大表示制御部307は、イベント情報が1点の座標情報のみを含んでいるか否かを判断する(S401)。
1点でなければ(S401:N)、拡大表示制御部307は、2点以上のタッチ操作が行われたと判断して、APイベント送信フラグがオンか否かを判断する(S402)。前述した通り、APイベント送信フラグは、アプリケーション部401にタッチイベントを送信中の場合にオンになるフラグである。APイベント送信フラグがオフであれば(S402:N)、拡大表示制御部307は、イベント情報に応じて複数の座標情報を用いた全体の拡大率を算出する(S403)。また、拡大表示制御部307は、複数の座標情報を用いて表示位置座標を算出する(S404)。拡大表示制御部307は、算出した拡大率及び表示位置座標に基づいて、拡大表示情報格納部308の拡大表示情報を更新する(S405)。
1点であれば(S401:Y)、拡大表示制御部307はイベント情報がムーブか否かを判断する(S406)。イベント情報がムーブであれば(S406:Y)、拡大表示制御部307は、APイベント送信フラグがオンか否かを判断する(S407)。APイベント送信フラグがオフであれば(S407:N)、拡大表示制御部307は、タッチダウン後のイベントを待機中かどうか判断する(S408)。S417、S418で後述するように、最初にタッチダウンを検出した際、長押しか否かを判断するために、APへのイベント送信や拡大画像の操作等を即座に行わずに、一定時間待機する。
S408では、この待機時間中にムーブイベントを受信したか否かが判断される。待機中であれば(S408:Y)、拡大表示制御部307は、ムーブイベントで受信した座標とタッチダウンイベントで受信した座標と比較し、タッチ位置が閾値以上移動したか否かを判断する(S409)。
閾値以上移動した場合(S409:Y)、長押しではないと判断し、待機状態を終了し(S410)、長押しフラグをオフに設定する(S411)。閾値以上移動していないと判断したら(S409:N)、長押しフラグをオンに設定し(S414)、処理を終了する。前述した通り、長押しフラグは、ユーザによるタッチ操作が、同じ位置を所定時間タッチし続ける長押し操作か否かを判断するためのフラグである。
S408において待機状態でない場合、もしくはS411で長押しフラグをオフに設定した後、拡大表示制御部307は、全体拡大の表示位置座標を算出して、算出結果に応じて拡大表示情報格納部308の拡大表示情報を更新する(S412、S413)。S406において、イベント情報がムーブでなければ、拡大表示制御部307は、イベント情報がタッチアップか否かを判断する(S415)。イベント情報がタッチアップであれば(S415:Y)、拡大表示制御部307は、APイベント送信フラグがオンか否かを判断する(S416)。
S415において、イベント情報がタッチアップでなければ、拡大表示制御部307は、イベント情報がタッチダウンであるか否かを判断する(S417)。イベント情報がタッチダウンであれば(S417:Y)、拡大表示制御部307は、所定時間待機する(S418)。所定時間が経過すると、拡大表示制御部307は、長押しフラグがオンであるかを判断する(S419)。長押しフラグがオンであれば(S419:Y)、APにイベント送信を開始すると判断し、S420以降の処理に進む。長押しフラグがオフであれば(S419:N)処理を終了する。イベント情報がタッチダウンでない場合(S417:N)、処理を終了する。
長押しフラグがオンである場合(S419:Y)、及びAPイベント送信フラグがオンである場合(S402:Y、S407:Y、S416:Y)、拡大表示制御部307は、イベント情報に含まれるタッチ位置を表す座標を通常表示領域602の座標に変換する(S420)。つまりタッチイベントをすべてアプリケーション部401に送るために、拡大表示制御部307は、拡張表示領域603の座標から通常表示領域602の座標への座標変換を行う。座標変換を行う。
座標変換は、以下のように行われる。例えば、拡大画像の原点を(x01,y01)、拡大率をR、イベント情報に含まれるタッチ位置を表す座標を(xx1,yy1)とする。座標変換後の通常表示領域602の座標(x,y)は、拡張表示領域603の左上の座標(1024,0)を用いて以下の式で表される。
x=((xx1−1024)−x01)/R
y=(yy1−y01)/R
拡大表示制御部307は、座標変換により算出した座標によりイベント情報を更新して、アプリケーション部401に画面制御部201を介してイベント情報を送信する(S421)。
x=((xx1−1024)−x01)/R
y=(yy1−y01)/R
拡大表示制御部307は、座標変換により算出した座標によりイベント情報を更新して、アプリケーション部401に画面制御部201を介してイベント情報を送信する(S421)。
このように、ユーザが拡大表示された画像に対してタッチ操作を行うと、該タッチ操作によるイベント情報が通常表示領域602の画像に対して行われたイベント情報に変換される。変換されたイベント情報は、通常表示領域602に画像を表示しているAPに対して通知され、APは通知されたイベント情報に基づいて所定の動作を行う。よって、ユーザは、拡大表示された画像を見ながらAPの操作を行うことができる。
イベント情報の送信後、拡大表示制御部307は、イベント情報がタッチアップであるか否かを判断する。イベント情報がタッチアップであれば(S422:Y)、拡大表示制御部307は、APイベント送信フラグをオフにする(S423)。イベント情報がタッチアップ以外であれば(S422:N)、拡大表示制御部307は、APイベント送信フラグをオンにする(S424)。拡大表示制御部307はAPイベント送信フラグを設定後、全体拡大のイベント処理を終了する。
図9のフローチャートについて、具体例を挙げて説明する。情報処理装置101ではセンドアプリケーションが起動しており、データの送信先を選択するためのアドレス帳画面(図13)が表示されているものとする。ここで、全体拡大機能が有効に設定され、アドレス帳リスト部分(図13の領域900)が拡大表示されているものとする。
まず、ユーザが拡大表示されたアドレス帳リストをスクロールするために、拡大画像上のアドレス帳リストを最初に長押ししてからドラッグ操作を行うものとする。この場合、最初にS401でタッチダウンが検出され、待機状態となる(S418)。続いて、この待機状態の間にムーブが検出されることとなるが(S406)、この時点ではAPイベント送信フラグがオフであり、指も動かしていないため、S407→S408→S409と進み、長押しフラグがオンになる(S414)。待機時間が経過するまでの間は、ムーブイベントが周期的に検出され続けるため、S406〜S414の処理が繰り返し行われる。
待機時間が経過すると、S419に進む。この時点では、長押しフラグがオンになっているため、座標の変換処理、座標変換後のセンドアプリケーションへのイベント送信処理が行われる(S420、S421)。また、S422ではイベント情報がタッチアップではないため、S424に進み、APイベント送信フラグがONになる。
ユーザが長押し後にドラッグ操作を行うと、S406で再びムーブが検出されることになる。この時点ではAPイベント送信フラグがオンになっているため(S407:Y)、座標の変換処理、座標変換後のセンドアプリケーションへのイベント送信処理が行われる(S420、S421)。こうして、長押し後にユーザがドラッグ操作をしている間、タッチ位置に基づいて座標変換されたイベント情報がセンドアプリケーションに送信され、センドアプリケーションでは当該イベント情報に基づいてアドレス帳リストをスクロールする。なお、センドアプリケーションによるスクロール中の画像は、後述する図10の処理によりキャプチャされ、後述する図11(b)の処理によりディスプレイ119に表示されることとなる。
続いて、ユーザが全体拡大された画像の表示位置を移動させるために、拡大画像をドラッグ操作するものとする。この場合、S417でタッチダウンが検出され、待機状態になった後(S418)、ムーブが検出される(S406)。この時点ではAPイベント送信フラグがオフであり(S407:N)、待機中であるため(S408)、タッチダウンイベントで受信した座標とムーブイベントで受信した座標に基づいて、タッチ位置が閾値以上移動したか否かが判断される(S409)。ここでは、閾値以上移動しているため(S409:Y)、待機状態が終了となり(S410)、長押しフラグがオフとなる(S411)。そして、全体拡大の表示位置座標の算出、拡大表示情報の更新が行われることとなる(S412、S413)。
以上の通り、ユーザがタッチダウンした後すぐにドラッグ操作を行った場合、拡大制御部がイベントを処理して拡大表示位置を移動させる。一方、ユーザがタッチダウンした後、所定時間指を動かさずに待機した後でドラッグ操作を行った場合、拡大制御部は拡大表示位置を移動させる処理を行わず、拡大率を考慮して座標変換を行ってAPにイベントを通知する。従って、ユーザは例えばAPが表示したリストをスクロールさせるなどドラッグ操作によるAP操作を行うことができる。
また、タッチダウンした後すぐにピンチ操作を行った場合、拡大制御部がイベントを処理して全体拡大の拡大率を変更する。一方、ユーザがタッチダウンした後、所定時間指を動かさずに待機した後でピンチ操作を行った場合、全体拡大の拡大率を変更する処理を行わず、拡大率を考慮して座標変換を行ってAPに通知する。従って、ユーザは例えばAPが表示した画像を拡大・縮小表示させるなど、ピンチ操作によるAP操作を行うことができる。
なお、上記説明では、最初に長押し操作が行われたか否かに応じて、APにイベントを送信するか、拡大画像に対する操作を行うかを切り替える例について説明したが、他の方法により上記切り替えを行うようにしてもよい。例えば、ユーザが所定の短い間隔で2回タッチダウンを行った場合(ダブルタップ)にAPへイベントを送信するようにしても良い。また、APへのイベント送信を指示するための専用のボタンを表示し、当該ボタンが押下された場合にその後に行われたタッチイベントをAPに送信するようにしてもよい。
<キャプチャ画像処理>
図10は、キャプチャ画像を取得し、拡大機能(全体拡大または拡大鏡)において表示する画像を描画する処理を説明するためのフローチャートである。この処理は、拡大機能が有効になると開始され、情報処理装置101がシャットダウンされるまでの間に、一定の時間間隔で繰り返し行われる。一定の時間間隔とは、例えば、本実施形態では1000msecとしている。
図10は、キャプチャ画像を取得し、拡大機能(全体拡大または拡大鏡)において表示する画像を描画する処理を説明するためのフローチャートである。この処理は、拡大機能が有効になると開始され、情報処理装置101がシャットダウンされるまでの間に、一定の時間間隔で繰り返し行われる。一定の時間間隔とは、例えば、本実施形態では1000msecとしている。
拡大表示制御部307は、拡大表示情報格納部308に格納されている拡大モード通知を取得する(S501)。拡大表示制御部307は、拡大モード通知により拡大機能が有効か否かを判断する(S502)。拡大機能が無効の場合(S502:N)、拡大表示制御部307は、再度、拡大モード通知を取得する。拡大表示制御部307は、拡大機能が有効になるまでこの処理を繰り返す。
拡大機能が有効になると(S502:Y)、拡大表示制御部307は、通常表示領域602に描画された画像を画像キャプチャ部303にキャプチャさせる。そして、画像キャプチャ部303は、キャプチャ画像を、キャプチャ画像格納部304に格納する(S503)。すなわち、一定の時間間隔で取得されるキャプチャ画像のうち、直近にキャプチャされた画像がキャプチャ画像格納部304に格納される。キャプチャ画像が格納されると、拡大表示制御部307は、拡大モード通知が拡大鏡の実行を指示しているか否かを判断する(S504)。
拡大モード通知が拡大鏡の実行を指示している場合(S504:Y)、拡大表示制御部307は、拡大鏡の描画処理を行う(S505)。拡大モード通知が拡大鏡の実行を指示していない場合(S504:N)、すなわち全体拡大の実行を指示している場合、拡大表示制御部307は、全体拡大の描画処理を行う(S506)。
ここで、キャプチャ画像は、一定の時間間隔で取得されるため、通常表示領域602の画面が更新されている場合であっても、拡大鏡、または全体拡大の画面は更新されない場合がある。図8及び図9において、APイベント送信フラグがオンの場合は、ユーザが通常表示領域602の画面を操作していることを表しており、例えば、ユーザがボタンの押下、リストのスクロール等のアニメーション効果のある操作をしている場合が考えられる。
このとき、例えば、一定の時間間隔が1000msecとすると、拡大鏡または全体拡大において、アニメーションが途切れ途切れに表示されるか、全て終わった後の表示しかされないことがある。このため、本実施形態では、後述するステップにおいて、キャプチャする時間間隔の調整を行う。
拡大表示制御部307は、拡大鏡または全体拡大の描画処理後、APイベント送信フラグがオンか否かを判断する(S507)。APイベント送信フラグがオンの場合(S507:Y)、拡大表示制御部307は、タイマが500msecに設定されているか否かを判断する(S509)。一方、APイベント送信フラグがオフの場合(S507:N)、拡大表示制御部307は、タイマをデフォルト値である1000msecに設定する(S508)。
タイマは、図10において、一連の処理を実行する時間間隔を示すものである。タイマが既に500msecに設定済みである場合(S509:Y)、キャプチャ処理を終了後に、タイマで設定されている一定の時間が経過した後に再度、処理を最初から実行する。タイマが500msecに設定されていない場合(S509:N)、拡大表示制御部307は、取得したキャプチャ画像が前回のキャプチャ画像と比較して差分があるか否かを判断する(S510)。差分があると判断した場合(S510:Y)、タイマは、500msecに設定される(S511)。
一方、差分がないと判断した場合(S510:N)、処理を終了する。すなわち、APイベント送信フラグがオンであり、かつ取得したキャプチャ画像が前回のキャプチャ画像と比較して差分がある場合、キャプチャする周期を早める。これは、アプリケーション部401に対してタッチイベントを送信しており、かつ画面の更新がある場合には、画像をキャプチャする周期を早めることを意味する。
なお、本実施形態では、APイベント送信フラグがオン、かつ、キャプチャ画像に差分がある場合に画像をキャプチャする時間間隔を所定の時間間隔より短い時間間隔に変更する処理について説明したが、これに限られるものではない。例えば、AP送信イベントフラグがオンの場合は、キャプチャ画像に差分があるか否かに拘わらず、キャプチャする時間間隔を所定の時間間隔より短い時間間隔に変更するようにしてもよい。また、本実施形態では、タッチアップ操作が行われるとAPイベント送信フラグがオフに設定され、画像をキャプチャする時間間隔がデフォルト値に設定されると説明したが、これに限られるものではない。
例えば、ユーザがフリック操作を行った場合など、ユーザが指をタッチパネルから離した後も画面が動く(画面が更新される)場合には、次のような処理を行ってもよい。すなわち、タッチアップ操作が行われたことによりAPイベント送信フラグがオフになった後、所定の時間が経過するまでの間は、画像をキャプチャする時間間隔を短い時間間隔に設定するように処理を行ってもよい。
<拡大鏡の描画処理及び全体拡大の描画処理>
図11(A)は、拡大鏡の描画処理を説明するためのフローチャートである。拡大表示制御部307は、キャプチャ画像格納部304に格納されているキャプチャ画像を取得して複製する(S601)。また、拡大表示制御部307は、拡大表示情報格納部308に格納されている拡大鏡の拡大率及び表示位置座標情報を取得する(S602)。拡大表示制御部307は、複製したキャプチャ画像を、取得した拡大率に応じて拡大する(S603)。拡大表示制御部307は、拡大したキャプチャ画像を、表示位置座標情報に基づいて拡大鏡枠の大きさにクリップする(S604)。
図11(A)は、拡大鏡の描画処理を説明するためのフローチャートである。拡大表示制御部307は、キャプチャ画像格納部304に格納されているキャプチャ画像を取得して複製する(S601)。また、拡大表示制御部307は、拡大表示情報格納部308に格納されている拡大鏡の拡大率及び表示位置座標情報を取得する(S602)。拡大表示制御部307は、複製したキャプチャ画像を、取得した拡大率に応じて拡大する(S603)。拡大表示制御部307は、拡大したキャプチャ画像を、表示位置座標情報に基づいて拡大鏡枠の大きさにクリップする(S604)。
拡大表示制御部307は、拡大していない(複製元の)キャプチャ画像に、拡大してクリップしたキャプチャ画像を、表示位置座標情報が示す位置に合成する(S605)。拡大表示制御部307は、合成した画像を拡張表示領域603に描画する(S606)。そして、図6で示した処理によって画面制御部201が拡張表示領域603への表示切替えを行うことにより、ディスプレイ119には、拡大されたキャプチャ画像のクリップされた部分がキャプチャ画像の上に重畳された画像が表示される。
図11(B)は、全体拡大の描画処理を説明するためのフローチャートである。拡大表示制御部307は、キャプチャ画像格納部304に格納されているキャプチャ画像を取得する(S701)。また、拡大表示制御部307は、拡大表示情報格納部308に格納されている全体拡大の拡大率及び表示位置座標情報を取得する(S702)。拡大表示制御部307は、キャプチャ画像を、取得した拡大率に応じて拡大する(S703)。拡大表示制御部307は、拡大したキャプチャ画像を、表示位置座標情報に基づいてディスプレイ119の大きさにクリップする(704)。
拡大表示制御部307は、クリップした画像を拡張表示領域603に描画する(S705)。そして、図6で示した処理によって画面制御部201が拡張表示領域603への表示切替えを行うことにより、ディスプレイ119には、拡大されたキャプチャ画像のクリップされた部分(画像)が表示される。
以上のように、本実施形態によれば、OSやウィンドウシステムをカスタマイズすることなく、アプリケーションにより生成された画像全体を拡大して表示することが可能である。また、アプリケーションにより生成された画像の一部を拡大表示する拡大鏡表示が可能となる。これにより、視力の弱いユーザであっても操作に支障をきたすことが少なくなり、アクセシビリティが向上する。また、画像を拡大して表示している際に、ユーザがタッチアップやタッチダウン等のタッチ操作を行った場合に、拡大率や表示位置を考慮して座標変換を行った上で、実行中のAPにイベント情報が通知される。
このため、ユーザは、拡大表示された画像を見ながら、APに対して所望の操作を行うことが可能となる。例えば、全体拡大機能を有効にした場合、ユーザはピンチ操作により画面全体の拡大縮小を行うことができると共に、ドラッグ操作により拡大画像の表示位置を任意の位置に変更することができる。また、拡大鏡機能を有効にした場合、ユーザはドラッグ操作により拡大鏡枠を任意の位置に移動させることができる。
更に、拡大機能が有効なときにユーザからのタッチ操作に基づきアプリケーションの画面が更新される場合には、キャプチャ周期を通常よりも短く設定してキャプチャ処理を行うので、拡大機能の画面の表示をリアルタイムに更新することが可能となる。
(第2実施形態)
次に、本発明の第2実施形態に係る情報処理装置について説明する。第1実施形態では、APイベント送信フラグがオンの場合、すなわち、ユーザが表示されたAPを操作している際に画像をキャプチャする時間間隔の調整を行うことを説明した。これに対して、本実施形態では、APを操作している以外の場合であっても、例えば、情報処理装置から何等かの通知が行われるような場合等、画面の更新がある場合においても画像をキャプチャする時間間隔の調整を行うことを考える。
次に、本発明の第2実施形態に係る情報処理装置について説明する。第1実施形態では、APイベント送信フラグがオンの場合、すなわち、ユーザが表示されたAPを操作している際に画像をキャプチャする時間間隔の調整を行うことを説明した。これに対して、本実施形態では、APを操作している以外の場合であっても、例えば、情報処理装置から何等かの通知が行われるような場合等、画面の更新がある場合においても画像をキャプチャする時間間隔の調整を行うことを考える。
図8及び図9で示したAPイベント送信フラグがオンである以外の場合であっても、情報処理装置101が、何らかの通知を行っている場合に画面を更新することがあり得る。例えば、印刷を行っている場合や情報処理装置に問題が起こった場合には、プリント中であることやエラーメッセージ等の表示が一定の時間間隔で特定の箇所に行われ続けることがある。
図12は、情報処理装置が何らかの通知を行う場合に、キャプチャ画像を取得して描画する処理を説明するためのフローチャートである。
画面情報制御部202は、プリント中や紙詰まり等の様々なイベントをデバイス情報制御部502から受信する(S801)と、アプリケーション部401にデバイスイベント通知(ステータス通知)を行う(S802)。画面情報制御部202は、画面情報格納部203に格納されている拡大モード通知により拡大機能が有効か否かを判断する(S803)。拡大機能が無効の場合(S803:No)、画面情報制御部202は、処理を終了する。拡大機能が有効の場合(S803:Y)、画面情報制御部202は、拡大情報制御部302に対してデバイスイベントの通知を行う(S804)。
拡大情報制御部302は、画面情報制御部202からデバイスイベント通知を受信すると(S805)、APイベント送信フラグをオンに設定する(S806)。ここでは、図8及び図9で示したAPイベント送信フラグを処理に使用しているが、別のモード等を用意してもよい。拡大情報制御部302は、デバイスイベント受信タイマを開始する(S807)。デバイスイベント受信タイマは、デバイスイベントを受信すると0にクリアし、開始されると時間が加算される。デバイスイベントは、何度も連続して受信し、画面も都度更新される場合や、一度イベントを受信した後しばらく画面が更新され続ける場合がある。このため、一度イベントを受信してから一定時間経過したか否かを測るためにデバイスイベント受信タイマを用いる。
拡大情報制御部302は、デバイスイベント受信タイマに基づき一定時間が経過したか否かを判断し(S808)、まだ経過していないと判断した場合には(S808:N)、デバイスイベント受信タイマに時間を加算する処理を続ける。一方、一定時間が経過したと判断した場合(S808:Y)、拡大情報制御部302は、APイベント送信フラグをオフに設定し(S809)、処理を終了する。
なお、本実施形態では、情報処理装置がデバイスイベント通知を行った場合に、画像をキャプチャする時間間隔を所定の時間間隔より短い時間間隔に変更する処理について説明したが、これに限られるものではない。例えば、ユーザがログインしていない状態で、画面が操作されていない場合には、画像をキャプチャする時間間隔を所定の時間間隔より長い時間間隔(例えば、3000msec)に変更することも考えられる。また、このように画面が操作されていない場合であっても、本実施形態で説明したように、デバイスイベント通知が行われた際には、画像をキャプチャする時間間隔を所定の時間間隔に戻すように処理を行ってもよい。
さらに、ユーザがログイン中であって、画面が操作されていない場合に、ユーザがタッチ操作を行っていなければ、例えば、コピー等の出力中、またはメンテナンス動画を再生中である、等と判断し得る。この場合、画像をキャプチャする時間間隔を所定の時間間隔よりも短い時間間隔に変更してもよい。
このように、本実施形態によれば、第1実施形態と同様の効果を奏する。さらに、本実施形態によれば、ユーザによるタッチイベントをAPに対して送信している以外の場合であっても画面の更新がある場合には、画像をキャプチャする周期を早めることにより、表示をリアルタイムに更新することが可能となる。これにより、ユーザに違和感を与えることなく拡大表示を実現することができる。また、例えば、ユーザの操作が画面の操作を行っていない場合など、画面の更新がない場合には、画像をキャプチャする周期を遅らせることにより、CPUの負荷を抑制することも可能となる。
(その他の実施形態)
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
以上、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
101 情報処理装置
110 制御部
201 画面制御部
301 拡大制御部
401 アプリケーション部
110 制御部
201 画面制御部
301 拡大制御部
401 アプリケーション部
Claims (10)
- 画像を生成するアプリケーションと、
前記アプリケーションが生成した画像を所定の周期で繰り返しキャプチャするキャプチャ手段と、前記キャプチャ手段によりキャプチャされた画像を拡大し、拡大した前記画像を表示するように制御する制御手段と、前記拡大した画像を表示中に、該画像に対して行われたユーザの操作に従って、前記操作に対応するイベントを前記アプリケーションに対して送信する送信手段と、
を備え、
前記アプリケーションは、前記送信されたイベントに基づき、生成する画像を更新し、
前記キャプチャ手段は、前記表示中の画像に対するユーザの操作が行われている間、前記ユーザの操作が行われていない間よりも短い周期で画像をキャプチャすることを特徴とする情報処理装置。 - 前記拡大した画像が表示されている際に、前記ユーザが該拡大した画像を操作した場合に、該操作が前記アプリケーションに対する操作か、または前記拡大表示を更新するための操作か、を判断する判断手段をさらに備え、
前記判断手段が、前記操作が前記アプリケーションに対する操作であると判断した場合には、前記変換手段が、前記ユーザが該操作した位置の座標情報を、前記アプリケーションが生成した画像の座標情報に変換し、
前記判断手段が、前記拡大表示を更新するための操作であると判断した場合には、前記制御手段が、該操作に応じた拡大率に基づき、直近にキャプチャされた前記アプリケーションが生成した画像を拡大し、該拡大した画像を表示するように制御する、ことを特徴とする請求項1に記載の情報処理装置。 - 前記キャプチャ手段は、前記判断手段が前記ユーザの前記拡大した画像への操作が前記アプリケーションに対する操作であると判断した場合に、画像をキャプチャする前記所定の時間間隔を短い時間間隔に変更する、ことを特徴とする請求項2に記載の情報処理装置。
- 前記キャプチャ手段は、前記情報処理装置においてステータス通知が行われる場合に、画像をキャプチャする前記所定の時間間隔を短い時間間隔に変更する、ことを特徴とする請求項2または3に記載の情報処理装置。
- 前記判断手段は、前記ユーザが前記拡大した画像に対してタッチダウン操作を行った後に所定の時間が経過してもムーブ操作を行わなかった場合に、該ユーザの操作が前記アプリケーションに対する操作であると判断する、ことを特徴とする請求項2ないし4のいずれか1項に記載の情報処理装置。
- 前記ユーザが前記拡大した画像に対してムーブ操作を行った際に、前記判断手段が、該ムーブ操作が前記拡大表示を更新するための操作であると判断した場合に、
前記制御手段は、前記ムーブ操作の開始から終了までの各移動点において、新たな座標情報を算出し、前記拡大率、及び該算出した座標情報に基づき新たに拡大した画像を表示するように制御する、ことを特徴とする請求項2ないし5のいずれか1項に記載の情報処理装置。 - 前記拡大表示を更新するための操作がフリック操作であった場合に、前記キャプチャ手段は、タッチダウン操作が行われた後に所定の時間が経過するまでの間は、画像をキャプチャする前記所定の時間間隔を短い時間間隔に変更する、ことを特徴とする請求項6に記載の情報処理装置。
- 前記拡大表示を有効にする通知は、前記アプリケーションが処理の結果として生成した画像の一部を拡大するか、または該画像の全体を拡大するかを設定する情報をさらに含む、ことを特徴とする請求項1ないし7のいずれか1項に記載の情報処理装置。
- 拡大表示を有効にする通知を受け付ける受け付け工程と、
前記受け付け工程において前記通知を受け付けた場合に、アプリケーションが処理の結果として生成した画像を所定の時間間隔で繰り返しキャプチャするキャプチャ工程と、
前記拡大表示を有効にする通知に含まれる拡大率、及び座標情報に基づき、直近にキャプチャされた前記アプリケーションが生成した画像を拡大し、該拡大した画像を表示するように制御する制御工程と、
前記拡大した画像が表示されている際に、ユーザが該拡大した画像を操作した位置の座標情報を、前記アプリケーションが生成した画像の座標情報に変換する変換工程と、
前記アプリケーションが、前記変換された座標情報に基づき、該座標情報と関連付けられた処理を実行する実行工程と、を有することを特徴とする情報処理装置の制御方法。 - 請求項1乃至8のいずれか1項に記載の情報処理装置が備える各手段としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017014236A JP2018124631A (ja) | 2017-01-30 | 2017-01-30 | 情報処理装置、制御方法、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017014236A JP2018124631A (ja) | 2017-01-30 | 2017-01-30 | 情報処理装置、制御方法、及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2018124631A true JP2018124631A (ja) | 2018-08-09 |
Family
ID=63109616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017014236A Pending JP2018124631A (ja) | 2017-01-30 | 2017-01-30 | 情報処理装置、制御方法、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2018124631A (ja) |
-
2017
- 2017-01-30 JP JP2017014236A patent/JP2018124631A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6659090B2 (ja) | 情報処理装置、情報処理装置の制御方法、及びコンピュータプログラム | |
KR101567785B1 (ko) | 휴대단말에서 줌 기능 제어 방법 및 장치 | |
US11057532B2 (en) | Image processing apparatus, control method for image processing apparatus, and storage medium | |
JP2022140510A (ja) | 画像処理装置、画像処理装置の制御方法及びプログラム | |
JP2013142751A (ja) | 表示制御装置、その制御方法及びプログラム | |
JP2013105461A (ja) | 情報処理装置及びその制御方法 | |
JP6700749B2 (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP2010101977A (ja) | 画像表示装置、動作制御方法及びプログラム | |
JP2017123125A (ja) | 表示制御装置及びその制御方法、プログラム、並びに記憶媒体 | |
JP7130686B2 (ja) | 情報処理装置、コンピュータプログラム、情報処理装置の制御方法 | |
JP2022026214A (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム | |
JP2017041016A (ja) | 情報処理装置、制御方法、及びプログラム | |
JP2018124631A (ja) | 情報処理装置、制御方法、及びプログラム | |
JP2019020932A (ja) | 情報処理装置、入力制御方法、及びコンピュータプログラム | |
JP7210229B2 (ja) | 表示制御装置、表示制御装置の制御方法及びプログラム | |
JP6206250B2 (ja) | 表示制御装置、画像形成装置およびプログラム | |
KR20110066545A (ko) | 터치스크린을 이용하여 이미지를 표시하기 위한 방법 및 단말 | |
WO2018123701A1 (ja) | 電子機器、その制御方法およびプログラム | |
US20150286399A1 (en) | Information processing apparatus, control method, and storage medium | |
JP7114678B2 (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム | |
JP2016053888A (ja) | 情報処理装置、表示制御方法、及びコンピュータプログラム | |
JP2019046201A (ja) | 情報処理装置 | |
JP2016062209A (ja) | 情報処理装置、表示制御方法、及びコンピュータプログラム | |
JP2019145183A (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム | |
JP2022132508A (ja) | 画像処理装置、画像処理装置の制御方法、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20191125 |