Mapbox GL устанавливает непрозрачность слоя символов

У меня есть слой символов, отображающий текст на карте mapbox, и я ищу способ изменить непрозрачность текста.

this.map.addLayer({
        "id": "symbols",
        "type": "symbol",
        "source": "source_circleCurrentGpsCircle",
        "layout": {
          "text-font": ["Open Sans Regular"],
          "text-field": '{title}',
          "text-size": {
            stops: [
              [0, 0],
              [22, metersToPixelsAtMaxZoom * 2]
            ],
            base: 2
          }
        },
        "paint": {
          "text-color": "#00FF00"
        }
      });

Я пробовал несколько вещей вроде следующего

this.map.setPaintProperty('symbols', 'symbol-opacity', .6);

Думаю, мне просто нужно правильное название свойства. Можно ли установить класс для символа? Так я легко мог отрегулировать непрозрачность.


person Brian Kalski    schedule 26.07.2019    source источник


Ответы (2)


Я понял. Оказывается, это свойство text-opacity, а не symbol-opacity. Теперь это кажется очевидным.

person Brian Kalski    schedule 26.07.2019

Чтобы изменить прозрачность метки из слоя типа символа, используйте свойство text-opacity. Вот документация.

Пример:

this.map.setPaintProperty('layer_name', 'text-opacity', .6);
person Jorge Meza    schedule 02.02.2021