(57)【要約】【課題】  文字コード体系による制約を抑止しつつ、禁則処理を好適に行うことができるようになる表示装置を提供すること。【解決手段】  フォントデータ記憶部５０は、文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶する。文字列表示部５４は、複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する。改行制御部５２は、文字列表示部５４による文字列の表示における改行位置を、当該文字列に含まれる文字に係る改行制御情報に基づいて決定する。【選択図】        図２
2006163651.tif 000002
【特許請求の範囲】
【請求項１】
文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶するフォントデータ記憶手段と、
前記複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する文字列表示手段と、
前記文字列表示手段による前記文字列の表示における改行位置を、当該文字列に含まれる文字に係る前記改行制御情報に基づいて決定する改行制御手段と、
を含むことを特徴とする表示装置。
【請求項２】
請求項１に記載の表示装置において、
前記改行制御情報は、その文字の前における改行を制御するための第１改行制御情報と、その文字の後における改行を制御するための第２改行制御情報と、を含み、
前記改行制御手段は、前記文字列における少なくとも一部の隣接文字について、当該隣接文字のうちの先の文字に係る前記第２改行制御情報と、当該隣接文字のうちの後の文字に係る前記第１改行制御情報と、に基づいて所定の処理を実行し、その実行結果に基づいて前記改行位置を決定する、
ことを特徴とする表示装置。
【請求項３】
請求項２に記載の表示装置において、
前記第１及び第２改行制御情報はともに数値情報であり、
前記改行制御手段は、前記文字列における少なくとも一部の隣接文字について、当該隣接文字のうちの先の文字の前記第２改行制御情報と、当該隣接文字のうちの後の文字の前記第１改行制御情報と、に基づいて所定の演算を行い、その演算結果に基づいて前記改行位置を決定する、
ことを特徴とする表示装置。
【請求項４】
請求項１乃至３のいずれかに記載の表示装置において、
前記フォントレコードは、文字の種別を示す種別情報をさらに含み、
前記改行制御手段は、前記改行位置を前記文字列に含まれる文字に係る前記種別情報にさらに基づいて決定する、
ことを特徴とする表示装置。
【請求項５】
文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶してなるフォントデータ記憶手段から前記フォントデータを読み出すためのフォントデータ読み出しステップと、
前記フォントデータ読み出しステップによって読み出されるフォントデータに含まれる複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を文字列表示手段に表示させる文字列表示ステップと、
前記文字列表示手段による前記文字列の表示における改行位置を、当該文字列に含まれる文字に係る前記改行制御情報に基づいて決定する改行制御ステップと、
を含むことを特徴とする表示装置の制御方法。
【請求項６】
文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータ、に含まれる前記複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する文字列表示手段、及び、
前記文字列表示手段による前記文字列の表示における改行位置を、当該文字列に含まれる文字に係る前記改行制御情報に基づいて決定する改行制御手段、
としてコンピュータを機能させるためのプログラム。
【請求項７】
文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は表示装置、表示装置の制御方法、プログラム及びフォントデータに関する。
【背景技術】
【０００２】
文字列を表示する携帯ゲーム機、家庭用ゲーム装置、携帯情報端末（ＰＤＡ）やパーソナルコンピュータなどの表示装置が知られている。
【０００３】
上記のような表示装置としては、文字列表示領域の横幅に応じて改行を行う場合に、行の先頭となることが好ましくない文字が行の先頭となることや、行の末尾となることが好ましくない文字が行の末尾となることを抑止するもの（禁則処理を行うもの）が知られている。すなわち、行頭又は行末に表示されることが好ましくない文字の文字コードを保持しておき、その文字コードで識別される文字が行頭又は行末とならないように制御するものが知られている。
【０００４】
また、上記のような表示装置としては、表示する文字のフォントデータに基づいてその文字に関連する関連画像をリアルタイムに生成し、その関連画像を文字に関連づけて表示するものが知られている。例えば、文字の影をリアルタイムに生成し、その影を文字に付して影付文字を表示するものなどが知られている。
【０００５】
さらに、上記のような表示装置としては、画面表示される文字列の一部をユーザが好適に指定できるように支援するものが知られている。より具体的には、ユーザによって指定された文字列表示領域における位置と、文字列を構成する各文字の文字コードと、に基づいて文字列を解析することによって、ユーザが指定しようとする部分を推定し、その部分を区別表示するものが知られている。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記のような禁則処理を行う表示装置は、行頭又は行末に表示されないようにする文字の文字コードをあらかじめ設定しておく必要がある。このため、禁則処理が文字コード体系による制約を受ける場合があった。例えば、未知の文字コード体系の文字を表示する場合には禁則処理を行うことができない場合があった。
【０００７】
また、上記のような関連画像を文字に関連づけて表示する表示装置は、文字に関連づけて表示する関連画像をリアルタイムに生成するため、その処理負荷は軽いものとはなっていなかった。
【０００８】
また、上記のような文字列の一部の指定を支援する表示装置は、文字コードに基づいて文字列の解析を行うため、文字コード体系による制約を受ける場合があった。
【０００９】
本発明は上記課題に鑑みてなされたものであって、その第１の目的は、文字コード体系による制約を抑止しつつ、禁則処理を好適に行うことができるようになる表示装置、表示装置の制御方法、プログラム及びフォントデータを提供することにある。
【００１０】
また、第２の目的は、文字に関連する関連画像を処理負荷を軽減しつつ表示させることができるようになる表示装置、表示装置の制御方法、プログラム及びフォントデータを提供することにある。
【００１１】
さらに、第３の目的は、文字コード体系による制約を抑止しつつ、文字列の一部の指定をユーザが好適に行えるようになる表示装置、表示装置の制御方法、プログラム及びフォントデータを提供することにある。
【課題を解決するための手段】
【００１２】
上記課題を解決するために、本発明に係る表示装置は、文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶するフォントデータ記憶手段と、前記複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する文字列表示手段と、前記文字列表示手段による前記文字列の表示における改行位置を、当該文字列に含まれる文字に係る前記改行制御情報に基づいて決定する改行制御手段と、を含むことを特徴とする。
【００１３】
また、本発明に係る表示装置の制御方法は、文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶してなるフォントデータ記憶手段から前記フォントデータを読み出すためのフォントデータ読み出しステップと、前記フォントデータ読み出しステップによって読み出されるフォントデータに含まれる複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を文字列表示手段に表示させる文字列表示ステップと、前記文字列表示手段による前記文字列の表示における改行位置を、当該文字列に含まれる文字に係る前記改行制御情報に基づいて決定する改行制御ステップと、を含むことを特徴とする。
【００１４】
また、本発明に係るプログラムは、文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータ、に含まれる前記複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する文字列表示手段、及び、前記文字列表示手段による前記文字列の表示における改行位置を、当該文字列に含まれる文字に係る前記改行制御情報に基づいて決定する改行制御手段、として、携帯ゲーム機、家庭用ゲーム機、業務用ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）やパーソナルコンピュータなどのコンピュータを機能させるためのプログラムである。
【００１５】
また、本発明に係るフォントデータは、文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータである。
【００１６】
また、本発明に係る情報記憶媒体は、上記プログラム及び上記フォントデータのうちの少なくとも一方を記録したコンピュータ読み取り可能な情報記憶媒体である。
【００１７】
本発明では、文字を表示するためのフォント情報と、当該文字の前及び／又は後における改行を制御するための改行制御情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータが記憶される。また、複数のフォントレコードの全部又は一部に係るフォント情報に基づいて文字列が表示される。そして、その文字列の表示における改行位置が、当該文字列に含まれる文字に係る改行制御情報に基づいて決定する。本発明によれば、文字の前及び／又は後における改行を制御するための改行制御情報をフォントデータに含ませることが可能となり、文字列を表示する場合における改行位置がこの改行制御情報に基いて決定されるため、文字コード体系による制約を抑止しつつ、禁則処理を行うことができるようになる。
【００１８】
なお、本明細書において、文字とは、漢字、平仮名、片仮名、数字などを含むものである。また、例えばアルファベット、キリル文字、ハングル文字、タイ語文字、繁体文字や簡体文字などの他の言語に対応したものを含むものである。さらに、例えば“（”や“）”などの約物（記号）や空白などを含むものである。
【００１９】
また、本発明の一態様では、前記改行制御情報は、その文字の前における改行を制御するための第１改行制御情報と、その文字の後における改行を制御するための第２改行制御情報と、を含み、前記改行制御手段は、前記文字列における少なくとも一部の隣接文字について、当該隣接文字のうちの先の文字に係る前記第２改行制御情報と、当該隣接文字のうちの後の文字に係る前記第１改行制御情報と、に基づいて所定の処理を実行し、その実行結果に基づいて前記改行位置を決定するようにしてもよい。
【００２０】
また、本発明の一態様では、前記第１及び第２改行制御情報はともに数値情報であり、前記改行制御手段は、前記文字列における少なくとも一部の隣接文字について、当該隣接文字のうちの先の文字の前記第２改行制御情報と、当該隣接文字のうちの後の文字の前記第１改行制御情報と、に基づいて所定の演算を行い、その演算結果に基づいて前記改行位置を決定するようにしてもよい。
【００２１】
また、本発明の一態様では、前記フォントレコードは、文字の種別を示す種別情報をさらに含み、前記改行制御手段は、前記改行位置を前記文字列に含まれる文字に係る前記種別情報にさらに基づいて決定するようにしてもよい。
【００２２】
また、本発明に係る表示装置は、文字を表示するためのフォント情報と、当該文字に関連する関連画像を当該文字に関連づけて表示するための関連画像情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶するフォントデータ記憶手段と、前記フォント情報に基づいて文字を表示するとともに、当該フォント情報に対応する前記関連画像情報に基づいて、前記関連画像を当該文字に関連づけて表示する表示手段と、を含むことを特徴とする。
【００２３】
また、本発明に係る表示装置の制御方法は、文字を表示するためのフォント情報と、当該文字に関連する関連画像を当該文字に関連づけて表示するための関連画像情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶してなるフォントデータ記憶手段から前記フォントデータを読み出すためのフォントデータ読み出しステップと、前記フォントデータ読み出しステップによって読み出されるフォントデータに含まれるフォント情報に基づいて文字を表示手段に表示させるとともに、当該フォント情報に対応する前記関連画像情報に基づいて、前記関連画像を当該文字に関連づけて表示させる表示ステップと、を含むことを特徴とする。
【００２４】
また、本発明に係るプログラムは、文字を表示するためのフォント情報と、当該文字に関連する関連画像を当該文字に関連づけて表示するための関連画像情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータ、に含まれる前記フォント情報に基づいて文字を表示するとともに、当該フォント情報に対応する前記関連画像情報に基づいて、前記関連画像を当該文字に関連づけて表示する表示手段、として、携帯用ゲーム機、家庭用ゲーム機、業務用ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）やパーソナルコンピュータなどのコンピュータを機能させるためのプログラムである。
【００２５】
また、本発明に係るフォントデータは、文字を表示するためのフォント情報と、当該文字に関連する関連画像を当該文字に関連づけて表示するための関連画像情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータである。
【００２６】
また、本発明に係る情報記憶媒体は、上記プログラム及び上記フォントデータのうちの少なくとも一方を記録したコンピュータ読み取り可能な情報記憶媒体である。
【００２７】
本発明では、文字を表示するためのフォント情報と、当該文字に関連する関連画像を当該文字に関連づけて表示するための関連画像情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータが記憶される。そして、フォント情報に基づいて文字が表示されるとともに、当該フォント情報に対応する前記関連画像情報に基づいて、前記関連画像が当該文字に関連づけて表示される。本発明によれば、文字に関連する関連画像を文字に関連づけて表示するための関連画像情報をフォントデータに含ませることが可能となり、この関連画像情報に基づいて関連画像が文字に関連づけて表示されるため、文字に関連する関連画像を処理負荷を軽減しつつ表示させることができるようになる。
【００２８】
また、本発明の一態様では、前記フォントデータは、前記関連画像を表す複数の関連画像データを含み、少なくとも一部の前記関連画像情報は、前記複数の関連画像データのうちのいずれかを特定するための関連画像データ特定情報であり、前記表示手段は、前記フォント情報に基づいて文字を表示するとともに、当該フォント情報に対応する前記関連画像情報が前記関連画像データ特定情報である場合には、当該関連画像データ特定情報によって特定される前記関連画像データによって表される前記関連画像を当該文字に関連づけて表示するようにしてもよい。
【００２９】
また、本発明の一態様では、前記少なくとも一部の関連画像情報以外の関連画像情報は、前記関連画像データそのものとしてもよい。
【００３０】
また、本発明の一態様では、前記関連画像は前記文字の影画像としてもよい。
【００３１】
また、本発明に係る表示装置は、文字を表示するためのフォント情報と、当該文字の種別を示す種別情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶するフォントデータ記憶手段と、前記複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する文字列表示手段と、前記文字列表示手段に表示される前記文字列の表示領域内の位置を選出基準位置として指定する選出基準位置指定手段と、前記選出基準位置指定手段によって指定される選出基準位置と、前記文字列に含まれる文字の前記種別情報と、に基づいて、前記文字列の一部を選出する選出手段と、前記選出手段によって選出される前記文字列の一部に基づいて処理を実行する処理実行手段と、を含むことを特徴とする。
【００３２】
また、本発明に係る表示装置の制御方法は、文字を表示するためのフォント情報と、当該文字の種別を示す種別情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータを記憶してなるフォントデータ記憶手段から前記フォントデータを読み出すためのフォントデータ読み出しステップと、前記フォントデータ読み出しステップによって読み出されるフォントデータに含まれる複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を文字列表示手段に表示させる文字列表示ステップと、前記文字列表示手段に表示される前記文字列の表示領域内の位置を選出基準位置として指定する選出基準位置指定ステップと、前記選出基準位置指定ステップによって指定される選出基準位置と、前記文字列に含まれる文字の前記種別情報と、に基づいて、前記文字列の一部を選出する選出ステップと、前記選出ステップによって選出される前記文字列の一部に基づいて処理を実行する処理実行ステップと、を含むことを特徴とする。
【００３３】
また、本発明に係るプログラムは、文字を表示するためのフォント情報と、当該文字の種別を示す種別情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータ、に含まれる前記複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列を表示する文字列表示手段、前記文字列表示手段に表示される前記文字列の表示領域内の位置を選出基準位置として指定する選出基準位置指定手段、前記選出基準位置指定手段によって指定される選出基準位置と、前記文字列に含まれる文字の前記種別情報と、に基づいて、前記文字列の一部を選出する選出手段、及び、前記選出手段によって選出される前記文字列の一部に基づいて処理を実行する処理実行手段、として、携帯用ゲーム機、家庭用ゲーム機、業務用ゲーム機、携帯電話機、携帯情報端末（ＰＤＡ）やパーソナルコンピュータなどのコンピュータを機能させるためのプログラムである。
【００３４】
また、本発明に係るフォントデータは、文字を表示するためのフォント情報と、当該文字の種別を示す種別情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータである。
【００３５】
また、本発明に係る情報記憶媒体は、上記プログラム及び上記フォントデータのうちの少なくとも一方を記録したコンピュータ読み取り可能な情報記憶媒体である。
【００３６】
本発明では、文字を表示するためのフォント情報と、当該文字の種別を示す種別情報と、をそれぞれ含む複数のフォントレコードを含むフォントデータが記憶される。また、当該複数のフォントレコードの全部又は一部に係るフォント情報に基づいて、文字列が表示される。そして、その文字列の表示領域内の位置が選出基準位置として指定されると、その選出基準位置と、文字列に含まれる文字の種別情報とに基づいて文字列の一部が選出される。そして、その一部に基づいて処理（例えば、その一部を区別表示するなどの処理）が実行される。本発明によれば、文字の種別を示す種別情報がフォントデータに含ませることが可能となり、この種別情報に基づいて文字列の一部の選出が行われるため、文字コード体系による制約を受けることなく、文字列の一部の指定をユーザが好適に行えるようにすることが可能となる。
【００３７】
また、本発明の一態様では、前記選出手段は、前記文字列において前記選出基準位置より前に存在する文字のうちから始点文字を前記種別情報に基づいて選出する始点文字選出手段と、前記文字列において前記選出基準位置より後に存在する文字のうちから終点文字を前記種別情報に基づいて選出する終点文字選出手段と、を含み、前記始点文字と前記終点文字に基づいて、前記文字列の一部を選出するようにしてもよい。
【００３８】
また、本発明の一態様では、前記始点文字選出手段は、前記文字列において前記選出基準位置より前の隣接する２つの文字について、当該隣接する２つの文字に係る前記種別情報が所定の始点文字条件を満足するか否かを判断し、その判断結果に応じて前記始点文字を選出するようにしてもよい。
【００３９】
また、本発明の一態様では、前記終点文字選出手段は、前記文字列において前記選出基準位置より後の隣接する２つの文字について、当該隣接する２つの文字に係る前記種別情報が所定の終点文字条件を満足するか否かを判断し、その判断結果に応じて前記終点文字を選出するようにしてもよい。
【発明を実施するための最良の形態】
【００４０】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。ここでは、携帯ゲーム機、携帯音楽プレーヤや携帯情報端末（ＰＤＡ）として機能する携帯型電子装置によって、本発明の実施形態に係る表示装置を実現する場合を例として説明する。
【００４１】
図１は、本発明の実施形態に係る表示装置として使用される携帯型電子装置１０のハードウェア構成を示す図である。同図に示すように、携帯型電子装置１０では、ＣＰＵ（Central Processing Unit）１４、ＲＡＭ（Random Access Memory）１６、ＲＯＭ（Read Only Memory）１８、インタフェース（Ｉ／Ｆ）２０，２４，２８、音声処理部３２、画像処理部３６がバス１２により相互にデータ通信可能に接続されている。インタフェース２０には操作部２２が接続されており、インタフェース２４にはディスクドライブ２６が接続されている。さらに、インタフェース２８には通信部３０が接続されている。また、音声処理部３２にはスピーカ３４が接続されており、画像処理部３６には液晶ディスプレイ（ＬＣＤ）３８が接続されている。これらは電池とともに携帯型電子装置１０の筐体内に収容されており、該電池により駆動され、携帯可能となっている。
【００４２】
ＣＰＵ１４は、ＲＯＭ１８に格納されるオペレーティングシステム（ＯＳ）やディスク２７から読み出されるプログラムに基づいて、携帯型電子装置１０の各部を制御する。バス１２はアドレス及びデータを携帯型電子装置１０の各部でやり取りするためのものである。また、ＲＡＭ１６には、ディスク２７から読み取られたプログラムが必要に応じて書き込まれる。また、ＲＡＭ１６はＣＰＵ１４の作業用としても用いられる。音声処理部３２は、ディスク２７から読み出されたゲーム音楽、ゲーム効果音やメッセージなどの各種音声データを再生して、スピーカ３４から出力させる。画像処理部３６は、ＣＰＵ１４から供給される画像データを処理してＬＣＤ３８に表示出力させる。
【００４３】
インタフェース２０，２４，２８は、ＣＰＵ１４と、操作部２２、ディスクドライブ２６、通信部３０と、の間のデータ通信をそれぞれ中継する。操作部２２はユーザが各種操作をするための入力手段である。ディスクドライブ２６は、ＣＰＵ１４からの指示に従ってディスク２７に記憶されたプログラムやデータを読み取る。通信部３０は、通信ネットワークを介して他のコンピュータ（情報処理装置）との間でデータ通信を行うものである。
【００４４】
なお、以上では、情報記憶媒体たるディスク２７を介してプログラムが携帯型電子装置１０に供給されることとして説明したが、インターネットなどの通信ネットワークを介して遠隔地からプログラムが携帯型電子装置１０に供給されるようにしてもよいし、赤外線通信などの各種データ通信を利用してプログラムが携帯型電子装置１０に供給されるようにしてもよい。
【００４５】
次に、以上の構成を備える携帯型電子装置１０を用いて、１）文字コード体系による制約を抑止しつつ、禁則処理を行うことができるようになる表示装置、２）文字に関連する関連画像を処理負荷を軽減しつつ表示させることができるようになる表示装置、３）文字コード体系による制約を抑止しつつ、文字列の一部の指定をユーザが好適に行えるようになる表示装置、を実現する具体的な技術について説明する。
【００４６】
図２は、携帯型電子装置１０において実現される機能のうち、本発明に関連するものを中心として示す機能ブロック図である。同図に示すように、携帯型電子装置１０では、フォントデータ記憶部５０、改行制御部５２、文字列表示部５４、選出基準位置指定部５６、選出部５８、処理実行部６０が実現される。これらの機能は、ディスク２７を介して供給されるプログラムがＣＰＵ１４によって実行されることによって実現される。
【００４７】
［１．フォントデータ記憶部］
フォントデータ記憶部５０は、例えばＲＯＭ１８やディスク２７などによって構成される。フォントデータ記憶部５０はフォントデータを記憶する。
【００４８】
図３は、フォントデータ記憶部５０に記憶されるフォントデータの構成を示している。同図に示すように、フォントデータ１００は、ヘッダブロック１０２、メトリックスブロック１０４、影グリフイメージオーナーマップブロック１０６、第１キャラクタマップブロック１０８、第２キャラクタマップブロック１１０、グリフデータブロック１１２を含んで構成される。
【００４９】
図４は、ヘッダブロック１０２の構成を示している。同図に示すように、ヘッダブロック１０２には、バージョン情報１１４、改行制御情報数値化テーブル１１６、文字種別情報数値化テーブル１１８が保持される。バージョン情報１１４は、このフォントデータのバージョンを示す情報である。改行制御情報数値化テーブル１１６は、後述する改行制御情報を数値化するための情報である（図１１参照）。文字種別情報数値化テーブル１１８は、後述する文字種別情報を数値化するための情報である（図１２参照）。ヘッダブロック１０２には、その他の各種情報が記憶される。
【００５０】
メトリックスブロック１０４には、文字矩形情報（幅及び高さ）などのメトリックス情報（文字の書体のレイアウトに関する情報）が保持される。また、影グリフイメージオーナーマップブロック１０６については後述する（図７参照）。
【００５１】
第１キャラクタマップブロック１０８には、文字コードのリストが保持される。第１キャラクタマップブロック１０８では、一部の文字コードにのみ文字番号が対応づけられている。より具体的には、このフォントデータにフォント情報が保持されるものについてのみ、文字番号が対応づけられるようになっている。なお、文字番号は、後述する文字グリフイメージ（グリフデータ）を一意に識別するための情報となっている。
【００５２】
第２キャラクタマップブロック１１０には、文字番号のリストが保持される。第２キャラクタマップブロック１１０では、各文字番号に、その文字のグリフデータ（フォントレコード）が保持される領域を特定するための情報が対応づけられている。なお、後述するように、各文字のグリフデータはグリフデータブロック１１２に保持される。
【００５３】
図５は、グリフデータブロック１１２の構成を示している。同図に示すように、グリフデータブロック１１２には、複数のグリフデータ１２０ａ，１２０ｂ，１２０ｃ，・・・が保持される。
【００５４】
図６は、一のグリフデータ１２０（フォントレコード）の構成を示している。同図に示すように、グリフデータ１２０には、グリフヘッダ１２２、メトリックス情報１２４、文字グリフイメージ１２６（フォント情報）、影グリフイメージ１２８（関連画像データ）、が含まれる。グリフヘッダ１２２については後述する（図８参照）。メトリックス情報１２４は、文字矩形情報（幅及び高さ）などの情報である。メトリックス情報は、メトリックスブロック１０４に保持させるようにしてもよいし、各文字ごとにグリフデータ１２０に保持させるようにしてもよい。文字グリフイメージ１２４は、文字のデザイン（形状）を表す情報である。影グリフイメージ１２６は、その文字（文字グリフイメージによって表される文字）を影付文字として表示する場合に付される影のデザイン（形状）を表す情報である。
【００５５】
本実施の形態では、影グリフイメージ１２８はすべてのグリフデータ１２０に含まれているわけではなく、一部のグリフデータ１２０にのみ含まれるようになっている。具体的には、他の文字のグリフデータ１２０に含まれる影グリフイメージ１２８を用いて影を付すことが可能な文字については、その文字のグリフデータ１２０に影グリフイメージ１２８を含めないようになっている。本実施の形態では、このようにして、フォントデータ１００のデータサイズを抑えるようになっている。
【００５６】
なお、どのグリフデータ１２０に影グリフイメージ１２８が含まれているかは、影グリフイメージオーナーマップブロック１０６を参照することによって把握できるようになっている。具体的には、影グリフイメージオーナーマップブロック１０６には、図７に示すように、影グリフイメージ１２８を含んでいるグリフデータ１２０に係る文字番号のリストが保持されている。
【００５７】
図８は、グリフヘッダ１２２の構成を示している。同図に示すように、グリフヘッダ１２２には、メトリックス参照情報１３０、影特定情報１３２（関連画像データ特定情報）、第１改行制御情報１３４、第２改行制御情報１３６、文字種別情報１３８（種別情報）が含まれる。メトリックス参照情報は、その文字のメトリックス情報がメトリックスブロック１０４又はグリフデータ１２０のいずれに保持されているかを示す情報である。また、メトリックス参照情報には、メトリックス情報がメトリックスブロック１０４に保持されている場合、保持されている記憶領域を特定するための情報（メトリックスブロック１０４における参照先を特定するための情報）が含まれる。なお、グリフヘッダ１２２には、グリフデータ１２０に関する他の各種情報が保持されるようにしてもよい。
【００５８】
影特定情報１３２は、「グリフデータ１２０に含まれる文字グリフイメージ１２６によって表される文字」に影を付す場合に用いるべき影グリフイメージ１２８を特定するための情報である。具体的には、影特定情報１３２は、影グリフイメージオーナーマップブロック１０６に保持される複数の「影グリフイメージに係る文字番号」のうちのいずれかを特定するための情報となっている。
【００５９】
第１改行制御情報１３４は、「グリフデータ１２０に含まれる文字グリフイメージ１２６によって表される文字」の前における改行を制御（制限）するための情報である。本実施の形態では、第１改行制御情報１３４は前の文字との結びつきの強さを示す情報となっており、例えば「弱」，「中」，「強」のいずれかが第１改行制御情報として保持されるようになっている。また、本実施の形態では、例えば図９に示すように、各文字の第１改行制御情報が設定される。なお、同図の例では、約物を除いて、文字種別ごとに一律の第１改行制御情報が設定されることとなっているが、文字ごとに異なる第１改行制御情報が設定されるようにしてもよい。
【００６０】
第２改行制御情報１３６は、「グリフデータ１２０に含まれる文字グリフイメージ１２６によって表される文字」の後における改行を制御（制限）するための情報である。本実施の形態では、第２改行制御情報１３６は後の文字との結びつきの強さを示す情報となっており、第１改行制御情報１３４と同様に、例えば「弱」，「中」，「強」のいずれかが第１改行制御情報として保持されるようになっている。また、本実施の形態では、例えば図１０に示すように、各文字の第２改行制御情報が設定される。なお、同図の例では、約物を除いて、文字種別ごとに一律の第２改行制御情報が設定されることとなっているが、文字ごとに異なる第２改行制御情報が設定されるようにしてもよい。
【００６１】
なお、先述したように、ヘッダブロック１０２には、これらの第１改行制御情報及び第２改行制御情報を数値に変換するための改行制御情報数値化テーブル１１６が保持されている。改行制御情報数値化テーブル１１６は、例えば図１１に示すような情報を保持している。本実施の形態では、第１改行制御情報や第２改行制御情報に基づく処理を実行する場合、グリフヘッダ１２２に保持される第１改行制御情報１３４や第２改行制御情報１３６（抽象的な情報）を具体的な数値として直接用いるのではなく、これらを改行制御情報数値化テーブル１１６によって数値化したものを用いるようになっている。このため、第１改行制御情報や第２改行制御情報の定義に変更を加える必要が生じた場合であっても、各グリフヘッダ１２２の内容を変更することなく、改行制御情報数値化テーブル１１６の内容のみを変更することで対応できるようになっている。なお、グリフヘッダ１２２において、第１改行制御情報及び第２改行制御情報として数値情報を保持させるようにしてもよい。
【００６２】
文字種別情報１３８は、「グリフデータ１２０に含まれる文字グリフイメージ１２６によって表される文字」の種別を示す情報である。本実施の形態では、「漢字」，「平仮名」，「片仮名」，「アルファベット」，「数字」，「約物」，「空白その他」のいずれかが文字種別情報１３８として保持されるようになっている。なお、文字種別情報１３８には、上記のものに限られず、例えば「キリル文字」，「ハングル文字」，「タイ語文字」，「繁体文字」や「簡体文字」などのように、他の言語の文字種別（分類）を示すものが保持されるようにしてもよい。また、文字種別情報１３８には、例えば「日本語」，「英語」，「ロシア語」，「ハングル語」，「タイ語」，「中国語」などのように、その文字が用いられる言語を示す情報が保持されるようにしてもよい。また、文字種別情報１３８には、「全角文字」又は「半角文字」を示す情報が保持されるようにしてもよい。また、一の文字に対応づけられる文字種別情報は、一の文字種別を示すものであってもよいし、複数の文字種別の組合せを示すものであってもよい。例えば「全角のアルファベットの文字」には、「アルファベット」及び「全角」の組合せを示す文字種別情報（換言すれば、「アルファベット」を示す文字種別情報と「全角」を示す文字種別情報と）が対応づけられるようにしてもよい。
【００６３】
なお、先述したように、ヘッダブロック１０２には、この文字種別情報を数値に変換するための文字種別情報数値化テーブル１１８が保持されている。文字種別数値化テーブル１１８は、例えば図１２に示すような情報を保持している。本実施の形態では、文字種別情報に基づく処理を実行する場合、グリフヘッダ１２２に保持される文字種別情報１３８（抽象的な情報）を具体的な数値として直接用いるのではなく、これらを文字種別情報数値化テーブル１１８によって数値化したものを用いるようになっている。このため、文字種別情報の定義に変更を加える必要が生じた場合であっても、各グリフヘッダ１２２の内容を変更することなく、文字種別情報数値化テーブル１１８の内容のみを変更することで対応できるようになっている。なお、グリフヘッダ１２２において、文字種別情報として数値情報を保持させるようにしてもよい。
【００６４】
［２．文字列表示部］
文字列表示部５４は、画像処理部３６及びＬＣＤ３８を主として構成される。文字列表示部５４は、ＣＰＵ１４からの指示に従って文字列を表示する。文字列表示部５４は、文字列の表示をフォントデータ記憶部５０に記憶されるフォントデータに基づいて行う。具体的には、文字列表示部５４は、表示対象の文字列に含まれる各文字の文字グリフイメージをフォントデータから読み出す。そして、読み出した文字グリフイメージに従って、文字列に含まれる各文字を表示する。
【００６５】
また、文字列表示部５４（表示手段）は、ＣＰＵ１４によって指定された文字列を影付文字で表示することが可能となっている。文字列表示部５４は、表示対象の文字列に含まれる各文字に対応づけられた影グリフイメージをフォントデータから読み出す。そして、文字列に含まれる各文字に、その文字に対応する影グリフイメージに従って影を付する。すなわち、文字列に含まれる各文字に、その文字について読み出した影グリフイメージによって表される影を付する。
【００６６】
なお、文字列表示部５４は、文字グリフイメージによって表される文字及び影グリフイメージによって表される影の少なくとも一方の大きさを変えて表示するようにしてもよい。また、文字列表示部５４は、影グリフイメージによって表される影のみを表示するようにしてもよい。
【００６７】
［３．改行制御部］
改行制御部５２は、文字列表示部５４による文字列の表示における改行位置を、当該文字列に含まれる文字に係る第１改行制御情報及び第２改行制御情報に基づいて決定する。改行制御部５２は、文字列における少なくとも一部の隣接文字について、当該隣接文字のうちの先の文字に係る第２改行制御情報と、当該隣接文字のうちの後の文字に係る第１改行制御情報と、に基づいて所定の処理を実行し、その実行結果に基づいて改行位置を決定する。
【００６８】
具体的には、改行制御部５２は、文字列における少なくとも一部の隣接文字について、当該隣接文字のうちの先の文字の第２改行制御情報を数値化したものと、当該隣接文字のうちの後の文字の第１改行制御情報を数値化したものと、に基づいて所定の演算を行い、その演算結果に基づいて改行位置を決定する。
【００６９】
なお、改行制御部５２は、文字列表示部５４による文字列の表示における改行位置を、当該文字列に含まれる文字に係る文字種別情報に基づいて決定するようにしてもよい。
【００７０】
ここで、表示対象の文字列をＬＣＤ３８に表示させるために、文字列表示部５４及び改行制御部５２によって実行される処理について説明する。図１３及び図１４は、かかる処理を示すフロー図である。
【００７１】
この処理では、対象文字列を表示する領域の幅Ｗを文字列表示部５４が取得する（Ｓ１０１）。次に、文字列表示部５４は、対象文字列の文字数Ｎを取得する（Ｓ１０２）。また、文字列表示部５４は、変数ｎ０を０に初期化する（Ｓ１０３）。さらに、文字列表示部５４は、変数ｎを１に初期化し（Ｓ１０４）、変数ｗｓを０に初期化する（Ｓ１０５）。次に、文字列表示部５４は、（ｎ０＋ｎ）文字目の文字を注目文字として、Ｓ１０６乃至Ｓ１０９の処理を実行する。
【００７２】
文字列表示部５４は、（ｎ０＋ｎ）文字目の文字を表示するために必要な幅ｗを取得する（Ｓ１０６）。具体的には、文字列表示部５４は、（ｎ０＋ｎ）文字目の文字の文字コードを取得する。次に、文字列表示部５４は、第１キャラクタマップブロック１０８を参照することによって、その文字コードに対応する文字番号を取得する。次に、文字列表示部５４は、第２キャラクタマップブロック１１０を参照することによって、その文字番号に係るグリフデータが保持されている領域を特定するための情報を取得する。次に、文字列表示部５４は、グリフヘッダ１２２に保持されるメトリックス参照情報１３０を参照する。そして、文字列表示部５４は、そのメトリックス参照情報１３０に従って、メトリックスブロック１０４又はグリフデータ１２０に保持される文字矩形情報などを参照し、その文字を表示するために必要な幅ｗを取得する。
【００７３】
次に、文字列表示部５４は、変数ｗｓの値をｗｓ＋ｗに更新する（Ｓ１０７）。変数ｗｓの値は、このようにして更新されるため、表示対象文字列の（ｎ０＋１）文字目から（ｎ０＋ｎ）文字目までの各文字を表示するために必要な幅の合計を示すことになる。
【００７４】
そして、文字列表示部５４は、変数ｗｓの値がＳ１０１で取得したＷ以上であるか否かを判断する（Ｓ１０８）。文字列表示部５４は、変数ｗｓの値がＷ未満であると判断した場合、（ｎ０＋ｎ）がＳ１０２で取得したＮと等しいか否かを判断する（Ｓ１０９）。すなわち、（ｎ０＋ｎ）文字目の文字が表示対象文字列の末尾文字であるか否かを判断する。文字列表示部５４は、（ｎ０＋ｎ）とＮとが等しくないと判断した場合、変数ｎをインクリメントし（Ｓ１１０）、Ｓ１０６乃至Ｓ１０９の処理を再び実行する。
【００７５】
一方、変数ｗｓの値がＷ以上と判断された場合（Ｓ１０８）、又は（ｎ０＋ｎ）文字目の文字が末尾文字であると判断された場合（Ｓ１０９）、表示対象文字列の（ｎ０＋１）文字目から（ｎ０＋ｎ）文字目までが文字列表示領域に１行で表示可能な文字列（以下、表示可能文字列と呼ぶ。）となる。
【００７６】
例えば、「ABC の発売日は、１２月（中旬）です。」という文字列（対象文字列）をＬＣＤ３８に表示させる場合であって、全角文字又は半角文字がそれぞれ固定幅を有し、全角文字の幅が半角文字の幅の２倍となっており、文字列表示領域に全角文字を５文字分表示可能な場合、Ｓ１０６乃至Ｓ１０９の処理の最初の実行（変数ｎ０が０の場合）では、「ABC
の発売」が表示可能文字列と取得される。
【００７７】
次に、改行制御部５２はＳ１１１乃至Ｓ１２０の処理を実行することによって、表示可能文字列における改行位置を決定する。換言すれば、表示可能文字列のうちの何文字目までを次の一行として文字列表示部５４（文字列表示領域）に出力するかを決定する。
【００７８】
まず、改行制御部５２は変数ｍを０に初期化する（Ｓ１１１）。次に、改行制御部５２は、（ｎ０＋ｍ）文字目の文字の第２改行制御情報（数値化したもの）ｅ２を取得する（Ｓ１１２）。具体的には、改行制御部５２は、（ｎ０＋ｍ）文字目の文字の文字コードを取得する。その後、Ｓ１０６の場合と同様にして、その文字コードに対応するグリフデータ１２０のグリフヘッダ１２２を参照し、第２改行制御情報１３６を取得する。そして、改行制御部５２は、取得した第２改行制御情報１３６を、ヘッダブロック１０２に保持される改行制御情報数値化テーブル１１６に基づいて数値化する。なお、ｎ０＋ｍが０である場合、改行制御部５２はｅ２を９とする。
【００７９】
また、改行制御部５２は、（ｎ０＋ｍ＋１）文字目の文字の第１改行制御情報（数値化したもの）ｅ１を取得する（Ｓ１１３）。具体的には、改行制御部５２は、（ｎ０＋ｍ＋１）文字目の文字の文字コードを取得する。その後、Ｓ１１２の場合と同様にして、その文字コードに対応するグリフデータ１２０のグリフヘッダ１２２を参照し、第１改行制御情報１３４を取得する。そして、改行制御部５２は、取得した第１改行制御情報１３４を、ヘッダブロック１０２に保持される改行制御情報数値化テーブル１１６に基づいて数値化する。なお、ｎ０＋ｍがＮである場合、改行制御部５２はｅ１を０とする。
【００８０】
次に、改行制御部５２は、改行評価値の配列Ｅ［ｍ］にｅ２×ｅ１を保持させる（Ｓ１１４）。その後、改行制御部５２は、変数ｍの値が変数ｎの値に等しいか否かを判断する（Ｓ１１５）。改行制御部５２は、変数ｍの値が変数ｎの値に等しくないと判断した場合、変数ｍの値をインクリメントし（Ｓ１１６）、Ｓ１１２乃至Ｓ１１５の処理を再び実行する。
【００８１】
一方、改行制御部５２は、変数ｍの値が変数ｎの値に等しいと判断した場合（Ｓ１１５）、改行制御部５２は、改行評価値の配列Ｅ［ｍ］に保持される数値のうちの最小値に対応するｍの値を変数ｍ０に代入する（Ｓ１１７）。そして、文字列表示部５４は、表示対象文字列の（ｎ０＋１）文字目から（ｎ０＋ｍ０）文字目までを一行としてＬＣＤ３８に出力させる（Ｓ１１８）。
【００８２】
例えば、表示可能文字列として「ABC の発売」が取得された場合であって、第１及び第２改行制御情報が図９及び図１０に示すように設定され、改行制御情報数値化テーブルが図１１に示すように設定される場合、改行評価値の配列Ｅは、Ｅ［０］＝１８，Ｅ［１］＝４，Ｅ［２］＝４，Ｅ［３］＝４，Ｅ［４］＝０，Ｅ［５］＝１，Ｅ［６］＝１となる。この場合、改行制御部５２は変数ｍ０の値を「４」とし、文字列表示部５４は「ABC
」を一行としてＬＣＤ３８に出力させる。すなわち、この場合、４文字目（半角スペース）と５文字目（の）の間が改行位置として決定される。
【００８３】
なお、ここでは、改行評価値の値が最小値となる文字の組合せの間を改行位置として決定するようにしたが、改行評価値が所定の閾値以下となる文字の組合せのうちから、一行の文字数が最も大きくなるもの（又は一行の幅が最も長くなるもの）を選出し、その文字の組合せの間を改行位置として決定するようにしてもよい。換言すれば、Ｓ１１７において、改行評価値の配列Ｅ［ｍ］に保持される数値のうち所定の閾値以下となる数値に対応するｍの最大値を変数ｍ０に代入するようにしてもよい。
【００８４】
文字列表示部５４は、表示対象文字列の（ｎ０＋１）文字目から（ｎ０＋ｍ０）文字目までをＬＣＤ３８に表示させる場合、各文字の文字グリフイメージを次のようにして取得する。すなわち、文字列表示部５４は、表示対象の文字の文字コードをまず取得する。次に、第１キャラクタマップブロック１０８及び第２キャラクタマップブロック１１０を参照することによって、各文字コードに対応するグリフデータ１２０が保持される記憶領域を特定する。そして、そのグリフデータ１２０に含まれる文字グリフイメージ１２６を取得する。
【００８５】
また、文字列表示部５４は、表示対象文字列の（ｎ０＋１）文字目から（ｎ０＋ｍ０）文字目までをＬＣＤ３８に表示させる場合、各文字の影グリフイメージを次のようにして取得する。すなわち、文字列表示部５４は、表示対象の文字の文字コードをまず取得する。次に、第１キャラクタマップブロック１０８及び第２キャラクタマップブロック１１０を参照することによって、各文字コードに対応するグリフデータ１２０が保持される記憶領域を特定する。そして、そのグリフデータ１２０に含まれるグリフヘッダ１２２を参照することによって、影特定情報１３２を取得する。次に、文字列表示部５４は、その影特定情報によって特定される影グリフイメージオーナーマップブロック１０６の記憶領域を参照することによって、影グリフイメージ１２８に係る文字番号（影グリフイメージ１２８が保持されるグリフデータ１２０に係る文字番号）を取得する。次に、文字列表示部５４は、第２キャラクタマップブロック１１０を参照することによって、この文字番号に対応するグリフデータ１２０が保持される記憶領域を特定する。そして、そのグリフデータ１２０に含まれる影グリフイメージ１２８を取得する。
【００８６】
また、文字列表示部５４は、表示対象文字列の（ｎ０＋１）文字目から（ｎ０＋ｍ０）文字目までをＬＣＤ３８に表示させる場合、各文字ごとに取得した文字グリフイメージに基づいて、文字列レイヤ画像を生成する。また、文字列表示部５４は、各文字ごとに取得した影グリフイメージに基づいて、影レイヤ画像を生成する。そして、文字列表示部５４は、別途読み出される背景レイヤ画像に影レイヤ画像を重ね、さらにその上に文字レイヤ画像を重ねてなる画像をＬＣＤ３８に表示させる。
【００８７】
次に、文字列表示部５４は、ｎ０＋ｍ０がＮに等しいか否かを判断する（Ｓ１１９）。文字列表示部５４は、ｎ０＋ｍ０とＮとが等しくないと判断した場合、表示対象文字列のＬＣＤ３８への表示出力が完了してないと判断し、ｎ０をｎ０＋ｍ０に更新した後（Ｓ１２０）、Ｓ１０４乃至Ｓ１１９の処理を再び実行する。一方、文字列表示部５４は、ｎ０＋ｍ０がＮに等しいと判断した場合、表示対象文字列のＬＣＤ３８への表示出力が完了したと判断する。この場合、本処理が終了する。
【００８８】
なお、以上の処理はディスク２７を介して供給されるプログラムがＣＰＵ１４によって実行されることによって実現される。
【００８９】
［４．選出基準位置指定部］
選出基準位置指定部５６は、文字列表示部５４における文字列表示領域内の位置を選出基準位置として指定する。例えば、選出基準位置指定部５６は、ユーザによるポインティングデバイスなどを用いた指定操作に応じて、文字列表示部５４における文字列表示領域内の位置を指定する。すなわち、選出基準位置指定部５６は、文字列表示部５４における文字列表示領域内の位置を指定する操作がユーザによってなされたか否かを判断する。そして、かかる操作がなされた場合には、ユーザによって指定された位置を取得する。
【００９０】
［５．選出部］
選出部５８は、選出基準位置指定部５６によって指定された選出基準位置と、文字列表示部５４に表示される文字列に含まれる文字の文字種別情報と、に基づいて、文字列表示部５４に表示される文字列の一部を選出する。
【００９１】
例えば、選出部５８は、文字列表示部５４に表示される文字列において、選出基準位置指定部５６によって取得される選出基準位置より前に存在する文字のうちから始点文字を、フォントデータに各文字ごとに含まれる文字種別情報に基づいて選出する。より具体的には、選出部５８は、文字列表示部５４に表示される文字列において、選出基準位置指定部５６によって取得される選出基準位置より前の２つの隣接文字について、当該２つの隣接文字の各々に係る文字種別情報が所定の始点文字条件を満足するか否かを判断し、その判断結果に応じて始点文字を選出する。
【００９２】
また例えば、選出部５８は、文字列表示部５４に表示される文字列において、選出基準位置指定部５６によって取得される選出基準位置より後に存在する文字のうちから終点文字を、フォントデータに各文字ごとに含まれる文字種別情報に基づいて選出する。より具体的には、選出部５８は、文字列表示部５４に表示される文字列において、出基準位置取得部５６によって取得される選出基準位置より後の２つの隣接文字について、当該２つの隣接文字の各々に係る文字種別情報が所定の終点文字条件を満足するか否かを判断し、その判断結果に応じて終点文字を選出する。
【００９３】
選出部５８は、以上のようにして選出される始点文字と終点文字とに基づいて、文字列表示部５４に表示される文字列の一部を選出する。例えば、文字列表示部５４に表示される文字列のうちの始点文字から終点文字までの部分を選出する。
【００９４】
［６．処理実行部］
処理実行部６０は、選出部５８によって選出される文字列の一部に基づいて処理を実行する。例えば、処理実行部６０は、選出部５８によって選出される文字列の一部を区別表示（強調表示又は反転表示など）させる。
【００９５】
ここで、文字列表示部５４における文字列表示領域内の位置がユーザによって指定された場合に、選出基準位置指定部５６及び選出部５８によって実行される処理について説明する。図１５及び図１６は、かかる処理を示すフロー図である。
【００９６】
この処理では、まず選出基準位置指定部５６が、ユーザによって指定された位置（選出基準位置）を取得し（Ｓ２０１）、その位置に対応する文字を選出基準文字として特定する（Ｓ２０２）。例えば、選出基準位置指定部５６は、選出基準位置がある文字の表示領域内に含まれる場合、当該文字を選出基準文字と特定する。また例えば、選出基準位置に最も近い文字を選出基準文字と特定する。選出基準位置指定部５６は、対象文字列における選出基準文字の位置をＲＡＭ１６に保持させる。また、選出部５８は、選出基準文字を注目文字とする（Ｓ２０３）。
【００９７】
次に、選出部５８は、注目文字が対象文字列の先頭の文字であるか否かを判断する（Ｓ２０４）。注目文字が対象文字列の先頭の文字であると判断された場合、当該注目文字（先頭文字）が始点文字として決定される（Ｓ２１０）。
【００９８】
一方、選出部５８は、注目文字が対象文字列の先頭の文字でないと判断した場合、注目文字の文字種別情報（数値化したもの）ｎ１を取得する（Ｓ２０５）。具体的には、選出部５８は注目文字の文字コードを取得する。次に、選出部５８は第１キャラクタマップブロック１０８を参照することによって、注目文字の文字コードに対応する文字番号を取得する。また、選出部５８は第２キャラクタマップブロック１１０を参照することによって、注目文字のグリフデータが保持される記憶領域を特定するための情報を取得する。そして、選出部５８は、注目文字のグリフデータに含まれるグリフヘッダを参照し、注目文字の文字種別情報を取得する。選出部５８は、この文字種別情報を、ヘッダブロック１０２に保持される文字種別情報数値化テーブル１１８（図１０）に基づいて数値化する。
【００９９】
次に、選出部５８は、注目文字の前の文字（注目文字に隣接する文字のうちの前方のもの）の文字種別情報（数値化したもの）ｎ２を取得する（Ｓ２０６）。この文字種別情報ｎ２の取得はＳ２０５の場合と同様に行われる。
【０１００】
次に、選出部５８は、ｎ１がｎ２より大きいか否かを判断する（Ｓ２０７）。選出部５８は、ｎ１がｎ２以下であると判断した場合、注目文字の前の文字を注目文字とし（Ｓ２０８）、Ｓ２０４乃至Ｓ２０７の処理を再び実行する。一方、選出部５８は、ｎ１がｎ２より大きいと判断した場合、注目文字を始点文字として決定する（Ｓ２０９）。
【０１０１】
次に、選出部５８は終点文字を決定するための処理を実行する。まず選出部５８は、選出基準文字を注目文字とする（Ｓ２１０）。
【０１０２】
次に、選出部５８は、注目文字が対象文字列の末尾の文字であるか否かを判断する（Ｓ２１１）。選出部５８は、注目文字が対象文字列の末尾の文字であると判断した場合、当該注目文字（末尾文字）を終点文字として決定する（Ｓ２１６）。
【０１０３】
一方、選出部５８は、注目文字が対象文字列の末尾の文字でないと判断した場合、注目文字の文字種別情報（数値化したもの）ｎ１を取得する（Ｓ２１２）。また、選出部５８は、注目文字の次の文字（注目文字に隣接する文字のうち後方のもの）の文字種別情報（数値化したもの）ｎ２を取得する（Ｓ２１３）。これら文字種別情報ｎ１及びｎ２の取得はＳ２０５の場合と同様に行われる。
【０１０４】
次に、選出部５８は、ｎ２がｎ１より大きいか否かを判断する（Ｓ２１４）。選出部５８は、ｎ２がｎ１以下であると判断した場合、注目文字の次の文字を注目文字とし（Ｓ２１５）、Ｓ２１１乃至Ｓ２１４の処理を再び実行する。一方、選出部５８は、ｎ２がｎ１より大きいと判断した場合、注目文字を終点文字として決定する（Ｓ２１６）。
【０１０５】
処理実行部６０は、以上のようにして選出された始点文字から終点文字までを、文字列表示部５４において区別表示（強調表示又は反転表示）する（Ｓ２１７）。具体的には、Ｓ１１８において説明した場合と同様に、文字列レイヤ画像と、影レイヤ画像と、背景レイヤ画像とが生成又は読み出されるとともに、区別表示レイヤ画像（文字列の一部を区別表示するための画像）が生成され、これらが文字列レイヤ画像、区別表示レイヤ画像、影レイヤ画像、背景レイヤ画像の順に上から重ねられてなる画像が文字列表示部５４に表示される。
【０１０６】
例えば、「ABC の発売日は、１２月（中旬）です。」という文字列がＬＣＤ３８に表示されている場合において、文字「C」の表示領域の近傍がユーザによって指定された場合、文字「C」が選出基準文字として特定される。そして、文字種別情報及び文字種別情報数値化テーブルが図１２のように定められている場合、文字「A」，「B」，「C」の文字種別情報（数値化したもの）はいずれも「３」となり、Ｓ２０７の条件（始点文字条件）が満足されることはなく、文字「A」が先頭文字であるが故に、文字「A」が始点文字として決定される。また、文字「C」，「
（半角スペース）」，「の」の文字種別情報（数値化したもの）はそれぞれ「３」，「０」，「５」となり、文字「 （半角スペース）」が注目文字となった場合に、Ｓ２１４の条件（終点文字条件）が満足される。このため、文字「
（半角スペース）」が終点文字として決定される。この場合、ＬＣＤ３８に表示される文字列の一部「ABC 」が区別表示されることになる。
【０１０７】
なお、以上の処理はディスク２７を介して供給されるプログラムがＣＰＵ１４によって実行されることによって実現される。
【０１０８】
以上に説明したように、携帯型電子装置１０によれば、文字の前後における改行を制御するための改行制御情報をフォントデータに含ませることが可能となり、文字列を表示する場合にはこの改行制御情報に基づいて改行位置が決定されるようになる。このため、携帯型電子装置１０によれば、文字コード体系による制約を抑止しつつ、禁則処理を好適に行うことができるようになる。また、従来は、禁則処理の対象となる文字の指定が文字のフォントデザインとは関係なく行われるため、文字のフォントデータのデザインに携わる者が禁則処理に関与することはできなかった。しかしながら、携帯型電子装置１０によれば、フォントデータの作成に携わる者が、そのフォントデータに基づく表示が行われる場合の禁則処理に関与できるようになる。
【０１０９】
また、携帯型電子装置１０によれば、文字を影付文字とするための影情報をフォントデータに含ませることが可能となり、文字列を影付文字として表示する場合にはこの影情報が用いられるようになる。このため、携帯型電子装置１０によれば、処理負荷を軽減しつつ影付文字を表示できるようになる。
【０１１０】
さらに、携帯型電子装置１０によれば、文字の文字種別情報をフォントデータに含ませることが可能となり、対象文字列の一部の選出がこの文字種別情報に基づいて行われるようになる。このため、携帯型電子装置１０によれば、文字コード体系による制約を抑止しつつ、文字列の一部の指定をユーザが好適に行えるようになる。
【０１１１】
なお、以上に説明したフォントデータは、ドットフォントやベクトルフォントなどのフォント形式（文字の形状の表現形式）に依存するものではなく、ドライバを用意することによって各種コンピュータ（各種ＯＳ（Operating System））で用いることができるものである。このため、以上に説明したフォントデータのデータフォーマットは、ＴｒｕｅＴｙｐｅ（登録商標）フォントなどの既存の汎用フォント規格に置き換わるものとなり得るものである。
【０１１２】
また、以上に説明したフォントデータによれば、文字（文字コード）ごとの改行制御情報、文字種別情報や関連画像情報がフォント（文字の書体、デザイン）ごとに定められることになる。このため、フォントデータが必要に応じてコンピュータに組み込まれることによって、そのコンピュータではそのフォントの文字が適切にレイアウト表示されるようになる。また、表示対象の文字列に異なるフォントの文字が含まれている場合であっても、それぞれのフォントに係るフォントデータにおいてその文字に対応づけられた改行制御情報などによって、かかる文字列が適切にレイアウト表示されることになる。
【０１１３】
なお、本発明は以上説明した実施の形態に限定されるものではない。
【０１１４】
例えば、フォントデータ記憶部５０に記憶されるフォントデータには、各文字に関連する他の関連画像を各文字に関連づけて表示するための情報（関連画像情報）が、各文字に影を付すための情報（影グリフイメージ１２８や影特定情報１３２）に代えて、或いはかかる情報とともに含まれるようにしてもよい。例えば、文字がフォーカスされていることを示す画像、文字に特殊な表示効果を付すための画像（例えば、文字をピカッと光るように表示したり、ネオンのように表示したりするための画像など）や文字を区別表示するための画像を、文字に関連づけて表示するための情報が各文字ごとに含まれるようにしてもよい。そして、文字列表示部５４は、かかるフォントデータ（関連画像情報）に基づいて、上記のような画像を文字に関連づけて表示するようにしてもよい。
【０１１５】
また例えば、以上では、本発明を携帯型電子装置に適用した例について説明したが、本発明は家庭用ゲーム機やパーソナルコンピュータなどの他のコンピュータシステムにも適用できるものである。
【図面の簡単な説明】
【０１１６】
【図１】本実施の形態に係る携帯型電子装置のハードウェア構成を示す図である。
【図２】本実施の形態に係る携帯型電子装置の機能ブロック図である。
【図３】フォントデータの構成を示す図である。
【図４】ヘッダブロックの構成を示す図である。
【図５】グリフデータブロックの構成を示す図である。
【図６】グリフデータの構成を示す図である。
【図７】影グリフイメージオーナーマップブロックの構成を示す図である。
【図８】グリフヘッダの構成を示す図である。
【図９】第１改行制御情報について示す図である。
【図１０】第２改行制御情報について示す図である。
【図１１】改行制御情報数値化テーブルについて示す図である。
【図１２】文字種別情報について示す図である。
【図１３】携帯型電子装置で実行される処理について示すフロー図である。
【図１４】携帯型電子装置で実行される処理について示すフロー図である。
【図１５】携帯型電子装置で実行される処理について示すフロー図である。
【図１６】携帯型電子装置で実行される処理について示すフロー図である。
【符号の説明】
【０１１７】
１０  携帯型電子装置、１２  バス、１４  ＣＰＵ、１６  ＲＡＭ、１８  ＲＯＭ、２０，２４，２８  インタフェース、２２  操作部、２６  ディスクドライブ、２７  ディスク、３０  通信部、３２  音声処理部、３４  スピーカ、３６  画像処理部、３８  液晶ディスプレイ、５０  フォントデータ記憶部、５２  改行制御部、５４  文字列表示部、５６  選出基準位置指定部、５８  選出部、６０  処理実行部、１００  フォントデータ、１０２  ヘッダブロック、１０４  メトリックスブロック、１０６  影グリフイメージオーナーマップブロック、１０８  第１キャラクタマップブロック、１１０  第２キャラクタマップブロック、１１２  グリフデータブロック、１１４  バージョン情報、１１６  改行制御情報数値化テーブル、１１８  文字種別情報数値化テーブル、１２０  グリフデータ、１２０ａ  グリフデータ１、１２０ｂ  グリフデータ２、１２０ｃ  グリフデータ３、１２２  グリフヘッダ、１２４  メトリックス情報、１２６  文字グリフイメージ、１２８  影グリフイメージ、１３０  メトリックス参照情報、１３２  影特定情報、１３４  第１改行制御情報、１３６  第２改行制御情報、１３８  文字種別情報。
【図１】
2006163651.tif 000003
【図２】
2006163651.tif 000004
【図３】
2006163651.tif 000005
【図４】
2006163651.tif 000006
【図５】
2006163651.tif 000007
【図６】
2006163651.tif 000008
【図７】
2006163651.tif 000009
【図８】
2006163651.tif 000010
【図９】
2006163651.tif 000011
【図１０】
2006163651.tif 000012
【図１１】
2006163651.tif 000013
【図１２】
2006163651.tif 000014
【図１３】
2006163651.tif 000015
【図１４】
2006163651.tif 000016
【図１５】
2006163651.tif 000017
【図１６】
2006163651.tif 000018