Метод IDWriteFontFace::TryGetFontTable (dwrite.h)
Находит указанную таблицу шрифтов OpenType, если она существует, и возвращает указатель на нее. Функция обращается к базовым данным шрифта через интерфейс IDWriteFontFileStream , реализованный загрузчиком файлов шрифтов.
Синтаксис
HRESULT TryGetFontTable(
[in] UINT32 openTypeTableTag,
[out] const void **tableData,
[out] UINT32 *tableSize,
[out] void **tableContext,
[out] BOOL *exists
);
Параметры
[in] openTypeTableTag
Тип: UINT32
Тег из четырех символов таблицы шрифтов OpenType для поиска. Используйте макрос DWRITE_MAKE_OPENTYPE_TAG , чтобы создать его как UINT32. В отличие от GDI, он не поддерживает специальные теги TTCF и NULL для доступа ко всему шрифту.
[out] tableData
Тип: const void**
При возврате этого метода содержит адрес указателя на основание таблицы в памяти. Указатель действителен только при условии, что лицо шрифта, используемое для получения таблицы шрифтов, по-прежнему существует; (не какой-либо другой шрифт, даже если он фактически ссылается на тот же физический шрифт). Этот параметр передается неинициализированным.
[out] tableSize
Тип: UINT32*
При возврате этого метода содержит указатель на размер таблицы шрифтов в байтах.
[out] tableContext
Тип: void**
При возврате этого метода — адрес указателя на непрозрачный контекст, который должен быть освобожден путем вызова ReleaseFontTable. Контекст на самом деле исходит из более низкого уровня IDWriteFontFileStream, который может быть реализован приложением или самим DWrite. Возможно, чтобы возвращался nulltableContext , особенно если реализация выполняет прямое сопоставление памяти для всего файла. Тем не менее, всегда отпускайте его позже и не используйте его в качестве проверки на успешность работы функции. Одну и ту же таблицу можно запрашивать несколько раз, но так как каждый возвращаемый контекст может быть разным, необходимо освободить каждый контекст отдельно.
[out] exists
Тип: BOOL*
Если этот метод возвращает значение TRUE , если таблица шрифтов существует; в противном случае — FALSE.
Возвращаемое значение
Тип: 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 |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по