(57)【要約】【課題】複数の言語が混在しているテキストをスムーズに読み上げることができるテキスト読み上げ装置を提供する。【解決手段】言語判断部（９４１）は、日本語ＴＴＳエンジン（９３１）、英語ＴＴＳエンジン（９３２）、および中国語ＴＴＳエンジン（９３３）の中から、テキストデータに含まれる複数言語の音声データを生成できるＴＴＳエンジンを選択する。【選択図】図１１
2015064543.tif 000002
【特許請求の範囲】
【請求項１】
表示部に表示するためのテキストデータを音声データに変換し、変換した音声データを出力することによって、上記テキストデータを読み上げるテキスト読み上げ装置であって、
１つ以上の言語の音声データをそれぞれ生成する複数の音声データ生成部と、
選択された上記テキストデータの範囲内の文字列の言語の種類を判定し、上記複数の音声データ生成部から、上記テキストデータに含まれる複数種類の言語の文字列の音声データを生成できる１つの音声データ生成部を選択する選択部と、を備えたことを特徴とするテキスト読み上げ装置。
【請求項２】
上記選択部は、選択された上記テキストデータ中の着目する文字列の音声データを生成できる音声データ生成部から、選択された上記テキストデータにおいて、より多くの文字列の音声データを生成できる音声データ生成部を選択することを特徴とする請求項１に記載のテキスト読み上げ装置。
【請求項３】
上記複数の音声データ生成部は、第１の言語および第２の言語の音声データを生成する第１音声データ生成部と、第１の言語および第３の言語の音声データを生成する第２音声データ生成部とを含んでおり、
上記選択部は、選択された上記テキストデータの範囲に第１の言語が含まれる場合において、(i)さらに第２の言語が含まれる場合、上記第１音声データ生成部を選択し、また、(ii)さらに第３の言語が含まれる場合、上記第２音声データ生成部を選択することを特徴とする請求項１または２に記載のテキスト読み上げ装置。
【請求項４】
選択された上記テキストデータの範囲内に、上記選択部により選択された上記音声データ生成部には音声データを生成することができない文字列が存在する場合、上記選択部は、その文字列の音声データを生成できる上記音声データ生成部をさらに選択することを特徴とする請求項１〜３のいずれか１項に記載のテキスト読み上げ装置。
【請求項５】
表示部に表示するためのテキストデータを音声データに変換し、変換した音声データを出力することによって、上記テキストデータを読み上げるテキスト読み上げ装置であって、
漢字文字列および仮名文字列を含む上記テキストデータを上記表示部に表示している時に、選択された該テキストデータの範囲内の上記漢字文字列に関連付けられた上記仮名文字列を、該テキストデータから読み仮名として抽出する仮名文字列抽出部と、
上記漢字文字列の代わりに、上記仮名文字列抽出部によって抽出された上記仮名文字列に基づいて、上記漢字文字列を読み上げるための音声データを生成する漢字文字列音声データ生成部と、を備えたことを特徴とするテキスト読み上げ装置。
【請求項６】
上記仮名文字列抽出部は、上記漢字文字列の直後に存在する所定の第１の記号と、該第１の記号の後に存在する所定の第２の記号とによって囲まれた仮名文字列を抽出することを特徴とする請求項５に記載のテキスト読み上げ装置。
【請求項７】
上記テキストデータは、該テキストデータ中の漢字とその読み仮名とを関連付けるタグ情報を有しており、
上記仮名文字列抽出部は、上記タグ情報を参照して、上記テキストデータ中の上記漢字文字列の読み仮名を抽出することを特徴とする請求項５または６に記載のテキスト読み上げ装置。
【請求項８】
上記テキストデータは、上記漢字文字列に付されたルビを示すルビ情報を有しており、
上記仮名文字列抽出部は、上記ルビ情報を参照して、上記漢字文字列のルビを、該漢字文字列と関連付けられた上記仮名文字列として抽出することを特徴とする請求項５に記載のテキスト読み上げ装置。
【請求項９】
上記テキストデータから上記漢字文字列を抽出する漢字文字列抽出部をさらに備え、
上記仮名文字列抽出部は、上記漢字文字列抽出部によって抽出された上記漢字文字列に関連付けられた上記仮名文字列を抽出することを特徴とする請求項５〜８のいずれか１項に記載のテキスト読み上げ装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テキストを読み上げるテキスト読み上げ装置に関する。
【背景技術】
【０００２】
従来、コンテンツ（例えば、辞書コンテンツおよび書籍コンテンツ）に含まれる文章または単語等のテキストを音声に変換して読み上げるＴＴＳ（Text To Speech）機能を備えたテキスト読み上げ装置が開発されている。このようなテキスト読み上げ装置として、例えば、英語等の外国語のテキストを音声に変換する外国語ＴＴＳエンジンを搭載した電子辞書が挙げられる。さらに、日本語学習者、および装置による朗読を希望する者などのための、日本語のテキストを音声に変換する日本語ＴＴＳエンジンを搭載したテキスト読み上げ装置も挙げられる。
【０００３】
特許文献１には、日本語ＴＴＳエンジンを搭載したテキスト読み上げ装置の一例が開示されている。このテキスト読み上げ装置は、読み上げようとする漢字文字列が音声変換辞書データ部に登録されていない場合、かな漢字変換用の辞書データ部を参照することによって、上記漢字文字列の読みであるかなを得る。そして、そのかなに対応する音声を、上記漢字文字列に対応する音声の代わりに再生する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−１９４３８９号公報（２０００年７月１４日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示されたテキスト読み上げ装置を含め、日本語ＴＴＳエンジンを搭載した従来のテキスト読み上げ装置では、テキスト中の漢字文字列に複数の読みがある場合、日本語ＴＴＳエンジンが決定した一つの読みのみで、上記漢字文字列が読み上げられる。そのため、漢字文字列が複数の読みを有する場合、コンテンツの作成者の意図に沿わない読みで、上記漢字文字列が読み上げられる可能性がある。すなわち、従来のテキスト読み上げ装置は、漢字文字列を含むテキストの読み上げ精度が低いという問題がある。
【０００６】
また、テキストには、日本語だけでなく、英語または中国語などの言語の文字列が含まれる場合がある。この場合、各言語の文字列が、それぞれスムーズに読み上げられることが望ましい。
【０００７】
しかしながら、一般的に、１つのＴＴＳエンジンは、複数の言語の文字列を読み上げるように適合されていない。例外的に、日本語ＴＴＳエンジンは、日本語の文字列だけでなく、英語の文字列も読み上げることができる。だが、中国語の文字列を読み上げることはできない。そのため、従来のテキスト読み上げ装置には、複数の言語が混在したテキストをスムーズに読み上げることができないという問題がある。
【０００８】
本発明は上記の課題に鑑みてなされたものであり、その目的は、複数の言語が混在しているテキストをスムーズに読み上げることができるテキスト読み上げ装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記の課題を解決するために、本発明の一態様に係るテキスト読み上げ装置は、表示部に表示するためのテキストデータを音声データに変換し、変換した音声データを出力することによって、上記テキストデータを読み上げるテキスト読み上げ装置であって、１つ以上の言語の音声データをそれぞれ生成する複数の音声データ生成部と、選択された上記テキストデータの範囲内の文字列の言語の種類を判定し、上記複数の音声データ生成部から、上記テキストデータに含まれる複数種類の言語の文字列の音声データを生成できる１つの音声データ生成部を選択する選択部と、を備えている。
【発明の効果】
【００１０】
本発明の一態様によれば、複数の言語が混在しているテキストをスムーズに読み上げることができるという効果を奏する。
【図面の簡単な説明】
【００１１】
【図１】本発明の一実施形態に係る情報処理装置が備える制御部の構成を示すブロック図である。
【図２】本発明の一実施形態に係る情報処理装置の構成を示すブロック図である。
【図３】（ａ）は、本発明の一実施形態に係るコンテンツデータの一例を示す図であり、（ｂ）は、本発明の一実施形態に係るコンテンツデータから抽出され、読みＤＢ部に記憶される漢字文字列とその読み仮名のデータ形式を示す図である。
【図４】本発明の一実施形態に係る情報処理装置の、読み上げデータ処理時の動作を示すフローチャートである。
【図５】本発明の一実施形態に係る情報処理装置が備えた表示部におけるコンテンツの表示例である。
【図６】本発明の一実施形態に係る情報処理装置の制御部が実行する読み上げデータ処理の流れを示すフローチャートの一部である。
【図７】本発明の一実施形態に係る制御部が実行する読み上げデータ処理の流れを示すフローチャートの一部であり、図６に示すフローチャートの残りである。
【図８】（ａ）および（ｂ）は、本発明の一実施形態に係る情報処理装置の表示部に表示された情報の拡大図である。
【図９】（ａ）および（ｂ）は、本発明の一変形例における表示部の表示例である。
【図１０】（ａ）〜（ｃ）は、本発明の一実施形態に係るルビ情報付きテキストの表示例を示す図であり、特に、（ａ）および（ｃ）は、テキストのルビが非表示である表示例であり、（ｂ）は、テキスト中の漢字文字列の上にルビが表示されている表示例である。
【図１１】本発明の他の実施形態に係る情報処理装置が備える制御部の構成を示すブロック図である。
【図１２】本発明の他の実施形態に係る情報処理装置が備えた表示部におけるコンテンツの一表示例である。
【図１３】本発明の他の実施形態に係る情報処理装置が備えた表示部におけるコンテンツの他の表示例である。
【図１４】本発明の他の実施形態に係る情報処理装置が備えた表示部におけるコンテンツのさらに他の表示例である。
【図１５】本発明の他の実施形態に係る情報処理装置の制御部が実行する読み上げデータ処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１２】
〔実施形態１〕
以下、本発明の一実施形態を詳細に説明する。
【００１３】
［情報処理装置１の構成］
本実施形態に係る情報処理装置１（テキスト読み上げ装置）は、コンテンツに含まれるテキストの読み上げを行う装置である。まず、図２を用いて、本実施形態に係る情報処理装置１の構成を説明する。図２は、情報処理装置１の構成を示すブロック図である。
【００１４】
図２に示すように、情報処理装置１は、表示部１０、タッチパネル２０、ＴＴＳエンジン３０（漢字文字列音声データ生成部）、制御部４０、記憶部５０、一時記憶部６０、およびスピーカ７０を備えている。
【００１５】
制御部４０は、情報処理装置１が備えた各部（表示部１０、タッチパネル２０、ＴＴＳエンジン３０およびスピーカ７０を含む）を統合的に制御する。
【００１６】
記憶部５０は、コンテンツ記憶部５０Ａおよび読みＤＢ部５０Ｂを含んでいる。コンテンツ記憶部５０Ａには、電子辞書または電子書籍などのコンテンツデータが記憶される。コンテンツデータには、画像データまたはテキストデータ等が含まれる。読みＤＢ５０Ｂには、制御部４０によって、テキストデータに含まれる漢字文字列とその読みとが互いに対応付けられたデータがデータベース化されて記憶される。テキストデータは、テキストデータ中の漢字文字列とこれに対応する仮名文字列とを、漢字文字列とその読みとして互いに関連付けるタグ情報を有していてもよい。なお、タグ情報の具体例については後述する。
【００１７】
一時記憶部６０には、制御部４０により、テキストデータが一時的に記憶される。より詳細には、制御部４０は、コンテンツ記憶部５０Ａに記憶されているコンテンツからテキストデータを取得して、一時記憶部６０に記憶する。あるいは、制御部４０は、表示部１０に表示されたテキストデータ全体のうち、ユーザに選択された範囲のテキストデータを取得して、一時記憶部６０に記憶する。なお、一時記憶部６０は、記憶部５０に含まれていてもよい。
【００１８】
表示部１０には、制御部４０により、ユーザに提示されるデータ、例えば、コンテンツに含まれる画像データまたはテキストデータなどが表示される。具体的には、制御部４０がコンテンツ記憶部５０Ａより取得したコンテンツデータが表示される。タッチパネル２０は、表示部１０上に設けられており、ユーザが表示部１０にタッチして行う操作を検出して、その結果の検出信号を制御部４０に出力する。制御部４０は、タッチパネル２０からの検出信号により、テキストデータの表示位置へのタッチを検出する。
【００１９】
ＴＴＳエンジン３０には、一時記憶部６０に記憶されたテキストデータに対して制御部４０が変換処理を施したデータが入力される。ＴＴＳエンジン３０は、制御部４０より入力されたテキストデータを音声データに変換する。そして、ＴＴＳエンジン３０は、変換した音声データを制御部４０に出力する。スピーカ７０からは、制御部４０がＴＴＳエンジン３０より取得した音声データに基づく音声が出力される。
【００２０】
図３の（ａ）に、タグ情報を有するテキストデータの一例を示す。また、図３の（ｂ）に、読みＤＢ部５０Ｂに蓄積される情報のデータ形式を示す。図３の（ａ）に示すテキストデータには、コンテンツデータの再生時には表示されないタグ情報（＜ｋａｎｊｉ＞、＜／ｋａｎｊｉ＞、＜ｙｏｍｉ＞、および＜／ｙｏｍｉ＞）を用いて、「雑歌」という漢字文字列と、「ぞうか」という仮名文字列とが、漢字文字列とその読みとして関連付けられている。制御部４０は、図３（ａ）に示すテキストデータを処理するとき、これらのタグ情報に基づき、テキストデータに含まれる「雑歌」という漢字文字列の開始位置および終了位置と、「ぞうか」という仮名文字列とを、テキストデータから検出する。そして、図３の（ｂ）に示すように、「雑歌」という漢字文字列の開始位置および終了位置に対して、「ぞうか」という仮名文字列を読みとして関連付けて、読みＤＢ部５０Ｂに記憶させる。
【００２１】
［制御部４０の詳細な構成］
次に、図１を用いて、制御部４０の詳細な構成を説明する。図１は、制御部４０の構成を示すブロック図である。図１に示すように、制御部４０は、漢字抽出部４２（漢字文字列抽出部）、読み仮名抽出部４３（仮名文字列抽出部）、漢字仮名置換部４４（漢字文字列音声データ生成部）、ＴＴＳエンジン出力部４５、およびスピーカ出力部４６を備えている。
【００２２】
漢字抽出部４２は、テキストデータに含まれる漢字文字列を抽出する。読み仮名抽出部４３は、漢字抽出部４２によって抽出された漢字文字列と、テキストデータにおいて関連付けられている読み仮名を、当該テキストデータから抽出する。読み仮名抽出部４３は、読みＤＢ参照抽出部４３０、括弧内文字列抽出部４３１、および読み仮名判定部４３２を含んでいる。読みＤＢ参照抽出部４３０は、読みＤＢ部５０Ｂを参照して、テキストデータ中の漢字文字列の読み仮名を、読みＤＢ部５０Ｂから抽出する。具体的には、読みＤＢ参照抽出部４３０は、図３の（ｂ）に示す読みＤＢから、テキストデータにおける漢字文字列の位置を示す開始位置および終了位置を取得して、これらの位置で指定される漢字文字列と関連付けられた読みを抽出する。
【００２３】
括弧内文字列抽出部４３１は、漢字抽出部４２によって抽出された漢字文字列の直後に、括弧（括弧開きおよび括弧閉じ）で囲まれた仮名文字列（平仮名文字列または片仮名文字列）が存在する場合、該仮名文字列を抽出する。なお、括弧内文字列抽出部４３１は、読みＤＢ参照抽出部４３０によって読み仮名が抽出された漢字文字列については、漢字文字列の直後に、括弧および括弧で囲まれた仮名文字列があるか否かの判定を省略してもよい。読み仮名判定部４３２は、括弧内文字列抽出部４３１によって抽出された括弧内文字列が、括弧の直前の漢字文字列の読み仮名であるか否かを判定する。
【００２４】
例えば、括弧内文字列抽出部４３１は、「雑歌（ぞうか）」という文字列（図５参照）がテキストデータ中に存在していた場合、この文字列に含まれる漢字文字列「雑歌」の直後に存在する括弧「（）」で囲まれた「ぞうか」という仮名文字列を、上記漢字文字列「雑歌」の読み仮名として抽出する。言い換えれば、括弧内文字列抽出部４３１は、上記漢字文字列（「雑歌」）に対応する上記仮名文字列（「ぞうか」）を抽出する。なお、読み仮名抽出部４３は、括弧「（）」で囲まれた仮名文字列の代わりに、「＜＞」、「≪≫」、またはそれ以外の特定の記号で囲まれている仮名文字列を抽出してもよい。すなわち、読み仮名抽出部４３は、所定の第１の記号と、当該所定の第１の記号に対応する所定の第２の記号とに囲まれた仮名文字列を抽出すればよい。ここで、第１の記号と、第２の記号とは、互いに同じ記号であってもよいし、括弧開きと括弧閉じのように対になった記号であってもよいし、あるいは、互いに無関係の記号（例えば、＄と＃）であってもよい。ただし、どの記号が第１の記号または第２の記号に相当するのかは、情報処理装置１において予め定義されている。
【００２５】
漢字仮名置換部４４は、読み仮名抽出部４３による読み仮名抽出の結果に基づいて、一時記憶部６０に記憶されたテキストデータに置換処理を施す。具体的には、漢字仮名置換部４４は、一時記憶部６０に記憶されたテキストデータ中の漢字文字列のうち、読みＤＢ参照抽出部４３０によってその読み仮名が抽出された漢字文字列を、該読み仮名に置換する。さらに、漢字仮名置換部４４は、上記置換後のテキストデータから、漢字抽出部４２によって抽出された漢字文字列を、読み仮名判定部４３２によって当該漢字文字列の読み仮名と判定された仮名文字列に置換する。ＴＴＳエンジン出力部４５は、漢字仮名置換部４４による漢字仮名置換処理後のテキストデータを、ＴＴＳエンジン３０に出力する。
【００２６】
ＴＴＳエンジン３０は、ＴＴＳエンジン出力部４５から入力されたテキストデータを、音声データに変換する。その後、ＴＴＳエンジン３０は、変換した音声データをスピーカ出力部４６に出力する。スピーカ出力部４６は、ＴＴＳエンジン３０より入力された音声データを電気信号に変換して、スピーカ７０に出力する。
【００２７】
［制御部４０の動作］
続いて、制御部４０の動作、特に、読み上げデータ処理に関する制御部４０の動作を説明する。読み上げデータ処理では、情報処理装置１が、テキストデータの読み上げを行う。以下では、まず、読み上げデータ処理が実行されるまでの制御部４０の動作の概要を説明する。その後で、読み上げデータ処理の詳細を説明する。
【００２８】
［制御部４０の動作；読み上げデータ処理が実行されるまでの制御部４０の動作］
図４および図５を用いて、読み上げデータ処理が実行されるまでの制御部４０の動作の概要を説明する。図４は、読み上げデータ処理が実行されるまでの制御部４０の動作を示すフローチャートである。また、図５は、表示部１０におけるコンテンツの表示例である。なお、以下の説明では、実際にはタッチパネル２０がタッチされることを、表示部１０がタッチされると表現する。
【００２９】
図４に示すように、制御部４０は、まず、表示部１０にコンテンツが表示中であるか否かを判定する（Ｓ１）。コンテンツが表示中である場合（Ｓ１でＹｅｓ）、制御部４０は、表示部１０に表示されているテキストの全部または一部が、ユーザによってタッチされたか否かを判定する（Ｓ２）。以下では、タッチされたテキストの全部または一部を、選択テキストと呼ぶ。図５では、表示部１０に、選択テキストである「雑歌」が影付きで表示されている。なお、選択テキストの選択は、図５に示すようにタッチペンＰを用いて行われてもよいし、あるいはユーザの指で行われてもよい。それ以外にも、選択テキストは、情報処理装置１が備えたキー（図示せず）をユーザが操作することによって選択されてもよい。
【００３０】
コンテンツが表示中でない（Ｓ１でＮｏ）か、またはテキストの全部または一部がタッチされない（Ｓ２でＮｏ）場合、制御部４０は、読み上げデータ処理を行わずに動作を終了する。一方、コンテンツが表示中であり（Ｓ１でＹｅｓ）、かつ、該コンテンツに含まれるテキストの全部または一部がタッチされた（Ｓ２でＹｅｓ）場合、図５に示すように、制御部４０は、タッチメニューＴＭを表示する（Ｓ３）。同図に示すように、タッチメニューＴＭには、情報処理装置１に選択テキストを読み上げさせる「読み上げ」の選択肢が含まれる。
【００３１】
タッチメニューＴＭは、「読み上げ」の他に、選択テキストにマーカーを引いて表示する「マーカー」を選択肢に含んでいてもよい（図５参照）。その他にも、タッチメニューＴＭは、例えば、選択テキストに含まれる用語の辞書検索を実行させる選択肢を含んでいてもよい。
【００３２】
なお、ユーザがテキストを選択するために行う操作は、タッチ操作のみに限らない。例えば、表示部１０の画面上にボタンが表示されており、本ボタンを押下する操作が行われたとき、あらかじめ情報処理装置１内で取り決められた仕様や設定に従った動作（例えば、表示中のテキストの全文を選択するような動作）が行われ、この動作によって選択テキストが決定されてもよい。
【００３３】
タッチメニューＴＭを表示した後（Ｓ３の後）、制御部４０は、タッチメニューＴＭから「読み上げ」が選択されたか否かを判定する（Ｓ４）。「読み上げ」以外の選択肢が選択された場合（Ｓ４でＮｏ）、制御部４０は、選択された選択肢に応じた動作を実行した後、読み上げデータ処理を行わずに動作を終了する。
【００３４】
一方、「読み上げ」が選択された場合（Ｓ４でＹｅｓ）、制御部４０は読み上げデータ処理を実行する（Ｓ５）。読み上げデータ処理Ｓ５では、制御部４０は、選択テキストに対して、漢字仮名置換処理を実行した後、ＴＴＳエンジン３０に対し、漢字仮名置換処理を施された選択テキストを出力する。なお、読み上げデータ処理Ｓ５の詳細を後述する。ＴＴＳエンジン３０では、漢字仮名置換処理後のテキストデータが音声データに変換される。その後、制御部４０は、ＴＴＳエンジン３０から出力された音声データを取得して、スピーカ７０に出力する。その後、処理は終了する。
【００３５】
なお、ここでは、タッチメニューＴＭを表示する構成を説明したが、テキスト選択操作を契機とする予め定められた動作が１つ（すなわち、読み上げ処理の実行）のみの場合、タッチメニューＴＭを表示することなく、読み上げ処理を実行してもよい。
【００３６】
［制御部４０の動作；読み上げデータ処理Ｓ５の詳細］
次に、図６および図７を用いて、上述した読み上げデータ処理Ｓ５の詳細を説明する。図６および図７は、読み上げデータ処理Ｓ５の流れを示すフローチャートである。
【００３７】
読み上げデータ処理Ｓ５では、まず、制御部４０は、選択テキストを一時記憶部６０にコピーする（Ｓ５０１）。以降のステップでは、制御部４０の各部は、一時記憶部６０内の選択テキストに対して、漢字文字列を仮名文字列に置換する処理などを行う。
【００３８】
ステップＳ５０１の後、読みＤＢ参照抽出部４３０が、読みＤＢ部５０Ｂを参照して、読み仮名と関連付けられた漢字文字列が選択テキストに含まれているか否かを判定する（Ｓ５０２）。読み仮名と関連付けられた漢字文字列が選択テキストに含まれている場合（Ｓ５０２でＹｅｓ）、漢字仮名置換部４４は、該漢字文字列をその読み仮名に置換する（Ｓ５０３）。
【００３９】
読み仮名と関連付けられた漢字文字列が選択テキストに含まれていない場合（Ｓ５０２でＮｏ）、または、ステップＳ５０３の後、漢字抽出部４２が、選択テキストに漢字文字列が含まれているか否かを判定する（Ｓ５０４）。選択テキストに漢字文字列が含まれていない場合（Ｓ５０４でＮｏ）、ＴＴＳエンジン出力部４５が、一時記憶部６０内の選択テキストをＴＴＳエンジン３０に出力し（Ｓ５１１）、読み上げデータ処理Ｓ５は終了する。
【００４０】
一方、選択テキストに漢字文字列が含まれている場合（Ｓ５０４でＹｅｓ）、括弧内文字列抽出部４３１は、選択テキスト内において、漢字文字列の直後に、括弧で囲まれた文字列（以下では、括弧内文字列と呼ぶ）が存在するか否かを判定する（Ｓ５０５）。
【００４１】
選択テキスト内において、漢字文字列の直後に、括弧内文字列が存在しない場合（Ｓ５０５でＮｏ）、括弧内文字列抽出部４３１は、選択テキストの末尾が漢字文字列であるか否かを判定する（Ｓ５０６）。選択テキストの末尾が漢字文字列ではない場合（Ｓ５０６でＮｏ）、ＴＴＳエンジン出力部４５が、一時記憶部６０内の選択テキストをＴＴＳエンジン３０に出力し（Ｓ５１１）、読み上げデータ処理Ｓ５は終了する。
【００４２】
一方、選択テキストの末尾が漢字文字列である場合（Ｓ５０６でＹｅｓ）、括弧内文字列抽出部４３１は、選択テキストの直後に、括弧内文字列が存在するか否かを判定する（Ｓ５０７）。選択テキストの直後に括弧内文字列が存在しない場合（Ｓ５０７でＮｏ）、ＴＴＳエンジン出力部４５が、一時記憶部６０内の選択テキストをＴＴＳエンジン３０に出力し（Ｓ５１１）、読み上げデータ処理Ｓ５は終了する。
【００４３】
選択テキスト内において、漢字文字列の直後に、括弧内文字列が存在する場合（Ｓ５０５でＹｅｓ、Ｅｘ１に示す例の場合）、または、末尾が漢字である選択テキストの直後に、括弧内文字列が存在する場合（Ｓ５０７でＹｅｓ、Ｅｘ２に示す例の場合）、読み仮名判定部４３２は、括弧内文字列が平仮名のみまたは片仮名のみからなる仮名文字列であるか否かを判定する（Ｓ５０８）。これにより、括弧内文字列が、その直前の漢字文字列の読みを表記したものであるか否かが判定される。
【００４４】
括弧内文字列が平仮名および片仮名以外の文字列を含む場合（Ｓ５０８でＮｏ、Ｅｘ３に示す例の場合）、ＴＴＳエンジン出力部４５が、一時記憶部６０内の選択テキストをＴＴＳエンジン３０に出力し（Ｓ５１１）、読み上げデータ処理Ｓ５は終了する。
【００４５】
一方、括弧内文字列が平仮名または片仮名からなる仮名文字列である場合（Ｓ５０８でＹｅｓ）、読み仮名判定部４３２は、括弧内文字列の長さが所定範囲内であるか否かを判定する（Ｓ５０９、仮名文字列抽出ステップ）。所定範囲は、括弧の直前の漢字文字列の文字列長の３倍以内であってよい。これにより、読み仮名判定部４３２は、括弧内文字列が、括弧の直前の漢字文字列の読み仮名としては長すぎる場合に、上記括弧内文字列は上記漢字文字列の読み仮名ではないと判断することができる。
【００４６】
括弧内文字列の長さが所定範囲内でない場合（Ｓ５０９でＮｏ）、ＴＴＳエンジン出力部４５が、一時記憶部６０内の選択テキストをＴＴＳエンジン３０に出力し（Ｓ５１１）、読み上げデータ処理Ｓ５は終了する。一方、括弧内文字列の長さが所定範囲内である場合（Ｓ５０９でＹｅｓ）、漢字仮名置換部４４は、括弧の直前の漢字文字列を括弧内文字列に置換し、さらに、括弧開きから括弧閉じまでの文字列の一部または全部が選択テキストに含まれる場合、その文字列を選択テキストから削除する（Ｓ５１０）。その後、ＴＴＳエンジン出力部４５は、一時記憶部６０内の選択テキストをＴＴＳエンジン３０に出力する（Ｓ５１１）。
【００４７】
ここで、ステップＳ５１０では、括弧の直前の漢字文字列が一つの漢字からなる場合、漢字仮名置換部４４は、その一つの漢字を括弧内文字列に置換する。一方、括弧の直前の漢字文字列が複数の漢字からなる場合、漢字仮名置換部４４は、その複数の漢字を括弧内文字列に置換する。言い換えれば、漢字仮名置換部４４は、括弧開き直前からテキストを遡って、漢字文字コードを有する漢字からなる一連の漢字群を括弧内文字列に置換する。
【００４８】
これにより、選択テキストが括弧を含むＥｘ１に示す例（「雑歌（ぞうか）」）の場合であっても、または選択テキストが括弧を含まないＥｘ２に示す例（「雑歌」）の場合であっても、ＴＴＳエンジン３０には、Ｅｘ４に示す「ぞうか」という選択テキストが入力されることになる。以上で、読み上げデータ処理Ｓ５は終了する。
【００４９】
なお、図示しないが、ステップＳ５１１の後、選択テキストデータを入力されたＴＴＳエンジン３０は、該選択テキストデータを音声データに変換して、制御部４０に出力する（音声データ生成ステップ）。制御部４０は、ＴＴＳエンジン３０から入力された音声データを、スピーカ７０に出力する。スピーカ７０は、制御部４０より入力された音声データに基づいて音声を出力する。これによって、コンテンツの作成者が意図したとおりの読みで、漢字文字列が読み上げられる。
【００５０】
ここでは、情報処理装置１が、ユーザに選択された選択テキストを読み上げる例を説明したが、本発明はこれに限られない。情報処理装置１が、選択テキストの代わりにテキストデータの全体を順次読み上げる構成とすることにより、情報処理装置１がテキストの朗読を行う構成を実現することができる。
【００５１】
［読み上げデータ処理Ｓ５の変形例］
制御部４０は、読みＤＢ５０Ｂを参照しての漢字仮名置換は行わずに、括弧内文字列を用いた漢字仮名置換のみを行っても良い。この場合、読み上げデータ処理Ｓ５において、ステップＳ５０２およびステップＳ５０３は実行されない。すなわち、ステップＳ５０１に続いて、ステップＳ５０４が実行される。
【００５２】
また、読み上げデータ処理Ｓ５において、ステップＳ５０３は、選択テキストがＴＴＳエンジン３０に出力されるステップＳ５１１の前に実行されれば、他のタイミングで実行されてもよい。すなわち、ステップＳ５０３は、ステップＳ５０４からステップＳ５１０までの間に実行されてもよいし、または、ステップＳ５１０に続けて実行されてもよい。
【００５３】
さらに、読み上げデータ処理Ｓ５において、ステップＳ５０９でＹｅｓの場合、すなわち括弧内文字列の長さが所定範囲内である場合、漢字仮名置換部４４は、括弧内文字列をＴＴＳエンジン出力部４５に出力してもよい。この構成の場合、ＴＴＳエンジン出力部４５は、選択テキストの代わりに括弧内文字列をＴＴＳエンジン３０に出力する。ＴＴＳエンジン３０は、括弧内文字列を音声データに変換して、制御部４０に出力する。制御部４０は、ＴＴＳエンジン３０から入力された音声データを、スピーカ７０に出力する。この結果、スピーカ７０から、選択テキストに含まれる漢字文字列に代わりに、括弧内文字列が出力されることになる。これによっても、コンテンツの作成者の意図通りに、漢字文字列が読み上げられる効果を奏する。
【００５４】
［従来のテキスト読み上げ装置との比較］
ここでは、本実施形態に係る情報処理装置１が達成する特有の効果を説明する。そのために、図８の（ａ）および（ｂ）を参照して、本実施形態の情報処理装置１の動作と、従来のテキスト読み上げ装置の動作とを比較しながら説明する。図８の（ａ）および（ｂ）は、いずれも、情報処理装置１の表示部１０の拡大図である。図８の（ａ）では、漢字文字列の「雑歌」が選択テキストとなっている。一方、図８の（ｂ）では、漢字文字列（「雑歌」）と、それに続く括弧および該括弧内の平仮名文字列（「（ぞうか）」）とが、選択テキストとなっている。
【００５５】
前述のように、従来のテキスト読み上げ装置では、テキスト中の漢字文字列の読みをＴＴＳエンジンが選択する。従って、漢字文字列が複数の読みを有する場合（例えば、「大神」は、「おおかみ」、「だいじん」、または「おおみわ」と読める）、ＴＴＳエンジンは任意のいずれかの読みを選択する。従って、コンテンツの作成者の意図とは異なる読みが選択される可能性がある。例えば、コンテンツの作成者が「大神」を「おおみわ」と読ませること意図してコンテンツを作成したにも関わらず、ＴＴＳエンジンは「大神」の読みとして「おおかみ」を選択する場合がそうである。
【００５６】
また、従来のテキスト読み上げ装置では、図８の（ｂ）に示すように、選択テキストが、漢字文字列およびその漢字文字列の読み仮名を含む場合、コンテンツの作成者の意図とは異なり、漢字文字列とその読み仮名とがどちらも読み上げられてしまう可能性がある。例えば、コンテンツの作成者は「雑歌（ぞうか）」という選択テキストを単に「ぞうか」と読んでもらうことを意図していたにもかかわらず、これが「ぞうかぞうか」と読み上げられる場合がそうである。
【００５７】
一方、本実施形態に係る情報処理装置１では、図８の（ａ）および（ｂ）に示すように、漢字文字列（「雑歌」）の直後に、括弧開きと括弧閉じとの間に囲まれた読み仮名（「ぞうか」）が存在している場合、読み上げデータ処理Ｓ５の結果、上記漢字文字列から上記括弧閉じまでの文字列（「雑歌（ぞうか）」）の代わりに、上記読み仮名（「ぞうか」）がＴＴＳエンジン３０に入力される。そのため、情報処理装置１は、上記従来のテキスト読み上げ装置とは異なり、上記漢字文字列を、コンテンツの作成者が意図した通りの読みで読み上げることができる。さらに、選択テキストが「雑歌（ぞうか）」である場合、情報処理装置１は、上述した読み上げデータ処理Ｓ５において、選択テキストから「ぞうか」という文字列を得て、この文字列をＴＴＳエンジン３０に出力する。従って、上記選択テキストは、コンテンツの作成者の意図の通りに、「ぞうか」と読み上げられる。
【００５８】
〔変形例１〕
図９の（ａ）に、本実施形態の一変形例における表示部１０の表示例を示す。本変形例１では、図９の（ａ）に示すように、タッチされた文字列（「雑歌」）が漢字文字列であり、その漢字文字列の直後に括弧（括弧開きおよび括弧閉じ）が存在する場合、制御部４０は、上記タッチされた漢字文字列から、該漢字文字列の直後の括弧閉じまでの文字列（「雑歌（ぞうか）」）を選択テキストとする。
【００５９】
本変形例１の構成では、制御部４０は、タッチメニューＴＭ等から、ＴＴＳエンジン３０による「読み上げ」が選択された場合、括弧内の仮名文字（「ぞうか」）をＴＴＳエンジン３０に渡す。一方、「辞書検索」が選択された場合、制御部４０は、開き括弧から閉じ括弧までの文字列（「（ぞうか）」）を検索キーワードに採用しない。すなわち、制御部４０は、辞書検索が選択された場合は、選択テキストのうち、上記タッチされた文字列（「雑歌」）のみを検索キーワードとして採用する。これにより、文字列がタッチされた後、辞書検索が選択された場合に、タッチされた文字列には含まれない括弧開きから括弧閉じまでの文字列が、辞書検索エンジンによる辞書の検索範囲を不要に限定することを防止することができる。
【００６０】
〔変形例２〕
図９の（ｂ）に、本実施形態の他の変形例における表示部１０の表示例を示す。本変形例２では、制御部４０は、図９の（ｂ）に示すように、タッチされた文字列（「雑歌（ぞうか）」）の近傍にポップアップメニューＰＵＭを表示する。そして、上記タッチされた文字列のうち、選択テキストとする文字列を、ポップアップメニューＰＵＭからユーザに選択させる。
【００６１】
本変形例２の構成では、ユーザが選択テキストとする文字列を決定することができる。これにより、ユーザの所望に応じて、上記タッチされた文字列に含まれる任意の範囲の文字列の読み上げを実現することができる。
【００６２】
〔変形例３〕
本実施形態では、情報処理装置１が読み上げるテキストデータが表示部１０に表示されている構成を説明した。しかしながら、その一変形例では、情報処理装置１によって読み上げられるテキストデータは、表示部１０に表示されていなくてもよい。例えば、情報処理装置１は、ユーザがコンテンツ記憶部５０Ａ中のファイルを選択すると、そのファイル中のテキストデータを表示せずに読み上げてもよい。
【００６３】
〔実施形態２〕
本発明の他の実施形態について、図１０の（ａ）〜図１０の（ｃ）に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【００６４】
コンテンツに含まれるテキストデータには、テキストデータ中の漢字文字列と、その漢字文字列の読みを表すルビ（平仮名文字列または片仮名文字列）とを関連付けるルビ情報が、予め付与されている場合がある。図１０の（ａ）〜図１０の（ｃ）に、ルビ情報付きテキストの表示例を示す。図１０の（ａ）および図１０の（ｃ）は、ルビＲｕが非表示であるルビ情報付きテキストの表示例である。また、図１０の（ｂ）は、漢字文字列の上にルビＲｕが表示されているルビ情報付きテキストの表示例である。
【００６５】
本実施形態の情報処理装置２に備えられる制御部８０は、前記実施形態の制御部４０の読み仮名抽出部４３に代えて、読み仮名抽出部８３（仮名文字列抽出部）を含んでいる。また、記憶部５０にはルビ情報がさらに記憶されている。情報処理装置２のその他の構成は、情報処理装置１のそれと同じである。
【００６６】
実施形態１に係る読み仮名抽出部４３は、テキストデータ中の漢字文字列の直後に、括弧に囲まれた平仮名文字列または片仮名文字列が存在する場合に、その平仮名文字列または片仮名文字列を、上記漢字文字列と関連付けられた仮名文字列として抽出する。一方、本実施形態に係る読み仮名抽出部８３は、ルビ情報を参照して、漢字文字列のルビＲｕを、上記漢字文字列と関連付けられた仮名文字列として抽出する。
【００６７】
［制御部８０の動作］
以下に、図１０の（ｃ）を参照して、本実施形態に係る制御部８０の動作を説明する。図１０の（ｃ）に示すように、制御部８０は、タッチペンＰ等によりタッチされた文字列（「下人」）を選択テキストとして決定する。そして、制御部４０は、タッチされた文字列に対する動作を選択するためのタッチメニューＴＭを表示する。
【００６８】
タッチメニューＴＭから、「読み上げ」の選択肢を選択する操作が行われたとき、読み仮名抽出部８３は、ルビ情報を参照して、選択テキスト中の漢字文字列（「下人」）と関連付けられたルビＲｕ（「げにん」）を抽出する。漢字仮名置換部４４は、選択テキスト中の漢字文字列（「下人」）を、読み仮名抽出部８３によって抽出されたルビＲｕ（「げにん」）に置換する。ＴＴＳエンジン出力部４５は、漢字仮名置換部４４による置換処理後の選択テキスト（「げにん」）を、ＴＴＳエンジン３０に出力する。ＴＴＳエンジン３０に入力された選択テキストが音声データに変換された後、当該音声データに基づいてスピーカ７０から音声出力が行われる。
【００６９】
読み仮名抽出部８３は、漢字文字列と関連付けられた仮名文字列を抽出する方法を、テキストがルビ情報付きテキストであるか否かに応じて、前記実施形態１の方法と本実施形態の方法との間で変更してもよい。具体的には、読み仮名抽出部８３は、テキストにルビ情報が付与されている場合は、本実施形態のように、ルビ情報に基づいて、漢字文字列のルビを、上記漢字文字列と関連付けられた仮名文字列として抽出する。一方、テキストにルビ情報が付与されていない場合は、前記実施形態１のように、漢字文字列の直後に存在する括弧内の平仮名文字列または片仮名文字列を、上記漢字文字列と関連付けられた仮名文字列として抽出する。
【００７０】
〔実施形態３〕
本発明の他の実施形態について、図１１〜図１５に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記の各実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。
【００７１】
前記実施形態１のＴＴＳエンジン３０（図１参照）のような、日本語を読み上げるためのＴＴＳエンジン（以下、日本語ＴＴＳエンジンと呼称する）は、一般的に、日本語の音声データの他に、アルファベット１文字ずつの音声データを出力することができる。そのため、日本語ＴＴＳエンジンは、日本語の文字列だけでなく、英語の文字列も読み上げることができる。なお、日本語ＴＴＳエンジンは、英語を読み上げる場合、その英語を構成する各アルファベットの音声データを組み合わせて出力する。そのため、日本語ＴＴＳエンジンは、英語を、ネイティブのような自然な発音で、スムーズに読み上げることはできない。
【００７２】
しかしながら、日本語ＴＴＳエンジンは、日本語および英語以外の種類の言語（例えば中国語）の文字を読み上げることができない。
【００７３】
そこで、本実施形態では、日本語ＴＴＳエンジンを含む複数のＴＴＳエンジンを備え、日本語以外の言語もスムーズに読み上げられるように構成された情報処理装置を説明する。本実施形態の情報処理装置は、テキスト中の文字列の言語に基づいて、複数のＴＴＳエンジンの中から、いずれかのＴＴＳエンジンを選択する。そして、選択したＴＴＳエンジンを用いて、テキストを読み上げる。本実施形態の情報処理装置は、特に、日本語ＴＴＳエンジンを用いて、日本語のテキストを読み上げる場合、前記実施形態１で説明した読み上げデータ処理（図６および図７参照）を実行する。
【００７４】
なお、本実施形態の情報処理装置は、前記実施形態１の情報処理装置１であってもよいし、前記実施形態２の情報処理装置２であってもよい。
【００７５】
［本実施形態の情報処理装置の構成］
図１１を用いて、本実施形態の情報処理装置の構成を説明する。図１１は、本実施形態の情報処理装置が備えた制御部９４０の構成を示す構成図である。本実施形態の情報処理装置は、前記実施形態１の情報処理装置１の構成において、制御部４０の代わりに、制御部９４０を備えている。また、情報処理装置１のＴＴＳエンジン３０の代わりに、日本語ＴＴＳエンジン９３１（音声データ生成部、第１音声データ生成部）、英語ＴＴＳエンジン９３２（音声データ生成部）、および中国語ＴＴＳエンジン９３３（音声データ生成部、第２音声データ生成部）を備えている。日本語ＴＴＳエンジン９３１は、日本語および英語（アルファベット）を読み上げることができる。英語ＴＴＳエンジン９３２は、英語のみを読み上げることができる。また、中国語ＴＴＳエンジン９３３は、中国語および英語（アルファベット）を読み上げることができる。なお、日本語ＴＴＳエンジン９３１は、前記実施形態１および２のＴＴＳエンジン３０と同じ機能を有しており、前記実施形態１および２で説明したＴＴＳエンジン３０の処理と同じ処理を実行することができる。
【００７６】
［制御部９４０の詳細な構成］
図１１に示すように、制御部９４０は、前記実施形態１の制御部４０の全構成要素に加えて、言語判断部９４１（選択部）をさらに含む。
【００７７】
言語判断部９４１は、一時記憶部６０から、ユーザに選択されたテキスト、すなわち選択テキストを取得する。そして、選択テキスト中の文字列の言語の種類を判定する。また、言語判断部９４１は、選択テキスト中に複数種類の言語の文字列が存在する場合、日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、および中国語ＴＴＳエンジン９３３の中から、選択テキストを読み上げるＴＴＳエンジン（以下、選択エンジンと呼称する）を選択する選択エンジン決定処理を実行する。
【００７８】
詳細には、選択エンジン決定処理において、言語判断部９４１は、まず、選択テキストの最初の文字が何語であるかを判定する。すなわち、言語判断部９４１は、最初の文字の言語の種類を判定する。そして、判定した文字の言語を示す情報（言語設定）を保持する。次に、選択テキストの二番目の文字が何語であるかを判定する。そして、言語設定を、最初の文字の言語を示す情報から、二番目の文字の言語を示す情報に更新する。以下、同様に、選択テキストの文字を、一文字ずつ、順番に、その文字が何語であるかを判定するとともに、その判定結果に基づいて、言語設定を更新してゆく。
【００７９】
言語判断部９４１は、選択テキストの最後の文字が何語であるかを判定し、その判定結果に基づいて、言語設定を更新したとき、その時点における言語設定に応じて、選択エンジンを決定する。例えば、上記の時点における言語設定が日本語である場合、言語判断部９４１は、選択エンジンとして、日本語ＴＴＳエンジン９３１を選択する。また、上記の時点における言語設定が英語、中国語である場合、言語判断部９４１は、選択エンジンとして、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３をそれぞれ選択する。
【００８０】
上記選択エンジン決定処理によれば、例えば、選択テキストにおいて、最初の一部が英語の文字列であり、中間の一部が日本語の文字列であり、最後の一部が中国語の文字列である場合、言語判断部９４１は、日本語ＴＴＳエンジン９３１を選択する。
【００８１】
このように、言語判断部９４１は、選択テキスト内に複数種類の言語の文字列が存在する場合、日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、および中国語ＴＴＳエンジン９３３から、選択テキストに含まれる複数種類の言語の文字列を読み上げることができる１つのＴＴＳエンジンを選択する。
【００８２】
ところで、前述したように、日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３には、それぞれ、読み上げることができない文字が存在する。そのような文字を、ここでは外字と呼ぶ。例えば、日本語ＴＴＳエンジン９３１にとって、日本語および英語以外の言語（例えば中国語）の文字が、外字に該当する。また、中国語ＴＴＳエンジン９３３にとって、中国語および英語以外の言語（例えば日本語）の文字が、外字に該当する。
【００８３】
そこで、選択テキストに外字が含まれる場合、言語判断部９４１は、選択テキストの最初の文字から、その外字の直前の文字までの文字列を、新しい選択テキストにする。換言すれば、言語判断部９４１は、選択テキストを更新することによって、選択エンジンが、更新後の選択テキストの全体を読み上げることができるようにする。それ以外に、言語判断部９４１は、選択テキストの最初の文字から、改行の直前の文字までの文字列を、新しい選択テキストにしてもよい。
【００８４】
言語判断部９４１は、選択エンジンとして、日本語ＴＴＳエンジン９３１を選択した場合、更新後の選択テキストを漢字抽出部４２に出力する。また、選択エンジンとして、英語ＴＴＳエンジン９３２または中国語ＴＴＳエンジン９３３を選択した場合、更新後の選択テキストと、言語設定とを、ＴＴＳエンジン出力部４５に出力する。
【００８５】
ＴＴＳエンジン出力部４５は、言語判断部９４１から入力された言語設定に応じて、英語ＴＴＳエンジン９３２または中国語ＴＴＳエンジン９３３に、言語判断部９４１から入力された選択テキストを出力する。具体的には、ＴＴＳエンジン出力部４５は、言語設定が英語である場合、英語ＴＴＳエンジン９３２に、選択テキストを出力する。また、言語設定が中国語である場合、中国語ＴＴＳエンジン９３３に、選択テキストを出力する。なお、選択テキストが入力された漢字抽出部４２が実行する処理は、前記実施形態１で説明したので、その処理の説明を省略する。
【００８６】
［選択エンジンの決定方法］
ここでは、言語判断部９４１が、複数のＴＴＳエンジンの中から、選択エンジンを決定する方法を具体的に説明する。
【００８７】
言語判断部９４１は、日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、および中国語ＴＴＳエンジン９３３の中から、最も長い選択テキストの範囲を読み上げることができるＴＴＳエンジンを、選択エンジンとして選択する。
【００８８】
例えば、選択テキストが日本語および英語を含む場合、言語判断部９４１は、選択エンジンとして、英語ＴＴＳエンジン９３２あるいは中国語ＴＴＳエンジン９３３ではなく、日本語ＴＴＳエンジン９３１を選択する。なぜならば、英語ＴＴＳエンジン９３２および中国語ＴＴＳエンジン９３３は、選択テキスト中の英語のみを読み上げることができる。一方、日本語ＴＴＳエンジン９３１は、選択テキスト中の日本語および英語の両方を読み上げることができる。従って、日本語ＴＴＳエンジン９３１は、英語ＴＴＳエンジン９３２および中国語ＴＴＳエンジン９３３よりも、長い選択テキストの範囲を読み上げることができるためである。
【００８９】
同様に、選択テキストが中国語および英語を含む場合、言語判断部９４１は、選択エンジンとして、日本語ＴＴＳエンジン９３１あるいは英語ＴＴＳエンジン９３２ではなく、中国語ＴＴＳエンジン９３３を選択する。
【００９０】
また、選択テキストが日本語および中国語を含む場合、言語判断部９４１は、選択テキストにおいて、他方の言語よりも前に出現する言語を読み上げることができるＴＴＳエンジンを、選択エンジンとして選択する。例えば、選択テキストにおいて、日本語、中国語がこの順番で出現する場合、言語判断部９４１は、日本語ＴＴＳエンジン９３１を、選択エンジンとして選択する。
【００９１】
なお、選択テキストが、英語を含むが、日本語および中国語を含まない場合、言語判断部９４１は、選択エンジンとして、英語ＴＴＳエンジン９３２を選択する。なぜならば、英語ＴＴＳエンジン９３２は、日本語ＴＴＳエンジン９３１および中国語ＴＴＳエンジン９３３よりも、英語を自然かつスムーズに読み上げることができるためである。
【００９２】
選択エンジンの決定方法は、上述した方法に限定されない。例えば、別の構成では、言語判断部９４１は、選択テキストにおける日本語の部分、英語の部分、中国語の部分を読み上げる選択エンジンとして、それぞれ、日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３を選択してもよい。
【００９３】
この構成の場合、選択テキスト中の日本語、英語、中国語が全て読み上げられる。さらに、選択テキストにおいて、日本語、英語、中国語の各部分が、その言語を読み上げるために適合されたＴＴＳエンジンでそれぞれ読み上げられるので、上記の各部分が自然かつスムーズに読み上げられる。
【００９４】
［読み上げの具体例］
図１２〜図１４を用いて、本実施形態の情報処理装置によって、選択テキストが読み上げられる具体例を説明する。図１２〜図１４は、それぞれ、本実施形態の情報処理装置が備えた表示部１０（図２参照）を示す図である。上記の各図では、表示部１０の画面に表示されたテキストの一部がタッチペンＰで選択されており、この選択されたテキスト（選択テキスト）に対して実行することができる処理を示すタッチメニューＴＭが表示されている。
【００９５】
図１２に示す選択テキスト
【００９６】
【表１】
2015064543.tif 000003
【００９７】
は、日本語、英語、中国語および記号で構成されている。言語判断部９４１は、この選択テキストを読み上げる選択エンジンとして、日本語ＴＴＳエンジン９３１を選択する。選択エンジンが読み上げる文字列の始端は「今日（こんにち）は」であり、終端は「Ｈｉ！」である。図１２に示す選択テキストにおいて、「Ｈｉ！」の後ろの中国語は、日本語ＴＴＳエンジン９３１にとって外字であるので、読み上げられない。
【００９８】
ここで、日本語ＴＴＳエンジン９３１は、日本語の文字列「今日（こんにち）は」を読み上げる際、前記実施形態１で説明した読み上げデータ処理（図６および図７参照）を実行する。そして、漢字文字列「今日」の代わりに、仮名文字列「こんにち」を読み上げる。
【００９９】
図１３に示す選択テキスト「Ｈｅｌｌｏ！／Ｈｉ！」は、英語および記号で構成されている。言語判断部９４１は、この選択テキストを読み上げる選択エンジンとして、英語ＴＴＳエンジン９３２を選択する。選択エンジンが読み上げる文字列の始端は「Ｈｅｌｌｏ！」であり、終端は「Ｈｉ！」である。
【０１００】
図１４に示す選択テキスト
【０１０１】
【表２】
2015064543.tif 000004
【０１０２】
は、英語、中国語および記号で構成されている。言語判断部９４１は、この選択テキストを読み上げる選択エンジンとして、中国語ＴＴＳエンジン９３３を選択する。選択エンジンが読み上げる文字列の始端は「Ｈｅｌｌｏ！」であり、終端は、
【０１０３】
【表３】
2015064543.tif 000005
【０１０４】
である。
【０１０５】
［選択エンジン決定処理の詳細］
図１５を用いて、言語判断部９４１が実行する選択エンジン決定処理を説明する。図１５は、選択エンジン決定処理の流れを示すフローチャートである。ここで、言語判断部９４１は、選択エンジン決定処理を実行する前に、一時記憶部６１から、選択テキストを予め取得している。また、初期段階では、言語設定は英語であり、変数ｎは１であるとする。
【０１０６】
選択エンジン決定処理では、言語判断部９４１は、まず、選択テキストのｎ番目の文字（あるいは記号）が、選択テキストの最後の文字または判定終了記号であるか否かを判定する（Ｓ１００）。ここで、判定終了記号とは、外字であってもよいし、あるいは改行記号であってもよい。
【０１０７】
選択テキストのｎ番目の文字が、選択テキストの最後の文字または判定終了記号である場合（Ｓ１００でＹｅｓ）、言語判断部９４１は、その時点の言語設定に基づいて、選択エンジンを決定するとともに、選択テキストのｎ番目の文字、または、ｎ番目の文字の直前の文字を、選択エンジンが読み上げる文字列の終端として決定する（Ｓ６００）。そして、選択エンジン決定処理を終了する。
【０１０８】
一方、選択テキストのｎ番目の文字が、選択テキストの最後の文字または判定終了記号ではない場合（Ｓ１００でＮｏ）、言語判断部９４１は、選択テキストのｎ番目の文字が、アルファベットまたは記号（判定終了記号以外の記号）であるか否かを判定する（Ｓ２００）。選択テキストのｎ番目の文字が、アルファベットまたは記号である場合（Ｓ２００でＹｅｓ）、言語判断部９４１は、変数ｎに１を加算する（Ｓ５００）。そして、選択エンジン決定処理は、次の文字が選択テキストの最後の文字または終了判定文字であるか否かを判定するステップＳ１００の処理に戻る。
【０１０９】
一方、選択テキストのｎ番目の文字が、アルファベットまたは記号ではない場合（Ｓ２００でＮｏ）、言語判断部９４１は、ｎ番目の文字が日本語であるか否かを判定する（Ｓ３００）。ｎ番目の文字が日本語である場合（Ｓ３００でＹｅｓ）、言語判断部９４１は、その時点の言語設定が何語（Ａ：日本語、Ｂ、英語、Ｃ：それ以外の言語）であるかを判定する（Ｓ３１０）。
【０１１０】
ステップＳ３１０の時点の言語設定が日本語である場合（Ｓ３１０でＡ）、言語判断部９４１は、変数ｎに１を加算する（Ｓ５００）。そして、選択エンジン決定処理は、次の文字が選択テキストの最後の文字または終了判定文字であるか否かを判定するステップＳ１００の処理に戻る。
【０１１１】
また、ステップＳ３１０の時点の言語設定が英語である場合（Ｓ３１０でＢ）、言語判断部９４１は、言語設定を日本語に変更する（Ｓ３２０）。その後、言語判断部９４１は、変数ｎに１を加算する（Ｓ５００）。そして、選択エンジン決定処理は、次の文字が選択テキストの最後の文字または終了判定文字であるか否かを判定するステップＳ１００の処理に戻る。
【０１１２】
また、ステップＳ３１０の時点の言語設定が日本語および英語以外の言語である場合（Ｓ３１０でＣ）、その時点の言語設定に基づいて、選択エンジンを決定するとともに、選択テキストのｎ番目の文字の直前の文字を、選択エンジンが読み上げる文字列の終端として決定する（Ｓ６００）。そして、選択エンジン決定処理を終了する。
【０１１３】
ステップＳ３００において、ｎ番目の文字が日本語ではない場合（Ｓ３００でＮｏ）、言語判断部９４１は、ｎ番目の文字が中国語であるか否かを判定する（Ｓ４００）。ｎ番目の文字が中国語である場合（Ｓ４００でＹｅｓ）、言語判断部９４１は、ステップＳ４００の時点の言語設定が何語（Ａ：中国語、Ｂ、英語、Ｃ：それ以外の言語）であるかを判定する（Ｓ４１０）。
【０１１４】
ステップＳ４１０の時点の言語設定が中国語である場合（Ｓ４１０でＡ）、言語判断部９４１は、変数ｎに１を加算する（Ｓ５００）。そして、選択エンジン決定処理は、次の文字が選択テキストの最後の文字または終了判定文字であるか否かを判定するステップＳ１００の処理に戻る。
【０１１５】
また、ステップＳ４１０の時点の言語設定が英語である場合（Ｓ４１０でＢ）、言語判断部９４１は、言語設定を中国語に変更する（Ｓ４２０）。その後、言語判断部９４１は、変数ｎに１を加算する（Ｓ５００）。そして、選択エンジン決定処理は、次の文字が選択テキストの最後の文字または終了判定文字であるか否かを判定するステップＳ１００の処理に戻る。
【０１１６】
また、ステップＳ４１０の時点の言語設定が中国語および英語以外の言語である場合（Ｓ４１０でＣ）、その時点の言語設定に基づいて、選択エンジンを決定するとともに、選択テキストのｎ番目の文字の直前の文字を、選択エンジンが読み上げる文字列の終端として決定する（Ｓ６００）。そして、選択エンジン決定処理を終了する。
【０１１７】
なお、言語判断部９４１が選択エンジンを決定する方法は、上述した方法に限られない。例えば、言語判断部９４１は、選択テキストの最初の文字を読み上げることができるＴＴＳエンジンのうち、所定の基準より多くの文字列を読み上げることができる１または複数のＴＴＳエンジンの中から、１つのＴＴＳを選択してもよい。例えば、所定の基準は、選択テキストに含まれる文字列数の７割であってよい。この構成の場合、言語判断部９４１は、７割以上の文字列を読み上げるＴＴＳエンジンのいずれか１つを選択する。
【０１１８】
あるいは、言語判断部９４１は、選択テキスト中の着目した文字（例えば、読み上げ可能な最初の文字）に対応したＴＴＳエンジンのうち、着目した文字以降の文字列から、より多くの文字列の音声データを生成できるＴＴＳエンジンを選択してもよい。ここで、読み上げ可能な文字とは、記号などの読み上げ不可能な文字ではなく、アルファベット、漢字などの読み上げ可能な文字を意味する。
【０１１９】
〔実施形態４〕
情報処理装置１および２が備える各制御ブロック（特に、漢字抽出部４２、読み仮名抽出部４３・８３、漢字仮名置換部４４）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０１２０】
後者の場合、情報処理装置１および２は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、たとえば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１２１】
〔まとめ〕
本発明の態様１に係るテキスト読み上げ装置（情報処理装置１、２）は、表示部（１０）に表示するためのテキストデータを音声データに変換し、変換した音声データを出力することによって、上記テキストデータを読み上げるテキスト読み上げ装置であって、１つ以上の言語の音声データをそれぞれ生成する複数の音声データ生成部（日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３）と、選択された上記テキストデータの範囲内の文字列の言語の種類を判定し、上記複数の音声データ生成部から、上記テキストデータに含まれる複数種類の言語の文字列の音声データを生成できる１つの音声データ生成部を選択する選択部（言語判断部９４１）と、を備えている。
【０１２２】
上記の構成によれば、選択されたテキストデータの範囲内に含まれる文字列の言語の種類に基づき、複数の音声データ生成部の中から、テキストデータに含まれる言語に関し、複数種類の言語の音声データを生成することができる１つの音声データ生成部が選択される。
【０１２３】
そのため、選択されたテキストデータの範囲内に複数の言語の文字列が含まれる場合であっても、テキストデータの複数種類の言語の読み上げに適合した音声データ生成部を用いて、テキストデータ中の文字列の音声データが生成される。従って、複数種類の言語の文字列を含むテキストデータをスムーズに読み上げることができる。
【０１２４】
本発明の態様２に係るテキスト読み上げ装置（情報処理装置１、２）は、上記態様１において、上記選択部（言語判断部９４１）は、選択された上記テキストデータ中の着目する文字列の音声データを生成できる音声データ生成部から、選択された上記テキストデータにおいて、より多くの文字列の音声データを生成できる音声データ生成部（日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３）を選択してもよい。
【０１２５】
上記の構成によれば、選択された上記テキストデータ中の着目する文字列の音声データを生成でき、かつ、選択された上記テキストデータにおいて、より多くの文字列の音声データを生成できる音声データ音声データ生成部を選択することができる。
【０１２６】
上記の構成において、着目する文字列は、選択されたテキストデータの先頭から見て、音声データを生成できる最初の文字であってもよい。
【０１２７】
この場合、選択されたテキストデータの先頭から見て、音声データを生成できる最初の文字（例えば、アルファベットまたは漢字）に対応した音声データ生成部、すなわち、音声データを生成可能な最初の文字の音声データを生成することができる音声データ生成部が選択される。
【０１２８】
また、先頭から見て音声データを生成可能な最初の文字に対応する音声データ生成部が複数ある場合、それらの音声データ生成部のうち、最初の文字以降の文字列において、より多くの文字列の音声データを生成可能な音声データ生成部を選択することができる。
【０１２９】
本発明の態様３に係るテキスト読み上げ装置（情報処理装置１、２）は、上記態様１または２において、上記複数の音声データ生成部（日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３）は、第１の言語および第２の言語の音声データを生成する第１音声データ生成部と、第１の言語および第３の言語の音声データを生成する第２音声データ生成部とを含んでおり、上記選択部は、選択された上記テキストデータの範囲に第１の言語が含まれる場合において、(i)さらに第２の言語が含まれる場合、上記第１音声データ生成部を選択し、また、(ii)さらに第３の言語が含まれる場合、上記第２音声データ生成部を選択してもよい。
【０１３０】
上記の構成によれば、第１音声データ生成部によって、第１の言語および第２の言語の文字列の音声データが生成される一方、第２音声データ生成部によって、第１の言語および第３の言語の文字列の音声データが生成される。
【０１３１】
そのため、第１の言語および第２の言語を含むテキストデータ、および、第１の言語および第３の言語を含むテキストデータをスムーズに読み上げることができる。
【０１３２】
本発明の態様４に係るテキスト読み上げ装置（情報処理装置１、２）は、上記態様１〜３のいずれかにおいて、選択された上記テキストデータの範囲内に、上記選択部（言語判断部９４１）により選択された上記音声データ生成部（日本語ＴＴＳエンジン９３１、英語ＴＴＳエンジン９３２、中国語ＴＴＳエンジン９３３）には音声データを生成することができない文字列が存在する場合、上記選択部は、その文字列の音声データを生成できる上記音声データ生成部をさらに選択してもよい。
【０１３３】
上記の構成によれば、選択されたテキストデータの範囲内に、選択部により選択された音声データ生成部には音声データを生成することができない文字列が存在する場合であっても、その文字列の音声データを生成する音声データ生成部が新たに選択される。そのため、選択されたテキストデータにおいて、より広い範囲の文字列が読み上げられる。
【０１３４】
例えば、選択されたテキストデータに英語（第１の言語）、日本語（第２の言語）、および中国語（第３の言語）の文字列が含まれる場合、各言語の文字列の読み上げに適合した音声データ生成部によって、各言語の文字列が読み上げられる。従って、３種類以上の言語の文字列を含むテキストをスムーズに読み上げることができる。
【０１３５】
本発明の態様５に係るテキスト読み上げ装置（情報処理装置１、２）は、表示部（１０）に表示するためのテキストデータを音声データに変換し、変換した音声データを出力することによって、上記テキストデータを読み上げるテキスト読み上げ装置であって、漢字文字列および仮名文字列を含む上記テキストデータを上記表示部に表示している時に、選択された該テキストデータの範囲内の上記漢字文字列に関連付けられた上記仮名文字列を、該テキストデータから読み仮名として抽出する仮名文字列抽出部（読み仮名抽出部４３、８３）と、上記漢字文字列の代わりに、上記仮名文字列抽出部によって抽出された上記仮名文字列に基づいて、上記漢字文字列を読み上げるための音声データを生成する漢字文字列音声データ生成部（ＴＴＳエンジン３０および漢字仮名置換部４４）と、を備えている。
【０１３６】
上記の構成によれば、選択されたテキストデータ中の範囲内の漢字文字列が読み上げられる場合、まず、上記漢字文字列と関連付けられている仮名文字列が、上記テキストデータ中から読み仮名として抽出される。ここで、仮名文字抽出部は、例えば、漢字文字列の直後に存在する括弧で囲まれた平仮名または片仮名を、上記漢字文字列の読み仮名として指定されている仮名文字列として抽出してもよい。
【０１３７】
また、当該抽出された上記仮名文字列が音声データに変換される。そして、上記漢字文字列については、上記仮名文字列から変換された音声データに基づいて読み上げが行われる。言い換えれば、上記漢字文字列については、上記仮名文字列が示す読みで、読み上げが行われる。
【０１３８】
これにより、テキストデータ中の漢字文字列に複数の読みが存在する場合であっても、上記テキストデータ以外を参照することなく、上記漢字文字列をより正しい読み（すなわち、コンテンツの作成者が意図する読み）で読み上げることができる。その結果、漢字文字列を含むテキストの読み上げ精度を向上させることができる。
【０１３９】
本発明の態様６に係るテキスト読み上げ装置（情報処理装置１）は、上記態様５において、上記仮名文字列抽出部（読み仮名抽出部４３）は、上記漢字文字列の直後に存在する所定の第１の記号と、該第１の記号の後に存在する所定の第２の記号とによって囲まれた仮名文字列を抽出してもよい。
【０１４０】
上記の構成によれば、漢字文字列の直後に存在する第１の記号および第２の記号に囲まれた仮名文字列が、上記漢字文字列に関連付けられた仮名文字列として抽出される。例えば、第１の記号および第２の記号が括弧開きおよび括弧閉じ「（）」であり、テキストが「大神（おおみわ）」である場合、「大神」という漢字文字列の直後に存在する括弧「（）」に囲まれた「おおみわ」という仮名文字列が、上記漢字文字列に関連付けられた仮名文字列として抽出される。そして、「大神」という漢字文字列の代わりに、「おおみわ」という仮名文字列が読み上げられる。
【０１４１】
ここで、漢字文字列の直後に存在する括弧に囲まれた仮名文字列は、上記漢字文字列の読み仮名である可能性が高い。例えば、上述した「大神（おおみわ）」というテキストでは、「おおみわ」という仮名文字列が、「大神」という漢字文字列の読み仮名になっている。この例の場合、「大神」という複数の読みを有する漢字文字列を、「おおかみ」でも「だいじん」でもなく、コンテンツの作成者の意図する通りに「おおみわ」と読み上げることができる。また、この例以外のテキストであっても、漢字文字列の直後に存在する括弧に囲まれた仮名文字列が、上記漢字文字列の読み仮名になっているテキストであれば、上記漢字文字列を正しく読み上げることができる。なお、所定の第１および第２の記号は、括弧開きおよび括弧閉じ「（）」以外に、例えば、「＜＞」、または「≪≫」であってもよい。あるいは、第１の記号と第２の記号とは、同じ記号であってもよいし、互いに無関係の記号（例えば、＄と＃）であってもよい。
【０１４２】
本発明の態様７に係るテキスト読み上げ装置（情報処理装置１）は、上記態様５または６において、上記テキストデータは、該テキストデータ中の漢字とその読み仮名とを関連付けるタグ情報を有しており、上記仮名文字列抽出部（読み仮名抽出部４３）は、上記タグ情報を参照して、上記テキストデータ中の上記漢字文字列の読み仮名を抽出してもよい。
【０１４３】
上記の構成によれば、タグ情報に基づいて、テキストデータ中の漢字文字列の読み仮名が抽出され、該漢字文字列の代わりに読み上げられる。これにより、テキスト読み上げ装置が、テキストデータ中の漢字文字列を、正しい読みで読み上げることができる。
【０１４４】
本発明の態様８に係るテキスト読み上げ装置（情報処理装置２）は、上記態様５において、上記テキストデータは、上記漢字文字列に付されたルビを示すルビ情報を有しており、上記仮名文字列抽出部（読み仮名抽出部８３）は、上記ルビ情報を参照して、上記漢字文字列のルビを、該漢字文字列と関連付けられた上記仮名文字列として抽出してもよい。
【０１４５】
上記の構成によれば、テキストデータに含まれるルビ情報に基づいて、テキストデータ中の漢字文字列のルビが抽出される。これにより、テキストデータ中の漢字を、コンテンツの作成者が意図した読みで読み上げることができる。なぜならば、ルビ情報は、コンテンツの作成者が作成する場合が多いと考えられるためである。
【０１４６】
本発明の態様９に係るテキスト読み上げ装置（情報処理装置１、２）は、上記態様５〜８のいずれかにおいて、上記テキストデータから上記漢字文字列を抽出する漢字文字列抽出部（漢字文字列抽出部４２）をさらに備え、上記仮名文字列抽出部（読み仮名抽出部４３、８３）は、上記漢字文字列抽出部によって抽出された上記漢字文字列に関連付けられた上記仮名文字列を抽出してもよい。
【０１４７】
上記の構成によれば、漢字文字列抽出部によって抽出された漢字文字列の代わりに、上記テキストデータにおいて該漢字文字列と関連付けられた仮名文字列が読み上げられる。この構成は、例えば、テキスト読み上げ装置がテキストデータを朗読する場合に、適用することができる。テキスト読み上げ装置は、テキストデータを朗読する場合、テキストデータ中の文字列を最初から順番に読み上げてゆく。朗読の間、次に読み上げられる文字列が漢字文字列である場合に、漢字文字列抽出部がその漢字文字列を抽出する。そして、テキスト読み上げ装置は、上記漢字文字列の代わりに、該漢字文字列の読み仮名を読み上げる。これにより、テキスト読み上げ装置は、テキストデータ中に、複数の読みを有する漢字文字列が存在する場合であっても、該テキストデータを正しい読み（すなわち、コンテンツの作成者が意図する読み）で朗読することができる。
【０１４８】
本発明の態様１０に係るテキスト読み上げ装置（情報処理装置１、２）は、上記態様５において、上記表示部をさらに備え、上記仮名文字列抽出部（読み仮名抽出部４３、８３）は、表示されている上記テキストデータからユーザによって選択された上記漢字文字列に関連付けられた上記仮名文字列を抽出してもよい。
【０１４９】
上記の構成によれば、ユーザによって、テキスト中の漢字文字列が選択される。そして、ユーザに選択された漢字文字列の代わりに、上記テキストデータにおいて該漢字文字列と関連付けられた仮名文字列が読み上げられる。前述のように、上記漢字文字列に関連付けられた仮名文字列として、上記漢字文字列の読み仮名が抽出される構成とした場合、上記漢字文字列の代わりに、該漢字文字列の読み仮名が読み上げられる。
【０１５０】
これにより、ユーザが読み上げを所望する漢字文字列を選択したとき、その漢字文字列が複数の読みを有する場合であっても、テキスト読み上げ装置は、上記漢字文字列を正しい読みで読み上げることができる。
【０１５１】
本発明の態様１１に係るテキスト読み上げ装置の制御方法は、表示部に表示するためのテキストデータを音声データに変換し、変換した音声データを出力することによって、上記テキストデータを読み上げるテキスト読み上げ装置の制御方法であって、漢字文字列および仮名文字列を含む上記テキストデータを上記表示部に表示している時に、選択された該テキストデータの範囲内の上記漢字文字列に関連付けられた上記仮名文字列を、該テキストデータから読み仮名として抽出する仮名文字列抽出ステップと、上記漢字文字列の代わりに、上記仮名文字列抽出ステップにおいて抽出された上記仮名文字列に基づいて、上記漢字文字列を読み上げるための音声データを生成する音声データ生成ステップと、を含んでいる。
【０１５２】
上記の構成によれば、態様５に係るテキスト読み上げ装置と同様の効果を奏することができる。
【０１５３】
本発明の各態様に係る情報処理装置（１、２）は、コンピュータによって実現してもよく、この場合には、コンピュータを上記テキスト読み上げ装置が備える各手段として動作させることにより上記テキスト読み上げ装置をコンピュータにて実現させるテキスト読み上げ装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【０１５４】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【産業上の利用可能性】
【０１５５】
本発明は、テキストを読み上げる各種のテキスト読み上げ装置、例えば電子辞書、電子書籍端末、およびタブレット端末等に好適に利用することができる。
【符号の説明】
【０１５６】
１、２  情報処理装置（テキスト読み上げ装置）
３０  ＴＴＳエンジン（漢字文字列音声データ生成部）
４２  漢字抽出部（漢字文字列抽出部）
４３、８３  読み仮名抽出部（仮名文字列抽出部）
４４  漢字仮名置換部（漢字文字列音声データ生成部）
９３１  日本語ＴＴＳエンジン（音声データ生成部、第１音声データ生成部）
９３２  英語ＴＴＳエンジン（音声データ生成部）
９３３  中国語ＴＴＳエンジン（音声データ生成部、第２音声データ生成部）
９４１  言語判断部（選択部）
【図１】
2015064543.tif 000006
【図２】
2015064543.tif 000007
【図３】
2015064543.tif 000008
【図４】
2015064543.tif 000009
【図５】
2015064543.tif 000010
【図６】
2015064543.tif 000011
【図７】
2015064543.tif 000012
【図８】
2015064543.tif 000013
【図９】
2015064543.tif 000014
【図１０】
2015064543.tif 000015
【図１１】
2015064543.tif 000016
【図１２】
2015064543.tif 000017
【図１３】
2015064543.tif 000018
【図１４】
2015064543.tif 000019
【図１５】
2015064543.tif 000020