(57)【要約】【課題】注目して表示（フォーカス表示）する領域を変更しながらアノテーションを書き込む場合、注目すべき領域に必要なアノテーションのみを表示させるような画像表示装置を提供する。【解決手段】この画像表示装置は、複数のオブジェクトを含む画像データを表示する画像表示装置であって、オブジェクトをフォーカス表示する表示手段と、オブジェクトに対してアノテーションを入力する入力手段と、入力手段により入力されたアノテーションに対応するオブジェクトと異なるオブジェクトがフォーカス表示される場合、該フォーカス表示されるオブジェクトに応じてアノテーションの表示を変更する変更手段と、を備える。【選択図】図１８
2016038728.tif 000002
【特許請求の範囲】
【請求項１】
複数のオブジェクトを含む画像データを表示する画像表示装置であって、
前記オブジェクトをフォーカス表示する表示手段と、
前記オブジェクトに対してアノテーションを入力する入力手段と、
前記入力手段により入力されたアノテーションに対応するオブジェクトと異なるオブジェクトがフォーカス表示される場合、該フォーカス表示されるオブジェクトに応じて前記アノテーションの表示を変更する変更手段と、
を備える
ことを特徴とする画像表示装置。
【請求項２】
前記変更手段は、ユーザが前記複数のオブジェクトからオブジェクトを選択して前記表示手段によりフォーカス表示する場合、前記選択したオブジェクトに対応するアノテーションのみを表示するように変更する
ことを特徴とする請求項１に記載の画像表示装置。
【請求項３】
前記複数のオブジェクト表示する順番を指定する指定手段
をさらに備え、
前記変更手段は、前記表示手段が前記指定された順番に従って前記複数のオブジェクトを順方向または逆方向に順次フォーカス表示する場合、表示中のオブジェクトとは異なる次のオブジェクトをフォーカス表示する際に前記表示中のオブジェクトに対応するアノテーションの表示を変更する
ことを特徴とする請求項１または２に記載の画像表示装置。
【請求項４】
前記指定手段は、さらに前記入力されたアノテーションを含んだ順番を指定し、
前記変更手段は、前記表示手段が前記指定された順番に従って自動的に順次フォーカス表示する場合、前記アノテーションを含む順番に応じて前記アノテーションの表示を変更する
ことを特徴とする請求項３に記載の画像表示装置。
【請求項５】
前記指定手段は、前記画像データにおける各オブジェクトの位置に応じて、前記順番を指定する
ことを特徴とする請求項３または４に記載の画像表示装置。
【請求項６】
前記変更手段は、表示中のオブジェクトに対応するアノテーションの透過率を下げて、前記表示中のオブジェクトと異なるオブジェクトに対応するアノテーションの透過率を上げることで、前記アノテーションの表示を変更する
ことを特徴とする請求項１〜５のいずれか１項に記載の画像表示装置。
【請求項７】
複数のオブジェクトを含む画像データを表示する画像表示装置の制御方法であって、
前記オブジェクトをフォーカス表示する表示工程と、
前記オブジェクトに対してアノテーションを入力する入力工程と、
前記入力工程において入力されたアノテーションに対応するオブジェクトと異なるオブジェクトがフォーカス表示される場合、該フォーカス表示されるオブジェクトに応じて前記アノテーションの表示を変更する変更工程と、
を有する
ことを特徴とする画像表示装置の制御方法。
【請求項８】
請求項１〜６のいずれか１項に記載の画像表示装置の各手段としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像表示装置、画像表示装置の制御方法、及びプログラムに関し、具体的には、構造化された画像データを他の閲覧者と画面を共有して閲覧するのに適した画像表示装置および画像表示方法に関する。
【背景技術】
【０００２】
画像データをプロジェクタや電子黒板などを使って表示し、リアルタイムで手書き入力されたデータ（アノテーションデータ、または、単にアノテーションとも呼ぶ）を、この表示された画像データに重畳して表示する技術がある。特許文献１は、電子黒板等の画面に表示された画像データにアノテーションを重畳して表示する際に、アノテーションが入力されてからの経過時間が長いほど、そのアノテーションの透過率を上げる技術を開示している。これによって、古いアノテーションが経過時間に応じて徐々に消えていくため、新しいアノテーションと古いアノテーションが重なってしまう場合でも、画面の閲覧者にとって新しいアノテーションに注目することが容易になる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−００４７８３号広報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、画像データの中には、次々と表示が変わる画像データが含まれる。次々と表示が変わる画像データの例として、いわゆるプレゼンテーションアプリケーションにおけるアニメーションが設定されたページが存在する。このようなページに含まれる複数のオブジェクトは、ユーザの操作に応じて順次フォーカスされて画面に表示される。また、次々と表示が変わる画像データの別の例として、ページに含まれる複数のオブジェクトのうちで、ユーザが指定したオブジェクトがフォーカスされて画面に表示されるような画像データも存在する。
【０００５】
そして、フォーカス表示の例として次のような方法がある。例えば、注目すべきオブジェクトの大きさに応じた表示倍率でそのオブジェクトを表示する方法。注目すべきオブジェクトをハイライト表示しつつ他のオブジェクトについてはグレーアウト表示する方法。それまでは隠れていた（見えなかった）注目すべきオブジェクトを見えるように表示する方法などである。
【０００６】
ここで、ページに含まれる複数のオブジェクトのうちのあるオブジェクトがフォーカス表示されている際に、そのオブジェクトを補足説明するためにアノテーションが入力されることが考えられる。このような類のアノテーションは、補足説明の対象である当該オブジェクトがフォーカス表示されている間は、表示されていることが望ましい。しかしながら、特許文献１では、このような類のアノテーションであっても、経過時間に応じて徐々に消えていってしまう恐れがある。また、注目して表示する領域（フォーカス表示する領域）を変更しながらアノテーションを書き込む場合、注目すべき領域にアノテーションが重なって表示されることや、発表者が注目して欲しい領域と異なる領域に視聴者の注目を向けてしまうことがある。
【０００７】
本発明は、上記の問題に鑑みてなされたものであり、注目して表示（フォーカス表示）する領域を変更しながらアノテーションを書き込む場合、注目すべき領域に必要なアノテーションのみを表示させるような画像表示装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明の画像表示装置は、複数のオブジェクトを含む画像データを表示する画像表示装置であって、前記オブジェクトをフォーカス表示する表示手段と、前記オブジェクトに対してアノテーションを入力する入力手段と、前記入力手段により入力されたアノテーションに対応するオブジェクトと異なるオブジェクトがフォーカス表示される場合、該フォーカス表示されるオブジェクトに応じて前記アノテーションの表示を変更する変更手段と、を備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、注目して表示（フォーカス表示）する領域を変更しながらアノテーションを書き込む場合、注目すべき領域に必要なアノテーションのみを表示させるような画像表示装置を提供することができる。これにより、注目すべき領域にアノテーションが重なって表示されることや、発表者が注目して欲しい領域と異なる領域に視聴者の注目を向けてしまうことを防ぐことができる。
【図面の簡単な説明】
【００１０】
【図１】画像表示装置を使用してプレゼンテーションを行う場合の概略図である。
【図２】画像表示装置のハードウェアブロック図である。
【図３】画像表示装置のソフトウェアブロック図である。
【図４】画像表示装置のタッチＵＩの画面表示例を示す図である。
【図５】オブジェクト分割した結果の一例を示す図である。
【図６】各属性のブロック情報および入力ファイル情報を示す表である。
【図７】文書構造ツリー生成処理の対象となる文書を示す図である。
【図８】図７の処理によって生成される文書構造ツリーを示す図である。
【図９】アプリケーション画像データを再生する際のフローチャートである。
【図１０】モード切替処理を示すフローチャートである。
【図１１】画像表示装置のタッチＵＩのアノテーション表示例を示す図である。
【図１２】画像表示装置のタッチＵＩのアノテーション表示例を示す図である。
【図１３】アノテーション生成の処理を示すフローチャートである。
【図１４】次選択処理を示すフローチャートである。
【図１５】オブジェクトの表示状態を示す表である。
【図１６】アノテーションの属性情報を示す表である。
【図１７】前選択処理を示すフローチャートである。
【図１８】拡大表示時のアノテーション変更処理を示すフローチャートである。
【図１９】拡大表示時のタッチＵＩのアノテーション表示例を示す図である。
【図２０】アノテーション変更処理を示すフローチャートである。
【図２１】アニメーションの表示順番を示す表である。
【図２２】タッチＵＩのアノテーションの表示例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について図面などを参照して説明する。
【００１２】
（第１実施形態）
図１は、本実施形態に係る画像表示装置１００を用いてプレゼンテーションを行う際のイメージ図である。本実施形態では、オフィス内の会議室でプレゼンテーションを行うことを想定する。画像表示装置１００は、スマートフォンやタブレット型ＰＣなどの携帯情報端末などの情報処理装置であってよい。発表者は、画像表示装置１００のアプリケーションを操作することによって、所定のフォーマットのデータ（以下ではアプリケーション画像データと呼ぶ）を表示する。アプリケーションの操作方法については後述するため、ここでの詳細な説明を割愛する。画像表示装置１００で表示しているアプリケーション画像データは、ＲＧＢ（（赤（ＲＥＤ）、緑（ＧＲＥＥＮ）、青（ＢＬＵＥ））信号としてプロジェクタに出力される。具体的には、プロジェクタと画像表示装置１００は、ＲＧＢケーブルによって接続され、画像表示装置１００から出力されたＲＧＢ信号は、ＲＧＢケーブルを介してプロジェクタに入力される。プロジェクタは、入力されたＲＧＢ信号をスクリーンに投影する。本実施形態では、画像表示装置１００で表示しているアプリケーション画像データと同じアプリケーション画像データがスクリーンに映し出される。従って、視聴者は、スクリーンを見ることで、画像表示装置１００に表示されているアプリケーション画像データを複数人で共有して閲覧することができる。
【００１３】
なお、本実施形態では、視聴者は、スクリーンを通してアプリケーション画像データを閲覧するとしているが、画像表示装置１００に内包されるディスプレイを通して閲覧してもよい。また、本実施形態では、入力手段としてタッチパネルを内包する画像表示装置１００としているが、画像表示装置１００の操作およびアプリケーション画像データへのアノテーション書き込みが可能であれば、タッチパネルに限定せず、他の入力手段であってよい。なお、以下ではアノテーション書き込みを単にアノテーションと呼ぶ。
【００１４】
図２は、本実施形態に係る画像表示装置１００のハードウェア構成を示すブロック図である。画像表示装置１００は、メインボード２００、ＬＣＤ２０１、タッチパネル２０２、ボタンデバイス２０３から構成される。なお、本実施形態では、ＬＣＤ２０１とタッチパネル２０２をまとめてタッチＵＩ２０４とする。メインボード２００の構成要素は、ＣＰＵ２０５、無線ＬＡＮモジュール２０６、電源コントローラ２０７、ディスプレイコントローラ（ＤＩＳＰＣ）２０８を含む。また、パネルコントローラ（ＰＡＮＥＬＣ）２０９、ＲＯＭ２１０、ＲＡＭ２１１、二次電池２１２、タイマ２１３、ＲＧＢ出力コントローラ２１４を含む。なお、それぞれの構成要素は、バス（不図示）によって相互通信可能に接続されている。
【００１５】
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０５は、バスに接続される各デバイスを制御し、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２１０に記憶されたソフトウェアモジュール３００をＲＡＭ２１１に展開して実行する。なお、ソフトウェアモジュール３００は、後述する。ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２１１は、ＣＰＵ２０５のメインメモリ、ワークエリア、ＬＣＤ２０１に表示するビデオイメージ用エリア、およびアプリケーション画像データの保存領域として機能する。
【００１６】
ディスプレイコントローラ（ＤＩＳＰＣ）２０８は、ＣＰＵ２０５の要求に応じて、ＲＡＭ２１１に展開されたビデオイメージ出力を高速に切り替えるとともに、ＬＣＤ２０１に同期信号を出力する。その結果として、ＲＡＭ２１１のビデオイメージが、ＤＩＳＰＣ２０８の同期信号に同期してＬＣＤ２０１に出力され、ＬＣＤ２０１上にビデオイメージが表示される。
【００１７】
パネルコントローラ（ＰＡＮＥＬＣ）２０９は、ＣＰＵ２０５の要求に応じて、タッチパネル２０２およびボタンデバイス２０３を制御する。これにより、タッチパネル２０２上の指またはスタイラスペンなどの指示物の押下位置や、ボタンデバイス２０３上の押下されたキーコードなどが、ＣＰＵ２０５に通知される。押下位置情報は、タッチパネル２０２の横方向の絶対位置を示す座標値（以下ｘ座標）と、縦方向の絶対位置を示す座標値（以下ｙ座標）から成る。なお、タッチパネル２０２は、複数ポイントの押下を検知することが可能で、その場合ＣＰＵ２０５には押下点数分の押下位置情報が通知される。
【００１８】
電源コントローラ２０７は、外部電源（不図示）と接続され、電力の供給を受ける。これによって、電源コントローラ２０７に接続された二次電池２１２を充電しながら、画像表示装置１００全体に電力を供給する。外部電源から電力が供給されないときは、二次電池２１２からの電力を画像表示装置１００全体に供給する。
【００１９】
無線ＬＡＮモジュール２０６は、ＣＰＵ２０５の制御に基づいて、オフィス（施設など）内に構築されたＬＡＮ（不図示）に接続された無線アクセスポイント（不図示）上の無線ＬＡＮモジュールとの無線通信を確立し、画像表示装置１００との通信を仲介する。無線ＬＡＮモジュール２０６は、例えば、ＩＥＥＥ８０２．１１ｂなどであってよい。
【００２０】
タイマ２１３は、ＣＰＵ２０５の制御に基づいて、後述のジェスチャイベント発生部３０１へのタイマ割込を発生させる。また、画像表示装置１００は、地磁気センサ（不図示）や加速度センサ（不図示）を備え、それぞれバスに接続されている。タイマ２１３は、ＣＰＵ２０５の制御に基づいて、画像表示装置１００の傾きを検知し、画像表示装置１００が所定以上の傾きを得ると、画像表示装置１００の向きを変更し、後述の描画部３０３にＬＣＤ２０１への描画の指示を送る。ＣＰＵ２０５は、前記画像表示装置１００の向きが変更されると、ＬＣＤ２０１の幅および高さを入れ替えて、以下の処理を行う。
【００２１】
すなわち、ＲＧＢ出力コントローラは、ＲＡＭ２１１に展開されたビデオイメージ出力を高速に切り替えるとともに、プロジェクタなどの外部表示装置へＲＧＢビデオイメージ信号を転送する。結果として、ＲＡＭ２１１のビデオイメージが、プロジェクタなどの外部表示装置に出力され、プロジェクタの投影しているスクリーン上にＬＣＤ２０１と同じイメージが表示される。
【００２２】
次に、図３および図４を参照して、本実施形態に係る画像表示装置１００のアプリケーション画像データの操作制御に関わるソフトウェアモジュールについて説明する。図３は、画像表示装置１００のＣＰＵ２０５で実行処理されるソフトウェアモジュール３００の構成を示すブロック図である。また、図４は、本実施形態に係る画像表示装置１００のタッチＵＩ２０４の画面表示例を示す図である。
【００２３】
まず、ソフトウェアモジュール３００を構成する各モジュールについて説明する。ジェスチャイベント発生部３０１は、ユーザのタッチ入力を受けて、各種ジェスチャイベントを発生させ、発生したジェスチャイベントを、ジェスチャイベント処理部３０２へ送信する。なお、本実施形態において、各種ジェスチャイベントとは、タッチ押下イベント、タッチ解除イベント、シングルタップイベント、ダブルタップイベント、スワイプイベント、ピンチインイベント、ピンチアウトイベントなどのジェスチャイベントである。ここで、各種ジェスチャイベントについて説明する。
【００２４】
タッチ押下イベントでは、最新のタッチ座標の座標値とタッチ座標数がジェスチャイベント処理部３０２へ送信される。なお、タッチ座標とは、タッチパネル２０２にユーザの指が触れている１点の座標のことで、ｘ座標とｙ座標で表される１組の座標値を有する。また、タッチ座標数とは、タッチパネル２０２にユーザの指が接触したタッチ座標の数を示している。タッチ座標は、タッチパネル２０２へユーザの指が触れたとき、指が移動したとき、指が離れたとき、タイマ２１３からの割り込みが発生したときに更新される。
【００２５】
タッチ解除イベントは、タッチパネル２０２からユーザの指が離れたときの最新のタッチ座標の座標値および座標数がジェスチャイベント処理部３０２へ送信される。シングルタップイベントは、最新のタッチ座標の座標値がジェスチャイベント処理部３０２へ送信される。シングルタップとは、前述のタッチ押下イベントの後、所定の時間内にタッチ解除イベントが発生したことを示す。ダブルタップイベントは、最新のタッチ座標の座標値がジェスチャイベント処理部３０２へ送信される。ダブルタップとは、所定の時間内に前述のシングルタップイベントが２回発生したことを示す。
【００２６】
スワイプイベントは、最新のタッチ座標の座標値と、最新と直前の座標値の差分から計算した移動距離が送信される。スワイプとは、指先をタッチパネル２０２に接触させたまま、１方向に移動（滑らすような）動作である。ピンチインイベントは、最新の２点のタッチ座標の中心座標値および２点のタッチ座標を結ぶ直線の縮小距離から計算したピンチインの縮小率が送信される。ピンチインとは、２つの指先をタッチパネル２０２に接触させたまま、互いに近づける（つまむような）動作である。ピンチアウトイベントは、最新の２点のタッチ座標の中心座標値および２点のタッチ座標を結ぶ直線の拡大距離から計算したピンチアウトの拡大率が送信される。ピンチアウトとは、２つの指先をタッチパネル２０２に接触させたまま、互いに遠ざける（指を広げるような）動作である。なお、前述のジェスチャイベント発生の仕組みは公知の技術であるため、これ以上の詳細な説明は割愛する。
【００２７】
ジェスチャイベント処理部３０２は、ジェスチャイベント発生部３０１で発生したジェスチャイベントを受信して、各ジェスチャイベントと、アプリケーション画像データに記述された文書構造に応じた操作制御を実行する。描画部３０３は、ジェスチャイベント処理部３０２の実行結果に応じて、アプリケーション画像データをＬＣＤ２０１へ描画する。アプリケーション画像データの表示の方法については後述する。
【００２８】
表示変更イベント処理部３０４は、シングルタップイベントを受信すると、シングルタップイベントのタッチ座標の座標値が、図４に示すモード切替ボタン４０１、次へボタン４０２、前へボタン４０３、描くボタン４０４の何れかの上にあるかを判定する。そして、シングルタップイベントのタッチ座標が「モード切替ボタン」４０１上である場合、後述するモード切替処理を行う。また、タッチ座標が「次へボタン」４０２上である場合、後述する「次選択処理」（次へボタン選択処理）を行い、タッチ座標が「前へボタン」４０３上である場合、後述する「前選択処理」（前へボタン選択処理）を行う。タッチ座標が「描くボタン」４０４上である場合、後述する「アノテーション描画処理」（描くボタン選択処理）を行う。ただし、「描くボタン」４０４は、後述するプレゼンテーション表示モードのときのみ表示されている。「次選択処理」と「前選択処理」は、表示変更イベント処理部３０４内の表示順番制御部３０５と注目領域制御部３０６において行われる。具体的には、表示順番制御部３０５が指定したオブジェクトの順番に従って、「次選択処理」では、順方向に、「前選択処理」では、逆方向にオブジェクトを順次フォーカス表示する。「アノテーション描画処理」は、アノテーション表示制御部３０７において行われる。
【００２９】
スワイプイベント処理部３０８は、スワイプイベントに対する処理を行う。ジェスチャイベント処理部３０２がスワイプイベントを受信すると、スワイプイベントの移動距離に応じて、タッチＵＩ２０４上の座標で、ページ４００の始点を移動させる。そして、その上でタッチＵＩ２０４の表示状態を更新する。拡大・縮小イベント処理部３０９は、ピンチインイベントと、ピンチアウトイベントに対する処理を行う。ジェスチャイベント処理部３０２は、ピンチインイベントやピンチアウトイベントを受信すると、前述の２つのイベントの縮小率もしくは拡大率に応じてページ４００のページ始点および表示倍率を制御した後、タッチＵＩ２０４の表示状態を更新する。
【００３０】
次に、画像表示装置１００で表示するための所定のフォーマットのデータであるアプリケーション画像データの生成方法について説明する。アプリケーション画像データは、複数種類の機能（複写機能、印刷機能、送信機能等）を実現する複合機であるＭＦＰ（不図示）の画像読み取り部により取得される。もしくは、ＰＣなどの情報処理装置であるクライントＰＣ（不図示）上においてアプリケーションソフトで作成されたドキュメントをＭＦＰ内部でレンダリングして生成される。ＭＦＰおよびクライアントＰＣは、オフィス（施設など）内に構築されたＬＡＮ（不図示）に接続され、互いにデータを送受信することができる。
【００３１】
まず、ＭＦＰの画像読み取り部で取得された、またはクライアントＰＣ上のアプリケーションで作成されたビットマップ画像データを属性毎のオブジェクトに分割するオブジェクト分割処理を行う。オブジェクト分割後のオブジェクトの属性種類は、文字、写真、グラフィック（図面、線画、表、ライン）を指す。分割された各々のオブジェクトに対して、オブジェクトの種類（文字、写真、グラフィック）を判定する。
【００３２】
次に、当該オブジェクトが文字であるか否かを判定し、文字の場合には、更にＯＣＲ処理を施し、文字コード化されたデータ（ＯＣＲ結果の文字コードデータ）を取得する。なお、ＯＣＲは、公知の技術であるため、詳細な説明は割愛する。分割した各々のオブジェクトに対して、オブジェクトの位置情報を用いてビットマップ画像データから当該オブジェクトの領域を切り出し、オブジェクト画像を生成する。オブジェクト画像は、データ量を抑えつつ好適な画質を維持するように、オブジェクトの属性種類に応じた解像度変換が行われる。
【００３３】
次に、ビットマップ画像データを解像度変換して、ビットマップ画像データよりも解像度の低い背景画像を生成する。本実施形態では、ニアレストネイバー法を用いて１／４の解像度、すなわち、ビットマップ画像データが６００ｄｐｉである場合に、１５０ｄｐｉの背景画像を生成する。なお、解像度変換の方法は、ニアレストネイバー法に限るものではなく、例えば、バイリニア法やバイキュービック法といった高精度な補間方法を用いてもよい。そして、生成されたビットマップ画像データよりも解像度の低い背景画像を用いて、ＪＰＥＧ圧縮した背景画像を生成する。後述する文書構造ツリーを元に各オブジェクトのデータと、背景画像のデータと、文字コードデータを取得し、画像表示装置１００が表示可能なアプリケーション画像データを生成する。なお、アプリケーション画像データの生成方法は公知の技術であるため、これ以上の詳細な説明を割愛する。
【００３４】
次に、図５および図６を参照して、オブジェクト分割について、詳細に説明する。図５は、オブジェクト分割処理によって、ビットマップ画像データを複数のオブジェクトに分割した結果の一例を示す図である。図６は、オブジェクト分割したときの各オブジェクトのブロック情報および入力ファイル情報を示す表である。
【００３５】
まず、入力画像（図５の左側）に対してオブジェクト分割処理を行うことにより、属性ごとに矩形ブロックに分割する（図５の右側）。前述のように、矩形ブロックの属性としては、文字、写真、グラフィック（図面、線画、表、ライン）等である。オブジェクト分割処理の一手法としては、例えば、以下のような手法がある。
【００３６】
まず、ＭＦＰ内のＲＡＭ（不図示）に格納されたイメージデータを白黒に２値化し、黒画素輪郭で囲まれる画素塊を抽出する。そして、抽出された黒画素塊の大きさを評価し、大きさが所定値以上の黒画素塊の内部にある白画素塊に対する輪郭追跡を行う。白画素塊に対する大きさ評価、内部黒画素塊の追跡というように、内部の画素塊が所定値以上である限り、再帰的に内部画素塊の抽出、輪郭追跡を行う。画素塊の大きさは、例えば、画素塊の面積によって評価される。このようにして得られた画素塊に外接する矩形ブロックを生成し、矩形ブロックの大きさ、形状に基づき属性を判定する。例えば、縦横比が１に近く、大きさが一定の範囲の矩形ブロックは、文字領域矩形ブロックの可能性がある文字相当ブロックとする。また、近接する文字相当ブロックが規則正しく整列しているときに、これら文字相当ブロックを纏めた新たな矩形ブロックを生成し、新たな矩形ブロックを文字領域矩形ブロックとする。また、扁平な画素塊、または一定大きさ以上でかつ四角形の白画素塊を整列よく内包する黒画素塊をグラフィック領域矩形ブロック、それ以外の不定形の画素塊を写真領域矩形ブロックとする。
【００３７】
以上のように生成された矩形ブロックのそれぞれについて、図６に示す属性等のブロック情報および入力ファイル情報を示す表を生成する。図６において、ブロック情報には、各ブロックの属性、位置の座標Ｘ、座標Ｙ、幅Ｗ、高さＨ、ＯＣＲ情報が含まれる。属性は、１〜３の数値で与えられる。本実施形態では、１は、文字領域矩形ブロック、２は、写真領域矩形ブロック、３は、グラフィック領域矩形ブロックを示す。座標Ｘ、座標Ｙは、入力画像における各矩形ブロックの始点のＸ、Ｙ座標（左上角の座標）である。幅Ｗ、高さＨは、矩形ブロックのＸ座標方向の幅、Ｙ座標方向の高さである。ＯＣＲ情報は、ＯＣＲ処理で文字コード化されたデータへのポインタ情報の有無を示す。さらに、入力ファイル情報として矩形ブロックの個数を示すブロック総数Ｎも保存される。
【００３８】
これらの矩形ブロック毎のブロック情報は、後述のアプリケーション画像データ生成処理に利用される。また、ブロック情報によって、特定領域とその他の領域を重ねる際の相対位置関係を特定でき、入力画像のレイアウトを損なわずに各領域を重ねることが可能となる。なお、オブジェクト分割の方法は公知の技術であるため、これ以上の詳細な説明を割愛する。
【００３９】
次に、図７および図８を参照して、文書構造ツリー生成処理について説明する。図７は、文書構造ツリーの対象となる文書の一例を示す図であり、図８は、文書構造ツリー生成の処理によって生成される文書構造ツリーを示す図である。なお、文書構造ツリー生成は、ＭＦＰによるアプリケーション画像データ生成の過程で行われる処理である。
【００４０】
まず、ＭＦＰは、矩形ブロック単位で、縦方向の関連性に基づいて、矩形ブロックを再グループ化する。例えば、図７の文書では、最上部で、矩形ブロックＴ１、Ｔ２が横方向に並列されている。矩形ブロックＴ１、Ｔ２の下には横方向セパレータＳ１が存在し、横方向セパレータＳ１の下に矩形ブロックＴ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７が存在する。矩形ブロックＴ３、Ｔ４、Ｔ５は、横方向セパレータＳ１下側の領域における左半部において上から下に、縦方向に配列され、矩形ブロックＴ６、Ｔ７は、横方向セパレータＳ１下側の領域における右半部において上下に配列されている。縦方向の関連性に基づくグルーピングの処理を実行すると、矩形ブロックＴ３、Ｔ４、Ｔ５が１個のグループ（矩形ブロック）Ｖ１にまとめられ、矩形ブロックＴ６、Ｔ７が１個のグループ（矩形ブロック）Ｖ２にまとめられる。グループＶ１、Ｖ２は同一階層となる。
【００４１】
次に、縦方向のセパレータの有無をチェックする。セパレータは、ライン属性を持つオブジェクトであり、明示的にブロックを分割する機能を有する。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として左右に分割する。なお、本実施形態において、図７では、縦方向のセパレータは存在しない。
【００４２】
次に、縦方向のグループ高さの合計が入力画像の高さに等しくなったか否かを判定する。すなわち、縦方向（例えば、上から下）に処理対象の領域を移動しながら、横方向のグルーピングを行う場合、入力画像全体の処理が終了したときには、グループ高さ合計が入力画像高さになることを利用し、処理の終了判定を行ってよい。グルーピングが終了した場合、そのまま処理を終了し、グルーピングが終了していない場合、横方向の関連性に基づくグルーピング処理に進む。
【００４３】
横方向のグルーピング処理によって、例えば、図７に示す矩形ブロックＴ１、Ｔ２が１個のグループ（矩形ブロック）Ｈ１にまとめられ、矩形ブロックＶ１、Ｖ２が１個のグループ（矩形ブロック）Ｈ２にまとめられる。なお、グループＨ１、Ｈ２は、同一階層となる。次に、横方向のセパレータの有無をチェックする。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として上下に分割する。図７では横方向のセパレータＳ１が存在する。以上の処理結果は、図８に示すツリーとして登録される。
【００４４】
図８において、入力された１ページのビットマップ画像データＶ０は、最上位階層にグループＨ１、Ｈ２、セパレータＳ１を有し、グループＨ１には、第２階層の矩形ブロックＴ１、Ｔ２が属する。グループＨ２には、第２階層のグループＶ１、Ｖ２が属し、グループＶ１には、第３階層の矩形ブロックＴ３、Ｔ４、Ｔ５が属し、グループＶ２には、第３階層の矩形ブロックＴ６、Ｔ７が属する。本実施形態において、Ｖ０は、ページを表し、Ｖ０の下位階層にあるものがオブジェクトとなる。
【００４５】
最後に、横方向のグループ長合計が入力画像の幅に等しくなったか否かを判定する。これによって、横方向のグルーピングに関する終了の判定を行う。横方向のグループ長がページ幅となっている場合、文書構造ツリー生成の処理を終了する。横方向のグループ長がページ幅となっていない場合、最初の処理に戻り、再び、もう一段上の階層で、縦方向の関連性チェックから繰り返す。
【００４６】
次に、図４および図９を参照して、本実施形態に係る画像表示装置１００のアプリケーション画像データ再生時の処理について説明する。図９は、画像表示装置１００がアプリケーション画像データを再生する際のフローチャートである。
【００４７】
まず、ステップＳ９０１において、画像表示装置１００は、無線ＬＡＮモジュール２０６を介してＭＦＰからアプリケーション画像データを受信すると、ＲＡＭ２１１に受信したアプリケーション画像データを保存する。次に、ステップＳ９０２において、ＲＡＭ２１１に保存したアプリケーション画像データの構文を解析し、先頭ページを読み込む。次に、ステップＳ９０３において、描画部３０３は、読み込んだ先頭ページに含まれる背景を、領域情報の始点の座標と幅、高さに応じてレンダリングしてタッチＵＩ２０４の表示状態を更新する。
【００４８】
このとき、先頭ページは、図４のページ４００に示すように、ページ４００の高さがタッチＵＩ２０４の高さに、またはページ４００の幅がタッチＵＩ２０４の幅に合うように表示倍率が制御される。また、当該表示倍率に縮小したときのページの幅、または高さがタッチＵＩ２０４よりも小さい場合は、タッチＵＩ２０４の中央に表示されるように、タッチＵＩ２０４上の座標において、ページ４００の始点が制御される。このように、タッチＵＩ２０４においてページ全体を表示する表示制御方法を、本実施形態では、ページ表示モードと呼ぶ。
【００４９】
次に、図１０、図１１、図１２、および図１５を参照して、表示変更イベント処理部３０４において行われるモード切替処理について説明する。図１０は、モード切替処理のフローチャートである。図１１および図１２は、本実施形態に係る画像表示装置１００のタッチＵＩ２０４の画面表示例である。図１５は、図１１および図１２のタッチＵＩ２０４の画面表示例のオブジェクトの表示状態を示す表である。
【００５０】
まず、ステップＳ１００１で、表示変更イベント処理部３０４は、モード切替ボタンが指示された時点で、画像表示装置１００に設定中の表示モードを取得する。表示モードとは、画像表示装置１００がアプリケーション画像データをタッチＵＩ２０４に表示する方法を示し、本実施形態に係る画像表示装置１００は、次の２つの表示モードを有する。第１の表示モードは、ページ全体を表示するのに適した前記ページ表示モードである。第２の表示モードは、図１１および図１２に示すように、ページ内の一部の領域（すなわちページ画像内の各オブジェクト）を注目が集まりやすいようにハイライトして表示する（フォーカス表示する）のに適したプレゼンテーション表示モードである。前述した通り、画像表示装置１００がアプリケーション画像データを受信した直後は、ページ表示モードが設定されている。プレゼンテーション表示モードは、図１１および図１２に示す通り、ページ４００内の各オブジェクトがハイライトして表示されるようにページ４００の注目領域を表示するモードである。なお、本実施形態では、注目領域を注目対象、あるいは、注目オブジェクトと呼ぶことがあるが、それらは同じことを意味する。
【００５１】
ここで、文字オブジェクト１１０１を注目領域のオブジェクトとして選択したときに表示される画面を図１１（Ｂ）に示す。なお、図１１（Ａ）のオブジェクト１１０１〜１１０４を囲む破線は、説明をわかり易くするために描いたもので、実際のページ４００上には存在しない。また、本実施形態では、オブジェクトの表示状態を明確に判別するため、オブジェクトにＩＤを割り当てた表を生成する。例えば、図１１および図１２のオブジェクト１１０１〜１１０４は、それぞれオブジェクトＩＤ：１〜４に割り当てられ、該当するオブジェクトＩＤの表示状態は、後述する図１５の表で示される。なお、図１５のオブジェクトＩＤは、文書構造ツリーを元に、表示順に生成される。すなわち、図１１および図１２のアプリケーション画像データの文書構造ツリー（不図示）より、オブジェクト１１０１〜１１０４が順番に表示されるとすると、オブジェクト１１０１〜１１０４の順番に対応付けられてオブジェクトＩＤ０１〜０４が割り当てられる。
【００５２】
本実施形態では、図１１（Ｂ）に示すように、注目対象のオブジェクト１１０１以外のオブジェクト１１０２〜１１０４に対して、それぞれ不透明であるマスク１１０５〜１１０７を、ページ４００の上に重ねて表示する。これによって、注目対象のオブジェクト１１０１だけが見やすくなるようにしている。このようなマスクを重ねて表示することにより、対象のオブジェクト以外が表示されないので、対象のオブジェクトが強調表示され、ユーザは表示対象になっているオブジェクトの領域を特定しやすくなる。なお、本実施形態では、対象のオブジェクト以外に白色不透明のマスクを重ねて表示しているが、背景が白色以外の場合であっても予め背景色を取得しておくことで、背景の色に合ったマスクを表示してもよい。
【００５３】
まず、ステップＳ１００１で、表示変更イベント処理部３０４は、モード切替ボタン４０１が指示されたときに設定中（現在）の表示モードがプレゼンテーション表示モードかページ表示モードであるかを判定する。そして、設定中の表示モードがプレゼンテーション表示モードである場合、ステップＳ１００２に進み、ページ表示モードである場合、ステップＳ１００５に進む。
【００５４】
次に、ステップＳ１００２で、表示変更イベント処理部３０４は、図１１（Ｂ）のマスク１１０５を非表示設定（マスクＯＦＦ）にして、ページ表示モードへの切り替えを行う。次に、ステップＳ１００３で、表示変更イベント処理部３０４は、タッチＵＩ２０４の高さに合わせてページ４００の表示倍率を制御するとともに、ページ４００の始点を制御して、ページの表示範囲を決定する。そして、ステップＳ１００４で、表示変更イベント処理部３０４は、決定したページの表示範囲に基づいて、タッチＵＩ２０４の表示状態を更新する。一方、設定中の表示モードがページ表示モードである場合、ステップＳ１００５で、表示変更イベント処理部３０４は、表示モードをプレゼンテーション表示モードへ切り替え、マスク１１０５〜１１０７を表示する設定（マスクＯＮ）に変更する。
【００５５】
次に、ステップＳ１００６で、表示変更イベント処理部３０４は、ページ４００内の先頭オブジェクトを読み込み、先頭オブジェクトの始点と幅、高さを取得する。ここで、先頭オブジェクトとは、アプリケーション画像データの文書構造ツリーにおいて、最初に読み込まれるオブジェクトである。次に、ステップＳ１００７で、表示変更イベント処理部３０４内の注目領域制御部３０６は、注目領域決定処理を行い、そして、ステップＳ１００４で、決定したマスク領域に基づいてタッチＵＩ２０４の表示状態を更新する。
【００５６】
なお、ステップＳ１００７の注目領域決定処理では、ステップＳ１００６で読み込んだ先頭オブジェクトを注目領域とし、タッチＵＩ２０４にマスクを重ねて表示するオブジェクトを決定する。例えば、図１１（Ｂ）では、このとき表示対象となっているオブジェクト１１０１以外のオブジェクト１１０２〜１１０４にそれぞれマスク１１０５〜１１０７がかけられるので、ユーザは、注目対象となっているオブジェクト１１０１を識別しやすくなる。また、このときオブジェクトの表示状態を示す表は、図１５（Ａ）のように生成される。具体的には、オブジェクト１１０１（オブジェクトＩＤ：０１）の注目状態フラグを注目されている状態を示す１に設定し、既表示フラグをオブジェクトが既に読み込み表示されたことを示す１に設定する。さらに、オブジェクト１１０２〜１１０４（オブジェクトＩＤ：０２〜０４）は、注目状態フラグを注目されていない状態を示す０に設定し、既表示フラグをオブジェクトが未だ読み込み表示されていないことを示す０に設定する。これによって、アプリケーションは、注目表示するオブジェクト領域、不透明マスクによって表示しないオブジェクト領域、後述する半透明マスクをかけるオブジェクト領域を明確に判別することができる。
【００５７】
次に、図１１、図１２、図１３、および図１６を参照して、アノテーション表示制御部３０７において行われるアノテーション表示処理について説明する。図１３は、アノテーション生成のフローチャートである。図１６は、図１１および図１２のアノテーション表示例におけるアノテーションの属性情報を示す表である。
【００５８】
まず、ステップＳ１２０１で、プレゼンテーション表示モード時に描くボタン４０４がタップされると、表示変更イベント処理部３０４は、描くボタン４０４以外のボタン４０１〜４０３への入力をＯＦＦにして、アノテーション書き込みモードへ切り替える。なお、本実施形態において、「描くボタン」４０４は、プレゼンテーション表示モード時とアノテーション書き込みモード時にのみ表示され、ページ表示モード時にはタップできない。アノテーション書き込みモードは、例えば、図１１（Ｂ）で示すページ４００内にタッチＵＩ２０４を介して手動で書き込みを行うモードである。
【００５９】
ここで、ユーザがページ４００内にアノテーションの書き込みを行ったときに表示される画面の例を図１１（Ｃ）に示す。図１１（Ｃ）の破線で囲まれた矩形領域が、書き込まれたアノテーション１１０８の領域である。ただし、図１１（Ｃ）の破線は、アノテーション領域をわかり易く示すために描いたもので、実際のページ４００上には存在しない。また、本実施形態では、アノテーションの表示状態を制御するため、後述する図１６（Ａ）の表を生成する。
【００６０】
次に、ステップＳ１２０２で、描くボタン４０４がタップされたか否かを判定する。描くボタン４０４がタップされた場合（ＹＥＳ）、ステップＳ１２０３へ進み、描くボタン４０４がタップされない場合（ＮＯ）、ステップＳ１２０７へ進む。なお、本実施形態では、アノテーション書き込みモード時に描くボタン４０４がタップされると、アノテーション書き込みモードの終了処理に移行する。すなわち、描くボタン４０４が再度タップされない限り、アノテーション書き込みモードからプレゼンテーション表示モードへ移行することはない。
【００６１】
次に、ステップＳ１２０３で、書き込まれたアノテーション描画から、アノテーション画像を生成する。本実施形態では、アノテーション画像として、透過率を自由に設定可能なｐｎｇファイルを生成する。ただし、透過率を設定可能な画像ファイルであれば、ｐｎｇファイルに限定することなく、他のファイルであってよい。次に、ステップＳ１２０４で、ステップＳ１２０３で生成されたアノテーション画像の属性情報を生成する。例えば、図１１（Ｃ）のアノテーション１１０８の属性情報は、図１６（Ａ）に示す表のように生成される。
【００６２】
ここで、図１６（Ａ）のアノテーションの属性情報を示す表について説明する。図１６（Ａ）のアノテーションＩＤは、生成されるアノテーション画像毎に固有の値が割り当てられる。ページは、アノテーション画像の書き込まれたアプリケーション画像データのページを示す。対応オブジェクトＩＤは、アノテーション画像が書き込まれたときに図１５の注目状態フラグが１のオブジェクトＩＤである。すなわち、アノテーション画像が書き込まれたときに注目表示されているオブジェクトのＩＤを示す。透過率は、書き込まれたアノテーション画像の透過率を表し、０[％]であれば完全に見える不透明な状態を、１００[％]であれば完全に透明な見えない状態を示す。以上から、図１１（Ｃ）のアノテーション１１０８は、オブジェクト１１０１（オブジェクトＩＤ：０１）が注目表示されているときに書き込まれたアノテーション画像のため、アノテーション属性情報の対応オブジェクトＩＤが０１となる。また、図１１（Ｃ）では、オブジェクト１１０１が注目対象であるため、アノテーション１１０８の透過率属性は不透明な状態（０％）となる。なお、透過率の制御の詳細な説明については後述する。
【００６３】
アノテーション画像とアノテーションの属性情報は、組になったアノテーションとして保持される。そして、アノテーションの属性情報が書き換えられることで、アノテーション画像の制御を行うことができる。また、アノテーション属性情報は、アノテーションの書き込み位置情報も保持する。具体的には、アノテーション属性情報は、オブジェクトのブロック情報と同様にして、各アノテーションの位置の座標Ｘ、座標Ｙ、幅Ｗ、高さＨを含む。図１６では、簡単のためアノテーションの位置情報を割愛する。以後、アノテーションと述べるときは、アノテーション画像とアノテーション属性情報の組のことを述べていることとする。
【００６４】
次に、ステップＳ１２０５で、画像表示装置１００はアノテーション書き込みモードを終了し、プレゼンテーション表示モードへ切り替える。本実施形態では、ステップＳ１２０１でアノテーション書き込みモードに移行する直前のオブジェクト表示状態に移行する。例えば、アノテーション書き込みモードへ移行する直前の状態が図１１（Ｂ）のオブジェクト１１０１を注目表示している状態であれば、それと同じオブジェクト表示状態のプレゼンテーション表示モードへ移行する。次に、ステップＳ１２０６で、生成されたアノテーションに基づいてタッチＵＩ２０４の表示状態を更新する。例えば、図１１（Ｂ）にアノテーション１１０８が書き込まれた場合、図１１（Ｃ）の表示状態となる。
【００６５】
一方、ステップＳ１２０７で、アノテーション表示制御部３０７は、タッチＵＩ２０４へのタッチ押下イベント（入力）を検知したか否かを判定する。タッチ押下イベントを検知した場合（ＹＥＳ）、ステップＳ１２０８へ進み、タッチ押下イベントを検知しない場合（ＮＯ）、ステップＳ１２０２へ戻る。
【００６６】
そして、ステップＳ１２０８で、ステップＳ１２０７でタッチＵＩ２０４へタッチ入力された座標値にもとづいて、アノテーションの描画処理を行う。例えば、タッチ入力に応じて、図１１（Ｃ）に示すアノテーション１１０８の描画表示を行う。なお、本実施形態では、アノテーションの線幅や色を固定で表示しているが、それらの値は、ユーザによる設定変更（不図示）で自由に変えることが可能である。
【００６７】
次に、「次へボタン」４０２がユーザによりタップ（指定）されたときに実行される「次選択処理（次へボタン選択処理）」について、図１１、図１２、図１４、図１５、および図１６を参照して説明する。図１４は、次選択処理のフローチャートである。
【００６８】
まず、表示変更イベント処理部３０４は、「次へボタン」４０２がタップされた際の画像表示装置１００に設定されている表示モードを取得する。そして、ステップＳ１３０１で、取得した表示モードがプレゼンテーション表示モードであるかページ表示モードであるかを判定する。取得した表示モードがプレゼンテーション表示モードである場合、ステップＳ１３０２に進み、ページ表示モードである場合、ステップＳ１３０８に進む。次に、ステップＳ１３０２で、表示順番制御部３０５は、現在読み込んでいるページの全オブジェクトから、文書構造ツリーに基づいて次に表示すべきオブジェクトを選択し、そのオブジェクトを読み込む。
【００６９】
ここで、オブジェクトの表示順番について説明する。本実施形態において、文書ツリー構造上の表示順番は、文書ツリー構造において、先頭の上位階層の最下位階層に属するオブジェクト、次にそのオブジェクトの同階層に属するオブジェクトの順である。さらに、その同階層のオブジェクトの表示が全て終わった後、次の上位階層の最下位階層に属するオブジェクト、次にその同階層のオブジェクト、というような順番であるとする。
【００７０】
例えば、図８において、Ｖ０は、ページを示し、最初に読み込まれるオブジェクトは、Ｔ１である。Ｔ１のオブジェクトがプレゼンテーション表示モードでタッチＵＩ２０４に表示されている状態で、「次選択処理」が行われると、Ｔ１は、同階層を有するため、Ｔ２のオブジェクトが読み込まれる。さらに、Ｔ２のオブジェクトが表示されている状態で「次選択処理」が行われると、Ｔ２は、同階層に次のオブジェクトが存在しないため、次の上位階層のＳ１が読み込まれる。この場合、Ｓ１は、下位階層を有していないため、Ｓ１が最下位階層ということになる。なお、本実施形態において、文字属性のオブジェクトのみなど、特定の属性を有するオブジェクトのみを選択したり、特定の属性のみを除外して選択することも可能である。また、図１５に示すオブジェクトＩＤの順番は、表示順番に対応して生成される。
【００７１】
次に、ステップＳ１３０３で、表示順番制御部３０５は、ステップＳ１３０２で次のオブジェクトを読み込めたか否かを判定する。すなわち、選択可能なオブジェクトがあるか否かでオブジェクトが終了したか否かを判定する。次のオブジェクトが読み込めた場合（選択可能なオブジェクトがあった場合：ＮＯ）、読み込んだオブジェクトを処理対象としてステップＳ１３０４に進む。一方、次のオブジェクトが読み込めない場合（選択可能なオブジェクトがない場合：ＹＥＳ）、ステップＳ１３０７に進む。
【００７２】
次に、ステップＳ１３０４の注目領域決定処理で、ステップＳ１３０２において処理対象として読み込んだ次オブジェクトを注目領域とし、タッチＵＩ２０４にマスク領域を重ねて表示するオブジェクトを決定する。例えば、図１１（Ｂ）のオブジェクト１１０１の次のオブジェクトとして、オブジェクト１１０２を注目対象のオブジェクトとして選択した場合に表示される画面を図１２（Ｅ）に示す。本実施形態では、図１２（Ｅ）に示すように、注目対象のオブジェクト１１０２の後に注目対象となるオブジェクト１１０３および１１０４に対して、それぞれ不透明であるマスク１１０６および１１０７をページ４００の上に重ねて表示する。また、オブジェクト１１０１は、オブジェクト１１０２の表示前に既に注目対象のオブジェクトとして表示されているため、半透明な白である半透明マスク１１０９を、ページ４００の上に重ねて表示する。これによって、既に表示したオブジェクトは、表示したことを示しつつ目立たないように表示し、現在注目したい対象であるオブジェクト１１０２を見やすく表示できる。なお、図１２（Ｅ）、および後述する図１１（Ｄ）および図１２（Ｆ）のオブジェクト表示状態は、図１５（Ｂ）として表される。図１２（Ｅ）では、オブジェクト１１０２（オブジェクトＩＤ：０２）が新たな注目対象であるため、図１５（Ｂ）の注目状態フラグおよび既表示フラグは、１に設定される。また、図１２（Ｅ）の半透明マスク１１０９は、図１５（Ｂ）の注目状態フラグが０、かつ、既表示フラグが１と設定された際に表示される。同様にして、図１２（Ｅ）の不透明マスクは、図１５の注目状態フラグが０、かつ、既表示フラグが０に設定された際に表示される。
【００７３】
次に、ステップＳ１３０５で、アノテーションの変更処理を行う。単純には、アノテーションの削除を行う。例えば、図１１（Ｃ）で書き込まれたアノテーション１１０８は、アノテーション変更処理で削除され、ステップＳ１３０６の表示状態の更新後に図１２（Ｅ）のように表示される。これによって、次に表示するオブジェクト１１０２が注目対象の場合に、アノテーションが重なって表示されることがなくなる。従って、視聴者に見やすい表示が可能になる。また、別のアノテーション変更処理として、削除するのではなく、アノテーションの属性情報である透過率を変更するようにしてもよい。例えば、図１１（Ｃ）で書き込まれたアノテーション１１０８の属性情報の透過率を図１６（Ｂ）のように９５％に変更する。こうすることで、ステップＳ１３０６の表示状態の更新後にアノテーション１１０８は、図１２（Ｆ）のように透過して表示されるので、オブジェクト１１０２の表示の妨げにならず、視聴者によって見やすい表示ができる。
【００７４】
なお、対比のため、ステップＳ１３０５のアノテーション変更処理を行わなかった場合の表示例を図１１（Ｄ）に示す。この場合、アノテーション変更処理を行った場合に比べ、オブジェクト１１０２がアノテーション１１０８によって見づらくなってしまうことが分かる。なお、本実施形態では、透過率を９５％に変更するとしたが、例えば、透過率を１００％にすることで、完全に見えなくなるようにしてもよく、透過率は任意の値に設定できる。透過率を変更する場合では、アノテーションを削除しないので、アノテーションをアプリケーション画像データと共に残すことができる。従って、属性情報として対応オブジェクトＩＤを保持しているため、アプリケーション画像データを後で同じように表示する場合や、後述する前へボタン選択処理時に、アノテーションを注目オブジェクトに連動して表示することができる。また、本実施形態では、アノテーションの透過率を変えるとしたが、線幅、色、レイヤーなどを変えることによって見やすい表示を行うようにしてもよく、アノテーション変更処理を透過率に限るものではない。
【００７５】
次に、ステップＳ１３０６で、決定した注目領域の処理およびアノテーションの変更処理に基づいて、タッチＵＩ２０４の表示状態を更新する。一方、ステップＳ１３０２で、次のオブジェクトが読み込めなかった場合（次に選択可能なオブジェクトが無かった場合）は、既にページ内の最終オブジェクトが読み込まれている状態である。従って、ステップＳ１３０３で、全てのオブジェクトの表示処理が終了したと判定し、ステップＳ１３０７に進む。そして、ステップＳ１３０７で、表示順番制御部３０５は、プレゼンテーション表示モードを終了してマスク１１０５〜１１０９を非表示にし、ページ表示モードへと切り替える。
【００７６】
次に、ステップＳ１３０８で、表示モードがページ表示モードであるので、ＲＡＭ２１１に保存したアプリケーション画像データの構文を解析し、次のページと、それに含まれるオブジェクトを読み込む。次に、ステップＳ１３０９で、表示順番制御部３０５は、ステップＳ１３０８で次のページが読み込めたか否かを判定する。すなわち、次のページが読み込めた否かでページが終了したか否かを判定する。次のページが読み込めた場合（ＮＯ）、ステップＳ１３１０に進む。一方、既にＲＡＭ２１１に保存したアプリケーション画像データの最終ページが読み込まれている状態であり、Ｓ１３０８で次に読み込み可能なページが無い（次のページが読み込めない）場合（ＹＥＳ）、ステップＳ１３１１に進む。そして、ステップＳ１３１１で、ＲＡＭ２１１に保存したアプリケーション画像データの構文を解析し、先頭ページと、それに含まれるオブジェクトを読み込む。次に、ステップＳ１３１０で、表示変更イベント処理部３０４は、タッチＵＩ２０４の高さに合わせてページ４００の表示倍率を制御すると共に、ページ４００の始点を制御して、ページの表示範囲を決定する。そして、ステップＳ１３０６で、タッチＵＩ２０４の表示状態を更新する。
【００７７】
次に、「前へボタン」４０３がユーザによりタップ（指定）されたときに実行される「前選択処理（前へボタン選択処理）」について、図１７の前選択処理を示すフローチャートを参照して説明する。前選択処理は、図１６のステップＳ１３０１、ステップＳ１３０３、ステップＳ１３０６、ステップＳ１３０７、ステップＳ１３０９、およびステップＳ１３１０と同じ処理を行う。従って、ここでは、図１６の処理と異なるステップＳ１６０１〜Ｓ１６０５についてのみ説明する。
【００７８】
まず、ステップＳ１３０１で、現在の表示モードがプレゼンテーション表示モードである場合、ステップＳ１６０１に進む。そして、ステップＳ１６０１で、表示順番制御部３０５は、現在読み込んでいるページの全オブジェクトから、文書構造ツリーに基づいて次に表示すべきオブジェクトを選択し、そのオブジェクトを読み込む。本実施形態において、前へボタン４０３が指定されたときの文書ツリー構造上の表示順番は、文書ツリー構造において末尾の下位階層のオブジェクト、そのオブジェクトの末尾から１つ前の下位階層オブジェクトというように、下位階層の末尾から順番であるとする。例えば、図８において、最初に読み込まれるオブジェクトは、末尾の下位階層オブジェクトであるＴ７である。プレゼンテーション表示モードで、Ｔ７のオブジェクトがタッチＵＩ２０４に表示されている状態で、「前選択処理」が行われると、同じ階層にＴ６が存在するため、Ｔ６のオブジェクトが読み込まれる。さらに、Ｔ６のオブジェクトが表示されている状態で「前選択処理」が行われると、同じ階層にその他のオブジェクトが存在しないため、その上位階層Ｖ２と同じ階層Ｖ１の下位階層の末尾にあるＴ５のオブジェクトが読み込まれる。なお、「前選択処理」においても、「次選択処理」と同様に、描画要素を持つオブジェクトだけを選択するようにしてもよく、また、特定の属性を有するオブジェクトのみを選択したり、特定の属性のみを除外して選択することも可能である。さらに、Ｈ１やＶ１といったそれ単体では描画要素を持たず、下位下層に描画要素を有するオブジェクトのみを選択してもよい。
【００７９】
次に、ステップＳ１３０３で次のオブジェクトが読み込めた場合（選択可能なオブジェクトがあった場合：ＮＯ）にステップＳ１６０２に進む。そして、ステップＳ１６０２の注目領域決定処理で、ステップＳ１６０１で読み込んだ前オブジェクトを注目領域とし、タッチＵＩ２０４にマスク領域を重ねて表示するオブジェクトを決定する。例えば、図１２（Ｅ）のオブジェクト１１０２の前のオブジェクトとして、オブジェクト１１０１を注目対象のオブジェクトとして選択した場合に表示される画面を図１２（Ｇ）に示す。本実施形態では、図１２（Ｇ）に示すように、オブジェクト１１０２が既に注目対象のオブジェクトとして表示されているため、図１１（Ｂ）において不透明なマスク１１０５を、半透明な白である半透明マスクに変えて、ページ４００の上に重ねて表示する。これによって、既に表示したオブジェクトを目立たないように表示しつつ、現在注目したい対象であるオブジェクト１１０１を見やすく表示できる。なお、図１２（Ｇ）の表示状態は、図１５（Ｃ）として表される。
【００８０】
次に、ステップＳ１６０３で、アノテーションの変更処理を行う。単純には、ステップＳ１３０５と同様に、アノテーションの削除を行う。なお、アノテーションを削除するのではなく保持する場合には、アノテーションの属性情報である透過率を変えてもよい。例えば、図１２（Ｆ）で透過率９５％としてオブジェクト１１０１に対応付けられているアノテーション１１０８は、図１２（Ｈ）のように透過率を０％に変更する。これにより、前選択処理によって前のオブジェクトを選択した場合に、対応付けられたアノテーションを再び見やすく表示することができる。
【００８１】
ステップＳ１３０３で次のオブジェクトが読み込めなかった場合（選択可能なオブジェクトがない場合：ＹＥＳ）にステップＳ１３０７に進み、ページ表示モードへと切り替え、ステップＳ１６０４に進む。そして、ステップＳ１６０４で、表示モードがページ表示モードであるので、ＲＡＭ２１１に保存したアプリケーション画像データの構文を解析し、前のページと、それに含まれるオブジェクトを読み込む。次に、ステップＳ１３０９で次に読み込み可能なページが無い（次のページが読み込めない）場合（ＹＥＳ）、ステップＳ１６０５に進む。そして、ステップＳ１６０５で、ＲＡＭ２１１に保存したアプリケーション画像データの構文を解析し、最終ページと、それに含まれるオブジェクトを読み込む。
【００８２】
以上説明したように、本実施形態によれば、オブジェクトを順に表示していく際に、アノテーションがオブジェクトの表示に連動して表示されるために、アノテーションを表示資料に書き込みつつプレゼンテーションに適した見易い表示ができる。さらに、書き込んだアノテーションをオブジェクトに対応付けて資料と共に保存おくことで、後から資料を再生した際にも発表者がアノテーションを書き込みながら説明したのと同じようにアノテーションを表示しながら資料を閲覧することができる。これによって、一人で資料を見る際にも、発表者がプレゼンテーションにアノテーションを書き込みながら説明しているように閲覧することができる。
【００８３】
（第２実施形態）
第１実施形態では、アノテーション表示制御部３０７において、プレゼンテーション表示モード時のアノテーションの表示を、注目オブジェクトの遷移に連動して変更する実施形態について説明した。これによって、現在注目されているオブジェクトに対応したアノテーションのみを目立たせて表示するので、視聴者に注目すべきオブジェクトとアノテーションを見やすく表示することができた。一方で、発表者が次へボタン４０２および前へボタン４０３を使わず、ピンチアウト操作によってページ４００を拡大させて表示したいことがある。例えば、発表者は、ピンチアウト操作によって図１９（Ｂ）のように画面を拡大させることができる。この場合、次へボタン４０２および前へボタン４０３を使わないため、注目領域制御部３０６は、注目領域を特定することができなかった。
【００８４】
これに対して、第２実施形態では、発表者がピンチアウト操作によってページ４００を拡大させた場合において、注目領域を定め、アノテーションの表示制御を行う処理について説明する。以下、第１実施形態との違いを中心に、図１８および図１９を参照して説明する。図１８は、拡大表示時のアノテーション変更処理を示すフローチャートである。図１９は、拡大表示した場合のアノテーションの画面の一例を示す図である。
【００８５】
まず、ステップＳ１７０１で、ジェスチャイベント処理部３０２は、ページ４００がピンチアウトイベントによって拡大されたか否かを判定する。ピンチアウトイベントによって拡大された場合（ＹＥＳ）、ステップＳ１７０２へ進み、拡大されていない場合（ＮＯ）、処理を終了する。次に、ステップＳ１７０２で、注目領域制御部３０６は、ページ４００の拡大表示時に画面内に収まっているオブジェクトを決定する、注目領域決定処理を行う。例えば、図１９（Ａ）では、ページ４００全体が表示されており、破線１１０１〜１１０４は、オブジェクトを示している。ただし、破線は、オブジェクトを分かりやすく示すために表示されているものであって、実際のページ４００上に表示されているものではない。また、書き込まれたアノテーションは、アノテーション１１０８、１８０１であり、アノテーション１１０８は、オブジェクト１１０１に、アノテーション１８０１は、オブジェクト１１０３に対応付けられているとする。このとき、ユーザによって拡大されたページ４００を図１９（Ｂ）に示し、拡大時のページ４００の表示領域およびオブジェクトの表示領域より、拡大時に表示されているオブジェクト領域を注目領域と決定する。具体的には、図１９（Ｂ）の破線で示されるオブジェクト１１０２〜１１０４を拡大表示時の注目領域とする。
【００８６】
次に、ステップＳ１７０３で、アノテーション表示制御部３０７は、ステップＳ１７０２で、注目領域と判定された領域に対応付けられたアノテーションのみを表示するようにアノテーションの表示を変更する。例えば、図１９（Ｂ）では、オブジェクト１１０２〜１１０４が注目領域となるので、オブジェクト１１０３に対応付けられたアノテーション１８０１のみが表示され、アノテーション１１０８は、透過率を１００％にし、視聴者に見えないように表示される。そして、ステップＳ１７０４で、決定した注目領域の処理およびアノテーションの変更処理に基づいて、タッチＵＩ２０４の表示状態を更新する。
【００８７】
以上、本実施形態によれば、第１実施形態の構成に加え、ページの拡大縮小時の注目領域を特定し、当該（表示中の）注目領域のオブジェクトに対応するアノテーションのみを表示し、対応していないアノテーションンを表示させないように表示状態を変更する。従って、発表者は、視聴者の気をそらさせることなく効果的に資料を見せることができる。
【００８８】
（第３実施形態）
第１実施形態および第２実施形態では、注目表示するオブジェクトの領域（注目領域）に連動してアノテーションの表示を変更する実施形態について説明した。これによって、現在注目されているオブジェクトに対応したアノテーションのみを目立たせて表示するので、視聴者に注目するオブジェクトとアノテーションを見やすく表示することができる。
【００８９】
これに対して、第３実施形態では、オブジェクトが予めユーザによって指定された順番によって自動的にアニメーション表示されるアプリケーションにおいて、アノテーションをアニメーション表示の状態遷移に連動させて表示制御を行う処理について説明する。ここで、アニメーション表示とは、ユーザが予め指定した順番と動作に沿ってオブジェクトが表示されることである。以下、第１実施形態との違いを中心に、図２０〜２２を参照して説明する。
【００９０】
図２０は、アニメーションの表示順番を表す状態遷移にアノテーションを関連付けるフローチャートである。図２１は、図２２に示すオブジェクトおよびアノテーションが順番にアニメーション表示されていく場合の表示順番を表している。アニメーションの動作については本実施形態と直接関係しないため、詳細な説明を割愛する。図２２は、オブジェクトとアノテーションの表示例を示す図である。なお、アニメーションの順番表示は、次へボタン４０２および前へボタン４０３によって変えられるものとする。具体的には、図２０（Ａ）の表示順番０２（オブジェクトＩＤ：０２）のオブジェクト１１０２が表示されている場合に、次へボタン４０２をタップすることで、表示順番０３（オブジェクトＩＤ：０３）のオブジェクト１１０３のアニメーション表示を行う。
【００９１】
ここで、図２０を参照して、まず、ステップＳ１９０１で、アノテーション画像を生成する。アノテーション画像の生成は、図１３に示すステップＳ１２０３と同じ処理であるため、詳細な説明を割愛する。説明を簡単にするため、図２１（Ａ）における表示順番０３（オブジェクトＩＤ：０３）のオブジェクト１１０３が表示されている場合にユーザが描くボタン４０４をタップし、アノテーションを書き込んだとする。
【００９２】
次に、ステップＳ１９０２で、アニメーションの表示順番を変更する。具体的には、図２１（Ｂ）で示すように、図２１（Ａ）の表示順番０４（オブジェクトＩＤ：０４）のオブジェクト１１０４をアノテーション１８０１（アノテーションＩＤ：０１）のアニメーション表示に変更する。そして、図２１（Ａ）の元々あった表示順番０４を表示順番０５に変更する。このようにすることで、アノテーション１８０１（アノテーションＩＤ：０１）のアニメーション表示を、オブジェクト１１０３（オブジェクトＩＤ：０３）とオブジェクト１１０４（オブジェクトＩＤ：０４）のアニメーション表示の間に行うことができる。
【００９３】
すなわち、アノテーションのアニメーション表示を元々のアニメーションに追加することで、後にアプリケーションを再生する際にも、アノテーションを書き込みながらプレゼンテーションを行ったときと同様に再生することができるようになる。なお、アノテーションのアニメーション表示動作は、アノテーション画像がポップアップして表示されるようにするが、それに限らず新たに表示される動作であれば、他の動作であってよい。また、図２１（Ｂ）の表示順番０４のアノテーション１８０１（アノテーションＩＤ：０１）は、次の順番のアニメーション表示に切り替わった際には透過率を変えて表示することとする。
【００９４】
以上、本実施形態によれば、第１実施形態および第２実施形態の構成に加え、アニメーション表示順番にアノテーションの表示を追加する。これにより、ユーザは、元々のアニメーションに、発表者が書き込んだアノテーション画像を連動させて表示させることができる。
【００９５】
（他の実施例）
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
ここで、本発明は、上述した実施形態の機能を実現する１以上のソフトウェア（プログラム）を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の一つである。また、そのプログラムは、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給され、そのシステム或いは装置の１以上のコンピュータ（ＣＰＵやＭＰＵ等）によりそのプログラムが読み出され、実行される。つまり、本発明の一つとして、さらにそのプログラム自体、あるいは該プログラムを格納したコンピュータにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路（例えば、ＡＳＩＣ）によっても、本発明は実現可能である。
【００９６】
また、本発明の好ましい実施形態について説明したが、本発明は、これらの実施形態に限定されず、その要旨の範囲内で種々の変形および変更が可能である。
【図１】
2016038728.tif 000003
【図２】
2016038728.tif 000004
【図３】
2016038728.tif 000005
【図５】
2016038728.tif 000006
【図６】
2016038728.tif 000007
【図７】
2016038728.tif 000008
【図８】
2016038728.tif 000009
【図９】
2016038728.tif 000010
【図１０】
2016038728.tif 000011
【図１３】
2016038728.tif 000012
【図１４】
2016038728.tif 000013
【図１５】
2016038728.tif 000014
【図１６】
2016038728.tif 000015
【図１７】
2016038728.tif 000016
【図１８】
2016038728.tif 000017
【図２０】
2016038728.tif 000018
【図２１】
2016038728.tif 000019
【図４】
2016038728.tif 000020
【図１１】
2016038728.tif 000021
【図１２】
2016038728.tif 000022
【図１９】
2016038728.tif 000023
【図２２】
2016038728.tif 000024