アプリケーションのローカライズFlash Player 9 以降、Adobe AIR 1.0 以降 ローカリゼーションは、複数のロケールをサポートするアセットを含む処理です。ロケールは、言語と国コードの組み合わせです。例えば、en_US は米国で話されている英語を指し、fr_FR はフランスで話されているフランス語を指します。これらのロケールのアプリケーションをローカライズするには、2 セットのアセットを指定します。1 つは en_US ロケール用でもう 1 つは fr_FR ロケール用のものです。 ロケールでは言語を共有できます。例えば、en_US と en_GB(英国)は異なるロケールです。この場合は両方のロケールで英語を使用していますが、国コードでは両方のロケールが別のロケールであることが示されているので、別のアセットを使用している可能性があります。例えば、アプリケーションは en_US ロケールでは「color」という単語の綴りを使用しますが、en_GB ロケールでは単語の綴りは「colour」になります。また、通貨単位はロケールに応じてドルまたはポンドで表され、日付と時刻の形式も異なっている可能性があります。 国コードを指定せずに、言語アセットのセットを提供することもできます。例えば、英語用に en アセットを提供し、米国英語に固有の en_US ロケール用に追加アセットを提供できます。 ローカリゼーションは、単にアプリケーションで使用されているストリングを翻訳することではありません。これには、オーディオファイル、イメージ、ビデオなどの各種のアセットが含まれることもあります。 ロケールの選択コンテンツまたはアプリケーションが使用するロケールを決定するには、次のいずれかの方法を使用します。
Flex コンテンツのローカライズAdobe Flex には、Flex コンテンツをローカライズするためのフレームワークが含まれています。このフレームワークには、Locale、ResourceBundle、ResourceManagerImpl の各クラスと、IResourceBundle、IResourceManagerImpl の各インターフェイスが含まれています。 アプリケーションのロケールを並べ替えるユーティリティクラスを含む Flex ローカリゼーションライブラリが Google Code(http://code.google.com/p/as3localelib/)に公開されています。 Flash コンテンツのローカライズAdobe Flash Professional には、ActionScript 3.0 コンポーネントの Locale クラスが含まれています。Locale クラスを使用すると、SWF ファイルでの多言語テキストの表示方法を指定できます。Flash のストリングパネルでは、ダイナミックテキストフィールドでストリングリテラルの代わりにストリング ID を使用できます。この機能により、言語別の XML ファイルからテキストを読み込んで表示する SWF ファイルを作成できます。Locale クラスの使用について詳しくは、「Adobe Flash Platform 用 ActionScript 3.0 リファレンスガイド」を参照してください。 AIR アプリケーションのローカライズAIR SDK には、HTML ローカリゼーションフレームワーク(AIRLocalizer.js ファイルに含まれる)が用意されています。このフレームワークには、HTML ベースのアプリケーションで複数のロケールを操作するのに役立つ API が含まれています。ロケールを並べ替える ActionScript ライブラリが http://code.google.com/p/as3localelib/ に公開されています。 日付、時刻および通貨のローカライズアプリケーションが日付、時刻および通貨を表示する方法は各ロケールで大きく異なります。例えば、日付表示に関する米国標準が month/day/year であるのに対してヨーロッパ標準では day/month/year になります。 日付、時刻および通貨の形式を指定するコードを作成できます。例えば、次のコードは Date オブジェクトを month/day/year 形式または day/month/year 形式に変換します。locale 変数(ロケールを表す)が "en_US" に設定されている場合、この関数は month/day/year 形式を返します。この例は、他のすべてのロケールについては、Date オブジェクトを day/month/year 形式に変換します。 function convertDate(date) { if (locale == "en_US") { return (date.getMonth() + 1) + "/" + date.getDate() + "/" + date.getFullYear(); } else { return date.getDate() + "/" + (date.getMonth() + 1) + "/" + date.getFullYear(); } } ADOBE FLEXFlex フレームワークには、日付、時刻および通貨の形式を設定するためのコントロールが含まれています。これには、DateFormatter コントロールや CurrencyFormatter コントロールが含まれています。 |
|