(57)【特許請求の範囲】
【請求項１】
画像に含まれる複数のオブジェクトの認識結果を取得する取得手段と、
前記取得手段により取得した認識結果により示される複数のオブジェクトのうちの１つの表示対象オブジェクトの少なくともサイズに応じて、表示倍率を設定する設定手段と、
前記複数のオブジェクトを含む前記画像全体を前記設定手段によって設定された前記表示倍率に基づいて変倍する変倍手段と、
前記変倍手段により変倍された画像全体のうちの一部の画像であり前記表示対象オブジェクトと前記表示対象オブジェクトの周辺領域を含む画像を画面上に表示する制御を行う表示制御手段と、を有することを特徴とする画像表示装置。
【請求項２】
前記表示制御手段は、前記画像に配置される位置により決定される順番に基づき、前記画面に表示される表示対象オブジェクトを切り替えることを特徴とする請求項１に記載の画像表示装置。
【請求項３】
前記表示制御手段により前記画面に表示される表示オブジェクトの切り替えは、ユーザからの指示に基づき実施されることを特徴とする請求項２に記載の画像表示装置。
【請求項４】
前記表示制御手段は、前記表示対象オブジェクトのうち少なくとも前記表示対象オブジェクトの始点を前記画面上に表示させることを特徴とする請求項１に記載の画像表示装置。
【請求項５】
前記表示制御手段により前記画面に表示される前記表示対象オブジェクトの始点は、前記オブジェクトの属性に基づき設定されることを特徴とする請求項４に記載の画像表示装置。
【請求項６】
前記設定手段は、当該表示対象のオブジェクトの属性が文字属性である場合、当該表示対象のオブジェクトを構成する文字が、箇条書きであるか否かと、前記文字が縦書きと横書きとのいずれであるかに基づいて、前記表示倍率を設定することを特徴とする請求項１に記載の画像表示装置。
【請求項７】
前記設定手段は、前記表示対象のオブジェクトの属性が表属性である場合、当該表のヘッダを検出し、当該ヘッダの位置に基づいて、前記表示倍率を設定することを特徴とする請求項１に記載の画像表示装置。
【請求項８】
前記設定手段は、前記表示対象のオブジェクトの属性が文字属性と表属性以外の属性である場合、当該表示対象のオブジェクトの全体が表示されるように、前記表示倍率を設定することを特徴とする請求項１に記載の画像表示装置。
【請求項９】
前記表示制御手段は、ユーザによるピンチアウト操作とピンチイン操作とに応じて、前記表示対象のオブジェクトを含む前記画像を、拡大または縮小して表示するように制御することを特徴とする請求項１乃至８のいずれか一項に記載の画像表示装置。
【請求項１０】
前記表示対象のオブジェクトを含む画像の表示位置を移動させるためのスワイプ操作を受け付けた場合、当該オブジェクトが表示されるように、当該オブジェクトの表示位置の移動を制限する移動範囲制限手段を、更に有することを特徴とする請求項９に記載の画像表示装置。
【請求項１１】
前記移動範囲制限手段は、前記表示対象のオブジェクトを含む画像の表示位置を移動させるためのスワイプ操作を受け付けた場合に、前記表示対象のオブジェクトの表示サイズが前記画面より大きければ、できるだけ当該オブジェクトが表示されるように当該オブジェクトの表示位置の移動を制限し、前記表示対象のオブジェクトの表示サイズが前記画面より大きくなければ、当該オブジェクトの全体が表示されるように当該オブジェクトの表示位置の移動を制限することを特徴とする請求項１０に記載の画像表示装置。
【請求項１２】
前記移動範囲制限手段は、前記表示対象のオブジェクトを含む画像の表示位置を移動させるための最初のスワイプ操作を受け付けた場合は、当該オブジェクトが表示されるように当該オブジェクトの表示位置の移動を一旦制限し、その後、新たなスワイプ操作による移動の制限を解除することを特徴とする請求項１０に記載の画像表示装置。
【請求項１３】
前記表示制御手段は、前記設定手段で設定された前記表示倍率と前記表示位置とに基づいて、当該表示対象のオブジェクトを含む前記画像を前記画面に表示する際に、当該表示対象のオブジェクトが強調表示されるように制御することを特徴とする請求項１乃至１２のいずれか一項に記載の画像表示装置。
【請求項１４】
次のオブジェクトを表示対象にする第１のボタンと、前のオブジェクトを表示対象にする第２のボタンとのいずれかが指定された場合、当該指定されたボタンに応じて次のオブジェクトまたは前のオブジェクトを新たな表示対象オブジェクトとして、前記設定手段は、前記新たな表示対象のオブジェクトのサイズに応じて、表示倍率を設定し、前記表示制御手段は前記設定された前記表示倍率に基づいて、前記新たな表示対象のオブジェクトと前記新たな表示対象オブジェクトの周辺領域を含む画像を前記画面に表示するように制御することを特徴とする請求項１乃至１３のいずれか一項に記載の画像表示装置。
【請求項１５】
前記画像の全体を表示するように指定された場合、前記表示制御手段は、前記画像の全体を表示するように制御することを特徴とする請求項１乃至１４のいずれか一項に記載の画像表示装置。
【請求項１６】
前記表示制御手段は、前記画像の一部が表示されているときに、当該表示対象のオブジェクトに対して前記画面のサイズよりもさらに縮小して表示させるためのピンチイン操作が為された場合、前記画像の全体を表示するように制御することを特徴とする請求項１５に記載の画像表示装置。
【請求項１７】
前記表示制御手段は、前記画像の全体を表示するように制御されているときに表示されている前記画像内のオブジェクトに対してダブルタップ操作を受け付けた場合、当該ダブルタップ操作を受け付けた位置にあるオブジェクトを表示対象として、当該表示対象のオブジェクトを含む前記画像を画面に表示するように制御することを特徴とする請求項１５に記載の画像処理装置。
【請求項１８】
前記表示制御手段は、前記前記表示対象オブジェクトの周辺領域には半透明マスクを重ねて表示させることを特徴とする請求項１に記載の画像表示装置。
【請求項１９】
前記周辺領域には前記表示対象オブジェクトに隣接するオブジェクトを含むことを特徴とする請求項１に記載の画像表示装置。
【請求項２０】
請求項１乃至１９のいずれか一項に記載の画像処理装置が有する各手段として、コンピュータを機能させるためのコンピュータプログラム。
【請求項２１】
請求項２０に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【請求項２２】
画像に含まれる複数のオブジェクトの認識結果を取得する取得ステップと、
前記取得ステップにより取得した認識結果により示される複数のオブジェクトのうちの１つの表示対象オブジェクトの少なくともサイズに応じて、表示倍率を設定する設定ステップと、
前記複数のオブジェクトを含む前記画像全体を前記設定ステップによって設定された前記表示倍率に基づいて変倍する変倍ステップと、
前記変倍ステップにより変倍された画像全体のうちの一部の画像であり前記表示対象オブジェクトと前記表示対象オブジェクトの周辺領域を含む画像を画面上に表示する制御を行う表示制御ステップと、を有することを特徴とする画像表示方法。
【請求項２３】
画像に含まれる複数のオブジェクトの解析結果を取得する取得手段と、
前記画像のうち、表示対象である第１のオブジェクトと該第１のオブジェクトの周辺領域とを含む前記画像の一部を前記第１のオブジェクトのサイズに応じて設定された表示倍率に基づき画面に表示させる表示制御手段と、
を有し、
前記表示制御手段は、前記第１のオブジェクト以外のオブジェクトを前記画面に表示させるための指示を受けると、前記取得手段により取得された解析結果により次に表示すべきと示された第２のオブジェクトと該第２のオブジェクトの周辺領域とを含む前記画像の一部を前記第２のオブジェクトのサイズに応じて設定された表示倍率に基づき前記画面に表示させることを特徴とする画像表示装置。
【請求項２４】
前記第１のオブジェクト以外のオブジェクトを前記画面に表示させるための指示が次オブジェクトの表示の指示である場合、前記第２のオブジェクトは前記第１のオブジェクトの１つ次の表示順であると前記解析結果に示されたオブジェクトであり、前記第１のオブジェクト以外のオブジェクトを前記画面に表示させるための指示が前記オブジェクトの表示の指示である場合、前記第２のオブジェクトは前記第１のオブジェクトの１つ前の表示順のオブジェクトであることを特徴とする請求項２３に記載の画像表示装置。
【請求項２５】
前記表示制御手段は、前記第１のオブジェクトと該第１のオブジェクトの周辺領域とを含む前記画像の一部を画面に表示させる場合に、前記画像の一部のうち前記第１のオブジェクトの周辺領域は半透明のマスクを重ねて表示させることを特徴とする請求項２３に記載の画像表示装置。
【請求項２６】
画像に含まれる複数のオブジェクトの解析結果を取得する取得ステップと、
前記画像のうち、表示対象である第１のオブジェクトと該第１のオブジェクトの周辺領域とを含む前記画像の一部を前記第１のオブジェクトのサイズに応じて設定された表示倍率に基づき画面に表示させる表示制御ステップと、
を有し、
前記表示制御ステップは、前記第１のオブジェクト以外のオブジェクトを前記画面に表示させるための指示を受けると、前記取得手段により取得された解析結果により次に表示すべきと示された第２のオブジェクトと該第２のオブジェクトの周辺領域とを含む前記画像の一部を前記第２のオブジェクトのサイズに応じて設定された表示倍率に基づき前記画面に表示させることを特徴とする画像表示方法。
【請求項２７】
請求項２３乃至２６のいずれか一項に記載の画像処理装置が有する各手段として、コンピュータを機能させるためのコンピュータプログラム。
【請求項２８】
請求項２７に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像データを小さい画面で閲覧するのに適した画像表示装置および画像表示方法に関する。
【背景技術】
【０００２】
従来、パーソナルコンピュータやＰＤＡ、スマートフォン、タブレットなど比較的小さな画像表示装置によって、画素数の大きい文書ページ画像を表示する際に、ページ画像の一部を逐次的に表示することが行われている。一般にページ画像は段落や見出し、図、写真、表などのレイアウト要素からなる複数の部分から構成される。文書を読み進めるために順次、ページの所望の範囲が表示装置に表示されるように、ユーザはスクロールや拡大縮小の操作を繰り返す必要がある。
表示部分のスクロールや拡大縮小は、スイッチやホイール、トラックボール、ジョイスティック、タッチスクリーンなどの操作入力装置を操作することによって行う。特に高精度なタッチスクリーンを用いた装置では、スワイプ操作による縦・横・斜めの任意の方向へのスクロールと、ピンチアウトおよびピンチイン操作による拡大縮小という、直接的な操作感（ダイレクトマニピュレーション）が普及している。
特許文献１には、一次元的な操作（右矢印キーの操作）によって、文書画像の読み順に従って二次元的に画面をスクロールすることで、文書画像内の各領域を順番に画面上に等倍表示する方法が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第４０９４５１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、スワイプ操作による任意の方向へのスクロールとピンチアウト／ピンチイン操作による拡大縮小操作によってページ画像を読み進めていく場合、ユーザ所望の範囲がちょうど画面内に表示されるように大きさや位置を微調整する手間がかかり煩雑だった。
また、特許文献１の方法では、矢印キーの操作に応じて各領域を読み順にしたがって順番に等倍表示するので、各領域の表示サイズを調整することはできなかった。また、特許文献１は矢印キーを用いて操作を行うものであり、ユーザによるスワイプ操作や拡大縮小操作が為された場合については考慮されていなかった。
【課題を解決するための手段】
【０００５】
上記課題を解決するために、本発明の画像表示装置は、画像に含まれる複数のオブジェクトの認識結果を取得する取得手段と、前記取得手段により取得した認識結果により示される複数のオブジェクトのうちの１つの表示対象オブジェクトの少なくともサイズに応じて、表示倍率を設定する設定手段と、前記複数のオブジェクトを含む前記画像全体を前記設定手段によって設定された前記表示倍率に基づいて変倍する変倍手段と、前記変倍手段により変倍された画像全体のうちの一部の画像であり前記表示対象オブジェクトと前記表示対象オブジェクトの周辺領域を含む画像を画面上に表示する制御を行う表示制御手段と、を有することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、オブジェクトを表示する第１の表示モードでは、各オブジェクトの属性に応じて、各オブジェクトを見やすい形で画面に表示させることができる。
【図面の簡単な説明】
【０００７】
【図１】本発明に係る画像処理システムを示すブロック図である。
【図２】図１におけるＭＦＰを示すブロック図である。
【図３】第１の実施例で説明する第１のデータ処理フローである。
【図４】第１の実施例で説明するスキャナからの読み込みを示すフローである。
【図５】第１の実施例で説明するＰＣからのデータをビットマップにするフローである。
【図６】第１の実施例で説明するメタ情報を付加する処理フローである。
【図７】オブジェクト分割した結果の一例である。
【図８】オブジェクト分割情報したときの各属性のブロック情報および入力ファイル情報である。
【図９】第１の実施例に係るベクトル化処理のフロー図である。
【図１０】ベクトル化の処理における角抽出の処理を示す図である。
【図１１】ベクトル化の処理における輪郭線まとめの処理を示す図である。
【図１２】輪郭に基づいてベクトル化を行う処理を示すフローチャートである。
【図１３】第１の実施例に係るベクトル化処理結果のデータを示すマップである。
【図１４】アプリケーション画像データ変換の処理を示すフローチャートである。
【図１５】文書構造ツリー生成の処理を示すフローチャートである。
【図１６】文書構造ツリー生成処理の対象となる文書を示す図である。
【図１７】図１６の処理によって生成される文書構造ツリーを示す図である。
【図１８】本実施例で説明するＳＶＧ（Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ）形式の一例である。
【図１９】携帯情報端末の構成を示すブロック図である。
【図２０】携帯情報端末のソフトウェアモジュールの構成を示すブロック図である。
【図２１】ジェスチャイベント名の一覧と、各イベントが発生したときに送信する情報を示した図である。
【図２２】携帯情報端末がアプリケーション画像データを受信した際のフローチャートである。
【図２３】携帯情報端末のタッチＵＩの画面表示例である。
【図２４】アプリケーション画像データの操作制御に係わるソフトウェアモジュールの構成を示すブロック図である。
【図２５】第１の実施例で説明するモード切替処理のフローチャートである。
【図２６】携帯情報端末のタッチＵＩの画面表示例である。
【図２７】第１の実施例で説明する部分領域表示範囲決定処理のフローチャートである。
【図２８】第１の実施例で説明する次選択処理のフローチャートである。
【図２９】第１の実施例で説明する前選択処理のフローチャートである。
【図３０】第１の実施例で説明する移動範囲制限処理のフローチャートである。
【図３１】第１の実施例で説明する縮小時表示モード切替処理のフローチャートである。
【図３２】第１の実施例で説明するオブジェクト選択処理のフローチャートである。
【図３３】携帯情報端末のタッチＵＩの画面表示例である。
【図３４】携帯情報端末のタッチＵＩの画面表示例である。
【図３５】携帯情報端末のタッチＵＩの画面表示例である。
【図３６】携帯情報端末のタッチＵＩの画面表示例である。
【図３７】第２の実施例で説明する移動範囲制限処理のフローチャートである。
【発明を実施するための形態】
【０００８】
［実施例１］
図１は、本実施形態に係る画像処理システムの構成を示すブロック図である。
【０００９】
図１において、オフィス内に構築されたＬＡＮ１０２には、複数種類の機能（複写機能、印刷機能、送信機能等）を実現する複合機であるＭＦＰ１００と、クライアントＰＣ１０１が接続されている。さらにＬＡＮ１０２には、プロキシサーバ１０３と、文書管理サーバ１０６、文書管理サーバ１０６のためのデータベース１０５、携帯情報端末１０７が、無線または有線で接続されている。ＬＡＮ１０２は、また、プロキシサーバ１０３を介してネットワーク１０４に接続されている。クライアントＰＣ１０１では、例えば、印刷データをＭＦＰ１００へ送信することで、その印刷データに基づく印刷物をＭＦＰ１００で印刷することが可能である。なお、図１の構成は一例であり、同様の構成要素を有する複数のオフィスがネットワーク１０４上に接続されていても良い。
【００１０】
クライアントＰＣ１０１、プロキシサーバ１０３の各種端末はそれぞれ、汎用コンピュータに搭載される標準的な構成要素（例えば、ＣＰＵ、ＲＡＭ、ＲＯＭ、ハードディスク、ネットワークＩ／Ｆ、ディスプレイ、キーボード、マウス等）を有している。また、ネットワーク１０４は、典型的にはインターネットやＬＡＮやＷＡＮや電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれかで実現されている。もちろん、それらの組み合わせにより実現されるいわゆる通信ネットワークであっても良いことは言うまでもなく、データの送受信が可能であれば良い。
【００１１】
図２は、図１におけるＭＦＰ１００の機能構成を示すブロック図である。図２において、ＭＦＰ１００は、画像読み取り部１１０、記憶装置（以下、ＢＯＸ）１１１、記録装置１１２、データ処理装置１１５、入力装置１１３、表示装置１１６、ネットワークＩ／Ｆ１１４で構成される。画像読み取り部１１０は、図示しないＡｕｔｏ  Ｄｏｃｕｍｅｎｔ  Ｆｅｅｄｅｒ（以下、ＡＤＦ）を有し、束状の或いは１枚の原稿の画像を光源で照射し、反射画像をレンズで固体撮像素子上に結像する。固体撮像素子は所定解像度（例えば６００ｄｐｉ）および所定輝度レベル（例えば８ビット）の画像読み取り信号を生成し、画像読み取り信号からラスターデータよりなる画像データが構成される。通常の複写機能を実行する際には、画像読み取り部１１０で得たビットマップ画像データをデータ処理装置１１５によって、後述するスキャン画像処理して記録信号に変換し、記録装置１１２で画像形成（印刷出力）する。複数枚複写の場合には、１頁分の記録信号を一旦ＢＯＸ１１１に記憶保持した後、記録装置１１２に順次出力して、記録紙上に記録画像を形成する。ＭＦＰ１００は、ローカルＰＣ１０２（もしくは他の汎用ＰＣ（不図示））からドライバを利用して出力されてくるＰＤＬデータを、ＬＡＮ１０２とネットワークＩ／Ｆ１１４を介して受信し、当該受信したＰＤＬデータに基づく画像を、記録装置１１２によって記録し得る。すなわち、ローカルＰＣ１０２からドライバを経由して出力されるＰＤＬデータは、ＬＡＮ１０７からネットワークＩ／Ｆ１１４を経てデータ処理装置１１５に入力される。そこで言語を解釈・処理することで記録可能な記録信号に変換された後、ＭＦＰ１００において、記録紙上に記録画像として記録される。
【００１２】
ＢＯＸ１１１は、画像読み取り部１１０からのデータやローカルＰＣ１０２からドライバを経由して出力されるＰＤＬデータをレンダリングしたデータを保存できる機能を有している。また、ＭＦＰ１００は、ＭＦＰ１００に設けられたキー操作部（入力装置１１３）を通じて操作され、操作入力の状態を表示装置１１６によって表示し得る。
【００１３】
次に、図３を用いて、本実施例におけるアプリケーション画像データの生成フローを説明する。
【００１４】
図３は、ＭＦＰ１００の画像読み取り部１１０により取得されたビットマップ画像データや、ローカルＰＣ１０２上においてアプリケーションソフトで作成されたドキュメントをＭＦＰ１００内部でレンダリングして生成したビットマップ画像データから、携帯情報端末１０７で表示するための所定のフォーマットのデータ（以下ではアプリケーション画像データと呼ぶこととする）を生成するためのフローチャートである。
【００１５】
まず、ステップＳ３０１において、データ処理装置１１５は、ビットマップ画像データを属性毎のオブジェクトに分割するオブジェクト分割処理を行う。オブジェクト分割後のオブジェクトの属性種類は、文字、写真、グラフィック（図面、線画、表、ライン）、背景を指す。分割された各々のオブジェクトに対して、ステップＳ３０２において、オブジェクトの種類（文字、写真、グラフィック、背景）を判定する。写真または背景と判定されたオブジェクトについては、ステップＳ３０３において、当該オブジェクトのビットマップ画像をＪＰＥＧ圧縮する。一方、文字またはグラフィックと判定されたオブジェクトについては、ステップＳ３０４において、ベクトル化処理を行って、パス化されたデータ（ベクトルデータ）に変換する。次に、ステップＳ３０５において該オブジェクトが文字であるか判定し、文字の場合には、更にステップＳ３０８において、ＯＣＲ処理を施し、文字コード化されたデータ（ＯＣＲ結果の文字コードデータ）も取得する。Ｓ３０３及びＳ３０４で得た各オブジェクトのデータ（ＪＰＥＧデータ、ベクトルデータ）と、Ｓ３０８で得た文字コードデータとを一つのファイルにまとめた後、ステップＳ３０６において、各オブジェクトに対して、最適なメタデータを付与する。メタデータが付与された各々のオブジェクトは、ステップＳ３０７において、携帯情報端末１０７が表示可能なアプリケーション画像データに生成される。最後に、ステップＳ３０９において、データ処理装置１１５は、生成したアプリケーション画像データを携帯情報端末１０７に送信する。
【００１６】
次に、図４と図５を用いて、本実施例におけるビットマップ画像データ（文書画像データ）の作成について説明する。図４は、ＭＦＰ１００の画像読み取り部１１０を使用した場合のビットマップ画像データ作成のフローチャート、図５は、ＰＣ１０２上のアプリケーションを使用した場合のフローチャートである。図４または図５で生成されたビットマップ画像データに対して、上述した図３の処理が実行される。
【００１７】
ＭＦＰ１００の画像読み取り部１１０を使用した場合には、図４のステップＳ４０１において、画像を読み込む。読み込まれた画像は、既にビットマップ画像データである。ステップＳ４０２において、そのビットマップ画像データに対して、画像読み取り部１１０に依存するスキャナ画像処理を行う。ここで言うスキャナ画像処理とは、例えば、色処理やフィルタ処理を指す。
【００１８】
ＰＣ１０２上のアプリケーションを使用した場合には、まず、図５のステップＳ５０１において、ＰＣ１０２上のアプリケーションを使用して作成したデータが、ＰＣ１０２上にあるプリントドライバを介してプリントデータに変換され、ＭＦＰ１００に送信される。ここで言うプリントデータとは、ＰＤＬを意味し、例えば、ＬＩＰＳ（商標）、Ｐｏｓｔｓｃｒｉｐｔ（商標）等のページ記述言語を指す。次にステップＳ５０２において、ＭＦＰ１００内部に存在するインタープリタを介して、ディスプレイリストが生成される。そのディスプレイリストをステップＳ５０３において、レンダリングすることにより、ビットマップ画像データが生成される。
【００１９】
図６のフローチャートを用いて、図３のステップＳ３０６に示すメタデータの付与処理の詳細について説明する。
【００２０】
まず、ステップＳ６０１において、Ｓ３０１で分割されたオブジェクトのそれぞれについて、各オブジェクトの周囲で一番近くに存在する文字オブジェクトを選択する。次に、ステップＳ６０２において、選択された文字オブジェクトに対して、形態素解析を行う。次に、ステップＳ６０３において、前記ステップＳ６０２で形態素解析結果により抽出された単語をメタデータとして各オブジェクトに付加する。
【００２１】
なお、メタデータは、形態素解析だけではなく、画像特徴量抽出、構文解析等によっても作成できる。さらに、ＭＦＰ１００に内蔵されたＢＯＸ、およびデータベース１０５に既に保存されている文書、および、それに含まれるオブジェクトを対象に類似画像検索を行って、類似度の高い類似画像のオブジェクトとの関連付けを行っても良い。
【００２２】
次に、図７と図８を用いて、前記ステップＳ３０１のオブジェクト分割について、詳細に説明する。図７は、オブジェクト分割処理によって、ビットマップ画像データを複数のオブジェクトに分割した結果の一例である。図８は、オブジェクト分割したときの各オブジェクトのブロック情報および入力ファイル情報を表す。
【００２３】
ステップＳ３０１において、入力画像（図７の左）に対してオブジェクト分割処理を行うことにより、属性ごとに矩形ブロックに分割する（図７の右）。前述のように、矩形ブロックの属性としては、文字、写真、グラフィック（図面、線画、表、ライン）がある。オブジェクト分割処理の一手法としては、例えば以下のような手法がある。まず、ＭＦＰ１００内のＲＡＭ（不図示）に格納されたイメージデータを白黒に２値化し、黒画素輪郭で囲まれる画素塊を抽出する。さらに、このように抽出された黒画素塊の大きさを評価し、大きさが所定値以上の黒画素塊の内部にある白画素塊に対する輪郭追跡を行う。白画素塊に対する大きさ評価、内部黒画素塊の追跡というように、内部の画素塊が所定値以上である限り、再帰的に内部画素塊の抽出、輪郭追跡を行う。画素塊の大きさは、例えば画素塊の面積によって評価される。このようにして得られた画素塊に外接する矩形ブロックを生成し、矩形ブロックの大きさ、形状に基づき属性を判定する。例えば、縦横比が１に近く、大きさが一定の範囲の矩形ブロックは文字領域矩形ブロックの可能性がある文字相当ブロックとする。また、近接する文字相当ブロックが規則正しく整列しているときに、これら文字相当ブロックを纏めた新たな矩形ブロックを生成し、新たな矩形ブロックを文字領域矩形ブロックとする。また扁平な画素塊、もしくは、一定大きさ以上でかつ四角形の白画素塊を整列よく内包する黒画素塊をグラフィック領域矩形ブロック、それ以外の不定形の画素塊を写真領域矩形ブロックとする。
【００２４】
ステップＳ３０１では、このようにして生成された矩形ブロックのそれぞれについて、図８に示す、属性等のブロック情報および入力ファイル情報を生成する。図８において、ブロック情報には各ブロックの属性、位置の座標Ｘ、座標Ｙ、幅Ｗ、高さＨ、ＯＣＲ情報が含まれる。属性は１〜３の数値で与えられ、１は文字領域矩形ブロック、２は写真領域矩形ブロック、３はグラフィック領域矩形ブロックを示す。座標Ｘ、座標Ｙは入力画像における各矩形ブロックの始点のＸ、Ｙ座標（左上角の座標）である。幅Ｗ、高さＨは矩形ブロックのＸ座標方向の幅、Ｙ座標方向の高さである。ＯＣＲ情報は、前記ステップＳ３０８のＯＣＲ処理で文字コード化されたデータへのポインタ情報の有無を示す。さらに入力ファイル情報として矩形ブロックの個数を示すブロック総数Ｎも保存しておく。
【００２５】
これらの矩形ブロックごとのブロック情報は、特定領域でのベクトル化に利用される。またブロック情報によって、特定領域とその他の領域を合成する際の相対位置関係を特定でき、入力画像のレイアウトを損なわずにベクトル化された領域とビットマップのままの領域を合成することが可能となる。
【００２６】
次に、図９のフローチャートを用いて、図３のステップＳ３０４のベクトル化処理について詳細に説明する。
【００２７】
まず、ステップＳ９０１において、データ処理装置１１５は、特定領域が文字領域矩形ブロックであるか否か判断し、文字領域の矩形ブロックであればステップＳ９０２以下のステップに進む。一方、特定領域が文字領域矩形ブロックでないときは、ステップＳ９１２に移行する。
【００２８】
ステップＳ９０２〜Ｓ９０７では、パターンマッチング等の手法を用いて文字認識処理を行い、対応する文字コードを得る。例えば、ステップＳ９０２において、データ処理装置１１５は、特定領域に対し横書き、縦書きの判定（組み方向判定）を行うために、特定領域内で画素値に対する水平・垂直の射影を取る。次に、ステップＳ９０３において、ステップＳ９０２の射影の分散を評価する。水平射影の分散が大きい場合は横書き、垂直射影の分散が大きい場合は縦書きと判断する。ステップＳ９０４において、ステップＳ９０３の評価結果に基づき、組み方向を判定し、行の切り出しを行い、その後文字を切り出して文字画像を得る。文字列および文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、切り出された行に対する垂直方向の射影から、文字を切り出す。縦書きの文字領域に対しては、水平と垂直について逆の処理を行う。行、文字切り出しに際して、文字のサイズも検出し得る。次に、ステップＳ９０５において、ステップＳ９０４で切り出された各文字について、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルを生成する。特徴ベクトルの抽出には種々の公知手法があり、例えば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴ベクトルとする方法がある。ステップＳ９０６において、ステップＳ９０５で得られた観測特徴ベクトルと、あらかじめフォントの種類ごとに求められている辞書特徴ベクトルとを比較し、観測特徴ベクトルと辞書特徴ベクトルとの距離を算出する。ステップＳ９０７において、ステップＳ９０６で算出された距離を評価し、最も距離の近いフォントの種類を認識結果とする。
【００２９】
次に、ステップＳ９０８において、ステップＳ９０７における距離評価の最短距離が所定値よりも大きいか否か、類似度を判断する。最短距離が所定値以上の場合（類似度が低い場合）は、辞書特徴ベクトルにおいて、形状が類似する他の文字に誤認識している可能性が高い。そこで最短距離が所定値以上の場合（類似度が低い場合）は、ステップＳ９０７の認識結果を採用せず、ステップＳ９１１の処置に進む。類似度が所定値より小さいとき（類似度が高い場合）は、ステップＳ９０７の認識結果を採用し、ステップ９０９に進む。
【００３０】
ステップＳ９０９では、文字フォントの種類を認識する。文字認識の際に用いる、フォントの種類数分の辞書特徴ベクトルを、文字形状種すなわちフォント種に対して複数用意しておく。これを、パターンマッチングの際に、文字コードとともにフォント種を出力することで、文字フォントを認識し得る。次に、ステップＳ９１０において、文字認識およびフォント認識よって得られた文字コードおよびフォント情報を用いて、各々あらかじめ用意されたアウトラインデータを用いて、各文字をベクトルデータに変換する。なお、入力画像がカラーの場合は、カラー画像から各文字の色を抽出してベクトルデータとともに記録する。
【００３１】
一方、ステップＳ９１１では、文字をグラフィックと同様に扱い、該文字をアウトライン化する。すなわち誤認識を起こす可能性の高い文字については、見かけ上ビットマップに忠実なアウトラインのベクトルデータを生成する。
【００３２】
また、ステップＳ９１２では、特定領域が文字領域矩形ブロックでないとき（すなわちグラフィック領域矩形ブロックのとき）、画像の輪郭に基づいてベクトル化の処理を実行する。
【００３３】
以上の処理により、文字領域矩形ブロックおよびグラフィック領域矩形ブロックに属するイメージ情報をベクトルデータに変換出来る。
【００３４】
図１０と図１１、図１２を用いて、ステップＳ９１２のグラフィック領域矩形ブロックのベクトル化処理について詳細に説明する。グラフィック領域矩形ブロックのベクトル化処理は、該領域内で抽出された黒画素塊の輪郭に基づいてベクトル化を行う。図１０は、ベクトル化の処理における角抽出の処理を示す図、図１１は、ベクトル化の処理における輪郭線まとめの処理を示す図である。図１２は、グラフィック領域のベクトル化処理の詳細フローチャートである。図１２のステップＳ１２０１において、データ処理装置１１５は、線画等を直線および／または曲線の組み合わせとして表現するために、曲線を複数の区間（画素列）に区切る「角」を検出する。角とは曲率が極大となる点であり、図１０に示すように、曲線上の画素Ｐｉが角か否かの判断は以下のように行う。すなわち、Ｐｉを起点とし、曲線に沿ってＰｉから両方向に所定画素（ｋ個とする）ずつ離れた画素Ｐｉ−ｋ、Ｐｉ＋ｋを線分Ｌで結ぶ。画素Ｐｉ−ｋ、Ｐｉ＋ｋ間の距離をｄ１、線分Ｌと画素Ｐｉとの距離をｄ２、曲線の画素Ｐｉ−ｋ  、Ｐｉ＋ｋ間の弧の長さをＡとする。ｄ２が極大となるとき、あるいは比（ｄ１／Ａ）が閾値以下となるときに画素Ｐｉを角と判断する。角によって分割された画素列を、直線あるいは曲線で近似する。直線への近似は最小二乗法等により実行し、曲線への近似は３次スプライン関数などを用いる。画素列を分割する角の画素は近似直線あるいは近似直線における、始端または終端となる。さらにベクトル化された輪郭内に白画素塊の内輪郭が存在するか否かを判断し、内輪郭が存在するときはその輪郭をベクトル化し、内輪郭の内輪郭というように、再帰的に反転画素の内輪郭をベクトル化する。以上のように、輪郭の区分線近似を用いれば、任意形状の図形のアウトラインをベクトル化することができる。元原稿がカラーの場合は、カラー画像から図形の色を抽出してベクトルデータとともに記録する。
【００３５】
ステップＳ１２０２では、ステップＳ１２０１で求めた輪郭線が近接している場合はそれらをまとめて太さを持った線とする処理を行う。図１１に示すように、ある注目区間で外輪郭ＰＲｊと、内輪郭ＰＲｊ＋１あるいは別の外輪郭が近接している場合、２個あるいは複数の輪郭線をひとまとめにし、太さを持った線として表現することができる。例えば、輪郭ＰＲｊ＋１の各画素Ｐｉから輪郭ＰＲｊ上で最短距離となる画素Ｑｉまでの距離ＰｉＱｉを算出し、ＰＱｉのばらつきが僅かである場合には、注目区間を画素Ｐｉ、Ｑｉの中点Ｍｉの点列に沿った直線または曲線で近似し得る。近似直線、近似曲線の太さは、例えば距離ＰｉＱｉの平均値とする。線や線の集合体である表罫線は、太さを持つ線の集合とすることにより、効率よくベクトル表現することができる。
【００３６】
ステップＳ１２０３において、各ベクトルデータの始点、終点を算出する。
【００３７】
ステップＳ１２０４において、ステップＳ１２０３で求められた始点、終点情報を用いて、図形要素を検出する。図形要素とは、区分線が構成している閉図形であり、検出に際しては、始点、終端となっている共通の角の画素においてベクトルを連結する。すなわち、閉形状を構成する各ベクトルはその両端にそれぞれ連結するベクトルを有しているという原理を応用する。
【００３８】
ステップＳ１２０５において、ベクトルデータより両端に連結していない不要なベクトルを除去し、閉図形を構成するベクトルを抽出する。
【００３９】
ステップＳ１２０６において、閉図形を構成するベクトルについて、いずれかのベクトルの端点（始点または終点）を開始点とし、一定方向、例えば時計回りに、順にベクトルを探索する。すなわち、他端点において他のベクトルの端点を探索し、所定距離内の最近接端点を連結ベクトルの端点とする。閉図形を構成するベクトルを１まわりして開始点に戻ったとき、通過したベクトルを全て一つの図形要素を構成する閉図形としてグループ化する。また、閉図形内部にある閉図形構成ベクトルも全てグループ化する。さらにまだグループ化されていないベクトルの始点を開始点とし、同様の処理を繰り返す。
【００４０】
ステップＳ１２０７において、ステップＳ１２０５で除去された不要ベクトルのうち、ステップＳ１２０６で閉図形としてグループ化されたベクトルに端点が近接しているベクトルを検出し、一つの図形要素としてグループ化する。これによって、図形要素内に存在する他の図形要素、もしくは区分線をグループ化し、一つの図形オブジェクトとすることが出来る。また、図形要素内に他の図形要素、区分線が存在しない場合は図形要素を図形オブジェクトとする。
【００４１】
以上の処理によってグラフィック領域矩形ブロックを、ベクトル化された一つのオブジェクトに変換することが出来る。
【００４２】
次に、図１３と図１４を用いて、ステップＳ３０７のアプリケーション画像データ生成について詳細に説明する。図１３は、本実施例に係るベクトル化処理結果のデータ構成を示すマップである。図１４は、アプリケーション画像データ生成処理の詳細を示すフローチャートである。
【００４３】
まず、ステップＳ１４０１において、ステップＳ３０４のベクトル化で生成された中間データを取得する。本実施形態において、中間データは、以下のようなドキュメント・アナリシス・アウトプット・フォーマット（以下、ＤＡＯＦ）と呼ぶ形式で保存されているものとする。図１３に示すように、ＤＡＯＦは、ヘッダ１３０１、レイアウト記述データ部１３０２、文字認識記述データ部１３０３、表記述データ部１３０４、画像記述データ部１３０５よりなる。ヘッダ１３０１には、処理対象の入力画像に関する情報が保持される。レイアウト記述データ部１３０２には、入力画像中の矩形ブロックの属性である文字、グラフィック（線画、図面  、表、ライン）、写真等の情報と、これら属性が認識された各矩形ブロックの位置情報が保持される。文字認識記述データ部１３０３には、文字領域矩形ブロックのうち、文字認識して得られる文字認識結果が保持される。表記述データ部１３０４には、表の属性を持つグラフィック領域矩形ブロックの表構造の詳細が格納される。画像記述データ部１３０５には、ベクトル化の処理が指示された特定領域においては、ベクトル化処理により得られたブロックの内部構造や、画像の形状や文字コード等あらわすデータの集合が保持される。一方、ベクトル化処理の対象ではない特定領域以外の矩形ブロックでは、オブジェクトに分割されたビットマップ画像データそのものが保持される。
【００４４】
次に、ステップＳ１４０２において、後述する文書構造ツリー生成を行う。
【００４５】
ステップＳ１４０３において、文書構造ツリーを元に、ＤＡＯＦ内の実データを取得し、後述するアプリケーション画像データを生成する。
【００４６】
図１５と図１６、図１７を用いて、前記ステップＳ１４０２の文書構造ツリー生成について説明する。図１５は、文書構造ツリー生成の処理を示すフローチャートである。図１６は、文書構造ツリー生成処理の対象となる文書の例を示す図で、図１７は、文書構造ツリー生成の処理によって生成される文書構造ツリーを示す図である。
【００４７】
図１５に示す文書構造ツリー生成の処理における全体制御の基本ルールとして、処理の流れはミクロブロック（単一矩形ブロック）からマクロブロック（矩形ブロックの集合体）へ移行する。以後「矩形ブロック」は、ミクロブロックおよびマクロブロック両者を意味するものとする。
【００４８】
まず、ステップＳ１５０１において、データ処理装置１１５は、矩形ブロック単位で、縦方向の関連性に基づいて、矩形ブロックを再グループ化する。図１５の処理は繰り返し実行されることがあるが、処理開始直後はミクロブロック単位での判定となる。ここで、関連性とは、距離が近い、ブロック幅（横方向の場合は高さ）がほぼ同一であることなどの特徴によって定義される。また、距離、幅、高さなどの情報はＤＡＯＦを参照し、抽出する。例えば、図１６の文書では、最上部で、矩形ブロックＴ１、Ｔ２が横方向に並列されている。矩形ブロックＴ１、Ｔ２の下には横方向セパレータＳ１が存在し、横方向セパレータＳ１の下に矩形ブロックＴ３、Ｔ４、Ｔ５、Ｔ６、Ｔ７が存在する。矩形ブロックＴ３、Ｔ４、Ｔ５は、横方向セパレータＳ１下側の領域における左半部において上から下に、縦方向に配列され、矩形ブロックＴ６、Ｔ７は、横方向セパレータＳ１下側の領域における右半部において上下に配列されている。ステップＳ１６０１の縦方向の関連性に基づくグルーピングの処理を実行すると、矩形ブロックＴ３、Ｔ４、Ｔ５が１個のグループ（矩形ブロック）Ｖ１にまとめられ、矩形ブロックＴ６、Ｔ７が１個のグループ（矩形ブロック）Ｖ２にまとめられる。グループＶ１、Ｖ２は同一階層となる。
【００４９】
次に、ステップＳ１５０２において、縦方向のセパレータの有無をチェックする。セパレータは、ＤＡＯＦ中でライン属性を持つオブジェクトであり、明示的にブロックを分割する機能をもつ。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として左右に分割する。図１６では縦方向のセパレータは存在しない。
【００５０】
次に、ステップＳ１５０３において、縦方向のグループ高さの合計が入力画像の高さに等しくなったか否か判断する。すなわち縦方向（例えば上から下）に処理対象の領域を移動しながら、横方向のグルーピングを行うとき、入力画像全体の処理が終了したときには、グループ高さ合計が入力画像高さになることを利用し、処理の終了判断を行う。グルーピングが終了したときはそのまま処理終了し、グルーピングが終了していなかったときはステップＳ１５０４に進む。
【００５１】
次に、ステップＳ１５０４において、横方向の関連性に基づくグルーピングの処理を実行する。これによって、例えば図１６の矩形ブロックＴ１、Ｔ２が１個のグループ（矩形ブロック）Ｈ１にまとめられ、矩形ブロックＶ１、Ｖ２が１個のグループ（矩形ブロック）Ｈ２にまとめられる。グループＨ１、Ｈ２は同一階層となる。ここでも、処理開始直後はミクロブロック単位での判定となる。
【００５２】
次に、ステップＳ１５０５において、横方向のセパレータの有無をチェックする。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として上下に分割する。図１６では横方向のセパレータＳ１が存在する。以上の処理結果は図１７のツリーとして登録される。図１７において、入力された１ページのビットマップ画像データＶ０は、最上位階層にグループＨ１、Ｈ２、セパレータＳ１を有し、グループＨ１には第２階層の矩形ブロックＴ１、Ｔ２が属する。グループＨ２には、第２階層のグループＶ１、Ｖ２が属し、グループＶ１には、第３階層の矩形ブロックＴ３、Ｔ４、Ｔ５が属し、グループＶ２には、第３階層の矩形ブロックＴ６、Ｔ７が属する。本実施例において、Ｖ０はページを表し、Ｖ０の下位階層にあるものがオブジェクトとなる。
【００５３】
最後に、ステップＳ１５０６において、横方向のグループ長合計が入力画像の幅に等しくなったか否か判断する。これによって横方向のグルーピングに関する終了判断を行う。横方向のグループ長がページ幅となっている場合は、文書構造ツリー生成の処理を終了する。横方向のグループ長がページ幅となっていないときは、ステップＳ１５０１に戻り、再びもう一段上の階層で、縦方向の関連性チェックから繰り返す。
【００５４】
次に、図１８を用いて、本実施例におけるアプリケーション画像データのフォーマットの一例を示す。本実施例では、アプリケーション画像データのフォーマットとして、Ｓｃａｌａｂｌｅ  Ｖｅｃｔｏｒ  Ｇｒａｐｈｉｃｓ（以下、ＳＶＧ）形式を用いて説明する。
【００５５】
図１８では説明のため、各オブジェクトの表記を枠１８０１〜１８０４で囲って示している。各オブジェクトは、オブジェクトの領域を示す領域情報と、ＤＡＯＦ内の実データから取得する描画要素を持つ。また、領域情報のみで描画要素を持たないオブジェクト（例えば図１７のＨ１、Ｈ２、Ｖ１、Ｖ２など）を持つことも可能である。１８０１は写真属性を示し、そこには、写真オブジェクトの領域の示す領域情報と、描画要素としてビットマップ情報が示されている。１８０２は文字オブジェクトの情報が、１８０３では、１８０２で示した内容をベクトル化されたオブジェクトとして表現している。続く１８０４は、線画などのグラフィックオブジェクトを表す。
【００５６】
なお、本実施例ではアプリケーション画像データをＳＶＧ形式で表記しているが、文書の意味や構造を記述・保持できる画像フォーマットであれば良く、これに限定されるものではない。
【００５７】
図１９は、本実施例における携帯情報端末１０７の構成例を示すブロック図である。
【００５８】
携帯情報端末１０７は、メインボード１９００、ＬＣＤ１９０１、タッチパネル１９０２、ボタンデバイス１９０３から構成される。また、ＬＣＤ１９０１とタッチパネル１９０２をまとめてタッチＵＩ１９０４と呼ぶこととする。
【００５９】
メインボード１９００の主な構成要素は以下である。ＣＰＵ１９０５、無線ＬＡＮモジュール１９０６、電源コントローラ１９０７、ディスプレイコントローラ（ＤＩＳＰＣ）１９０８、パネルコントローラ（ＰＡＮＥＬＣ）１９０９、ＲＯＭ１９１０、ＲＡＭ１９１１、二次電池１９１２、タイマー１９１３。それぞれのモジュール１９０５〜１９１３は、バス（不図示）によって接続されている。
【００６０】
ＣＰＵ１９０５は、バスに接続される各デバイスを制御すると共に、ＲＯＭ１９１０に記憶された後述のソフトウェアモジュール２０００を、ＲＡＭ１９１１に展開して実行するプロセッサである。ＲＡＭ１９１１は、ＣＰＵ１９０５のメインメモリ、ワークエリア、ＬＣＤ１９０１に表示するビデオイメージ用エリア、およびＭＦＰ１００から送信される前記アプリケーション画像データの保存領域として機能する。
【００６１】
ディスプレイコントローラ（ＤＩＳＰＣ）１９０８は、ＣＰＵ１９０５の要求に応じて、ＲＡＭ１９１１に展開されたビデオイメージ出力を高速に切り替えるとともに、ＬＣＤ１９０１に同期信号を出力する。結果として、ＲＡＭ１９１１のビデオイメージが、ＤＩＳＰＣ１９０８の同期信号に同期してＬＣＤ１９０１に出力され、ＬＣＤ１９０１上にイメージが表示される。
【００６２】
パネルコントローラ（ＰＡＮＥＬＣ）１９０９は、ＣＰＵ１９０５の要求に応じて、タッチパネル１９０２およびボタンデバイス１９０３を制御する。その制御によって、タッチパネル１９０２上の指又はスタイラスペンなどの指示物の押下位置や、ボタンデバイス１９０３上の押下されたキーコードなどが、ＣＰＵ１９０５に通知される。押下位置情報は、タッチパネル１９０２の横方向の絶対位置を示す座標値（以下ｘ座標）と、縦方向の絶対位置を示す座標値（以下ｙ座標）から成る。タッチパネル１９０２は複数ポイントの押下を検知することが可能で、その場合ＣＰＵ１９０５には押下点数分の押下位置情報が通知される。
【００６３】
電源コントローラ１９０７は、外部電源（不図示）と接続され電力の供給を受ける。これによって、電源コントローラ１９０７に接続された二次電池１９１２を充電しながら、且つ、携帯情報端末１０７全体に電力を供給する。外部電源から電力が供給されないときは、二次電池１９１２からの電力を携帯情報端末１０７全体に供給する。
【００６４】
無線ＬＡＮモジュール１９０６は、ＣＰＵ１９０５の制御に基づいて、前記ＬＡＮ１０２に接続された無線アクセスポイント（不図示）上の無線ＬＡＮモジュールとの無線通信を確立し、携帯情報端末１０７との通信を仲介する。無線ＬＡＮモジュール１９０６には、例えばＩＥＥＥ８０２．１１ｂなどがある。
【００６５】
タイマー１９１３は、ＣＰＵ１９０５の制御に基づいて、ジェスチャイベント発生部２００１へのタイマー割込を発生させる。ジェスチャイベント発生部２００１については後述する。
【００６６】
図２０は、携帯情報端末１０７のＣＰＵ１９０５で実行処理されるソフトウェアモジュール２０００の構成を示すブロック図である。ソフトウェアモジュール２０００を構成する各モジュールについて説明する。
【００６７】
ジェスチャイベント発生部２００１は、ユーザのタッチ入力を受けて、後述する各種ジェスチャイベントを発生させる。ジェスチャイベント発生部２００１は、発生したジェスチャイベントを、ジェスチャイベント処理部２００２へ送信する。ジェスチャイベント処理部２００２は、ジェスチャイベント発生部２００１で発生したジェスチャイベントを受信して、各ジェスチャイベントと、前記アプリケーション画像データに記述された文書構造に応じた処理を実行する。描画部２００３は、ジェスチャイベント処理部２００２の実行結果に応じて、ＭＦＰ１００から送信される前記アプリケーション画像データをＬＣＤ１９０１へ描画する。アプリケーション画像データの表示の方法については後述する。
【００６８】
次に、図２１を用いて、ジェスチャイベント発生部２００１で発生するジェスチャイベント名の一覧と、各イベントが発生したときに、ジェスチャイベント処理部２２００へ送信する情報を示している。
【００６９】
図２１（ａ）は、タッチ押下イベントであり、最新のタッチ座標の座標値とタッチ座標数が送信される。タッチ座標とは、タッチパネル１９０２にユーザの指が触れている１点の座標のことで、ｘ座標とｙ座標で表される１組の座標値を持つ。また、タッチ座標数とは、タッチパネル１９０２にユーザの指が接触したタッチ座標の数を示している。なお、タッチ座標は、タッチパネル１９０２へユーザの指が触れたとき、指が移動したとき、指が離れたとき、タイマー１９１３からの割り込みが発生したときに更新される。
【００７０】
図２１（ｂ）は、スワイプイベントであり、最新のタッチ座標の座標値と、最新と直前の座標値の差分から計算した移動距離が送信される。ここで、スワイプとは、指先をタッチパネル１９０２に接触させたまま、１方向に移動（滑らすような）動作のことをいう。
【００７１】
図２１（ｃ）は、ピンチインイベントであり、最新の２点のタッチ座標の中心座標値、及び、２点のタッチ座標を結ぶ直線の縮小距離から計算したピンチインの縮小率が送信される。ここで、ピンチインとは、２つの指先をタッチパネル１９０２に接触させたまま、互いに近づける（つまむような）動作のことをいう。
【００７２】
図２１（ｄ）は、ピンチアウトイベントであり、最新の２点のタッチ座標の中心座標値、及び、２点のタッチ座標を結ぶ直線の拡大距離から計算したピンチアウトの拡大率が送信される。ここで、ピンチアウトとは、２つの指先をタッチパネル１９０２に接触させたまま、互いに遠ざける（指を広げるような）動作のことをいう。
【００７３】
図２１（ｅ）は、２点スワイプイベントであり、最新の２点のタッチ座標の座標値、及び、２点のタッチ座標の最新と直前の座標値の差分から計算した移動距離が送信される。２点スワイプイベントは、２点のタッチ座標が同じ方向に移動している場合に発生する。
【００７４】
図２１（ｆ）は、ローテートイベントであり、最新の２点のタッチ座標の座標値から計算した回転の中心座標値、及び、２点のタッチ座標の最新と直前の座標値から計算した回転角度が送信される。ここで、ローテートとは、２つの指先をタッチパネル１９０２に接触させたまま、２つの指先をタッチパネル１９０２に対して回転させる動作のことを言う。
【００７５】
図２１（ｇ）は、フリックイベントであり、最新のタッチ座標の座標値、及び、最新と直前の座標値から計算した指の移動速度が送信される。ここで、フリックとは、スワイプ中に指を離す（指をはじくような）動作のことをいう。
【００７６】
図２１（ｈ）は、タッチ解除イベントであり、タッチパネル１９０２からユーザの指が離れたときの最新のタッチ座標の座標値、及び、座標数が送信される。
【００７７】
図２１（ｉ）は、ダブルタップイベントであり、最新のタッチ座標の座標値が送信される。ここで、ダブルタップとは、所定の時間内に後述のシングルタップイベントが発生したことを言う。
【００７８】
図２１（ｊ）は、シングルタップイベントであり、最新のタッチ座標の座標値が送信される。ここで、シングルタップとは、前述のタッチ押下イベントの後、所定の時間内にタッチ解除イベントが発生したことを言う。
【００７９】
図２１（ｋ）は、ロングタップイベントであり、最新のタッチ座標の座標値が送信される。ここで、ロングタップとは、前述のタッチ押下イベントの後、所定の時間以上経過してからタッチ解除イベントが発生したことを言う。
【００８０】
図２１（ｌ）は、タッチアンドホールドイベントであり、最新のタッチ座標の座標値が送信される。ここで、タッチアンドホールドイベントとは、タッチパネル１９０２にユーザの指が触れてから一度も移動することなく所定の時間以上経過したことを言う。
【００８１】
なお、ここでは、ユーザのタッチ入力の例として指を使った場合を示すが、タッチ入力はスタイラスペンなどによる入力でも良い。
【００８２】
次に、図２２と図２３を用いて、本実施例における携帯情報端末１０７の前記アプリケーション画像データ受信時の処理について説明する。図２２は、携帯情報端末１０７がアプリケーション画像データを受信した際のフローチャートである。図２３は、本実施例における携帯情報端末１０７のタッチＵＩ１９０４の画面表示例である。
【００８３】
まず、ステップＳ２２００において、携帯情報端末１０７は、無線ＬＡＮモジュール１９０６を介してＭＦＰ１００から前記アプリケーション画像データを受信すると、ＲＡＭ１９１１に受信したアプリケーション画像データを保存する。
【００８４】
次に、ステップＳ２２０１において、ＲＡＭ１９１１に保存したアプリケーション画像データの構文を解析し、先頭ページと、それに含まれるオブジェクトを読み込む。
【００８５】
次に、ステップＳ２２０２において、描画部２００３は読み込んだ先頭ページに含まれる背景、文字、写真、グラフィックの全てのオブジェクトを、オブジェクトの始点の座標と幅、高さに応じてレンダリングしてタッチＵＩ１９０４の表示状態を更新する。このとき、先頭ページは、図２３のページ２３００に示すように、タッチＵＩ１９０４の幅に合わせて表示倍率が制御される。また、前記表示倍率に縮小したときのページの高さがタッチＵＩ１９０４よりも小さい場合は、タッチＵＩ１９０４の中央に表示されるように、タッチＵＩ１９０４上の座標において、ページ２３００の始点が制御される。また、前記表示倍率に縮小したときのページ２３００の高さがタッチＵＩ１９０４よりも大きい場合は、タッチＵＩ１９０４上の座標において、ページ２３００の始点がタッチＵＩ１９０４の始点（例えば画面の左上）に合うように制御される。このように、タッチＵＩ１９０４においてページ全体を表示する表示制御方法を、本実施例ではページ表示モードを呼ぶこととする。
【００８６】
次に、図２３と図２４を用いて、本実施例における携帯情報端末１０７の前記アプリケーション画像データの操作制御に係わるソフトウェアモジュールについて説明する。
【００８７】
図２４は、前記ジェスチャイベント処理部２００２において、アプリケーション画像データの操作制御に係わるソフトウェアモジュールの構成を示すブロック図である。
【００８８】
ジェスチャイベント処理部２００２は、ジェスチャイベント発生部２００１から、図２１に示すジェスチャイベントを受信する。表示変更イベント処理部２４００は、ジェスチャイベント処理部２００２が受信するジェスチャイベントの内、シングルタップイベント（図２１（ｊ））に対する処理を行う。表示変更イベント処理部２４００は、シングルタップイベントを受信すると、シングルタップイベントのタッチ座標の座標値が、図２３のモード切替ボタン２３０１、次へボタン２３０２、前へボタン２３０３の何れかの上にあるかを判定する。そして、シングルタップイベントのタッチ座標が「モード切替ボタン」２３０１上である場合は、後述するモード切替処理を行う。また、前記タッチ座標が「次へボタン」２３０２上である場合は、後述する「次選択処理」（次へボタン選択処理）を行い、前記タッチ座標が「前へボタン」２３０３上である場合は、後述する「前選択処理」（前へボタン選択処理）を行う。「次選択処理」と「前選択処理」は、表示変更イベント処理部２４００内の表示順番制御部２４０２と表示範囲制御部２４０３において行われる。
【００８９】
スワイプイベント処理部２４０１は、図２１（ｂ）のスワイプイベントに対する処理を行う。ジェスチャイベント処理部２００２がスワイプイベントを受信すると、スワイプイベントの移動距離に応じて、タッチＵＩ１９０４上の座標において、ページ２３００の始点を移動させ、その上でタッチＵＩ１９０４の表示状態を更新する。また、スワイプイベント処理部２４０１内の移動範囲制限部２４０４において、後述する移動範囲制限処理を行って、タッチＵＩ１９０４に表示されるページ２３００の移動範囲を制限する。
【００９０】
拡大・縮小イベント処理部２４０５は、図２１（ｃ）のピンチインイベントと、図２１（ｄ）のピンチアウトイベントに対する処理を行う。ジェスチャイベント処理部２００２は、ピンチインイベントやピンチアウトイベントを受信すると、前記二つのイベントの縮小率もしくは拡大率に応じてページ２３００の表示倍率を変化させ、その上でタッチＵＩ１９０４の表示状態を更新する。また、拡大・縮小イベント処理部２４０５内の縮小時表示モード切替部２４０６において、後述する縮小時表示モード切替処理を行う。
【００９１】
オブジェクト選択処理部２４０７は、図２１（ｉ）のダブルタップイベントに対する処理を行う。ジェスチャイベント処理部２００２がダブルタップイベントを受信すると、ダブルタップイベントのタッチ座標の座標値を用いて後述するオブジェクト選択処理を行う。なお、前記オブジェクト選択処理は、前記ページ表示モードでのみ動作するようオブジェクト選択イベント処理部２４０７によって制御される。
【００９２】
次に、図２３と図２５、図２６を用いて、表示変更イベント処理部２４００において行われるモード切替処理について説明する。図２５は、モード切替処理のフローチャートであり、モード切替ボタン２３０１がユーザによりタップ指示されるのに応じて実行される。図２６は、本実施例における携帯情報端末１０７のタッチＵＩ１９０４の画面表示例である。
【００９３】
まず、ステップＳ２５００において、表示変更イベント処理部２４００は、モード切替ボタンが指示された時点で、携帯情報端末１０７に設定中の表示モードを取得する。表示モードとは、携帯情報端末１０７がアプリケーション画像データをタッチＵＩ１９０４に表示する方法を示し、本実施例の携帯情報端末１０７は、ページ全体を表示するのに適した前記ページ表示モードと、図２６に示すようにページ内の一部の領域（すなわちページ画像内の各オブジェクト）を拡大表示するのに適した部分領域表示モードの２つの表示モードを有する。前述した通り、アプリケーション画像データを携帯情報端末１０７が受信した直後はページ表示モードが設定されている。部分領域表示モードは、図２６に示す通り、ページ２３００内の各オブジェクトが大きく表示されるようにページ２３００の表示倍率と始点を制御する表示モードである。文字オブジェクト２６０１を拡大表示対象のオブジェクトとして選択したときに表示される画面を図２６（ｂ）に示す。なお、図２６（ａ）のオブジェクト２６０１を囲む破線は、説明をわかり易くするために描いたもので、ページ２３００上には存在しない。また、本実施例では、図２６（ｂ）に示すように、拡大表示対象のオブジェクト２６０１の領域が透明で且つそれ以外の領域が半透明グレーである半透明マスク２６００を、ページ２３００の上に重ねて表示することによって、対象のオブジェクトだけが見やすくなるようにしている。このような半透明マスクを重ねて表示することにより、対象のオブジェクト以外が暗く表示されるので、対象のオブジェクトが強調表示され、ユーザは表示対象になっているオブジェクトの領域を特定しやすくなる。表示変更イベント処理部２４００は、モード切替ボタン２３０１が指示されたときに設定中の表示モードが、部分領域表示モードである場合にはステップＳ２５０１に、ページ表示モードである場合にはステップＳ２５０４を実行する。
【００９４】
ステップＳ２５０１において、表示変更イベント処理部２４００は、図２６の半透明マスク２６００を非表示設定（半透明マスクＯＦＦ）にして、ページ表示モードへの切り替えを行う。
【００９５】
ステップＳ２５０２において、表示変更イベント処理部２４００は、前述した通り、タッチＵＩ１９０４の幅に合わせてページ２３００の表示倍率を制御すると共に、ページ２３００の始点を制御して、ページの表示範囲を決定する。
【００９６】
ステップＳ２５０３において、表示変更イベント処理部２４００は、当該決定されたページの表示範囲に基づいて、タッチＵＩ１９０４の表示状態を更新する。
【００９７】
また、モード切替ボタン２３０１が指示されたときに設定中の表示モードがページ表示モードであった場合には、ステップＳ２５０４において、表示変更イベント処理部２４００は、表示モードを部分領域表示モードへ切り替え、半透明マスク２６００を表示する設定（半透明マスクＯＮ）に変更する。
【００９８】
次に、ステップＳ２５０５において、表示変更イベント処理部２４００は、ページ２３００内の先頭オブジェクトを読み込み、先頭オブジェクトの始点と幅、高さを取得する。ここで、先頭オブジェクトとは、アプリケーション画像データの文書構造ツリーにおいて、最初に読み込まれるオブジェクトである。
【００９９】
表示変更イベント処理部２４００内の表示範囲制御部２４０３は、ステップＳ２５０６において、後述する部分領域表示範囲決定処理を行った後、ステップＳ２５０３で、当該決定された表示範囲に基づいてタッチＵＩ１９０４の表示状態を更新する。なお、Ｓ２５０６の部分領域表示範囲決定処理では、ステップＳ２５０５で読み込んだオブジェクトの属性に応じて、ページの表示倍率や始点を制御し、タッチＵＩ１９０４に表示する部分領域の表示範囲を決定する。部分領域表示範囲決定処理の詳細は後述する。また、このとき表示対象となっているオブジェクトの部分領域以外の領域にはグレーの半透明マスクがかけられるので、ユーザは、表示対象となっているオブジェクトを識別しやすくなる。
【０１００】
次に、表示範囲制御部２４０３で行われるステップＳ２５０６の部分領域表示範囲決定処理の詳細について、図２７のフローチャートを用いて説明する。
【０１０１】
まず、ステップＳ２７００において、表示範囲制御部２４０３は、読み込んだオブジェクトの属性を判定する。属性が文字の場合はステップＳ２７０１に進み、属性が表である場合はステップＳ２７１１に進み、それ以外の属性である場合はステップＳ２７１２に進む。
【０１０２】
ステップＳ２７０１において、表示範囲制御部２４０３は、文字属性である当該表示対象のオブジェクトが、箇条書きであるかを判定する。ここでいう箇条書きのオブジェクトとは、各文字列もしくは行の先頭に点や数字といった行頭文字が存在するオブジェクトを指すものとする。なお、前記行頭文字は、ＯＣＲ結果から取得することができる。オブジェクトが箇条書きでなく、通常の文字列であった場合にはステップＳ２７０２に進み、箇条書きであった場合にはステップＳ２７１２に進む。
【０１０３】
ステップＳ２７０２において、表示範囲制御部２４０３は、オブジェクトの文字の組み方向を取得する。オブジェクトの組み方向は、前記ステップＳ３０４のベクトル化の過程で得られている。
【０１０４】
ステップＳ２７０３において、表示範囲制御部２４０３は、文字の組み方向を判定し、組み方向が縦書きである場合にはステップＳ２７０４に進み、横書きである場合にはステップＳ２７０５に進む。
【０１０５】
文字の組み方向が縦書きの場合、ステップＳ２７０４において、表示範囲制御部２４０３は、当該オブジェクトの高さがタッチＵＩ１９０４の高さに入るようにページの表示倍率を設定する。
【０１０６】
また、文字の組み方向が横書きの場合、ステップＳ２７０５において、表示範囲制御部２４０３は、当該オブジェクトの幅がタッチＵＩ１９０４の幅に入るようにページの表示倍率を設定する。
【０１０７】
次に、ステップＳ２７０６において、ステップＳ２７０４またはステップＳ２７０５で設定した表示倍率に拡縮したオブジェクトの全体がタッチＵＩ１９０４に表示できるかを判断する。オブジェクト全体がタッチＵＩ１９０４よりも大きく、全体を表示できない場合にはステップＳ２７０７に進み、一方、オブジェクト全体がタッチＵＩ１９０４よりも小さく、全体を表示できる場合にはステップＳ２７１０に進む。
【０１０８】
ステップＳ２７０７において当該オブジェクトにおける文字の組み方向を判定し、縦書きであると判定した場合はステップＳ２７０８に進み、横書きであると判定した場合はステップＳ２７０９に進む。
【０１０９】
ステップＳ２７０８において、表示範囲制御部２４０３は、オブジェクト全体がタッチＵＩ１９０４に表示できない縦書きの文字領域を表示するので、当該オブジェクトの右上端がタッチＵＩ１９０４の右上端に合うように、前記ページ２３００の始点位置を設定する。すなわち、縦書きの場合の先頭行が表示されるように表示位置を設定する。
【０１１０】
ステップＳ２７０９において、表示範囲制御部２４０３は、オブジェクト全体がタッチＵＩ１９０４に表示できない横書きの文字領域を表示するので、当該オブジェクトの左上端がタッチＵＩ１９０４の左上端に合うように、前記ページ２３００の始点を設定する。すなわち、横書きの場合の先頭行が表示されるように表示位置を設定する。
【０１１１】
また、ステップＳ２７１０において、オブジェクト全体がタッチＵＩ１９０４の画面内に収まるので、表示範囲制御部２４０３は、当該オブジェクトの中央がタッチＵＩ１９０４の中央に合うようにページ２３００の始点を設定する。
【０１１２】
なお、ステップＳ２７００でオブジェクトの属性が表であると判定した場合には、ステップＳ２７１１において、表示範囲制御部２４０３は、表のヘッダ位置を検出する。ヘッダの位置は、例えば、先頭行（一番上の行）と先頭列（一番左の列）の文字のフォント種がボールドであるか否か、ベクトル化した際のベクトルデータの近似曲線の太さ、表罫線の太さ、表の各セルの背景色などによって判断することができる。ステップＳ２７１１で検出した表のヘッダ位置が先頭行である場合には、ステップＳ２７０３からステップＳ２７０５に進む。また、表のヘッダ位置が先頭列である場合には、ステップＳ２７０３からステップＳ２７０４に進む。また、ステップＳ２７０７では、表のヘッダは一番上の行か一番左の列に存在することが一般的であるため、ステップＳ２７０９に進み、オブジェクトの左上端がタッチＵＩの左上端に合うようにページの始点を設定する。このようにすることで、表のヘッダが表示されるように表示位置が設定されることになる。
【０１１３】
また、ステップＳ２７００でオブジェクトの属性がその他の属性（文字・表以外の属性）と判定された場合、もしくは、ステップＳ２７０１で箇条書きであると判断された場合、ステップＳ２７１２において、表示範囲制御部２４０３は、当該オブジェクト全体がタッチＵＩ１９０４に入るように、ページの表示倍率を設定する。そして、ステップＳ２７１０において、オブジェクトの中央がタッチＵＩ１９０４の中央に合うようにページ２３００の始点を設定する。
【０１１４】
「次へボタン」２３０２がユーザによりタップ（指定）されたときに実行される「次選択処理（次へボタン選択処理）」について、図２８のフローチャートを用いて説明する。
【０１１５】
ステップＳ２８００において、表示変更イベント処理部２４００は、「次へボタン」２３０２がタップされたときに携帯情報端末１０７に設定されている表示モードを取得する。取得した表示モードが部分領域表示モードである場合には、ステップＳ２８０１に進み、ページ表示モードである場合にはステップＳ２８０５に進む。
【０１１６】
ステップＳ２８０１において、表示順番制御部２４０２は、現在読み込んでいるページの全オブジェクトから、文書構造ツリーに基づいて次に表示すべきオブジェクトを選択し、そのオブジェクトを読み込む。本実施例において、文書ツリー構造上の表示順番は、文書ツリー構造において、先頭の上位階層のオブジェクト、そのオブジェクトの下位階層に属するオブジェクトの順で、更に、その下位階層のオブジェクトの表示が全て終わった後、次の上位階層のオブジェクト、その下位階層のオブジェクト、というような順番であるとする。例えば、図１７において、Ｖ０はページを表し、最初に読み込まれるオブジェクトはＨ１である。Ｈ１のオブジェクトが部分領域表示モードでタッチＵＩ１９０４に表示されている状態で、「次選択処理」が行われると、Ｈ１は下位階層を持つため、Ｔ１のオブジェクトが読み込まれる。さらに、Ｔ１のオブジェクトが表示されている状態で「次選択処理」が行われると、Ｔ１は下位階層を持たず、同階層にＴ２が存在するため、Ｔ２が読み込まれる。Ｔ２のオブジェクトが表示されている状態で「次選択処理」が行われると、Ｔ２は下位階層を持たず、同階層に次のオブジェクトは存在しないため、次の上位階層のＳ１が読み込まれる。なお、本実施例において、描画要素を持たないＨ１を選択して読み込むとしているが、描画要素を持つＴ１やＴ２だけを選択するようにしても良いことは言うまでもない。また、例えば、文字属性のオブジェクトのみなど、特定の属性を持つオブジェクトのみを選択したり、特定の属性のみを除外して選択することも可能である。
【０１１７】
ステップＳ２８０２において、表示順番制御部２４０２は、ステップＳ２８０１で次のオブジェクトを読み込めたか否かを判定する。ステップＳ２８０１で次のオブジェクトが読み込めた場合（選択可能なオブジェクトがあった場合）は、当該読み込んだオブジェクトを処理対象としてステップＳ２５０６に進む。なお、ステップＳ２５０６の部分領域表示範囲決定処理は図２７と同様であるため、ここでの説明は省く。そして、ステップＳ２８０３において、当該読み込まれたオブジェクトの属性および始点と幅、高さに基づいて制御されたページの表示倍率と始点を用いて、タッチＵＩ１９０４の表示状態を更新する。
【０１１８】
一方、ステップＳ２８０１で次のオブジェクトが読み込めなかった場合（次に選択可能なオブジェクトが無かった場合）は、既にページ内の最終オブジェクトが読み込まれている状態であり、ステップＳ２８０２で全てのオブジェクトの表示処理が終了したと判断し、ステップＳ２８０４に進む。ステップＳ２８０４において、表示順番制御部２４０２は、部分領域表示モードを終了して半透明マスク２６００を非表示にして、ページ表示モードへと切り替える。
【０１１９】
ステップＳ２８０５において、表示モードがページ表示モードであるので、ＲＡＭ１９１１に保存したアプリケーション画像データの構文を解析し、次のページと、それに含まれるオブジェクトを読み込む。
【０１２０】
ステップＳ２８０６において、表示順番制御部２４０２は、ステップＳ２８０５で次のページが読み込めた場合はステップＳ２８０７に進む。一方、既にＲＡＭ１９１１に保存したアプリケーション画像データの最終ページが読み込まれている状態であり、Ｓ２８０５で次に読み込み可能なページが無かった場合は、ステップＳ２８０８に進む。ステップＳ２８０８では、ＲＡＭ１９１１に保存したアプリケーション画像データの構文を解析し、先頭ページと、それに含まれるオブジェクトを読み込む。
【０１２１】
次に、ステップＳ２８０７において、表示範囲制御部２４０３は、前述した通り、タッチＵＩ１９０４の幅に合わせてページの表示倍率を制御すると共に、ページの始点を制御して、ページの表示範囲を決定し、ステップＳ２８０３では、当該決定されたページ表示範囲に基づいてタッチＵＩ１９０４の表示状態を更新する。
【０１２２】
次に、「前へボタン」２３０２がユーザによりタップ（指定）されたときに実行される「前選択処理（前へボタン選択処理）」について、図２９のフローチャートを用いて説明する。
【０１２３】
前選択処理は、前記次選択処理とほぼ同じ構成であるため、ここでは異なるステップＳ２９００とステップＳ２９０１、ステップＳ２９０２についてのみ説明する。
【０１２４】
ステップＳ２９００において、表示順番制御部２４０２は、現在読み込んでいるページの全オブジェクトから、文書構造ツリーに基づいて次に表示すべきオブジェクトを選択し、そのオブジェクトを読み込む。本実施例において、「前へボタン」が指定されたときの文書ツリー構造上の表示順番は、文書ツリー構造において末尾の下位階層のオブジェクト、そのオブジェクトの上位階層のオブジェクトというように、下位階層から上位階層への順番であるとする。すなわち、下位階層のオブジェクトの表示が全て終わった後、その上位階層における他のオブジェクトの表示へと移るのもとする。例えば、図１７において、最初に読み込まれるオブジェクトは末尾の下位階層オブジェクトであるＴ７である。部分領域表示モードで、Ｔ７のオブジェクトがタッチＵＩ１９０４に表示されている状態で、「前選択処理」が行われると、同じ階層にＴ６が存在するため、Ｔ６のオブジェクトが読み込まれる。さらに、Ｔ６のオブジェクトが表示されている状態で「前選択処理」が行われると、同じ階層にその他のオブジェクトが存在しないため、その上位階層であるＶ２が読み込まれる。Ｖ２のオブジェクトが表示されている状態で「前選択処理」が行われると、Ｖ２は同じ階層にＶ１を持ち、更にＶ１は下位階層にオブジェクトを持つため、Ｖ１の下位階層の末尾にあるＴ５のオブジェクトが読み込まれる。なお、「前選択処理」においても、「次選択処理」と同様に、描画要素を持つオブジェクトだけを選択するようにしても良く、また、特定の属性を持つオブジェクトのみを選択したり、特定の属性のみを除外して選択することも可能である。
【０１２５】
次に、移動範囲制限部２４０４で行われる移動範囲制限処理について、図３０のフローチャートを用いて説明する。
【０１２６】
ステップＳ３０００において、移動範囲制限部２４０４は、スワイプ操作が行われたときの携帯情報端末１０７に設定されている表示モードを取得して、部分領域表示モードであるか判定する。表示モードが部分領域表示モードである場合にはステップＳ３００１に進み、ページ表示モードである場合には何も行わずに処理を終了する。
【０１２７】
ステップＳ３０００で表示モードが部分領域表示モードであると判定した場合には、ステップＳ３００１において、移動範囲制限部２４０４は、現在のページの表示倍率で表示したときの現在読み込まれているオブジェクトの幅が、タッチＵＩ１９０４の画面の幅より大きいか否かを判定する。このとき、前記オブジェクトの幅がタッチＵＩの画面幅よりも大きい場合には、ステップＳ３００２に進み、そうでない場合には、ステップＳ３００４に進む。
【０１２８】
ステップＳ３００２において、スワイプイベント処理部２４０１がスワイプイベントの移動距離に応じてオブジェクトを含むページの表示位置を移動した際に、移動範囲制限部２４０４は、オブジェクトの左端または右端がタッチＵＩ１９０４の画面内に移動したかを判定する。その結果、オブジェクトの左端または右端がタッチＵＩの画面内にあると判定した場合には、ステップＳ３００３に進み、そうでない場合には、ステップＳ３００６に進む。
【０１２９】
ステップＳ３００３において、移動範囲制限部２４０４は、画面内に移動された該オブジェクトの左端または右端をタッチＵＩの画面の端に移動させて、できるだけ該オブジェクトが表示されるように、ページの始点のｘ座標を補正する。
【０１３０】
また、ステップＳ３００１でオブジェクトの幅がタッチＵＩの画面幅よりも大きくない場合には、ステップＳ３００４において、スワイプイベントの移動距離に応じてオブジェクトを含むページの表示位置を移動した際に、移動範囲制限部２４０４は、オブジェクトの左端または右端がタッチＵＩの画面外に移動したかを判定する。その結果、オブジェクトの左端または右端がタッチＵＩの画面外にあると判定した場合には、ステップＳ３００５に進み、そうでない場合には、ステップＳ３００６に進む。
【０１３１】
ステップＳ３００５において、移動範囲制限部２４０４は、当該オブジェクトの左端または右端を画面の端に移動させて、該オブジェクトの全体が表示されるようにページの始点のｘ座標を補正する。
【０１３２】
ステップＳ３００６において、移動範囲制限部２４０４は、現在のページの表示倍率で表示したときの現在読み込まれているオブジェクトの高さが、タッチＵＩ１９０４の画面の高さより大きいか否かを判定する。このとき、前記オブジェクトの高さがタッチＵＩの画面高さよりも大きい場合には、ステップＳ３００７に進み、そうでない場合には、ステップＳ３００９に進む。
【０１３３】
ステップＳ３００７において、移動範囲制限部２４０４は、スワイプイベントの移動距離に応じてオブジェクトを含むページの表示位置を移動した際に、オブジェクトの上端または下端がタッチＵＩ１９０４の画面内に移動したかを判定する。その結果、オブジェクトの上端または下端がタッチＵＩの画面内にあると判定した場合には、ステップＳ３００８に進み、そうでない場合には、ステップＳ３０１１に進む。
【０１３４】
ステップＳ３００８において、移動範囲制限部２４０４は、画面内に移動されたオブジェクトの上端または下端を画面の端に移動させて、できるだけ該オブジェクトが表示されるようにページの始点のｙ座標を補正する。
【０１３５】
ステップＳ３００６でオブジェクトの高さがタッチＵＩの画面高さよりも大きくない場合には、ステップＳ３００９において、移動範囲制限部２４０４は、スワイプイベントの移動距離に応じてオブジェクトを含むページの表示位置を移動した際に、オブジェクトの上端または下端がタッチＵＩの画面外に移動したかを判定する。オブジェクトの上端または下端がタッチＵＩの画面外に移動したと判定した場合には、ステップＳ３０１０に進み、そうでない場合には、ステップＳ３０１１に進む。
【０１３６】
ステップＳ３０１０において、移動範囲制限部２４０４は、当該オブジェクトの上端または下端を画面内に移動させて、該オブジェクトの全体が表示されるようにページの始点のｙ座標を補正する。
【０１３７】
最後に、ステップＳ３０１１において、表示変更イベント処理部２４００は、ページの表示倍率と始点に応じてタッチＵＩ１９０４の表示状態を更新する。
【０１３８】
このように、オブジェクトの移動範囲を制限することで、ユーザは、オブジェクトの端部を容易に識別することができる。
【０１３９】
次に、ピンチイン操作がおこなわれときに、縮小時表示モード切替部２４０６で行われる縮小時表示モード切替処理について、図３１のフローチャートを用いて説明する。
【０１４０】
ステップＳ３１００において、縮小時表示モード切替部２４０６は、ユーザにより操作が行われたときの携帯情報端末１０７に設定されている表示モードを取得する。取得した表示モードが部分領域表示モードである場合にはステップＳ３１０１に進み、ページ表示モードである場合には何も行わすに処理を終了する。
【０１４１】
ステップＳ３１０１において、縮小時表示モード切替部２４０６は、現在のページの表示倍率で表示したときの現在読み込まれているオブジェクトの幅が、タッチＵＩ１９０４の画面の幅より小さいか否かを判定する。オブジェクトの幅がタッチＵＩの画面幅よりも小さい場合には、ステップＳ３１０２に進み、そうでない場合には何も行わずに処理を終了する。
【０１４２】
ステップＳ３１０２において、縮小時表示モード切替部２４０６は、現在のページの表示倍率で表示したときの現在読み込まれているオブジェクトの高さが、タッチＵＩ１９０４の画面の高さより小さいか否かを判定する。このとき、前記オブジェクトの高さがタッチＵＩの画面高さよりも小さい場合には、ステップＳ３１０３に進み、そうでない場合には何も行わずに処理を終了する。
【０１４３】
ステップＳ３１０３において、該オブジェクトを含むページの表示倍率がさらに縮小されようとしているのかを判断する。すなわち、縮小時表示モード切替部２４０６が受信したイベントがピンチインイベントであるか否かを判定する。ここで、ページがさらに縮小されようとしていると判断した場合には、ステップＳ３１０４に進み、そうでない場合には何も行わずに処理を終了する。
【０１４４】
ステップＳ３１０４において、縮小時表示モード切替部２４０６は、半透明マスク２６００を非表示にして、携帯情報端末１０７の表示モードを部分領域表示モードからページ表示モードに切り替える。
【０１４５】
最後に、ステップＳ３１０５において、表示変更イベント処理部２４００は、該ピンチインイベントに基づいて決定されるページの表示倍率と始点に応じてタッチＵＩ１９０４の表示状態を更新する。
【０１４６】
次に、ダブルタップ操作が行われたときに、オブジェクト選択処理部２４０７で行われるオブジェクト選択処理について、図３２のフローチャートを用いて説明する。
【０１４７】
まず、ステップＳ３２００において、オブジェクト選択処理部２４０７は、ユーザにより操作が行われたときの携帯情報端末１０７に設定されている表示モードを取得する。取得した表示モードがページ表示モードである場合にはステップＳ３２０１に進み、部分領域表示モードである場合には何も行わすに処理を終了する。
【０１４８】
ステップＳ３２０１において、オブジェクト選択処理部２４０７は、受信したダブルタップイベントのタッチ座標の座標値を取得する。前記タッチ座標の座標値はタッチＵＩ１９０４上の座標値であるため、タッチＵＩに表示しているページの表示倍率と始点に基づいて、ページにおける座標値に換算する。
【０１４９】
ステップＳ３２０２において、タッチＵＩに表示している現在のページ内の全オブジェクトの中から先頭オブジェクトの情報を読み込む。
【０１５０】
ステップＳ３２０３において、ステップＳ３２０１で求めたページにおける座標値が、読み込んだオブジェクトの領域情報内に含まれるか否かを判定する。前記ページにおける座標値が当該読み込んだオブジェクトの領域情報内にある場合には、ステップＳ３２０４に進み、そうでない場合にはステップＳ３２０６に進む。
【０１５１】
ステップＳ３２０４において、携帯情報端末１０７の表示モードをページ表示モードから部分領域表示モードに切り替える。同時に、非表示であった半透明マスク２６００を表示することで、当該ダブルタップされたオブジェクト以外の領域に半透明マスクがかかるように制御し、ステップＳ２５０６に進む。
【０１５２】
ステップＳ２５０６において、ステップＳ３２０２またはステップＳ３２０６で読み込んだオブジェクト（すなわち、当該ダブルタップされたオブジェクト）の部分領域表示範囲決定処理を行う。部分領域表示範囲決定処理については前述した通りであるので、ここでの詳細な説明は省く。
【０１５３】
そして、ステップＳ３２０５において、表示変更イベント処理部２４００は、部分領域表示範囲決定処理で決定したページの表示倍率と始点に応じてタッチＵＩ１９０４の表示状態を更新する。
【０１５４】
また一方、ステップＳ３２０６において、オブジェクト選択処理部２４０７は、現在のページ内の全オブジェクトの中から、現在読み込んでいるオブジェクトの次のオブジェクトの情報を読み込む。
【０１５５】
ステップＳ３２０７において、オブジェクト選択処理部２４０７は、ステップＳ３２０６で次のオブジェクトが読み込めたか否かを判定し、読み込めた場合にはステップＳ３２０３に戻り、読み込めなかった場合には何もせずに処理を終了する。
【０１５６】
なお、本実施例において、現在タッチＵＩに表示しているページ内の全オブジェクトを対象に、前記ページにおける座標値がオブジェクトの領域情報内にあるか否かを判定しているが、それに限るものではない。例えば、前記前選択処理や後選択処理と同様に、描画要素を持たないオブジェクトを無視し、描画要素を持つオブジェクトだけを選択するようにしても良い。また、例えば、文字属性のオブジェクトのみなど、特定の属性を持つオブジェクトのみを選択したり、特定の属性のみを除外して選択することも可能である。
【０１５７】
次に、図２６と図３３、図３４を用いて、本実施例における部分領域表示モードの表示を具体的に説明する。図３３と図３４は、本実施例における携帯情報端末１０７のタッチＵＩ１９０４の画面表示例である。
【０１５８】
図２６において、オブジェクト２６０１は横書きの文字の属性を持つオブジェクトである。オブジェクト２６０１は、図２６（ａ）のように破線で示す領域情報を持つ。オブジェクト２６０１の属性は文字であるため、オブジェクト２６０１が読み込まれた直後は、前記部分領域表示範囲決定処理において、オブジェクトの幅がタッチＵＩ１９０４の画面幅に入る倍率に、ページの表示倍率が設定される。オブジェクト２６０１の場合、当該設定されたページの表示倍率において、オブジェクトの高さも、タッチＵＩ１９０４の画面の高さより小さくなるため、該オブジェクトの中心がタッチＵＩ１９０４の中心に合うように、ページの始点が設定され、図２６（ｂ）に示すように表示される。
【０１５９】
また、図３３において、オブジェクト３３００は縦書きの文字の属性を持つオブジェクトである。オブジェクト３３００は、図３３（ａ）のように破線で示す領域情報を持つ。オブジェクト３３００の属性は文字であるため、オブジェクト３３００が読み込まれた直後は、前記部分領域表示範囲決定処理において、オブジェクトの高さがタッチＵＩ１９０４の画面高さに入る倍率に、ページの表示倍率が設定される。また、オブジェクト３３００の場合、当該設定されたページの表示倍率において、オブジェクトの幅が、タッチＵＩ１９０４の画面の幅よりも大きくなるため、オブジェクト右上端がタッチＵＩ１９０４の右上端に合うように、ページの始点が設定され、図３３（ｂ）に示すように表示される。
【０１６０】
また、図３４において、オブジェクト３４００は図面の属性を持つオブジェクトである。オブジェクト３４００は、図３４（ａ）のように破線で示す領域情報を持つ。オブジェクト３４００の属性は図面であるため、オブジェクト３４００が読み込まれた直後は、前記部分領域表示範囲決定処理において、オブジェクトの幅と高さがタッチＵＩ１９０４の画面幅と高さに入る倍率に、ページの表示倍率が設定される。また、オブジェクト中心がタッチＵＩ１９０４の中心に合うように、ページの始点が設定され、図３４（ｂ）に示すように表示される。
【０１６１】
次に、図３４と図３５、図３６を用いて、本実施例における前記移動範囲制限処理の制限例を具体的に説明する。図３５と図３６は、本実施例における携帯情報端末１０７のタッチＵＩ１９０４の画面表示例である。
【０１６２】
図３５（ａ）は、オブジェクト３４００をタッチＵＩ１９０４に表示した一例である。図３５（ａ）では、オブジェクト３４００の幅と高さがタッチＵＩ１９０４の画面幅と高さよりも小さく、オブジェクト３４００がタッチＵＩの画面内に全て収まるように表示されている。図３５（ｂ）は、ユーザの指が３５００から３５０１の方向（すなわち左方向）にスワイプ動作されたときの表示例である。スワイプイベント処理部２４０１は、スワイプイベントを受信するたびに移動距離だけページの始点を動かしてタッチＵＩ１９０４の表示を更新する。図３５（ｂ）では、ユーザのスワイプ動作によって、オブジェクト３４００の左端がタッチＵＩ１９０４の画面外に移動してしまっている。図３５（ｃ）は、スワイプイベント処理部２４０１によって図３５（ｂ）のように左端が画面外に移動されたオブジェクト３４００を、前記移動範囲制限処理によって画面内に戻して表示されるようにページの始点を補正した場合の表示例である。すなわち、オブジェクト３４００は、表示中のオブジェクトの幅と高さがタッチＵＩの画面幅と高さよりも小さいため、オブジェクト３４００が画面外に移動すると、移動範囲制限処理によって、画面内に表示されるようにページの始点が補正される。
【０１６３】
図３６（ａ）は、オブジェクト３４００をピンチアウト動作によって拡大してタッチＵＩ１９０４に表示した一例である。図３６（ａ）は、表示中のオブジェクト３４００の幅がタッチＵＩ１９０４の画面幅よりも大きく、オブジェクト３４００の左右端がタッチＵＩの画面外に、上下端が画面内に表示されている。図３６（ｂ）は、ユーザの指が３６００から３６０１の方向（すなわち左方向）にスワイプ動作されたときの表示例である。スワイプイベント処理部２４０１は、スワイプイベントを受信するたびに移動距離だけページの始点を動かしてタッチＵＩ１９０４の表示を更新する。図３６（ｂ）では、ユーザのスワイプ動作によって、オブジェクト３４００の右端がタッチＵＩ１９０４の画面内に移動している。図３６（ｃ）は、スワイプイベント処理部２４０１によって右端が画面の内側に移動されたオブジェクト３４００を、前記移動範囲制限処理によって、当該オブジェクト３４００の右端がタッチＵＩの画面の右端にほぼ合うようにページの始点を補正した場合の表示例である。すなわち、オブジェクト３４００は、表示中のオブジェクトの幅がタッチＵＩの画面幅よりも大きいため、オブジェクト３４００の端が画面内に移動された場合、移動範囲制限処理によって、当該オブジェクトができるだけ表示されるように、当該オブジェクトの端が画面の端に合うようにページの始点が補正される。
【０１６４】
なお、本実施例において、ＭＦＰ１００は携帯情報端末１０７に表示用のアプリケーション画像データを送付し、携帯情報端末１０７は受信したアプリケーション画像データを表示する構成としている。しかしながら、例えば、ＭＦＰ１００において、アプリケーション画像データを内部に保持する携帯情報端末１０７で実行可能なアプリケーションを生成し、携帯情報端末１０７に配信するような構成にしても良いことは言うまでもない。なお、そのときの携帯情報端末１０７で実行可能なアプリケーションは、本実施例で説明したソフトウェアモジュールであるジェスチャイベント処理部２００２を内部に持って、アプリケーション画像データを制御する。
【０１６５】
また、ＭＦＰ１００は、生成したアプリケーション画像データを文書管理サーバ１０６に送信すると共に、携帯情報端末１０７にそのアプリケーション画像データの場所を示すアドレスを送付するようにしても良い。この場合、携帯情報端末１０７はアプリケーション画像データの実体データは持たず、ＬＡＮ１０２を通して、文書管理サーバ１０６のデータが保持されるデータベース１０５から随時ページやオブジェクトの情報を取得・表示する。
【０１６６】
以上説明したように、本実施例によれば、ページ内を、スワイプやピンチ動作によって自由にスクロール・拡大縮小して閲覧できると共に、部分領域表示モードでは、任意のオブジェクトのみを内容に応じて見やすい形で画面に表示することができる。さらに、ユーザは「次へボタン」や「前へボタン」を操作するだけで、ページ内の適切な範囲を適切な順序で次々に表示することで、微妙な調整の手間をかけること無くページ内の情報を読み進めることができる。また、部分領域表示モードにおいては、スワイプ動作でオブジェクトを移動させる際、当該オブジェクトの端部位置に基づいて当該オブジェクトの移動範囲を制限するので、ユーザは当該オブジェクトの範囲がどこまでなのかを容易に理解することができる。よって、ユーザは当該表示中のオブジェクトとその他のオブジェクトとを明確に区別することができる。
【０１６７】
［実施例２］
本実施例２では、前記移動範囲制限部２４０４において、オブジェクトの移動範囲を制限するとき、一度は移動範囲を制限するが、当該制限した後に移動範囲の制限を解除状態にする。したがってその後、さらにユーザによって範囲外への移動が再度指示された場合には移動可能になる。
【０１６８】
なお、前述した第一の実施例とは、図３０の移動範囲制限処理の一部が異なるのみであるため、前述の実施例と同様の部分に関しては、同一番号を付けて省略し、異なる部分のみを以下に説明する。
【０１６９】
図３７は、実施例２の移動範囲制限部２４０４で行われる移動範囲制限処理のフローチャートであり、実施例１（図３０）の移動範囲制限処理とは、横制限解除フラグと縦制限解除フラグを用いる部分が異なる。なお、横制限解除フラグと、縦制限解除フラグは、ページ及びオブジェクトの読み込みが行われる際に必ずＦＡＬＳＥに初期化される。
【０１７０】
ステップＳ３００１で表示中のオブジェクトの幅が画面の幅より大きいと判断され、更に、ステップＳ３００２でオブジェクトの左端または右端がタッチＵＩの画面内に移動されたと判断した場合、ステップＳ３７００に進む。ステップＳ３７００において、移動範囲制限部２４０４は、横制限解除フラグの状態を確認する。横制限解除フラグがＴＲＵＥである場合には、移動範囲の制限は行わず、ステップＳ３００６に進む。また、横制限解除フラグがＦＡＬＳＥである場合には、ステップＳ３００３に進み、オブジェクトの移動範囲を一旦制限した後、ステップＳ３７０１において横制限解除フラグをＴＲＵＥにしてステップＳ３００６に進む。また、ステップＳ３００２でオブジェクトの左端または右端がタッチＵＩの画面内に移動されていないと判断した場合には、ステップＳ３７０２に進み、横制限解除フラグをＦＡＬＳＥにしてステップＳ３００６に進む。
【０１７１】
また、ステップＳ３００１で表示中のオブジェクトの幅が画面の幅より小さいと判断され、更に、ステップＳ３００４でオブジェクトの左端または右端がタッチＵＩの画面外に移動されたと判断した場合、ステップＳ３７０３に進む。ステップＳ３７０３において、移動範囲制限部２４０４は、横制限解除フラグの状態を確認する。横制限解除フラグがＴＲＵＥである場合には、移動範囲の制限は行わず、ステップＳ３００６に進む。また、横制限解除フラグがＦＡＬＳＥである場合には、ステップＳ３００５に進み、オブジェクトの移動範囲を一旦制限した後、ステップＳ３７０４において横制限解除フラグをＴＲＵＥにしてステップＳ３００６に進む。また、ステップＳ３００４でオブジェクトの左端または右端がタッチＵＩの画面外に移動されていないと判断した場合には、ステップＳ３７０５に進み、横制限解除フラグをＦＡＬＳＥにしてステップＳ３００６に進む。
【０１７２】
ステップＳ３００６で表示中のオブジェクトの高さが画面の高さより大きいと判断され、更に、ステップＳ３００７でオブジェクトの上端または下端がタッチＵＩの画面内に移動されたと判断した場合、ステップＳ３７０６に進む。ステップＳ３７０６において、移動範囲制限部２４０４は、縦制限解除フラグの状態を確認する。縦制限解除フラグがＴＲＵＥである場合には、移動範囲の制限は行わず、ステップＳ３０１１に進む。また、縦制限解除フラグがＦＡＬＳＥである場合には、ステップＳ３００８に進み、オブジェクトの移動範囲を一旦制限した後、ステップＳ３７０７において縦制限解除フラグをＴＲＵＥにしてステップＳ３０１１に進む。また、ステップＳ３００７でオブジェクトの上端または下端がタッチＵＩの画面内に移動されていないと判断した場合、ステップＳ３７０８に進み、縦制限解除フラグをＦＡＬＳＥにしてステップＳ３０１１に進む。
【０１７３】
また、ステップＳ３００６で表示中のオブジェクトの高さが画面の高さより小さいと判断され、更に、ステップＳ３００９でオブジェクトの上端または下端がタッチＵＩの画面外に移動されたと判断した場合、ステップＳ３７０９に進む。ステップＳ３７０９において、移動範囲制限部２４０４は、縦制限解除フラグの状態を確認する。縦制限解除フラグがＴＲＵＥである場合には、移動範囲の制限は行わず、ステップＳ３０１１に進む。また、縦制限解除フラグがＦＡＬＳＥである場合には、ステップＳ３０１０に進み、オブジェクトの移動範囲を一旦制限した後、ステップＳ３７１０において縦制限解除フラグをＴＲＵＥにしてステップＳ３０１１に進む。また、ステップＳ３００９でオブジェクトの上端または下端がタッチＵＩの画面外に移動されていないと判断した場合、ステップＳ３７１１に進み、縦制限解除フラグをＦＡＬＳＥにしてステップＳ３０１１に進む。
【０１７４】
以上説明したように、本実施例によれば、ページ内を、スワイプやピンチ動作によって自由にスクロール・拡大縮小して閲覧できると共に、部分領域表示モードでは、任意のオブジェクトのみを内容に応じて見やすい形で画面に表示することができる。さらに、ユーザは「次へボタン」や「前へボタン」を操作するだけで、ページ内の適切な範囲を適切な順序で次々に表示することで、微妙な調整の手間をかけること無くページ内の情報を読み進めることができる。また、部分領域表示モードにおいては、スワイプ動作でオブジェクトを移動させる際、当該オブジェクトの端部位置に基づいて当該オブジェクトの移動範囲を一旦制限するので、ユーザは当該オブジェクトの範囲がどこまでなのかを容易に理解することができる。更に、一旦制限された後に、再度移動指示された場合は、移動させることもできる。
【０１７５】
［その他の実施例］
本発明は、複数の機器（例えばホストコンピュータ、インターフェース機器、リーダ、プリンタなど）から構成されるシステムに適用しても、一つの機器からなる装置（例えば、複写機、ファクシミリ装置など）に適用してもよい。また本発明の目的は、前述の実施例の機能を実現するプログラムコードを記録した記録媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータが記憶媒体に格納されたプログラムコードを読み出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施例の機能を実現することになり、そのプログラムコード自体およびプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１７６】
また、本発明には、プログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム（ＯＳ）などが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される場合も含まれる。さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた場合についても、本発明は適用される。その場合、書き込まれたプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行い、その処理によって前述した実施例の機能が実現される。
【０１７７】
また、上述した実施形態では、コンピュータがプログラムを実行することにより、各処理部として機能するものとしたが、処理の一部または全部を専用の電子回路（ハードウェア）で構成するようにしても構わない。
【図１】
0005984439.tif 000002
【図２】
0005984439.tif 000003
【図３】
0005984439.tif 000004
【図４】
0005984439.tif 000005
【図５】
0005984439.tif 000006
【図６】
0005984439.tif 000007
【図７】
0005984439.tif 000008
【図８】
0005984439.tif 000009
【図９】
0005984439.tif 000010
【図１０】
0005984439.tif 000011
【図１１】
0005984439.tif 000012
【図１２】
0005984439.tif 000013
【図１３】
0005984439.tif 000014
【図１４】
0005984439.tif 000015
【図１５】
0005984439.tif 000016
【図１６】
0005984439.tif 000017
【図１７】
0005984439.tif 000018
【図１８】
0005984439.tif 000019
【図１９】
0005984439.tif 000020
【図２０】
0005984439.tif 000021
【図２１】
0005984439.tif 000022
【図２２】
0005984439.tif 000023
【図２３】
0005984439.tif 000024
【図２４】
0005984439.tif 000025
【図２５】
0005984439.tif 000026
【図２６】
0005984439.tif 000027
【図２７】
0005984439.tif 000028
【図２８】
0005984439.tif 000029
【図２９】
0005984439.tif 000030
【図３０】
0005984439.tif 000031
【図３１】
0005984439.tif 000032
【図３２】
0005984439.tif 000033
【図３３】
0005984439.tif 000034
【図３４】
0005984439.tif 000035
【図３５】
0005984439.tif 000036
【図３６】
0005984439.tif 000037
【図３７】
0005984439.tif 000038