JP2015225509A - 情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラム - Google Patents
情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラム Download PDFInfo
- Publication number
- JP2015225509A JP2015225509A JP2014110092A JP2014110092A JP2015225509A JP 2015225509 A JP2015225509 A JP 2015225509A JP 2014110092 A JP2014110092 A JP 2014110092A JP 2014110092 A JP2014110092 A JP 2014110092A JP 2015225509 A JP2015225509 A JP 2015225509A
- Authority
- JP
- Japan
- Prior art keywords
- displayed
- display
- image data
- display magnification
- character
- 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
Images
Landscapes
- Document Processing Apparatus (AREA)
- Editing Of Facsimile Originals (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
【課題】所定の文字の大きさで表示すると表示画面からはみ出すオブジェクトを表示画面内に収まる大きさで表示することで、ユーザが余計な移動操作をすることなく、文字を閲覧することができるようにする情報処理装置を提供する。【解決手段】複数のオブジェクトを含む画像データを表示するためのタッチUIと、表示対象のオブジェクトを含む画像データをタッチUI上に表示する際の表示倍率を制御する制御手段とを備える情報処理端末を設ける。制御手段は、表示対象のオブジェクトの属性が文字である場合に、文字が所定の大きさとなる第1の表示倍率で画像データを表示すると表示対象のオブジェクトがタッチUIより大きくなるかを判断し、オブジェクトがタッチUIより大きくなる場合は、オブジェクトが表示画面内に収まる大きさになる第2の表示倍率を画像データを表示する際の表示倍率として決定する。【選択図】図19
Description
本発明は、情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラムに関する。
特許文献1は、文書をデジタル化した画像データを解析し、画像データに含まれるオブジェクトを認識した上で、各オブジェクトの大きさに応じて個別に算出した表示倍率でオブジェクトを表示画面に表示する文書処理装置を開示している。この文書処理装置は、オブジェクトを表示画面の表示領域へ表示する際に、文章における段組みの行方向に対して、オブジェクトが表示領域にぴったりと嵌め込まれる大きさとなるように表示倍率を算出する。また、この文書処理装置は、文字を含むオブジェクトである場合には、表示領域に表示されるときの文字の大きさを求め、文字の大きさが所定の閾値を下回る場合には、表示倍率を閾値となるように調整する。これにより、文字の大きさが閾値を下回らない場合には、少なくとも行方向に対して表示領域の移動操作をすることなくオブジェクトの内容を閲覧することができる。また、表示領域上でオブジェクトに含まれる文字が小さくなり過ぎないように表示倍率を調整して表示することができる。
しかし、特許文献1が開示する文書処理装置では、文字の大きさが閾値を下回るオブジェクトは、オブジェクトの大きさに依らず表示倍率が閾値に設定される。したがって、例えば、文字の組み方向に長いオブジェクトを表示すると、オブジェクトの一部が、表示画面の表示領域から当該組み方向に見切れる(はみ出す)ことになる。これによって、文字の大きさが同じオブジェクトであっても、オブジェクトの大きさによっては、ユーザが表示領域から見切れた部分の内容を確認するために、急に移動操作が要求されることがある。この操作は、自らが一人で文章を閲覧する場合には大きな問題とならないが、例えば、他のユーザと画面を共有しながら内容の説明を行うプレゼンテーションのような用途においては、ユーザが本来行いたい説明作業を阻害する。
本発明は、所定の文字の大きさで表示すると表示画面からはみ出すオブジェクトを表示画面内に収まる大きさで表示することで、ユーザが余計な移動操作をすることなく、文字を閲覧することができるようにする情報処理装置の提供を目的とする。
本発明の一実施形態の情報処理装置は、複数のオブジェクトを含む画像データを表示するための表示画面と、表示対象のオブジェクトを含む画像データを前記表示画面上に表示する際の表示倍率を制御する制御手段とを備える。前記制御手段は、前記表示対象のオブジェクトの属性が文字である場合に、当該文字が所定の大きさとなる第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなるかを判断し、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなる場合は、前記表示対象のオブジェクトが前記表示画面内に収まる大きさになる第2の表示倍率を前記画像データを表示する際の表示倍率として決定する。
本発明の情報処理装置によれば、文字を所定の大きさで表示した場合に表示画面からはみ出てしまうオブジェクトに対しては、オブジェクトが画面内に収まる大きさで表示するよう表示倍率が制御される。したがって、ユーザは、余計な移動操作をすることなく、オブジェクト内の文字を閲覧することができる。その結果、ユーザがオブジェクトの内容に応じて急な移動操作が発生するようなことが無くなり、他のユーザと画面を共有しながら内容の説明を行うプレゼンテーションのような用途においても、集中して作業を続けることができる。
(実施例1)
図1は、本実施形態の情報処理システムの構成例を示す図である。
図1において、オフィス内に構築されたLAN102には、複数種類の機能(複写機能、印刷機能、送信機能等)を実現する画像形成装置であるMFP100と、クライアントPC(以下、単にPCとも記述する)101が接続されている。LANは、Local Area Networkの略称である。MFPは、Multifunction Peripheralの略称である。PCは、Personal Computerの略称である。図1に示す構成は、本明細書中の全ての実施例に共通する構成である。
図1は、本実施形態の情報処理システムの構成例を示す図である。
図1において、オフィス内に構築されたLAN102には、複数種類の機能(複写機能、印刷機能、送信機能等)を実現する画像形成装置であるMFP100と、クライアントPC(以下、単にPCとも記述する)101が接続されている。LANは、Local Area Networkの略称である。MFPは、Multifunction Peripheralの略称である。PCは、Personal Computerの略称である。図1に示す構成は、本明細書中の全ての実施例に共通する構成である。
LAN102には、プロキシサーバ103と、文書管理サーバ106、文書管理サーバ106のためのデータベース105、携帯情報端末107が、無線または有線で接続されている。LAN102は、プロキシサーバ103を介してネットワーク104に接続されている。
PC101は、例えば、印刷データをMFP100へ送信することで、その印刷データに基づく印刷物をMFP100で印刷することが可能である。なお、図1に示す構成は一例であり、同様の構成要素を有する複数のオフィスがネットワーク104上に接続されていても良い。
MFP100は、複数のオブジェクトを含む画像データを生成して、携帯情報端末107に送信する。携帯情報端末107は、MFP100から受信した画像データを表示画面に表示する情報処理装置である。
PC101、プロキシサーバ103の各種端末は、それぞれ、汎用コンピュータに搭載される標準的な構成要素(例えば、CPU、RAM、ROM、ハードディスク、ネットワークI/F、ディスプレイ、キーボード、マウス等)を有している。また、ネットワーク104は、典型的にはインターネットやLANやWANや電話回線、専用デジタル回線、ATMやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等のいずれかで実現されている。もちろん、それらの組み合わせにより実現されるいわゆる通信ネットワークであっても良いことは言うまでもなく、データの送受信が可能であれば良い。
図2は、図1に示すMFPの構成例を示す図である。
MFP100は、画像読み取り部110、記憶装置(以下、BOX)111、記録装置112、データ処理装置115、入力装置113、表示装置116、ネットワークI/F114を備える。画像読み取り部110は、図示しないAuto Document Feeder(以下、ADF)を有し、束状の或いは1枚の原稿の画像を光源で照射し、反射画像をレンズで固体撮像素子上に結像する。固体撮像素子は、所定解像度(例えば600dpi)および所定輝度レベル(例えば8ビット)の画像読み取り信号を生成する。画像読み取り信号からラスターデータよりなる画像データが構成される。通常の複写機能を実行する際には、データ処理装置115が、画像読み取り部110で得られたビットマップ画像データを、スキャン画像処理して記録信号に変換し、記録装置112が画像形成(印刷出力)する。
MFP100は、画像読み取り部110、記憶装置(以下、BOX)111、記録装置112、データ処理装置115、入力装置113、表示装置116、ネットワークI/F114を備える。画像読み取り部110は、図示しないAuto Document Feeder(以下、ADF)を有し、束状の或いは1枚の原稿の画像を光源で照射し、反射画像をレンズで固体撮像素子上に結像する。固体撮像素子は、所定解像度(例えば600dpi)および所定輝度レベル(例えば8ビット)の画像読み取り信号を生成する。画像読み取り信号からラスターデータよりなる画像データが構成される。通常の複写機能を実行する際には、データ処理装置115が、画像読み取り部110で得られたビットマップ画像データを、スキャン画像処理して記録信号に変換し、記録装置112が画像形成(印刷出力)する。
複数枚複写の場合には、1頁分の記録信号を一旦BOX111に記憶保持した後、記録装置112に順次出力して、記録紙上に記録画像を形成する。MFP100は、ローカルPC102または他の汎用PCからドライバを利用して出力されるPDLデータを、LAN102とネットワークI/F114を介して受信し、当該受信したPDLデータに基づく画像を、記録装置112によって記録し得る。すなわち、ローカルPC102からドライバを経由して出力されるPDLデータは、LAN102からネットワークI/F114を経てデータ処理装置115に入力される。データ処理装置115が、言語を解釈・処理することで記録可能な記録信号に変換し、MFP100において、記録紙上に記録画像として記録される。
BOX111は、画像読み取り部110からのデータやローカルPC102からドライバを経由して出力されるPDLデータをレンダリングしたデータを保存できる機能を有している。また、MFP100は、MFP100に設けられたキー操作部(入力装置113)を通じて操作され、操作入力の状態を表示装置116によって表示し得る。
図3は、ビットマップ画像データ変換処理の例を説明するフローチャートである。
ビットマップ画像データ変換処理は、ビットマップ画像データから、携帯情報端末107で表示するための所定のフォーマットのデータ(以下、アプリケーション画像データと記述する)を生成する処理である。アプリケーション画像データは、携帯情報端末で表示されるデータである。
ビットマップ画像データ変換処理は、ビットマップ画像データから、携帯情報端末107で表示するための所定のフォーマットのデータ(以下、アプリケーション画像データと記述する)を生成する処理である。アプリケーション画像データは、携帯情報端末で表示されるデータである。
ビットマップ画像データは、MFP100の画像読み取り部110により取得、または、ローカルPC102上においてアプリケーションソフトで作成されたドキュメントをMFP100内部でレンダリングして生成される。
まず、ステップS301において、データ処理装置115が、ビットマップ画像データを属性毎のオブジェクトに分割するオブジェクト分割処理を行う。オブジェクト分割後のオブジェクトの属性種類は、文字、写真、グラフィック(図面、線画、表、ライン)を指す。データ処理装置115が、分割された各々のオブジェクトに対して、ステップS302において、オブジェクトの種類(文字、写真、グラフィック)を判定する。
次に、ステップS302において、データ処理装置115が、ステップS301で分割したオブジェクトが終了したかを判定し、オブジェクトがあればステップS303へ、オブジェクトが終了していればステップS305へ進む。
次に、ステップS303において、データ処理装置115が、オブジェクトが文字であるか判定し、文字の場合には、更にステップS304において、OCR処理を施し、文字コード化されたデータ(OCR結果の文字コードデータ)を取得する。文字以外の属性種類であればステップS302へ戻る。
ステップS305において、データ処理装置115が、ステップS301で分割した各々のオブジェクトに対して、図8を参照して後述するオブジェクト画像生成処理を行う。続いて、ステップS306において、データ処理装置115が、ビットマップ画像データを解像度変換して、ビットマップ画像データよりも解像度の低い背景画像を生成する。この例では、ニアレストネイバー法を用いて1/4の解像度、すなわち、ビットマップ画像データが600dpiである場合に、150dpiの背景画像を生成する。なお、解像度変換の方法は、ニアレストネイバー法に限るものではなく、例えば、バイリニア法やバイキュービック法といった高精度な補間方法を用いても良い。
次に、ステップS307において、データ処理装置115が、ステップS306で生成されたビットマップ画像データよりも解像度の低い背景画像を用いて、JPEG圧縮した背景画像を生成する。次に、ステップS308において、データ処理装置115が、ステップS309で得た各オブジェクトのデータと、ステップS307で得た背景画像のデータと、ステップS304で得た文字コードデータとを一つのファイルにまとめる。これにより、データ処理装置115は、携帯情報端末107が表示可能なアプリケーション画像データを生成する。最後に、ステップS309において、データ処理装置115が、生成したアプリケーション画像データを携帯情報端末107に送信する。
図4は、ビットマップ画像データ作成処理の例を説明するフローチャートである。
図4(A)または図4(B)に示す処理で生成されたビットマップ画像データに対して、上述した図3の処理が実行される。図4(A)は、MFP100によるビットマップ画像データ作成処理を示す。
図4(A)または図4(B)に示す処理で生成されたビットマップ画像データに対して、上述した図3の処理が実行される。図4(A)は、MFP100によるビットマップ画像データ作成処理を示す。
ステップS401において、MFP100の画像読み取り部110が、画像を読み込む。読み込まれた画像は、既にビットマップ画像データである。ステップS402において、データ処理装置115が、そのビットマップ画像データに対して、画像読み取り部110に依存するスキャナ画像処理を行う。ここで言うスキャナ画像処理とは、例えば、色処理やフィルタ処理を指す。
図4(B)は、PCが作成したデータに基づくビットマップ画像データ作成処理を示す。ステップS501において、PC102上のアプリケーションが作成したデータが、プリントドライバを介してプリントデータに変換され、MFP100に送信される。ここで言うプリントデータとは、PDLを意味し、例えば、LIPS(登録商標)、PostScript(登録商標)等のページ記述言語を指す。
次にステップS502において、MFP100が備えるインタープリタが、ディスプレイリストを生成する。ステップS503において、MFP100が備えるレンダラが、ディスプレイリストをレンダリングする。これにより、ビットマップ画像データが生成される。
図5は、オブジェクト分割処理によって、ビットマップ画像データを複数のオブジェクトに分割した結果の一例である。また、図6は、オブジェクト分割したときの各オブジェクトのブロック情報および入力ファイル情報を示す。図5と図6を用いて、図3のステップS301のオブジェクト分割について説明する。
図3のステップS301において、データ処理装置115が、入力画像(図5の左の画像)に対してオブジェクト分割処理を行うことにより、属性ごとに矩形ブロックに分割する(図5の右の画像)。矩形ブロックの属性としては、文字、写真、グラフィック(図面、線画、表、ライン)がある。オブジェクト分割処理の一手法としては、例えば以下のような手法がある。まず、MFP100内のRAM(不図示)に格納されたイメージデータを白黒に2値化し、黒画素輪郭で囲まれる画素塊を抽出する。さらに、このように抽出された黒画素塊の大きさを評価し、大きさが所定値以上の黒画素塊の内部にある白画素塊に対する輪郭追跡を行う。
白画素塊に対する大きさ評価、内部黒画素塊の追跡というように、内部の画素塊が所定値以上である限り、再帰的に内部画素塊の抽出、輪郭追跡を行う。画素塊の大きさは、例えば画素塊の面積によって評価される。このようにして得られた画素塊に外接する矩形ブロックを生成し、矩形ブロックの大きさ、形状に基づき属性を判定する。例えば、縦横比が1に近く、大きさが一定の範囲の矩形ブロックは文字領域矩形ブロックの可能性がある文字相当ブロックとする。また、近接する文字相当ブロックが規則正しく整列しているときに、これら文字相当ブロックを纏めた新たな矩形ブロックを生成し、新たな矩形ブロックを文字領域矩形ブロックとする。また扁平な画素塊、もしくは、一定大きさ以上でかつ四角形の白画素塊を整列よく内包する黒画素塊をグラフィック領域矩形ブロック、それ以外の不定形の画素塊を写真領域矩形ブロックとする。
図3のステップS301では、このようにして生成された矩形ブロックのそれぞれについて、データ処理装置115が、図6に示す、属性等のブロック情報および入力ファイル情報を生成する。図6において、ブロック情報には各ブロックの属性、位置の座標X、座標Y、幅W、高さH、OCR情報が含まれる。属性は1〜3の数値で与えられ、1は文字領域矩形ブロック、2は写真領域矩形ブロック、3はグラフィック領域矩形ブロックを示す。
座標X、座標Yは入力画像における各矩形ブロックの始点のX、Y座標(左上角の座標)である。幅Wは、矩形ブロックのX座標方向の幅、高さHは、Y座標方向の高さである。OCR情報は、ステップS304のOCR処理で文字コード化されたデータへのポインタ情報の有無を示す。さらに入力ファイル情報として矩形ブロックの個数を示すブロック総数Nも保存しておく。これらの矩形ブロックごとのブロック情報は、後述のOCR処理やアプリケーション画像データ生成処理に利用される。またブロック情報によって、特定領域とその他の領域を重ねる際の相対位置関係を特定でき、入力画像のレイアウトを損なわずに各領域を重ねることが可能となる。
図7は、図3のステップS304のOCR処理を説明するフローチャートである。
まず、ステップS901において、データ処理装置115が、特定領域が文字領域矩形ブロックであるか否か判断し、文字領域の矩形ブロックであればステップS902以下のステップに進む。一方、特定領域が文字領域矩形ブロックでないときは、OCR処理を終了する。ステップS902乃至S907において、データ処理装置115が、パターンマッチング等の手法を用いて文字認識処理を行い、対応する文字コードを得る。例えば、ステップS902において、データ処理装置115は、特定領域に対し横書き、縦書きの判定(組み方向判定)を行うために、特定領域内で画素値に対する水平・垂直の射影を取る。
まず、ステップS901において、データ処理装置115が、特定領域が文字領域矩形ブロックであるか否か判断し、文字領域の矩形ブロックであればステップS902以下のステップに進む。一方、特定領域が文字領域矩形ブロックでないときは、OCR処理を終了する。ステップS902乃至S907において、データ処理装置115が、パターンマッチング等の手法を用いて文字認識処理を行い、対応する文字コードを得る。例えば、ステップS902において、データ処理装置115は、特定領域に対し横書き、縦書きの判定(組み方向判定)を行うために、特定領域内で画素値に対する水平・垂直の射影を取る。
次に、ステップS903において、データ処理装置115が、ステップS902で取られた射影の分散を評価する。データ処理装置115は、水平射影の分散が大きい場合は横書き、垂直射影の分散が大きい場合は縦書きと判断する。続いて、ステップS904において、データ処理装置115が、ステップS903の評価結果に基づき、組み方向を判定し、行の切り出しを行い、その後文字を切り出して文字画像を得る。文字列および文字への分解は、横書きならば水平方向の射影を利用して行を切り出し、切り出された行に対する垂直方向の射影から、文字を切り出す。縦書きの文字領域に対しては、水平と垂直について逆の処理を行う。データ処理装置115は、行、文字切り出しに際して、文字のサイズも検出し得る。
次に、ステップS905において、データ処理装置115が、ステップS904で切り出された各文字について、文字画像から得られる特徴を数十次元の数値列に変換した観測特徴ベクトルを生成する。特徴ベクトルの抽出には種々の公知手法があり、例えば、文字をメッシュ状に分割し、各メッシュ内の文字線を方向別に線素としてカウントしたメッシュ数次元ベクトルを特徴ベクトルとする方法がある。
ステップS906において、データ処理装置115が、ステップS905で得られた観測特徴ベクトルと、予めフォントの種類ごとに求められている辞書特徴ベクトルとを比較し、観測特徴ベクトルと辞書特徴ベクトルとの距離を算出する。続いて、ステップS907において、データ処理装置115が、ステップS906で算出された距離を評価し、最も距離の近いフォントの種類を認識結果とする。続いて、ステップS908において、データ処理装置115が、ステップS907における距離評価の最短距離が所定値よりも大きいか否か、類似度を判断する。最短距離が所定値以上の(類似度が低い)場合は、辞書特徴ベクトルにおいて、形状が類似する他の文字に誤認識している可能性が高い。したがって、最短距離が所定値以上の文字の(類似度が低い)場合は、ステップS907の認識結果を採用しない。最短距離が所定値より小さい文字の(類似度が高い)場合は、ステップS907の認識結果を採用し、ステップ909に進む。
ステップS909では、データ処理装置115が、文字フォントの種類を認識する。文字認識の際に用いる、フォントの種類数分の辞書特徴ベクトルを、文字形状種すなわちフォント種に対して複数用意しておく。これを、パターンマッチングの際に、文字コードとともにフォント種を出力することで、文字フォントを認識し得る。以上の処理により、文字領域矩形ブロックに属するイメージ情報から文字コードデータを得る。
図8は、オブジェクト画像生成処理の例を説明するフローチャートである。
図8を参照して、データ処理装置115が実行する図3のステップS305のオブジェクト画像生成処理について詳細に説明する。まず、ステップS600において、データ処理装置115が、図3のステップS301で分割したオブジェクトが終了したかを判定し、分割した各々のオブジェクトに対してステップS601以降の処理を行う。
図8を参照して、データ処理装置115が実行する図3のステップS305のオブジェクト画像生成処理について詳細に説明する。まず、ステップS600において、データ処理装置115が、図3のステップS301で分割したオブジェクトが終了したかを判定し、分割した各々のオブジェクトに対してステップS601以降の処理を行う。
ステップS601において、データ処理装置115が、オブジェクトの属性種類が文字であるか否かを判定する。属性種類が文字である場合にはステップS603へ進み、文字以外である場合にはステップS602へ進む。ステップS602において、データ処理装置115が、オブジェクトの位置情報を用いて、ビットマップ画像データから該オブジェクトの領域を切り出し、オブジェクト画像を生成し、ステップS603に進む。
ステップS603において、データ処理装置115が、ステップS602で生成したオブジェクト画像に解像度変換を施して、ビットマップ画像データよりも解像度の低いオブジェクト画像に変換する。この例では、ニアレストネイバー法を用いて幅、高さ共に1/2の解像度、すなわち、ビットマップ画像データが600dpiである場合に、300dpiのオブジェクト画像を生成する。
オブジェクト画像生成処理では、拡大して閲覧することが多い文字属性のオブジェクトには解像度変換を行わず、拡大することの比較的少ない写真属性などのオブジェクトには解像度変換を行う。これにより、オブジェクトの属性に応じて好適な画質を維持しながら、より少ないデータ量に抑えてアプリケーション画像データを生成することが出来る。なお、本実施例において、文字属性を除外し、文字属性以外のオブジェクトを解像度変換すると説明したが、それに限るものではなく、例えば、ラインといったより滑らかさが求められるオブジェクトに対しても解像度変換を行わないように制御しても良い。また、文字と文字以外の二段階ではなく、オブジェクトの属性に応じて、より段階的に解像度を制御しても良いことは言うまでもない。最後に、ステップS604において、データ処理装置115が、ステップS601およびステップS603で生成したオブジェクト画像をJPEG圧縮する。
図9は、図3のステップS308のアプリケーション画像データ生成処理で生成される中間データのデータ構成を示すマップである。また、図10は、アプリケーション画像データ生成処理の例を示すフローチャートである。
まず、図10のステップS1401において、データ処理装置115が、図3のステップS301乃至S307の処理で生成された中間データを取得する。この例において、中間データは、以下のようなドキュメント・アナリシス・アウトプット・フォーマット(以下、DAOF)と呼ぶ形式で保存されているものとする。すなわち、図9に示すように、DAOFは、ヘッダ1301、レイアウト記述データ部1302、文字認識記述データ部1303、表記述データ部1304、画像記述データ部1305よりなる。
ヘッダ1301には、処理対象の入力画像に関する情報が保持される。レイアウト記述データ部1302には、入力画像中の矩形ブロックの属性である文字、グラフィック(線画、図面、表、ライン)、写真等の情報と、これら属性が認識された各矩形ブロックの位置情報が保持される。文字認識記述データ部1303には、文字領域矩形ブロックのうち、文字認識して得られる文字認識結果が保持される。表記述データ部1304には、表の属性を持つグラフィック領域矩形ブロックの表構造の詳細が格納される。画像記述データ部1305には、図3のステップS307で生成された背景画像と、オブジェクトに分割され、オブジェクト画像生成処理で生成されたデータが保持される。
図10の説明に戻る。ステップS1402において、データ処理装置115が、後述する文書構造ツリー生成を行う。ステップS1403において、データ処理装置115が、文書構造ツリーを元に、DAOF内の実データを取得し、後述するアプリケーション画像データを生成する。
図11は、文書構造ツリー生成処理の例を説明するフローチャートである。また、図12は、文書構造ツリー生成処理の対象となる文書の例(図12(A))と、文書構造ツリー生成処理によって生成される文書構造ツリー(図12(B))を示す図である。図11が示す処理は、図10のステップS1402の文書構造ツリー生成に対応する。
図11に示す文書構造ツリー生成処理における全体制御の基本ルールとして、処理の流れはミクロブロック(単一矩形ブロック)からマクロブロック(矩形ブロックの集合体)へ移行する。以後、「矩形ブロック」は、ミクロブロックおよびマクロブロック両者を意味するものとする。
まず、ステップS1501において、データ処理装置115が、矩形ブロック単位で、縦方向の関連性に基づいて、矩形ブロックを再グループ化する。図11の処理は繰り返し実行されることがあるが、処理開始直後はミクロブロック単位での判定となる。ここで、関連性とは、距離が近い、ブロック幅(横方向の場合は高さ)がほぼ同一であることなどの特徴によって定義される。また、距離、幅、高さなどの情報はDAOFを参照し、抽出する。例えば、図12(A)の文書では、最上部で、矩形ブロックT1、T2が横方向に並列されている。矩形ブロックT1、T2の下には横方向セパレータS1が存在し、横方向セパレータS1の下に矩形ブロックT3、T4、T5、T6、T7が存在する。矩形ブロックT3、T4、T5は、横方向セパレータS1下側の領域における左半部において上から下に、縦方向に配列され、矩形ブロックT6、T7は、横方向セパレータS1下側の領域における右半部において上下に配列されている。
データ処理装置115がステップS1501の縦方向の関連性に基づくグルーピングの処理を実行すると、矩形ブロックT3、T4、T5が1個のグループ(矩形ブロック)V1にまとめられる。また、矩形ブロックT6、T7が1個のグループ(矩形ブロック)V2にまとめられる。グループV1、V2は同一階層となる。
図11の説明に戻る。ステップS1502において、データ処理装置115が、縦方向のセパレータの有無をチェックする。セパレータは、DAOF中でライン属性を持つオブジェクトであり、明示的にブロックを分割する機能を持つ。セパレータを検出すると、データ処理装置115が、処理対象の階層において、入力画像の領域を、セパレータを境界として左右に分割する。図12(A)に示す例では、縦方向のセパレータは存在しない。次に、ステップS1503において、データ処理装置115が、縦方向のグループ高さの合計が入力画像の高さに等しくなったか否かを判断する。すなわち、縦方向(例えば上から下)に処理対象の領域を移動しながら、横方向のグルーピングを行うとき、入力画像全体の処理が終了したときには、グループ高さ合計が入力画像高さになることを利用し、処理の終了判断を行う。グルーピングが終了した場合は、処理を終了し、グルーピングが終了していない場合は、ステップS1504に進む。
次に、ステップS1504において、データ処理装置115が、横方向の関連性に基づくグルーピングの処理を実行する。これにより、例えば、図12(A)の矩形ブロックT1、T2が1個のグループ(矩形ブロック)H1にまとめられ、矩形ブロックV1、V2が1個のグループ(矩形ブロック)H2にまとめられる。グループH1、H2は同一階層となる。ここでも、処理開始直後はミクロブロック単位での判定となる。
図11の説明に戻る。ステップS1505において、データ処理装置115が、横方向のセパレータの有無をチェックする。セパレータを検出すると、処理対象の階層において、入力画像の領域を、セパレータを境界として上下に分割する。図12(A)に示す例では横方向のセパレータS1が存在する。以上の処理結果が、図12(B)のツリーとして登録される。
図12(B)において、入力された1ページのビットマップ画像データV0は、最上位階層にグループH1、H2、セパレータS1を有し、グループH1には第2階層の矩形ブロックT1、T2が属する。グループH2には、第2階層のグループV1、V2が属し、グループV1には、第3階層の矩形ブロックT3、T4、T5が属し、グループV2には、第3階層の矩形ブロックT6、T7が属する。
本実施例において、V0はページを表し、V0の下位階層にあるものがオブジェクトとなる。最後に、図11のステップS1506において、データ処理装置115が、横方向のグループ長合計が入力画像の幅に等しくなったか否か判断する。これにより、横方向のグルーピングに関する終了判断を行う。横方向のグループ長がページ幅となっている場合は、文書構造ツリー生成の処理を終了する。横方向のグループ長がページ幅となっていないときは、ステップS1501に戻り、再びもう一段上の階層で、縦方向の関連性チェックから繰り返す。
図13は、図3のアプリケーション画像データ生成処理で生成されるアプリケーション画像データを示す図である。この例では、アプリケーション画像データのフォーマットは、Scalable Vector Graphics(以下、SVG)形式である。
図13では、説明の便宜上、ページの背景と各オブジェクトの表記を、枠1801と1802、及び1804で囲って示している。ページの背景と各オブジェクトは、それらの領域を示す領域情報と、DAOF内の実データから取得する描画要素を持つ。本実施例において、領域情報とは始点と幅、高さからなり、始点はページV0の左上を基準としたときの描画要素の左上座標、幅と高さはページV0上での描画要素の大きさを示す。
まず、データ処理装置115が、DAOF内のページV0から背景を取得する。1801はページの背景を示し、そこには、背景の領域を示す領域情報と、描画要素として、図3のステップS308で生成される背景画像のリンクが示されている。次に、DAOF内のV0の下位階層にある各オブジェクトについて、背景1801と同階層にグループを生成し、その下位階層に各オブジェクトを生成していく。1802は、文字属性を示し、文字オブジェクトの領域情報と、描画要素として、図3のステップS305で生成されるオブジェクト画像のリンクが示されている。
文字オブジェクトには加えて、1803に、図3のステップS304のOCR処理で得られる文字コードデータ及びステップS304のOCR処理で得られる文字の大きさ(フォントサイズ)が示される。また、図3のステップS304のOCR処理で得られる文字領域の組み方向(縦書き、もしくは横書き)についても記すことが可能である。
1804は、写真属性であり、写真オブジェクトの領域情報と描画要素が示されている。また、例えば、図12(B)のH1、H2、V1、V2など下位階層にあるオブジェクトは、オブジェクトの上位階層にグループを生成し、そのグループの下位階層に生成する。なお、本実施例では、アプリケーション画像データをSVG形式で表記しているが、文書の意味や構造を記述・保持できる画像フォーマットであれば良く、これに限定されるものではない。
図14は、本実施例における携帯情報端末の構成の例を示す図である。
携帯情報端末107は、メインボード1900、LCD1901、タッチパネル1902、ボタンデバイス1903を備える。LCD1901とタッチパネル1902をまとめてタッチUI1904と呼ぶこととする。タッチUI1904は、画像データを表示するための表示画面として機能する。
携帯情報端末107は、メインボード1900、LCD1901、タッチパネル1902、ボタンデバイス1903を備える。LCD1901とタッチパネル1902をまとめてタッチUI1904と呼ぶこととする。タッチUI1904は、画像データを表示するための表示画面として機能する。
メインボード1900は、CPU1905、無線LANモジュール1906、電源コントローラ1907、ディスプレイコントローラ(DISPC)1908、パネルコントローラ(PANELC)1909を備える。また、メインボード1900は、ROM1910、RAM1911、二次電池1912、タイマー1913を備える。それぞれのモジュール1905乃至1913は、バス(不図示)によって接続されている。
CPU1905は、バスに接続される各デバイスを制御すると共に、ROM1910に記憶されたソフトウェアモジュール2000を、RAM1911に展開して実行するプロセッサである。RAM1911は、CPU1905のメインメモリ、ワークエリア、LCD1901に表示するビデオイメージ用エリア、およびMFP100から送信されるアプリケーション画像データの保存領域として機能する。
ディスプレイコントローラ(DISPC)1908は、CPU1905の要求に応じて、RAM1911に展開されたビデオイメージ出力を高速に切り替えるとともに、LCD1901に同期信号を出力する。その結果、RAM1911のビデオイメージが、DISPC1908の同期信号に同期してLCD1901に出力され、LCD1901上にイメージが表示される。
パネルコントローラ(PANELC)1909は、CPU1905の要求に応じて、タッチパネル1902およびボタンデバイス1903を制御する。その制御によって、タッチパネル1902上の指又はスタイラスペンなどの指示物の押下位置や、ボタンデバイス1903上の押下されたキーコードなどが、CPU1905に通知される。押下位置情報は、タッチパネル1902の横方向の絶対位置を示す座標値(以下x座標)と、縦方向の絶対位置を示す座標値(以下y座標)から成る。タッチパネル1902は複数ポイントの押下を検知することが可能で、その場合CPU1905には押下点数分の押下位置情報が通知される。
電源コントローラ1907は、外部電源(不図示)と接続され電力の供給を受ける。これによって、電源コントローラ1907に接続された二次電池1912を充電しながら、且つ、携帯情報端末107全体に電力を供給する。外部電源から電力が供給されないときは、二次電池1912からの電力を携帯情報端末107全体に供給する。
無線LANモジュール1906は、CPU1905の制御に基づいて、LAN102に接続された無線アクセスポイント(不図示)上の無線LANモジュールとの無線通信を確立し、携帯情報端末107との通信を仲介する。無線LANモジュール1906には、例えばIEEE802.11bなどがある。
タイマー1913は、CPU1905の制御に基づいて、ジェスチャイベント発生部2001(図15)へのタイマー割込を発生させる。ジェスチャイベント発生部2001については後述する。また、携帯情報端末107には地磁気センサ(不図示)や加速度センサ(不図示)がバス(不図示)に接続されている。タイマー1913は、CPU1905の制御に基づいて、携帯情報端末107の傾きを検知し、携帯情報端末107が所定以上の傾きを得ると、携帯情報端末107の向きを変更し、描画部2003にLCD1901への描画の指示を送る。CPU1905は、携帯情報端末107の向きが変更されるとき、LCD1901の幅および高さを入れ替えて、以降の処理を行う。
図15は、携帯情報端末のCPUで実行処理されるソフトウェアモジュールの構成の例を示す図である。
ソフトウェアモジュール2000を構成する各モジュールについて説明する。ジェスチャイベント発生部2001は、ユーザのタッチ入力を受けて、後述する各種ジェスチャイベントを発生させる。ジェスチャイベント発生部2001は、発生したジェスチャイベントを、ジェスチャイベント処理部2002へ送信する。ジェスチャイベント処理部2002は、ジェスチャイベント発生部2001で発生したジェスチャイベントを受信して、各ジェスチャイベントと、アプリケーション画像データに記述された文書構造に応じた処理を実行する。描画部2003は、ジェスチャイベント処理部2002の実行結果に応じて、MFP100から送信される前記アプリケーション画像データをLCD1901へ描画する。アプリケーション画像データの表示の方法については後述する。
ソフトウェアモジュール2000を構成する各モジュールについて説明する。ジェスチャイベント発生部2001は、ユーザのタッチ入力を受けて、後述する各種ジェスチャイベントを発生させる。ジェスチャイベント発生部2001は、発生したジェスチャイベントを、ジェスチャイベント処理部2002へ送信する。ジェスチャイベント処理部2002は、ジェスチャイベント発生部2001で発生したジェスチャイベントを受信して、各ジェスチャイベントと、アプリケーション画像データに記述された文書構造に応じた処理を実行する。描画部2003は、ジェスチャイベント処理部2002の実行結果に応じて、MFP100から送信される前記アプリケーション画像データをLCD1901へ描画する。アプリケーション画像データの表示の方法については後述する。
図16は、ジェスチャイベント発生部で発生するジェスチャイベント名の一覧と、各イベントが発生したときに、ジェスチャイベント処理部へ送信する情報を示す図である。
図16(A)は、タッチ押下イベントであり、最新のタッチ座標の座標値とタッチ座標数が送信される。タッチ座標とは、図14のタッチパネル1902にユーザの指が触れている1点の座標のことで、x座標とy座標で表される1組の座標値を持つ。また、タッチ座標数とは、タッチパネル1902にユーザの指が接触したタッチ座標の数を示している。なお、タッチ座標は、タッチパネル1902へユーザの指が触れたとき、指が移動したとき、指が離れたときに、タイマー1913からの割り込みが発生したときに更新される。
図16(A)は、タッチ押下イベントであり、最新のタッチ座標の座標値とタッチ座標数が送信される。タッチ座標とは、図14のタッチパネル1902にユーザの指が触れている1点の座標のことで、x座標とy座標で表される1組の座標値を持つ。また、タッチ座標数とは、タッチパネル1902にユーザの指が接触したタッチ座標の数を示している。なお、タッチ座標は、タッチパネル1902へユーザの指が触れたとき、指が移動したとき、指が離れたときに、タイマー1913からの割り込みが発生したときに更新される。
図16(B)は、スワイプイベントであり、最新のタッチ座標の座標値と、最新と直前の座標値の差分から計算した移動距離が送信される。スワイプとは、指先をタッチパネル1902に接触させたまま、1方向に移動(滑らすような)動作のことをいう。
図16(C)は、ピンチインイベントであり、最新の2点のタッチ座標の中心座標値、及び、2点のタッチ座標を結ぶ直線の縮小距離から計算したピンチインの縮小率が送信される。ピンチインとは、2つの指先をタッチパネル1902に接触させたまま、互いに近づける(つまむような)動作のことをいう。
図16(D)は、ピンチアウトイベントであり、最新の2点のタッチ座標の中心座標値、及び、2点のタッチ座標を結ぶ直線の拡大距離から計算したピンチアウトの拡大率が送信される。ここで、ピンチアウトとは、2つの指先をタッチパネル1902に接触させたまま、互いに遠ざける(指を広げるような)動作のことをいう。
図16(E)は、2点スワイプイベントであり、最新の2点のタッチ座標の座標値、及び、2点のタッチ座標の最新と直前の座標値の差分から計算した移動距離が送信される。2点スワイプイベントは、2点のタッチ座標が同じ方向に移動している場合に発生する。
図16(F)は、ローテートイベントであり、最新の2点のタッチ座標の座標値から計算した回転の中心座標値、及び、2点のタッチ座標の最新と直前の座標値から計算した回転角度が送信される。ローテートとは、2つの指先をタッチパネル1902に接触させたまま、2つの指先をタッチパネル1902に対して回転させる動作のことを言う。
図16(G)は、フリックイベントであり、最新のタッチ座標の座標値、及び、最新と直前の座標値から計算した指の移動速度が送信される。フリックとは、スワイプ中に指を離す(指をはじくような)動作のことをいう。図16(h)は、タッチ解除イベントであり、タッチパネル1902からユーザの指が離れたときの最新のタッチ座標の座標値、及び、座標数が送信される。
図16(I)は、ダブルタップイベントであり、最新のタッチ座標の座標値が送信される。ダブルタップとは、所定の時間内に後述のシングルタップイベントが発生したことを言う。図16(J)は、シングルタップイベントであり、最新のタッチ座標の座標値が送信される。シングルタップとは、前述のタッチ押下イベントの後、所定の時間内にタッチ解除イベントが発生したことを言う。
図16(K)は、ロングタップイベントであり、最新のタッチ座標の座標値が送信される。ロングタップとは、前述のタッチ押下イベントの後、所定の時間以上経過してからタッチ解除イベントが発生したことを言う。
図16(L)は、タッチアンドホールドイベントであり、最新のタッチ座標の座標値が送信される。タッチアンドホールドイベントとは、タッチパネル1902にユーザの指が触れてから一度も移動することなく所定の時間以上経過したことを言う。なお、ここでは、ユーザのタッチ入力の例として指を使った場合を示すが、タッチ入力はスタイラスペンなどによる入力でも良い。
図17は、携帯情報端末がアプリケーション画像データを受信した際の動作を説明するフローチャートである。図18は、携帯情報端末のタッチUIの画面表示例である。図17と図18を用いて、携帯情報端末107のアプリケーション画像データ受信時の処理について説明する。
まず、ステップS2200において、携帯情報端末107が、無線LANモジュール1906を介してMFP100からアプリケーション画像データを受信し、RAM1911に受信したアプリケーション画像データを保存する。次に、ステップS2201において、携帯情報端末107が、RAM1911に保存したアプリケーション画像データの構文を解析し、先頭ページを読み込む。
次に、ステップS2202において、図15に示す描画部2003が、読み込まれた先頭ページに含まれる背景を、領域情報の始点の座標と幅、高さに応じてレンダリングしてタッチUI1904の表示状態を更新する。このとき、先頭ページは、図18のページ2300に示すように、ページ2300の高さがタッチUI1904の高さに、もしくはページ2300の幅がタッチUI1904の幅に合うように表示倍率が制御される。また、上記表示倍率に縮小したときのページの幅、もしくは高さがタッチUI1904よりも小さい場合は、タッチUI1904の中央に表示されるように、タッチUI1904上の座標において、ページ2300の始点が制御される。本実施例において、ページの始点とは、タッチUIの左上座標を基準としたページの左上座標を示し、ページの始点と表示倍率を制御することによって、タッチUI上へのページの表示開始位置と表示範囲を制御することができる。このように、タッチUI1904においてページ全体を表示する表示制御方法を、ページ表示モードと呼ぶこととする。
図19は、ジェスチャイベント処理部において、アプリケーション画像データの操作制御に係わるソフトウェアモジュールの構成を示す図である。図18と図19を用いて、本実施例における携帯情報端末107のアプリケーション画像データの操作制御に係わるソフトウェアモジュールについて説明する。
ジェスチャイベント処理部2002は、ジェスチャイベント発生部2001から、図16に示すジェスチャイベントを受信する。図19の表示変更イベント処理部2400は、ジェスチャイベント処理部2002が受信するジェスチャイベントのうち、シングルタップイベント(図16(J))に対する処理を行う。表示変更イベント処理部2400は、シングルタップイベントを受信すると、シングルタップイベントのタッチ座標の座標値が、図18中のモード切替ボタン2301、次へボタン2302、前へボタン2303の何れかの上にあるかを判定する。そして、シングルタップイベントのタッチ座標が「モード切替ボタン」2301上である場合は、後述するモード切替処理を行う。
また、タッチ座標が「次へボタン」2302上である場合は、後述する「次選択処理」(次へボタン選択処理)を行い、タッチ座標が「前へボタン」2303上である場合は、後述する「前選択処理」(前へボタン選択処理)を行う。「次選択処理」と「前選択処理」は、表示変更イベント処理部2400内の表示順番制御部2402と表示範囲制御部2403において行われる。
図19のスワイプイベント処理部2401は、図16(B)のスワイプイベントに対する処理を行う。ジェスチャイベント処理部2002がスワイプイベントを受信すると、スワイプイベントの移動距離に応じて、タッチUI1904上の座標において、ページ2300の始点を移動させる。そして、その上でタッチUI1904の表示状態を更新する。拡大・縮小イベント処理部2405は、図16(C)のピンチインイベントと、図16(D)のピンチアウトイベントに対する処理を行う。ジェスチャイベント処理部2002は、ピンチインイベントやピンチアウトイベントを受信すると、上記二つのイベントの縮小率もしくは拡大率に応じてページ2300のページ始点および表示倍率を制御した後、タッチUI1904の表示状態を更新する。
図20は、モード切替処理の例を説明するフローチャートである。図21は、携帯情報端末のタッチUIの画面表示例である。以下に、図19の表示変更イベント処理部2400において行われるモード切替処理について説明する。
まず、ステップS2500において、表示変更イベント処理部2400が、モード切替ボタンが指示された時点で、携帯情報端末107に設定中の表示モードを取得する。表示モードとは、携帯情報端末107がアプリケーション画像データをタッチUI1904に表示する方法を示し、本実施例の携帯情報端末107は、次の2つの表示モードを有する。第一に、ページ全体を表示するのに適した前記ページ表示モードである。第二に、図21に示すようにページ内の一部の領域(すなわちページ画像内の各オブジェクト)を拡大表示するのに適した部分領域表示モードである。アプリケーション画像データを携帯情報端末107が受信した直後はページ表示モードが設定されている。
部分領域表示モードは、図21(A)に示す通り、ページ2300内の各オブジェクトが大きく表示されるようにページ2300の表示倍率と始点を制御する表示モードである。文字オブジェクト2601を拡大表示対象のオブジェクトとして選択したときに表示される画面を図21(B)に示す。なお、図21(A)のオブジェクト2601を囲む破線は、説明をわかり易くするために描いたもので、ページ2300上には存在しない。また、本実施例では、図21(B)に示すように、拡大表示対象のオブジェクト2601の領域が透明で且つそれ以外の領域が半透明グレーである半透明マスク2600を、ページ2300の上に重ねて表示する。これにより、対象のオブジェクトだけが見やすくなるようにしている。このような半透明マスクを重ねて表示することにより、対象のオブジェクト以外が暗く表示されるので、対象のオブジェクトが強調表示され、ユーザは表示対象になっているオブジェクトの領域を特定しやすくなる。
表示変更イベント処理部2400は、モード切替ボタン2301が指示されたときに設定中の表示モードが部分領域表示モードである場合には、ステップS2501の処理を、ページ表示モードである場合には、ステップS2504の処理を実行する。
ステップS2501において、表示変更イベント処理部2400が、図21(B)の半透明マスク2600を非表示設定(半透明マスクOFF)にして、ページ表示モードへの切り替えを行う。
ステップS2502において、表示変更イベント処理部2400が、タッチUI1904の高さに合わせてページ2300の表示倍率を制御すると共に、ページ2300の始点を制御して、ページの表示範囲を決定する。ステップS2503において、表示変更イベント処理部2400が、当該決定されたページの表示範囲に基づいて、タッチUI1904の表示状態を更新する。また、ステップS2504において、表示変更イベント処理部2400が、表示モードを部分領域表示モードへ切り替え、半透明マスク2600を表示する設定(半透明マスクON)に変更する。
次に、ステップS2505において、表示変更イベント処理部2400が、ページ2300内の先頭オブジェクトを読み込み、先頭オブジェクトが持つ領域情報の始点と幅、高さを取得する。ここで、先頭オブジェクトとは、アプリケーション画像データの文書構造ツリーにおいて、最初に読み込まれるオブジェクトである。表示変更イベント処理部2400内の表示範囲制御部2403が、ステップS2506において、後述する部分領域表示範囲決定処理を行った後、ステップS2503において、当該決定された表示範囲に基づいてタッチUI1904の表示状態を更新する。なお、ステップS2506の部分領域表示範囲決定処理では、ステップS2505で読み込んだオブジェクトの属性に応じて、ページの表示倍率や始点を制御し、タッチUI1904に表示する部分領域の表示範囲を決定する。部分領域表示範囲決定処理の詳細は後述する。また、このとき表示対象となっているオブジェクトの部分領域以外の領域にはグレーの半透明マスクがかけられるので、ユーザは、表示対象となっているオブジェクトを識別しやすくなる。
図22は、実施例1における部分領域表示範囲決定処理を説明するフローチャートである。
まず、ステップS2700において、表示変更イベント処理部2400が有する表示範囲制御部2403が、アプリケーション画像データから読み込まれたオブジェクトの属性を判定する。属性が文字の場合はステップS2713に進み、文字以外の属性である場合はステップS2712に進む。
まず、ステップS2700において、表示変更イベント処理部2400が有する表示範囲制御部2403が、アプリケーション画像データから読み込まれたオブジェクトの属性を判定する。属性が文字の場合はステップS2713に進み、文字以外の属性である場合はステップS2712に進む。
ステップS2713において、表示範囲制御部2403が、オブジェクトのフォントサイズを取得する。オブジェクトのフォントサイズは、図3のステップS304のOCR処理の過程で得られている。本実施例において、フォントサイズは、オブジェクトに含まれる文字の縦および横の平均画素数とする。ステップS2714において、表示範囲制御部2403が、オブジェクトに含まれる文字がタッチUI1904上で所定の大きさとなる表示倍率Aを計算する。表示倍率Aは、ステップS2713で取得したフォントサイズをF(pixel)、タッチUI1904の画面解像度をR(pixel/inch)、タッチUI1904上での所定の大きさをS(inch)とすると、以下の式で求められる。
A=(S×R)/F
A=(S×R)/F
タッチUI1904上での所定の大きさSは、タッチUI1904上における文字一辺の所望の大きさであり、予めユーザによって大きさが指定される。なお、文字の大きさの指定は、直接大きさを数値で指定しても良いし、大、中、小といった項目を選択させ、それらに予め関連付けた文字の大きさを数値として設定されるようにしても良い。
ステップS2702において、表示範囲制御部2403が、オブジェクトの文字の組み方向を取得する。オブジェクトの組み方向は、ステップS304のOCR処理の過程で得られている。ステップS2703において、表示範囲制御部2403は、文字の組み方向を判定し、組み方向が縦書きである場合にはステップS2715に進み、横書きである場合にはステップS2717に進む。
文字の組み方向が縦書きの場合、ステップS2715において、表示範囲制御部2403が、表示倍率Aに拡縮したオブジェクトの高さがタッチUI1904の高さに入るか否かを判定する。表示倍率Aに拡縮したオブジェクトの高さがタッチUI1904の高さに入る場合にはステップS2716へ、入らない場合にはステップS2704に進む。
ステップS2716において、表示範囲制御部2403が、表示倍率Aをページの表示倍率として設定する。また、ステップS2704において、表示範囲制御部2403が、当該オブジェクトの高さがタッチUI1904の高さに入るように、表示倍率Aとは異なるページの表示倍率を設定する。本実施例において、ステップS2704で求める表示倍率Aとは異なるページの表示倍率は、タッチUI1904の高さいっぱいにページを表示するとき、ページの高さをオブジェクトの高さで割ることによって得られる。なお、オブジェクトをタッチUI1904に対して余白を持たせて表示させても良く、その場合には、ページの高さから余白を引いた値を、オブジェクトの高さで割ることによって余白を考慮した表示倍率を求めることができる。
ステップS2717において、表示範囲制御部2403が、表示倍率Aに拡縮したオブジェクトの幅がタッチUI1904の幅に入るか否かを判定し、入る場合にはステップS2716へ進み、表示倍率Aをページの表示倍率に設定する。また、ステップS2705において、表示範囲制御部2403は、当該オブジェクトの幅がタッチUI1904の幅に入るように、表示倍率Aとは異なるページの表示倍率を設定する。本実施例において、ステップS2705で求める表示倍率Aとは異なるページの表示倍率は、タッチUI1904の幅いっぱいにページを表示するとき、ページの幅をオブジェクトの幅で割ることによって得られる。なお、オブジェクトをタッチUI1904に対して余白を持たせて表示させても良く、その場合には、ページの幅から余白を引いた値を、オブジェクトの幅で割ることによって余白を考慮した表示倍率を求めることができる。
次に、ステップS2706において、表示範囲制御部2403が、ステップS2704またはステップS2705で設定した表示倍率に拡縮したオブジェクトの全体がタッチUI1904に表示できるかを判断する。オブジェクト全体がタッチUI1904よりも大きく、全体を表示できない場合にはステップS2707に進む。一方、オブジェクト全体がタッチUI1904よりも小さく、全体を表示できる場合にはステップS2710に進む。
ステップS2707において、表示範囲制御部2403が、当該オブジェクトにおける文字の組み方向を判定し、縦書きであると判定した場合はステップS2708に進み、横書きであると判定した場合はステップS2709に進む。ステップS2708において、表示範囲制御部2403が、オブジェクト全体がタッチUI1904に表示できない縦書きの文字領域を表示するので、当該オブジェクトの右上端がタッチUI1904の右上端に合うように、ページ2300の始点位置を設定する。すなわち、縦書きの場合の先頭行が表示されるように表示範囲を設定する。
ステップS2709において、表示範囲制御部2403が、オブジェクト全体がタッチUI1904に表示できない横書きの文字領域を表示するので、当該オブジェクトの左上端がタッチUI1904の左上端に合うように、ページ2300の始点を設定する。すなわち、横書きの場合の先頭行が表示されるように表示範囲を設定する。また、ステップS2710において、オブジェクト全体がタッチUI1904の画面内に収まるので、表示範囲制御部2403は、当該オブジェクトの中央がタッチUI1904の中央に合うようにページ2300の始点を設定する。また、ステップS2700でオブジェクトの属性がその他の属性(文字以外の属性)と判定された場合、ステップS2712において、表示範囲制御部2403は、当該オブジェクト全体がタッチUI1904に入るように、ページの表示倍率を設定する。そして、ステップS2710において、表示範囲制御部2403が、オブジェクトの中央がタッチUI1904の中央に合うようにページ2300の始点を設定する。
図22を参照して説明したことから、携帯情報端末107が備えるCPU1905および表示変更イベント処理部2400は、表示対象のオブジェクトを含む画像データを表示画面上に表示する際の表示倍率を制御する制御手段として機能する。この制御手段は、表示対象のオブジェクトの属性が文字である場合に、当該文字が所定の大きさとなる第1の表示倍率(表示倍率A)で画像データを表示すると表示対象のオブジェクトが表示画面より大きくなるかを判断する(S2715,S2717)。制御手段は、第1の表示倍率で表示するとオブジェクトが表示画面より大きくなる場合は、表示対象のオブジェクトが表示画面内に収まる大きさになる第2の表示倍率を画像データを表示する際の表示倍率として決定する(S2704,S2705)。
なお、本実施例において、フォントサイズは画素数であると説明したが、それに限るものでなく、例えば、ポイント数やミリメートルといった他の単位系でも良い。また、この例では、文字が所定の大きさになるようにページの表示倍率を設定するとオブジェクトが画面よりも大きくなる場合には、オブジェクトが画面に入るように表示倍率を制御するが、対象とするオブジェクトを条件によって限定しても良い。例えば、オブジェクトのフォントサイズに下限を設けたり、オブジェクトの幅や高さといった大きさに上限を設けたりする。これにより、文字が非常に小さく、かつ文字の組み方向に対して長いオブジェクトであるときに、文字が非常に小さく画面上に表示されることを防ぐことができる。
図23は、図18に示す携帯情報端末のタッチUIの「次へボタン」2302がユーザによりタップ(指定)されたときに実行される処理である次選択処理(次へボタン選択処理)の例を説明するフローチャートである。
ステップS2800において、表示変更イベント処理部2400が、「次へボタン」2302がタップされたときに携帯情報端末107に設定されている表示モードを取得する。取得した表示モードが部分領域表示モードである場合には、ステップS2801に進み、ページ表示モードである場合にはステップS2805に進む。
ステップS2801において、表示順番制御部2402が、現在読み込んでいるページの全オブジェクトから、文書構造ツリーに基づいて、次に表示すべきオブジェクトを選択し、そのオブジェクトを読み込む。
本実施例において、文書ツリー構造上の表示順番は、文書ツリー構造において、先頭の上位階層のオブジェクト、そのオブジェクトの下位階層に属するオブジェクトの順である。更に、その下位階層のオブジェクトの表示が全て終わった後、次の上位階層のオブジェクト、その下位階層のオブジェクト、というような順番であるとする。例えば、図12(B)において、V0はページを表し、最初に読み込まれるオブジェクトはH1である。H1のオブジェクトが部分領域表示モードでタッチUI1904に表示されている状態で、次選択処理が行われると、H1は下位階層を持つため、T1のオブジェクトが読み込まれる。さらに、T1のオブジェクトが表示されている状態で次選択処理が行われると、T1は下位階層を持たず、同階層にT2が存在するため、T2が読み込まれる。
T2のオブジェクトが表示されている状態で次選択処理が行われると、T2は下位階層を持たず、同階層に次のオブジェクトは存在しないため、次の上位階層のS1が読み込まれる。なお、本実施例において、描画要素を持たないH1を選択して読み込むとしているが、描画要素を持つT1やT2だけを選択するようにしても良い。また、例えば、文字属性のオブジェクトのみなど、特定の属性を持つオブジェクトのみを選択したり、特定の属性のみを除外して選択することも可能である。さらに、H1やV1といったそれ単体では描画要素を持たず、下位下層に描画要素を持つオブジェクトのみを選択することも可能である。
ステップS2802において、表示順番制御部2402は、ステップS2801で次のオブジェクトを読み込めたか否かを判定する。ステップS2801で次のオブジェクトが読み込めた場合(選択可能なオブジェクトがあった場合)は、表示順番制御部2402が、当該読み込んだオブジェクトを処理対象としてステップS2506に進む。なお、ステップS2506の部分領域表示範囲決定処理は、図22と同様であるため、ここでの説明は省略する。
ステップS2803において、読み込まれたオブジェクトの属性および領域情報の始点と幅、高さに基づいて制御されたページの表示倍率と始点を用いて、タッチUI1904の表示状態を更新する。一方、ステップS2801で次のオブジェクトが読み込めなかった場合(次に選択可能なオブジェクトが無かった場合)は、既にページ内の最終オブジェクトが読み込まれている状態である。したがって、ステップS2802で全てのオブジェクトの表示処理が終了したと判断し、ステップS2804に進む。
ステップS2804において、表示順番制御部2402が、部分領域表示モードを終了して、半透明マスク2600を非表示にして、ページ表示モードへと切り替える。ステップS2805において、表示モードがページ表示モードであるので、表示順番制御部2402が、RAM1911に保存したアプリケーション画像データの構文を解析し、次のページと、それに含まれるオブジェクトを読み込む。
ステップS2806において、表示順番制御部2402が、ステップS2805で次のページが読み込めた場合はステップS2807に進む。一方、既にRAM1911に保存したアプリケーション画像データの最終ページが読み込まれている状態であり、S2805で次に読み込み可能なページが無かった場合は、ステップS2808に進む。
ステップS2808では、RAM1911に保存したアプリケーション画像データの構文を解析し、先頭ページと、それに含まれるオブジェクトを読み込む。次に、ステップS2807において、表示範囲制御部2403が、タッチUI1904の高さに合わせてページの表示倍率を制御すると共に、ページの始点を制御して、ページの表示範囲を決定する。そして、ステップS2803で、当該決定されたページ表示範囲に基づいてタッチUI1904の表示状態を更新する。
図24は、図18に示す携帯情報端末のタッチUIの「前へボタン」2303がユーザによりタップ(指定)されたときに実行される処理である前選択処理(前へボタン選択処理)の例を説明するフローチャートである。
前選択処理は、上述した次選択処理とほぼ同じ構成であるため、ここでは、次選択処理と異なる処理に関するステップS2900とステップS2901、ステップS2902についてのみ説明する。
ステップS2900において、表示順番制御部2402が、現在読み込んでいるページの全オブジェクトから、文書構造ツリーに基づいて次に表示すべきオブジェクトを選択し、そのオブジェクトを読み込む。本実施例において、「前へボタン」2303が指定されたときの文書ツリー構造上の表示順番は、文書ツリー構造において末尾の下位階層のオブジェクト、そのオブジェクトの上位階層のオブジェクトというように、下位階層から上位階層への順番であるとする。すなわち、下位階層のオブジェクトの表示が全て終わった後、その上位階層における他のオブジェクトの表示へと移るものとする。例えば、図12(B)において、最初に読み込まれるオブジェクトは末尾の下位階層オブジェクトであるT7である。
部分領域表示モードで、T7のオブジェクトがタッチUI1904に表示されている状態で、前選択処理が行われると、同じ階層にT6が存在するため、T6のオブジェクトが読み込まれる。さらに、T6のオブジェクトが表示されている状態で前選択処理が行われると、同じ階層にその他のオブジェクトが存在しないため、その上位階層であるV2が読み込まれる。
V2のオブジェクトが表示されている状態で前選択処理が行われると、V2は同じ階層にV1を持ち、更にV1は下位階層にオブジェクトを持つため、V1の下位階層の末尾にあるT5のオブジェクトが読み込まれる。なお、前選択処理においても、次選択処理と同様に、描画要素を持つオブジェクトだけを選択するようにしても良く、また、特定の属性を持つオブジェクトのみを選択したり、特定の属性のみを除外して選択したりすることも可能である。さらに、H1やV1といったそれ単体では描画要素を持たず、下位下層に描画要素を持つオブジェクトのみを選択することも可能である。
図25および図26は、携帯情報端末のタッチUIの画面表示例である。以下に、図21、図25および図26を参照して、本実施例における部分領域表示範囲決定処理を具体的に説明する。
図21において、オブジェクト2601は、ページ2300内の横書きの文字の属性を持つオブジェクトである。オブジェクト2601は、図21(A)のように破線で示す領域情報を持つ。オブジェクト2601の属性は文字であるため、部分領域表示モードでオブジェクトが読み込まれると、部分領域表示範囲決定処理において、文字がタッチUI1904上で所定の大きさとなる表示倍率Aが算出される。表示倍率Aに拡縮したオブジェクトの幅がタッチUI1904の幅に入るために、表示倍率Aがページの表示倍率として設定され、図21(B)に示すように表示される。
図25において、オブジェクト1000は、ページ2300内の横書きの文字の属性を持ち、オブジェクト2601よりも小さいフォントサイズを持つオブジェクトである。オブジェクト1000は、図25(A)のように破線で示す領域情報を持つ。オブジェクト1000の属性は文字であるため、部分領域表示モードでオブジェクトが読み込まれると、部分領域表示範囲決定処理において、文字がタッチUI1904上で所定の大きさとなる表示倍率Aが算出される。表示倍率Aに拡縮したオブジェクトの幅がタッチUI1904の幅に入るために、表示倍率Aがページの表示倍率として設定され、図25(B)に示すように表示される。
図21(B)および図25(B)に示すように、オブジェクト2601とオブジェクト1000は、ページ2300においては異なる文字の大きさであるが、タッチUI1904上では予め定めた同じ文字の大きさで表示される。
図26において、オブジェクト1100は、ページ2300内の横書きの文字の属性を持ち、オブジェクト1000と同じフォントサイズを持つオブジェクトである。オブジェクト1100は、図26(A)のように破線で示す領域情報を持つ。オブジェクト1100の属性は文字であるため、部分領域表示モードでオブジェクトが読み込まれると、部分領域表示範囲決定処理において、文字がタッチUI1904上で所定の大きさとなる表示倍率Aが算出される。そして、表示倍率Aに拡縮したオブジェクトの幅は、タッチUI1904の幅に入らないために、表示倍率Aとは異なる、当該オブジェクトの幅がタッチUI1904の幅に入る倍率にページの表示倍率が設定され、図26(B)に示すように表示される。
図25(B)および図26(B)に示すように、オブジェクト1100は、ページ2300においてオブジェクト1000と同じ文字の大きさであるが、タッチUI1904上では予め定めた大きさではない異なる文字の大きさで表示される。
なお、本実施例においては、読み込んだオブジェクトを表示する際のページの表示倍率の計算を、表示する直前の部分領域表示範囲決定処理において行うが、これに限るものではない。例えば、表示する携帯情報端末やタッチUIの大きさ、縦横比が常に固定である場合には、オブジェクト毎に予め表示倍率を求めてフォントサイズなどと一緒にアプリケーション画像データへ記しても良い。また、携帯情報端末107がアプリケーション画像データを受信、もしくは初めて開くタイミングで、オブジェクト毎に表示倍率を求めてRAMに記憶するなどしておいても良い。これらの場合には、オブジェクトを読み込んだ際に携帯情報端末の向きに応じて対応する表示倍率を読み出して、ページの表示倍率に設定する。
以上説明したように、本実施例によれば、オブジェクトに含まれる文字を所定の大きさで表示した場合に画面より大きくなってしまうオブジェクトに対しては、オブジェクトが画面内に収まる大きさで表示するよう表示倍率が制御される。したがって、ユーザは、余計な移動操作をすることなく、オブジェクト内の文字を閲覧することができる。これにより、ユーザがオブジェクトの内容に応じて急な移動操作が発生するようなことが無くなり、他のユーザと画面を共有しながら内容の説明を行うプレゼンテーションのような用途においても、集中して作業を続けることができる。
(実施例2)
画面上で文字の大きさが一定となるように表示倍率を制御すると、例えば、図21(B)のオブジェクト2601のような非常に大きい文字を持つオブジェクトを表示する場合、ページ全体が小さくなりすぎてしまう場合がある。そこで、実施例2では、部分領域表示範囲決定処理において、ページ全体が画面に丁度いっぱい収まるようにする第3の表示倍率(最小表示倍率)をも用いて、表示倍率の制御を実行する。なお、実施例2は、実施例1とは、部分領域表示範囲決定処理の一部が異なるのみであるため、前述の実施例と同様の部分に関しては、同一番号を付けて省略し、異なる部分のみを以下に説明する。
画面上で文字の大きさが一定となるように表示倍率を制御すると、例えば、図21(B)のオブジェクト2601のような非常に大きい文字を持つオブジェクトを表示する場合、ページ全体が小さくなりすぎてしまう場合がある。そこで、実施例2では、部分領域表示範囲決定処理において、ページ全体が画面に丁度いっぱい収まるようにする第3の表示倍率(最小表示倍率)をも用いて、表示倍率の制御を実行する。なお、実施例2は、実施例1とは、部分領域表示範囲決定処理の一部が異なるのみであるため、前述の実施例と同様の部分に関しては、同一番号を付けて省略し、異なる部分のみを以下に説明する。
図27は、実施例2における部分領域表示範囲決定処理を説明するフローチャートである。実施例1(図22)とは、ステップS1200、S1201およびS1202が異なる。
ステップS1200において、表示範囲制御部2403が、ページ2300の全体がタッチUI1904により多く映る表示倍率Bを求める。本実施例において、表示倍率Bは、ページ2300がタッチUI1904に丁度いっぱいに収まるようにする表示倍率(最小表示倍率)である。なお、表示倍率Bは、ページ2300とタッチUI1904の大きさと縦横比の関係によって決まるため、部分領域表示範囲決定処理の度に計算せず、一度計算したものをRAM1911に記録して、読み出して用いても良い。また、その場合には、例えば、タッチUI1904がユーザによって回転され、タッチUI1904の縦横比が変わるタイミングや、大きさや縦横比の異なるページが読み込まれるなどのタイミングで、表示倍率Bは再度計算される。ステップS1201において、表示範囲制御部2403が、ステップS2714で求めた表示倍率Aと、ステップS1200で求めた表示倍率Bとを比較し、表示倍率Aが表示倍率Bよりも大きければステップ2702へ進む。また、表示倍率Aが表示倍率B以下(第3の表示倍率以下)であれば、ステップS1202へ進む。ステップS1202において、表示範囲制御部2403が、表示倍率Bをページの表示倍率に設定し、ステップS2706に進む。
図28は、実施例2における携帯情報端末のタッチUIの画面表示例である。
オブジェクト2601は、実施例1(図21)と同様に、ページ2300内の横書きの文字の属性を持つオブジェクトである。オブジェクト2601は、図21(A)のように破線で示す領域情報を持つ。オブジェクト2601の属性は、文字であるため、部分領域表示モードでオブジェクトが読み込まれると、部分領域表示範囲決定処理において、文字がタッチUI1904上で所定の大きさとなる表示倍率Aが算出される。さらに、実施例2においては、ステップS1200において表示倍率Bが算出され、ステップS1201において表示倍率Aと表示倍率Bとが比較される。
オブジェクト2601は、実施例1(図21)と同様に、ページ2300内の横書きの文字の属性を持つオブジェクトである。オブジェクト2601は、図21(A)のように破線で示す領域情報を持つ。オブジェクト2601の属性は、文字であるため、部分領域表示モードでオブジェクトが読み込まれると、部分領域表示範囲決定処理において、文字がタッチUI1904上で所定の大きさとなる表示倍率Aが算出される。さらに、実施例2においては、ステップS1200において表示倍率Bが算出され、ステップS1201において表示倍率Aと表示倍率Bとが比較される。
表示倍率Aは、図21(B)に示す通り、画面上で文字が所定の大きさとなる表示倍率での表示例であり、ページ2300がかなり小さく表示されてしまう。表示倍率Bは、前述の通り、画面に丁度いっぱいに収まる表示倍率であり、図28に示す大きさでページ2300が表示される表示倍率である。本実施例のオブジェクト2601においては、表示倍率Aよりも表示倍率Bの方が大きいので、図27のステップS1201の判定処理で、ステップS1202に進む。これにより、図28に示すように画面表示される。なお、図25のオブジェクト1000および図26のオブジェクト1100が読み込まれた場合には、表示倍率Aが表示倍率Bよりも大きくなり、実施例1と同様の表示結果となる。
以上説明したように、実施例2では、ページの最小表示倍率を定めて、ページがそれ以下の表示倍率とならないように制御されるため、極端に大きい文字がオブジェクトに含まれる場合に、不必要にページが縮小表示されることを防止できる。
(実施例3)
画面上での文字を、ユーザが指定する所定の大きさで表示すると、画面上において文字の大きさにメリハリが無くなり、単調な表現となる場合があった。そこで、実施例3では、オブジェクト毎にページの表示倍率の制御方法(表示倍率制御方法)を指定し、この制御方法に応じて、ページの表示倍率を制御する方法とを切り替える。
画面上での文字を、ユーザが指定する所定の大きさで表示すると、画面上において文字の大きさにメリハリが無くなり、単調な表現となる場合があった。そこで、実施例3では、オブジェクト毎にページの表示倍率の制御方法(表示倍率制御方法)を指定し、この制御方法に応じて、ページの表示倍率を制御する方法とを切り替える。
なお、実施例3は、実施例1とは、部分領域表示範囲決定処理の一部が異なるのみであるため、前述の実施例と同様の部分に関しては、同一番号を付けて省略し、異なる部分のみを以下に説明する。
図29は、実施例3における部分領域表示範囲決定処理を説明するフローチャートである。実施例1(図22)とは、ステップS3100、S3101およびS3102が異なる。
ステップS3100において、表示範囲制御部2403が、オブジェクトの表示倍率制御方法を取得する。オブジェクトの表示倍率制御方法としては、第1の制御方法と、第2の制御方法とがある。第1の制御方法は、文字が表示画面上で所定の大きさとなるようにページの表示倍率が制御される文字優先方法である。第2の制御方法は、文字の組み方向と同じ方向のオブジェクトの領域が表示画面内に収まるように制御される領域優先方法である。表示倍率制御方法は、フォントサイズや組み方向と同様に文字オブジェクトごとに指定されて記憶手段に予め保持されており、ユーザからの指示があった場合に変更される。本実施例においては、ユーザからの指示が無い場合に文字優先方法が適用される。
ステップS3101において、表示範囲制御部2403が記憶手段から取得した表示倍率制御方法が文字優先方法である場合にはステップS2715に進み、領域優先方法である場合にはステップS2704に進む。
また、ステップS3102において、表示範囲制御部2403が取得した表示倍率制御方法が文字優先である場合にはステップS2717に進み、領域優先方法である場合にはステップS2705に進む。
図30は、実施例3における携帯情報端末のタッチUIの画面表示例である。図30を参照して、表示倍率制御方法の指示について説明する。
図30(A)において、オブジェクト2601は、ページ2300内の横書きの文字の属性を持つオブジェクトである。オブジェクト2601に対する表示倍率制御方法として、文字優先方法が設定されており、画面上でユーザが予め定めた所定の文字の大きさとなるようにページの表示倍率が制御されている。このとき、表示変更イベント処理部2400は、シングルタップイベントを受信し、受信したシングルタップイベントのタッチ座標の座標値がオブジェクト2601の上にある場合、メニュー3200を表示する。この状態で、表示変更イベント処理部2400は、さらに、メニュー3200の上にタッチ座標があるシングルタップイベントを受信すると、オブジェクト2601の表示倍率制御方法を文字優先方法から領域優先方法へと変更し、メニュー3200の表示を消す。
図30(A)において、オブジェクト2601は、ページ2300内の横書きの文字の属性を持つオブジェクトである。オブジェクト2601に対する表示倍率制御方法として、文字優先方法が設定されており、画面上でユーザが予め定めた所定の文字の大きさとなるようにページの表示倍率が制御されている。このとき、表示変更イベント処理部2400は、シングルタップイベントを受信し、受信したシングルタップイベントのタッチ座標の座標値がオブジェクト2601の上にある場合、メニュー3200を表示する。この状態で、表示変更イベント処理部2400は、さらに、メニュー3200の上にタッチ座標があるシングルタップイベントを受信すると、オブジェクト2601の表示倍率制御方法を文字優先方法から領域優先方法へと変更し、メニュー3200の表示を消す。
また、メニュー3200は、現在読み込まれているオブジェクトの表示倍率制御方法によって表示内容を変える。具体的には、表示倍率制御方法が文字優先方法であれば、図30(A)に示す通り「強調する」、領域優先方法であれば「強調しない」と表示する。メニュー3200に「強調しない」と表示されているとき、表示変更イベント処理部2400は、メニュー3200の上にタッチ座標があるシングルタップイベントを受信すると、以下の処理を実行する。すなわち、表示変更イベント処理部2400は、オブジェクト2601の表示倍率制御方法を領域優先方法から文字優先方法へと変更する。なお、メニュー3200の表示内容は、上述した表示内容に限るものではなく、例えばアイコンなどで表示しても良い。
図30(B)は、表示倍率制御方法として領域優先方法が設定されたオブジェクト2601を読み込んだ際のタッチUI1904の画面表示を示す。図30(A)とは異なり、オブジェクト2601が強調されたように文字の組み方向いっぱいに大きく表示される。
以上説明したように、実施例3では、オブジェクト毎に表示倍率制御方法を指定・変更できるようにすることで、ユーザが指定する特定の文字オブジェクトにおいて、メリハリのある表示を行うことができる。特に、大きい文字においては往々にしてページの表示倍率が縮小方向に働くのに対し、画面いっぱいに大きく表示してオブジェクトの内容を強調するかのような表現を行うことができる。
(その他の実施例)
また、本発明は、以下の処理を実行することによっても実現される。実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、システム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
また、本発明は、以下の処理を実行することによっても実現される。実施形態の機能を実現するソフトウェア(コンピュータプログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、システム或いは装置のコンピュータ(またはCPUやMPU等)がプログラムを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
100 MFP
101 クライアントPC
106 文書管理サーバ
107 携帯情報端末
101 クライアントPC
106 文書管理サーバ
107 携帯情報端末
Claims (12)
- 複数のオブジェクトを含む画像データを表示するための表示画面と、
表示対象のオブジェクトを含む画像データを前記表示画面上に表示する際の表示倍率を制御する制御手段とを備え、
前記制御手段は、
前記表示対象のオブジェクトの属性が文字である場合に、当該文字が所定の大きさとなる第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなるかを判断し、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなる場合は、前記表示対象のオブジェクトが前記表示画面内に収まる大きさになる第2の表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする情報処理装置。 - 第1の表示倍率で画像データを表示しても前記表示対象のオブジェクトが前記表示画面より大きくならない場合は、前記第1の表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする請求項1に記載の情報処理装置。 - 前記制御手段は、
前記表示対象のオブジェクトを含む画像データのページの全体が前記表示画面に表示される第3の表示倍率を算出し、
前記第1の表示倍率が前記第3の表示倍率以下である場合は、前記第3の表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする請求項1または請求項2に記載の情報処理装置。 - 前記制御手段は、
前記第1の表示倍率が前記第3の表示倍率より大きい場合に、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなるかを判断する
ことを特徴とする請求項3に記載の情報処理装置。 - オブジェクトの表示倍率の制御方法が予め記憶された記憶手段を備え、
前記制御手段は、前記記憶手段から前記表示倍率の制御方法を取得し、前記取得された表示倍率の制御方法に応じて、前記画像データを表示する際の表示倍率を決定する
ことを特徴とする請求項1または請求項2に記載の情報処理装置。 - 前記オブジェクトの表示倍率の制御方法は、前記オブジェクトに含まれる文字が所定の大きさとなるような表示倍率とする第1の制御方法と、前記文字の組み方向と同じ方向の前記オブジェクトの領域が前記表示画面内に収まるような表示倍率とする第2の制御方法であり、
前記制御手段は、前記記憶手段から取得した前記表示倍率の制御方法が前記第2の制御方法である場合に、前記第2の表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする請求項5に記載の情報処理装置。 - 前記制御手段は、前記記憶手段から取得した前記表示倍率の制御方法が前記第1の制御方法である場合に、第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなるかを判断する
ことを特徴とする請求項5または請求項6に記載の情報処理装置。 - 前記制御手段は、
前記文字の組み方向と同じ方向の前記表示対象のオブジェクトの領域が前記表示画面内に収まるか否かを判断し、
前記文字の組み方向と同じ方向の前記表示対象のオブジェクトの領域が前記表示画面内に収まる場合は、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなると判断し、前記文字の組み方向と同じ方向の前記表示対象のオブジェクトの領域が前記表示画面内に収まらない場合は、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくならないと判断する
ことを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。 - 前記制御手段は、
前記表示対象のオブジェクトの属性が文字でない場合に、前記オブジェクトの全体が前記画面に収まる表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。 - 複数のオブジェクトを含む画像データを生成する画像形成装置と、前記画像形成装置から前記画像データを受信して表示する情報処理装置とを備えるシステムであって、
前記情報処理装置は、
前記画像形成装置から受信する画像データを表示するための表示画面と、
表示対象のオブジェクトを含む画像データを前記表示画面上に表示する際の表示倍率を制御する制御手段とを備え、
前記制御手段は、
前記表示対象のオブジェクトの属性が文字である場合に、当該文字が所定の大きさとなる第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなるかを判断し、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなる場合は、前記表示対象のオブジェクトが前記表示画面内に収まる大きさになる第2の表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする情報処理システム。 - 複数のオブジェクトを含む画像データを表示するための表示画面を備える情報処理装置の制御方法であって、
表示対象のオブジェクトを含む画像データを前記表示画面上に表示する際の表示倍率を制御する制御工程を有し、
前記制御工程では、
前記表示対象のオブジェクトの属性が文字である場合に、当該文字が所定の大きさとなる第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなるかを判断し、前記第1の表示倍率で画像データを表示すると前記表示対象のオブジェクトが前記表示画面より大きくなる場合は、前記表示対象のオブジェクトが前記表示画面内に収まる大きさになる第2の表示倍率を前記画像データを表示する際の表示倍率として決定する
ことを特徴とする制御方法。 - コンピュータを請求項1乃至9のいずれか1項に記載の情報処理装置が備える各手段として機能させるためのコンピュータプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014110092A JP2015225509A (ja) | 2014-05-28 | 2014-05-28 | 情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014110092A JP2015225509A (ja) | 2014-05-28 | 2014-05-28 | 情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015225509A true JP2015225509A (ja) | 2015-12-14 |
Family
ID=54842202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014110092A Pending JP2015225509A (ja) | 2014-05-28 | 2014-05-28 | 情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015225509A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017156806A (ja) * | 2016-02-29 | 2017-09-07 | 日本電気株式会社 | データ処理装置、画面共有システム、データ処理方法及びプログラム |
JP2020178282A (ja) * | 2019-04-19 | 2020-10-29 | キヤノン株式会社 | スキャン画像のプレビュー表示を行なう画像処理装置、その制御方法及びプログラム |
-
2014
- 2014-05-28 JP JP2014110092A patent/JP2015225509A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017156806A (ja) * | 2016-02-29 | 2017-09-07 | 日本電気株式会社 | データ処理装置、画面共有システム、データ処理方法及びプログラム |
JP2020178282A (ja) * | 2019-04-19 | 2020-10-29 | キヤノン株式会社 | スキャン画像のプレビュー表示を行なう画像処理装置、その制御方法及びプログラム |
JP7387282B2 (ja) | 2019-04-19 | 2023-11-28 | キヤノン株式会社 | スキャン画像のプレビュー表示を行なう画像処理装置、その制御方法及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5984439B2 (ja) | 画像表示装置、画像表示方法 | |
JP6399744B2 (ja) | 表示装置、表示方法 | |
JP6099961B2 (ja) | 画像表示装置、画像表示装置の制御方法およびコンピュータプログラム | |
JP6188490B2 (ja) | 画像表示装置、制御方法およびコンピュータプログラム | |
JP6261237B2 (ja) | 画像表示装置、画像表示装置の制御方法およびコンピュータプログラム | |
US7853873B2 (en) | Data processing apparatus, data processing method, and computer program for generating electronic data from a paper document | |
WO2005069170A1 (ja) | 画像ファイル一覧表示装置 | |
JP5832257B2 (ja) | 情報処理装置、表示制御方法、及びプログラム | |
US9753548B2 (en) | Image display apparatus, control method of image display apparatus, and program | |
JP4956319B2 (ja) | 画像処理装置、その制御方法、ならびにそのプログラムおよび記憶媒体 | |
US20160300321A1 (en) | Information processing apparatus, method for controlling information processing apparatus, and storage medium | |
JP2020047096A (ja) | 情報処理装置、及び情報処理プログラム | |
JP2015225509A (ja) | 情報処理装置、情報処理システム、情報処理装置の制御方法およびコンピュータプログラム | |
JP2018117310A (ja) | スキャナー、スキャン制御プログラム、画像データの生成方法 | |
JP2009271779A (ja) | 画像処理装置、画像処理方法ならびにそのプログラムおよび記憶媒体 | |
JP2015049656A (ja) | 情報処理装置、方法及びプログラム | |
JP5967960B2 (ja) | 情報処理装置、その制御方法、及びプログラム | |
JP2015106289A (ja) | 表示装置、表示方法、コンピュータプログラム | |
JP2007264966A (ja) | 立体視画像生成装置、立体視画像生成方法、立体視画像生成プログラム、記録媒体、および立体視画像印刷装置 | |
JP2015046041A (ja) | 画像表示装置、画像表示装置の制御方法およびコンピュータプログラム | |
JP2015103086A (ja) | 画像変換装置、画像変換方法、コンピュータプログラム | |
JP2019020954A (ja) | 情報処理装置、情報処理装置の制御方法、及びプログラム | |
JP2013254243A (ja) | 電子文書表示装置、電子文書の表示方法、およびプログラム | |
JP2016143135A (ja) | 情報処理装置、制御方法、及びプログラム |