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


Функция EnumFontFamiliesA (wingdi.h)

Функция EnumFontFamilies перечисляет шрифты в указанном семействе шрифтов, доступные на указанном устройстве.

Примечание Эта функция предоставляется только для совместимости с 16-разрядными версиями Windows. Приложения должны использовать функцию EnumFontFamiliesEx .
 

Синтаксис

int EnumFontFamiliesA(
  [in] HDC           hdc,
  [in] LPCSTR        lpLogfont,
  [in] FONTENUMPROCA lpProc,
  [in] LPARAM        lParam
);

Параметры

[in] hdc

Дескриптор контекста устройства, из которого выполняется перечисление шрифтов.

[in] lpLogfont

Указатель на строку, завершающуюся значением NULL, которая указывает имя семейства требуемых шрифтов. Если lpszFamily имеет значение NULL, EnumFontFamilies выбирает и перечисляет один шрифт каждого доступного семейства типов.

[in] lpProc

Указатель на функцию обратного вызова, определяемую приложением. Дополнительные сведения см. в разделе EnumFontFamProc.

[in] lParam

Указатель на данные, предоставляемые приложением. Данные передаются в функцию обратного вызова вместе со сведениями о шрифте.

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

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

Комментарии

Для каждого шрифта с именем шрифта, указанным параметром lpszFamily , функция EnumFontFamilies получает сведения об этом шрифте и передает их в функцию, на которую указывает параметр lpEnumFontFamProc . Определяемая приложением функция обратного вызова может обрабатывать сведения о шрифте по желанию. Перечисление продолжается до тех пор, пока не будет больше шрифтов или функция обратного вызова не вернет ноль.

Если для графического режима в контексте устройства задано значение GM_ADVANCED с помощью функции SetGraphicsMode и флаг DEVICE_FONTTYPE передается параметру FontType, эта функция возвращает список шрифтов типа 1 и OpenType в системе. Если для графического режима не задано значение GM_ADVANCED, эта функция возвращает список шрифтов типа 1, OpenType и TrueType в системе.

Шрифты для многих восточноазиатских языков имеют два названия шрифтов: английское и локализованное. EnumFonts, EnumFontFamilies и EnumFontFamiliesEx возвращают имя шрифта на английском языке, если языковой стандарт системы не соответствует языку шрифта.

Примеры

Примеры см. в разделе Перечисление установленных шрифтов.

Примечание

Заголовок wingdi.h определяет EnumFontFamilies в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора UNICODE. Сочетание использования псевдонима, не зависящий от кодировки, с кодом, не зависящим от кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wingdi.h (включая Windows.h)
Библиотека Gdi32.lib
DLL Gdi32.dll

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

EnumFontFamProc

EnumFontFamiliesEx

EnumFonts

Функции шрифта и текста

Общие сведения о шрифтах и тексте