Translator
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Peran seorang Penerjemah adalah untuk memproduksi/mengembalikan string yang diterjemahkan untuk pemutar tampilan.Ini dapat digunakan untuk mengambil teks lokal yang siap ditampilkan dari LocalizationTable.Sumber dari properti Translator.LocaleId , set tabel yang akan dicari, dan urutan di mana akan mencarinya tergantung pada metode yang digunakan untuk membuat instansi Penerjemah.
Input untuk Penerjemah adalah string bahasa pengembang asli dan konteks, di mana semua atau sebagian dari konteks dapat digunakan untuk menemukan terjemahan yang lebih tepat/situasional untuk string sumber.
Terjemahan juga dapat digunakan untuk memproduksi string terjemahan dengan inser (pengganti data) yang dapat berubah urutan berdasarkan bahasa target.
Rangkuman
Properti
Lokasi string yang diterjemahkan.
Metode
Kembalikan string teks lokal di dalam LocalizationTable berdasarkan lokasinya Translator , dengan unit.
Kembalikan string teks lokal di dalam LocalizationTable berdasarkan lokasinya Translator , dengan pencarian sumber.
Properti
LocaleId
Lokal Roblox dari output menerjemahkan string terjemahan dari tabel ini, misalnya "en-us" atau "es-es." Nilai default adalah "en-us".
Metode
FormatByKey
Kembalikan string teks lokal di dalam LocalizationTable berdasarkan lokasinya Translator , dengan unit.Tabel opsional args digunakan untuk mengisi parameter format dalam entri teks yang cocok.
Perhatikan bahwa metode ini akan menyebabkan kesalahan dalam kasus berikut:
- Jika tidak ada yang LocalizationTables tersedia untuk ini Translator termasuk nilai untuk unityang diberikan.
- Jika string format untuk kunci menggunakan parameter bernomor dan args tidak merupakan array.
- Jika string format menggunakan parameter bernama dan args bukan tabel pasangan kunci-nilai,
- Jika args hilang nilai untuk parameter yang digunakan dalam string format pertandingan .
Lihat Lokalisasi dengan skrip untuk lebih banyak rincian dan contoh penggunaan fungsi ini.
Parameter
Nilai Kunci untuk dicari dan diterjemahkan.
Harus disediakan jika teks dan terjemahan Sumber berisi string format.Akan menjadi tabel nilai Luau atau pasangan nilai kunci, tergantung pada apakah format string diberi nomor atau diberi nama.
Memberikan nilai
Translate
Kembalikan string teks lokal di dalam LocalizationTable berdasarkan lokasinya Translator.String ini akan berada dalam konteks objek yang disediakan, mengingat teks Sumber yang disediakan.
Lihat Lokalisasi dengan skrip untuk lebih banyak rincian dan contoh penggunaan fungsi ini.
Penghapusan Konteks
Dalam beberapa kasus, string sumber duplikat mungkin memiliki terjemahan yang sama sekali berbeda di bahasa lain. Sebagai contoh, noun bahasa Inggris "Layar" dapat menunjukkan baik layar komputer maupun layar jendela, tetapi terjemahan Spanyol sama sekali berbeda:
<td width="16%">B</td><td width="18%">C</td><td width="12%">D</td><td width="18%">E</td></tr><tr><td>Kunci</td><td>Konteks</td><td><b>Sumber</b></td><td>Contoh</td><td><b>es</b></td></tr><tr><td /><td /><td>Layar</td><td /><td>Layar</td></tr><tr><td /><td /><td>Layar</td><td /><td>Pembasmi Nyamuk</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
A |
Dalam kasus ini, argumen pertama untuk fungsi ini — valid dalam game Instance — dapat digunakan sebagai "pemecah seri" ketika beberapa objek GUI menggunakan string sumber yang sama.Untuk menerapkan ini, spesifikasikan "jalur" ke Instance yang ingin Anda ganti sebagai nilai Konteks dari data terjemahan:
<td width="36%">B</td><td width="18%">C</td><td width="12%">D</td><td width="18%">E</td></tr><tr><td>Kunci</td><td><b>Konteks</b></td><td>Sumber</td><td>Contoh</td><td>es</td></tr><tr><td /><td>ruang kerja.ComputerScreen.SurfaceGui.TextLabel</td><td>Layar</td><td /><td>Layar</td></tr><tr><td /><td /><td>Layar</td><td /><td>Pembasmi Nyamuk</td></tr><tr><td /><td /><td /><td /><td /></tr></tbody>
A |
Kemudian, saat memanggil fungsi ini dalam skrip, lewati argumen yang sama Instance sebagai argumen pertama, diikuti dengan teks pencarian Sumber sebagai argumen kedua:
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
Parameter
Sebuah valid dalam game Instance untuk digunakan untuk penghapusan konteks seperti yang dijelaskan di atas.Perhatikan bahwa argumen ini dapat disesuaikan, misalnya game , jika Anda tidak memerlukan penghapusan konteks.
Teks Sumber untuk dicari dan diterjemahkan.
Memberikan nilai
Teks yang diterjemahkan.