В поле bCharSet может находиться одно из значений, которое определено для поля lfCharSet структуры LOGFONT :
Константа | Описание |
ANSI_CHARSET | Набор символов в кодировке ANSI |
DEFAULT_CHARSET | Не используется при отображении шрифтов. Определяется при необходимости запросить шрифт с заданным именем и размером шрифта. Следует использовать с осторожностью, так как если указанного шрифта нет, GDI может выделить шрифт с любым набором символов |
SYMBOL_CHARSET | Символьный шрифт, такой как, например, Wingdings |
SHIFTJIS_CHARSET | Шрифт, в котором для представления символов используется двухбайтовая кодировка. Нужен для работы с японской версией Windows |
OEM_CHARSET | Набор символов в кодировке OEM |
С помощью поля bPitchAndFamily можно определить, используется ли фиксированная или переменна ширина символов. Кроме этого, можно определить семейство, к которому должен принадлежать полученный шрифт.
Фиксированная или переменная ширина символов задается при помощи следующих констант:
Константа | Описание |
DEFAULT_PITCH | Не имеет значения, будет ли шрифт иметь фиксированную или переменную ширину символов |
FIXED_PITCH | Нужен шрифт с фиксированной шириной символов |
VARIABLE_PITCH | Нужен шрифт с переменной шириной символов |
Вы можете объединить при помощи логической операции ИЛИ эти константы со следующими константами, соответствующими семейству шрифта:
Константа | Описание |
FF_DECORATIVE | Шрифт, содержащий маленькие рисунки (пиктограммы). Примером такого шрифта может послужить шрифт Wingdings, поставляемый в составе Windows |
FF_DONTCARE | Семейство шрифта не имеет значения |
FF_MODERN | Семейство Modern. Фиксированная ширина символов, могут быть засечки (но могут и не быть) |
FF_ROMAN | Семейство Roman. Переменная ширина букв, есть засечки |
FF_SCRIPT | Семейство Script. Рукописный шрифт |
FF_SWISS | Семейство Swiss. Переменная ширина букв, нет засечек |
Поле szFaceName содержит строку, закрытую двоичным нулем, которая служит названием внешнего вида шрифта. Размер строки (включая закрывающий строку нуль) не должен превышать LF_FACESIZE байт.