Справочник по JSON для облачных стилей карт

Выберите платформу: Android Android 3D iOS iOS 3D JavaScript Веб-сервисы

Схема JSON для облачных стилей карт позволяет настраивать карты с помощью JSON так же, как и в редакторе стилей. В этом документе описывается схема JSON и способы объявления стилей JSON.

Скачать схему JSON

Чтобы узнать, как изменить стиль карты с помощью JSON в редакторе стилей или как импортировать и экспортировать стиль карты, прочитайте статью Использование JSON с облачными стилями карт.

Пример объявления стиля JSON

Следующее определение стиля JSON задает цвет фона, а затем определяет стили для объектов инфраструктуры, парков и водоемов и скрывает метки для заведений общественного питания.


{
  "variant": "light",
  "styles": [
    {
      "id": "natural.land",
      "geometry": {
        "fillColor": "#f7e3f7"
      }
    },
    {
      "id": "natural.water",
      "geometry": {
        "fillColor": "#d4b2ff"
      },
      "label": {
        "textFillColor": "#3d2163",
        "textStrokeColor": "#f0e1ff"
      }
    },
    {
      "id": "pointOfInterest",
      "label": {
        "pinFillColor": "#e0349a",
        "textFillColor": "#a11e6e",
        "textStrokeColor": "#ffd9f0"
      }
    },
    {
      "id": "pointOfInterest.emergency.hospital",
      "geometry": {
        "fillColor": "#ffe3e3"
      }
    },
    {
      "id": "pointOfInterest.foodAndDrink",
      "label": {
        "visible": false
      }
    },
    {
      "id": "pointOfInterest.recreation.park",
      "geometry": {
        "fillColor": "#f9b9d2"
      }
    }
  ]
}

Объект JSON

Объявление стиля JSON состоит из объекта верхнего уровня и массива правил стиля.

  • Свойства верхнего уровня (необязательно) – глобальные настройки стиля, такие как backgroundColor и variant.
  • styles – массив объектов правил стиля, который может состоять из следующих элементов:
    • id – объект на карте, к которому нужно применить изменение стиля (например, pointOfInterest.recreation.park).
    • geometry (необязательно) – геометрические элементы объекта карты и правила стиля, которые нужно применить (например, fillColor).
    • label (необязательно) – текст или ярлык маркера объекта карты и правила стиля, которые нужно применить (например, textStrokeColor).

Свойства верхнего уровня

Свойства в таблице ниже применяются ко всему стилю карты.

Ресурс Тип Описание Пример

backgroundColor

Строка Настройте цвет фона приложения с картой, используя шестнадцатеричную строку #RRGGBB. Для этого параметра нельзя изменить прозрачность. "#002211"

variant

"light"|"dark" Укажите светлую или тёмную тему. Если оно не задано, используется значение по умолчанию – "light". "light"

monochrome

Логическое значение Чтобы включить монохромный режим, используйте true для серой версии карты.

true

metadata

Объект Произвольные данные в формате "ключ-значение", включенные в определение стиля. В этом поле можно указать информацию о стиле, не связанную с оформлением. Эти данные не отправляются клиентам карт, например Maps JavaScript SDK.

{"author": "me", "date": "2026-04-27"}

Объекты правил стиля

В этом разделе описываются свойства, определяющие объекты правил стиля в массиве styles для настройки объектов карты. Каждый объект правила стиля должен состоять из следующих элементов:

  • id ресурс.
  • Элемент geometry или label с заданными свойствами стилей.

id (объект карты)

Свойство id указывает, к какому объекту карты нужно применить стиль. Названия свойств – это названия объектов карты в редакторе стилей, записанные в стиле CamelCase.

Объекты карты образуют дерево категорий. Если вы укажете только родительский объект, например pointOfInterest, то стили, выбранные для него, также будут применены ко всем его дочерним объектам, таким как pointOfInterest.retail и pointOfInterest.lodging. Подробнее об иерархии объектов карты…

Список доступных свойств id

Доступны следующие свойства id:

  • pointOfInterest
  • pointOfInterest.emergency
  • pointOfInterest.emergency.fire
  • pointOfInterest.emergency.hospital
  • pointOfInterest.emergency.pharmacy
  • pointOfInterest.emergency.police
  • pointOfInterest.entertainment
  • pointOfInterest.entertainment.arts
  • pointOfInterest.entertainment.casino
  • pointOfInterest.entertainment.cinema
  • pointOfInterest.entertainment.historic
  • pointOfInterest.entertainment.museum
  • pointOfInterest.entertainment.themePark
  • pointOfInterest.entertainment.touristAttraction
  • pointOfInterest.foodAndDrink
  • pointOfInterest.foodAndDrink.bar
  • pointOfInterest.foodAndDrink.cafe
  • pointOfInterest.foodAndDrink.restaurant
  • pointOfInterest.foodAndDrink.winery
  • pointOfInterest.landmark
  • pointOfInterest.lodging
  • pointOfInterest.recreation
  • pointOfInterest.recreation.beach
  • pointOfInterest.recreation.boating
  • pointOfInterest.recreation.fishing
  • pointOfInterest.recreation.golfCourse
  • pointOfInterest.recreation.hotSpring
  • pointOfInterest.recreation.natureReserve
  • pointOfInterest.recreation.park
  • pointOfInterest.recreation.peak
  • pointOfInterest.recreation.sportsComplex
  • pointOfInterest.recreation.sportsField
  • pointOfInterest.recreation.trailhead
  • pointOfInterest.recreation.zoo
  • pointOfInterest.retail
  • pointOfInterest.retail.grocery
  • pointOfInterest.retail.shopping
  • pointOfInterest.service
  • pointOfInterest.service.atm
  • pointOfInterest.service.bank
  • pointOfInterest.service.carRental
  • pointOfInterest.service.evCharging
  • pointOfInterest.service.gasStation
  • pointOfInterest.service.parkingLot
  • pointOfInterest.service.postOffice
  • pointOfInterest.service.restStop
  • pointOfInterest.service.restroom
  • pointOfInterest.transit
  • pointOfInterest.transit.airport
  • pointOfInterest.other
  • pointOfInterest.other.bridge
  • pointOfInterest.other.cemetery
  • pointOfInterest.other.government
  • pointOfInterest.other.library
  • pointOfInterest.other.military
  • pointOfInterest.other.placeOfWorship
  • pointOfInterest.other.school
  • pointOfInterest.other.townSquare
  • political
  • political.countryOrRegion
  • political.border
  • political.reservation
  • political.stateOrProvince
  • political.city
  • political.sublocality
  • political.neighborhood
  • political.landParcel
  • infrastructure
  • infrastructure.building
  • infrastructure.building.commercial
  • infrastructure.businessCorridor
  • infrastructure.roadNetwork
  • infrastructure.roadNetwork.noTraffic
  • infrastructure.roadNetwork.noTraffic.pedestrianMall
  • infrastructure.roadNetwork.noTraffic.trail
  • infrastructure.roadNetwork.noTraffic.trail.paved
  • infrastructure.roadNetwork.noTraffic.trail.unpaved
  • infrastructure.roadNetwork.parkingAisle
  • infrastructure.roadNetwork.ramp
  • infrastructure.roadNetwork.road
  • infrastructure.roadNetwork.road.arterial
  • infrastructure.roadNetwork.road.highway
  • infrastructure.roadNetwork.road.local
  • infrastructure.roadNetwork.road.noOutlet
  • infrastructure.roadNetwork.roadShield
  • infrastructure.roadNetwork.roadSign
  • infrastructure.roadNetwork.roadDetail
  • infrastructure.roadNetwork.roadDetail.surface
  • infrastructure.roadNetwork.roadDetail.crosswalk
  • infrastructure.roadNetwork.roadDetail.sidewalk
  • infrastructure.roadNetwork.roadDetail.intersection
  • infrastructure.railwayTrack
  • infrastructure.railwayTrack.commercial
  • infrastructure.railwayTrack.commuter
  • infrastructure.transitStation
  • infrastructure.transitStation.bicycleShare
  • infrastructure.transitStation.busStation
  • infrastructure.transitStation.ferryTerminal
  • infrastructure.transitStation.funicularStation
  • infrastructure.transitStation.gondolaStation
  • infrastructure.transitStation.monorail
  • infrastructure.transitStation.railStation
  • infrastructure.transitStation.railStation.subwayStation
  • infrastructure.transitStation.railStation.tramStation
  • infrastructure.urbanArea
  • natural
  • natural.continent
  • natural.archipelago
  • natural.island
  • natural.land
  • natural.land.landCover
  • natural.land.landCover.crops
  • natural.land.landCover.dryCrops
  • natural.land.landCover.forest
  • natural.land.landCover.ice
  • natural.land.landCover.sand
  • natural.land.landCover.shrub
  • natural.land.landCover.tundra
  • natural.water
  • natural.water.ocean
  • natural.water.lake
  • natural.water.river
  • natural.water.other
  • natural.base

Элементы

Элементы – это составные части того или иного объекта карты. Например, дорога состоит из графической линии (geometry) на карте и текста, указывающего ее название (label).

Ниже перечислены доступные элементы, однако обратите внимание, что определенный объект может не поддерживать все эти элементы или некоторые из них:

  • geometry – выбирает все геометрические элементы (например, многоугольник, ломаную линию) указанного объекта карты.
  • label – выбирает все элементы ярлыка (например, текст, маркер) указанного объекта карты.

Стилизаторы

Параметры стилей позволяют задавать правила оформления для каждого элемента объекта карты.

Например, для контура здания можно задать стиль каждого элемента следующим образом:

Пример стилей geometry для здания Пример стилей label для здания
Показывать ли на карте многоугольник проекции здания. Скрывать или показывать название здания.
Цвет и прозрачность заливки многоугольника. Выберите цвет и прозрачность заливки текста.
Задайте цвет, прозрачность и ширину рамки. Выберите цвет и прозрачность контура текста.

В этом разделе описаны различные варианты стилей, доступные для элементов geometry и label.

geometry stylers

В таблице ниже перечислены все доступные стили геометрии.

Styler Тип Описание

visible

Логическое значение Чтобы скрыть многоугольник или ломаную линию объекта карты, задайте значение false.

fillColor

string Настройте цвет многоугольника или ломаной линии с помощью шестнадцатеричной строки RGB.

fillOpacity

число с плавающей запятой Настройте прозрачность многоугольника или ломаной линии, где 0 – прозрачный, а 1 – непрозрачный.

strokeColor

string Настройте цвет контура с помощью шестнадцатеричной строки RGB.

strokeOpacity

число с плавающей запятой Настройте прозрачность контура, где 0 – прозрачный, а 1 – непрозрачный.

strokeWeight

число с плавающей запятой Настройте толщину контура в диапазоне от 0 до 8.

Подробнее о многоугольниках и ломаных линиях…

label stylers

В таблице ниже перечислены все доступные стили ярлыков.

Styler Тип Описание

visible

Логическое значение Чтобы скрыть ярлык объекта на карте, установите значение false.

textFillColor

string Настройте цвет текстового ярлыка с помощью шестнадцатеричной строки RGB.

textFillOpacity

число с плавающей запятой Настройте прозрачность текстового ярлыка, где 0 – прозрачный, а 1 – непрозрачный.

textStrokeColor

string Настройте цвет контура с помощью шестнадцатеричной строки RGB.

textStrokeOpacity

число с плавающей запятой Настройте прозрачность контура, где 0 – прозрачный, а 1 – непрозрачный.

textStrokeWeight

число с плавающей запятой Настройте толщину контура в диапазоне от 0 до 8.

pinFillColor

string Настройте цвет маркера с помощью шестнадцатеричной строки RGB.

pinGlyphColor

string Настройте цвет глифа (значка) внутри маркера с помощью шестнадцатеричной строки RGB.

pinOutlineColor

string Настройте цвет контура маркера с помощью шестнадцатеричной строки RGB.

Подробнее о значках и текстовых ярлыках…

Начальные масштабы

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

Чтобы задать начальный масштаб для стиля, в свойстве styler укажите уровень масштабирования от z0 до z22, а затем настройте стиль.

В примере ниже цвет воды будет черным на уровнях масштабирования 0–5, темно-серым на уровнях 6–11 и светло-серым на уровнях от 12 и выше.

{
  "id": "natural.water",
  "geometry": {
    "fillColor": {
      "z0": "#000000",
      "z6": "#666666",
      "z12": "#cccccc"
    }
  }
}

Подробнее о настройке стилей для разных уровней масштабирования…

Ограничения

С помощью JSON можно настроить стиль практически всех элементов в консоли Google Cloud, за исключением следующих параметров в меню Настройки карты:

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

Для этого выберите нужный вариант в меню Настройки карты.

Поскольку эти параметры не включаются в экспортируемые стили, их необходимо повторно выбрать в консоли Google Cloud при импорте стиля.