Свойство Canvas

 

Поверхности, на которую программа может выводить графику, соответствует свойство Canvas. Например, свойство Canvas имеют компоненты Form и PaintBox. В свою очередь, свойство canvas – это объект типа TCanvas. Методы этого типа обеспечивают вывод графических примитивов (точек, линий, окружностей, прямоугольников и т. д.), а свойства позволяют задать характеристики выводимых графических примитивов: цвет, толщину и стиль линий; цвет и вид заполнения областей; характеристики шрифта при выводе текстовой информации.

 

Методы вывода графических примитивов рассматривают свойство Canvas как некоторый абстрактный холст, на котором они могут рисовать (canvas переводится как "поверхность", "холст для рисования"). Канва состоит из отдельных точек – пикселей. Положение пикселя характеризуется его горизонтальной (X) и вертикальной (Y) координатами. Левый верхний пиксель имеет координаты (0, 0). Координаты возрастают сверху вниз и слева направо. Значения координат правой нижней точки холста зависят от размера холста.

 

Размер канвы можно получить, обратившись к свойствам Height и Width области иллюстрации (image) или к свойствам формы: ClientHeight и Clientwidth.

 

Для рисования на Canvas геометрических фигур используются методы, приведённые в следующей таблице:

 

Наименование

Рисование

Arc

Дуги

Chard

Хорды эллипса

Ellipse

Эллипса

FillRect

Заполненного прямоугольника

FrameRect

Незаполненного прямоугольника

MoveTo

Перемещение пера без прорисовки линии

LineTo

Линии

Poligon

Заполненного многоугольника

PolyLine

Незаполненного многоугольника

Rectangle

Заполненного прямоугольника

RoundRect

Заполненного прямоугольника со скруглёнными краями

 

 

Вид выводимых на канву графических элементов определяется свойствами канвы Pen (карандаш) и Brush (кисть). Свойство Pen отвечает за внешний вид вычерчиваемых линий и контуров, свойство Brush – за заливку областей, ограниченных контурами.

 

На канву можно также загрузить изображение из файла либо вывести на неё текст.

 

Канва имеет свойство Pixels. Это свойство представляет собой двумерный массив, который отвечает за цвета канвы. Например, Canvas.Pixels[10,20] соответствует цвету пикселя, 10-го слева и 20-го сверху. С массивом пикселей можно обращаться как с любым свойством: изменять цвет, задавая пикселю новое значение, или определять его цвет по хранящемуся в нем значению. Например, Canvas.Pixels[10,20] := 0 или Canvas.Pixels[10,20] := clBlack – это задание пикселю черного цвета.

Свойство Pixels можно использовать для рисования на канве.