Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Windows используется по всему миру аудиторией, которые отличаются языком, регионом и культурой. Разрабатывая приложение с учетом глобализации и локализации, вы можете достичь более широкого рынка и обеспечить лучший интерфейс для всех пользователей.
Глобализация — это процесс проектирования и разработки приложения, чтобы оно правильно работало на разных языках, регионах и культурах, не требуя культурно-специфичных изменений в коде. Это включает использование учитывающих особенности культуры API для форматирования дат, времени, чисел и валют, а также обработки различных правил сортировки и систем письменности.
Локализация — это процесс подготовки приложения, чтобы его можно было локализовать, не вводя функциональные дефекты. Ключевым принципом является четкое разделение исполняемого кода от локализуемых ресурсов, таких как строки и изображения.
Локализация — это процесс адаптации ресурсов приложения — перевод строк, корректировка изображений и адаптация содержимого — в соответствии с требованиями конкретных рынков, языков и регионов.
Рекомендации по глобализации
Создайте и разрабатывайте своё приложение таким образом, чтобы оно правильно работало в системах с различными языковыми и культурными параметрами. Использование API глобализации для форматирования данных; и избегайте допущений в коде о языке, регионе, классификации символов, записи системы, форматировании даты и времени, чисел, валют, весов и правил сортировки.
| Recommendation | Описание |
|---|---|
| Учитывайте язык и региональные параметры при обработке и сравнении строк. | Например, не изменяйте регистр строк перед их сравнением. См. рекомендации по использованию строк. |
| При сортировке строк и других данных не предполагается, что это всегда выполняется в алфавитном порядке. | Для языков, не использующих латинский скрипт, параметры сортировки основаны на таких факторах, как произношение или количество штрихов пера. Даже языки, использующие латинский скрипт, не всегда используют алфавитную сортировку. Например, в некоторых культурах телефонная книга может быть отсортирована не по алфавиту. Windows может обрабатывать сортировку для вас, но если вы создаете собственный алгоритм сортировки, то обязательно учитывайте методы сортировки, используемые на целевых рынках. |
| Соответствующим образом форматируйте номера, даты, время, адреса и номера телефонов. | Эти форматы различаются между культурами, регионами, языками и рынками. Если вы отображаете эти данные, используйте API глобализации , чтобы получить формат, соответствующий определенной аудитории. См. "Глобализация форматов даты, времени и чисел". Порядок отображения семейства и заданных имен, а также формат адресов может отличаться. Используйте стандартные форматы даты, времени и чисел. Используйте стандартные элементы управления выбора даты и времени. Используйте стандартные сведения об адресе. |
| Поддержка международных единиц измерения и валюты. | Различные единицы и шкалы используются в разных странах, хотя наиболее популярными являются система метрик и имперская система. Не забудьте поддерживать правильное системное измерение, если вы имеете дело с такими измерениями, как длина, температура и область. Используйте свойство GeographicRegion.ВалютыInUse, чтобы получить набор валют, используемых в регионе. |
| Используйте Юникод для кодировки символов. | По умолчанию Microsoft Visual Studio использует кодировку символов Юникода для всех документов. Если вы используете другой редактор, обязательно сохраните исходные файлы в соответствующих кодировках символов Юникода. Все API среды выполнения Windows возвращают строки в кодировке UTF-16. |
| Поддержка международных размеров бумаги. | Наиболее распространенные размеры бумаги отличаются между странами и регионами, поэтому, если вы включаете функции, которые зависят от размера бумаги, например печать, обязательно поддерживайте и проверяйте распространенные международные размеры. |
| Запишите язык клавиатуры или IME. | Когда приложение запрашивает пользователю ввод текста, запишите тег языка для текущей включенной раскладки клавиатуры или редактора методов ввода (IME). Это обеспечивает, что после отображения ввода, он предоставляется пользователю с соответствующим форматированием. Используйте свойство Language.CurrentInputMethodLanguageTag , чтобы получить текущий язык ввода. |
| Не используйте язык, чтобы предположить регион пользователя; и не используйте регион, чтобы предположить язык пользователя. | Язык и регион являются отдельными понятиями. Пользователь может говорить конкретный региональный вариант языка, например en-GB для английского языка, как говорят в Великобритании, но пользователь может находиться в совершенно другой стране или регионе. Рассмотрим, требуется ли приложению знание языка пользователя (например, для текста пользовательского интерфейса) или региона (например, для лицензирования). Дополнительные сведения см. в разделе "Общие сведения о языках профилей пользователей" и языках манифеста приложения. |
| Правила сравнения тегов языка являются нетривиальными. | Теги языка BCP-47 сложны. При сравнении тегов языка возникает ряд проблем, включая проблемы, связанные с соответствующими сведениями о скрипте, устаревшими тегами и несколькими региональными вариантами. Система управления ресурсами в Windows автоматически занимается сопоставлением за вас. Вы можете указать набор ресурсов на любом языке, а система выбирает подходящий для пользователя и приложения. См. статью "Управление ресурсами с помощью MRT Core " и "Как система управления ресурсами" соответствует языковым тегам. |
| Создайте пользовательский интерфейс для размещения различных размеров текста и шрифтов для меток и элементов управления вводом текста. | Строки, переведенные на разные языки, могут значительно отличаться в длину, поэтому вам потребуется, чтобы элементы управления пользовательским интерфейсом динамически масштабировали их содержимое. Общие символы в других языках включают диакритические знаки, расположенные выше или ниже, чем те, которые обычно используются в английском языке (например, такие как Å или Ņ). Используйте стандартные размеры шрифтов и высоты линий, чтобы обеспечить достаточное вертикальное пространство. Помните, что шрифты для других языков могут требовать более крупных минимальных размеров шрифтов, чтобы оставаться удобочитаемыми. Просмотрите классы в пространстве имен Windows.Globalization.Fonts . |
| Поддержка возможности зеркального отображения порядка чтения. | Выравнивание текста и порядок чтения могут быть слева направо (например, на английском языке) или справа налево (например, на арабском или иврите). Если вы локализуете продукт на языки, использующие другой порядок чтения, отличный от собственного, убедитесь, что макет элементов пользовательского интерфейса поддерживает зеркальное отображение. Может потребоваться зеркальное отображение даже таких элементов, как кнопки назад, эффекты перехода пользовательского интерфейса и изображения. Дополнительные сведения см. в разделе "Настройка макета и шрифтов" и поддержка RTL. |
| Правильно отображать текст и шрифты. | Идеальный шрифт, размер шрифта и направление текста зависит от разных рынков. Дополнительные сведения см. в разделе "Настройка макета и шрифтов", а также поддержка RTL и международных шрифтов. |
Руководства по реализации
Начало работы
| Статья | Описание |
|---|---|
| Общие сведения о языках манифеста профиля пользователя и приложения | Узнайте о языковых списках профилей пользователей, списках языков манифеста приложения и языках среды выполнения приложений и о том, как они влияют на поведение приложения. |
| Сделать приложение локализуемым | Подготовьте приложение для локализации, разделив исполняемый код от локализованных ресурсов. |
| Проектирование приложения для двунаправленного текста | Руководство по проектированию двунаправленной поддержки текста (BiDi) для объединения скриптов из систем записи слева направо и справа налево. |
Formatting
| Статья | Описание |
|---|---|
| Глобализация форматов даты и времени и чисел | Используйте интерфейсы программирования приложений для глобализации, чтобы форматировать даты, время, числа, телефонные номера и валюты, учитывающие культурные особенности. Содержит расширенные указания по использованию шаблонов и образцов для пользовательского форматирования даты и времени. |
| Значения NumeralSystem | Справочник по значениям свойств NumeralSystem , доступным в пространстве имен Windows.Globalization . |
Макет и шрифты
| Статья | Описание |
|---|---|
| Настройка макета и шрифтов и поддержка RTL | Создайте приложение для поддержки макетов и шрифтов нескольких языков, включая направление потока RTL. |
| Международные шрифты | Шрифты, доступные для приложений Windows, локализованных на языках, отличных от английского языка. |
Ресурсы приложения
| Статья | Описание |
|---|---|
| Управление ресурсами с помощью MRT Core | Используйте систему управления ресурсами MRT Core в пакете SDK для приложений Windows. |
| Настройка ресурсов для языка, масштабирования, контрастности и других | Настройте ресурсы приложения для определенных языковых, масштабируемых и контрастных параметров. |
| Локализация строк в манифесте пакета приложения и интерфейсе пользователя | Локализация строковых ресурсов в манифесте пользовательского интерфейса и пакета приложения. Включает пакетную настройку приложения WinUI 3. |
| Загрузка изображений и ресурсов, адаптированных для масштабирования, темы, контрастности и других | Загрузите ресурсы изображения, адаптированные под масштаб дисплея, тему, высокую контрастность и другие контексты. |
Дополнительные темы
| Статья | Описание |
|---|---|
| Использование кодовых страниц UTF-8 в приложениях Windows | UTF-8 — это универсальная кодовая страница для интернационализации. Узнайте, как использовать его в приложении для Windows. |
| Подготовьте ваше приложение к изменению японской эпохи | Узнайте о смене эпохи в Японии в мае 2019 года и о том, как подготовить ваше приложение. |
| Набор средств многоязычных приложений (MAT) | Набор средств многоязычных приложений (MAT) достиг окончания поддержки 15 октября 2025 года. |
Связанные ресурсы
- Пример параметров глобализации
- Список поддерживаемых имен языков в операционной системе Windows см. в приложении A. Поведение продукта в справочнике по коду языка Windows (LCID).
Windows developer