(57)【要約】    【課題】  ルビを付すための処理効率を高めることができる情報処理装置を提供する。    【解決手段】  被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分（図１０の１００１〜１００７、１０１４及び１０１５）及びルビ出力の項目の欄（図１０の１００８）を含む文書データ構造情報が作成され（図４のステップＳ４０１）、当該ルビ出力の項目の欄の値に基づいて該被ルビに対してルビを出力するか否かが制御され（図６のステップＳ６０２〜６０５）、その制御に基づいて当該ルビが当該被ルビに対して出力される（図６のステップＳ６０６、６０７）。【選択図】      図１０
2006185147.tif 000002
【特許請求の範囲】
【請求項１】
被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成手段と、
前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御手段と、
前記出力制御手段による制御に基づいて当該ルビを当該被ルビに対して出力する出力手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記出力制御手段は、前記ルビ出力情報に基づいてルビを出力するか否かを被ルビ毎に制御することを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記複数の論理区分のうち少なくとも１つの論理区分に属するデータは、少なくとも１つの他の論理区分に属する複数のデータの関連付けをすることを特徴とする請求項１又は２記載の情報処理装置。
【請求項４】
前記ルビ出力情報は、前記被ルビに対してルビを出力するか否かの情報、前記被ルビに対してルビを自動出力するか又は手動出力するかの情報、及び前記ルビ付テキスト情報において該ルビを識別するためのタグ情報を変更できるか否かの情報の少なくともいずれか１つを含むことを特徴とする請求項１乃至３のいずれか１項記載の情報処理装置。
【請求項５】
前記複数の論理区分に基づいて前記ルビ出力情報を変更するルビ出力情報変更手段を備え、前記出力制御手段は、前記ルビ出力情報変更手段により変更されたルビ出力情報に基づいてルビを出力するか否かを制御することを特徴とする請求項１乃至４のいずれか１項記載の情報処理装置。
【請求項６】
前記ルビ出力情報変更手段は、前記レイアウト情報に基づいて前記ルビ出力情報を変更することを特徴とする請求項５記載の情報処理装置。
【請求項７】
ルビ表示条件情報を格納する格納手段を備え、前記ルビ出力情報変更手段は、前記格納手段に格納されたルビ表示条件情報に基づいて前記ルビ出力情報を変更することを特徴とする請求項５又は６記載の情報処理装置。
【請求項８】
前記ルビ付テキスト情報に被ルビが複数あり、該複数の被ルビが同一の文字列で構成され、該複数の被ルビに対応する複数のルビが互いに異なる場合、前記出力制御手段は、前記ルビ出力情報に基づいて同一の文字列で構成される複数の被ルビに対して互いに異なる複数のルビを出力するように制御することを特徴とする請求項１乃至７のいずれか１項記載の情報処理装置。
【請求項９】
前記文書データ構造情報作成手段により作成された文書データ構造情報に基づいてルビ位置情報を作成するルビ位置情報作成手段と、
前記ルビ位置情報作成手段により作成されたルビ位置情報を編集する編集手段と、
前記編集手段により編集されたルビ位置情報を前記文書データ構造情報に転記する転記手段と
を備えることを特徴とする請求項１乃至８のいずれか１項記載の情報処理装置。
【請求項１０】
前記ルビ付テキスト情報又は前記レイアウト情報を変更する元情報変更手段と、
前記元情報変更手段により前記ルビ付テキスト情報又は前記レイアウト情報が変更されたときには、前記文書データ構造情報作成手段は前記ルビ出力情報を含む文書データ構造情報を再作成することを特徴とする請求項１乃至９のいずれか１項記載の情報処理装置。
【請求項１１】
被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成工程と、
前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御工程と、
前記出力制御工程による制御に基づいて当該ルビを当該被ルビに対して出力する出力工程と
を備えることを特徴とする情報処理方法。
【請求項１２】
コンピュータで実行される情報処理プログラムにおいて、
被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成モジュールと、
前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御モジュールと、
前記出力制御モジュールによる制御に基づいて当該ルビを当該被ルビに対して出力する出力モジュールと
を備えることを特徴とする情報処理プログラム。
【請求項１３】
コンピュータで実行される情報処理プログラムを記憶し、当該コンピュータで読み取り可能な記録媒体において、
前記情報処理プログラムは、
被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成モジュールと、
前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御モジュールと、
前記出力制御モジュールによる制御に基づいて当該ルビを当該被ルビに対して出力する出力モジュールと
を備えることを特徴とする記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、振り仮名等のルビを漢字等の被ルビに対して付すための情報処理装置、情報処理方法、情報処理プログラム及び記録媒体に関する。
【背景技術】
【０００２】
近年、パソコン等の情報処理装置を用いて、文書（原稿）の入力から文書編集やレイアウト編集等の処理が行われている。このような処理を行う際、読者にとって難解な漢字が文書に含まれていることがあるため、ルビと呼ばれる振り仮名を漢字（以下「被ルビ」という。）に対して付している。
【０００３】
しかし、全ての被ルビに対してルビを付し表示すると、読者において読みが分かっている被ルビについてもルビが表示されてしまうため、読者にとってはかえって煩わしく感じてしまう。それを解決するための技術として、特許文献１や特許文献２が開示されている。
【０００４】
特許文献１は、文章データの中からルビ表示対象文字を抽出するための抽出手段と、前記抽出手段によって抽出されたルビ表示対象文字に対して、所定の条件でルビ表示するか否かを判定するための判定手段と、前記文章データを表示する際、前記判定手段によってルビ表示すると判定されたルビ表示対象文字にルビを付加して表示する技術である。
【０００５】
また、特許文献２は、文書データを論理的に区分する１以上の論理区分を設定して記憶する論理区分記憶手段と、文書データからルビを付与する候補文字列を抽出するルビ付与候補文字列抽出手段とを有し、論理区分毎に、同一文字列からなる候補文字列については最初に出現する候補文字列をルビ付与対象文字列として判定し、文書データの上記判定されたルビ付与対象文字列にルビを付与する技術である。そして、ルビが付された候補文字列（被ルビ）以外の被ルビについては、ルビ制御コードを削除することによって、ルビを付さないように制御している。
【特許文献１】特開２００１−１２５８９２号公報
【特許文献２】特開２００２−２９７５７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記特許文献では、組版が変更された場合（例えば、縦組から横組に変更された場合）や文字を修正した場合等、文書や文書のレイアウトが変更された際、再度、全ての被ルビに対してルビを付すための処理が行われるため、ルビを付すための処理効率が悪いという課題がある。
【０００７】
また、上記特許文献では、文書ページにおいて、複数のテキストボックス（例えば、図１９に示すテキストボックス１０〜３０）が含まれる場合や、複数のテキストボックス（枠ともいう）に、縦組の文書や横組の文書が含まれる場合（例えば、図１９に示すテキストボックス１０，２０には縦組の文書が含まれており、テキストボックス３０には横組の文書が含まれている場合）等、文書のレイアウトについては考慮されていないため、上記特許文献に開示されている技術では被ルビにルビを付すことが困難であった。
【０００８】
更に、文書ページに含まれる複数のテキストボックスの配置等（レイアウト）が変更されると、変更されたレイアウト等に基づいて被ルビにルビを付すことが困難であった。
【０００９】
また、上記特許文献では、文書ページに複数のテキストボックスが含まれる場合を想定していないため、文書ページに含まれる複数のテキストボックス間に関係がある場合（例えば、図１９に示すテキストボックス１０にニュースの概要が記され、テキストボックス２０にそのニュースの本文が記され、テキストボックス１０とテキストボックス２０に記されている内容に関連がある場合）に、被ルビにルビを付すことが困難であった。
【００１０】
本発明の目的は、上記の課題を解決するためになされたものであり、ルビを付すための処理効率を高めることができる情報処理装置、情報処理方法、情報処理プログラム及び記録媒体を提供することにある。
【課題を解決するための手段】
【００１１】
上記目的を達成するため、請求項１の情報処理装置は、被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成手段と、前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御手段と、前記出力制御手段による制御に基づいて当該ルビを当該被ルビに対して出力する出力手段とを備えることを特徴とする。
【００１２】
請求項１１の情報処理方法は、被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成工程と、前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御工程と、前記出力制御工程による制御に基づいて当該ルビを当該被ルビに対して出力する出力工程とを備えることを特徴とする。
【００１３】
請求項１２の情報処理プログラムは、コンピュータで実行される情報処理プログラムにおいて、被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成モジュールと、前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御モジュールと、前記出力制御モジュールによる制御に基づいて当該ルビを当該被ルビに対して出力する出力モジュールとを備えることを特徴とする。
【００１４】
請求項１３の記録媒体は、コンピュータで実行される情報処理プログラムを記憶し、当該コンピュータで読み取り可能な記録媒体において、前記情報処理プログラムは、被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報を作成する文書データ構造情報作成モジュールと、前記ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かを制御する出力制御モジュールと、前記出力制御モジュールによる制御に基づいて当該ルビを当該被ルビに対して出力する出力モジュールとを備えることを特徴とする。
【発明の効果】
【００１５】
請求項１の情報処理装置、請求項１０の情報処理方法、請求項１１の情報処理プログラム及び請求項１２の記録媒体によれば、被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分及びルビ出力情報を含む文書データ構造情報が作成され、当該ルビ出力情報に基づいて該被ルビに対してルビを出力するか否かが制御され、その制御に基づいて当該ルビが当該被ルビに対して出力されるので、文書や文書のレイアウトが変更された際に、再度、全ての被ルビに対してルビを付すための処理が行われず、ルビを付すための処理効率を高めることができる。
【００１６】
また、レイアウト情報がルビ出力情報を含む文書データ構造情報の作成に反映されて、被ルビに対してルビを出力するか否かが制御されるので、レイアウトに応じてルビが被ルビに付され、読者にとって読み易い文書を作成することができる。
【００１７】
請求項７の情報処理装置によれば、ルビ表示条件情報に基づいてルビ出力情報が変更されるので、ルビ表示条件情報をユーザが設定しておくことで、自動的に被ルビに対してルビを出力するか否かが制御され、ルビを付すための処理効率をより高めることができる。
【００１８】
請求項８の情報処理装置によれば、ルビ付テキスト情報に被ルビが複数あり、該複数の被ルビが同一の文字列で構成され、該複数の被ルビに対応する複数のルビが互いに異なる場合、ルビ出力情報に基づいて同一の文字列で構成される複数の被ルビに対して互いに異なる複数のルビを出力するように制御されるので、例えば、ルビ付テキスト情報に同一の文字列で構成される被ルビ「明日」が複数ある場合、ルビ出力情報に基づいて「あす」と「みょうにち」のルビの使い分けが適切に行われ、ルビを付すための処理効率を高めることができる。また、ユーザの誤読を防ぐことができる。
【００１９】
請求項９の情報処理装置によれば、文書データ構造情報に基づいてルビ位置情報が作成され、作成されたルビ位置情報を編集して、前記文書データ構造情報に転記することできるので、より読者にとって読み易い文書を作成することができる。
【００２０】
請求項１０の情報処理装置によれば、ルビ付テキスト情報又はレイアウト情報が変更されたときには、文書データ構造情報が再作成されるので、常に読者にとって読み易い文書を提供することができる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
【００２２】
図１は、本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
【００２３】
図１において、本発明の実施の形態に係る情報処理装置はコンピュータ１００であり、コンピュータ１００は、ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、入力制御部１０４、入力部１０５、表示制御部１０６、表示部１０７、外部メモリ制御部１０８、外部メモリ１０９及び通信Ｉ／Ｆ制御部１１０を備えている。ＣＰＵ１０１、ＲＡＭ１０２、ＲＯＭ１０３、入力制御部１０４、表示制御部１０６、外部メモリ制御部１０８及び通信Ｉ／Ｆ制御部１１０はシステムバス１１２に接続されており、入力制御部１０４、表示制御部１０６、外部メモリ制御部１０８は、それぞれ入力部１０５、表示部１０７、外部メモリ１０９に接続されている。
【００２４】
ＣＰＵ１０１は、システムバス１１２に接続された各デバイスを統括的に制御する。また、ＲＡＭ１０２は、ＣＰＵ１０１の主メモリ、ワークエリア、処理対象となっているジョブの一時退避領域等として機能する。さらに、ＲＯＭ１０３は、ブートプログラムが記憶されている。
【００２５】
入力制御部１０４は、キーボードやマウス等のポインティングデバイスで実現される入力部１０５からの入力を制御する。また、表示制御部１０６は、ＣＲＴモニタや液晶モニタ等で実現される表示部１０７による表示を制御する。さらに、外部メモリ制御部１０８は、ＣＰＵ１０１の制御プログラムであるオペレーションシステム（ＯＳ）や、コンピュータ１００の各種機能を実現するためのプログラム、各種データデータベース（ＤＢ）、各種ファイル、各種アプリケーション、各種マスタファイル及びユーザファイル等の各種データを記憶する外部メモリ１０９へのアクセスを制御する。
【００２６】
外部メモリ１０９には、さらにコンピュータ１００の各種機能を実現するための各種テーブル等が記憶されている。外部メモリ１０９としては、ハードディスク（ＨＤ）やフレキシブルディスク（ＦＤ）、ＰＣＭＣＩＡカードスロットにアダプタを介して接続可能なコンパクトフラッシュ（登録商標）やスマートメディア等が挙げられる。本実施の形態では、ＣＰＵ１０１により外部メモリ１０９に記録されているプログラムが必要に応じてＲＡＭ１０２にロードされ、該プログラムの制御に基づき、ＣＰＵ１０１によって各種の処理が実行される。
【００２７】
また、通信Ｉ／Ｆ制御部１１０は、ＬＡＮやインターネット等のネットワーク１１１を介して外部機器（不図示）との通信制御処理を実行する。
【００２８】
図２は、図１のコンピュータ１００の機能ブロック図である。
【００２９】
コンピュータ１００は、入力されたプレーンのテキストデータにルビのタグを付加して入力するルビ付テキスト入力手段２０１と、ルビ付テキストを出力するルビ付テキスト出力手段２０２と、テキストデータから被ルビを抽出する形態素解析手段２０３と、ルビの位置情報を作成するルビ位置情報作成手段２０４と、ルビの位置情報を分類（ソート）するルビ位置情報分類手段２０５と、ルビの表示条件を変更するルビ表示条件変更手段２０６と、外部メモリ１０９に含まれる辞書ＤＢ２１６の内容を検索する辞書検索手段２０７とを備えている。
【００３０】
外部メモリ１０９は、ルビ付テキスト情報を記憶するルビ付テキスト記憶部２１０と、各種設定情報を記憶する各種設定情報記憶部２１１と、文書データ構造情報を記憶する文書データ構造情報記憶部２１２と、ルビ位置情報を記憶するルビ位置情報記憶部２１３と、原稿データを記憶する原稿データ記憶部２１４と、レイアウト情報を記憶するレイアウト情報記憶部２１５とを備えている。
【００３１】
図３は、コンピュータ１００におけるルビの表示制御が実行されるまでの処理の概略を示す図である。
【００３２】
図３の原稿データＡはプレーンテキストであり、コンピュータ１００が原稿データＡを入力し（ステップＳ３０１）、入力部１０５を介したユーザによるルビの付与指示を受け付けると（ステップＳ３０２）、ルビの表示制御が実行される（ステップＳ３０３）。ステップＳ３０３のルビの表示制御では、ルビの位置情報の検出及びルビの初出の判断が主として実行される。
【００３３】
また、図３の原稿データＡに対して、形態素解析手段２０３により被ルビを抽出し、アプリケーションにより当該被ルビに自動的にルビのタグを挿入し（ステップＳ３０４）、ルビ付テキストを入力すると（ステップＳ３０５）、ルビの表示制御が実行される（ステップＳ３０３）。
【００３４】
図３の原稿データＢはルビ付テキストであり、コンピュータ１００が原稿データＢを入力すると（ステップＳ３０５）、ルビの表示制御が実行される（ステップＳ３０３）。
【００３５】
また、原稿データＢに対して、形態素解析手段２０３により被ルビを抽出し、アプリケーションにより当該被ルビに自動的にルビのタグを挿入し（ステップＳ３０４）、タグ付テキストが入力されると（ステップＳ３０５）、ルビの表示制御が実行される（ステップＳ３０３）。このステップＳ３０４→ステップＳ３０５→ステップＳ３０３の流れは、ユーザがタグ付テキストに対してさらにアプリケーションにより自動的にルビのタグを挿入することを望む場合に、実行される処理である。
【００３６】
図４〜７は、コンピュータ１００のメイン処理を示すフローチャートである。この処理は、ＣＰＵ２０１の制御により実行される。
【００３７】
まず、ルビ付テキスト記憶部２１０に記憶されているルビ付テキスト情報及びレイアウト情報記憶部２１５に記憶されているレイアウト情報から文書データ構造情報を作成する（ステップＳ４０１）。
【００３８】
ここで、ルビ付テキスト情報とは、既に被ルビに対してルビが付された文書データであって、図８にその一例を示す。図８に示すルビ付きテキスト情報のタグ部分は、「<Ruby>ルビ：被ルビ</Ruby>」となっている。これは被ルビに対するルビが付されていることを示している。ここで、<Ruby0>タグ、<Ruby1>タグ、<Ruby2>タグ、<Ruby3>タグをまとめて<Ruby>タグやタグと呼んでいる。
【００３９】
例えば、図８に示すルビ付テキスト情報の３〜４行目の<Ruby1>とう\きょう\と:東京都</Ruby1>は、東京都という被ルビに対し、「東」には「とう」、「京」には「きょう」、「都」には「と」と、それぞれルビが付されることを示している。「￥」は被ルビの文字毎に付されるルビの分かれ目を示す。このように被ルビの文字ごとに付されるルビをモノルビという。また、５〜６行目の<Ruby1>あした:明日</Ruby1>は、「明日」という被ルビに対し「あした」というルビが付されることを示す。このように被ルビの文字列に付されるルビをグループルビという。
【００４０】
また、レイアウト情報とは、文書ページのレイアウトに関する情報であって、図９（Ａ）にその一例を示す。図９（Ａ）に示すレイアウト情報には、枠番号９０１、枠の座標（Ｘ）９０２、枠の座標（Ｙ）９０３、縦組又は横組を示す組方向９０４、枠の長さ（Ｘ）９０５、枠の長さ（Ｙ）９０６及び枠のあるページ番号９０７が含まれている。また、このレイアウト情報には、更に文字（フォント）の大きさなどが含まれていてもよい。
【００４１】
図９（Ｂ）は、図９（Ａ）に示すレイアウト情報を文書ページにイメージ化した図である。図９（Ｂ）のレイアウト情報の枠番号「１」における座標（Ｘ，Ｙ）は、（５，５）であり、図９（Ｂ）に示すように文書ページの基本座標を（０，０）とすると、（５，５）の位置に枠の左上の頂点がくるように枠が配置される。また、枠番号「１」の枠の組方向は横組みであって、枠の長さ（Ｘ）は１０であり、枠の長さ（Ｙ）が１５である。枠番号「２」における座標（Ｘ，Ｙ）は、（１７，４）であり、（１７，４）の位置に枠の右上の頂点がくるように枠が配置される。これは、枠番号「２」の枠の組方向は縦組みだからである。つまり、座標（Ｘ，Ｙ）は、横組みの枠であれば左上の頂点を示し、縦組みの枠であれば右上の頂点を示す。
【００４２】
ステップＳ４０１の文書データ構造情報の作成処理をより詳細に説明する。
【００４３】
ＣＰＵ２０１は、図８のルビ付テキスト情報と図９（Ａ）のレイアウト情報に基づいて文書ページに文字を配置した際の文字の配置情報（段番号・行番号・章番号など）を算出し（「組版処理」という）、文書データ構造情報を作成する。図１０は、文書データ構造情報１０００の一例を示す。文書データ構造情報１０００は、「ページ」、「グループ」、「リンク」、「枠」、「段」、「行」、「章」、「本文」及び「ルビ」の複数の論理区分に分けられている。
【００４４】
ルビ付テキスト情報とレイアウト情報を組み合わせて配置計算を行うことにより、文字が配置される段番号や行番号が決定される。また、ルビ付テキスト情報には、章などを識別する識別子が含まれているため、該識別子を検出することにより章番号が決定される。この決定された段番号、行番号及び章番号が、それぞれ文書データ構造情報１０００の「段」の項目１００３、「行」の項目１００４及び「章」の項目１００５の各欄に記入される。
【００４５】
文書データ構造情報１０００の「ページ」の項目１００１の欄にはページ番号が含まれ、「枠」の項目１００２の欄にはテキストボックス等の枠番号及び組方向の情報（例えば、縦組みか横組みか等を示す情報）が含まれ、「段」の項目１００３の欄には段番号が含まれ、「行」の項目１００４の欄には行番号が含まれ、「章」の項目１００５の欄には章番号が含まれており、これらの情報は、「本文」の項目１００６の各欄の文字がどこに記載されているかの位置情報を示している。
【００４６】
また、「リンク」の項目１０１４の欄には、文書データが別の枠や別のページに続く場合に、文書データが続く先のリンク先がどこかを示す情報を含んでいる。「グループ」の項目１０１５の欄には、枠とそれに関連する枠がある場合に、それらを一つのグループとして扱うための情報を含む。例えば、図１０に示す枠−１と枠−２とがリンク１によって関連づけられている場合、「グループ」の項目１０１５の欄には、枠−１と枠−２が一つのグループである旨の情報が含まれる。
【００４７】
「本文」の項目１００６の欄には、文書データの全ての文字（被ルビ）が一文字毎に含まれている。「ルビ」の項目１００７の欄には、「本文」の項目１００６の欄に含まれる被ルビに対応するルビが含まれている。
【００４８】
また、「ルビ表示」の項目１００８の欄には、「本文」の項目１００６に含まれている被ルビを一つのルビ付与対象の文字列とするか否か及びルビを表示するか否かの情報が含まれている。
【００４９】
具体的には、「本文」の項目１００６の欄１００９に「東」「京」「都」という被ルビが含まれている場合、被ルビに対応するルビが「ルビ」の項目１００７の欄１０１０に「とう」「きょう」「と」とそれぞれ格納されている。また、この３文字（「東」「京」「都」）を一つのルビ付与対象の文字列か否かを「ルビ表示」の項目１００８の欄１０１１で決めている。
【００５０】
図１０に示す欄１０１１の場合では、欄１０１１が「東京都」で分割されているため、ＣＰＵ２０１は「東京都」を一つのルビを表示する文字列として判断する。
【００５１】
また、文書データ構造情報１０００では、ルビを表示するか否かを示す旨の情報を「ルビ表示」の項目１００８の欄１０１１に入力される数値（フラグ）に含んでいるので、ＣＰＵ２０１は、この「ルビ表示」項目１００８の欄１０１１に入力される数値を参照することによって、ルビを表示するか否かを判断する。
【００５２】
欄１０１１に入力される数値の「０」は、ＣＰＵ２０１がプログラムを実行することにより自動的に被ルビにルビが付与されるが、出力される文書にはルビが表示されないことを示し、さらに被ルビに付されるルビのタグが、ルビ付テキスト情報やレイアウト情報の変更に基づいて変更可能であることを示す。また、欄１０１１に入力される数値が「０」の場合は、ルビ付テキスト情報にタグ<Ruby0>のルビが付されていることを示す。ＣＰＵ２０１は、ルビ付テキスト情報のタグ<Ruby0>タグを参照し、該タグに含まれる被ルビは文書データ構造情報の「本文」１００６に、また該タグに含まれるルビは「ルビ」１００７に入れる。更に該タグが<Ruby0>であれば、文書データ構造情報の「ルビ表示」項目１００８に「０」を入れる。その他の<Ruby>についても同様である。
【００５３】
欄１０１１に入力される数値の「１」は、ＣＰＵ２０１がプログラムを実行することにより自動的に被ルビにルビが付与され、出力される文書にルビが表示されることを示し、さらに被ルビに付されるルビのタグが、ルビ付テキスト情報やレイアウト情報の変更に基づいて変更可能であることを示す。また、欄１０１１に入力される数値が「１」の場合は、ルビ付テキスト情報にタグ<Ruby1>のルビが付されていることを示す。
【００５４】
欄１０１１に入力される数値の「２」は、入力部１０５を介して強制的に手動で被ルビにルビが付与され、出力される文書にルビが必ず表示されることを示し、さらに被ルビに付されるルビのタグが、ルビ付テキスト情報やレイアウト情報の変更によっても変更不可能であることを示す。また、欄１０１１に入力される数値が「２」の場合は、ルビ付テキスト情報にタグ<Ruby2>のルビが付されていることを示す。
【００５５】
欄１０１１に入力される数値の「３」は、ＣＰＵ２０１がプログラムを実行することにより自動的に被ルビにルビが付与され、出力される文書にルビが必ず表示されることを示し、さらに被ルビに付されるルビのタグが、ルビ付テキスト情報やレイアウト情報の変更によっても変更不可能であることを示す。また、欄１０１１に入力される数値が「３」の場合は、ルビ付テキスト情報にタグ<Ruby3>のルビが付されていることを示す。
【００５６】
また、欄１００９及び欄１０１０では、「東」（被ルビ）に対して「とう」（ルビ）が、「京」に対して「きょう」が、「都」に対して「と」が、付されている。このようにそれぞれの被ルビに対してルビが付されているものについては、いわゆるモノルビの表示がなされる。
【００５７】
また、欄１０１３に示すように、「明」「日」に対して、「あす」というルビが付されているものについては、いわゆるグループルビの表示がなされる。
【００５８】
図４のステップＳ４０１の処理の終了後、ステップＳ４０１で作成された図１０に示す文書データ構造情報に基づいて、図１１に示すルビ位置情報テーブルを作成する（ステップＳ４０２）。
【００５９】
以下、ステップＳ４０２の処理の具体例を説明する。
【００６０】
文書データ構造情報１０００の「本文」の項目１００６の欄から被ルビを文書データの初めから検索する。
【００６１】
そして、「本文」の項目１００６から「東京都」（被ルビ）が検索された場合、該検索された「東京都」（被ルビ）をルビ位置情報テーブルの「被ルビ」の項目の欄に格納する。このとき、文書データ構造情報１０００の「ルビ表示」の項目１００８の欄を参照し、「０」、「１」、「２」、「３」のいずれかの符号が付されていれば、それを検知し、「東京都」をルビの付与対象の文字列として判断する。
【００６２】
次いで、検索された「東京都」（被ルビ）に対応する「とう」「きょう」「と」（ルビ）を文書データ構造情報１０００の「ルビ」の項目５０７の欄から抽出し、ルビ間に「￥」を加えたルビ文字列をルビ位置情報テーブルの「ルビ（ルビ文字列）」の項目の欄に格納する。
【００６３】
さらに、「本文」の項目１００６から検索された被ルビ（「東京都」）の始めの文字（「東」）の位置情報（ページ番号・枠番号・組方向・段番号・行番号・章番号）と、該被ルビに対応するルビを表示するか否かの情報（「ルビ表示」の項目１００８の欄に含まれる番号であって、例えば「１」等）を文書データ構造情報１０００から抽出し、それぞれルビ位置情報テーブルに格納する。
【００６４】
ルビ位置情報テーブルの「文字番号」の項目の欄には、「本文」の項目１００６から検索された被ルビ（「東京都」）の始めの文字（「東」）が該始めの文字（「東」）の行の中で、何文字目かを示す情報が格納される。
【００６５】
ルビ位置情報テーブルの「ページ番号」、「グループ」、「組方向」、「枠番号」、「章番号」、「段番号」及び「行番号」の項目の欄には、適宜文書データ構造情報１０００のこれらに対応する項目の欄から情報を抽出し、それぞれ格納する。
【００６６】
ステップＳ４０２の処理の終了後、図１２に示す初出判定範囲情報を外部メモリ１０９から抽出する（ステップＳ４０３）。
【００６７】
ここで、図１２に示す初出判定範囲情報は、ユーザにより予め設定されている情報であって、ルビを付す初出の被ルビをどの単位で判定するかを示す。例えば、初出判定範囲情報の条件が１の場合（条件＝１）は、ページ単位で初出の被ルビの判定を行うことを示している。
【００６８】
次いで、ステップＳ４０３で抽出された初出判定範囲情報に基づいて、ステップＳ４０８〜ステップＳ４１０の処理が行われる。
【００６９】
具体的には、ステップＳ４０３で抽出された初出判定範囲情報が「ページ単位」と設定されている（条件＝１）か否かを判別し（ステップＳ４０４）、初出判定範囲情報が「ページ単位」と設定されている（条件＝１）場合には、ステップＳ４０２で作成されたルビ位置情報テーブルがページ単位で分割し、分割ルビ位置情報テーブルを作成して（ステップＳ４０８）、図５のステップＳ５０１に進む。ステップＳ４０８の処理では、例えば、図１１に示すルビ位置情報テーブルが該ルビ位置情報テーブルのページ番号別に分割され、図１３に示す２つの分割ルビ位置情報テーブルが作成される。図１３（Ａ）は１ページ目でまとめられた分割ルビ位置情報テーブルを示し、図１３（Ｂ）は２ページ目でまとめられた分割ルビ位置情報テーブルを示す。
【００７０】
次いで、ステップＳ４０４で初出判定範囲情報が「ページ単位」と設定されていない場合（条件≠１）には、ステップＳ４０３で抽出された初出判定範囲情報が「見開き単位」と設定されている（条件＝２）か否かを判別し（ステップＳ４０５）、初出判定範囲情報が「見開き単位」と設定されている（条件＝２）には、ステップＳ４０２で作成されたルビ位置情報テーブルを見開き単位で分割し、分割ルビ位置情報テーブルを作成し（ステップＳ４０９）、図５のステップＳ５０１に進む。例えば、図１１に示すルビ位置情報テーブルが該ルビ位置情報テーブルの見開きページ番号別に分割され、分割ルビ位置情報テーブルが作成される。ここで、「見開き単位で分割」とは、１ページ｜２・３ページ｜４・５ページ・・・ｎ−２・ｎ−１ページ｜ｎページ（ｎは最後のページ数を示し、｜は分割の境界を示す）のように１ページと２ページの間で分割され、３ページと４ページ・・・ｎ−１ページとｎページの間で分割されることをいう。製本のような見開きで出力する場合には、それに応じたページ間で分割される。
【００７１】
次に、初出判定範囲情報が「見開き単位」と設定されていない（条件≠２）には、ステップＳ４０３で抽出された初出判定範囲情報が「章単位」と設定されている（条件＝３）か否かを判別し（ステップＳ４０６）、初出判定範囲情報が「章単位」と設定されている（条件＝３）には、ステップＳ４０２で作成されたルビ位置情報テーブルを章番号単位で分割し、分割ルビ位置情報テーブルを作成し（ステップＳ４１０）、図５のステップＳ５０１に進む。例えば、図１１に示すルビ位置情報テーブルが該ルビ位置情報テーブルの章番号別に分割され、分割ルビ位置情報テーブルが作成される。
【００７２】
続けて、初出判定範囲情報が「章単位」と設定されていない（条件≠３）場合には、ステップＳ４０３で抽出された初出判定範囲情報が「文書全体」と設定されている（条件＝４）か否かを判別し（ステップＳ４０７）、初出判定範囲情報が「文書全体」と設定されている（条件＝４）場合には、図５のステップＳ５０１に進む一方、初出判定範囲情報が「文書全体」と設定されていない（条件≠４）場合には、本処理を終了する。
【００７３】
次に、図５の処理を説明する。
【００７４】
まず、分割ルビ位置情報テーブル毎に第一キーを被ルビとし、第二キーをルビとしてソート（分類）する（ステップＳ５０１）。この処理によって、同一の被ルビのものがまとまるように並べ替えられる又は同一の被ルビに付すルビが同一なものがまとまるように並べ替えられる。
【００７５】
次いで、ステップＳ５０１でソートされた分割ルビ位置情報テーブルを異なる被ルビ間又は異なるルビ間で分割し、ルビ分割ルビ位置情報テーブルを作成する（ステップＳ５０２）。この処理によって、分割ルビ位置情報テーブルを被ルビ別又はルビ別に分類することができる。
【００７６】
次に、予め設定された組方向優先順位情報を外部メモリ１０９から抽出する（ステップＳ５０３）。ここで、組方向優先順位情報とは、図１４に示す予め設定された情報であって、同一の文書ページに複数の枠があり、それらの枠の組方向が異なる場合、横組みと縦組みのどちらを優先してルビを付すか等の情報である。ここで、図１４に示す組方向優先条件情報において、条件１（条件＝１）は、縦組みの枠及び横組みの枠にある文字についてそれぞれ別々に初出の判断を行う条件である。また、条件２（条件＝２）は、横組みの枠にある文字を優先して初出の判断を行う条件である。また、条件３（条件＝３）は、縦組みの枠にある文字を優先して初出の判断を行う条件である。
【００７７】
次いで、ステップＳ５０３で抽出された組方向優先順位情報の条件が「１」と設定されている（条件＝１）か否かを判別し（ステップＳ５０４）、組方向優先順位情報の条件が「１」と設定されている（条件＝１）場合には、ステップＳ５０２で作成されたルビ分割ルビ位置情報テーブルを組方向でソートし（ステップＳ５０７）、ステップＳ５０７でソートされたルビ分割ルビ位置情報テーブルを異なる組方向間で分割し、組方向分割ルビ位置情報テーブルを作成する（ステップＳ５０８）。続けて、ステップＳ５０８で作成された組方向分割ルビ位置情報テーブルを、図１５（Ａ）に示す組方向別ソートキー（Ａ）を用いてソートし（ステップＳ５０９）、図６のステップＳ６０１に進む。ここで、横組みの組方向分割ルビ位置情報テーブルをソートする場合は、図１５に示す組方向別ソートキー（Ａ）の横組みのソートキーを用い、縦組みの組方向分割ルビ位置情報テーブルをソートする場合は、図１５に示す組方向別ソートキー（Ａ）の縦組みのソートキーを用いる。      
【００７８】
ステップＳ５０４で、組方向優先順位情報の条件が「１」と設定されていない（条件≠１）場合には、ステップＳ５０３で抽出された組方向優先順位情報の条件が「２」と設定されている（条件＝２）か否かを判別し（ステップＳ５０５）、組方向優先順位情報の条件が「２」と設定されている（条件＝２）場合には、ステップＳ５０２で作成されたルビ分割ルビ位置情報テーブルを、図１５（Ｂ）に示す組方向別ソートキー（Ｂ）を用いてソートし（ステップＳ５１０）、図６のステップＳ６０１に進む。
【００７９】
ステップＳ５０５で、組方向優先順位情報の条件が「２」と設定されていない（条件≠２）場合には、ステップＳ５０３で抽出された組方向優先順位情報の条件が「３」と設定されている（条件＝３）か否かを判別し（ステップＳ５０６）、組方向優先順位情報の条件が「３」と設定されている（条件＝３）場合には、ステップＳ５０２で作成されたルビ分割ルビ位置情報テーブルを、図１５（Ｃ）に示す組方向別ソートキー（Ｃ）を用いてソートし（ステップＳ５１１）、図６のステップＳ６０１に進む。一方、ステップＳ５０６で、組方向優先順位情報の条件が「３」と設定されていない（条件≠３）場合には、直接図６のステップＳ６０１に進む。
【００８０】
ここで、第１キー等の各ソートキーは、ルビ位置情報テーブルなどの行を並び替える際に、どの列のデータを比較するかを示している。まず、第１キーを比較し、次に第２キーを比較する、という比較する優先順位で適用される。ページ番号等の番号を示すキーについては、整数として比較し、昇順に並び替える。また、座標値については、指定の向きを正方向として昇順に並び替える。たとえば、下向きのキーについては、図９（Ｂ）の紙面レイアウトにおいて、より下方向に位置する座標がより大きい値と判断する。すなわち、Ｙ座標値については昇順に並び替えられる。また、右向きのキーについては、図９（Ｂ）の紙面レイアウトにおいて、より右方向に位置する座標がより大きい値と判断する。すなわち、Ｘ座標値については昇順に並び替えられる。また、左向きのキーについては、図９（Ｂ）の紙面レイアウトにおいて、より左方向に位置する座標がより大きい値と判断する。すなわち、Ｘ座標値については降順に並び替えられる。
【００８１】
次に、図６の処理を説明する。
【００８２】
まず、図１６に示す表示条件情報を外部メモリ１０９から抽出する（ステップＳ６０１）。図１６に示す表示条件情報の条件が「１」の「先頭からの個数指定」とは、初出の被ルビと同一の文字列からなる、初出以外の被ルビについて、幾つまでの被ルビについてルビを付すかを設定した情報である。表示条件情報の条件が「２」の「周期指定」とは、初出の被ルビと同一の文字列からなる被ルビに対して周期的にルビを付すことを設定した情報である。また、どの位の周期でルビを付すかといった情報が含まれている。
【００８３】
次いで、ステップＳ６０１で抽出された表示条件情報の条件が「１」に設定されている（条件＝１）か否かを判別し（ステップＳ６０２）、表示条件情報の条件が「１」に設定されている（条件＝１）場合には、組方向分割ルビ位置情報テーブル又はルビ分割ルビ位置情報テーブルに含まれる被ルビの先頭から、表示条件情報の条件で設定された個数まで、組方向分割ルビ位置情報テーブル又はルビ分割ルビ位置情報テーブルの「ルビ表示」の項目の欄を「１」にし、その他の「ルビ表示」の項目の欄を「０」に変更し（ステップＳ６０３）、ステップＳ６０４に進む。ここで、「ルビ表示」の項目の欄が既に「２」と設定されているものについては変更しない。
【００８４】
ステップＳ６０１で抽出された表示条件情報の条件が「１」に設定されていない（条件≠１）場合、ステップＳ６０１で抽出された表示条件情報の条件が「２」に設定されている（条件＝２）か否かを判別し（ステップＳ６０４）、表示条件情報の条件が「２」に設定されている（条件＝２）場合には、組方向分割ルビ位置情報テーブル又はルビ分割ルビ位置情報テーブルに含まれる被ルビの先頭から、表示条件情報で設定された周期毎に、組方向分割ルビ位置情報テーブル又はルビ分割ルビ位置情報テーブルの「ルビ表示」の項目の欄を「１」にし、その他の「ルビ表示」の項目の欄を「０」に変更し（ステップＳ６０５）、ステップＳ６０６に進む。ここで、「ルビ表示」の項目の欄が既に「２」と設定されているものについては変更しない。
【００８５】
ステップＳ６０４で表示条件情報の条件が「２」に設定されていない（条件≠２）場合、組方向分割ルビ位置情報テーブル又はルビ分割ルビ位置情報テーブルの「ルビ表示」の項目の欄に設定された番号を文書データ構造情報の「ルビ表示」の項目１００８の対応する欄に転記する（ステップＳ６０６）。これにより、ユーザの期待するルビ表示の情報が文書データ構造情報１０００に反映される。
【００８６】
次いで、ステップＳ６０６で転記された文書データ構造情報１０００に基づいて、ルビが付された文書データを作成し、出力画面に表示する（ステップＳ６０７）。また、ここでルビが付された文書データの印刷ジョブが作成され、印刷装置に出力されてもよい。
【００８７】
その後、ステップＳ９０７で作成された文書データの文字やレイアウトが変更されたか否かを判別し（ステップＳ６０８）、文書データの文字やレイアウトが変更されてない場合には、本処理を終了する一方、文書データの文字やレイアウトが変更された場合には、図７のステップＳ７０１に進む。
【００８８】
次に、図７の処理を説明する。
【００８９】
まず、文書データの文字が変更されたか否かを判別する（ステップＳ７０１）。文書データの文字が変更されていない場合、即ち、レイアウトが変更された場合には、図１０に示す文書データ構造情報の枠番号や段番号や行番号等が変更され、文書データ構造情報を再作成し（ステップＳ７０８）、図４のステップＳ４０２に戻る。このとき、レイアウトの変更が、図９（Ａ）のレイアウト情報（座標等）の変更であれば、枠番号と関連付けられた図９（Ａ）のレイアウト情報が変更される。
【００９０】
ステップＳ７０１で文書データの文字が変更された場合には、図１０に示す文書データ構造情報１０００の「本文」の項目１００６の欄の文字が変更される。その変更された文書データ構造情報１０００の「本文」の項目１００６の欄の文字を、ルビ付きテキスト情報に書き出す（ステップＳ７０２）。このとき、変更された文字として識別できるために、変更された文字については、所定の識別子が付されている。
【００９１】
次いで、ステップＳ７０２で書き出されたルビ付きテキスト情報の変更された文字部分について、形態素解析の処理を行う（ステップＳ７０３）。このとき、変更された文字は上記付された識別子により判定される。この形態素解析の処理では被ルビが検出される。
【００９２】
ステップＳ７０３の形態素解析の処理の結果、変更された文字部分から被ルビを検出したか否かを判別し（ステップＳ７０４）、変更された文字部分から被ルビを検出した場合には、外部メモリ１０９に格納されているルビ辞書を用いて、該検出された全ての被ルビに対して、ルビを検索する（ステップＳ７０５）。
【００９３】
次に、ルビ付テキスト情報に<Ruby>タグを追加することで、ステップＳ７０４で検出された全ての被ルビに対して、ステップＳ７０５で検索されたルビを付す（ステップＳ７０６）。このとき、ルビ付テキスト情報に追加される<Ruby>タグは、<Ruby1>タグである。
【００９４】
最後に、ルビ付きテキスト情報を文書データ構造情報１０００に読み出し、文書データ構造情報１０００を再作成し（ステップＳ７０７）、ステップＳ４０２に戻る。
【００９５】
以上詳細に説明したように、本実施の形態によれば、被ルビを含むルビ付テキスト情報及びレイアウト情報に基づいて、複数の論理区分（図１０の１００１〜１００７、１０１４及び１０１５）及びルビ出力の項目の欄（図１０の１００８）を含む文書データ構造情報が作成され（図４のステップＳ４０１）、当該ルビ出力の項目の欄の値に基づいて該被ルビに対してルビを出力するか否かが制御され（図６のステップＳ６０２〜６０５）、その制御に基づいて当該ルビが当該被ルビに対して出力されるので（図６のステップＳ６０６、６０７）、文書や文書のレイアウトが変更された際に、再度、全ての被ルビに対してルビを付すための処理が行われず、ルビを付すための処理効率を高めることができる。
【００９６】
また、レイアウト情報（図９、図１０の１００２）がルビ出力の項目の欄を含む文書データ構造情報の作成に反映されて、被ルビに対してルビを出力するか否かが制御されるので、レイアウトに応じてルビが被ルビに付され、読者にとって読み易い文書を作成することができる。
【００９７】
さらに、表示条件情報（図１６）に基づいてルビ出力の項目の欄の値が変更されるので、表示条件情報をユーザが設定しておくことで、自動的に被ルビに対してルビを出力するか否かが制御され、ルビを付すための処理効率をより高めることができる。
【００９８】
また、文書データ構造情報に基づいてルビ位置情報テーブルが作成され（図４のステップＳ４０２）、作成されたルビ位置情報テーブルを編集して（図４のＳ４０８〜Ｓ４１０、図５のＳ５０１、Ｓ５０２、Ｓ５０７〜Ｓ５１１、図６のＳ６０３、Ｓ６０５）、前記文書データ構造情報に転記する（図６のＳ６０６）ことできるので、より読者にとって読み易い文書を作成することができる。
【００９９】
さらにまた、ルビ付テキスト情報又はレイアウト情報が変更されたときには、文書データ構造情報が再作成されるので（図７）、常に読者にとって読み易い文書を提供することができる。
【０１００】
以下、図５の変形例を図１７を参照しながら説明する。
【０１０１】
図５のフローチャートと同一の処理については、同一のステップ番号を付し、その説明は省略する。
【０１０２】
まず、分割ルビ位置情報テーブル毎にキーを被ルビとしてソート（分類）する（ステップＳ１７０１）。この処理によって、同一の被ルビのものがまとまるように並べ替えられる。
【０１０３】
ステップＳ５０６でＮＯの場合又はステップＳ５０９〜ステップＳ５１１のいずれかの処理が終了した場合には、組方向分割ルビ位置情報テーブルの行番号の項目を昇順に並び替え、ルビの変わり目に相当する行及びそれ以降の行に対応する「ルビ表示」の項目の欄を「３」に変更し（ステップＳ１７０２）、図６のステップＳ６０１に進む。
【０１０４】
ステップＳ１７０２の処理を具体的に説明する。ステップＳ５０９の処理が終了すると、例えば、図１８（Ａ）の組方向分割ルビ位置情報テーブルが取得できる。
【０１０５】
この組方向分割ルビ位置情報テーブルにおいて、２行目のルビは「あした」であり、３行目のルビは「みょう￥にち」であるため、ルビの変わり目に相当する行は、３行目であり、３行目及びそれ以降の６行目に対応する「ルビ表示」の項目の欄を「１」から「３」に変更している。この変更後の組方向分割ルビ位置情報テーブルを示すのが図１８（Ｂ）である。
【０１０６】
組方向分割ルビ位置情報テーブルの「ルビ表示」の項目の欄に入力される数値の「３」は、ＣＰＵ２０１がプログラムを実行することにより自動的に被ルビにルビが付与され、出力される文書にルビが必ず表示されることを示す。ただし、ルビ付テキスト情報やレイアウト情報の変更によって、再度、表示するか否かを判断する対象となるため、その変更の際には、ルビ付テキスト情報にはタグ<Ruby1>で書き出される。
【０１０７】
以上の処理により、１ページに複数行の記載がある文書データにおいて、同一の文字列からなる複数の被ルビに対応する複数のルビが互いに異なることがある場合でも、常に適切なルビ表示がなされ、ユーザの誤読を防ぐことができる。文書データの文字やレイアウトが変更された場合にも、常に適切なルビ表示がなされる。
【０１０８】
一般的にルビとは、ルビ表示対象の文字列である被ルビに対して付される文字又は文字列のことをいう。本発明の実施の形態では、一実施例として、漢字を被ルビとして、また、該漢字に対して付される振り仮名をルビとして説明をしたが、これに限定されるものではない。すなわち、英語の文字列が被ルビで、該被ルビに対して付される文字列が日本語の文字列であるといったような場合などでも構わない。  本発明の機能が実行されるものであれば、単体の機器であっても、複数の機器からなるシステムであっても、ＬＡＮ、ＷＡＮ等のネットワークを介して接続がなされ処理が行われるシステムであっても、本発明を適用できることは言うまでもない。
【０１０９】
また、本発明の目的は、実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）が記憶媒体に格納されたプログラムコードを読み出して実行することによっても達成される。
【０１１０】
この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコード及び該プログラムコードを記憶した記憶媒体は本発明を構成することになる。
【０１１１】
又、プログラムコードを供給するための記憶媒体としては、例えば、フロッピー（登録商標）ディスク、ハードディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、ＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＤＶＤ−ＲＷ、ＤＶＤ＋ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ等を用いることができる。または、プログラムコードをネットワークを介してダウンロードしてもよい。
【０１１２】
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているＯＳ（オペレーティングシステム）等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【０１１３】
更に、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
【図面の簡単な説明】
【０１１４】
【図１】本発明の実施の形態に係る情報処理装置の構成を示すブロック図である。
【図２】図１のコンピュータ１００の機能ブロック図である。
【図３】コンピュータ１００におけるルビの表示制御が実行されるまでの処理の概略を示す図である。
【図４】コンピュータ１００のメイン処理を示すフローチャートである。
【図５】図４のメイン処理の続きを示すフローチャートである。
【図６】図５のメイン処理の続きを示すフローチャートである。
【図７】図６のメイン処理の続きを示すフローチャートである。
【図８】ルビ付テキスト情報の一例を示す図である。
【図９】（Ａ）はレイアウト情報の一例を示す図であり、（Ｂ）は（Ａ）に示すレイアウト情報を文書頁にイメージ化した図である。
【図１０】文書データ構造情報１０００の一例を示す図である。
【図１１】ルビ位置情報テーブルの一例を示す図である。
【図１２】初出判定範囲情報の一例を示す図である。
【図１３】（Ａ）は１ページ目でまとめられた分割ルビ位置情報テーブルを示す図であり、（Ｂ）は２ページ目でまとめられた分割ルビ位置情報テーブルを示す図である。
【図１４】組方向優先順位情報の一例を示す図である。
【図１５】（Ａ）は組方向別ソートキー（Ａ）を示す図であり、（Ｂ）は組方向別ソートキー（Ｂ）を示す図であり、（Ｃ）は組方向別ソートキー（Ｃ）を示す図である。
【図１６】表示条件情報の一例を示す図である。
【図１７】図５の変形例を示すフローチャートである。
【図１８】（Ａ）は組方向分割ルビ位置情報テーブルの一例を示す図であり、（Ｂ）は「ルビ表示」の項目の欄の値を変更した後の（Ａ）の組方向分割ルビ位置情報テーブルを示す図である。
【図１９】文書ページの一例を示す図である。
【符号の説明】
【０１１５】
１００  コンピュータ
１０１  ＣＰＵ
１０２  ＲＡＭ
１０３  ＲＯＭ
１０４  入力制御部
１０５  入力部
１０６  表示制御部
１０７  表示部
１０８  外部メモリ制御部
１０９  外部メモリ
１１０  通信Ｉ／Ｆ制御部
１１１  ネットワーク
１１２  システムバス
【図１】
2006185147.tif 000003
【図２】
2006185147.tif 000004
【図３】
2006185147.tif 000005
【図４】
2006185147.tif 000006
【図５】
2006185147.tif 000007
【図６】
2006185147.tif 000008
【図７】
2006185147.tif 000009
【図８】
2006185147.tif 000010
【図９】
2006185147.tif 000011
【図１０】
2006185147.tif 000012
【図１１】
2006185147.tif 000013
【図１２】
2006185147.tif 000014
【図１３】
2006185147.tif 000015
【図１４】
2006185147.tif 000016
【図１５】
2006185147.tif 000017
【図１６】
2006185147.tif 000018
【図１７】
2006185147.tif 000019
【図１８】
2006185147.tif 000020
【図１９】
2006185147.tif 000021