Справочник по 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 задает объект карты, для которого нужно задать стиль. Названия свойств – это названия объектов карты в редакторе стилей, записанные в стиле camel case.

Объекты карты образуют дерево категорий. Если вы укажете тип родительского объекта, например 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, а затем настройте styler.

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

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

Подробнее об уровнях масштабирования стилей.

Ограничения

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

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

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

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