Свойство canvas графических объектов

У ряда объектов из библиотеки визуальных компонент есть свойство Canvas (канва), которое предоставляет простой путь для рисования на них. Эти объекты — TBitmap, TComboBox, TDirectoryListBox, TDrawGrid, TFileListBox, TForm, TImage, TListBox, TOutline, TPaintBox, TPrinter, TstringGrid и др.

Canvas является в свою очередь объектом, объединяющим в себе: поле для рисования, карандаш (Pen), кисть (Brush) и шрифт (Font).

Используя Canvas, Вы можете воспроизводить на форме любые графические объекты — картинки, многоугольники, текст и т.п. Однако при этом Вы должны обрабатывать событие OnPaint того объекта, на канве которого Вы рисуете. Рассмотрим подробнее свойства и методы объекта Canvas.

Свойства Canvas:

Brush – кисть, является объектом со своим набором свойств:

  • Bitmap — картинка размером строго 8×8, используется для заполнения (заливки) области на экране
  • Color — цвет заливки
  • Style — предопределенный стиль заливки; это свойство конкурирует со свойством Bitmap — какое свойство Вы определили последним, то и будет определять вид заливки

Font – шрифт, которым выводится текст (метод TextOut)

Pen – карандаш, определяет вид линий; как и кисть (Brush) является объектом с набором свойств:

  • Color — цвет линии,
  • Style — стиль вывода: линия, пунктир и др.
  • Width — ширина линии в точках

PenPos – текущая позиция карандаша, карандаш рекомендуется перемещать с помощью метода MoveTo, а не прямой установкой данного свойства

Pixels – двухмерный массив элементов изображения (pixel), с его помощью Вы получаете доступ к каждой отдельной точке изображения (см. пример к данному уроку).

Методы Canvas:

Методы для рисования простейшей графики – Arc, Chord, LineTo, Pie, Polygon, PolyLine, Rectangle, RoundRect. При прорисовке линий в этих методах используются карандаш (Pen) канвы, а для заполнения внутренних областей — кисть (Brush).

Методы для вывода картинок на канву – Draw и StretchDraw, В качестве параметров указываются прямоугольник и графический объект для вывода (это может быть TBitmap, TIcon или TMetafile). StretchDraw отличается тем, что растягивает или сжимает картинку так, чтобы она заполнила весь указанный прямоугольник (см. пример к данному уроку).

Методы для вывода текста – TextOut и TextRect. При выводе текста используется шрифт (Font) канвы. При использовании TextRect текст выводится только внутри указанного прямоугольника. Длину и высоту текста можно узнать с помощью функций TextWidth и TextHeight.

javascript вывод графики в canvas и движение объекта


Читать еще…

Понравилась статья? Поделиться с друзьями: