Рисование в Delphi

При создании приложений, использующих графику, в Delphi применяются следующие классы: TCanvas (холст, канва, поверхность рисования), TFont (шрифт), TPen (перо), TBrush (кисть).

Изображение можно строить, например, на поверхности формы различными инструментами во время выполнения приложения. В этом случае изображение представляет собой комбинацию графических примитивов (простейших фигур), таких как точка, линия, круг или прямоугольник. Также возможен вывод текста в графическом режиме. Система Delphi предоставляет возможность рисовать на поверхности компонентов в процессе выполнения приложения, есть также возможность создавать диаграммы.

Для выполнения операций рисования необходимо использовать класс TCanvas. Объект Canvas представляет собой холст для объектов, которые сами прорисовывают свое собственное изображение. Стандартные оконные элементы управления, такие как однострочный редактор или список, не требуют холста, так как они рисуются средствами операционной системы Windows.

Использование свойств, событий и методов объекта Canvas обеспечивает возможность:

– создание изображений с помощью специальных объектов, таких как кисть, перо и шрифт;

– рисования и заливки различных фигур или линий;

– вывода текста в графическом режиме;

– загрузки графических изображений из файла;

– программирование реакции на изменения в текущем изображении.

С помощью его свойств и методов можно и рисовать на поверхности видимых объектов, которые содержат свойство Canvas. Это, например, объекты таких классов, как TBitmap, TComboBox, TDBComboBox, TDBGrid, TDBListBox, TForm, TImage, TListBox, TPaintBox, TPrinter и др.

Свойство Canvas представляет собой объект, который объединяет в себе поле для рисования и объекты пера (Pen), кисти (Brush) и шрифта (Font). Это свойство (Свойство Canvas) доступно при выполнении программы, поэтому получаемые с его помощью рисунки, являются динамическими и существуют только в процессе выполнения приложения. Создаваемые при выполнении программы рисунки могут быть неподвижными или анимационными, т.е. изменяющими свои размеры, форму и расположение.

При помощи объекта Canvas можно воспроизводить на форме любые графические объекты – картинки, многоугольники, текст и т.п. без применения классов TImage, TShape и TLabel (что позволяет избавиться от использования дополнительных ресурсов). Однако при этом необходимо обрабатывать событие OnPaint того объекта, на канве которого производится рисование.

Добавить комментарий