Translator
*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。
翻訳者の役割は、表示プレイヤーのためにローカライズされた文字列を製造/返却することです。それは、LocalizationTable からディスプレイ準備のローカライズされたテキストを取得するために使用できます。Translator.LocaleId プロパティのソース、検サーチするテーブルのセット、そしてそれらを検索する順序は、翻訳機インスタンスを作成するために使用されたメソッドに依存します。
翻訳機の入力は、オリジナルの開発言語ストリングとコンテキストで、コンテキスト全体または一部を使用して、ソースストリン文字列のより精密/状況的な翻訳を見つけることができます。
翻訳者は、ターゲット言語に基づいて順序が変更される可能性のある挿入を含む翻訳文字を製造するためにも使用できます。
概要
方法
キーに基づいて、ローカライズされたテキストストリングを LocalizationTable に返し、その Translator ローカルに基づいて。
ソース検索に基づいて、ローカライズされたテキストストリングを LocalizationTable に返し、Translator のローカルに基づいて。
プロパティ
方法
FormatByKey
キーに基づいて、ローカライズされたテキストストリングを LocalizationTable に返し、その Translator ローカルに基づいて。オプションの args テーブルは、一致するテキスト入力でフォーマットパラメータを満たすために使用されます。
このメソッドは、次の場合にエラーをスローすることに注意してください:
- この LocalizationTables に利用可能なものがない場合、Translator に指定されたキーの値を含めます。
- キーの フォーマット文字列 が数字パラメータと args を使用し、配列ではない場合
- フォーマット弦 が名前付きパラメータを使用し、 args がキー-値ペアのテーブルでない場合
- if 引数 が一致する フォーマット文字列 で使用されるパラメータの値が欠落している場合。
この機能の詳細と使用例については、スクリプトでローカライズ を参照してください。
パラメータ
検索して翻訳する キー 値。
ソース テキストと翻訳にフォーマット文字列が含まれる場合に提供されます。フォーマット文字列が番号付けられているか名前付けられているかに応じて、Luau テーブルの値 または キー-バリューペアになります。
戻り値
Translate
ローカライズされたテキストストリングを LocalizationTable に基づいて、Translator のローカルに返します。この文字列は、提供された ソース テキストにより、提供されたオブジェクトのコンテキストになります。
この機能の詳細と使用例については、スクリプトでローカライズ を参照してください。
コンテキストオーバーライド
いくつかの場合、複製の ソース 文字列は、他の言語で完全に異なる翻訳を持つ可能性があります。たとえば、英語の冠詞「スクリーン」は、コンピューター画面とウィンドウ画面の両方を示すことができますが、スペイン語の翻訳は完全に異なります:
<td width="16%">B</td><td width="18%">C</td><td width="12%">D</td><td width="18%">E</td></tr><tr><td>キー</td><td>コンテンツ</td><td><b>出典</b></td><td>例</td><td><b>es</b></td></tr><tr><td /><td /><td>画面</td><td /><td>パンタラ</td></tr><tr><td /><td /><td>画面</td><td /><td>モスキテロ</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
A |
これらの場合、この関文字列の最初の引数—有効なゲーム内 Instance —は、複数の GUI オブジェクトが同じソースストリングを使用するときに「タイブレーカー」として使用できます。これを実装するには、翻訳データの Instance 値としてオーバーライドしたい パス を指定してください:
<td width="36%">B</td><td width="18%">C</td><td width="12%">D</td><td width="18%">E</td></tr><tr><td>キー</td><td><b>コンテンツ</b></td><td>出典</td><td>例</td><td>es</td></tr><tr><td /><td>ワークスペース。ComputerScreen.SurfaceGui.TextLabel</td> <td>画面</td><td /><td>パンタラ</td></tr><tr><td /><td /><td>画面</td><td /><td>モスキテロ</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
A |
次に、スクリプトでこの関数を呼び出すときは、最初の引数として同じ Instance をパスし、 ソース 検索テキストを2番目の引数として次にパスします:
local Players = game:GetService("Players")
local LocalizationService = game:GetService("LocalizationService")
local success, translator = pcall(function()
return LocalizationService:GetTranslatorForPlayerAsync(Players.LocalPlayer)
end)
if success then
local trans = translator:Translate(workspace.ComputerScreen.SurfaceGui.TextLabel, "Screen")
print(trans)
else
warn("Cannot load translator for player!")
end
パラメータ
ゲーム内の有効な Instance を使用して、上記のコンテキストオーバーライドに使用します。この引数は任意で、例えば game であることに注意してください、コンテキストオーバーライドが必要ない場合。
検索して翻訳する ソース テキスト。
戻り値
翻訳されたテキスト。