# Label - Метка для векторного слоя

class axipy.Label

  Метки слоя. Доступны через свойство векторного слоя `VectorLayer.label`.

  Пример использования.

      # Открываем таблицу
      table = provider_manager.openfile(filepath)
      # Создаем слой
      layer = Layer.create(table)
      # Формула метки
      layer.label.text = 'Страна'
      # Видимость
      layer.label.visible = True
      # Если метки перекрывают друг друга, ищем другое положение
      layer.label.placementPolicy = LabelOverlap.OtherPosition
      # Цвет шрифта
      layer.label.color = Qt.blue
      # устанавливаем прорачность
      layer.label.opacity = 50
      # Показываем в пределах (0...3000км)
      layer.label.rangeEnabled = True
      layer.label.rangeMax = 3000000
      # Положение подписей для точечных объектов
      p_layout = layer.label.pointLayout
      p_layout.position = LabelLayoutPosition.BottomRight
      p_layout.visible = True
      p_layout.offset = QSize(3, 3)
      layer.label.pointLayout = p_layout
      # Положение подписей для линейных объектов
      l_layout = layer.label.lineLayout
      l_layout.position = LabelLayoutPosition.Bottom
      layer.label.lineLayout = l_layout
      # Горизонтальное выравнивание подписей для линий
      layer.label.horizontalAlign = LabelHorizontalAlign.Center
      # Игнорируем дубликаты
      layer.label.supressDuplicates = True
      # Свес линии
      layer.label.overhang = 67

  Свойства:

  `areaInterior` | Режим подписей для областей.
  `areaLayout` | Положение подписей для областей.
  `areaPosition` | Режим подписей для областей.
  `backgroundColor` | Цвет фона.
  `backgroundSize` | Толщина фона в пунктах.
  `backgroundType` | Фон подписи.
  `color` | Цвет шрифта меток.
  `font` | Шрифт.
  `horizontalAlign` | Горизонтальное выравнивание подписей.
  `lineKeepDirection` | Направление текста строится вдоль направления линии.
  `lineLayout` | Положение подписей для линий.
  `linePosition` | Режим подписей для линий.
  `opacity` | Прозрачность (0..100).
  `overhang` | Максимальный свес для линии (в %).
  `placementPolicy` | Принцип наложения меток на слой карты.
  `pointLayout` | Положение подписей для точек.
  `rangeEnabled` | Показывать в пределах.
  `rangeMax` | Максимальный предел показа с метрах при включенном свойстве `rangeEnabled`.
  `rangeMin` | Минимальный предел показа с метрах при включенном свойстве `rangeEnabled`.
  `shadow` | Тень.
  `spacing` | Разрядка.
  `supressDuplicates` | Запретить повтор подписей.
  `text` | Наименование атрибута таблицы либо выражение для метки, которое может основываться на одном или нескольких атрибутах.
  `useClip` | Использовать динамические подписи.
  `visible` | Управляет видимостью меток.

  property areaInterior: LabelAreaInterior

    Режим подписей для областей.

    По умолчанию LabelAreaInterior.Centroid.

  property areaLayout: LabelLayout

    Положение подписей для областей.

  property areaPosition: LabelAreaPosition

    Режим подписей для областей.

    По умолчанию LabelAreaPosition.Horizontal.

  property backgroundColor: QColor

    Цвет фона.

  property backgroundSize: int

    Толщина фона в пунктах.

  property backgroundType: LabelBackgroundType

    Фон подписи.

    По умолчанию отсутствует

  property color: QColor

    Цвет шрифта меток.

  property font: QFont

    Шрифт.

  property horizontalAlign: LabelHorizontalAlign

    Горизонтальное выравнивание подписей.

    По умолчанию LabelHorizontalAlign.Flat

  property lineKeepDirection: bool

    Направление текста строится вдоль направления линии.

    По умолчанию False.

  property lineLayout: LabelLayout

    Положение подписей для линий.

  property linePosition: LabelLinePosition

    Режим подписей для линий.

    По умолчанию LabelLinePosition.FollowPath.

  property opacity: int

    Прозрачность (0..100).

    По умолчанию 100 (Непрозрачно).

  property overhang: int

    Максимальный свес для линии (в %).

  property placementPolicy: LabelOverlap

    Принцип наложения меток на слой карты.

    По умолчанию LabelOverlap.AllowOverlap

  property pointLayout: LabelLayout

    Положение подписей для точек.

  property rangeEnabled: bool

    Показывать в пределах.

    Если True, используются свойства `rangeMin` и `rangeMax`. По умолчанию False.

  property rangeMax: float

    Максимальный предел показа с метрах при включенном свойстве `rangeEnabled`.

  property rangeMin: float

    Минимальный предел показа с метрах при включенном свойстве `rangeEnabled`.

  property shadow: bool

    Тень.

    По умолчанию False

  property spacing: bool

    Разрядка.

    По умолчанию False

  property supressDuplicates: bool

    Запретить повтор подписей.

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

  property text: str

    Наименование атрибута таблицы либо выражение для метки, которое может основываться на одном или нескольких атрибутах.

  property useClip: bool

    Использовать динамические подписи.

    По умолчанию False.

  property visible: bool

    Управляет видимостью меток.