PointFontStyle - Стиль на базе шрифта True Type

class axipy.da.PointFontStyle

Базовые классы: PointStyle

Стиль на базе шрифта True Type.

Возможные значения параметра fontstyle:

Значение

Наименование

0

Обычный текст

1

Жирный текст

16

Черная кайма вокруг символа

32

Тень

256

Белая кайма вокруг символа

В системе доступны следующие стили:

../../../_images/style_point_mi_tt.png
Пример.
fs = PointFontStyle()
fs.font_name = 'Axioma MI Oil&Gas'
fs.has_shadow = True
fs.rotation = 30
fs.bold = True
fs.size = 44
fs.symbol = 45
fs.black_border = True
fs.white_border = True

Конструктор класса:

__init__([symbol, color, size, fontname, ...])

Создает экземпляр класса.

Классовые методы:

for_geometry(geom)

Возвращает стиль по умолчанию для переданного объекта.

from_mapinfo(mapbasic_string)

Получает стиль из строки формата MapBasic.

Статические методы:

create_mi_compat([symbol, color, pointSize])

Создание стиля в виде совместимого с MapInfo 3 PointCompatStyle.

create_mi_font([symbol, color, size, ...])

Создание стиля на базе шрифта True Type PointFontStyle.

create_mi_picture(filename[, color, size, ...])

Создание стиля с ссылкой на растровый файл PointPictureStyle.

Свойства:

black_border

Темная окантовка.

bold

Жирный шрифт..

color

Цвет символа.

font_name

Наименование шрифта.

has_shadow

Признак тени.

rotation

Угол поворота.

size

Размер символа в пунктах.

symbol

Номер символа.

white_border

Светлая окантовка.

Методы:

clone()

Создаёт копию объекта стиля

draw(geometry, painter)

Рисует геометрический объект с текущим стилем в произвольном контексте вывода.

to_mapinfo()

Возвращает строковое представление в формате MapBasic.

__init__(symbol: int = 36, color: QColor = Qt.red, size: int = 8, fontname: str = 'Axioma MI MapSymbols', fontstyle: int = 0, rotation: float = 0.0)

Создает экземпляр класса.

Параметры:
  • symbol – Целое, имеющее значение 31 или больше, определяющее, какой используется символ из шрифтов TrueType. Для создания невидимого символа используйте значение 31.

  • color – Цвет символа

  • size – Целое число, размер символа в пунктах от 1 до 48;

  • fontname – Строка с именем шрифта TrueType (например, значение по умолчание „Axioma MI MapSymbols“)

  • fontstyle – Стиль дополнительного оформления, например, курсивный текст. Возможные параметры см. в таблице ниже. Для указания нескольких параметров их суммируют между собой.

  • rotation – Угол поворота символа в градусах.

property black_border: bool

Темная окантовка.

property bold: bool

Жирный шрифт..

clone() Style

Создаёт копию объекта стиля

property color: QColor

Цвет символа.

static create_mi_compat(symbol: int = 35, color: QColor = Qt.red, pointSize: int = 8) PointCompatStyle

Создание стиля в виде совместимого с MapInfo 3 PointCompatStyle.

Параметры:
  • symbol – Номер символа, который будет отображен при отрисовке. Для создания невидимого символа используйте значение 31. Стандартный набор условных знаков включает символы от 31 до 67.

  • color – Цвет символа

  • pointSize – Целое число, размер символа в пунктах от 1 до 48.

static create_mi_font(symbol: int = 36, color: QColor = Qt.red, size: int = 8, fontname: str = 'Axioma MI MapSymbols', fontstyle: int = 0, rotation: float = 0.0) PointFontStyle

Создание стиля на базе шрифта True Type PointFontStyle.

Параметры:
  • symbol – Целое, имеющее значение 31 или больше, определяющее, какой используется символ из шрифтов TrueType. Для создания невидимого символа используйте значение 31.

  • color – Цвет символа

  • size – Целое число, размер символа в пунктах от 1 до 48;

  • fontname – Строка с именем шрифта TrueType (например, значение по умолчание „Axioma MI MapSymbols“)

  • fontstyle – Стиль дополнительного оформления, например, курсивный текст. Возможные параметры см. в таблице ниже. Для указания нескольких параметров их суммируют между собой.

  • rotation – Угол поворота символа в градусах.

static create_mi_picture(filename: str, color: QColor = Qt.black, size: int = 12, customstyle: int = 0) PointPictureStyle

Создание стиля с ссылкой на растровый файл PointPictureStyle.

Параметры:
  • filename – Наименование растрового файла. Строка до 31 символа длиной. Данный файл должен находится в каталоге CustSymb с ресурсами. Например, “Arrow.BMP”.

  • color – Цвет символа.

  • size – Размер символа в в пунктах от 1 до 48.

  • customstyle – Задание дополнительных параметров стиля оформления.

draw(geometry: Geometry, painter: QPainter)

Рисует геометрический объект с текущим стилем в произвольном контексте вывода. Это может быть востребовано при желании отрисовать геометрию со стилем на форме или диалоге.

Параметры:
  • geometry – Геометрия. Должна соответствовать стилю. Т.е. если объект полигон, а стиль для рисования точечных объектов, то ничего нарисовано не будет.

  • painter – Контекст вывода.

Пример отрисовки в растре и сохранение результата в файле.
image = QImage(100, 100, QImage.Format_ARGB32_Premultiplied)
image.fill(Qt.white)
painter = QPainter(image)
point = Point(50, 50)
style = PointStyle.create_mi_font(42, Qt.red, 24)
style.draw(point, painter)
image.save(filename)
property font_name: str

Наименование шрифта. Например, Adobe Helvetica

classmethod for_geometry(geom: Geometry) Style

Возвращает стиль по умолчанию для переданного объекта.

Параметры:

geom – Геометрический объект, для которого необходимо получить соответствующий ему стиль.

classmethod from_mapinfo(mapbasic_string: str) Optional[Style]

Получает стиль из строки формата MapBasic.

Параметры:

mapbasic_string – Строка в формате MapBasic.

style = Style.from_mapinfo("Pen (1, 2, 0) Brush (8, 255)")
property has_shadow: bool

Признак тени.

property rotation: float

Угол поворота.

property size: int

Размер символа в пунктах.

property symbol: int

Номер символа.

to_mapinfo() str

Возвращает строковое представление в формате MapBasic.

print(style.to_mapinfo())
'''
>>> Pen (1, 2, 0) Brush (8, 255)
'''
property white_border: bool

Светлая окантовка.