Класс TCanvas
Этот класс создает "канву", на которой можно рисовать чертежными инструментами - пером, кистью и шрифтом. Объекты класса ЕСаnvas автоматически создаются для всех видимых компонентов, которые должны уметь нарисовать себя. Они инкапсулируют объекты Font, pen, Brush, а также многочисленные методы, использующие эти объекты.
| Свойства класса: | |
| property Brush: TBrush; property ClipRect: TRect; | Объект-кисть Определяет текущие размеры области, нуждающейся в прорисовке |
| property CopyMode: TCopyMode; | Устанавливает способ взаимодействия растрового изображения с цветом фона |
| property Font: TFont; | Объект-шрифт |
| property Handle: Integer; | Дескриптор канвы. Используется при непосредственном обращении к API-функциям Windows |
| property LockCount: Integers; | Счетчик блокировок канвы. Увеличивается на единицу при каждом обращении к методу Lock и уменьшается на единицу при обращении к Unlock |
| property Pen: TPen; | Объект-перо |
| property PenPos:TPoint; | Определяет текущее положение пера в пикселях относительно левого верхнего угла канвы |
| property Pixels[X,Y:Integer]: TColor; | Массив пикселей канвы |
Свойство copyMode используется при копировании части одной канвы (источника) в другую (приемник) методом copyRect и может иметь одно из следующих значений:
| cmBlackness | Заполняет область рисования черным цветом |
| cmDestInvert | Заполняет область рисования инверсным цветом фона |
| cmMergeCopy | Объединяет изображение на канве и копируемое изображение операцией and |
| cmMergePaint | Объединяет изображение на канве и копируемое изображение операцией OR |
| cmNotSrcCopy | Копирует на канву инверсное изображение источника |
| cmNotSrcErase | Объединяет изображение на канве и копируемое изображение операцией OR и инвертирует полученное |
| cmPatCopy | Копирует образец источника |
| cmPatInvert | Комбинирует образец источника с изображением на канве с помощью операции XOR |
| cmPatPaint | Комбинирует изображение источника с его образцом с помощью операции OR, затем полученное объединяется с изображением на канве также с помощью OR |
| cmSrcAnd | Объединяет изображение источника и канвы с помощью операции AND |
| cmSrcCopy | Копирует изображение источника на канву |
| cmSrcErase | Инвертирует изображение на канве и объединяет результат с изображением источника операцией AND |
| cmSrcInvert | Объединяет изображение на канве и источник операцией XOR |
| cmSrcPaint | Объединяет изображение на канве и источник операцией OR |
| cmWhitness | Заполняет область рисования белым цветом |
С помощью свойства pixels все пиксели канвы представляются в виде двухмерного массива точек. Изменяя цвет пикселей, можно прорисовывать изображение по отдельным точкам.