本発明は、一般に、端末の表示領域の大きさに応じてオブジェクトを動的にレイアウトして表示する表示装置に関するものであり、より特定的には、表示領域の変更に応じて位置・方向を示すオブジェクトの内容が適切に変更され、ユーザの表示に対する理解を容易とするように改良された表示装置に関する。この発明は、またそのような表示を実現することのできる表示装置の表示方法、表示装置の表示プログラム、および表示装置の表示プログラムを記録した記録媒体に関するものである。
近年、パーソナルコンピュータ(以下PCと略する)等の普及に伴い、従来から紙上に記述していた文章または書類を、該PCに備えられた表示部などに表示する機会が増えてきた。例えば、このPCでは、表示部において、文字コード、文字コード群、および/または画像データなどから構成される電子データに基づき、文書または書類として文字、文字列、および/または図形などの画像を表示する。
表示部を備えたPCのように、該表示部において文書または書類などの情報を表示可能とする表示装置では、有限な表示領域を有効に活用するため、複数表示した文書または書類の表示範囲を任意の大きさに変更し、変更された表示範囲の大きさに応じて動的にレイアウトを生成して表示する技術が知られている。
ここで、このような表示領域の大きさに応じて動的にレイアウトを生成して表示する技術の一例について、図45〜図47を参照して説明する。図45は、表示装置において表示可能な電子データの一例を示す図である。図46は、図45に示す電子データの表示例を示す図である。
図45に示す電子データ100は、表示する文字を示す文字列と、改行や表示位置、画像を指定するタグから構成されている。そして、この電子データ100に基づき表示装置において表示させた場合、図46のように、電子データ100が表示されるものとする。なお、この図46において矩形で示す範囲101は、表示領域を示す。
このように、電子データ100に基づく表示を行い、表示領域101を指定した状態において、図47(a)に示す表示領域102へ変更するものとする。図47(a)は、図46の主走査方向の幅を縮小した一例を示す図である。
主走査方向の幅を縮小した結果、画像の主走査方向に表示されていたテキストは表示領域に収まる領域がなくなり、図47(a)に示すように、画像の副走査方向に追い出されて再レイアウトされる。
また、図46の表示領域101を指定した状態において、図47(b)に示す主走査方向、副走査方向へと方向を変更するものとする。図47(b)は、図46の主走査方向、副走査方向を縦書きになるように変更した一例を示す図である。
主走査方向、副走査方向の方向を変更した結果、横書きで表示されていたテキストは、縦書きの表示となるように再レイアウトされる。
また、図47(b)の表示領域101を指定した状態において、図47(c)に示す表示領域103へ変更するものとする。図47(c)は、図46の主走査方向の幅を縮小した一例を示す図である。
主走査方向の幅を縮小した結果、画像の主走査方向に表示されていたテキストは表示領域に収まる領域がなくなり、図47(c)に示すように、画像の副走査方向に追い出されて再レイアウトされる。
このように表示領域に応じて動的にレイアウトを生成する技術は、例えば、特許文献1に開示されている。この特許文献1は、文字や図形、記号等のオブジェクトのレイアウトを簡易に変更可能とする情報処理方法および装置、媒体を開示している。
特開2001−167091号公報(2001年6月22日公開)
しかしながら、上記従来の構成では、表示領域に応じて動的にレイアウトを生成した結果、方向を示す文字列や図形の内容が、適切な意味を持つ方向を示していないなどして、表示された内容に対して、ユーザが誤った理解を持つという問題が生じる。
例えば、図47(a)の場合、「左図の四角形」と表示されているが、指し示す内容は上側に存在する画像であり、正しくは「上図の四角形」と表されるべき内容である。また、図47(b)の場合も、「左図の四角形」と表示されているが、指し示す内容は上側に存在する画像であり、正しくは「上図の四角形」と表されるべき内容である。さらに、図47(c)の場合、「左図の四角形」と表示されているが、指し示す内容は右側に存在する画像であり、正しくは「右図の四角形」と表されるべき内容である。
本発明は、上記の問題点に鑑みてなされたものであり、表示領域の大きさに応じて動的にレイアウトを生成した表示に対して、方向を示す文字列や図形を適切に表示できるように改良された表示データ生成装置を提供することを目的とする。
この発明の他の目的は、表示領域の変更に応じて位置・方向を示すオブジェクトの内容が適切に変更され、ユーザの表示に対する理解を容易とさせる表示データ生成方法を提供することにある。
この発明のさらに他の目的は、そのような方法を実現する表示装置の表示データ生成用制御プログラムを提供することにある。
本発明を説明する前に、本明細書において用いられる用語について定義しておく。
「方向オブジェクト」とは、位置・方向を示すオブジェクトを示す。例えば、上下左右の文字を含む「上図」、「下図」、「左図」、「右図」や「上記」、「下記」、「左記」、「右記」などの文字列であったり、矢印などの画像であったりする。
「方向オブジェクトリスト」とは、複数の方向オブジェクトをリストとしてまとめたものを示す。例えば、「上写真」、「下写真」、「左写真」、「右写真」の四方を示す4つの方向オブジェクトをまとめたものを指す。
「方向指定オブジェクト」とは、方向オブジェクトを含むオブジェクトを示す。例えば、文字列「左図を参照して」に対して「左図」が方向オブジェクトであった場合、文字列「左図を参照して」は方向指定オブジェクトとなる。
「方向対象オブジェクト」とは、方向指定オブジェクトの方向オブジェクトが示す位置・方向の対象となるオブジェクトを示す。例えば、文字列「左図を参照して」の方向オブジェクト「左図」が示す左方向に画像が存在する場合、画像が方向対象オブジェクトとなる。
本発明に従う表示装置は、電子データを表示領域の形状に応じてレイアウトを行う表示装置であって、上記電子データの位置・方向を指定するオブジェクトと上記電子データの位置・方向の対象となるオブジェクトの関連付けに関する情報を生成する手段と、上記関連付け情報に基づき、上記位置・方向を指定するオブジェクトのレイアウトされる位置と、上記位置・方向の対象となるオブジェクトのレイアウトされる位置とを比較する比較手段と、上記比較の結果に応じて、上記位置・方向の対象となるオブジェクトの内容を変更する変更手段と、を備える。さらに詳しく説明すると、本発明に従う表示装置は、電子データを表示する表示領域の情報を取得する表示領域情報取得手段と、前記電子データに含まれる、位置・方向を指定する方向オブジェクトと、前記方向オブジェクトの対象となる方向対象オブジェクトとを特定するように、これら2つのオブジェクトの関連付けである指示関係を特定する指示関係特定手段と、前記取得した表示領域情報に基づき、前記電子データをレイアウトするレイアウト手段と、前記レイアウト手段にてレイアウトされた前記方向オブジェクトと、前記方向対象オブジェクトとの位置とを比較する比較手段と、前記比較の結果に応じて、前記方向オブジェクトが占めていた領域を含む任意の領域に前記方向対象オブジェクトが収まるように、該方向対象オブジェクトの領域を縮小するための、その内容を変更する内容変更手段と、を備える。
本発明の第8の局面に従う表示データ生成方法は、プログラムされたコンピュータによって表示データを生成する方法であって、電子データを表示する表示領域の情報をコンピュータが取得する表示領域情報取得工程と、上記電子データに含まれる、位置・方向を指定する方向オブジェクトと、上記方向オブジェクトの対象となる方向対象オブジェクトとをコンピュータが特定する指示関係特定工程と、上記取得した表示領域情報に基づき、上記電子データをコンピュータがレイアウトするレイアウト工程と、上記レイアウト工程にてレイアウトされた上記方向オブジェクトと、上記方向対象オブジェクトとの位置とをコンピュータが比較する比較工程と、上記比較の結果に応じて、上記方向対象オブジェクトのレイアウトされた位置をコンピュータが変更するレイアウト変更工程と、を備えることを特徴とする。
本発明の他の局面に従う方法は、電子データを表示する表示領域の情報を取得する表示領域情報取得工程と、前記電子データに含まれる、位置・方向を指定する方向オブジェクトと、前記方向オブジェクトの対象となる方向対象オブジェクトとを特定するように、これら2つのオブジェクトの関連付けである指示関係を特定する指示関係特定工程と、前記取得した表示領域情報に基づき、前記電子データをレイアウトするレイアウト工程と、
前記レイアウト手段にてレイアウトされた前記方向オブジェクトと、前記方向対象オブジェクトとの位置とを比較する比較工程と、前記比較の結果に応じて、前記方向オブジェクトが占めていた領域を含む任意の領域に前記方向対象オブジェクトが収まるように、該方向対象オブジェクトの領域を縮小するための、その内容を変更する内容変更工程と、を備える。
本発明のさらに他の局面に従うプログラムは、上述の表示装置を動作させるためのプログラムであって、コンピュータを上記各手段として機能させるための表示装置の表示プログラムにかかる。すなわち、電子データを表示する表示領域の情報をコンピュータに取得させる。前記電子データに含まれる、位置・方向を指定する方向オブジェクトと、前記方向オブジェクトの対象となる方向対象オブジェクトとをコンピュータに特定させる。前記取得した表示領域情報に基づき、前記電子データをコンピュータにレイアウトさせる。前記レイアウト手段にてレイアウトされた前記方向オブジェクトと、前記方向対象オブジェクトとの位置とをコンピュータに比較させる。前記比較の結果に応じて、前記方向オブジェクトが占めていた領域を含む任意の領域に前記方向対象オブジェクトが収まるように、該方向対象オブジェクトの領域を縮小するための、その内容をコンピュータに変更させることを特徴とする。
本発明に係る表示装置は、電子データを表示する表示領域の情報を取得する表示領域情報取得手段と、前記電子データに含まれる、位置・方向を指定する方向オブジェクトと、前記方向オブジェクトの対象となる方向対象オブジェクトとを特定するように、これら2つのオブジェクトの関連付けである指示関係を特定する指示関係特定手段と、前記取得した表示領域情報に基づき、前記電子データをレイアウトするレイアウト手段と、前記レイアウト手段にてレイアウトされた前記方向オブジェクトと、前記方向対象オブジェクトとの位置とを比較する比較手段と、前記比較の結果に応じて、前記方向オブジェクトが占めていた領域を含む任意の領域に前記方向対象オブジェクトが収まるように、該方向対象オブジェクトの領域を縮小するための、その内容を変更する内容変更手段と、を備えることを特徴とする。
本発明に係る表示データ生成装置は、表示領域の変更に応じて位置・方向を示すオブジェクトの内容が適切に変更され、ユーザの表示に対する理解を容易とさせる効果を奏する。
また、本発明に係る方法は、電子データを表示する表示領域の情報を取得する表示領域情報取得工程と、前記電子データに含まれる、位置・方向を指定する方向オブジェクトと、前記方向オブジェクトの対象となる方向対象オブジェクトとを特定するように、これら2つのオブジェクトの関連付けである指示関係を特定する指示関係特定工程と、前記取得した表示領域情報に基づき、前記電子データをレイアウトするレイアウト工程と、前記レイアウト手段にてレイアウトされた前記方向オブジェクトと、前記方向対象オブジェクトとの位置とを比較する比較工程と、前記比較の結果に応じて、前記方向オブジェクトが占めていた領域を含む任意の領域に前記方向対象オブジェクトが収まるように、該方向対象オブジェクトの領域を縮小するための、その内容を変更する内容変更工程と、を備えることを特徴とする。
本発明に係る表示装置の表示データ生成方法は、表示領域の変更に応じて位置・方向を示すオブジェクトの内容が適切に変更され、ユーザの表示に対する理解を容易とさせる効果を奏する。
本発明の実施形態について、図に基づいて説明すると以下の通りである。
(表示装置の概略構成図の説明)
図1は、本実施の形態に係る表示装置の要部構成を示すブロック図である。図2は、本実施の形態に係る表示装置の概略構成を示す図である。
これらの図を参照して、本実施の形態に係る表示装置10は、電子データ100に基づき図形および/または文字などの表示画像を表示する表示部11と、ユーザからの指示または情報の入力を受け付ける操作部13と、表示装置10の外部に設けられる端末装置22とのデータの入出力を行うためのインタフェース部15とを備えている。
また、表示装置10は、ネットワーク20を通じて、電子データ100を保持する端末装置22と通信可能に接続されている。そして、表示装置10は、自身が保持する電子データ100または、端末装置22から取得した電子データ100に基づく表示を行うことができる。
なお、この端末装置22は、着脱可能なHDD(Hard Disk Drive)またはPC(Personal Computer)カードなどの端末記憶部21を備え、この端末記憶部21に電子データ100を保持している。
また、この表示装置10は、後述する記憶部14(図2においては図示されていない)に記憶された電子データ100を、操作部13として設けられた、例えば上、下、左、右キー、ボタンキー、または、タブレットのペンをユーザが操作することで表示することができる構成である。また、インタフェース部15を介してネットワーク20を通じて外部の端末装置22から電子データ100を取得し、該電子データ100に基づく表示を行うことができる構成でもある。
また、この表示装置10では、例えば、表示された表示領域101を任意の大きさに変更することができる。すなわち、本実施の形態に係る表示装置10では、表示部11内において表示領域101の表示領域を拡大、縮小させることができるように構成されている。
(表示装置のブロック図の説明)
図1を参照して、本実施の形態に係る表示装置10の要部構成についてさらに詳細に説明する。
図1に示すように、表示装置10は、表示部11、表示制御部12、操作部13、記憶部14、インタフェース部15、および、レイアウト生成部30を備えている。
(記憶部について)
記憶部14は、記憶装置であり、例えばDRAM(Dynamic Random Access Memory)やフラッシュメモリなどのメモリデバイスで構成される。この記憶部14には、本実施の形態に係る表示装置10において表示させるための電子データ100が格納される。なお、この電子データ100は、文字コードおよび/または画像データなどを含む。
(表示部について)
表示部11は、図示しないグラフィックカード上にVRAM(Video Random Access Memory)を有している。したがって、表示部11は、入力されるデータを一旦VRAMに格納し、表示用信号に変換させて画像として表示領域101に表示する。なお、本実施の形態では、表示部11は液晶表示パネルであるが、これに限定されるものではなく、例えば、プラズマディスプレイ、有機あるいは無機EL(Electro Luminescence)パネル、CRTディスプレイ等であってもよい。
(表示制御部について)
表示制御部12は、表示装置10が備える各部に対する全体的な制御を行うものである。例えば、表示制御部12は、電子データ100の表示を行うために、記憶部14から電子データ100を取得したり、あるいは、後述するインタフェース部15に指示して端末装置22から、該端末装置22が保持する電子データ100を取得したりする。そして、表示制御部12は、取得した電子データ100をVRAMに格納させ、この格納した電子データ100のうち適切な範囲のデータをレイアウトデータに変換させ表示部11において表示させるように指示する。
(操作部について)
操作部13は、ユーザからの指示および/または情報を受け付けるための入力手段であり、例えば、キーボード、マウス、タブレット(入力パネル)、入力ペン、キー(ボタン)、または、マイクなど、様々な入力手段によって実現することができる。
(インタフェース部について)
インタフェース部15は、本実施の形態に係る表示装置10の外部とのインタフェースを提供するものであり、外部との電子データ100の送受信を行うための入出力手段として機能する。本実施の形態に係るインタフェース部15は、ネットワークカードなどにより実現することができ、ネットワーク20に接続されている。なお、このネットワーク20との接続は、有線であってもよいし、無線であってもよい。
(レイアウト生成部について)
レイアウト生成部30は、記憶部14やネットワーク20の記憶装置21の電子データ100から表示部11において表示可能とするためのレイアウトデータを生成するものである。レイアウト生成部30は、機能ブロックとして、レイアウト部31、オブジェクト検索部32、方向リンク情報生成部33、レイアウト位置比較部34、オブジェクト変更部35を備えている。
レイアウト部31は、電子データ100を構成するオブジェクトデータからレイアウトデータを生成するものである。
オブジェクト検索部32は、電子データ100を構成するオブジェクトデータから指定のオブジェクトデータを検索し、検索されたオブジェクトデータの情報を取得するものである。
方向リンク情報生成部33は、オブジェクト検索部32において検索される方向を示すオブジェクトデータ(方向指定オブジェクト)とその方向の対象となるオブジェクトデータ(方向対象オブジェクト)とを関連付ける情報を生成するものである。
レイアウト位置比較部34は、方向指定オブジェクトと方向対象オブジェクトのレイアウトの位置情報を取得して比較を行い、方向指定オブジェクトと方向対象オブジェクトの位置関係を判定するものである。
オブジェクト変更部35は、レイアウト位置比較部34の比較結果に応じて、方向オブジェクトリストから方向オブジェクトを取得し、方向指定オブジェクトの方向オブジェクトを変更するものである。
(データ授受について)
本実施の形態に係る表示装置10が備える各部間でのデータ送受信は、例えば、図示しないCPU(central Processing Unit)に接続されたバスを用いて行われているが、これに限定されるものではなく、データを授受できるならば、通信ケーブルや無線通信装置などを介する構成であってもよい。
(プログラムでの実現について)
また、本実施の形態に係る表示装置10では、特に上記表示制御部12、レイアウト生成部30は、ROM(read only memory)などに記憶されている図示しないプログラムを、図示しないCPUがRAMなどに読み出し実行することによって実現することができる。なお、実現手段としては、プログラムとCPUとを用いる構成に限定されるものではなく、例えば、DSP(Digital Signal Processor)、または、処理手段が回路として組み込まれているロジック回路などを用いる構成であってもよい。また、プログラムは、記憶部14ではなく、外部の記憶装置21に記憶されていてもよい。
すなわち、表示装置10の各ブロック、特に表示制御部12、レイアウト生成部30は、ハードウェアロジックによって構成してもよいし、次のようにCPUを用いてソフトウェアによって実現してもよい。
すなわち、表示装置10は、各機能を実現する制御プログラムの命令を実行するCPU(central processing unit)、上記プログラムを格納したROM(read only memory)、上記プログラムを展開するRAM(random access memory)、上記プログラムおよび各種データを格納するメモリ等の記憶装置(記録媒体)などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである表示装置10の制御プログラムのプログラムコード(実行形式プログラム、中間コードプログラム、ソースプログラム)をコンピュータで読み取り可能に記録した記録媒体を、表示装置10に供給し、そのコンピュータ(またはCPUやMPU)が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
(記録媒体について)
記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー(登録商標)ディスク/ハードディスク等の磁気ディスクやCD−ROM/MO/MD/DVD/CD−R等の光ディスクを含むディスク系、ICカード(メモリカードを含む)/光カード等のカード系、あるいはマスクROM/EPROM/EEPROM/フラッシュROM等の半導体メモリ系などを用いることができる。
(ネットワークについて)
また、表示装置10を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、LAN、ISDN、VAN、CATV通信網、仮想専用網(virtual private network)、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、IEEE1394、USB、電力線搬送、ケーブルTV回線、電話線、ADSL回線等の有線でも、IrDAやリモコンのような赤外線、Bluetooth(登録商標)、802.11無線、HDR、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
(表示装置のフローチャートの説明)
図3は、本実施の形態に係る表示装置10の表示処理を示すフローチャートである。図1−図3を参照して、上記した構成を有する本実施の形態に係る表示装置の表示処理について、説明する。
(ステップS1)
まず、表示装置10では、電子データ100の読み込みを行う(ステップS1、以下S1というように称する)。すなわち表示装置10では、表示制御部12が、記憶部14、または外部の端末装置22が保持する電子データ100を読み込むように制御し、読み出した電子データ100を不図示のVRAMに一時記憶させる。
(ステップS2)
電子データ100が読み出されると、表示装置10は読み出した電子データ100の方向リンク情報の生成を行う、方向リンク情報生成処理を行う(S2)。表示制御部12が、読み出した電子データ100をレイアウト生成部30の機能ブロックである方向リンク情報生成部33に送り、方向リンク情報生成部33において方向リンク情報を生成する。なお、この方向リンク情報生成処理についての詳細な説明は後述する。
(ステップS3)
次に、表示制御部12は、レイアウト生成部30と表示部11を制御してレイアウト作成表示処理を行う(S3)。方向リンク情報生成部33が生成した方向リンク情報に基づいて、レイアウト生成部30は電子データ100のレイアウトデータを生成し、表示制御部12は、生成されたレイアウトデータを表示部11に表示するように制御する。なお、このレイアウト作成表示処理についての詳細な説明は後述する。
(ステップS4)
ここで、操作部13が、ユーザからのスクロール操作の実行指示を受け付ける(S4)。このユーザからのスクロール操作の実行指示に基づき表示制御部12が、表示領域101に表示される表示画像をスクロールできるように、レイアウト生成部30および表示部11に指示を出す。
(ステップS5)
一方、レイアウト生成部30および表示部11は、表示制御部12からの指示に応じて、ユーザからのスクロール操作指示を反映した表示を行うためのスクロール処理を行う(S5)。スクロール処理については、本発明の主旨ではないので詳しい説明は省略するが、一般的に知られているスクロール処理などであってよい。ここでは、スクロール操作に応じて、次に表示する電子データ100のオブジェクトデータやデータ位置を取得し、続けて、S3のレイアウト作成表示処理によって再度レイアウトデータが生成され、表示部11に表示となる。
(ステップS6)
ここで、操作部13が、ユーザからの表示領域変更操作の実行指示を受け付ける(S6)。このユーザからの表示領域変更操作の実行指示に基づき表示制御部12が、表示領域101に表示される表示画像を再レイアウトできるように、レイアウト生成部30および表示部11に指示を出す。
(ステップS7)
一方、レイアウト生成部30および表示部11は、表示制御部12からの指示に応じて、ユーザからの表示領域変更操作指示を反映した表示を行うための表示領域変更処理を行う(S7)。表示領域変更処理については、本発明の主旨ではないので詳しい説明は省略するが、一般的に知られている表示領域変更処理などであってよい。ここでは、表示領域変更操作に応じて、次に表示する表示領域の大きさ、表示する電子データ100のオブジェクトデータやデータ位置を取得し、続けて、S3のレイアウト作成表示処理によって再度レイアウトデータが生成され、表示部11に表示となる。
(ステップS8)
ここで、操作部13が、ユーザからの表示処理を終了する旨の指示を受け付ける(S8)と、この指示を表示制御部12に通知する。表示制御部12は、操作部13が受け付けたユーザからの指示に応じて、表示処理を終了するように表示部11およびレイアウト生成部30を制御する。一方、終了を指示する旨の通知を操作部13が受け付けていない間は、再び、S4に処理が戻り、スクロール処理、表示領域変更処理のいずれかが繰り返される。
以上、表示装置10における表示処理について説明した。以下では、電子データ100の一例を用いて、表示処理の各処理(方向リンク情報生成処理、レイアウト作成表示処理)それぞれについて詳細に説明する。
(方向リンク情報生成処理の説明)
図4は、本実施の形態に係る表示装置10における方向リンク情報生成処理を示すフローチャートである。図4を参照して、図3のステップS2に示す方向リンク情報生成処理について説明する。
(ステップS2−1)
レイアウト生成部30の機能ブロックであるレイアウト部31は、電子データ100から論理レイアウトを生成する(S2−1)。論理レイアウトは、表示部11に表示するレイアウトデータとは異なり、表示領域101のような固定範囲を指定するレイアウトではなく、各オブジェクトデータの意味上のレイアウト配置である。
ここで、論理レイアウトについて図5および図6を参照して説明する。図6は、図45の電子データ100の論理レイアウトを示す図であり、図5は電子データ100のオブジェクトデータを示す図である。
はじめに、電子データ100のオブジェクトデータについて説明する。オブジェクトデータとは、電子データ100の表示する要素ごとに分けられたデータのことである。図45の電子データ100に対しては、表示する文字を示す文字列と、改行や表示位置、画像を指定するタグとを1つの要素としてオブジェクトデータを構成している。
論理レイアウトは、図5の電子データ100のオブジェクトデータごとに、位置や方向などのレイアウトに関わる情報として木構造を生成する。木構造の各枝のまとまりはレイアウト上のまとまり、例えば、1行分のレイアウト、中央寄せの段落、画像に対する回りこみなどに対応する。図6において、木構造の根にあたるオブジェクト200は、図5のオブジェクトデータ200に対応する。オブジェクト200から分岐しているオブジェクト201の文字列「問題1」とオブジェクト202のタグ(改行)はひとつの枝で構成される。これは、レイアウトにおいて主走査方向の位置関係を意味する。同様にして、オブジェクト200から分岐しているオブジェクト203のタグ(画像)とオブジェクト204の文字列「左図の〜」とオブジェクト205のタグ(改行)もひとつの枝で構成され、主走査方向の位置関係を意味する。さらに、オブジェクト200から分岐しているオブジェクト201、203、206はひとつのオブジェクトから分岐しており、これは、レイアウトにおいて副走査方向の位置関係を意味する。
より具体的には、主走査方向を行方向、副走査方向を列方向にとる横書きのレイアウトを想定した場合、オブジェクト201、202はある行において主走査方向にレイアウトされ、オブジェクト203、204、205は副走査方向の次の行において主走査方向にレイアウトされ、オブジェクト206は副走査方向のさらに次の行において主走査方向にレイアウトされる。また、オブジェクト203、204、205はオブジェクト203において画像の左配置が指定してあることから、オブジェクト203は主走査方向の左側、オブジェクト204、205は主走査方向の右側に配置されることになる。
以降の説明のため、論理レイアウトにおいて、あるオブジェクトを中心とした場合、先に分岐の枝となっている位置のオブジェクトを先行オブジェクト、逆に後に分岐している位置のオブジェクトを後行オブジェクトと呼ぶ。例えば、オブジェクト203を中心とすると、オブジェクト201は先行オブジェクト、オブジェクト206は後行オブジェクトとなる。また、あるオブジェクトを中心とした場合、根の位置のオブジェクトを上位オブジェクト、逆に葉の位置のオブジェクトを下位オブジェクトと呼ぶ。例えば、オブジェクト204を中心とすると、オブジェクト203は上位オブジェクト、オブジェクト205は下位オブジェクトとなる。
このようにして、レイアウト部31は、電子データ100から論理レイアウトを生成する。
(ステップS2−2)
次に、方向オブジェクトリストを保持する電子データを読み込み、方向オブジェクトリストを取得する(S2−2)。表示制御部12が、記憶部14、または外部の端末装置22が保持する方向オブジェクトリストの電子データを読み込むように制御する。
ここで、方向オブジェクトリストについて図7を参照して説明する。図7は、方向オブジェクトリストのデータ構造を表す図である。
図7では、例えば、上下左右の方向に対する方向オブジェクトの対を方向オブジェクトリストとして保持している。方向オブジェクトリスト301では、上方向に対応するフラグ「UP」に対して「上図」、下方向に対応するフラグ「DOWN」に対して「下図」、左方向に対応するフラグ「LEFT」に対して「左図」、右方向に対応するフラグ「RIGHT」に対して「右図」とそれぞれの方向に対する方向オブジェクトを保持している。ここでは、方向オブジェクトは文字列で構成されているがこれに限定されるものではない。図形や画像などを示すオブジェクトであってよい。同様にして、方向オブジェクトリスト302では上下左右の方向オブジェクトとして「上記」「下記」「左記」「右記」と文字列を保持している。
また、方向オブジェクトリストは電子データ100に含まれていてもよい。方向オブジェクトリストが電子データ100に含まれる場合については実施例5として後述する。
(ステップS2−3)
次に、S2−1で生成した論理レイアウトの木構造に対して、S2−2で取得した方向オブジェクトリストを用いて検索を行う。オブジェクト検索部32は、レイアウト部31から論理レイアウトのデータと、表示制御部12の読み出した方向オブジェクトリスト110とを取得する。そして、論理レイアウトのすべてのオブジェクトに対して検索したかどうかを判定する(S2−3)。論理レイアウトの木構造を検索する方法は一般的に知られている検索方法などであってよい。ここでは、図6の論理レイアウトに対して深さ優先の順にオブジェクトを検索する。すなわち、オブジェクト200、201、202、203、204、205、206の順にオブジェクトの検索を行う。
すべてのオブジェクトを検索したと判断した場合、方向リンク情報の生成は完了し、方向リンク情報生成処理を終了する(リターン)。
一方、論理レイアウトのすべてのオブジェクトに対して検索が完了していない場合、S2−4へ処理が進む。
(ステップS2−4)
オブジェクトの検索は、はじめにS2−2で取得した方向オブジェクトリストを用いて方向指定オブジェクトの検索を行う(S2−4)。オブジェクト検索部32は、論理レイアウトを構成するオブジェクトの中から、方向オブジェクトリストの方向オブジェクトと一致する内容を保持するオブジェクト、すなわち、方向指定オブジェクトを検索する。
図6の論理レイアウトに対して、図7の方向オブジェクトリストを用いて検索を行った場合、論理レイアウトのオブジェクト204の文字列中に、方向オブジェクトリスト301の方向オブジェクト「左図」が一致し、オブジェクト204は方向指定オブジェクトとして検索される。
(ステップS2−5)
S2−4の方向指定オブジェクトの検索によって、方向指定オブジェクトが存在したかどうかを判定する(S2−5)。オブジェクト検索部32の検索の結果、方向指定オブジェクトが存在する場合、S2−6の処理へ進む。
一方、方向指定オブジェクトが存在しない場合、再びS2−3へ戻り、次のオブジェクトに対する検索を続ける。
(ステップS2−6)
方向指定オブジェクトが存在する場合、方向指定オブジェクトの方向の対象となる方向対象オブジェクトの検索を行う(S2−6)。オブジェクト検索部32は、論理レイアウトの方向指定オブジェクトの位置より、方向オブジェクトの示す位置のオブジェクト、すなわち、方向対象オブジェクトを検索する。
S2−4において、方向指定オブジェクトとしてオブジェクト204が検索された場合の方向対象オブジェクトの検索について説明する。はじめに、方向指定オブジェクトに一致した方向オブジェクトから、一致した方向オブジェクトの示す位置・方向を取得する。方向指定オブジェクト204に一致した方向オブジェクトは「左図」の文字列であり、文字オブジェクトリスト301から「左図」の文字列に対応するフラグとして、左方向を示す「LEFT」を取得する。論理レイアウトの方向指定オブジェクト204の位置から文字オブジェクトリスト301より取得した左方向にオブジェクトが存在した場合、方向指定オブジェクトの示す位置・方向の対象となる方向対象オブジェクトということになる。この場合、方向指定オブジェクト204はオブジェクト203の画像左配置によって、右配置となっていることから、方向指定オブジェクト204の方向対象オブジェクトは、方向指定オブジェクト204の上位オブジェクトの位置に存在するオブジェクト203となる。方向対象オブジェクトは単一のオブジェクトに限定するわけではなく、論理レイアウトにおいて、複数のオブジェクトが対象となる場合、複数のオブジェクトを方向対象オブジェクトとしてよい。
(ステップS2−7)
S2−6の方向対象オブジェクトの検索によって、方向対象オブジェクトが存在したかどうかを判定する(S2−7)。オブジェクト検索部32の検索の結果、方向対象オブジェクトが存在する場合、S2−8の処理へ進む。
一方、方向対象オブジェクトが存在しない場合、再びS2−3へ戻り、次のオブジェクトに対する検索を続ける。
(ステップS2−8)
S2−4で検索された方向指定オブジェクトとS2−7で検索された方向対象オブジェクトに基づき、方向リンク情報を生成する(S2−8)。方向リンク情報33は、オブジェクト検索部32が検索した方向指定オブジェクトの情報と方向対象オブジェクトの情報から方向リンク情報を生成する。
ここで、図8を参照して方向リンク情報について説明する。図8は、方向リンク情報のデータ構造を示す図である。
方向リンク情報は、方向指定オブジェクトと方向対象オブジェクトの対応が示されればよく、図8では、例えば、方向指定オブジェクトに論理レイアウトのオブジェクト204の情報が保持され、方向対象オブジェクトに論理レイアウトのオブジェクト203の情報が保持される。また、方向指定オブジェクトに含まれる方向オブジェクトの情報も保持される。方向リンク情報は、直接情報を保持せず、電子データ100の対応するオブジェクトデータへのポインタ、方向オブジェクトリストへのポインタであってもよい。
表示装置10における方向リンク情報生成処理について説明は以上の通りである。
(レイアウト作成表示処理の説明)
次に、図9を参照して、図3のステップS3に示すレイアウト作成表示処理について説明する。図9は、本実施の形態に係る表示装置10におけるレイアウト作成表示処理を示すフローチャートである。
(ステップS3−1)
はじめに、表示制御部12は、表示部11の表示領域の範囲を取得し、レイアウト生成部30へと表示領域の情報を送る(S3−1)。
(ステップS3−2)
次に、レイアウト生成部30は、S3−1で取得した表示領域に表示する対象となるオブジェクトデータを表示制御部12を通して記憶部14から取得する(S3−2)。
(ステップS3−3)
ここで、レイアウト部31は、表示対象のオブジェクトデータすべてのレイアウトデータを生成したかどうかを判定する(S3−3)。表示領域の表示対象となるオブジェクトデータすべてについてレイアウトデータを生成したと判定した場合、S3−10へ処理が進む。一方、表示対象となるオブジェクトデータすべてのレイアウトデータが生成されていないと判定した場合、S3−4へ処理が進む。
(ステップS3−4)
レイアウト部31は、表示対象のオブジェクトデータすべてのレイアウトデータが生成されていないと判定した場合、表示対象のオブジェクトデータからレイアウトデータを生成していない次のオブジェクトデータを取得する(S3−4)。
(ステップS3−5)
ここで、レイアウト生成部30は、S3−4で取得したオブジェクトデータが方向指定オブジェクトかどうか判定する(S3−5)。レイアウト部31は、方向リンク情報生成部33で生成された方向リンク情報を基にオブジェクトデータが方向指定オブジェクトかどうかを判定する。
取得したオブジェクトデータが方向指定オブジェクトであると判定された場合、S3−6の方向指定オブジェクトレイアウト生成処理へ処理が進む。一方、取得したオブジェクトデータが方向指定オブジェクトでないと判定された場合、S3−7へ処理が進む。
(ステップS3−6)
レイアウト生成部30は、取得したオブジェクトデータが方向指定オブジェクトの場合、方向指定オブジェクトレイアウト生成処理でレイアウトデータを生成する(S3−6)。なお、この方向指定オブジェクトレイアウト生成処理についての詳細な説明は後述する。
方向指定オブジェクトレイアウト生成処理でレイアウトデータの生成が完了すると、再びS3−3の判定処理へと戻る。
(ステップS3−7)
さらに、レイアウト生成部30は、S3−4で取得したオブジェクトデータが方向対象オブジェクトかどうか判定する(S3−7)。レイアウト部31は、方向リンク情報生成部33で生成された方向リンク情報を基にオブジェクトデータが方向指定オブジェクトかどうかを判定する。
取得したオブジェクトデータが方向対象オブジェクトであると判定された場合、S3−8の方向対象オブジェクトレイアウト生成処理へ処理が進む。一方、取得したオブジェクトデータが方向対象オブジェクトでないと判定された場合、S3−9へ処理が進む。
(ステップS3−8)
レイアウト生成部30は、取得したオブジェクトデータが方向対象オブジェクトの場合、方向対象オブジェクトレイアウト生成処理でレイアウトデータを生成する(S3−8)。なお、この方向対象オブジェクトレイアウト生成処理についての詳細な説明は後述する。
方向対象オブジェクトレイアウト生成処理でレイアウトデータの生成が完了すると、再びS3−3の判定処理へと戻る。
(ステップS3−9)
さらに、レイアウト生成部30は、取得したオブジェクトデータが方向指定オブジェクトおよび方向対象オブジェクトでないと判定した場合、現在のレイアウト位置に基づいてレイアウトデータを生成する(S3−9)。レイアウト部31は、現在のレイアウト位置に基づいてレイアウトデータを生成し、現在のレイアウト位置を更新する。
レイアウトデータの生成が完了すると、再びS3−3の判定処理へと戻る。
(ステップS3−10)
このようにして、レイアウト生成部30において、表示対象のオブジェクトデータすべてのレイアウトデータを生成し終わると、表示制御部12は、表示部11へレイアウトデータを送るように制御し、表示部11は表示領域へ表示を行う(S3−10)。表示部11が表示領域への表示を行うとレイアウト作成表示処理のすべてが終了する(リターン)。
以上、表示装置10におけるレイアウト作成表示処理について説明した。以下では、レイアウト作成表示処理の各処理(方向指定オブジェクトレイアウト生成処理、方向対象オブジェクトレイアウト生成処理)のそれぞれについて詳細に説明する。
(方向指定オブジェクトレイアウト生成処理の説明)
ここで、図10を参照して、図9のステップS3−6に示す方向指定オブジェクトレイアウト生成処理について説明する。なお、この図10は、本実施の形態に係る表示装置10における方向指定オブジェクトレイアウト生成処理を示すフローチャートである。
ここでは、図47(a)の表示領域102に対してレイアウトデータを生成するものとして説明を行う。
(ステップS3−6−1)
はじめに、レイアウト生成部30は、方向リンク情報生成部33より方向リンク情報を取得する(S3−6−1)。ここでは、図8の方向リンク情報を取得する。
(ステップS3−6−2)
次に、レイアウト生成部30は、方向リンク情報生成部33より取得した方向リンク情報から方向指定オブジェクトに対応する方向対象オブジェクトの情報を取得する(S3−6−2)。方向指定オブジェクト204に対応する方向対象オブジェクトとして方向対象オブジェクト203を取得する。
(ステップS3−6−3)
ここで、方向対象オブジェクトが先行オブジェクト、または上位オブジェクトかどうか判定する(S3−6−3)。レイアウト生成部30は、レイアウト部31の論理レイアウトにおいて、方向対象オブジェクトが方向指定オブジェクトの先行オブジェクトに位置しているか判定する。ここでは、図6の論理レイアウトにおいて、方向対象オブジェクト203が上位オブジェクトであると判定される。方向対象オブジェクトが先行オブジェクト、または、上位オブジェクトと判定された場合、S3−6−4へ処理が進む。一方、方向対象オブジェクトが先行オブジェクト、または上位オブジェクトでないと判定された場合、S3−6−10へ処理が進む。
(ステップS3−6−4)
レイアウト部31は、方向指定オブジェクトのレイアウトデータを生成する(S3−6−4)。ここでは、後述する方向指定オブジェクトと方向対象オブジェクトのレイアウト位置を比較するために一時的に方向指定オブジェクトのレイアウトデータを生成する。
(ステップS3−6−5)
レイアウト位置比較部34は、方向指定オブジェクトのレイアウト位置と方向対象オブジェクトのレイアウト位置を比較する(S3−6−5)。ここでは、レイアウト位置比較部34は、既にレイアウトデータが生成されている方向対象オブジェクト203とS3−6−4で生成されたレイアウトデータのレイアウト位置を比較する。
方向指定オブジェクトのレイアウト位置と方向対象オブジェクトのレイアウト位置の比較について図11を用いて説明する。
方向指定オブジェクトのレイアウト位置として、方向指定オブジェクトの方向オブジェクトを囲む座標を取得する。座標は、主走査方向にX座標、副走査方向にY座標を対応させるものとする。図11では方向指定オブジェクトである文字列「左図の〜」の「左図」を囲む座標(Xs0,Ys0)―(Xs1,Ys1)を取得する。(ただし、Xs0<Xs1、Ys0<Ys1とする。)同様にして、方向対象オブジェクトである画像を囲む座標(Xt0,Yt0)―(Xt1,Yt1)を取得する。(ただし、Xt0<Xt1、Yt0<Yt1とする。)方向指定オブジェクトを囲む座標と方向対象オブジェクトを囲む座標を比較して2つのオブジェクトの位置関係を判定する。
(ステップS3−6−6)
方向指定オブジェクトの複数の方向に対して方向対象オブジェクトが存在するか判定する(S3−6−6)。レイアウト位置比較部34は、方向指定オブジェクトに対して方向対象オブジェクトがどのようにレイアウトされているかを比較判定する。例えば、方向指定オブジェクトに対して上方向、左方向に方向対象オブジェクトのレイアウトが存在する場合、複数方向に方向対象オブジェクトが存在すると判定する。複数方向に方向対象オブジェクトが存在すると判定した場合、S3−6−7へ処理が進む。一方、複数方向に方向対象オブジェクトが存在しないと判定された場合、すなわち、単方向にのみ方向対象オブジェクトが存在した場合、S3−6−8へ処理が進む。
ここでは、図11の座標がXs0<Xt0<Xs1<Xt1、Yt0<Yt1<Ys0<Ys1が成り立ち、方向対象オブジェクト203は方向指定オブジェクト204の上方向にのみ存在していることになる。
(ステップS3−6−7)
複数方向に方向対象オブジェクトが存在すると判定された場合、単方向となるように方向指定オブジェクトのレイアウトデータを再生成する(S3−6−7)。レイアウト部31は方向指定オブジェクトに対して方向対象オブジェクトが単方向となるように方向指定オブジェクトのレイアウトデータを再生成する。レイアウトデータの再生成が終わると再びS3−6−5へ処理が進む。
複数方向に方向対象オブジェクトが存在する場合の説明は、実施例3として後述する。
(ステップS3−6−8)
次に、レイアウト生成部30は、S3−6−5の比較結果に基づく方向オブジェクトを方向オブジェクトリストより取得する(S3−6−8)。図11では、S3−6−5の処理において、方向指定オブジェクトの上方向に方向対象オブジェクトが存在すると判定していることから、方向オブジェクトリストより「UP」のフラグを持つ「上図」の方向オブジェクトを取得する。
(ステップS3−6−9)
次に、オブジェクト変更部35は、方向指定オブジェクト内の方向オブジェクトを変換する(S3−6−9)。方向指定オブジェクト204の方向オブジェクトである「左図」をS3−6−8で取得した方向オブジェクトである「上図」に変換する。ここでは、方向指定オブジェクト204の文字列を、取得した方向オブジェクトで置換する。これにより、方向指定オブジェクト204は「上図の四角形は〜」という文字列に変換される。
(ステップS3−6−10)
最後に、レイアウト部31は、方向指定オブジェクトのレイアウトデータを生成する(S3−6−10)。S3−6−9において変換された方向指定オブジェクト204のレイアウトデータを生成する。
以上、表示装置10における方向指定オブジェクトレイアウト生成処理について説明した。
(方向対象オブジェクトレイアウト生成処理の説明)
ここで、図12を参照して、図9のステップS3−8に示す方向対象オブジェクトレイアウト生成処理について説明する。図12は、本実施の形態に係る表示装置10における方向対象オブジェクトレイアウト生成処理を示すフローチャートである。
(ステップS3−8−1)
はじめに、レイアウト生成部30は、方向リンク情報生成部33より方向リンク情報を取得する(S3−8−1)。ここでは、図8の方向リンク情報を取得する。
(ステップS3−8−2)
次に、レイアウト生成部30は、方向リンク情報生成部33より取得した方向リンク情報から方向対象オブジェクトに対応する方向指定オブジェクトの情報を取得する(S3−8−2)。方向対象オブジェクト203に対応する方向指定オブジェクトとして方向指定オブジェクト204を取得する。
(ステップS3−8−3)
ここで、方向指定オブジェクトが先行オブジェクト、または上位オブジェクトかどうか判定する(S3−8−3)。レイアウト生成部30は、レイアウト部31の論理レイアウトにおいて、方向指定オブジェクトが方向対象オブジェクトの先行オブジェクトに位置しているか判定する。ここでは、図6の論理レイアウトにおいて、方向指定オブジェクト204が下位オブジェクトであると判定される。方向指定オブジェクトが先行オブジェクト、または上位オブジェクトと判定された場合、S3−8−4へ処理が進む。一方、方向指定オブジェクトが先行オブジェクト、または上位オブジェクトでないと判定された場合、S3−8−13へ処理が進む。
(ステップS3−8−4)
また、レイアウト生成部30は、レイアウト部31の論理レイアウトにおいて、現在の方向対象オブジェクト以外の方向対象オブジェクトが後行オブジェクト、または下位オブジェクトに存在するか判定する(S3−8−4)。方向対象オブジェクトが後行オブジェクト、または下位オブジェクトに存在する場合、S3−8−13へ処理が進む。一方、方向指定オブジェクトが後行オブジェクト、または下位オブジェクトに存在しない場合、S3−8−5へ処理が進む。
(ステップS3−8−5)
レイアウト部31は、方向対象オブジェクトのレイアウトデータを生成する(S3−8−5)。ここでは、後述する方向指定オブジェクトと方向対象オブジェクトのレイアウト位置を比較するために一時的に方向対象オブジェクトのレイアウトデータを生成する。
(ステップS3−8−6)
レイアウト位置比較部34は、方向指定オブジェクトのレイアウト位置と方向対象オブジェクトのレイアウト位置を比較する(S3−8−6)。ここでは、レイアウト位置比較部34は、既にレイアウトデータが生成されている方向指定オブジェクと既にレイアウトデータが生成されている方向対象オブジェクト、また、S3−8−5で生成されたレイアウトデータのレイアウト位置を比較する。
方向指定オブジェクトのレイアウト位置と方向対象オブジェクトのレイアウト位置の比較する処理は、S3−6−5と同様であるため説明は省略する。
(ステップS3−8−7)
方向指定オブジェクトの複数の方向に対して方向対象オブジェクトが存在するか判定する(S3−8−7)。レイアウト位置比較部34は、方向指定オブジェクトに対して方向対象オブジェクトがどのようにレイアウトされているかを比較判定する。ここでの処理は、S3−6−6の処理と同様であるため説明は省略する。複数方向に方向対象オブジェクトが存在すると判断した場合、S3−8−8へ処理が進む。一方、複数方向に方向対象オブジェクトが存在しないと判断された場合、すなわち、単方向にのみ方向対象オブジェクトが存在した場合、S3−8−9へ処理が進む。
(ステップS3−8−8)
複数方向に方向対象オブジェクトが存在すると判断された場合、単方向となるように方向対象オブジェクトのレイアウトデータを再生成する(S3−8−8)。レイアウト部31は方向対象オブジェクトが単方向となるように方向対象オブジェクトのレイアウトデータを再生成する。レイアウトデータの再生成が終わると再びS3−8−6へ処理が進む。
複数方向に方向対象オブジェクトが存在する場合の説明は、実施例4として後述する。
(ステップS3−8−9)
次に、レイアウト生成部30は、S3−8−6の比較結果に基づく方向オブジェクトを方向オブジェクトリストより取得する(S3−8−9)。ここでの処理は、S3−6−8の処理と同じであるため説明は省略する。
(ステップS3−8−10)
次に、オブジェクト変更部35は、方向指定オブジェクト内の方向オブジェクトを変換する(S3−8−10)。ここでの処理は、S3−6−9の処理と同じであるため説明は省略する。
(ステップS3−8−11)
次に、S3−8−10で変換された方向指定オブジェクトのレイアウトデータを再生成する(S3−8−11)。レイアウト部31は、レイアウトデータの再生成として、S3−8−7の処理と同様に単一方向となるようにレイアウトデータを生成する。
(ステップS3−8−12)
次に、レイアウト部31は、S3−8−11で生成された方向指定オブジェクトのレイアウトデータに続き、現在の方向対象オブジェクトの先行オブジェクト、または上位オブジェクトである方向対象オブジェクトが存在する場合は、レイアウトデータを生成する(S3−8−12)。
(ステップS3−8−13)
最後に、レイアウト部31は、方向対象オブジェクトのレイアウトデータを生成する。(S3−8−13)。方向対象オブジェクトのレイアウトデータは、現在のレイアウト位置に続いてレイアウトされる。
以上、表示装置10における方向対象オブジェクトレイアウト生成処理について説明した。
(参考例1)
ここで、上記した「レイアウト作成表示処理」について、より明確に説明するために下記において図5−図13、図45−図47を参照してより具体的に説明する。
ここでは、図46に示す表示された電子データ100の表示領域101を図47(a)に示す表示領域102へ変更する場合のレイアウト作成表示処理を説明する。
はじめに、表示領域101から表示領域102へ表示領域が変更になると表示領域102の範囲を取得し、表示範囲102の表示対象となるオブジェクトデータを取得する。ここでは、電子データ100のオブジェクトデータがすべて表示できることから、図5に示すオブジェクトデータ200から206のすべてを取得する。
次に、オブジェクトデータ200から順に、先に生成されている図6の論理レイアウトと図8の方向リンク情報を基にレイアウトデータを生成する。
オブジェクトデータ200は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−9におけるレイアウトデータ生成)。
続く、オブジェクトデータ201、202もオブジェクトデータ200と同様、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−9におけるレイアウトデータ生成)。
次に、オブジェクトデータ203のレイアウトデータを生成する。オブジェクトデータ203は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトである(S3−7において「YES」)ことから方向対象オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向対象オブジェクト203の方向指定オブジェクトであるオブジェクト204の情報が取得される。論理レイアウトにおいて、方向指定オブジェクト204は方向対象オブジェクト203の先行オブジェクトでなく、また、上位オブジェクトでもない(S3−8−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
次に、オブジェクトデータ204のレイアウトデータを生成する。オブジェクトデータ204は、方向リンク情報より方向指定オブジェクトである(S3−5において「YES」)ことから方向指定オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向指定オブジェクト204の方向対象オブジェクトであるオブジェクト203の情報が取得される。論理レイアウトにおいて、方向対象オブジェクト203は方向指定オブジェクト204の上位オブジェクトである(S3−6−3において「YES」)ことから現在のレイアウト位置にレイアウトデータを仮に生成する(S3−6−4におけるレイアウトデータ生成)。ここで方向指定オブジェクト204と方向対象オブジェクト203のレイアウト位置を比較する。図11に示すように方向対象オブジェクト203のレイアウト位置(Xt0,Yt0)−(Xt1,Yt1)を取得し、方向指定オブジェクト204の方向オブジェクト「左図」のレイアウト位置(Xs0,Ys0)−(Xs1,Ys1)を取得する。図に示す通りXs0<Xt0<Xs1<Xt1、Yt0<Yt1<Ys0<Ys1が成り立つものとし、方向対象オブジェクト203が方向指定オブジェクト204の上方向のみに存在すると判定する(S3−6−6において「NO」)。比較結果に基づき、方向オブジェクトリストより対応する上方向の方向オブジェクト「上図」を取得し、方向指定オブジェクト204の方向オブジェクト「左図」を変換する。ここでは、方向指定オブジェクト204が文字列であるので方向オブジェクト「左図」を「上図」に置換する。最後に、方向オブジェクト「上図」に変換した方向指定オブジェクト204のレイアウトデータを生成する(S3−6−10におけるレイアウトデータ生成)。
残りのオブジェクトデータ205、206もオブジェクトデータ200と同様、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−9におけるレイアウトデータ生成)。
以上のようにして、オブジェクトデータ200から206のレイアウトデータを順に生成して表示領域102に表示する。図13(a)は、表示領域101から表示領域102へ表示領域を変更し、レイアウト作成表示処理によってレイアウトデータを生成した表示を表す。図13(a)の表示は、従来の図47(a)と比較して方向オブジェクトである「左図」が「上図」へ変更となっている。これにより、図47(a)では、「左図」の左方向に図形が存在せず、ユーザにとって分り難くなっていた表示が、図13(a)では「上図」の上方向に図形が存在して、ユーザにとって分かり易い表示となっている。
このように本実施の形態に係る表示装置10では、表示領域を変更した場合に、上記したレイアウト作成表示処理によって、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
なお、上記では表示装置10の表示領域101を表示領域102へ表示領域を変更する場合について説明したが、表示領域の変更だけに限定されるものではない。表示領域は変更せず表示の主走査方向、副走査方向を変更する場合についても同様に適用できる。以下、参考例2として、表示領域を変更せず、主走査方向、副走査方向を変更する場合について説明する。
(参考例2)
ここでは、図46に示す表示された電子データ100の主走査方向、副走査方向を図47(b)に示す主走査方向、副走査方向へ変更する場合のレイアウト作成表示処理を説明する。
はじめに、図46の主走査方向、副走査方向が図47(b)の主走査方向、副走査方向へ変更になると表示領域101の範囲を取得し、表示領域101の表示対象となるオブジェクトデータを取得する。ここでは、電子データ100のオブジェクトデータがすべて表示できることから、図5に示すオブジェクトデータ200から206のすべてを取得する。
次に、オブジェクトデータ200から順に、先に生成されている図6の論理レイアウトと図8の方向リンク情報を基にレイアウトデータを生成する。
オブジェクトデータ200、および続くオブジェクトデータ201、202は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−9におけるレイアウトデータ生成)。
次に、オブジェクトデータ203のレイアウトデータを生成する。オブジェクトデータ203は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトである(S3−7において「YES」)ことから方向対象オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向対象オブジェクト203の方向指定オブジェクトであるオブジェクト204の情報が取得される。論理レイアウトにおいて、方向指定オブジェクト204は方向対象オブジェクト203の先行オブジェクトでなく、また、上位オブジェクトでもない(S3−8−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
次に、オブジェクトデータ204のレイアウトデータを生成する。オブジェクトデータ204は、方向リンク情報より方向指定オブジェクトである(S3−5において「YES」)ことから方向指定オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向指定オブジェクト204の方向対象オブジェクトであるオブジェクト203の情報が取得される。論理レイアウトにおいて、方向対象オブジェクト203は方向指定オブジェクト204の上位オブジェクトである(S3−6−3において「YES」)ことから現在のレイアウト位置にレイアウトデータを仮に生成する(S3−6−4におけるレイアウトデータ生成)。ここで方向指定オブジェクト204と方向対象オブジェクト203のレイアウト位置を比較する。レイアウト位置の座標は、図14に示すように、主走査方向にY座標、副走査方向にX座標を対応させるものとする。図14に示すように方向対象オブジェクト203のレイアウト位置(Xt0,Yt0)−(Xt1,Yt1)を取得し、方向指定オブジェクト204の方向オブジェクト「左図」のレイアウト位置(Xs0,Ys0)−(Xs1,Ys1)を取得する。図に示す通りXs0<Xt0<Xs1<Xt1、Yt0<Yt1<Ys0<Ys1が成り立つものとし、方向対象オブジェクト203が方向指定オブジェクト204の上方向のみに存在すると判定する(S3−6−6において「NO」)。比較結果に基づき、方向オブジェクトリストより対応する上方向の方向オブジェクト「上図」を取得し、方向対象オブジェクト204の方向オブジェクト「左図」を変換する。ここでは、方向指定オブジェクト204が文字列であるので方向オブジェクト「左図」を「上図」に置換する。最後に、方向オブジェクト「上図」に変換した方向指定オブジェクト204のレイアウトデータを生成する(S3−6−10におけるレイアウトデータ生成)。
残りのオブジェクトデータ205、206もオブジェクトデータ200と同様、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−9におけるレイアウトデータ生成)。
以上のようにして、オブジェクトデータ200から206のレイアウトデータを順に生成して表示領域101に表示する。図13(b)は、表示領域101において主走査方向と副走査方向を変更し、レイアウト作成表示処理によってレイアウトデータを生成した表示を表す。図13(b)の表示は、従来の図47(b)と比較して方向オブジェクトである「左図」が「上図」へ変更となっている。これにより、図47(b)では、「左図」の左方向に図形が存在せず、ユーザにとって分り難くなっていた表示が、図13(b)では「上図」の上方向に図形が存在して、ユーザにとって分かり易い表示となっている。
このように本実施の形態に係る表示装置10では、主走査方向と副走査方向の方向を変更した場合に、上記したレイアウト作成表示処理によって、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
また、続けて、図47(b)の表示領域101から図47(c)に示す表示領域103に表示領域を変更する場合も、上記で説明したレイアウト作成表示処理と同様であり、図47(c)の方向オブジェクト「左図」は図13(c)の「右図」と変換されて表示となる。この場合も、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
また、上記表示装置10では、表示対象オブジェクトが先行、または上位オブジェクトで、かつ、単一方向にレイアウトされる場合に限定していたが、以下、参考例3として、表示対象オブジェクトが先行、または上位オブジェクトで、かつ複数方向にレイアウトされる場合について説明する。
(参考例3)
図15から図21を参照してレイアウト生成表示処理の表示対象オブジェクトが先行、または上位オブジェクトで、かつ複数方向にレイアウトされる場合について説明する。図15は、表示装置10に表示する電子データ120を示す。図16は、電子データ120を表示部11の表示領域104に対して表示した一例を示す。図18は、表示部11の表示領域104を表示領域105に変更した場合の従来例を示す。ここでは、図16に示す表示領域104を図18に示す表示領域105へ表示領域を変更する場合のレイアウト生成表示処理を説明する。
はじめに、電子データ120の論理レイアウトと方向リンク情報の生成について簡単に説明する。図17は電子データ120の論理レイアウトである。オブジェクト210からオブジェクト214が1つの枝で構成されている。図7に示す方向オブジェクトリストよりオブジェクト214の「左写真」が方向オブジェクトと検索され、オブジェクト214は方向指定オブジェクト214として検索される。方向指定オブジェクト214の方向オブジェクト「左写真」が示す左方向に存在するオブジェクトは、論理レイアウトの上位オブジェクトであるオブジェクト211、212、213が方向対象オブジェクトとして検索される。したがって、方向リンク情報は、方向指定オブジェクト214と方向対象オブジェクト211、212、213として生成される。
レイアウト生成表示処理は、はじめに、表示領域104から表示領域105へ表示領域が変更になると表示領域105の表示範囲を取得し、表示範囲105の表示対象となるオブジェクトデータを取得する。ここでは、電子データ120のオブジェクトデータがすべて表示できることから、オブジェクトデータのすべてを取得する。
次に、オブジェクトデータ210から順に、先に生成されている図17の論理レイアウトと方向リンク情報を基にレイアウトデータを生成する。
オブジェクトデータ210は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する。(S3−9におけるレイアウトデータ生成)。
次に、オブジェクトデータ211のレイアウトデータを生成する。オブジェクトデータ211は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトである(S3−7において「YES」)ことから方向対象オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向対象オブジェクト211の方向指定オブジェクトであるオブジェクト214の情報が取得される。論理レイアウトにおいて、方向指定オブジェクト214は方向対象オブジェクト211の先行オブジェクトでなく、また、上位オブジェクトでもない(S3−8−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
続く、オブジェクトデータ212、213もオブジェクトデータ211と同様、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトであり(S3−7において「YES」)、また、論理レイアウトにおいて、方向指定オブジェクト214は方向対象オブジェクト212、213の先行オブジェクトでなく、また上位オブジェクトでもない(S3−8−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
次にオブジェクトデータ214のレイアウトデータを生成する。オブジェクトデータ214は、方向リンク情報より方向指定オブジェクトである(S3−5において「YES」)ことから方向指定オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向指定オブジェクトの方向対象オブジェクトであるオブジェクト211、212、213の情報が取得される。論理レイアウトにおいて、方向対象オブジェクト211、212、213は方向指定オブジェクト214の上位オブジェクトである(S3−6−3において「YES」)ことから現在のレイアウト位置にレイアウトデータを仮に生成する(S3−6−4におけるレイアウトデータ生成)。ここで方向指定オブジェクト214と方向対象オブジェクト211、212、213のレイアウト位置を比較する。図19は、方向指定オブジェクト214と方向対象オブジェクト211、212、213のレイアウト位置を示す図である。図19に示すように方向対象オブジェクト211のレイアウト位置(Xt0,Yt0)−(Xt1,Yt1)(Xt0<Xt1、Yt0<Yt1)、方向対象オブジェクト212のレイアウト位置(Xt2,Yt2)−(Xt3,Yt3)(Xt2<Xt3、Yt2<Yt3)、方向対象オブジェクト213のレイアウト位置(Xt4,Yt4)−(Xt5,Yt5)(Xt4<Xt5、Yt4<Yt5)を取得し、方向指定オブジェクト214の方向オブジェクト「左写真」のレイアウト位置(Xs0,Ys0)−(Xs1,Ys1)(Xs0<Xs1、Ys0<Ys1)を取得する。各々のオブジェクトのレイアウト位置を比較し、図に示す通りXt0<Xt1<Xs0<Xs1、Yt0<Yt1<Ys0<Ys1が成り立ち、方向対象オブジェクト211は方向指定オブジェクト214の上方向に位置していると判定される。また、Xt2≦Xs0<Xs1<Xt3、Yt2<Yt3<Ys0<Ys1が成り立ち、方向対象オブジェクト212は方向指定オブジェクト214の上方向に位置していると判定される。また、Xt4<Xt5<Xs0<Xs1、Yt4<Ys0<Yt5≦Ys1が成り立ち、方向対象オブジェクト213は方向指定オブジェクト214の左方向に位置していると判定される。これにより、方向対象オブジェクト211、212、213は方向指定オブジェクト214の上方向かつ左方向の複数方向に存在すると判定する(S3−6−6において「YES」)。
ここで、複数方向に方向対象オブジェクトが存在すると判定された方向指定オブジェクト214のレイアウト位置を単方向になるように再生成する。ここでは、主走査方向で単方向になるようにレイアウト位置を変更する場合、方向対象オブジェクト212が方向指定オブジェクト214の左方向に位置するように方向指定オブジェクト214のレイアウト位置を決定すれば、方向対象オブジェクト211、212、213はすべて方向指定オブジェクト214の左方向となるが、方向対象オブジェクト212の範囲の右端(Xt3,Yt2)−(Xt3,Yt3)の右方向に方向指定オブジェクト214の範囲の左端(Xs0,Ys0)−(Xs0,Ys1)を配置すると方向指定オブジェクト214の方向オブジェクトのレイアウト位置が表示領域105の範囲を越えるため、副走査方向で単方向になるようにレイアウト位置を変更する。したがって、方向対象オブジェクト213の範囲の下端(Xt4,Yt5)−(Xt5,Yt5)の下方向に方向指定オブジェクト214の範囲の上端(Xs0,Ys0)−(Xs1,Ys0)を配置するようにレイアウト位置を決定する。
図20は、方向指定オブジェクト214が方向対象オブジェクト211、212、213の下方向に配置となるようにレイアウト位置を決定した例を示す。図に示す通りXs0<Xt0<Xs1<Xt1、Yt0<Yt1<Ys0<Ys1が成り立ち、方向対象オブジェクト211は方向指定オブジェクト214の上方向に位置していると判定される。また、Xs0<Xs1<Xt2<Xt3、Yt2<Yt3<Ys0<Ys1が成り立ち、方向対象オブジェクト212は方向指定オブジェクト214の上方向かつ右方向に位置していると判定される。また、Xs0<Xt4<Xs1<Xt5、Yt4<Yt5<Ys0<Ys1が成り立ち、方向対象オブジェクト213は方向指定オブジェクト214の上方向に位置していると判定される。これにより、方向対象オブジェクト211、212、213は方向指定オブジェクト214の上方向の単方向に存在すると判定する(S3−6−6において「NO」)。
比較結果に基づき、方向オブジェクトリストより対応する上方向の方向オブジェクト「上写真」を取得し、方向指定オブジェクト214の方向オブジェクト「左写真」を変換する。ここでは、方向指定オブジェクト214が文字列であるので方向オブジェクト「左写真」を「上写真」に置換する。最後に、方向オブジェクト「上写真」に変換した方向指定オブジェクト214のレイアウトデータを生成する(S3−6−10におけるレイアウトデータ生成)。
以上のようにして、オブジェクトデータ210から214のレイアウトデータを順に生成して表示領域105に表示する。図21は、表示領域104から表示領域105へ表示領域を変更し、レイアウト作成表示処理によってレイアウトデータを生成した表示を表す。図21の表示は、従来の図18と比較して方向オブジェクトである「左写真」が「上写真」へ変更となり、更に方向オブジェクトの「上写真」が3枚の画像の下側へレイアウトが変更となっている。これにより、図18では、「左写真」の左方向には画像が1枚しか存在せず、文章が画像3枚を指していることがユーザにとって分り難くなっていた表示が、図21では、「上写真」の上方向に画像が3枚存在して、文章が画像3枚を指していることがユーザにとって分かり易い表示となっている。
このように本実施の形態に係る表示装置10では、表示領域を変更した場合に、上記したレイアウト作成表示処理によって、位置・方向を示すオブジェクトを適切な位置へ再配置し、かつ、適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
また、上記表示装置10では、表示対象オブジェクトが先行、または上位オブジェクトで、かつ、複数方向にレイアウトされる場合に限定していたが、以下、参考例4として、表示対象オブジェクトが後行、または下位オブジェクトで、かつ、複数方向にレイアウトされる場合について説明する。
(参考例4)
図22から図28を参照してレイアウト生成表示処理の表示対象オブジェクトが後行、または下位オブジェクトで、かつ複数方向にレイアウトされる場合について説明する。図22は、表示装置10に表示する電子データ130を示す。図23は、電子データ130を表示部11の表示領域106に対して表示した一例を示す。図25は、表示部11の表示領域106を表示領域107に変更した場合の従来例を示す。ここでは、図23に示す表示領域106を図25に示す表示領域107へ表示領域を変更する場合のレイアウト生成表示処理を説明する。
はじめに、電子データ130の論理レイアウトと方向リンク情報の生成について簡単に説明する。図24は電子データ130の論理レイアウトである。オブジェクト220からオブジェクト223が1つの枝で構成されている。図7に示す方向オブジェクトリストよりオブジェクト221の「右写真」が方向オブジェクトと検索され、オブジェクト221は方向指定オブジェクト221として検索される。方向指定オブジェクト221の下位オブジェクトであるオブジェクト222、223が方向対象オブジェクトとして検索される。したがって、方向リンク情報は、方向指定オブジェクト221と方向対象オブジェクト222、223として生成される。
レイアウト生成表示処理は、はじめに、表示領域106から表示領域107へ表示領域が変更になると表示領域107の表示範囲を取得し、表示範囲107の表示対象となるオブジェクトデータを取得する。ここでは、電子データ130のオブジェクトデータがすべて表示できることから、オブジェクトデータのすべてを取得する。
次に、オブジェクトデータ220から順に、先に生成されている図24の論理レイアウトと方向リンク情報を基にレイアウトデータを生成する。
オブジェクトデータ220は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する。(S3−9におけるレイアウトデータ生成)。
次に、オブジェクトデータ221のレイアウトデータを生成する。オブジェクトデータ221は、方向リンク情報より方向指定オブジェクトである(S3−5において「YES」)ことから方向指定オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向指定オブジェクトの方向対象オブジェクトであるオブジェクト222、223の情報が取得される。論理レイアウトにおいて、方向対象オブジェクト222、223は方向指定オブジェクトの下位オブジェクトである(S3−6−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−6−10におけるレイアウトデータ生成)。
次に、オブジェクトデータ222のレイアウトデータを生成する。オブジェクトデータ222は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトである(S3−7において「YES」)ことから方向対象オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向対象オブジェクト222の方向指定オブジェクトであるオブジェクト221の情報が取得される。論理レイアウトにおいて、方向指定オブジェクト221は方向対象オブジェクト222の先行オブジェクトではないが上位オブジェクトであり(S3−8−3において「YES」)、また、方向対象オブジェクト222の下位オブジェクトとして方向対象オブジェクト223が存在する(S3−8−4において「YES」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
次に、オブジェクトデータ223のレイアウトデータを生成する。オブジェクトデータ223は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトである(S3−7において「YES」)ことから方向対象オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向対象オブジェクト223の方向指定オブジェクトであるオブジェクト221の情報が取得される。論理レイアウトにおいて、方向指定オブジェクト221は方向対象オブジェクト223の先行オブジェクトではないが上位オブジェクトであり(S3−8−3において「YES」)、また、方向対象オブジェクト223の後行オブジェクト、または下位オブジェクトに方向対象オブジェクトが存在しない(S3−8−4において「NO」)ことから、現在のレイアウト位置にレイアウトデータを仮に生成する(S3−8−5におけるレイアウトデータ生成)。ここで方向指定オブジェクト221と方向対象オブジェクト222、223のレイアウト位置を比較する。
図26は、方向指定オブジェクト221と方向対象オブジェクト222、223のレイアウト位置を示す図である。図26に示すように方向指定オブジェクト221の方向オブジェクト「右写真」のレイアウト位置(Xs0,Ys0)−(Xs1,Ys1)(Xs0<Xs1、Ys0<Ys1)を取得し、方向対象オブジェクト222のレイアウト位置(Xt0,Yt0)−(Xt1,Yt1)(Xt0<Xt1、Yt0<Yt1)、方向対象オブジェクト223のレイアウト位置(Xt2,Yt2)−(Xt3,Yt3)(Xt2<Xt3、Yt2<Yt3)を取得する。各々のオブジェクトのレイアウト位置を比較し、図に示す通りXs0<Xs1<Xt0<Xt1、Ys0≦Yt0<Ys1<Yt1が成り立ち、方向対象オブジェクト222は方向指定オブジェクト221の右方向に位置していると判定される。また、Xt2<Xs0<Xs1<Xt3、Ys0<Ys1<Yt2<Yt3が成り立ち、方向対象オブジェクト223は方向指定オブジェクト221の下方向に位置していると判定される。これにより、方向対象オブジェクト222、223は方向指定オブジェクト221の右方向かつ下方向の複数方向に存在すると判定する(S3−8−7において「YES」)。
ここで、複数方向に方向対象オブジェクトが存在すると判定された方向対象オブジェクト222、223のレイアウト位置を単方向になるように再生成する。ここでは、主走査方向で単方向になるようにレイアウト位置を変更する場合、方向対象オブジェクト223が方向指定オブジェクト221の右方向に位置するように方向対象オブジェクト223のレイアウト位置を決定すれば、方向対象オブジェクト222、223はすべて方向指定オブジェクト221の右方向となるが、方向指定オブジェクト221の範囲の右端(Xs1,Ys0)−(Xs1,Ys1)の右方向に方向対象オブジェクト222と方向対象オブジェクト223を配置すると方向対象オブジェクト223のレイアウト位置が表示領域107の範囲を越えるため、副走査方向で単方向になるようにレイアウト位置を変更する。したがって、方向指定オブジェクト221の範囲の下端(Xs0,Ys1)−(Xs1,Ys1)の下方向に方向対象オブジェクト222の範囲の上端(Xt0,Yt0)−(Xt1,Yt0)と方向対象オブジェクト223の範囲の上端(Xt2,Yt2)−(Xt3,Yt2)を配置するようにレイアウト位置を決定する。
図27は、方向対象オブジェクト222、223が方向指定オブジェクト221の下方向に配置となるようにレイアウト位置を決定した例を示す。図に示す通りXt0<Xs0<Xs1<Xt1、Ys0<Ys1<Yt0<Yt1が成り立ち、方向対象オブジェクト222は方向指定オブジェクト221の下方向に位置していると判定される。また、Xs0<Xs1<Xt2<Xt3、Ys0<Ys1<Yt2<Yt3が成り立ち、方向対象オブジェクト223は方向指定オブジェクト221の下方向に位置していると判定される。これにより、方向対象オブジェクト222、223は方向指定オブジェクトの下方向の単方向に存在すると判定する(S3−8−7において「NO」)。
比較結果に基づき、方向オブジェクトリストより対応する下方向の方向オブジェクト「下写真」を取得し、方向指定オブジェクト221の方向オブジェクト「右写真」を変換する。ここでは、方向指定オブジェクト221が文字列であるので方向オブジェクト「右写真」を「下写真」に置換する。方向オブジェクト「下写真」に変換した方向指定オブジェクト221のレイアウトデータを生成する(S3−8−11におけるレイアウトデータ生成)。
最後に、方向指定オブジェクト221に続く方向対象オブジェクト222のレイアウトデータを生成し(S3−8−12におけるレイアウトデータ生成)、現在のレイアウト位置に方向対象オブジェクト223のレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
以上のようにして、オブジェクトデータ220から223のレイアウトデータを順に生成して表示領域107に表示する。図28は、表示領域106から表示領域107へ表示領域を変更し、レイアウト作成表示処理によってレイアウトデータを生成した表示を表す。図28の表示は、従来の図25と比較して方向オブジェクトである「右写真」が「下写真」へ変更となり、更に方向オブジェクトの「下写真」の下側へ2枚の画像のレイアウトが変更となっている。これにより、図25では、「右写真」の右方向には画像が1枚しか存在せず、文章が画像2枚を指していることがユーザにとって分り難くなっていた表示が、図28では、「下写真」の下方向に画像が2枚存在して、文章が画像2枚を指していることがユーザにとって分かり易い表示となっている。
このように本実施の形態に係る表示装置10では、表示領域を変更した場合に、上記したレイアウト作成表示処理によって、位置・方向を示すオブジェクトの対象となるオブジェクトを適切な位置へ再配置し、かつ、位置・方向を示すオブジェクトを適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
また、上記表示装置10では、表示部11に表示する電子データと方向オブジェクトリストを別のデータとして保持する場合に限定していたが、以下、参考例5として、電子データに方向オブジェクトリストを含む場合について説明する。
(参考例5)
図29を参照してレイアウト生成表示処理の電子データに方向オブジェクトリストを含む場合について説明する。図29は、表示装置10に表示する電子データ140を示す。電子データ140は、表示部11の表示領域に表示するデータと共に方向オブジェクトリストを保持している。具体的には、電子データ140のタグ「direction」の子
供要素にタグ「up」、「down」、「left」、「right」を保持し、それぞ
れのタグの子供要素には、「上図」、「下図」、「左図」、「右図」の文字列を保持している。これらは、図7における方向オブジェクトリスト301の情報と同じ内容を示す。また、電子データ140に保持されている方向オブジェクトリストを示すタグ「dire
ction」は方向オブジェクトリストを示すと同時にその位置に方向オブジェクトが存
在することを示す。
図30は、電子データ140の論理レイアウトを示す。方向オブジェクトとしてタグ「direction」が検索され、オブジェクト234は方向指定オブジェクトとして検
索される。また、方向指定オブジェクト234の方向対象オブジェクトは、論理レイアウトから上位オブジェクトであるオブジェクト233と検索されるが、電子データ140のタグ「direction」の属性として「id」属性が指定され、同じID番号「ID
00」がタグ「img」の「id」属性に指定されることで、方向指定オブジェクトに対
応する方向対象オブジェクトの情報を電子データ140で指定してもよい。すなわち、方向リンク情報を電子データ140に保持してもよい。
電子データ140のレイアウト生成表示処理は、方向オブジェクトリストや方向リンク情報を電子データから取得する以外は、図5から図14、図45−図47を用いて具体的に説明した場合と同様であるため説明は省略する。
以上、表示装置10の別の実施例について説明した。
また、上記表示装置10では、方向指定オブジェクトの内容を変更する場合に限定していたが、以下、実施例1として、レイアウト生成表示処理の方向対象オブジェクトの内容を変更する場合について説明する。
(実施例1)
図31から図33を参照してレイアウト生成表示処理の方向対象オブジェクトの内容を変更する場合について説明する。図31は、方向指定オブジェクトレイアウト生成処理の別のフローチャートを示す。
図10に示す方向指定オブジェクトレイアウト生成処理との違いは、S3−6−7’であり、方向指定オブジェクトと方向対象オブジェクトのレイアウト位置を比較した結果、単方向とするためにS3−6−7では、方向指定オブジェクトのレイアウトデータを変更し、S3−6−7’では、方向対象オブジェクトのレイアウトデータを変更している。
図32は、図11のレイアウト位置の比較判定後に方向対象オブジェクトの内容を変更した表示の一例を示す。S3−6−6において、方向対象オブジェクト203と方向指定オブジェクト204のレイアウト位置が単方向でないと判断されることから、方向対象オブジェクト203のレイアウトデータを変更する。例えば、方向対象オブジェクト203と方向指定オブジェクト204が単方向となるように方向対象オブジェクト203を表示領域から方向指定オブジェクト204の方向オブジェクトを含む任意の領域を除いた領域に収まるように縮小する。図32では、方向対象オブジェクト203は、表示領域102の幅から方向指定オブジェクト204の方向オブジェクト「左図」の領域の幅を除いた領域へ画像を縮小している。このようにして、方向対象オブジェクト203と方向指定オブジェクト204のレイアウト位置を単方向とすることで、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
同様に、図33は、実施例5における図26のレイアウト位置の比較判定後に方向対象オブジェクトの内容を変更した表示の一例を示す。S3−8−7において、方向対象オブジェクト222、および223と方向指定オブジェクト221のレイアウト位置が単方向でないと判断されることから、方向対象オブジェクト222、および223のレイアウトデータを変更する。例えば、方向対象オブジェクト222、および223と方向指定オブジェクト221が単方向となるように方向対象オブジェクト222、および223を表示領域から方向指定オブジェクト221の方向オブジェクトを含む任意の領域を除いた領域に収まるように縮小する。図33では、方向対象オブジェクト222、および223は、表示領域107の幅から方向指定オブジェクト221の方向オブジェクト「右写真」を含む領域の幅を除いた領域、すなわち、3行目の方向指定オブジェクト221を除いた残りの領域へ画像を縮小している。このようにして、方向対象オブジェクト222、および223と方向指定オブジェクト221のレイアウト位置を単方向とすることで、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
また、上記表示装置10では、方向指定オブジェクト、または方向対象オブジェクトの内容を変更する場合に限定していたが、以下、参考例6として、レイアウト生成表示処理の方向指定オブジェクトのレイアウト位置のみを変更する場合について説明する。
(参考例6)
図34から図36を参照してレイアウト生成表示処理の方向指定オブジェクトのレイアウト位置のみを変更する場合について説明する。
図34は、表示装置10に表示する電子データ150を示す。電子データ150は、表示部11の表示領域に表示するデータと共に方向対象オブジェクトとの方向リンク情報を保持している。具体的には、電子データ150のタグ「img」のid属性とタグ「di
rection」のid属性に「ID01」の同じ値を指定し、方向指定オブジェクトであるタグ「direction」の子供要素に対し、方向対象オブジェクトがタグ「img」で指定される画像であることを示している。また、タグ「direction」のmove属性の値「down」の指定によって、方向対象オブジェクトが方向指定オブジェクトの下側へ位置することを指定している。
図35は、電子データ150の方向リンク情報を無視した場合の表示を示す図である。画像の右側に回りこんだ文字列には「下図」と示され、ユーザには理解し難い表示となっている。
図36は、電子データ150の方向リンク情報を基にレイアウトした表示を示す図である。方向指定オブジェクトレイアウト生成処理のS3−6−6において、方向指定オブジェクトであるタグ「direction」の子供要素と、方向対象オブジェクトであるタグ「img」の画像は、タグ「direction」のmove属性の値「down」で指定された単方向に存在しないとしてS3−6−7の処理へ進む。S3−6−7において、方向指定オブジェクトであるタグ「direction」の子供要素は、move属性の値「down」に従い、方向対象オブジェクトであるタグ「img」の画像の上側へ単方向となるようにレイアウト位置を変更する。これにより、図36に示すように、方向指定オブジェクトであるタグ「direction」の子供要素に対して、方向対象オブジェクトである画像が下側にレイアウトされる。このようにして、方向指定オブジェクトのレイアウト位置のみを変更することで、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
また、上記表示装置10では、レイアウト生成表示処理の表示指定オブジェクトのレイアウト位置のみを変更する場合に限定していたが、以下、参考例7として、レイアウト生成表示処理の表示対象オブジェクトのレイアウト位置のみを変更する場合について説明する。
(参考例7)
図37から図39を参照してレイアウト生成表示処理の方向対象オブジェクトのレイアウト位置のみを変更する場合について説明する。
図37は、表示装置10に表示する電子データ160を示す。電子データ160は、表示部11の表示領域に表示するデータと共に方向対象オブジェクトとの方向リンク情報を保持している。具体的には、電子データ160のタグ「direction」のid属性と2つのタグ「img」のid属性に「ID02」の同じ値を指定し、方向指定オブジェクトであるタグ「direction」の子供要素に対し、方向対象オブジェクトがタグ「img」で指定される2つの画像であることを示している。また、タグ「direction」のmove属性の値「up」の指定によって、方向対象オブジェクトが方向指定オブジェクトの上側へ位置することを指定している。
図38は、電子データ160の方向リンク情報を無視した場合の表示を示す図である。文字列に続いて画像が2つ表示されているが、文字列の「上写真」の方向に画像は存在せず、ユーザには理解し難い表示となっている。
図39は、電子データ160の方向リンク情報を基にレイアウトした表示を示す図である。方向対象オブジェクトレイアウト生成処理のS3−8−7において、方向指定オブジェクトであるタグ「direction」の子供要素と、方向対象オブジェクトであるタグ「img」の画像は、タグ「direction」のmove属性の値「up」で指定された単方向に存在しないとしてS3−8−8の処理へ進む。S3−8−8において、方向対象オブジェクトであるタグ「img」の画像は、move属性の値「up」に従い、方向指定オブジェクトであるタグ「direction」の子供要素の上側へ単方向となるようにレイアウト位置を変更する。方向対象オブジェクトである2つのタグ「img」の画像に対してS3−8−8の処理が繰り返され、それぞれ方向指定オブジェクトの上側へレイアウト位置を変更される。これにより、図39に示すように、方向指定オブジェクトであるタグ「direction」の子供要素に対して、方向対象オブジェクトである画像が上側にレイアウトされる。このようにして、方向対象オブジェクトのレイアウト位置のみを変更することで、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
また、電子データがタグによるレイアウト情報を持っている場合に限定していたが、以下、参考例8としてレイアウト情報を持っていない電子データの場合について説明する。
(参考例8)
図40−図44を参照して電子データにレイアウト情報を持っていない場合について説明する。図40は、表示装置10に表示する電子データ170を示す。図41は、電子データ170の論理レイアウトの一例を示す。図42は、表示領域108に電子データ170を横書きでレイアウトを生成した従来の表示を示す。図43は、表示領域108に電子データ170を縦書きでレイアウトを生成した従来の表示を示す。図44は、表示領域108に電子データ170を縦書きでレイアウトを生成した本発明の表示を示す。
はじめに従来の表示について説明する。図40に示す電子データ170は、タグなどによるレイアウト情報を含まないテキストデータである。テキストデータは、文字コードと改行コードで構成される。図中の「↓」は改行コードを表す。従来の表示として、電子データ170を横書きでレイアウトを生成して表示すると図42に示す表示となる。表示領域108に文字コードに対応する文字が表示され、改行コードに対応する位置では改行となる。また、同様にして、電子データ170を縦書きでレイアウトを生成して表示すると図43に示す表示となる。図42の文字列109「上記」が文字列の位置より上方向にある内容を正しく示しているのに対し、図43の文字列110「上記」が示す内容は文字列の位置より上方向にある内容ではなく右方向にある内容を示していることから文字列110「上記」は適切な方向を示していない。
次に、電子データ170の論理レイアウトと方向リンク情報の生成について説明する。図41は電子データ170の論理レイアウトである。電子データ170の文字列を句点、句読点、改行コードなどを区切りとして、区切られた文字列をひとつのオブジェクトと見なしている。オブジェクト241からオブジェクト248はひとつの枝で構成されている。方向オブジェクトリストよりオブジェクト245の「上記」が方向オブジェクトと検索され、オブジェクト245は方向指定オブジェクトとして検索される。方向指定オブジェクト245の方向オブジェクト「上記」が示す上方向に存在するオブジェクトは、論理レイアウトの上位オブジェクトであるオブジェクト241、242、243、244が方向対象オブジェクトとして検索される。したがって、方向リンク情報は、方向指定オブジェクト245と方向対象オブジェクト241、242、243、244として生成される。
レイアウト生成表示処理は、はじめに、表示領域108の横書き表示が縦書き表示へ変更になると表示領域108の表示領域108の表示領域を取得し、表示領域108の表示対象となるオブジェクトデータを取得する。ここでは、電子データ170のオブジェクトデータがすべて表示できることから、オブジェクトデータのすべてを取得する。
次に、オブジェクトデータ241から順に、先に生成されている図41の論理レイアウトと方向リンク情報を基にレイアウトデータを生成する。
オブジェクトデータ241は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトである(S3−7において「YES」)ことから方向対象オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向対象オブジェクト241の方向指定オブジェクトであるオブジェクト245の情報が取得される。論理レイアウトにおいて、方向指定オブジェクト245は方向対象オブジェクト241の先行オブジェクトでなく、また、上位オブジェクトでもない(S3−8−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
続く、オブジェクトデータ242、243、244もオブジェクトデータ241と同様、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトであり(S3−7において「YES」)、また、論理レイアウトにおいて、方向指定オブジェクト245は方向対象オブジェクト242、243、244の先行オブジェクトでなく、また上位オブジェクトでもない(S3−8−3において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−8−13におけるレイアウトデータ生成)。
次にオブジェクトデータ245のレイアウトデータを生成する。オブジェクトデータ245は、方向リンク情報より方向指定オブジェクトである(S3−5において「YES」)ことから方向指定オブジェクトレイアウト生成処理においてレイアウトデータを生成する。方向リンク情報より、方向指定オブジェクトの方向対象オブジェクトであるオブジェクト241、242、243、244の情報が取得される。論理レイアウトにおいて、方向対象オブジェクト241、242、243、244は方向指定オブジェクトの上位オブジェクトである(S3−6−3において「YES」)ことから現在のレイアウト位置にレイアウトデータを仮に生成する(S3−6−4におけるレイアウトデータ生成)。ここで方向指定オブジェクト245と方向対象オブジェクト241、242、243、244のレイアウト位置を比較する。レイアウト位置の比較については繰り返しとなるため省略するが、方向対象オブジェクト241、242、243、244は方向指定オブジェクト245の右方向のみに存在すると判定する(S3−6−6において「NO」)。比較結果に基づき、方向オブジェクトリストより対応する右方向の方向オブジェクト「右記」を取得し、方向指定オブジェクト245の方向オブジェクト「上記」を変換する。ここでは、方向指定オブジェクト245が文字列であるので方向オブジェクト「上記」を「右記」に置換する。最後に、方向オブジェクト「右記」に変換した方向指定オブジェクト245のレイアウトデータを生成する(S3−6−10におけるレイアウトデータ生成)。
残りのオブジェクトデータ246、247、248は、方向リンク情報より方向指定オブジェクトではなく(S3−5において「NO」)、方向対象オブジェクトでもない(S3−7において「NO」)ことから現在のレイアウト位置にレイアウトデータを生成する(S3−9におけるレイアウトデータ生成)。
以上のようにして、オブジェクトデータ241から248のレイアウトデータを順に生成して表示領域108に表示する。図44は、レイアウト作成表示処理によってレイアウトを生成した表示を示す。図43の文字列110「上記」が図44の文字列111「右記」へ変更となっている。これにより図43では「上記」の上方向に内容が存在せず、ユーザにとって分り難くなっていた表示が、図44では「右記」の右方向に内容が存在して、ユーザにとって分かり易い表示となっている。
このように本実施の形態に係る表示装置10では、レイアウト情報を持っていない電子データの場合にも表示領域の変更に応じて、上記したレイアウト作成表示処理によって、位置・方向を示すオブジェクトが適切な方向を示して表示することを可能とし、ユーザの表示に対する理解を容易とさせる。
以上、表示装置10の別の実施例について説明した。
以上のように、本発明によれば、表示領域の変更に応じて位置・方向を示すオブジェクトの内容が適切に変更され、ユーザの表示に対する理解を容易とさせる効果が得られる。
今回開示された実施例はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
本発明に係る表示装置は、上記検索手段と、上記生成手段と、上記比較手段と、上記変更手段とを備える。このため、表示領域の大きさに応じて動的にレイアウトを生成する表示装置に広く適用できる。
本実施の形態に係る表示装置の要部構成を示すブロック図である。
本実施の形態に係る表示装置の概略構成を示す図である。
本実施の形態に係る表示装置の表示処理を示すフローチャートである。
本実施の形態に係る表示装置における方向リンク情報生成処理を示すフローチャートである。
図45に示す電子データのオブジェクトデータの一例を示す図である。
図45に示す電子データの論理レイアウトの一例を示す図である。
方向オブジェクトリストのデータ構造の一例を示す図である。
方向リンク情報のデータ構造の一例を示す図である。
本実施の形態に係る表示装置におけるレイアウト作成表示処理を示すフローチャートである。
本実施の形態に係る表示装置における方向指定オブジェクトレイアウト生成処理を示すフローチャートである。
図47(a)に示す電子データの表示例におけるレイアウト位置を示す図である。
本実施の形態に係る表示装置における方向対象オブジェクトレイアウト生成処理を示すフローチャートである。
本実施の形態に係る表示装置におけるレイアウト作成表示処理の表示例を示す図である。同図(a)は、図46の表示領域の主走査方向の幅を縮小した表示例を示し、同図(b)は、図45に示す電子データの縦書きの表示例を示し、同図(c)は、同図(b)の表示領域の主走査方向の幅を縮小した表示例を示す図である。
図47(b)に示す電子データの表示例におけるレイアウト位置を示す図である。
参考例3における電子データの一例を示す図である。
図15に示す電子データの横書きの表示例を示す図である。
図15に示す電子データの論理レイアウトの一例を示す図である。
図16の表示領域の主走査方向の幅を縮小した表示例を示す図である。
図18に示す電子データの表示例におけるレイアウト位置を示す図である。
方向指定オブジェクトレイアウト生成処理のレイアウトデータ生成におけるレイアウト位置を示す図である。
本実施の形態に係る表示装置における方向指定オブジェクトレイアウト生成処理の表示例を示す図である。
参考例4における電子データの一例を示す図である。
図22に示す電子データの横書きの表示例を示す図である。
図22に示す電子データの論理レイアウトの一例を示す図である。
図23の表示領域の主走査方向の幅を縮小した表示例を示す図である。
図25に示す電子データの表示例におけるレイアウト位置を示す図である。
方向対象オブジェクトレイアウト生成処理のレイアウトデータ生成におけるレイアウト位置を示す図である。
本実施の形態に係る表示装置における方向対象オブジェクトレイアウト生成処理の表示例を示す図である。
方向オブジェクトリストを含む電子データの一例を示す図である。
図29に示す電子データの論理レイアウトの一例を示す図である。
本実施の形態に係る表示装置における別の方向指定オブジェクトレイアウト生成処理を示すフローチャートである。
実施例1における図45の電子データのレイアウト作成表示処理の表示例を示す図である。
実施例1における図22の電子データのレイアウト作成表示処理の表示例を示す図である。
参考例6における電子データの一例を示す図である。
図34に示す電子データの方向リンク情報を無視した表示を示す図である。
図34に示す電子データのレイアウト作成表示処理の表示例を示す図である。
参考例7における電子データの一例を示す図である。
図37に示す電子データの方向リンク情報を無視した表示を示す図である。
図37に示す電子データのレイアウト作成表示処理の表示例を示す図である。
参考例8における電子データの一例を示す図である。
図40に示す電子データの論理レイアウトの一例を示す図である。
図40に示す電子データの横書きの表示例を示す図である。
図40に示す電子データの縦書きの表示例を示す図である。
本実施の形態に係る表示装置における方向指定オブジェクトレイアウト生成処理の表示例を示す図である。
表示装置において表示可能な電子データの一例を示す図である。
図45に示す電子データの表示例を示す図である。
図47(a)は、図46の表示領域の主走査方向の幅を縮小した表示例を示し、図47(b)は、図45に示す電子データの縦書きの表示例を示し、図47(c)は、図47(b)の表示領域の主走査方向の幅を縮小した表示例を示す図である。
符号の説明
10 表示装置
11 表示部
12 表示制御部
13 操作部
14 記憶部
15 インタフェース部
20 ネットワーク
21 端末記憶部
22 端末装置
101 表示領域