(57)【特許請求の範囲】
【請求項１】
第１の文字列を配置する第１文字列配置手段と、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置手段とを備えている文書処理装置において、
第２文字列配置手段は、第２の文字列の配置方向の１行に含まれる総文字数が所定の文字数より多い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させることを特徴とする文書処理装置。
【請求項２】
第１の文字列を配置する第１文字列配置手段と、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置手段とを備えている文書処理装置において、
第２文字列配置手段は、第２の文字列の配置方向の１行に含まれる文字の表示領域が所定の大きさよりも大きい場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させることを特徴とする文書処理装置。
【請求項３】
第１の文字列を配置する第１文字列配置手段と、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置手段とを備えている文書処理装置において、
第２文字列配置手段は、隣り合う一つのまとまりの文字同士の間隔が所定の長さよりも短い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させることを特徴とする文書処理装置。
【請求項４】
前記第１の文字列はルビが付与される文字列であり、前記第２の文字列は前記ルビであることを特徴とする請求項１から３の何れか１項に記載の文書処理装置。
【請求項５】
第２文字列配置手段は、前記表示の様態の変化として文字の描画座標を第２の文字列の配置方向に交わる方向へ変化させることを特徴とする請求項１から４の何れか１項に記載の文書処理装置。
【請求項６】
第２文字列配置手段は、前記表示の様態の変化として文字の色を変化させることを特徴とする請求項１から４の何れか１項に記載の文書処理装置。
【請求項７】
第２文字列配置手段は、前記表示の様態の変化としてフォントを変化させることを特徴とする請求項１から４の何れか１項に記載の文書処理装置。
【請求項８】
第２文字列配置手段は、前記表示の様態の変化として、領域を識別できる画像パターンを文字に重ね合わせて配置することを特徴とする請求項１から４の何れか１項に記載の文書処理装置。
【請求項９】
請求項１から８の何れか１項に記載の文書処理装置と、文書を表示する表示装置と、この表示装置に表示される文書を記憶する記憶装置とを備えていることを特徴とする文書表示装置。
【請求項１０】
第１の文字列を配置する第１文字列配置ステップと、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置ステップとを備えている文書処理方法において、
第２文字列配置ステップは、第２の文字列の配置方向の１行に含まれる総文字数が所定の文字数より多い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる処理を含んでいることを特徴とする文書処理方法。
【請求項１１】
第１の文字列を配置する第１文字列配置ステップと、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置ステップとを備えている文書処理方法において、
第２文字列配置ステップは、第２の文字列の配置方向の１行に含まれる文字の表示領域が所定の大きさよりも大きい場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる処理を含んでいることを特徴とする文書処理方法。
【請求項１２】
第１の文字列を配置する第１文字列配置ステップと、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置ステップとを備えている文書処理方法において、
第２文字列配置ステップは、隣り合う一つのまとまりの文字同士の間隔が所定の長さよりも短い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる処理を含んでいることを特徴とする文書処理方法。
【請求項１３】
請求項１から８のいずれか１項に記載の文書処理装置の各手段としてコンピュータを機能させるための文書処理プログラム。
【請求項１４】
請求項１３に記載のプログラムを記録したことを特徴とするコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子書籍を含む文書を処理する文書処理装置、文書処理方法、文書処理プログラムおよび文書処理プログラムを記録した記録媒体に関する。
【背景技術】
【０００２】
近年、書籍を読む手法として、印刷物の書籍を読むのではなく、電子計算機により書籍を表示して読む手法が普及している。このような手法に使用する書籍は電子書籍と呼ばれるものである。電子書籍は、通常の書籍とは異なり、物理的な実体を持たないことから保管に便利であったり、計算機上のデータによって書籍内容が扱われているために内容の検索が容易であったりといった利点がある。
【０００３】
電子書籍では、電子計算機によって書籍の内容たる文字列を配置して、液晶ディスプレイなどの表示装置に表示している。その表示においては、通常の書籍と同じように、読みの難しい固有名詞などにはルビが付与される場合がある。
【０００４】
ルビの付与の仕方については、読者にとって読みやすいようにルビを配置するための手法が広く研究されている。たとえば、特開平１１−２５０７５号公報に開示されている「ルビの配置方法」にはその一手法が開示されている。具体的には、ルビの文字数が多い場合に、ルビ禁止領域からルビが外れるように文字に対するルビの相対位置を変更している。これにより、自然なルビ振りを行いつつ、文字をできる限り標準間隔で詰めて読みやすいルビの配置を実現できるようにしている。
【特許文献１】特開平１１−２５０７５号公報（平成１１年１月２９日公開）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
電子書籍は、従来、主にパーソナルコンピュータなどの比較的表示画面が広く画素数の多い環境で読まれていた。しかしながら、携帯電話を含む携帯型の計算機（以下、単に携帯型機器と称する）における近年の計算機能力の向上に伴い、それら機器でも読むことができるようになってきている。
【０００６】
一方、携帯型機器では、表示画面が小さい、あるいは画素数が少ないなど、１行に表示可能な文字数が少なくなる。さらに、あらかじめ記憶しているフォントサイズの種類が少なく、本文の文字数を多く確保しようとすると、ルビと本文が同じフォントサイズとなってしまうこともある。このような状況において、特許文献１に記載のルビの配置方法では、ルビが振られる文字が多くなった場合に１行あたりの本文の文字数が少なくなってしまい、かえって読みづらくなってしまうという問題がある。
【０００７】
この問題に対して、１行の文字数を自然に確保しようとすると、図１７に示すように、ルビが行の全体を占めてしまう場合もある。なお、２０１はルビが並んだ行であり、２０２は本文の文字列が並んだ行である。このようにルビが並んでしまうとルビの切れ目が分からず、読者にとって読みづらい表示となってしまう。
【０００８】
本発明は、上記の問題点に鑑みてなされたものであり、表示装置において１行に表示可能な文字数が少ない場合であっても、ルビの切れ目が視覚的に明瞭となり、読者にとって読み易い表示を可能とする文書処理装置、文書表示装置、文書処理方法、文書処理プログラムおよび文書処理プログラムを記録した記録媒体の提供を目的としている。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明の文書処理装置は、第１の文字列を配置する第１文字列配置手段と、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置手段とを備えている文書処理装置において、第２文字列配置手段は、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させることを特徴としている。
【００１０】
また、本発明の文書処理方法は、第１の文字列を配置する第１文字列配置ステップと、前記第１の文字列に対応する第２の文字列を第１の文字列に沿って配置する第２文字列配置ステップとを備えている文書処理方法において、第２文字列配置ステップは、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる処理を含んでいることを特徴としている。
【００１１】
上記の構成によれば、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させるので、表示装置において１行に表示可能な文字数が少ない場合であっても、文字の切れ目を視覚的に把握できるようになり、読者にとって読み易い表示が可能となる。
【００１２】
上記の文書処理装置において、第２文字列配置手段は、前記第１の文字列が２個以上の部分文字列からなる場合に、それら複数の部分文字列のうちの少なくとも２個の部分文字列に対応した部分文字列からなる第２の文字列を配置する構成としてもよい。
【００１３】
また、上記の文書処理装置において、前記第１の文字列はルビが付与される文字列であり、前記第の文字列は前記ルビである構成としてもよい。
【００１４】
上記の構成によれば、一つのまとまりのルビごとにルビの表示の様態を変化させるので、表示装置において１行に表示可能な文字数が少ない場合であっても、ルビの切れ目を視覚的に把握できるようになり、読者にとって読み易い表示が可能となる。
【００１５】
上記の文書処理装置において、第２文字列配置手段は、第２の文字列の配置方向の１行に含まれる総文字数が所定の文字数より多い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる構成としてもよい。
【００１６】
上記の構成によれば、第２の文字列の配置方向の１行に含まれる総文字数が所定の文字数より多い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させるので、１行に含まれる文字数が少なく、文字の切れ目を視覚的に把握し易い場合のように、文字の表示の様態を変化させることが不必要な場合の処理を抑制することができる。
【００１７】
上記の文書処理装置において、第２文字列配置手段は、第２の文字列の配置方向の１行に含まれる文字の表示領域が所定の大きさよりも大きい場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる構成としてもよい。
【００１８】
上記の構成によれば、第２の文字列の配置方向の１行に含まれる文字の表示領域が所定の大きさよりも大きい場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させるので、１行に含まれる文字の表示領域が小さく、文字の切れ目を視覚的に把握し易い場合のように、文字の表示の様態を変化させることが不必要な場合の処理を抑制することができる。
【００１９】
上記の文書処理装置において、隣り合う一つのまとまりの文字同士の間隔が所定の長さよりも短い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる構成としてもよい。
【００２０】
上記の構成によれば、隣り合う一つのまとまりの文字同士の間隔が所定の長さよりも短い場合に、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させるので、隣り合う一つのまとまりの文字同士の間隔が長く、文字の切れ目を視覚的に把握し易い場合のように、文字の表示の様態を変化させることが不必要な場合の処理を抑制することができる。
【００２１】
上記の文書処理装置において、第２文字列配置手段は、前記表示の様態の変化として文字の描画座標を第２の文字列の配置方向に交わる方向へ変化させる構成としてもよい。
【００２２】
上記の構成によれば、表示の様態の変化として文字の描画座標を第２の文字列の配置方向に交わる方向へ変化させるので、隣り合う一つのまとまりの文字同士の切れ目を視覚的に容易に認識することができる。
【００２３】
上記の文書処理装置において、第２文字列配置手段は、前記表示の様態の変化として文字の色を変化させる構成としてもよい。
【００２４】
上記の構成によれば、表示の様態の変化として文字の色が変化するので、隣り合う一つのまとまりの文字同士の切れ目を視覚的に容易に認識することができる。
【００２５】
上記の文書処理装置において、第２文字列配置手段は、前記表示の様態の変化としてフォントを変化させる構成としてもよい。
【００２６】
上記の構成によれば、表示の様態の変化としてフォントが変化するので、隣り合う一つのまとまりのルビ同士の切れ目を視覚的に容易に認識することができる。
【００２７】
上記の文書処理装置において、第２文字列配置手段は、前記表示の様態の変化として文字の区切りを示す線を配置する構成としてもよい。
【００２８】
上記の構成によれば、表示の様態の変化として文字の区切りを示す線が配置されるので、隣り合う一つのまとまりの文字同士の切れ目を視覚的に容易に認識することができる。
【００２９】
上記の文書処理装置において、第２文字列配置手段は、前記表示の様態の変化として、領域を識別できる画像パターンを文字に重ね合わせて配置する構成としてもよい。
【００３０】
上記の構成によれば、表示の様態の変化として、領域を識別できる画像パターンが文字に重ね合わせて配置されるので、隣り合う一つのまとまりの文字同士の切れ目を視覚的に容易に認識することができる。
【発明の効果】
【００３１】
以上のように、本発明の文書処理装置は、第２文字列配置手段が、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる構成である。
【００３２】
また、本発明の文書処理方法は、第２文字列配置ステップが、第２の文字列を構成する文字の一つのまとまりごとに表示の様態を変化させる処理を含んでいる構成である。
【００３３】
これにより、表示装置において１行に表示可能な文字数が少ない場合であっても、文字の切れ目を視覚的に把握できるようになり、読者にとって読み易い表示が可能となる。
【発明を実施するための最良の形態】
【００３４】
〔実施の形態１〕
図１は、本実施の形態における文書表示装置１１を示すブロック図である。文書表示装置１１は、文書処理装置２１、記録装置２２および表示装置２３を備えている。文書処理装置２１は、入力部３１および文字列配置部３２を備えている。文字列配置部３２には、記録装置２２および表示装置２３が接続されている。
【００３５】
本実施の形態において、表示装置２３に表示される文字列は横書きに配置され、ルビを配置する行は、本文をなす文字列（以下、単に本文文字列と称する）を配置する行の上に設けられるものとする。なお、本文文字列はルビを振る対象となる文字を含む文字列である。また、各文字列の配置はこれに限定されない。例えば縦書きであって、ルビを配置する列が本文文字列を配置する列の右に設けられていてもよい。
【００３６】
記録装置２２は、例えば外部から入力された文書情報を記憶している。この文書情報は、図３に示すように、本文情報、およびルビであることを示すタグにはさまれたルビ情報を含んでいる。具体的には、２個のタグ<ruby>間にルビつきの文字列が記述され、２個タグ<rb>間に本文（本文文字列）が記述され、２個のタグ<rt>間にルビが記述されている。なお、文書情報は図３に記載のものに限らず、本文とルビとの区別ができるデータ構造であればどのような形態でもよい。
【００３７】
表示装置２３は、文書表示領域として、例えば縦１４４ピクセル、横１９２ピクセルの表示機能を有するものである。
【００３８】
文書処理装置２１の入力部３１は、文書表示装置１１の使用者が操作可能な押しボタンや入力キーなどの入力操作部を有しており、使用者からの例えば表示する画面を進めることを要求する入力を受け付ける。
【００３９】
文書処理装置２１の文字列配置部３２は、記録装置２２に記録されている文書情報を用いて、本文文字列とルビ文字列とを表示するためのビットパターンを出力する。本実施の形態において、表示装置２３の画面に表示する文字のビットパターンは本文とルビとの全ての文字について縦１２ピクセル、横１２ピクセルとする。したがって、表示装置２３では、１行あたり１６文字が配置され、本文を表示するための行とルビを表示するための行とがそれぞれ６行ずつ配置される。なお、以下の説明において、本文文字列とルビ文字列とは、同じ大きさの文字からなるものとしているが、異なる大きさの文字からなるものであってもよく、さらに、文字ごとに大きさが異なっていてもよい。
【００４０】
文字列配置部３２は、図２に示すように、文字情報取得部４１、本文文字列配置部（第１文字列配置手段）４２、ルビ文字列配置部（第２文字列配置手段）４３、文字色設定部（第２文字列配置手段）４４およびルビ文字数計算部（第２文字列配置手段）４５を備えている。
【００４１】
文字情報取得部４１は、表示装置２３に表示する文書情報の文字を記録装置２２から取得する。本文文字列配置部４２は、表示装置２３において、文字情報取得部４１にて取得された文字情報が文字色設定部４４にて設定された文字色にて一行おきに表示されるように、上記文字情報を本文文字列として配置する。ルビ文字列配置部４３は、表示装置２３において、本文文字列配置部４２にて配置される本文文字列に対応するルビ文字列が文字色設定部４４にて設定された文字色にて対応する本文文字列の上に表示されるように、上記ルビ文字列を配置する。
【００４２】
文字色設定部４４は、表示装置２３にて表示される、本文文字列の色を設定するとともに、ルビ文字数計算部４５での計算結果に基づいてルビ文字列の色を設定する。ルビ文字数計算部４５は、ルビ文字列が配置される各行のルビ文字数を計算する。
【００４３】
図４は、文書処理装置２１の動作の概要を示すフローチャートである。以下、図４に従って文書処理装置２１の動作の概要を説明する。
【００４４】
文書処理装置２１が処理を開始すると、まず文字列配置部３２は、記録装置２２に記録されている文書情報を読み込む（Ｓ１１）。ここで読み込む文書情報は、記録装置２２に複数の文書情報（文字情報を含む情報）が記録されている場合、例えば入力部３１によって選択された何れかの文書情報である。
【００４５】
さらに、文字列配置部３２は、所定の行数の分だけ、各行に対して文字列を配置する（Ｓ１２）。この処理における文字列配置部３２の動作については後に詳述する。この文字列の配置処理では、本文文字列およびルビ文字列を表すビットパターンが文字列配置部３２から出力される。文字列を配置した情報すなわち上記ビットパターンは、表示装置２３に入力され、表示装置２３ではそのビットパターンに従って文字列が表示される。
【００４６】
その後、文字列配置部３２では、入力部３１から使用者によって表示画面の更新指令が入力されたかどうか判定し（Ｓ１３）、更新指令が入力されていなければその状態を維持する。
【００４７】
また、Ｓ１３において更新指令が入力されていれば、記録装置２２に記録されている文書情報（現在表示中の文書情報）を最後まで表示したかどうか判定し（Ｓ１４）、最後まで表示していれば処理を終了する。一方、最後まで表示していなければ、Ｓ１１へ戻り、引き続きそれ以下の処理を繰り返す。
【００４８】
図５は、文字列配置部３２の動作の詳細を示すフローチャートである。以下、図５に従って文字列配置部３２の動作について説明する。
【００４９】
まず、初期値として、本文情報（本文文字列）の文字色を黒とし、ルビ文字列の文字色を黒とし、描画対象行を表す変数Ｌに１を代入する（Ｓ２１）。
【００５０】
次に、文字情報取得部４１は、記録装置２２に記録されている所定の文書情報から本文情報として６行分の文字を取得する（Ｓ２２）。なお、この処理が所定の文書情報に対する最初の処理であれば、文書情報の先頭から６行分取得し、所定の文書情報に対する継続的な処理であれば、それまで取得済みの行の次の行から６行分取得する。
【００５１】
次に、本文文字列配置部４２は、Ｓ２２にて取得した本文情報から表示装置２３での表示における１行の本文文字列を構成する数の文字を取り出し、Ｌ＋１行目に対応する座標にそれら文字のビットパターンを配置していく（Ｓ２３）。
【００５２】
次に、ルビ文字数計算部４５は、Ｓ２３において配置された本文文字列に対応する、１行分のルビの文字数を計算する（Ｓ２４）。
【００５３】
次に、文字色設定部４４は、Ｓ２４において計算されたルビを構成する文字数が９文字（しきい値）を超えているかどうか判定する（Ｓ２５）。この判定の結果、９文字を超えていればＳ２６に進み、超えていなければＳ２７に進む。
【００５４】
Ｓ２６では、文字色設定部４４は、現在のルビの文字色が黒であれば赤に変更し、赤であれば黒に変更して、Ｓ２７に進む。この処理は、１行分のルビの文字数がしきい値を超えた場合に、隣あうタグ一つ分のルビの色が連続して同じ色にならないようにする処理である。
【００５５】
Ｓ２７では、ルビ文字列配置部４３は、タグ（図３参照）一つ分のルビをＬ行目に配置する。このとき、ルビの位置を示す横座標は対応する本文文字列に最も近くなるように設定する。
【００５６】
次に、ルビ文字列配置部４３は、１行分のルビの配置が終了したかどうか判定する（Ｓ２８）。この判定の結果、配置が終了していればＳ２９へ進み、終了していなければＳ２５に戻る。
【００５７】
Ｓ２９では、本文文字列配置部４２は、次の行に文字列を配置するためにＬに２を加算する。
【００５８】
次に、本文文字列配置部４２は、１画面分の処理が終了したかどうか判定する（Ｓ３０）。具体的には、Ｌが１１よりも大きいかどうか判定する。この判定の結果、Ｌが１１よりも大きければ、１画面分の処理が終了したと判断して処理を終了する。一方、Ｌが１１よりも大きくなければ、次の行に文字列を配置するためにＳ２３に戻りそれ以下の処理を繰り返す。
【００５９】
以上のように、本実施の形態においては、１行分のルビの文字数がしきい値を超えた場合に、隣あうタグ一つ分のルビの色が連続して同じ色にならないようにルビの色を切り替えている。したがって、例えば、表示装置２３において１行に表示可能な文字数が少なく、隣あうタグ一つ分のルビ同士がつながってしまうような場合であっても、ルビの切れ目が視覚的に明瞭となり、読者にとって読み易い表示が可能となる。
【００６０】
なお、本実施の形態においては、上記のように、１行分のルビの文字数がしきい値を超えた場合に、隣あうタグ一つ分のルビの色が連続して同じ色にならないようにルビの色を切り替えているが、１行分のルビの文字数がしきい値を超えた場合という条件を設けることなく、隣あうタグ一つ分のルビの色が連続して同じ色にならないようにルビの色を切り替える構成としてもよい。
【００６１】
〔実施の形態２〕
本発明の他の実施形態について以下に説明する。
本実施の形態における文書処理装置２１は、図２に示した文字列配置部３２に代えて図６に示す文字列配置部５１を備えている。なお、図６は文字列配置部５１の構成を示すブロック図である。
【００６２】
本実施の形態において、表示装置２３の画面に表示される文字のビットパターンは、本文について縦１２ピクセル、横１２ピクセルであり、ルビについて縦９ピクセル、横９ピクセルであるものとする。
【００６３】
文字列配置部５１は、図６に示すように、図２に示した文字色設定部４４およびルビ文字数計算部４５に代えてルビ表示領域広さ計算部（第２文字列配置手段）６１を備え、さらにルビ文字列配置部４３に代えてルビ文字列配置部（第２文字列配置手段）６２を備えている。
【００６４】
ルビ表示領域広さ計算部６１は、１行分の本文文字列に対応する、１行分のルビが表示される領域の広さを計算する。ルビ文字列配置部６２は、ルビ表示領域広さ計算部６１での計算結果に基づいて、下記のように、表示装置２３に表示されるルビの配置位置を設定する。他の構成は実施の形態１に示した文書処理装置２１と同様である。
【００６５】
図７は、文字列配置部３２の動作の詳細を示すフローチャートである。以下、図７に従って文字列配置部３２の動作について説明する。
【００６６】
まず、初期値として、描画対象行を表す変数Ｌに１を代入し、ルビ配置基準オフセットを表す変数Ｒに０を代入して初期値を与える（Ｓ４１）。ここで、ルビ配置基準オフセットは、ルビ文字列の方向と直交する方向（本実施形態において縦方向）での基準位置に対する変位を表すものである。例えば、変数Ｒが０であれば、そのルビ文字列（タグ（図３参照）一つ分のルビ）はそのルビ文字列の前に配置されたルビ文字列と縦方向において同一位置に配置されることになる。
【００６７】
次に、文字情報取得部４１は、記録装置２２に記録されている所定の文書情報から
情報として６行分の文字を取得する（Ｓ４２）。なお、この処理が所定の文書情報に対する最初の処理であれば、文書情報の先頭から６行分取得し、所定の文書情報に対する継続的な処理であれば、それまで取得済みの行の次の行から６行分取得する。
【００６８】
次に、本文文字列配置部４２は、Ｓ４２にて取得された本文情報から表示装置２３での表示における１行の本文文字列を構成する数の文字を取り出し、Ｌ＋１行目に対応する座標にそれら文字のビットパターンを配置していく（Ｓ４３）。
【００６９】
次に、ルビ表示領域広さ計算部６１は、Ｓ４３において配置された本文文字列に対応する、１行分のルビが表示される領域の広さを計算する（Ｓ４４）。本実施の形態においては、上記領域の縦幅を無視し、横幅のみに着目して計算する。上記領域の広さは、ルビ文字の横幅を占めるピクセル数、すなわち９を文字数に掛けることにより求めることができる。
【００７０】
次に、ルビ文字列配置部６２は、Ｓ４４において計算された横幅のピクセル数が１００ピクセル（しきい値）を超えているかどうか判定する（Ｓ４５）。この判定の結果、１００ピクセルを超えていればＳ４６に進み、超えていなければＳ４７に進む。
【００７１】
Ｓ４６では、ルビ文字列配置部６２は、現在のルビ配置基準オフセットを表す変数Ｒが、−１より大きければ変数Ｒに−１を代入し、−１以下であれば変数Ｒに１を代入し、Ｓ４７に進む。
【００７２】
Ｓ４７では、ルビ文字列配置部６２は、タグ（図３参照）一つ分のルビをＬ行目に配置する。このとき、ルビの位置を示す横座標は対応する本文の文字列に最も近くなるように設定する。ルビの位置を示す縦座標は、ルビの配置対象となる本文文字列の行の上の、ルビの配置対象とはならない本文文字列の行から２ピクセル下を基準とし、さらにその座標に変数Ｒを加算した座標とする。
【００７３】
この場合のルビの配置を図８に示す。図８では、本文文字列を配置する第１の行の下にルビを配置する行が存在し、その下に本文文字列を配置する第２の行が存在する。第１の行は上記ルビの配置対象ではない行であり、第２の行は上記ルビの配置対象の行である。
【００７４】
上記の処理は、１行分のルビが表示される領域の広さがしきい値を超えた場合に、タグ一つ分のルビが連続して縦方向における同一位置に配置されないようにする処理である。
【００７５】
次に、ルビ文字列配置部６２は、１行分のルビの配置が終了したかどうか判定する（Ｓ４８）。この判定の結果、配置が終了していればＳ４９へ進み、終了していなければＳ４５に戻る。
【００７６】
Ｓ４９では、本文文字列配置部４２は、次の行に文字列を配置するためにＬに２を加算する。
【００７７】
次に、本文文字列配置部４２は、１画面分の処理が終了したかどうか判定する（Ｓ５０）。具体的には、Ｌが１１よりも大きいかどうか判定する。この判定の結果、Ｌが１１よりも大きければ、１画面分の処理が終了したと判断して処理を終了する。一方、Ｌが１１よりも大きくなければ、次の行に文字列を配置するためにＳ４３に戻りそれ以下の処理を繰り返す。
【００７８】
図９には、以上の処理の結果、表示装置２３に表示される文書情報の例を示す。同図において、６５がルビを配置した行であり、６６が本文を配置した行である。「ぎじゅつてき」というルビと「せいしつ」というルビとは、縦座標が異なる位置に配置されている。
【００７９】
以上のように、本実施の形態においては、１行分のルビが表示される領域の広さがしきい値を超えた場合に、タグ一つ分のルビが連続して縦方向における同一位置に配置されないようにしている。したがって、例えば、表示装置２３において１行に表示可能な文字数が少なく、隣あうタグ一つ分のルビ同士がつながってしまうような場合であっても、ルビの切れ目が視覚的に明瞭となり、読者にとって読み易い表示が可能となる。
【００８０】
なお、本実施の形態においては、上記のように、１行分のルビが表示される領域の広さがしきい値を超えた場合に、タグ一つ分のルビが連続して縦方向における同一位置に配置されないようにしているが、１行分のルビが表示される領域の広さがしきい値を超えた場合という条件を設けることなく、タグ一つ分のルビが連続して縦方向における同一位置に配置されないようにする構成としてもよい。
【００８１】
〔実施の形態３〕
本発明のさらに他の実施形態について以下に説明する。
本実施の形態における文書処理装置２１は、図２に示した文字列配置部３２に代えて図１０に示す文字列配置部７１を備えている。なお、図１０は文字列配置部７１の構成を示すブロック図である。
【００８２】
文字列配置部７１は、図１０に示すように、図２に示した文字色設定部４４、ルビ文字数計算部４５およびルビ文字列配置部４３に代えてビットパターン設定部（第２文字列配置手段）８１、ルビ間隔計算部（第２文字列配置手段）８２およびルビ文字列配置部（第２文字列配置手段）８３を備えている。
【００８３】
ビットパターン設定部８１は、先に配置されたルビとその次に配置されるルビとの間隔についてのルビ間隔計算部８２による判定結果に基づいて、次に配置されるルビのビットパターンを設定する。ルビ間隔計算部８２は、先に配置されたルビとその次に配置されるルビとの間隔を計算し、その間隔が３ピクセル（しきい値）以下かどうか判定する。ルビ文字列配置部８３は、ビットパターン設定部８１にて設定されたビットパターンにて各ルビを配置する。
【００８４】
本実施の形態において、表示装置２３は、文書表示領域として縦２４０ピクセル、横３２０ピクセルの表示機能を有するものとする。また、文字列配置部７１において、画面に表示する文字のビットパターンは、全ての文字について縦２０ピクセル、横２０ピクセルであるとし、明朝体のようなセリフのあるビットパターン（フォント）と、ゴシック体のようなセリフのないビットパターン（フォント）との二種類のビットパターンを選択して表示可能であるものとする。
【００８５】
図１１は、文字列配置部７１の動作の詳細を示すフローチャートである。以下、図１１に従って文字列配置部７１の動作について説明する。
【００８６】
まず、初期値として、描画対象行を表す変数Ｌに１を代入し、文字ビットパターンを表す変数Ｆに０を代入する（Ｓ６１）。
【００８７】
次に、文字情報取得部４１は、記録装置２２に記録されている所定の文書情報から本文情報として６行分の文字を取得する（Ｓ６２）。なお、この処理が所定の文書情報に対する最初の処理であれば、文書情報の先頭から６行分取得し、所定の文書情報に対する継続的な処理であれば、それまで取得済みの行の次の行から６行分取得する。
【００８８】
次に、本文文字列配置部４２は、Ｓ６２にて取得された本文情報から表示装置２３での表示における１行の本文文字列を構成する数の文字を取り出し、Ｌ＋１行目に対応する座標にそれら文字のビットパターンを配置していく（Ｓ６３）。ここで、本文情報の各文字のビットパターンはセリフのないビットパターンである。
【００８９】
次に、ルビ文字列配置部８３は、タグ（図３参照）一つ分のルビをＬ行目に仮に配置する（Ｓ６４）。このとき、ルビの位置を示す横座標は対応する本文文字列に最も近くなるように設定する。
【００９０】
次に、ルビ間隔計算部８２は、Ｓ６４において仮配置されたルビと一つ前に配置されたルビとの間隔を計算し、その間隔が３ピクセル（しきい値）以下かどうか判定する（Ｓ６５）。この判定の結果、３ピクセル以下であればＳ６６に進み、そうでなければＳ６７に進む。
【００９１】
Ｓ６６では、ビットパターン設定部８１は、文字ビットパターンを表す変数Ｆが０であれば１を代入し、１であれば０を代入して、Ｓ６７に進む。
【００９２】
Ｓ６７では、ルビ文字列配置部８３は、タグ（図３参照）一つ分のルビをＬ行目に配置する。このとき、ルビの位置を示す横座標は対応する本文の文字列に最も近くなるように設定する。また、Ｆの値を参照し、Ｆが０であればルビとしてセリフのないビットパターンを使用し、１であればルビとしてセリフのあるビットパターンを使用する。この処理は、先に配置されたルビとその次に配置されるルビとの間隔がしきい値以下である場合に、これら隣り合うルビ（タグ一つ分のルビ）が同一のビットパターンに設定されてないようにする処理である。
【００９３】
次に、ルビ文字列配置部８３は、１行分のルビの配置が終了したかどうか判定する（Ｓ６８）。この判定の結果、配置が終了していればＳ６９へ進み、終了していなければＳ６４に戻る。
【００９４】
Ｓ６９では、本文文字列配置部４２は、次の行に文字列を配置するためにＬに２を加算する。
【００９５】
次に、本文文字列配置部４２は、１画面分の処理が終了したかどうか判定する（Ｓ７０）。具体的には、Ｌが１１よりも大きいかどうか判定する。この判定の結果、Ｌが１１よりも大きければ、１画面分の処理が終了したと判断して処理を終了する。一方、Ｌが１１よりも大きくなければ、次の行に文字列を配置するためにＳ６３に戻りそれ以下の処理を繰り返す。
【００９６】
図１２には、以上の処理の結果、表示装置２３に表示される文書情報の例を示す。同図において、８５がルビを配置した行であり、８６が本文を配置した行である。セリフあるビットパターンとセリフのないビットパターンが交互に配置されている。
【００９７】
また、ルビ文字列配置部８３におけるＳ６７での処理は、上記のものに代えて下記のものであってもよい。
【００９８】
Ｓ６７では、ルビ文字列配置部８３は、タグ（図３参照）一つ分のルビをＬ行目に配置する。このとき、ルビの位置を示す横座標は対応する本文の文字列に最も近くなるように設定する。また、Ｆの値を参照し、Ｆが０であれば文字列のビットパターンをそのまま使用し、１であればルビとして図１３（ａ）に示すビットパターンを文字列のビットパターンに重ねて配置する。上記ビットパターンは、領域を識別できる画像パターンとして表示されるものであり、例えば文字の網掛け処理に使用されるものである。
【００９９】
図１３（ｂ）には、上記の処理の結果、表示装置２３に表示される文書情報の例を示す。同図において、８７がルビを配置した行であり、８８が本文を配置した行である。図１３（ａ）に示したビットパターンがルビに重なった状態のビットパターンと、フォントのみのビットパターンとが交互に配置されている。なお、重ねて配置されるビットパターンは図１３（ａ）に示したものに限らず、隣り合うルビと視覚的に区別がつけられるものであればどのようなパターンでもよい。
【０１００】
以上のように、本実施の形態においては、先に配置されたルビとその次に配置されるルビとの間隔がしきい値以下である場合に、これら隣り合うルビ（タグ一つ分のルビ）が同一のビットパターンに設定されてないようにしている。したがって、例えば、表示装置２３において１行に表示可能な文字数が少なく、隣あうタグ一つ分のルビ同士がつながってしまうような場合であっても、ルビの切れ目が視覚的に明瞭となり、読者にとって読み易い表示が可能となる。
【０１０１】
なお、本実施の形態においては、上記のように、先に配置されたルビとその次に配置されるルビとの間隔がしきい値以下である場合に、これら隣り合うルビ（タグ一つ分のルビ）が同一のビットパターンに設定されてないようにしているが、先に配置されたルビとその次に配置されるルビとの間隔がしきい値以下である場合という条件を設けることなく、隣り合うルビ（タグ一つ分のルビ）が同一のビットパターンに設定されてないようにする構成としてもよい。
【０１０２】
また、本実施の形態においては、上記のように、セリフのあるフォントとセリフのないフォントを用いてビットパターンの変更を行っているが、同様にボールドや斜体などのように視覚的に異なるフォントならば何を用いてもよい。
【０１０３】
〔実施の形態４〕
本発明の他の実施形態について以下に説明する。
本実施の形態における文書処理装置２１は、図２に示した文字列配置部３２に代えて図１４に示す文字列配置部１０１を備えている。なお、図１４は文字列配置部１０１の構成を示すブロック図である。
【０１０４】
本実施の形態において、表示装置２３の画面に表示される文字のビットパターンは、本文について縦１２ピクセル、横１２ピクセルであるとし、ルビについて縦１２ピクセル、横１２ピクセルであるとする。
【０１０５】
文字列配置部１０１は、図１４に示すように、図２に示した文字色設定部４４およびルビ文字数計算部４５に代えて区切り線作成部（第２文字列配置手段）１１１を備え、さらにルビ文字列配置部４３に代えてルビ文字列配置部（第２文字列配置手段）１１２を備えている。
【０１０６】
区切り線作成部１１１は、タグで指定されたルビの区切りごとに区切り線を作成する。ルビ文字列配置部１１２は、表示装置２３において、本文文字列配置部４２にて配置される本文文字列に対応するルビ文字列を本文文字列の上に表示されるように配置するとともに、タグで指定されたルビの区切りごとに区切り線を配置する。
【０１０７】
図１５は、文字列配置部１０１の動作の詳細を示すフローチャートである。以下、図１５に従って文字列配置部１０１の動作について説明する。
【０１０８】
まず、初期値として、描画対象行を表す変数Ｌに１を代入する（Ｓ８１）。
【０１０９】
次に、文字情報取得部４１は、記録装置２２に記録されている所定の文書情報から本文情報として６行分の文字を取得する（Ｓ８２）。なお、この処理が所定の文書情報に対する最初の処理であれば、文書情報の先頭から６行分取得し、所定の文書情報に対する継続的な処理であれば、それまで取得済みの行の次の行から６行分取得する。
【０１１０】
次に、本文文字列配置部４２は、Ｓ８２にて取得された本文情報から表示装置２３での表示における１行の本文文字列を構成する数の文字を取り出し、Ｌ＋１行目に対応する座標にそれら文字のビットパターンを配置していく（Ｓ８３）。
【０１１１】
次に、ルビ文字列配置部１１２は、タグ（図３参照）一つ分のルビをＬ行目に配置する（Ｓ８４）。このとき、ルビの位置を示す横座標は対応する本文文字列に最も近くなるように設定する。
【０１１２】
次に、ルビ文字列配置部１１２は、Ｓ８４において配置したルビの最後の文字の最も右の縦１１ピクセル、横１ピクセルを黒にする。すなわち、区切り線を配置する（Ｓ８５）。この区切り線は区切り線作成部１１１にて作成される。
【０１１３】
次に、ルビ文字列配置部１１２は、１行分のルビの配置が終了したかどうか判定する（Ｓ８６）。この判定の結果、１行分のルビの配置が終了していればＳ８７へ進み、終了していなければＳ８４に戻る。
【０１１４】
Ｓ８７では、本文文字列配置部４２は、次の行に文字列を配置するためにＬに２を加算する。
【０１１５】
次に、本文文字列配置部４２は、１画面分の処理が終了したかどうか判定する（Ｓ８８）。具体的には、Ｌが１１よりも大きいかどうか判定する。この判定の結果、Ｌが１１よりも大きければ、１画面分の処理が終了したと判断して処理を終了する。一方、Ｌが１１よりも大きくなければ、次の行に文字列を配置するためにＳ８３に戻りそれ以下の処理を繰り返す。
【０１１６】
図１６には、以上の処理の結果、表示装置２３により表示される文書情報の例を示す。同図において、８５がルビを配置した行であり、８６が本文を配置した行である。ルビを配置した行８５においては、タグで指定されたルビの区切りごとに区切り線が配置されている。
【０１１７】
以上のように、本実施の形態においては、タグで指定されたルビの区切りごとに区切り線が配置される。したがって、例えば、表示装置において１行に表示可能な文字数が少なく、隣あうタグ一つ分のルビ同士がつながってしまうような場合であっても、ルビの切れ目が視覚的に明瞭となり、読者にとって読み易い表示が可能となる。
【０１１８】
なお、以上の説明においては、第２の文字列が「ルビ」である場合について説明したが、第２の文字列は「ルビ」のみに限定されない。例えば、第１の文字列（例えば本文の文字列）に対して付加する注釈文、あるいは第１の文字列（例えば本文の文字列）中の語句に対する短い説明文の文字列であってもよい。
【０１１９】
最後に、文字列配置部３２，５１，７１，１０１の各ブロックは、ハードウェアロジックによって構成してもよいし、次のようにＣＰＵを用いてソフトウェアによって実現してもよい。
【０１２０】
すなわち、文字列配置部３２，５１，７１，１０１は、各機能を実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである文字列配置部３２，５１，７１，１０１の制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記文字列配置部３２，５１，７１，１０１に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０１２１】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【０１２２】
また、文字列配置部３２，５１，７１，１０１を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１２３】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１２４】
本発明の構成は、１行に表示可能な文字数が少ない携帯型の表示装置、例えば携帯電話などに利用可能である。
【図面の簡単な説明】
【０１２５】
【図１】本発明の実施の形態における文書処理装置を備えた文書表示装置を示すブロック図である。
【図２】図１に示した文字列配置部の構成を示すブロック図である。
【図３】図１に示した記録装置に記録されている文書情報のデータ構造の一例を示す説明図である。
【図４】図１に示した文字列配置部の動作の概要を示すフローチャートである。
【図５】図２に示した文字列配置部の動作を示すフローチャートである。
【図６】本発明の他の実施の形態における文書処理装置の文字列配置部の構成を示すブロック図である。
【図７】図６に示した文字列配置部の動作を示すフローチャートである。
【図８】図７に示したＳ４７の処理の説明図である。
【図９】図６に示した文書処理装置の処理によって表示装置に表示される文書情報の例を示す説明図である。
【図１０】本発明の他の実施の形態における文書処理装置の文字列配置部の構成を示すブロック図である。
【図１１】図１０に示した文字列配置部の動作を示すフローチャートである。
【図１２】図１０に示した文書処理装置の処理によって表示装置に表示される文書情報の例を示す説明図である。
【図１３】図１３（ａ）は図１２に示したＳ６７での他の処理で用いるビットパターンの一例を示す説明図、図１３（ｂ）は上記ビットパターンを使用したＳ６７での処理の結果を示す説明図である。
【図１４】本発明の他の実施の形態における文書処理装置の文字列配置部の構成を示すブロック図である。
【図１５】図１４に示した文字列配置部の動作を示すフローチャートである。
【図１６】図１４に示した文書処理装置の処理によって表示装置に表示される文書情報の例を示す説明図である。
【図１７】従来の文書処理装置による文書情報の表示において、ルビが行全体を占めてしまう場合の例を示す説明図である。
【符号の説明】
【０１２６】
１１    文書表示装置
２２    記録装置
２３    表示装置
３２    文字列配置部
４１    文字情報取得部
４２    本文文字列配置部（第１文字列配置手段）
43,62,83,112  ルビ文字列配置部（第２文字列配置手段）
４４    文字色設定部（第２文字列配置手段）
４５    ルビ文字数計算部（第２文字列配置手段）
６１    ルビ表示領域広さ計算部（第２文字列配置手段）
８１    ビットパターン設定部（第２文字列配置手段）
８２    ルビ間隔計算部（第２文字列配置手段）
１１１    区切り線作成部（第２文字列配置手段）
【図１】
0004640983.tif 000002
【図２】
0004640983.tif 000003
【図３】
0004640983.tif 000004
【図４】
0004640983.tif 000005
【図５】
0004640983.tif 000006
【図６】
0004640983.tif 000007
【図７】
0004640983.tif 000008
【図８】
0004640983.tif 000009
【図９】
0004640983.tif 000010
【図１０】
0004640983.tif 000011
【図１１】
0004640983.tif 000012
【図１２】
0004640983.tif 000013
【図１３】
0004640983.tif 000014
【図１４】
0004640983.tif 000015
【図１５】
0004640983.tif 000016
【図１６】
0004640983.tif 000017
【図１７】
0004640983.tif 000018