Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник Емельянов.doc
Скачиваний:
12
Добавлен:
03.11.2018
Размер:
3.25 Mб
Скачать

Использование графики

Программисты стараются придать внешнему виду своих приложений максимум привлекательности, так как 80% информации мозг человека полу­чает по зрительному каналу. Поэтому в Delphi имеются развитые средства для работы с графическими возможностями Windows.

ОСНОВНЫЕ ИНСТРУМЕНТЫ

В стандартном графическом интерфейсе Microsoft Windows GDI (Graph­ics Device Interface включает набор программ, воспроизводящих графику) основой для рисования служит HDC (Handle Device context) - дескриптор контекста устройства - и связанные с ним шрифт, перо и кисть (контекст в данном случае - это стек плюс регистры процессора). Реализованные биб-

16

2--4758

17

лиотечные GDI-функции являются аппаратно независимыми, т.е. приложе­ние работает не с физическим, а с логическим устройством, имеющим высо­кие характеристики. Взаимодействие с устройствами вывода осуществляется с помощью драйверов.

В состав библиотеки компонентов (VCL) Delphi входят графические надстройки, назначением которых является обеспечить удобный доступ ко всем свойствам указанных выше инструментов: шрифт (Font), перо (Реп), кисть (Brush).

Шрифт Windows определяется классом TFont. В Delphi допускаются только горизонтально расположенные шрифты. Шрифты имеют множество характеристик, основные из которых приведены в табл. 1.

Свойство

Описание

Имя (Name)

Например, Aria]

Стиль (Style)

Особенности начертания: жирный, курсив, подчеркнутый, перечеркнутый

Цвет (Color)

Цвет шрифта

Вариант набора символов JCharset)

Например, кириллица Russian Charset или по умолчанию Default Charset

Способ установки ширины шрифта (Pilch)

Например, с переменной шириной символа, моноширин­ный, по умолчанию (определен именем)

Высота (Height)

В пикселах

Размер (Size)

В пунктах

Класс ТРеп инкапсулирует свойства пера GDI. Перо имеет следующие основные характеристики:

  • стиль (Style) линии (сплошная, пунктирная и т. д.);

  • толщина (Width) пера в пикселах;

  • цвет (Color) пера;

  • идентификатор растровой операции (Mode), определяющей взаимодей­ ствие пера с поверхностью изображения.

В Windows существуют ограничения на стили линий - пунктирные и штрихпунктирные (psDash, psDot, psDashDot, psDashDotDot) могут быть ус­тановлены только для линий единичной толщины. Более толстые линии должны быть сплошными. В Delphi это ограничение также сохраняется.

Класс TBrush инкапсулирует свойства кисти - инструмента для заливки областей. Кисть имеет такие характеристики, как цвет (Color) и стиль (Style). Последний определяет фактуру закраски, например сплошную.

Шрифт, перо и кисть не могут использоваться самостоятельно. Они яв­ляются составными частями класса TCanvas. Этот класс объединяет в себе "холст", рабочие инструменты (перо, кисть, шрифт), а также набор функций по рисованию геометрических фигур. Свойство типа TCanvas называют кан­вой. Канва входит в качестве свойства во многие компоненты, в частности, TImage. Изображение на канву компонента TImage можно переносить из файла с помощью свойства Picture. При этом можно загружать растровые

18

изображения (битовые карты, BMP), пиктограммы в виде иконок (файлы ICO), из метафайлов (стандартный формат WMF и расширенный EMF) и из сжатых в формате JPEG изображений (файлы JPG и JPEG).