ローカリゼーション

ローカリゼーション

Revit では、外部コマンド ボタンのユーザが認識できるリソース(文字、大きいアイコンのイメージ、簡単な/詳しい説明、ツールチップのイメージなど)をローカライズすることができます。文字列、イメージ、ボタンのアイコンを含む .NET サテライト DLL を作成する必要があります。次に、サテライト DLL のリソース名に対応するように、.addin ファイル内のタグの値を変更しますが、@character を先頭に付ける必要があります。つまり、次のタグ

コード領域 3-13: ローカライズされていない文字入力

<Text>Extension Manager</Text>

は次のようになります。

コード領域 3-14 ローカライズされた文字入力

<Text>@ExtensionText</Text>

ここで、ExtensionText はサテライト DLL にあるリソースの名前になります。

サテライト DLL は、en や en-US のような、言語カルチャの言語の名前の付いたフォルダに入っていると想定されます。フォルダは、アドイン アセンブリを含むフォルダ内に配置する必要があります。マネージ サテライト DLL を作成するには、「http://msdn.microsoft.com/ja-jp/library/vstudio/e9zazcx5.aspx」を参照してください。

Revit セッションの言語にかかわらず、LanguageType タグで言語とカルチャを明示的に指定することで、特定の言語のリソース DLL を Revit で強制的に使用できます。

コード領域 3-15: LanguageType タグを使用

<LanguageType>English_USA</LanguageType>

たとえば、以上のエントリに必ず en-US サテライト DLL から値を常にロードするようにし、外部コマンド マニフェスト ファイルのローカライズ可能なメンバーを考慮する際に、現在の Revit の言語やカルチャ設定を無視するように設定できます。

Revit は Autodesk.Revit.ApplicationServices.LanguageType 列挙型で定義する 11 の言語(English_USA、German、Spanish、French、Italian、Dutch、Chinese_Simplified、Chinese_Traditional、Japanese、Korean、Russian)をサポートしています。