Ассемблер для Windows



         

Рассмотрим теперь вопрос о том как выводить текстовую информацию



II

Рассмотрим теперь вопрос о том, как выводить текстовую информацию с различными типами шрифтов. Удобнее всего задать параметры шрифта при помощи функции CreateFontIndirect, параметром которой является указатель на структуру LOGFONT. Хотя название функции и начинается со слова Create, речь идет не о создании, а скорее изменении существующего шрифта согласно заданным параметрам. Существует и другая функция CreateFont, которая, на мой взгляд, менее удобна при использовании на ассемблере — поработайте с ней сами, если хотите. Выбор нужного шрифта осуществляется функцией SelectObject. Начнем с того, что разберем поля этой структуры.

LOGFONT STRUC LfHeight DWORD ? LfWidth DWORD ? LfEscapement DWORD ? LfOrientation DWORD ? LfWeight DWORD ? Lfitalic DB ? LfUnderline DB ? LfStrikeOut DB ? LfCharSet DB ? LfOutPrecision DB ? LfClipPrecision DB ? LfQuality DB ? LfPitchAndFamily DB ? LfFaceName DB 32 DUP(0) LOGFONT ENDS

LfHeight - определяет высоту шрифта в логических единицах; если 0, то высота берется по умолчанию.

LfWidth - определяет ширину шрифта в логических единицах; если 0, то ширина по умолчанию.

LfEscapement - угол наклона текста в десятых долях градуса по отношению к горизонтальной оси в направлении против часовой стрелки.
LfOrientation - тоже, что и предыдущий параметр, но по отношению к отдельному символу (игнорируется в Windows 9х).

LfWeight - задает жирность шрифта (0-900).

Lfitalic - если 1, то курсив.

LfUnderline — если 1, то символы подчеркнуты.

LfStrikeOut — если 1, то символы перечеркнуты.

LfCharSet - задает множество символов шрифта, обычно определяется константой ANSI_CHARSET (=0).

LfOutPrecision - флаг точности шрифта; определяет, насколько точно созданный шрифт отвечает заданным параметрам. Возможные значения:

OUT_DEFAULT_PRECIS = 0 OUT_STRING_PRECIS = 1 OUT_CHARACTER_PRECIS = 2 OUT_STROKE_PRECIS = 3 OUT_TT_PRECIS = 4 OUT_DEVICE__PRECIS = 5 OUT_RASTER_PRECIS = 6 OUT_TT_ONLY_PRECIS = 7 OUT_OUTLINE_PRECIS = 8 OUT_SCREEN_OUTLINE_PRECIS = 9




Содержание  Назад  Вперед