Операционная система Microsoft Windows 3.1 для программиста -том 1


Система координат и режим отображения - часть 2


При выводе текста мы будем использовать именно этот режим отображения.

В режиме отображения MM_TEXT используются логическая система координат, полностью эквивалентная физической. Логическое начало координат (0, 0) соответствует физическому началу координат устройства (0, 0). Каждая единица по оси x или y соответствует одному пикселу экрана.

В нашем примере мы вывели строку текста, использовав логические координаты (10, 20):

TextOut(hdc, 10, 20, "Сообщение WM_PAINT", 18);

При использовании режима отображения MM_TEXT в качестве начала координат берется верхняя левая точка устройства вывода. В нашем случае устройством вывода является главное окно приложения, поэтому начало координат (0, 0) находится в верхнем левом углу главного окна приложения. Текст будет выведен начиная с точки (10, 20) в логической системе координат, связанной с главным окном приложения.

Однако как будет расположен текст относительно точки (10, 20)?

Если очертить строку текста воображаемым прямоугольником, то по умолчанию в точке (10, 20) будет находиться верхний левый угол этого прямоугольника (рис. 2.1).

Рис. 2.1. Координаты текстовой строки

В контексте отображения можно задать так называемый режим выравнивания текста (text alignment mode). По умолчанию используется выравнивание на левую границу, причем координаты вывода текста указывают верхнюю границу воображаемого прямоугольника, охватывающего текст.

При помощи функции SetTextAlign можно изменить режим выравнивания. Приведем прототип функции:

UINT WINAPI SetTextAlign(HDC hdc, UINT fuAlign);

Функция SetTextAlign возвращает старое значение режима выравнивания. Ключевое слово WINAPI определено в файле windows.h следующим образом:

#define WINAPI _far _pascal

Как и все функции программного интерфейса Windows версии 3.1 для компьютеров с процессорами фирмы Intel, функция SetTextAlign использует при передаче параметров соглашение языка Паскаль и является дальней функцией.

Первый параметр функции (hdc) указывает идентификатор контекста отображения, для которого надо изменить выравнивание.


Начало  Назад  Вперед



Книжный магазин