Логические перья
-----------------------------------------------------------------
Вы можете создавать логические перья с помощью функций Windows CreatePen или CreatePenInderect. Например:
ThePen := CreatePen(ps_Dot, 3, RGB(0, 0, 210)); ThePen := CreatePenInderect(@ALogPen);
Определение записи TLogPen имеет следующий вид:
TLogPen = record lopnStyle: Word; lopnWidth: TPoint; lopnColor: Longint; end;
Поле стиля, lopnStyle, содержит константу, задающую стиль линии.
----------------------------------------------------------------- Константа Результат ----------------------------------------------------------------- PS_SOLID ------------------------------------- PS_DASH ------------------------------------- PS_DOT . PS_DASHDOT .-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-. PS_DASHDOTDOT ------------- PS_NULL -----------------------------------------------------------------
Рис.17.1 Стили линий для пера.
Поле толщины, lopnWidth, содержит точку, координата x кото- рой задает толщину линии в координатах устройства. На экране VGA, если задано значение 0, то будет рисоваться линия толщиной в один элемент изображения. Значение координаты y игнорируется. Поле цвета, lopnColor, содержит значение Longint, байты которого зада- ют величины интенсивности основных цветов (красного, зеленого и синего), смешение которых и дает нужный цвет. Значение lopnColor должно иметь вид $00bbggrr, где bb - значение синего цвета, gg - значение зеленого цвета, а rr - значение красного цвета. Доступ- ный диапазон интенсивности для каждого первичного цвета от 0 до 255, или от 0 до FF в шестнадцатиричном исчислении. Следующая таблица показывает некоторые примеры значений цвета:
Примеры значений цвета Таблица 17.2 +--------------+--------------+ | Значение | Цвет | +--------------+--------------| | $00000000 | черный | | $00FFFFFF | белый | | $000000FF | красный | | $0000FF00 | зеленый | | $00FF0000 | синий | | $00808080 | серый | +--------------+--------------+
В качестве альтернативы для воспроизведения цвета можно ис- пользовать функцию RGB. RGB(0,0,0) возвратит черный цвет, RGB(255,0,0) возвратит красный и т.д.