Атрибуты и комментарии локализацииLocalization Attributes and Comments

Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) комментарии локализации — это свойства, в исходном коде XAML, предоставляемые разработчиками для предоставления правил и подсказок для локализации.localization comments are properties, inside XAML source code, supplied by developers to provide rules and hints for localization. Комментарии локализации Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) содержат два набора данных: атрибуты локализуемости и комментарии локализации в свободной форме.Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) localization comments contain two sets of information: localizability attributes and free-form localization comments. Атрибуты локализуемости используются API локализации WPFWPF для указания того, какие ресурсы должны быть локализованы.Localizability attributes are used by the WPFWPF Localization API to indicate which resources are to be localized. Комментарии произвольной формы представляют собой любые сведения, которые автор приложения хочет указать.Free-form comments are any information that the application author wants to include.

Комментарии локализацииLocalization Comments

Если авторы приложения разметки имеют требования для конкретных элементов в XAML, например ограничения длины текста, семейства шрифтов или размера шрифта, они могут передать эту информацию локализаторам с комментариями в коде XAML.If markup application authors have requirements for specific elements in XAML, such as constraints on text length, font family, or font size, they can convey this information to localizers with comments in the XAML code. Процесс добавления комментариев к исходному коду выглядит следующим образом.The process for adding comments to source code is as follows:

  1. Разработчик приложения добавляет комментарии локализации в исходный код XAML.Application developer adds localization comments to XAML source code.

  2. Во время процесса построения разработчик может указать в PROJ-файле, следует ли оставить комментарии произвольной локализации в сборке либо вынести за пределы файла часть комментариев или все комментарии.During the build process, you can specify in the .proj file whether to leave the free-form localization comments in the assembly, strip out part of the comments, or strip out all the comments. Вынесенные комментарии помещаются в отдельный файл.The stripped-out comments are placed in a separate file. Параметр указывается с помощью тега LocalizationDirectivesToLocFile, например:You specify your option using a LocalizationDirectivesToLocFile tag, eg:

    <LocalizationDirectivesToLocFile> value </LocalizationDirectivesToLocFile><LocalizationDirectivesToLocFile> value </LocalizationDirectivesToLocFile>

  3. Могут быть назначены следующие значения:The values that can be assigned are:

    • None — комментарии и атрибуты остаются внутри сборки, отдельный файл не создается.None - Both comments and attributes stay inside the assembly and no separate file is generated.

    • CommentsOnly — из сборки выносятся только комментарии и помещаются в отдельном файле LocFile.CommentsOnly - Strips only the comments from the assembly and places them in the separate LocFile.

    • All — из сборки выносятся комментарии и атрибуты, которые помещаются в отдельный файл LocFile.All - Strips both the comments and the attributes from the assembly and places them both in a separate LocFile.

  4. При извлечении локализуемых ресурсов из BAML атрибуты локализуемости учитываются API локализации BAML.When localizable resources are extracted from BAML, the localizability attributes are respected by the BAML Localization API.

  5. Файлы локализации комментариев, содержащие только комментарии в произвольной форме, включаются в процесс локализации на более поздней стадии.Localization comment files, containing only free-form comments, are incorporated into the localization process at a later time.

В следующем примере показано, как добавить комментарии локализации в файл XAML.The following example shows how to add localization comments to a XAML file.

<TextBlock x:Id = "text01"

FontFamily = "Microsoft Sans Serif"

FontSize = "12"

Localization.Attributes = "$Content (Unmodifiable Readable Text)

FontFamily (Unmodifiable Readable)"

Localization.Comments = "$Content (Trademark)

FontSize (Trademark font size)" >

Microsoft

</TextBlock>

В предыдущем примере раздел Localization.Attributes содержит атрибуты локализации, а раздел Localization.Comments — произвольные комментарии.In the previous sample the Localization.Attributes section contains the localization attributes and the Localization.Comments section the free-form comments. В следующей таблице показаны атрибуты, комментарии и их значения для локализатора.The following tables show the attributes and comments and their meaning to the localizer.

Атрибуты локализацииLocalization attributes ЗначениеMeaning
$Content (Unmodifiable Readable Text)$Content (Unmodifiable Readable Text) Содержимое элемента TextBlock не может быть изменено.Contents of the TextBlock element cannot be modified. Локализаторы не могут изменить слово Microsoft.Localizers cannot change the word "Microsoft". Содержимое является видимым (доступным для чтения) локализатору.The content is visible (Readable) to the localizer. Категория содержимого — текст.The category of the content is text.
FontFamily (Unmodifiable Readable)FontFamily (Unmodifiable Readable) Свойство семейства шрифтов элемента TextBlock не может быть изменено, но является видимым для локализатора.The font family property of the TextBlock element cannot be changed but it is visible to the localizer.
Произвольные комментарии локализацииLocalization free-form comments ЗначениеMeaning
$Content (Trademark)$Content (Trademark) Автор приложения сообщает локализатору, что содержимое в элементе TextBlock является товарным знаком.The application author tells the localizer that the content in the TextBlock element is a trademark.
FontSize (Trademark font size)FontSize (Trademark font size) Автор приложения указывает, что свойство font size должно соответствовать стандартному размеру товарного знака.The application author indicates that the font size property should follow the standard trademark size.

Атрибуты локализуемостиLocalizability Attributes

Информация атрибутов локализуемости содержит список пар, состоящих из имени целевого значения и связанных значений локализуемости.The information in Localization.Attributes contains a list of pairs: the targeted value name and the associated localizability values. Целевое имя может быть именем свойства или специальным именем $Content.The target name can be a property name or the special $Content name. Если это имя свойства, целевое значение является значением свойства.If it is a property name, the targeted value is the value of the property. Если это $Content, то целевое значение является содержимым элемента.If it is $Content, the target value is the content of the element.

Существует три типа атрибутов.There are three types of attributes:

  • Категория.Category. Этот параметр определяет, должно ли значение изменяться из средства локализатора.This specifies whether a value should be modifiable from a localizer tool. См. раздел Category.See Category.

  • Удобочитаемость.Readability. Этот параметр определяет, должно ли средство локализатора читать (и отображать) значение.This specifies whether a localizer tool should read (and display) a value. См. раздел Readability.See Readability.

  • Изменяемость.Modifiability. Этот параметр определяет, разрешает ли средство локализатора изменять значение.This specifies whether a localizer tool allows a value to be modified. См. раздел Modifiability.See Modifiability.

Эти атрибуты можно указать в любом порядке через пробел.These attributes can be specified in any order delimited by a space. В случае указания дублированных атрибутов последний атрибут переопределяет предыдущие.In case duplicate attributes are specified, the last attribute will override former ones. Например, Localization.Attributes = "Unmodifiable Modifiable" устанавливает параметр Modifiability в значение Modifiable, так как это последнее значение.For example, Localization.Attributes = "Unmodifiable Modifiable" sets Modifiability to Modifiable because it is the last value.

Параметры Modifiability (изменяемость) и Readability (читаемость) понятны без объяснений.Modifiability and Readability are self-explanatory. Атрибут Category (категория) предоставляет стандартные категории, которые помогают локализатору при переводе текста.The Category attribute provides predefined categories that help the localizer when translating text. Такие категории, как Text, Label и Title, предоставляют локализатору сведения о том, как следует переводить текст.Categories, such as, Text, Label, and Title give the localizer information about how to translate the text. Существуют также специальные категории: None, Inherits, Ignore и Неверлокализе.There are also special categories: None, Inherit, Ignore, and NeverLocalize.

В следующей таблице показаны значения специальных категорий.The following table shows the meaning of the special categories.

CategoryCategory ЗначениеMeaning
NoneNone Целевое значение не имеет определенной категории.Targeted value has no defined category.
НаследоватьInherit Целевое значение наследует свои категории от родительского.Targeted value inherits its category from its parent.
ПропуститьIgnore Целевое значение не обрабатывается в процессе локализации.Targeted value is ignored in the localization process. Не обрабатывается только текущее значение.Ignore affects only the current value. Параметр не влияет на дочерние узлы.It will not affect child nodes.
NeverLocalizeNeverLocalize Текущее значение не локализуется.Current value cannot be localized. Эта категория наследуется потомками элемента.This category is inherited by the children of an element.

Комментарии локализацииLocalization Comments

Localization.Comments содержит произвольные строки, касающиеся целевого значения.Localization.Comments contains free-form strings concerning the targeted value. Разработчики приложения могут добавлять сведения для предоставления подсказок локализаторов о том, как следует переводить текст приложений.Application developers can add information to give localizers hints about how the applications text should be translated. Форматом комментариев может быть любая строка, заключенная в круглые скобки "()".The format of the comments can be any string surrounded by "()". Используйте символ "\" для создания escape-символов.Use '\' to escape characters.

См. такжеSee also