TranslationDomain

继承: RefCounted < Object

一个独立的Translation资源集合。

描述

TranslationDomain是一个独立的Translation资源集合。可以在其中添加或删除翻译。

如果您正在使用主翻译域,则使用TranslationServer上的包装方法更方便。

属性

方法

void

add_translation(translation: Translation)

void

clear()

Translation

get_translation_object(locale: String) const

StringName

pseudolocalize(message: StringName) const

void

remove_translation(translation: Translation)

StringName

translate(message: StringName, context: StringName = &"") const

StringName

translate_plural(message: StringName, message_plural: StringName, n: int, context: StringName = &"") const


属性说明

bool pseudolocalization_accents_enabled = true 🔗

  • void set_pseudolocalization_accents_enabled(value: bool)

  • bool is_pseudolocalization_accents_enabled()

在伪本地化期间用重音变体替换所有字符。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


bool pseudolocalization_double_vowels_enabled = false 🔗

  • void set_pseudolocalization_double_vowels_enabled(value: bool)

  • bool is_pseudolocalization_double_vowels_enabled()

伪本地化期间字符串中的双元音,以模拟由于本地化而导致的文本加长。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


bool pseudolocalization_enabled = false 🔗

  • void set_pseudolocalization_enabled(value: bool)

  • bool is_pseudolocalization_enabled()

如果true,则为项目启用伪本地化。这可用于发现项目本地化为字符串比源语言长的语言后可能出现的不可翻译的字符串或布局问题。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


float pseudolocalization_expansion_ratio = 0.0 🔗

  • void set_pseudolocalization_expansion_ratio(value: float)

  • float get_pseudolocalization_expansion_ratio()

伪本地化期间使用的扩展率。0.3的值对于大多数实际目的来说就足够了,并且会将每个字符串的长度增加30%。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


bool pseudolocalization_fake_bidi_enabled = false 🔗

  • void set_pseudolocalization_fake_bidi_enabled(value: bool)

  • bool is_pseudolocalization_fake_bidi_enabled()

如果true,则在启用伪本地化时模拟双向(从右到左)文本。这可用于发现RTL布局和UI镜像的问题,如果项目本地化为RTL语言(如阿拉伯语或希伯来语),这些问题将突然出现。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


bool pseudolocalization_override_enabled = false 🔗

  • void set_pseudolocalization_override_enabled(value: bool)

  • bool is_pseudolocalization_override_enabled()

将字符串中的所有字符替换为*。用于查找不可本地化的字符串。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


String pseudolocalization_prefix = "[" 🔗

  • void set_pseudolocalization_prefix(value: String)

  • String get_pseudolocalization_prefix()

将附加到伪本地化字符串的前缀。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


bool pseudolocalization_skip_placeholders_enabled = true 🔗

  • void set_pseudolocalization_skip_placeholders_enabled(value: bool)

  • bool is_pseudolocalization_skip_placeholders_enabled()

在伪本地化期间跳过字符串格式的占位符,例如%s%f。用于识别需要额外控制字符才能正确显示的字符串。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


String pseudolocalization_suffix = "]" 🔗

  • void set_pseudolocalization_suffix(value: String)

  • String get_pseudolocalization_suffix()

将附加到伪本地化字符串的后缀。

注意:更新此属性不会自动更新场景树中的文本。请在完成修改伪本地化相关选项后手动传播MainLoop.NOTIFICATION_TRANSLATION_CHANGED通知。


方法说明

void add_translation(translation: Translation) 🔗

添加翻译。


void clear() 🔗

删除所有翻译。


Translation get_translation_object(locale: String) const 🔗

返回与locale最匹配的Translation实例。如果没有匹配项,则返回null


StringName pseudolocalize(message: StringName) const 🔗

根据传入的message返回伪本地化字符串。


void remove_translation(translation: Translation) 🔗

删除给定的翻译。


StringName translate(message: StringName, context: StringName = &"") const 🔗

返回给定消息和上下文的当前语言环境翻译。


StringName translate_plural(message: StringName, message_plural: StringName, n: int, context: StringName = &"") const 🔗

返回给定消息、复数消息和上下文的当前语言环境翻译。

数字n是复数对象的数量。它将用于指导翻译系统为所选语言获取正确的复数形式。