しかしながら、上記従来の表示方法では、例えば、図19のようにルビ付き文字全体を次行に追い出す場合でも、次行の行幅よりもルビ文字列全体の幅が大きい場合は、1行に入りきらない。そのため、そのままでは図21のように正しく表示できなくなってしまう。このことは、表示領域の行方向の幅が狭い場合、例えば、携帯端末等の表示領域が小さいものには、起こりやすい。
また、行幅は表示領域の幅とは限らず、図22のように画像148が行の一部に表示されることにより、狭まっている場合も存在する。この場合、画像の横幅を行幅から引いたサイズ内に、ルビ付き文字全体の幅が収まっていないと、行末にはみ出てしまうことになる。
また、特許文献1に記載の方法を表示装置に採用する場合、分割位置を読者に指定させるのは、読者に手間がかかり読書を妨げることになる。そのため、現実的ではない。また、モノルビの形式で電子文書や電子書籍を作成する方法も、文書作成時の負担が大きいことや、データサイズが増えるなどのデメリットが存在している。
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、文字を配列させる行方向の表示幅が狭い文字表示領域でも容易な処理でルビ文字列を表示することのできる表示制御装置、携帯端末装置、表示制御方法、表示制御プログラム、およびコンピュータ読み取り可能な記録媒体を実現することにある。
本発明に係る表示制御装置は、上記課題を解決するために、文字表示領域において、ベース文を複数のベース文表示行に配列させ、ベース文に含まれる第1文字群に関連付けられた第2文字群を、当該第1文字群を表示すべきベース文表示行の前の行または後の行との間の関連文表示領域に配列させて、上記第1文字群と上記第2文字群とを並列して表示させる並列表示形態をとる表示制御装置において、上記文字表示領域での第1文字群が表示されるベース文表示行の長さを表示幅として取得する表示幅取得手段と、上記第1文字群と上記第2文字群とのうち行方向に表示される表示長が長い方の文字群の表示長と、あるいは、第2文字群の行方向の表示長と、上記表示幅とを比較する比較手段と、上記比較手段による比較の結果、上記表示幅が比較した文字群の表示長より小さい場合、表示形態を上記並列表示形態とは変更させる表示決定手段と、を備えたことを特徴としている。
また、本発明に係る表示制御方法は、上記課題を解決するために、文字表示領域において、ベース文を複数のベース文表示行に配列させ、ベース文に含まれる第1文字群に関連付けられた第2文字群を、当該第1文字群を表示すべきベース文表示行の前の行または後の行との間の関連文表示領域に配列させて、上記第1文字群と上記第2文字群とを並列して表示させる並列表示形態をとる表示制御方法において、上記文字表示領域における第1文字群が表示されるベース文表示行の長さを表示幅として取得する表示幅取得ステップと、上記第1文字群と上記第2文字群とのうち行方向の長さが長い方の文字群の長さと、あるいは、第2文字群の行方向の長さと、上記表示幅とを比較する比較ステップと、上記比較ステップでの比較の結果、上記表示幅が比較した文字群の表示長より小さい場合、表示形態を上記並列表示形態とは変更させる表示決定ステップと、を含むことを特徴としている。
上記の構成および上記方法によれば、文字表示領域での第1文字群が表示されるベース文表示行の長さが表示幅として取得され、この表示幅と、第1文字群と第2文字群とのうち行方向に表示される表示長が長い方の文字群の表示長とを比較する。あるいは、表示幅と、第2文字群の行方向の表示長とを比較する。そして、比較の結果、表示幅が比較した文字群の表示長より小さい場合、表示形態を並列表示形態とは変更させることができる。
ここでベース文とは、電子文書に記載されている内容のうち、ルビ文字列やアンダーラインなどの文字修飾や、画像・BGMなどの非テキスト要素を除いたテキスト文字列を意味する。また、文書が横書きに表示される場合には、文字を配列させる方向である行方向は横方向を指す。縦書きで表示される場合には、行方向とは縦方向を指し示す。また、上記並列表示形態とは、文字表示領域において、ベース文を複数のベース文表示行に配列させ、ベース文に含まれる第1文字群に関連付けられた第2文字群を、当該第1文字群を表示すべきベース文表示行の前の行または後の行との間の関連文表示領域に配列させて、上記第1文字群と上記第2文字群とを並列して表示する形態である。図17を用いて具体的に説明すると、表示画面の文字表示領域17において、丸括弧“(”、“)”で囲まれた領域が関連文表示領域であり、大括弧“[”、“]”で囲まれた領域がベース文表示行である。この、文字表示領域17における丸括弧“(”、“)”および大括弧“[”、“]”は、領域を説明のための記号であり、実際の表示画面にこれらの記号が表示されるわけではない。なお、ベース文表示行に関連文表示領域が少なくとも一部重るようになっていても、第1文字群および第2文字群を表示できるようになっていれば、かまわない。また、表示画面において、文字を表示可能な領域を文字表示領域とする。
具体的に、第1文字群がルビを付される文字(ルビベース文字列)であり、第2文字群がルビ(ルビ文字列)である場合を用いて説明すると、横書きに表示されるものでは、ルビベース文字列(第1文字群)の上あるいは下にルビ文字列(第2文字群)が表示されるものとする。また、文書が縦書きに表示するようになっている場合は、ルビベース文字の左右どちらにルビ文字列が表示されるようになる表示形態である。
上記構成および上記方法によると、第1文字群あるいは第2文字群が、表示幅に収まらない場合は、並列表示形態とは変更させ、ユーザに第2文字群であるとわかる別の表示形態で表示させるようにすることができる。よって、文字を配列させる行方向の表示幅が狭い文字表示領域でも、容易な処理で第2文字群を表示させることができる。また、例えば、電子書籍等の電子文書の作成者の手間をかけず、少ない処理で第2文字群を表示させることができる。
なお、第1文字群と第2文字群とは、互いに関連付けられた文字であればよく、例えば、第1文字群がルビを付される文字(ルビベース文字列)であり、第2文字群がルビ(ルビ文字列)であってもよいが、これに、限定されることはない。
本発明に係る表示制御装置では、上記構成に加え、第2文字群を、第1文字群に行方向に隣接させて、第2文字群であることを示して、上記ベース文表示行に表示してもよい。
上記構成によると、第2文字群は第1文字群に行方向に隣接して、第2文字群であることを示して、ベース文表示行表示される。よって、文字表示領域が狭い行幅の場合でも確実に第2文字群であることをわからせて表示させることができる。
本発明に係る表示制御装置では、上記構成に加え、上記表示決定手段は、第2文字群の表示色を第1文字群の表示色とは変えて表示する、あるいは、第2文字群の前後に括弧を表示してもよい。
上記構成によると、第2文字群の表示色は第1文字群の表示色とは変えて表示される。あるいは、第2文字群の前後に括弧が表示される。そのため、第2文字群であることを容易にユーザにわかるように表示させることができる。
本発明に係る表示制御装置は、上記構成に加え、ユーザ指示を受け付ける受付手段を備え、上記表示決定手段は、上記第1文字群のみを第1文字群であることを示して上記に表示し、かつ、受け付けたユーザ指示により当該第1文字群が選択されると、上記第2文字群を、上記文字表示領域に表示される枠内に表示してもよい。
上記構成によると、第1文字群であることをユーザに示して表示させることができる。また、第2文字群は、第1文字群をユーザが選択すると表示されるので、ユーザの必要があるときのみ第2文字群を表示させることができる。また、第2文字群は、文字表示領域に表示される枠内に表示されるので、第2文字群であるということを、わかりやすく表示させることができる。
本発明に係る表示制御装置では、上記構成に加え、上記表示決定手段は、上記枠を第1文字群に少なくとも一部重畳させて表示してもよい。
上記構成によると、第2文字群を囲む枠が第1文字群の少なくとも一部重畳して表示される。第1文字群と第2文字群とが離れた位置にあると、それらを照らして読むのが困難な場合もあるが、上記構成によると、第1文字群に関連付けられた第2文字群を、第1文字群の近くで読みやすく表示させることができる。
本発明に係る表示制御装置は、上記構成に加え、ユーザによる第2文字群の表示あるいは非表示の選択を受け付ける表示選択受付手段を備えていてもよい。
上記構成によると、ユーザが第2文字群を表示するか非表示にするかを選択することができる。そのため、第2文字群が目障りで不要であるといった場合には、非表示とすることができる。また、第2文字群を非表示にすることで、1画面(1回に表示させることのできる領域)によりたくさんのベース文からなる文章を表示できるようになる。この結果、ユーザのページめくりの回数を減らすことができる。また、例えば、第2文字群が漢字のルビであり、第1文字群が漢字である場合、漢字を覚えるときは第2文字群であるルビを表示し、覚えた漢字をテストするときは非表示にする、といったように学習に利用することができる。
本発明に係る携帯端末装置は、上記課題を解決するために、上記何れかの表示制御装置を備えたことを特徴としている。
携帯端末装置は、携帯できることから表示領域も小さく作成されていることが多い。そのため、文字表示領域における文字を配列させる行方向の表示幅が狭い場合が多い。しかし、このような場合でも、上記何れかの表示制御装置を備えているため、確実に第2文字群を、簡単な処理で表示させることができる。ここで、携帯端末装置としては、例えば、携帯電話機、PHS(登録商標)、PDA等が挙げられるがこれらに限定はされない。
また、本発明に係る表示制御装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記表示制御装置における上記各手段として動作させることにより上記表示制御装置をコンピュータにて実現させる表示制御装置制御プログラム、及びその表示制御プログラムを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
これらの構成によれば、表示制御プログラムを、コンピュータに読み取り実行させることによって、上記表示制御装置と同一の作用効果を実現することができる。
本発明に係る表示制御装置は、以上のように、上記文字表示領域での第1文字群が表示されるベース文表示行の長さを表示幅として取得する表示幅取得手段と、上記第1文字群と上記第2文字群とのうち行方向に表示される表示長が長い方の文字群の表示長と、あるいは、第2文字群の行方向の表示長と、上記表示幅とを比較する比較手段と、上記比較手段による比較の結果、上記表示幅が比較した文字群の表示長より小さい場合、表示形態を上記並列形態とは変更させる表示決定手段と、を備えている。
上記構成によると、第1文字群あるいは第2文字群が、表示幅に収まらない場合は、並列表示形態とは変更させ、ユーザに第2文字群であるとわかる別の表示形態で表示させるようにすることができる。よって、文字を配列させる行方向の表示幅が狭い文字表示領域でも、容易な処理で第2文字群を表示させることができる。また、例えば、電子書籍等の電子文書の作成者の手間をかけず、少ない処理で第2文字群を表示させることができる。
本発明の一実施形態について図1〜図14に基づいて説明すると以下の通りである。本実施形態では、本発明の表示制御装置としての表示制御部(表示制御装置)を備えた表示装置10について説明する。本実施の形態の表示装置10は、文書を横書きに表示し、ルビが付けられる側のルビベース文字列(第1文字群)の上にルビ文字列(第2文字群)が表示されるものとする。つまり、文字表示領域において、ルビの付いていない文字からなるベース文(電子文書に記載されている内容のうち、ルビ文字列やアンダーラインなどの文字修飾や、画像・BGMなどの非テキスト要素を除いたテキスト文字列等)を複数のベース文表示行に配列させ、ベース文に含まれるルビベース文字に関連付けられたルビ文字列を、ルビベース文字を表示すべきベース文表示行の前の行にある関連文表示領域に配列させて表示している。つまり、ルビベース文字列の上にルビ文字列が表示され、ルビベース文字列の上にルビ文字列とは並列して表示させる並列表示形態を取る。ここで、ベース文表示行および関連文表示領域について、図17を用いて具体的に説明すると、表示画面の文字表示領域17において、丸括弧“(”、“)”で囲まれた領域が関連文表示領域でありルビ文字列が表示される。そして、大括弧“[”、“]”で囲まれた領域がベース文表示行であり、ルビベース文字列を含むベース文が表示される。この、文字表示領域17における丸括弧“(”、“)”および大括弧“[”、“]”は、領域を説明のための記号であり、実際の表示画面にこれらの記号が表示されるわけではない。なお、ベース文表示行に関連文表示領域が少なくとも一部重るようになっていても、第1文字群および第2文字群を表示できるようになっていれば、かまわない。また、表示画面において、文字を表示可能な領域を文字表示領域とする。
並列表示形態は、上記したものに限定されず、ルビベース文字がルビベース文字列の下に表示されるようになっていてもよい。また、文書が縦書きに表示するようになっていてもよく、その場合は、ルビベース文字の左右どちらにルビ文字列が表示されるようになっている。また、本実施形態では、文書は横書きに表示されるので、文字を配列させる方向である行方向は横方向を指す。なお、縦書きで表示される場合には、行方向とは縦方向を指し示す。
また、本実施形態では、第1文字群としてルビベース文字列と、第2文字群としてルビ文字列とについて説明するが、第1文字群と第2文字群とが関連付けられていればよく、本発明を利用できるのは、ルビ付き文字に限定されない。
また、本実施形態では、電子文書として、電子書籍を表示させるものとするが、もちろん、電子文書は、電子書籍に限定されず、例えば電子メール等であってもかまわない。
図1に示すように、本実施形態の表示装置10は、表示制御部1、制御部2、表示部3、ユーザ指示受付部(受け付け手段、表示選択受け付け手段)4、送受信部5、データ格納部6、読み出し部7とを備える。
表示制御部1は、表示部3における表示の制御に関する処理を統括的に行う。また、表示制御部1は、表示幅取得部(表示幅取得手段)11、比較部(比較手段)12、表示決定部(表示決定手段)13として機能する。
表示幅取得部11は、文字表示領域でのルビベース文字列が表示される行(ベース文表示行)の長さを表示幅として取得する。表示幅取得部11は、図2に示すように、行内に表示が確定された文字の、次の文字の表示開始位置から文字表示領域の終わりまでの幅152を表示幅として取得する。また、行内に文字が無い場合には、文字表示領域の幅153を表示幅として取得する。
比較部12は、ルビベース文字列とルビ文字列とのうち行方向に表示される表示長が長い方の文字列の表示長と、表示幅とを比較する。本実施形態では、比較部12は、ルビベース文字列とルビ文字列とのうち行方向に表示される表示長が長い方の文字列の表示長と、表示幅とを比較するが、ルビ文字列の行方向の表示長と、表示幅を比較するようになっていてもよい。
表示決定部13は、比較部12による比較の結果、表示幅が比較した文字列の表示長より小さい場合、表示形態を並列形態とは変更させる。本実施形態では、ルビ文字列は、ルビベース文字に、行方向に隣接させて表示させる。具体的には、図5や図6に示すようにルビベース文字の後ろに表示させるような表示形態とする。
上記のように、本実施形態では、ルビ文字列は、ルビベース文字に、行方向に隣接させて、つまり、図5や図6に示すようにルビベース文字の後ろに表示させるような表示形態とするが、表示形態はこれに限定されることはない。例えば、図7に示すように、ルビベース文字列160のみを、ルビベース文字列であることがわかるように四角で囲み表示しておき、ユーザがこの四角で囲まれたルビベース文字列160を、キーなどで選択し指示すると、図8に示すように、ルビ文字列161が表示されるようになっているような、表示形態であってもよい。また、図8に示すような表示形態において、ルビベース文字列160の部分を、ユーザにルビが付いていることがあることがわかるように、ルビベース文字列を他の文字と異なる色で表示するような表示形態であってもよい。この場合、四角では囲んでもよいし、あるいは囲ったままでもよい。また、図5や図6のように、ルビベース文字列の後ろにルビ文字列を表示する場合には、ルビ文字をルビベース文字とは表示色を変えて表示するような表示形態であってもよい。この場合、ルビ文字を囲む括弧があっても無くてもよい。
本実施形態の表示制御部1は、このような構成であるので、ルビ文字列が、表示幅に収まらない場合は、並列表示形態を変更させ、ユーザにルビ文字列であることがわかる別の表示形態で表示させるようになっている。よって、文字を配列させる行方向の表示幅が狭い文字表示領域でも、容易な処理で第2文字列を表示させることができる。また、例えば、電子書籍等の電子文書の作成者の手間をかけず、少ない処理で第2文字群を表示させることができる。
なお、表示制御部1は、上記の処理以外にも通常の表示に関する処理を行うものとする。例えば、通常文字の表示位置等のレイアウトを計算するテキスト処理や、特別な指定を行うタグ毎にタグの処理を行う。
ここで、ルビ文字列の表示について、表示(ON)と非表示(OFF)とを切り替えられるように表示装置10が構成されていてもよい。この場合、図9のように、表示部3に選択肢表示162のようなインタフェースが表示されてもよく、選択肢表示162を通じて、ユーザが非表示に設定すると、この設定をユーザ受け付け部4が受け付け、図10のように表示させる。つまり、図16のルビ付き文字141のように通常のルビ表示におけるルビ文字列(「なつめそうせき」の部分)を表示しないようにするだけでなく、カッコ付きルビ文字列の表示もなくなるように表示される。
制御部2は、表示装置10における各種構成の動作を統括的に制御する。
表示部3は、例えば、液晶パネルからなる表示画面を含み、表示制御部1の制御により、電子文書データを表示する。
ユーザ指示受付部4は、ユーザからの指示を受け付け、制御部2に送る。ユーザ指示受付部4は、例えば、ユーザからの、ベース文字列の選択や、ルビ文字列の表示あるいは非表示(ON/OFF)の指示を受け付ける。また、例えば、ページめくり等の指示を受け付ける。
送受信部5は、外部との間でデータの送受信を行う、データ送受信インタフェースである。本実施形態では、送受信部5は、ネットワーク21を介して電子文書を配信するサーバ装置20から電子文書を受信する(ダウンロードする)。もちろん、例えば端末装置から、メール等の電子文書を受信してもよい。ネットワーク21は、例えば公衆電話回線、携帯電話回線、PHS回線、インターネットなどで構成されており、サーバ装置20と表示装置10との間の情報通信を実現するものである。ただし、電子文書を受信するのは、ネットワーク21を介して行うのに限定されず、例えば、ケーブル(シリアル・USB(Universal Serial Bus)など)等の有線で電子文書を受信してもかまわない。なお、表示装置10は送受信部5を備えておらず、例えば、予めデータ格納部6に格納された電子文書を表示部3に表示するようになっていてもよい。
データ格納部6は、送受信部5が受信した電子文書を格納する記憶手段である。
読み出し部7は、表示部3に表示する電子文書をデータ格納部6から読み出し、表示制御部1に送るものである。
ここで、本実施形態の表示装置10は、携帯端末装置で実現してもよい。表示装置10を実現する携帯端末装置として、図11に示す携帯電話機15を用いて説明する。携帯電話機15は、表示装置10の構成に加え、ユーザ指示を入力する操作部9を備えている。操作部9は、ユーザからの操作を受け付けるためのインタフェースである。操作部9では、操作キー/ボタン等がユーザ操作に供されるように設けられている。ユーザは、この操作部9を用いることにより、携帯電話機15に対して各種指示を行うことができるようになっている。操作部9は、ユーザが表示させたい電子文書の選択や、ページめくりの指示などに用いられる。なお、操作部9を表示部3における表示画面と兼用してもよい。つまり、例えば、操作部9と表示部3の表示画面とが一体型のタッチパネルが設けられていてもよい。この場合、表示画面にユーザによる入力が可能な項目を表示し、ユーザが、所望する項目が表示されている表示領域に触れることにより、携帯電話機15に対して指示を与えるようになる。操作部9で入力されたユーザ指示をユーザ指示受付部4が受け付け、制御部2に送り、制御が行なわれる。
また、表示部3に表示される電子文書は、サーバ装置20から携帯電話機の無線電波にのせられ、表示装置10に送信され、携帯電話機15の本体内に用意されているデータ格納部6に保存される。なお、図11に示すように、携帯電話機15は、記録媒体を差しこむ挿入口61を用意し、そこに電子文書が記録された記録媒体62を差しこむ構成にし、記録媒体62にあらかじめ記録された電子文書を読み込む構成にしてもよい。なお、本実施形態の表示装置10を実現する携帯端末装置は、PHS(Personal Handy-phone System)(登録商標)端末あるいはPDA(Personal Digital Assistant)などであってもかまわない。また、本実施形態の表示装置10は、携帯型である必要なく、例えば、パーソナルコンピュータで実現してもかまわない。
ネットワーク21は、例えば公衆電話回線、携帯電話回線、PHS回線、インターネットなどで構成されており、サーバ装置20と表示装置10との間の情報通信を実現するものである。
次に、表示装置10において、ユーザが表示部3に表示する電子文書を選んでから、ページをめくって電子文書を読み閉じるまでに、主に表示制御部1が行う表示処理全体のフローについて、図12を用いて説明する。
電源が入っていると、初めに、S100では、ユーザにより読みたい文書が選択され、その選択を受け付ける。次に、S101で、選択を受け付けた対象の文書を読み込む。そして、S102において、表示領域での文字の表示を開始する位置を決定する。S102では、S100で選択された文書を初めて表示するときは文書の先頭を、S100で選択された文書が以前表示したことのある場合には、前回最後に開いていた文字の位置に表示する位置を設定する。
次に、S103にて、現在の文字の表示位置から1画面分の(1回に表示部3に表示させることのできる)文字・画像のレイアウト位置を計算し、S104において、レイアウト結果に基づき表示を行う。その後、S105において、ユーザからの指示があるか否かを判定する。指示が無ければ(S105においてNO)、ユーザからの指示があるまで、指示待ちの状態になる。ユーザ指示があれば(S105においてYES)、S106に進み指示の種類を判定する。S106において、ページ移動の指示があれば、S107に進む。S107では、次に文字を表示する位置に表示位置を変更し、S103の処理に戻る。ユーザからの指示が終了を指示するものであった場合、必要に応じて現在の文字の表示位置をデータ格納部6などに保存し、表示処理を終了する。
次に、表示処理における上記したレイアウトの計算(S103)での処理のフローを、図13を用いて詳細に説明する。なお、本実施形態では、電子文書は、文字、図15のデータの一部140に示すようなルビタグ、図6の画像158のような画像を挿入するためのタグ、の3つの要素から構成される文書を使って説明する。もちろん、電子文書は、これら以外の別要素が含まれていてかまわない。その場合には、別要素に対しては、通常と同様な処理を行うが、本発明とは無関係なので、説明は省略する。
また、電子文書に含まれる画像(画像データ)は、<img src=”figure.jpg” align=”left”/>の形式で記録されるものとする。ここで、src属性には表示する画像ファイル名(“figure.jpg”)を指定する。align属性には画面のどの位置に表示するかを指定する。align=”left”とすると、図6のように画像は画面の左側に表示され、その横に<img>タグに続く文章が右側に表示される。なお、align=”right”と指定した場合、文字と画像の位置が左右逆になる。
レイアウト計算が開始されると、S201において読み出し部7がデータ格納部6に格納された電子文書を1文字読み込む。そして、S202において、表示制御部1は、S201で読み込んだ文字がタグ開始記号(“<”)であるか否かを判定する。タグ開始記号でなければ(S201においてNO)、通常の文字と判断して、S203にてその文字の表示位置を確定し、S218に進む。通常、S203での表示位置の確定では、前回表示した文字の右隣に表示するよう決定するが、行末よりも外に文字が配置される場合は、次行の先頭に文字位置を決定する。なお、通常の表示装置では、S203の処理で、禁則処理やワードラップなどの処理がされるが、本発明とは無関係なので説明を省略する。S218では、表示部3の表示画面一杯になっているか否か、つまり、文字表示領域に文字を表示できる領域が無くなっているか否かを判断する。文字表示領域に文字を表示できる領域が無くなっていれば(S218においてYES)、レイアウト処理を終了する。まだ文字を表示できる領域があれば(S218においてNO)、S201に戻り、次の文字の表示位置を決める。
一方、S202で読み込んだ文字がタグ開始記号であった場合(S202においてYES)、S204において、タグ1つ分のデータを読み込む。例えば、ルビタグ(<ruby>)であった場合、例えば図15に示すデータの一部140の内容をすべて読み込み、画像タグ(<img>)であった場合、<img>の終了位置”/>“までを読み込む。次にS205にて、タグの種類がルビタグか画像タグかを判定する。つまりS205ではタグに応じて処理を切り替える。画像タグ(<img>)であると判定した場合は、S206に進む。S206では、align属性の値を確認し、”left”が指定されていれば現在行における画面の左端の位置を表示位置とし、”right”が指定されていれば現在行における画面の右端の位置を表示位置とする。次にS207に移り、S207では、画像が表示されるすべての行の行幅を、通常行の行幅から画像の横幅を引いた差に設定する。また、align属性に”left”が指定されていた場合は、各行の文字表示の開始位置を、画像の横幅分ずらす。そして、以降に表示位置が決定される文字やルビの位置はこの行幅および行の開始位置をもとにレイアウトされる。そして、S218の処理に移る。
一方、S205においてルビタグ(<ruby>)と判断されると、S208において、図4に示すように、ルビ文字列の表示長150と、ルビベース文字列の表示長151を求め、大きい方をルビ付き文字全体の幅(ルビ付き文字全体の表示長)とする。そして、S209に移り、S209では、表示幅取得部11が現在行の残りの幅(表示幅)を取得し、現在行の残りの幅内に入りきるか否かを判断する。例えば、図2において「Webでは」まで表示位置が確定された後、ルビタグが現れた場合は、比較部12が、表示幅152とS208で取得したルビ付き文字全体の表示長の値を比較する。図3の画像154のように画像がある行の場合は、表示幅155とS208で求めたルビ付き文字全体の表示長とが比較される。現在行に入ると判断されれば(S209でYES)、S212に進む。S212では、図16のルビ付き文字141のようにルビベース文字列の上にルビ文字列を配置させたレイアウトを計算する。そして、S218の処理に移る。
一方、現在行に入らないと判断すると(S209でNO)、S210において、比較部12は、次の行に入るかどうかを判断する。具体的には、S208で求めたルビ付き文字全体の表示長と図2の表示幅153(画像がある行の場合は図3の表示幅156)の値とを比較することによって判断する。S208で求めた表示長の方が小さければ次行に入ると判断すると(S210でYES)、ステップS211で次行の先頭を次に表示可能な位置に変更する。そしてS212により、図16のルビ付き文字141のような形式でルビの各文字のレイアウトを配置する。そして、S218の処理に移る。
一方、次行にも入らないと判断すると(S210でNO)、S213にて、ルビベース文字列の後にルビ文字列をカッコでくくった文字列を連結した文字列を作成する。そしてS241において、S213にて作成した文字列の各文字を1文字ずつ読み込む。そして、S215で、読み込んだ文字の表示位置を確定していく。すべての文字の位置が決まるまで、S214〜217の処理を繰り返す。ただし、途中で文字表示領域に入りきらなくなる可能性があるため、S216で画面一杯になったか、つまり、文字表示領域に文字を表示できる領域が無くなっているか否かを判断する。画面一杯になったと判断すると(S216においてYES)、レイアウト計算を終了する。画面一杯になっていないと判断すると(S216においてNO)、S217に進む。S217では、S213にて作成した連結した文字列の表示位置を確定が終了したか否かを判定する。連結した文字列の表示位置を確定が終了したと判定したら(S217においてYES)、S201から繰り返す。連結した文字列の表示位置を確定が終了していないと判定したら(S217においてNO)、S214から繰り返す。
以上のように、主に表示制御部1による、レイアウトの計算の処理が行われる。なお、S214〜S217の処理に伴って、ルビ文字列の部分をユーザにルビであることがわからせるように、ルビ文字列を他の文字と異なる色で表示するような処理が行われてもよい。
また、S214で1文字ずつ読み込み、表示位置を確定する際に、例えば、図5を用いて説明すると、図5に示すように、「Webでは」の次の行から表示を開始するのではなく、図5では「Webでは」の行における「Webでは」の後位置から表示を開始するようになっていてもよい。
最後に、表示装置10の各ブロック、特に表示制御部1は、ハードウェアロジックによって構成してもよいし、次のように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、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
図14に、本発明の表示制御装置を備えた表示装置をプログラムで実現した場合のブロック図を示す。入力部201は、本表示装置200を操作するための入力手段である。ユーザは、入力部201を介して、ページめくりの指示や表示させたい電子文書に対する指示を行う。外部記憶装置202は、例えばFD、HDなどであり、プログラムや電子文書が蓄えられている。一方、プログラムや電子文書はネットワーク21上に存在するサーバ装置20に格納されていてもよい。例えば、携帯電話機のような小型機器の場合には、常にネットワーク上のサーバ装置20に記憶されたプログラムや電子文書をダウンロードするように構成してもよい。この場合、外部記憶装置202は不要となる。一方、外部記憶装置202やネットワーク上のサーバ装置20から電子文書を読み込む代わりに、入力部201の操作により電子文書を作成し、それを表示するように構成してもよい。この場合、外部記憶装置202、サーバ装置20は設けられていなくてもかまわない。また、これらのプログラムや電子文書は、プログラム用メモリ206とデータ用メモリ207とにロードされ、CPU205の制御のもとに実行され、表示制御部203の制御に従って、表示部204に表示される。
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。