Локализация карты

Карту можно настроить для определенной страны или региона следующими способами:

  • Изменить настройки языка по умолчанию.
  • Указать код региона, который меняет поведение карты с учетом заданной страны или территории.

Языковая локализация

При отображении текста, например названий элементов управления, уведомлений об авторских правах, указаний к маршрутам и меток на картах, Maps JavaScript API по умолчанию использует предпочитаемый язык, установленный в пользовательских настройках. В большинстве случаев рекомендуется учитывать настройки браузера. Однако, если нужно, чтобы Maps JavaScript API игнорировал языковые настройки браузера и отображал информацию на определенном языке, добавьте параметр language в тег <script> при загрузке кода Maps JavaScript API.

Параметр language влияет на названия и подписи элементов управления, уведомления о нарушении авторских прав, маршруты и ответы на запросы к сервису. Влияние на сервисы не очевидно. Например, при геокодировании адресов на уровне улиц название страны возвращается на запрошенном языке, но остальная часть адреса будет зависеть от местоположения, для которого вы выполняете геокодирование. В то же время результаты для почтовых адресов и административных единиц возвращаются на запрошенном языке. Попробуйте поэкспериментировать с тем, как изменение параметра language влияет на карту, в этой демонстрации.

В следующем примере показана карта на японском с установкой региона "Япония":

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&region=JP&language=ja&callback=initMap">
</script>

Посмотреть пример

При установке языка карты рекомендуется задавать также и регион. Это поможет обеспечить соответствие приложения местному законодательству.

Примечание. При загрузке API указанным выше методом, карта будет отображаться на японском языке для всех пользователей, вне зависимости от их настроек. Прежде чем использовать этот параметр, подумайте, нужно ли вам именно такое поведение приложения.

Maps JavaScript API также поддерживает двунаправленный текст (Bidi), который содержит символы из языков с написанием слева направо (LTR) и справа налево (RTL). Написание справа налево используется в таких языках как арабский, иврит и фарси. Обычно для правильной прорисовки страниц с написанием справа налево нужно добавить параметр dir='rtl' в элемент <html> каждой такой страницы. В следующем примере показана прорисовка карты г. Каир (Египет) с арабскими элементами управления:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&region=EG&language=ar&callback=initMap">
</script>

Посмотреть пример

Вы можете ознакомиться со списком поддерживаемых языков. Обратите внимание, что список языков постоянно пополняется, поэтому он может быть неполным.

Локализация для региона

Если вы хотите изменить свое приложение так, чтобы в нем отображались другие фрагменты карты или результаты геокодирования, соответствующие другому региону, добавьте параметр region к тегу <script> при загрузке кода Maps JavaScript API.

Разработчикам, использующим Maps JavaScript API, следует всегда задавать параметр region, поскольку при наличии параметра region разные сервисы, такие как Places Autocomplete (Автозаполнение при поиске мест), обеспечивают лучшие результаты. Кроме того, разработчики отвечают за соответствие их приложения местному законодательству. Регионы на картах должны быть отрисованы в соответствии с законами страны, в которой зарегистрировано приложение.

Параметр region поддерживает идентификаторы подтегов region в формате Unicode, которые обычно полностью соответствуют национальным доменам верхнего уровня (ccTLD). Большинство идентификаторов регионов в формате Unicode совпадают с кодами ISO 3166-1 alpha-2, однако имеются некоторые исключения. Например, ccTLD Великобритании – uk (соответствует домену .co.uk), а идентификатор региона – GB. Список поддерживаемых регионов приведен в статье Доступность сервисов платформы Google Карт. Попробуйте поэкспериментировать с тем, как изменение параметра region влияет на карту, в этом примере.

Например, следующий сценарий локализует карту для Великобритании:

<script async
    src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&region=GB&callback=initMap">
</script>

В следующих примерах показаны две карты. На одной для параметра region выбран регион по умолчанию (US), и геокод означает город Толедо в американском штате Огайо, а на другой для параметра region установлено значение ES, и этот геокод означает город Толедо в Испании.

Посмотрите пример для США и пример для Испании.

Пример локализации

При установке языка карты рекомендуется устанавливать также и регион. Ниже размещена демонстрация, в которой можно загрузить карту, выбрав ее язык и регион.

Открыть демонстрацию в полноэкранном режиме.