
Работа с графикой
Приложения Wmdows осуществляют вывод графической информации на экран монитора или принтер с помощью функций GDI (Graphics Devices Interface - интерфейс графических устройств). Сама операционная система Windows является графической средой и для отображения информации также использует функции GDI.
Реализованные GDI-функции являются аппаратно-независимыми, поэтому при выводе графической информации приложение работает не с физическим, а логическим устройством, имеющим высокие характеристики: широкая цветовая палитра, большое разрешение и т. п. Взаимодействие приложения с устройствами вывода осуществляется с помощью драйверов, которые преобразуют аппаратно-независимые функции GDI в команды конкретного устройства.
При выполнении запроса приложения на вывод информации GDI или драйвер учитывают ограниченные возможности и особенности физического устройства и выполняют коррекцию выводимой информации. Например, приложение может указать для цвета геометрической фигуры любой из примерно 16 миллионов цветов (264), однако далеко не всякое физическое устройство ( в частности, принтер ) обладает такими богатыми возможностями отображения цвета, поэтому фигура будет закрашена в цвет, поддерживаемый конкретным устройством и наиболее близким запрошенному. Аналогичные преобразования выполняются над шрифтами выводимых символов.
Такой подход позволяет приложению и операционной системе Windows функционировать, относительно независимо от особенностей периферийного оборудования. Приложения Windows способны работать на компьютерах практически любой конфигурации, при этом, чем лучше будут характеристики аппаратной части, тем больше выводимая информация будет соответствовать требованиям приложения.
-
Приложение
Драйвер устройства
Графическое устройство вывода
Рис. 10.1. Схема взаимодействия приложения и устройства вывода
Программирование графики в Windows является достаточно сложным и трудоемким процессом, но Delphi предлагает ряд свойств, существенно упрощающие использование графических средств:
Canvas — для контекста отображения
Font — для шрифта
Реп — для пера
Brush — для кисти.
Перечисленные свойства являются доступными не у всех визуальных компонентов. Например, у формы доступны свойства Сanvas, Font, Brush, у кнопки — Font, Brush, у геометрической фигуры Shape — Font, Pen, Brusn
Для работы с изображениями Delphi предлагает также такие классы, как:
TPicture — контейнер для изображения,
TGraphic — базовый класс для графических объектов-изображений,
TBitmap — растровое изображение,
TJpegImage — Jpeg,
TMetaFile — метафайл
Эти классы инкапсулируются другими классами, например, TImage, экземпляры классов можно создавать и использовать программно.
Система Delphi предоставляет возможность рисовать на поверхности компонентов в процессе выполнения приложения и создавать изображения при конструировании.