Translator

Hiển Thị Bản Đã Lỗi Thời

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

Không Thể Tạo
Không Sao Chép

Vai trò của một Nhà dịch là sản xuất/trả lại các chuỗi được localized cho người xem. Nó có thể được sử dụng để lấy lại các chuỗi được localized để xem từ một LocalizationTable . Nguồn của thuộc

Đầu vào cho một người dịch là dòng ngôn ngữ phát triển ban đầu và một context, nơi tất cả hoặc một phần của context có thể được sử dụng để tìm một dịch chính xác hơn / ngữ cảnh hơn cho dòng chuỗi nguồn.

Người dịch cũng có thể được sử dụng để sản xuất các chuỗi được dịch với những thay đổi trong các hàm (thay đổi dữ liệu) có thể thay đổi trình tự dựa trên ngôn ngữ mục tiêu.

Tóm Tắt

Thuộc Tính

  • Chỉ Đọc
    Không Sao Chép
    Đọc Song Song

    Nơi dịch của chuỗi.

Phương Pháp

Thuộc Tính

LocaleId

Chỉ Đọc
Không Sao Chép
Đọc Song Song

Ngôn ngữ Roblox của các chuỗi dịch từ bảng này, ví dụ như "en-us" hoặc "es-es". Mặc định là "en-us".

Phương Pháp

FormatByKey

Làm trả lại chuỗi chữ địa phương hóa trong một LocalizationTable dựa trên ngôn ngữ địa phương của nó, bằng cách chìa khóa. Bảng Translator bên trong là dùng để lấp đầy các tham số hình dạng trong trang kết quả.

Ghi chú rằng phương pháp này sẽ thả một lỗi trong các trường hợp sau đây:

  • Nếu không có bất kỳ Class.LocalizationTable|LocalizationTables nào có sẵn cho Translator này bao gồm giá trị cho các cái chìa khóa đã được cung cấp.
  • Nếu format string cho chìa khóa sử dụng các biến số và 0> là một mat阵.
  • Nếu format string sử dụng các biến đổi tên và args không phải là bảng các cặp giá trị chìa khóa.
  • Nếu args thiếu giá trị cho các biến được sử dụng trong chuỗi dữ liệu phù hợp.

Xem Hướng dẫn localization với scripting để biết thêm chi tiết và ví dụ sử dụng của chức năng này.

Tham Số

key: string

Giá trị Chìa Khóa để tìm kiếm và dịch.

args: Variant

Để được cung cấp nếu Văn bản nguồn và dịch bản dịch có chứa các chuỗi dữ liệu có định dạng. Sẽ là một bảng Lua các giá trị hoặc cặp giá trị chìa khóa, tùy thuộc vào việc có số dòng dữ liệu được đếm hoặc không.


Lợi Nhuận

Translate

Đảm bảo chuỗi văn bản địa phương trong một LocalizationTable dựa trên ngôn ngữ của nó. Chuỗi này sẽ ở trong ngôn ngữ của các thống kê cung cấp, bởi vì các thống kê này được cung cấp bằng chuỗi văn bản Translator.

Xem Hướng dẫn localization với scripting để biết thêm chi tiết và ví dụ sử dụng của chức năng này.

Làm trái chiều ngữ cảnh

Trong một số trường hợp, các dòng nguồn có thể có những bản dịch hoàn toàn khác nhau trong các ngôn ngữ khác. Ví dụ, noun tiếng Anh "Màn hình" có thể cho thấy cả một màn hình máy tính và một màn hình cửa sổ, nhưng các bản dịch người Tây Ban Nha hoàn toàn khác biệt:


<tr>
<td>Chìa khóa</td>
<td>Kiến ​​thức</td>
<td><b>Nguồn</b></td>
<td>Ví dụ</td>
<td><b>es</b></td>
</tr>
<tr>
<td />
<td />
<td>Màn hình</td>
<td />
<td>Màn hình</td>
</tr>
<tr>
<td />
<td />
<td>Màn hình</td>
<td />
<td>Mosquito</td>
</tr>
<tr>
<td />
<td />
<td />
<td />
<td />
</tr>
</tbody>
MộtBCDE

Trong những trường hợp này, argument đầu tiên của chức năng này — một Instance hợp lệ trong trò chơi — có thể được sử dụng như một "tiếp đất" khi nhiều đối tượng GUI sử dụng cùng một dòng chuỗi nguồ


<tr>
<td>Chìa khóa</td>
<td><b>context</b></td>
<td>Nguồn</td>
<td>Ví dụ</td>
<td>es</td>
</tr>
<tr>
<td />
<td>Workspace.ComputerScreen.SurfaceGui.TextLabel</td>
<td>Màn hình</td>
<td />
<td>Màn hình</td>
</tr>
<tr>
<td />
<td />
<td>Màn hình</td>
<td />
<td>Mosquito</td>
</tr>
<tr>
<td />
<td />
<td />
<td />
<td />
</tr>
</tbody>
MộtBCDE

Sau đó, khi gọi chức năng này trong một script, truyền cùng một Instance như một lý do đầu tiên, sau đó là một Nguồn tìm kiếm văn bản như một lý do thứ hai:


local LocalizationService = game:GetService("LocalizationService")
local success, translator = pcall(function()
return LocalizationService:GetTranslatorForPlayerAsync(game.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

Tham Số

context: Instance

Một Class.Instance trong trò chơi hợp lệ để sử dụng cho quá trình quá mức như được mô tả ở trên. Lưu ý rằng đối tượng này có thể là ngẫu nhiên, ví dụ như game , nếu bạn không yêu cầu quá mức.

text: string

Văn bản Nguồn để tìm kiếm và dịch.


Lợi Nhuận

Văn bản đã dịch.

Sự Kiện