Метод IDWriteFontFace::GetGlyphRunOutline (dwrite.h)

Вычисляет структуру выполнения глифов путем вызова обратно в интерфейс приемника структуры.

Синтаксис

HRESULT GetGlyphRunOutline(
                 FLOAT                     emSize,
  [in]           UINT16 const              *glyphIndices,
  [in, optional] FLOAT const               *glyphAdvances,
  [in, optional] DWRITE_GLYPH_OFFSET const *glyphOffsets,
                 UINT32                    glyphCount,
                 BOOL                      isSideways,
                 BOOL                      isRightToLeft,
                 IDWriteGeometrySink       *geometrySink
);

Параметры

emSize

Тип: FLOAT

Логический размер шрифта в единицах DIP. DIP ("независимый от устройства пиксель") равен 1/96 дюйма.

[in] glyphIndices

Тип: const UINT16*

Массив индексов глифов. Глифы находятся в логическом порядке, а направление продвижения зависит от параметра isRightToLeft . Массив должен быть выделен и содержать количество элементов, заданных glyphCount.

[in, optional] glyphAdvances

Тип: const FLOAT*

Необязательный массив глифов в DIP. Аванс глифа — это величина для продвижения позиции (в направлении базового плана) после рисования глифа. glyphAdvances содержит количество элементов, заданных glyphCount.

[in, optional] glyphOffsets

Тип: const DWRITE_GLYPH_OFFSET*

Необязательный массив смещения глифов, каждый из которых задает смещение вдоль базового плана и смещение перпендикулярно базовой линии глифа относительно текущей позиции пера. glyphOffsets содержит количество элементов, заданных glyphCount.

glyphCount

Тип: UINT32

Количество глифов в выполнении.

isSideways

Тип: BOOL

Если задано значение TRUE, то по возрастанию глифа выполняется рядом с базовым показателем. Если значение FALSE, то восходящий глиф выполняется перпендикулярно базовому плану. Например, для английского алфавита на вертикальном базовом уровне для параметра isSideways будет задано значение FALSE.

Клиент может визуализировать вертикальное выполнение, задав для параметра isSidewaysзначение TRUE и поворачивая полученную геометрию на 90 градусов вправо с помощью преобразования. Параметры isSideways и isRightToLeft не могут быть истинными.

isRightToLeft

Тип: BOOL

Визуальный порядок глифов. Если этот параметр имеет значение FALSE, глиф выполняется слева направо. Если задано значение TRUE, направление вперед — справа налево. По умолчанию направление вперед слева направо.

geometrySink

Тип: IDWriteGeometrySink*

Указатель на интерфейс, который вызывается для выполнения операций рисования структуры.

Возвращаемое значение

Тип: HRESULT

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Требования

Требование Значение
Минимальная версия клиента Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновление платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header dwrite.h
Библиотека Dwrite.lib
DLL Dwrite.dll

См. также раздел

IDWriteFontFace