Поделиться через


Метод IDWriteFontFace4::GetGlyphImageData (dwrite_3.h)

Возвращает указатель на данные глифа на основе требуемого формата изображения.

Синтаксис

HRESULT GetGlyphImageData(
  [in]  UINT16                     glyphId,
        UINT32                     pixelsPerEm,
        DWRITE_GLYPH_IMAGE_FORMATS glyphImageFormat,
  [out] DWRITE_GLYPH_IMAGE_DATA    *glyphData,
  [out] void                       **glyphDataContext
);

Параметры

[in] glyphId

Тип: UINT16

Идентификатор глифа, для которого требуется получить данные изображения.

pixelsPerEm

Тип: UINT32

Запрошенные пиксели на em.

glyphImageFormat

Тип: DWRITE_GLYPH_IMAGE_FORMATS

Указывает, какие форматы поддерживаются в шрифте.

[out] glyphData

Тип: DWRITE_GLYPH_IMAGE_DATA*

При возврате содержит данные для глифа.

[out] glyphDataContext

Тип: void**

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

Тип: HRESULT

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

Remarks

GlyphDataContext должен быть освобожден через ReleaseGlyphImageData , если данные не пустые, аналогично IDWriteFontFileStream::ReadFileFragment и IDWriteFontFileStream::ReleaseFileFragment. Указатель данных действителен до тех пор, пока существует IDWriteFontFace и не был вызван ReleaseGlyphImageData .

DWRITE_GLYPH_IMAGE_DATA::uniqueDataId является ценным для кэширования, так что если один и тот же ресурс возвращается несколько раз, существующий ресурс можно быстро получить, а не выполнять повторное анализирование или распаковку данных.

Функция возвращает только svg или растровые данные. Запрос данных TrueType/CFF/COLR возвращает DWRITE_E_INVALIDARG. Они должны быть нарисованы с помощью DrawGlyphRun или запрашиваться с помощью GetGlyphOutline. Можно запросить только один формат, иначе функция возвращает DWRITE_E_INVALIDARG. Если глиф не имеет этого формата, вызов не является ошибкой, но функция возвращает пустые данные.

Требования

Требование Значение
Целевая платформа Windows
Header dwrite_3.h
Библиотека Dwrite.lib

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

IDWriteFontFace4