Функция EnumFontFamiliesA (wingdi.h)
Функция EnumFontFamilies перечисляет шрифты в указанном семействе шрифтов, доступных на указанном устройстве.
Синтаксис
int EnumFontFamiliesA(
[in] HDC hdc,
[in] LPCSTR lpLogfont,
[in] FONTENUMPROCA lpProc,
[in] LPARAM lParam
);
Параметры
[in] hdc
Дескриптор контекста устройства, из которого перечисляются шрифты.
[in] lpLogfont
Указатель на строку, завершающую значение NULL, которая указывает имя семейства нужных шрифтов. Если lpszFamilyNULL, 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 или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Сочетание использования псевдонима, нейтрального для кодирования, с кодом, не зависящим от кодирования, может привести к несоответствиям, которые приводят к ошибкам компиляции или среды выполнения. Дополнительные сведения см. в соглашениях о прототипах функций.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Windows 2000 Профессиональный [только классические приложения] |
минимальный поддерживаемый сервер | Windows 2000 Server [только классические приложения] |
целевая платформа | Виндоус |
заголовка | wingdi.h (включая Windows.h) |
библиотеки |
Gdi32.lib |
DLL | Gdi32.dll |
См. также
шрифтов и текста