(57)【要約】【課題】  キャラクターを正しくフォーマットし、複合テキスト言語に係るキャラクターが入り混じった文字列を正しくレイアウトする。【解決手段】  オリジナル文字列の中の複数のキャラクターに係るキャラクターコード、属性及び／又は色に応じて、特別なエンコードされた文字列が生成される。特別なエンコードされた文字列に応じて、代替的なエンコードされた文字列が生成される。代替的なエンコードされた文字列の中の複数のキャラクターをレイアウトすることによって、レイアウトされた文字列が生成される。そして、レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字が表され、レイアウトされた文字列の中の複数のキャラクターに係る当該属性及び／又は当該色を有する絵文字がディスプレイ上に表示される。【選択図】  図２
2014038301.tif 000002
【特許請求の範囲】
【請求項１】
組込みシステムの中のキャラクター文字列を操作する方法であって、
該方法は：
オリジナル文字列の中の複数のキャラクターに係るキャラクターコード、属性及び／又は色に応じて特別なエンコードされた文字列を生成するステップと；
前記組込みシステムにおいて、特別なエンコードと属性処理のモジュールを使用して前記特別なエンコードされた文字列に応じて代替的なエンコードされた文字列を生成するステップと；
前記組込みシステムにおいて、レイアウトエンジンを使用して前記代替的なエンコードされた文字列の中の複数のキャラクターをレイアウトすることによってレイアウトされた文字列を生成するステップと；
前記組込みシステムにおいて、フォントエンジンを使用して前記レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字を表すステップと；
前記レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字をディスプレイ装置上に表示するステップと；を含む、
ことを特徴とする方法。
【請求項２】
前記オリジナル文字列の中の前記複数のキャラクターに係るそれぞれのキャラクターコードが２バイトまたは４バイトである、
請求項１に記載の方法。
【請求項３】
前記特別なエンコードされた文字列を生成するステップは、前記オリジナル文字列の中の前記複数のキャラクターに係るそれぞれのキャラクターコードを４バイトから２バイトに変換すること、を含む、
請求項１に記載の方法。
【請求項４】
前記オリジナル文字列の中の前記複数のキャラクターに係るそれぞれの属性は、２バイトまたは４バイトにエンコードされる、
請求項１に記載の方法。
【請求項５】
前記オリジナル文字列の中の前記複数のキャラクターに係るそれぞれの色は、２バイトまたは４バイトにエンコードされる、
請求項１に記載の方法。
【請求項６】
前記オリジナル文字列の中の複数のキャラクターに係るキャラクターコードと属性及び／又は色に応じて特別なエンコードされた文字列を生成する前記ステップは、
前記オリジナル文字列の中の複数のキャラクターに係るキャラクターコードと属性及び／又は色を、それぞれ前記オリジナル文字列の中の複数のキャラクターに応じた複数の特別なコードとしてエンコードするステップを含む、
請求項１に記載の方法。
【請求項７】
前記複数の特別なコードに係るそれぞれの特別なコードは、２バイトである、
請求項６に記載の方法。
【請求項８】
前記組込みシステムにおいて、前記フォントエンジンを使用してレイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字を表す前記ステップは、
前記絵文字をそれぞれ、前記レイアウトされた文字列の中の前記複数のキャラクターに係るキャラクターコードと属性及び／又は色に応じて表している、
請求項１に記載の方法。
【請求項９】
前記レイアウトエンジンは、複合テキストのレイアウトエンジンである、
請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、組込みシステム（ｅｍｂｅｄｄｅｄ  ｓｙｓｔｅｍ）においてキャラクター文字列（ｃｈａｒａｃｔｅｒ  ｓｔｒｉｎｇ）を操作する方法に関する。より特定的には、組込みシステムにおいて複合テキスト言語に係るキャラクター文字列をレイアウトする方法に関する。
【背景技術】
【０００２】
多様な言語、特に、タイ語、クメール語、ミャンマー語、ヒンディー語、ベンガル語、タミル語、といったものは、複合テキスト言語に属する。これらの言語のキャラクターは左から右へ書かれる。フォントエンジン（ｆｏｎｔ  ｅｎｇｉｎｅ）は、文字列が正しくこれらの言語のキャラクターを含むようにすることができない。なぜなら、これらの言語の母音と子音は複合的に組み合わされており、キャラクターが表示される順序が論理的な順序と同じではないからである。これとは別に、特に、アラビア語、ペルシャ語、そしてヘブライ語、といった言語もまた複合テキスト言語に属するが、一方、これらの言語のキャラクターは右から左へ書かれる。このように、キャラクターを正しくフォーマットしたり、左から右に書かれたり、右から左に書かれる複合テキスト言語に係るキャラクターが入り混じった文字列を正しくレイアウトするためには、両方向のテキストレイアウト機能を備えた複合テキストレイアウトエンジンが必要とされる。例えば、あるキャラクターは接頭語としてレイアウトされることを要し、もしくは複合テキスト言語に係る他のキャラクターの接尾語としてレイアウトされることを要することもある。
【０００３】
複合テキストレイアウトエンジンは、特には、中国語、日本語、韓国語、英語及び／又はヨーロッパの言語、を含んだプレーンテキストの文字列をレイアウトするためにも使用することができる。
【０００４】
組込みシステムの中のテキストレイアウトエンジンは、キャラクターが２バイトのユニコードでエンコード化されるプレーンテキストの文字列をレイアウトすることができる。しかしながら、パーソナルコンピューターに比べて組込みシステムのメモリー空間は制限され、動作効率も制限があるために、組込みシステムの中のテキストレイアウトエンジンは、キャラクターが４バイトのユニコードでエンコード化されるプレーンテキストの文字列をレイアウトすること及び／又は属性もしくは色を有するキャラクターの文字列をレイアウトすることはできない。このように、組込みシステムにおいては文書ファイルの中のキャラクターや文字列が間違って表示され得る。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施例は、組込みシステムにおいて使用されるキャラクター文字列の操作について開示する。本方法は、オリジナル文字列の中の複数のキャラクターに係るキャラクターコードと属性及び／又は色に応じて、特別なエンコードされた文字列を生成することを含んでいる。組込みシステムにおいて、特別なエンコードと属性処理のモジュールを使用して、その特別なエンコードされた文字列に応じて代替的なエンコードされた文字列を生成する。組込みシステムにおいて、レイアウトエンジンを使用して、その代替的なエンコードされた文字列の中の複数のキャラクターをレイアウトすることによりレイアウトされた文字列を生成する。組込みシステムにおいて、フォントエンジンを使用して、レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字を表す。レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字がディスプレイ装置上に表示される。
【０００６】
本発明に係るこれらの、および他の目的は、これ以降に様々な絵や図を使って説明される望ましい実施例に係る詳しい記載を読んだ後において、当業者にとっては疑いなく明白になるであろう。
【課題を解決するための手段】
【０００７】
本方法は、オリジナル文字列の中の複数のキャラクターに係るキャラクターコードと属性及び／又は色に応じて、特別なエンコードされた文字列を生成することを含んでいる。組込みシステムにおいて、特別なエンコードと属性処理のモジュールを使用して、その特別なエンコードされた文字列に応じて代替的なエンコードされた文字列を生成する。組込みシステムにおいて、レイアウトエンジンを使用して、その代替的なエンコードされた文字列の中の複数のキャラクターをレイアウトすることによりレイアウトされた文字列を生成する。組込みシステムにおいて、フォントエンジンを使用して、レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字を表す。
【図面の簡単な説明】
【０００８】
【図１】図１は、本発明の実施例に従って、キャラクター文字列の操作方法を説明するフローチャートを示している。
【図２】図２は、本発明の実施例に従って、図１に係る方法を実行するための組込みシステムにおけるモジュールを説明するダイアグラムを示している。
【図３】図３は、本発明の実施例に従って、キャラクター文字列を示している。
【図４】図４は、本発明の別の実施例に従って、キャラクター文字列を示している。
【図５】図５は、本発明の別の実施例に従って、キャラクター文字列を示している。
【図６】図６は、本発明の別の実施例に従って、キャラクター文字列を示している。
【図７】図７は、本発明の別の実施例に従って、キャラクター文字列を示している。
【図８】図８は、本発明の別の実施例に従って、キャラクター文字列を示している。
【図９】図９は、本発明の別の実施例に従って、キャラクター文字列を示している。
【発明を実施するための形態】
【０００９】
本発明では、組込みシステムにおいて、２バイトのキャラクターコードと属性及び／又は色のそれぞれを有するキャラクターを含んだキャラクター文字列をレイアウトするための方法が紹介される。本方法は、複合テキスト言語に係るキャラクターを含み、属性及び／又は色を有する文字列をレイアウトするためにも使用され得る。本発明に係る方法は、ユニコード拡張Ｂ（Ｕｎｉｃｏｄｅ  Ｅｘｔｅｎｓｉｏｎ  Ｂ）もしくはユニコードの顔文字（Ｕｎｉｃｏｄｅ  Ｅｍｏｔｉｃｏｎ）に属するキャラクターといった、ユニコード値が６５５３５より大きい４バイトのキャラクターコードを有し、２バイトのユニコードでは表わすことができないキャラクターを取り扱うためにも使用され得る。属性は、２バイトもしくは４バイトでエンコードされ得る。例えば、属性が２バイトでエンコードされるときは、０ｘ０１００  はイタリック体を表し、０ｘ０２００  は太字を表し、０ｘ０４００  は下線を表し、そして０ｘ０８００  は輪郭を表し得る。色は、２バイトもしくは４バイトでエンコードされ得る。例えば、色が４バイトでエンコードされるときは、０ｘ００ＣＣＦＦ８０  は、緑色レベルが０ｘ００であり、赤色レベルが０ｘＣＣであり、透明レベルが０ｘＦＦであり、そして青色レベルが０ｘ８０である、キャラクターを表し得る。一方、０ｘＦＦＦＦＦＦＦＦ  は、白色のキャラクターを表し得る。
【００１０】
図１および図２を参照する。図１は、本発明の実施例に従って、キャラクター文字列の操作方法１００を説明するフローチャートを示している。図２は、本発明の実施例に従って、方法１００を実行するための組込みシステム２００の中のモジュールを説明するダイアグラムを示している。組込みシステム２００は、特別なエンコードと属性処理のモジュール２０２、レイアウトエンジン２０４、およびフォントエンジン２０６とを含んでいる。別の実施例においては、レイアウトエンジン２０４は、複合テキストレイアウトエンジンによって置き換えられ得る。方法１００は、以下のステップを含み得る。
【００１１】
ステップ１０２：オリジナル文字列の中のキャラクターコードと複数のキャラクターに係る属性及び／又は色に応じて、特別なエンコードされた文字列を生成する
ステップ１０４：組込みシステム２００において、特別なエンコードと属性処理のモジュール２０２を使用して、その特別なエンコードされた文字列に応じて代替的なエンコードされた文字列を生成する
ステップ１０６：組込みシステム２００において、レイアウトエンジン２０４を使用して、その代替的なエンコードされた文字列の中の複数のキャラクターをレイアウトすることによりレイアウトされた文字列を生成する
ステップ１０８：組込みシステム２００において、フォントエンジン２０６を使用して、レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字を表現する
ステップ１１０：レイアウトされた文字列の中の複数のキャラクターに係る属性及び／又は色を有する絵文字をディスプレイ装置上に表示する
【００１２】
エンコードモジュールは、オリジナル文字列の中の複数のキャラクターに係るキャラクターコードと属性及び／又は色に応じて、特別なエンコードされた文字列を生成するために、ステップ１０２において利用され得る。ステップ１０２においては、オリジナル文字列の中の複数のキャラクターに係るそれぞれのキャラクターコードは２バイトのユニコードまたは４バイトのユニコードであり得る。本発明においては、キャラクターのユニコードのコードポイント（Ｕｎｉｃｏｄｅ  ｃｏｄｅ  ｐｏｉｎｔ）を表すために「Ｕ＋」の後ろに数字を続け、ユニコードの変換フォーマットは、ＵＴＦ−８，ＵＴＦ−１６、またはＵＴＦ−３２であり得る。例えば、属性と色を有しないオリジナル文字列「ＡＢＣ」に係る２バイトのユニコードは、Ｕ＋００４１  Ｕ＋００４２  Ｕ＋００４３  として表され得る。それぞれが、キャラクターＡに係るユニコード００４１、キャラクターＢに係るユニコード００４２、そしてキャラクターＣに係るユニコード００４３に対応している。
【００１３】
オリジナル文字列が、ユニコードのコードポイントが６５５３５よりも大きく、及び／又は、属性及び／又は色を有するキャラクターを含んでいる場合には、オリジナル文字列の中の複数のキャラクターのキャラクターコードを４バイトから２バイトに変換するために、ステップ１０２において複数の既定の特別な属性エンコードモードが利用され得る。複数の既定の特別な属性エンコードモードの例を以下に示す。
【００１４】
エンコードモード１：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが２バイトのユニコードであり、オリジナル文字列の中の複数のキャラクターに係る属性が２バイトでエンコードされる場合に利用される
エンコードモード２：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが２バイトのユニコードであり、オリジナル文字列の中の複数のキャラクターに係る属性が２バイトでエンコードされ、そして、オリジナル文字列の中の複数のキャラクターに係る色が４バイトでエンコードされる場合に利用される
エンコードモード３：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが２バイトのユニコードであり、オリジナル文字列の中の複数のキャラクターに係る色が４バイトでエンコードされる場合に利用される
エンコードモード４：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが４バイトのユニコードである場合に利用される
エンコードモード５：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが４バイトのユニコードであり、オリジナル文字列の中の複数のキャラクターに係る属性が２バイトでエンコードされる場合に利用される
エンコードモード６：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが４バイトのユニコードであり、オリジナル文字列の中の複数のキャラクターに係る属性が２バイトでエンコードされ、そして、オリジナル文字列の中の複数のキャラクターに係る色が４バイトでエンコードされる場合に利用される
エンコードモード７：オリジナル文字列の中の複数のキャラクターに係るキャラクターコードが４バイトのユニコードであり、オリジナル文字列の中の複数のキャラクターに係る色が４バイトでエンコードされる場合に利用される
【００１５】
エンコードモード１を使用する実施例では、組込みシステム２００において、属性を有する図３のオリジナル文字列が、レイアウトされた後で出力され、もしくはディスプレイに表示される。図３のオリジナル文字列の２バイトのユニコードは、Ｕ＋００４１  Ｕ＋００４２  Ｕ＋００４３  である。最初に、ユーザーは、アプリケーションプログラムを使用するエンコード化モジュールでの特別な属性ルックアップテーブルにおいて、既定の属性を定め得る。例えば、既定の属性は、キャラクターコード「００００  ００１Ａ」で表される、フォントサイズ２６のように定め得る。この実施例においては、図３のオリジナル文字列の最初の２つキャラクターのキャラクターコードは  Ｕ＋００４１  Ｕ＋００４２  であり、ユニコード第０面に属し（ユニコード値が０ｘ１００００よりも小さい）、そして最初の２つのキャラクターの属性は既定の属性と同一である。このように、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、オリジナルな２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図３のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋００４３  であり、３番目のキャラクターの属性はフォントサイズ１６、太字、イタリック体であって、既定の属性と同一ではない。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードと属性を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、００４３  ０３１０  を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。ここで、００４３  は第３のキャラクターのオリジナルな２バイトのユニコードであり、０３１０  は第３のキャラクターの属性である。そして、文字列  ００４３  ０３１０  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第３のキャラクターのオリジナルな２バイトのユニコードと属性を、逆にルックアップできるようにである。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  ００００  Ｆ８ＦＦ  ０００１  ０００１  ００００  ００１Ａ  ００４３  ０３１０  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  は最初の２つのキャラクターのオリジナルな２バイトのユニコードと第３のキャラクターの２バイトの特別なコードを表しており、００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コードを表し、０００１  はエンコードモード１を表し、０００１  はオリジナル文字列の中の特別なキャラクターの数量を表し、００００  ００１Ａ  は既定の属性を表し、そして  ００４３  ０３１０  は特別なキャラクターのオリジナルな２バイトのユニコードと属性を表している。本発明に係る全ての実施例においては、特別な属性ルックアップテーブルで使用される識別コード、エンコードモードのコード、特別なキャラクターの数量、そして既定の属性、に係る��ータは、全て除外し得るか、もしくは少なくとも一つの上記データがコード化されたデータにおいて除外され得る。
【００１６】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、その特別なエンコードされた文字列の中の特別なキャラクターの属性を表わす特別なコードの代わりに、その特別なキャラクターのオリジナルな２バイトのユニコードを用いることができる。例えば、この実施例においては  ００４３  が  Ｆ７０１  の代わりに使用される。ステップ１０６の中のように、レイアウトエンジン２０４に対して送付され、そしてレイアウトされるように、代替的なエンコードされた文字列を生成するためである。代替的なエンコードされた文字列をレイアウトした後で、レイアウトエンジン２０４は、レイアウトされた文字列の中のキャラクターと、特別にエンコードされた文字列の中のキャラクターとを、一つずつ比較する。レイアウトされた文字列の中や特別なエンコードされた文字列の中の特別なコードによっては表されない、同じキャラクターのキャラクターコードと属性を、これらのキャラクターのオリジナルな２バイトのユニコードと既定の属性にそれぞれ変換するためである。一方で、キャラクターコードと特別なコードによって表された特別なキャラクターの属性は、特別な属性ルックアップテーブルを参照することにより、オリジナルな２バイトのユニコードと特別なキャラクターの属性に変換される。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルな２バイトのユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られ、レイアウトされた文字列の中の複数のキャラクターに係るキャラクターコード、属性及び／又は色のそれぞれに応じた絵文字を表し、表示する。
【００１７】
エンコードモード２を使用する実施例では、組込みシステム２００において、属性と色を有する図４のオリジナル文字列が、レイアウトされた後で出力され、もしくはディスプレイに表示される。図４のオリジナル文字列の２バイトのユニコードは、Ｕ＋００４１  Ｕ＋００４２  Ｕ＋００４３  である。最初に既定の属性と既定の色が、エンコード化モジュールの中の特別な属性ルックアップテーブルにおいて定義され得る。例えば、既定の属性は、フォントサイズ２６として定め得るし、既定の色は、黒の不透明であるとして定めることができ、キャラクターコード「００００  ００１Ａ  ００００  ＦＦ００」として表される。この実施例においては、図４のオリジナル文字列の最初の２つのキャラクターのキャラクターコードは  Ｕ＋００４１  Ｕ＋００４２  であり、ユニコード第０面に属し、そして最初の２つのキャラクターの属性と色は既定の属性と同一である。このように、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、オリジナルな２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図４のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋００４３  であり、３番目のキャラクターの属性はフォントサイズ１６、太字、イタリック体であり、そして３番目のキャラクターの色は赤の不透明（ドット領域として示されている）であって、既定の属性および色と同一ではない。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードと属性と色を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、  ００４３  ０３１０  ００ＦＦ  ＦＦ００  を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。ここで、００４３  は第３のキャラクターのオリジナルな２バイトのユニコードであり、０３１０  は第３のキャラクターの属性（フォントサイズ１６、太字、イタリック体）であり、００ＦＦ  ＦＦ００  は第３のキャラクターの色（赤で不透明）である。そして、文字列  ００４３  ０３１０  ００ＦＦ  ＦＦ００  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第３のキャラクターのオリジナルな２バイトのユニコードと属性と色を、逆にルックアップできるようにである。本発明の全ての実施例について、異なるキャラクター、異なる属性、そして異なる色、を表す特別なコードについては繰り返し説明されない。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  ００００  Ｆ８ＦＦ  ０００２  ０００１  ００００  ００１Ａ  ００００  ＦＦ００  ００４３  ０３１０  ００ＦＦ  ＦＦ００  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  は最初の２つのキャラクターのオリジナルな２バイトのユニコードと第３のキャラクターの２バイトの特別なコードを表しており、００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コード��表し、０００２  はエンコードモード２を表し、０００１  はオリジナル文字列の中の特別なキャラクターの数量を表し、００００  ００１Ａ  ００００  ＦＦ００  は既定の属性と既定の色を表し、そして  ００４３  ０３１０  ００ＦＦ  ＦＦ００  は特別なキャラクターのオリジナルな２バイトのユニコードと属性と色を表している。
【００１８】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、その特別なエンコードされた文字列の中の特別なキャラクターの属性と色を表わす特別なコードの代わりに、その特別なキャラクターのオリジナルな２バイトのユニコードを用いることができる。例えば、この実施例においては  ００４３  が  Ｆ７０１  の代わりに使用される。ステップ１０６の中のように、レイアウトエンジン２０４に対して送付され、そしてレイアウトされるように、代替的なエンコードされた文字列を生成するためである。代替的なエンコードされた文字列をレイアウトした後で、レイアウトエンジン２０４は、レイアウトされた文字列の中のキャラクターと、特別にエンコードされた文字列の中のキャラクターとを、一つずつ比較する。レイアウトされた文字列の中や特別なエンコードされた文字列の中の特別なコードによっては表されない、同じキャラクターのキャラクターコードと属性と色を、これらのキャラクターのオリジナルな２バイトのユニコードと、既定の属性と、既定の色にそれぞれ変換するためである。一方で、キャラクターコードと特別なコードによって表された特別なキャラクターの属性と色は、特別な属性ルックアップテーブルを参照することにより、オリジナルな２バイトのユニコードと特別なキャラクターの属性と色に変換される。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルな２バイトのユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られる。
【００１９】
エンコードモード３を使用する実施例では、組込みシステム２００において、色を有する図５のオリジナル文字列が、レイアウトされた後で出力される。図５のオリジナル文字列の２バイトのユニコードは、Ｕ＋００４１  Ｕ＋００４２  Ｕ＋００４３  である。最初に既定の色が、エンコード化モジュールの中の特別な属性ルックアップテーブルにおいて定義され得る。例えば、既定の色は、黒の不透明であるとして定めることができ、キャラクターコード「００００  ００１Ａ  ＦＦ００」として表される。この実施例においては、図５のオリジナル文字列の最初の２つのキャラクターのキャラクターコードは  Ｕ＋００４１  Ｕ＋００４２  であり、ユニコード第０面に属し、そして最初の２つのキャラクターの色は既定の色と同一である。このように、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、オリジナルな２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図５のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋００４３  であり、３番目のキャラクターの色は赤の不透明（ドット領域として示されている）であって、既定の属性および色と同一ではない。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードと色を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、  ００４３  ００ＦＦ  ＦＦ００  を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。ここで、００４３  は第３のキャラクターのオリジナルな２バイトのユニコードであり、００ＦＦ  ＦＦ００  は第３のキャラクターの色（赤で不透明）である。そして、文字列  ００４３  ００ＦＦ  ＦＦ００  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第３のキャラクターのオリジナルな２バイトのユニコードと色を、逆にルックアップできるようにである。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  ００００  Ｆ８ＦＦ  ０００３  ０００１  ００００  ００００  ＦＦ００  ００４３  ００ＦＦ  ＦＦ００  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  は最初の２つのキャラクターのオリジナルな２バイトのユニコードと第３のキャラクターの２バイトの特別なコードを表しており、００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コードを表し、０００３  はエンコードモード３を表し、０００１  はオリジナル文字列の中の特別なキャラクターの数量を表し、  ００００  ００００  ＦＦ００  は既定の色を表し、そして  ００４３  ００ＦＦ  ＦＦ００  は特別なキャラクターのオリジナルな２バイトのユニコードと属性と色を表している。
【００２０】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、その特別なエンコードされた文字列の中の特別なキャラクターの属性と色を表わす特別なコードの代わりに、その特別なキャラクターのオリジナルな２バイトのユニコードを用いることができる。例えば、この実施例においては  ００４３  が  Ｆ７０１  の代わりに使用される。ステップ１０６の中のように、レイアウトエンジン２０４に対して送付され、そしてレイアウトされるように、代替的なエンコードされた文字列を生成するためである。代替的なエンコードされた文字列をレイアウトした後で、レイアウトエンジン２０４は、レイアウトされた文字列の中のキャラクターと、特別にエンコードされた文字列の中のキャラクターとを、一つずつ比較する。レイアウトされた文字列の中や特別なエンコードされた文字列の中の特別なコードによっては表されない、同じキャラクターのキャラクターコードと色を、これらのキャラクターのオリジナルな２バイトのユニコードと既定の色にそれぞれ変換するためである。一方で、キャラクターコードと特別なコードによって表された特別なキャラクターの色は、特別な属性ルックアップテーブルを参照することにより、オリジナルな２バイトのユニコードと特別なキャラクターの色に変換される。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルな２バイトのユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られる。
【００２１】
エンコードモード４を使用する実施例では、組込みシステム２００において、複合テキスト言語に係るキャラクターを有する図６のオリジナル文字列が、レイアウトされた後で出力される。図６のオリジナル文字列の４バイトのユニコードは、Ｕ＋００００００４１  Ｕ＋００００００４２  Ｕ＋０００２００１８  である。この実施例においては、図６のオリジナル文字列の最初の２つのキャラクターのキャラクターコードは  Ｕ＋００００００４１  Ｕ＋００００００４２  であり、ユニコード第０面に属し、そして、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、オリジナルな２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図６のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋０００２００１８  であり、ユニコード第２面に属している。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードを表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、  ００１８  ０００２  （Ｕ＋０００２００１８  がどのようにメモリーに保管されるかによって調整される）を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。文字列  ００１８  ０００２  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第３のキャラクターのオリジナルな４バイトのユニコードを、逆にルックアップできるようにである。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  ００００  Ｆ８ＦＦ  ０００４  ０００１  ００１８  ０００２  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  は最初の２つのキャラクターのオリジナルな２バイトのユニコードと第３のキャラクターの２バイトの特別なコードを表しており、００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コードを表し、０００４  はエンコードモード４を表し、０００１  はオリジナル文字列の中の特別なキャラクターの数量を表し、  ００１８  ０００２  は特別なキャラクターのオリジナルな４バイトのユニコードを表している。
【００２２】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、その特別なエンコードされた文字列の中の特別なキャラクターを表わす特別なコードの代わりに、同一の複合テキスト言語に係る別のキャラクターを表すことができる２バイトのユニコードを、特別なキャラクターとして用いることができる。例えば、この実施例においては、別の漢字を表す２バイトのユニコード  Ｕ＋４Ｅ００  が  Ｆ７０１  の代わりに使用される。レイアウトエンジン２０４が、対応する複合テキスト言語のテキストの方向性に従って、文字列の中の複合テキスト言語に係る特別なキャラクターをレイアウトすることができるようにである。それでなければ、特別なキャラクターと同一のテキストの方向性、左から右または右から左、を有する別の複合テキスト言語に係るキャラクターを表すことのできる２バイトのユニコードが、特別なエンコードされた文字列の中の特別なキャラクターを表す特別なコードに代わって、使用され得る。さもなければ、言語にかかわらず別のキャラクターを表すことのできる２バイトのユニコードが、特別なエンコードされた文字列の中の特別なキャラクターを表す特別なコードに代わって、使用され得る。次に、ステップ１０６において、代替的なエンコードされた文字列が生成され、レイアウトエンジン２０４に対して送付される。そのようにする際に、文字列の中の複合テキスト言語に係るキャラクターをフォーマットすること、および両方向性、左から右または右から左のいずれでも、のある複合テキスト言語に係るキャラクターを有する文字列をレイアウトすることが、最も効率的な方法で実行され得る。代替的なエンコードされた文字列をレイアウトした後で、レイアウトエンジン２０４は、レイアウトされた文字列の中のキャラクターと、特別にエンコードされた文字列の中のキャラクターとを、一つずつ比較する。レイアウトされた文字列の中や特別なエンコードされた文字列の中の特別なコードによっては表されない、同じキャラクターのキャラクターコードを、これらのキャラクターのオリジナルな４バイトのユニコードにそれぞれ変換するためである。一方で、特別なコードによって表されたキャラクターコードは、特別な属性ルックアップテーブルを参照することにより、オリジナルな４バイトのユニコードに変換される。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルな４バイトのユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られる。
【００２３】
エンコードモード５を使用する実施例では、組込みシステム２００において、属性を有し複合テキスト言語に係るキャラクターを含む図７のオリジナル文字列が、レイアウトされた後で出力される。図７のオリジナル文字列の４バイトのユニコードは、Ｕ＋００００００４１  Ｕ＋００００００４２  Ｕ＋００００００４３  Ｕ＋０００２００１８  である。最初に、エンコード化モジュールの中の特別な属性ルックアップテーブルにおいて既定の属性が定められる。例えば、既定の属性は、キャラクターコード「００００  ００１Ａ」で表される、フォントサイズ２６のように定められ得る。この実施例においては、図７のオリジナル文字列の最初の２つのキャラクターのキャラクターコードは  Ｕ＋００００００４１  Ｕ＋００００００４２  であり、ユニコード第０面に属し、そして、最初の２つのキャラクターの属性は既定の属性と同一であり、従って、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図７のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋００００００４３  であり、３番目のキャラクターの属性はフォントサイズ１６、太字、イタリック体であって、既定の属性と同一ではない。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードと属性を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、００４３  ００００  ０３１０  を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。ここで、００４３  ００００  は第３のキャラクターのオリジナルな４バイトのユニコードであり、０３１０  は第３のキャラクターの属性である。そして、文字列  ００４３  ００００  ０３１０  は特別な属性ルックアップテーブルに保管される。図７のオリジナル文字列の４番目のキャラクターのキャラクターコードは  Ｕ＋０００２００１８  であり、ユニコード第２面に属している。そして、４番目のキャラクターの属性はフォントサイズ２６、太字、イタリック体であって、既定の属性と同一ではない。このように、４番目のキャラクターは特別なキャラクターであり、４番目のキャラクターのキャラクターコードを表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、  ００１８  ０００２  ０３１Ａ  を表すための特別な２バイトの特別なコードは  Ｆ７０２  であり得る。ここで、００１８  ０００２  は４番目のキャラクターのオリジナルな４バイトのユニコードであり、  ０３１Ａ  は４番目のキャラクターの属性である。そして、文字列  ００１８  ０００２  ０３１Ａ  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第４のキャラクターのオリジナルな４バイトのユニコードと属性を、逆にルックアップできるようにである。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  Ｆ７０２  ００００  Ｆ８ＦＦ  ０００５  ０００２  ００００  ００００  ００１Ａ  ００４３  ００００  ０３１０  ００１８  ０００２  ０３１Ａ  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  Ｆ７０２  は最初の２つのキャラクターの２バイトのユニコード及び第３と第４のキャラクターの２バイトの特別なコードを表しており、  ００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コードを表し、０００５  はエンコードモード５を表し、０００２  はオリジナル文字列の中の特別なキャラクターの数量を表し、００００  ００００  ００１Ａ  は既定の属性を表し、００４３  ００００  ０３１０  は３番目のキャラクターのオリジナルな４バイトのユニコードと属性を表し、００１８  ０００２  ０３１Ａ  は４番目のキャラクターのオリジナルな４バイトのユニコードと属性を表している。
【００２４】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、その特別なエンコードされた文字列の中の特別なキャラクターの属性を表わす特別なコードの代わりに、特別なキャラクターに係る２バイトのユニコードを用いることができる。例えば、２バイトのユニコード  ００４３  が  特別なコード  Ｆ７０１  の代わりに使用される。特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、その特別なエンコードされた文字列の中の４番目のキャラクターを表わす特別なコードの代わりに、４番目のキャラクターのような同一の複合テキスト言語に係る別のキャラクターを表すことができる２バイトのユニコードを用いることができる。例えば、この実施例においては、別の漢字を表す２バイトのユニコード  Ｕ＋４Ｅ００  が  Ｆ７０２  の代わりに使用される。レイアウトエンジン２０４が、対応する複合テキスト言語のテキストの方向性に従って、文字列の中の複合テキスト言語に係る特別なキャラクターをレイアウトすることができるようにである。それでなければ、４番目のキャラクターと同一のテキストの方向性、左から右または右から左、を有する別の複合テキスト言語に係るキャラクターを表すことのできる２バイトのユニコードが、特別なエンコードされた文字列の中の特別なキャラクターを表す特別なコードに代わって、使用され得る。さもなければ、言語にかかわらず別のキャラクターを表すことのできる２バイトのユニコードが、特別なエンコードされた文字列の中の特別なキャラクターを表す特別なコードに代わって、使用され得る。次に、ステップ１０６において、代替的なエンコードされた文字列が生成され、レイアウトエンジン２０４に対して送付される。代替的なエンコードされた文字列をレイアウトした後で、レイアウトエンジン２０４は、レイアウトされた文字列の中のキャラクターと、特別にエンコードされた文字列の中のキャラクターとを、一つずつ比較する。レイアウトされた文字列の中や特別なエンコードされた文字列の中の特別なコードによっては表されない、同じキャラクターのキャラクターコードを、これらのキャラクターのオリジナルな４バイトのユニコードにそれぞれ変換するためである。一方で、特別なコードによって表された特別なキャラクターの属性とキャラクターコードは、特別な属性ルックアップテーブルを参照することにより、それぞれ特別なキャラクターに係るオリジナルな４バイトのユニコードに変換される。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルな４バイトのユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られる。
【００２５】
エンコードモード６を使用する実施例では、組込みシステム２００において、属性と色を有し複合テキスト言語に係るキャラクターを含む図８のオリジナル文字列が、レイアウトされた後で出力される。図８のオリジナル文字列の４バイトのユニコードは、Ｕ＋００００００４１  Ｕ＋００００００４２  Ｕ＋００００００４３  Ｕ＋０００２００１８  である。最初に、エンコード化モジュールの中の特別な属性ルックアップテーブルにおいて既定の属性と色が定められる。例えば、既定の属性は、フォントサイズ２６のように定められ、規定の色は、黒の不透明として定めることができ、「００００  ００００  ００１Ａ  ００００  ＦＦ００」と表され得る。この実施例においては、図８のオリジナル文字列の最初の２つのキャラクターのキャラクターコードは  Ｕ＋００００００４１  Ｕ＋００００００４２  であり、ユニコード第０面に属し、そして、最初の２つのキャラクターの属性と色は既定の属性および既定の色と同一であり、従って、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図８のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋００００００４３  であり、３番目のキャラクターの属性はフォントサイズ１６、太字、イタリック体であって、既定の属性と同一ではなく、３番目のキャラクターの色は黒の不透明である。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードと属性と色を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、００４３  ００００  ０３１０  ００００  ＦＦ００  を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。ここで、００４３  ００００  は第３のキャラクターのオリジナルな４バイトのユニコードであり、０３１０  は第３のキャラクターの属性であり、００００  ＦＦ００  は第３のキャラクターの色である。そして、文字列  ００４３  ００００  ０３１０  ００００  ＦＦ００  は特別な属性ルックアップテーブルに保管される。図８のオリジナル文字列の４番目のキャラクターのキャラクターコードは  Ｕ＋０００２００１８  であり、ユニコード第２面に属している。そして、４番目のキャラクターの属性はフォントサイズ２６、太字、イタリック体であり、４番目のキャラクターの色は赤の不透明であって（ドット領域として示されている）、既定の属性および既定の色と同一ではない。このように、４番目のキャラクターは特別なキャラクターであり、４番目のキャラクターのキャラクターコードと属性と色を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、  ００１８  ０００２  ０３１Ａ  ００ＦＦ  ＦＦ００  を表すための特別な２バイトの特別なコードは  Ｆ７０２  であり得る。ここで、００１８  ０００２  は４番目のキャラクターのオリジナルな４バイトのユニコードであり、  ０３１Ａ  は４番目のキャラクターの属性であり、  ００ＦＦ  ＦＦ００  は４番目のキャラクターの色である。そして、文字列  ００１８  ０���０２  ０３１Ａ  ００ＦＦ  ＦＦ００  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第４のキャラクターのオリジナルな４バイトのユニコードと属性と色を、逆にルックアップできるようにである。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  Ｆ７０２  ００００  Ｆ８ＦＦ  ０００６  ０００２  ００００  ００００  ００１Ａ  ００００  ＦＦ００  ００４３  ００００  ０３１０  ００００  ＦＦ００  ００１８  ０００２  ０３１Ａ  ００ＦＦ  ＦＦ００  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  Ｆ７０２  は最初の２つのキャラクターの２バイトのユニコード及び第３と第４のキャラクターの２バイトの特別なコードを表しており、００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コードを表し、０００６  はエンコードモード６を表し、０００２  はオリジナル文字列の中の特別なキャラクターの数量を表し、００００  ００００  ００１Ａ  は既定の属性を表し、００００  ＦＦ００  は既定の色を表し、００４３  ００００  ０３１０  ００００  ＦＦ００  は３番目のキャラクターのオリジナルな４バイトのユニコードと属性と色を表し、００１８  ０００２  ０３１Ａ  ００ＦＦ  ＦＦ００  は４番目のキャラクターのオリジナルな４バイトのユニコードと属性と色を表している。
【００２６】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、前述の実施例と同じ処理を実行する。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルなユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られる。
【００２７】
エンコードモード７を使用する実施例では、組込みシステム２００において、色を有し複合テキスト言語に係るキャラクターを含む図９のオリジナル文字列が、レイアウトされた後で出力される。図９のオリジナル文字列の４バイトのユニコードは、Ｕ＋００００００４１  Ｕ＋００００００４２  Ｕ＋０００２００１８  である。最初に、エンコード化モジュールの中の特別な属性ルックアップテーブルにおいて既定の色が定められる。例えば、規定の色は、黒の不透明として定めることができ、「００００  ００００  ００００  ＦＦ００」と表され得る。この実施例においては、図８のオリジナル文字列の最初の２つのキャラクターのキャラクターコードは  Ｕ＋００００００４１  Ｕ＋００００００４２  であり、ユニコード第０面に属し、そして、最初の２つのキャラクターの色は既定の色と同一であり、従って、最初の２つのキャラクターは特別なキャラクターではなく、エンコード化モジュールによって、２バイトのユニコード  ００４１  ００４２として、それぞれにエンコードされる。図９のオリジナル文字列の３番目のキャラクターのキャラクターコードは  Ｕ＋０００２００１８  であり、３番目のキャラクターの色は赤の不透明（ドット領域として示されている）であり、既定の属性と同一ではない。このように、３番目のキャラクターは特別なキャラクターであり、３番目のキャラクターのキャラクターコードと属性と色を表すためにエンコード化モジュールによって、２バイトの特別なコードとしてエンコードされる。例えば、００１８  ０００２  ００ＦＦ  ＦＦ００  を表すための特別な２バイトの特別なコードは  Ｆ７０１  であり得る。ここで、００１８  ０００２  は第３のキャラクターのオリジナルな４バイトのユニコードであり、００ＦＦ  ＦＦ００  は第３のキャラクターの色である。そして、文字列  ００１８  ０００２  ００ＦＦ  ＦＦ００  は特別な属性ルックアップテーブルに保管される。その２バイトの特別なコードを介して、第４のキャラクターのオリジナルな４バイトのユニコードと色を、逆にルックアップできるようにである。次に、エンコード化モジュールは、００４１  ００４２  Ｆ７０１  ００００  Ｆ８ＦＦ  ０００７  ０００１  ００００  ００００  ００００  ＦＦ００  ００１８  ０００２  ００ＦＦ  ＦＦ００  というコード化されたデータを有する特別にエンコードされた文字列を生成する。以下は、コード化されたデータについて、左から右への説明である。文字列  ００４１  ００４２  Ｆ７０１  は最初の２つのキャラクターの２バイトのユニコードと第３のキャラクターの２バイトの特別なコードを表しており、  ００００  はオリジナル文字列の終わりを表し、Ｆ８ＦＦ  は特別な属性ルックアップテーブルにおいて使用される識別コードを表し、０００７  はエンコードモード７を表し、０００１  はオリジナル文字列の中の特別なキャラクターの数量を表し、００００  ００００  ００００  ＦＦ００  は既定の色を表し、００１８  ０００２  ００ＦＦ  ＦＦ００  は４番目のキャラクターのオリジナルな４バイトのユニコードと色を表している。
【００２８】
ステップ１０４においては、特別なエンコードされた文字列を受け取った後で、特別なエンコードと属性処理のモジュール２０２は、前述の実施例と同じ処理を実行する。そして、レイアウトされた文字列の中のそれぞれのキャラクターに係るオリジナルなユニコードは、ステップ１０８とステップ１１０を実行するためにフォントエンジン２０６に送られる。
【００２９】
まとめると、キャラクターのキャラクターコード、属性、そして色は、組込みシステム２００、および組込みシステム２００において２バイトのユニコードのキャラクターを含む文字列を操作するためにレイアウトエンジン２００、の限られたメモリ空間に保管され得る。それらは、両方向性の複合テキストをレイアウトする機能を実行するために、複合テキスト言語に係るキャラクターをフォーマットするために、そして属性と色を有するキャラクターを取り扱うために、利用され得る。このように、属性と色を有しており、複合テキスト言語に係るキャラクターを含んでいるキャラクター文字列は、本発明に従って、組込みシステム２００において、適正に、そして明確に出力され、もしくは表示され得る。
【００３０】
当業者であれば、本発明の範囲内において、装置や方法に係る多くの変更および代替がなされ得ることが容易に理解されるであろう。従って、上記の開示は、添付の特許請求の範囲に係る境界によってのみ制限されるものと理解されるべきである。
【図１】
2014038301.tif 000003
【図２】
2014038301.tif 000004
【図３】
2014038301.tif 000005
【図４】
2014038301.tif 000006
【図５】
2014038301.tif 000007
【図６】
2014038301.tif 000008
【図７】
2014038301.tif 000009
【図８】
2014038301.tif 000010
【図９】
2014038301.tif 000011