92978b58

Другие фукнции для рисования текста


Кроме изученной нами функции GpiCharString At приложения Presentation Manager могут использовать для рисования текста еще несколько функций.

Функция GpiCharString отображает строку текста с текущей позиции и имеет следующий прототип:

LONG GpiCharString ( HPS hps, // идентификатор пространства отображения LONG lCount, // размер текстовой строки PCH pchString); // адрес текстовой строки

Текущая позиция для вывода текста устанавливается функцией GpiMove . После рисования строки текста текущая позиция устанавливается в конце этой строки, так что с помощью последующих вызовов функции GpiCharString вы можете дописать строку.

Функция GpiMove имеет два параметра:

BOOL GpiMove ( HPS hps, // идентификатор пространства отображения PPOINTL pptlPoint); // новая позиция

Ниже мы привели пример совместного использования фукнций GpiMove и GpiCharString :

HPS hps; POINTL ptl;

ptl.x = 10L; ptl.y = 10L; GpiMove (hps, &ptlStart); GpiCharString (hps, 5L, "Hello"); GpiCharString (hps, 8L, ", world!");

Нетрудно заметить, что рассмотренная нами ранее функция GpiCharString At является комбинацией функций GpiMove и GpiCharString.

Для рисования текста вы также можете использовать функции GpiCharString Pos, GpiCharStringPosAt и WinDrawText . Эти функции предназначены для форматного вывода текста и допускают выбор индивидуальной позиции для каждого отображаемого символа и использование таких элементов оформления текста, как подчеркивание и перечеркивание.

Расскажем подробнее о функции WinDrawText , которая предназначена для вывод текста в прямоугольную область окна и имеет некоторые возможности форматирования. Прототип этой функции приведен ниже:

LONG WinDrawText ( HPS hps, // идентификатор пространства отображения LONG cchText, // длина текстовой строки в байтах PCH lpchText, // адрес отображаемой текстовой строки PRECTL prcl, // прямоугольная область LONG clrFore, // цвет текста LONG clrBack, // цвет фона ULONG flCmd); // флаги режима отображения текста

Параметр hps задает идентификатор пространства отображения, который необходимо получить перед использованием этой фукнции.




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