ImageEn, unit imageenview

TImageEnView.BrushTool

TImageEnView.BrushTool

Declaration

property BrushTool: TIEBrushToolInteraction;

Description

Provides access to the methods and properties of the TIEBrushToolInteraction class, which is used when MouseInteractGeneral is miBrushTool.
This tool allows the user to paint onto the image with a variety of brushes. When used with a tablet/pen, then pressure will affect the brush size and/or opacity.

Note: You can hold down the shift key to snap the brush to axes

Demo

Demo  Demos\ImageEditing\BrushTool\PaintBrush.dpr

Examples

// Enable brush painting
ImageEnView1.MouseInteractGeneral := [miBrushTool];


// Cancel brush painting
ImageEnView1.BrushTool.Cancel();


// Enable painting with a circular spray can brush
ImageEnView1.BrushTool.BrushShape := iecsCircle;
ImageEnView1.BrushTool.BrushFill  := iebfSpray;
ImageEnView1.BrushTool.BrushSize  := 40;
ImageEnView1.BrushTool.BrushColor := clRed;
ImageEnView1.MouseInteractGeneral := [ miBrushTool ];



// Enable painting with a red/yellow gradient
ImageEnView1.BrushTool.BrushShape  := iecsRectangle;
ImageEnView1.BrushTool.BrushFill   := iebfGradient;
ImageEnView1.BrushTool.BrushSize   := 50;
ImageEnView1.BrushTool.BrushColor  := clRed;
ImageEnView1.BrushTool.BrushColor2 := clYellow;
ImageEnView1.MouseInteractGeneral  := [ miBrushTool ];


// Set cursor as a square eraser
ImageEnView1.BrushTool.BrushFill     := iebfEraser;
ImageEnView1.BrushTool.EraserOpacity := 1.0;
ImageEnView1.BrushTool.BrushShape    := iecsRectangle;
ImageEnView1.MouseInteractGeneral    := [ miBrushTool ];


// Partially erase the image
ImageEnView1.BrushTool.BrushFill     := iebfEraser;
ImageEnView1.BrushTool.BrushSize     := 50;
ImageEnView1.BrushTool.EraserOpacity := 0.5;
ImageEnView1.BrushTool.BrushShape    := iecsCircle;
ImageEnView1.MouseInteractGeneral    := [ miBrushTool ];



// Use Smart Eraser Brush tool
ImageEnView1.ChromaKeyOptions.Tolerance := 0.15;
ImageEnView1.BrushTool.BrushFill := iebfSmartEraser;
ImageEnView1.MouseInteractGeneral := [ miBrushTool ];



// Enable painting with a custom brush
ImageEnView1.BrushTool.BrushImage.Read( 'Golden-Brush.png' );
ImageEnView1.BrushTool.BrushFill  := iebfImage;
ImageEnView1.BrushTool.BrushShape := iecsRectangle;
ImageEnView1.MouseInteractGeneral := [ miBrushTool ];



// Show brush properties dialog
ImageEnView1.MouseInteractGeneral := [miBrushTool];
ImageEnView1.BrushShowPropertiesDialog();


// Enable painting of the alpha channel (set transparency to 50% without changing the image content)
ImageEnView1.BrushTool.BrushShape   := iecsCircle;
ImageEnView1.BrushTool.BrushFill    := iebfSolid;
ImageEnView1.BrushTool.BrushSize    := 50;
ImageEnView1.BrushTool.Transparency := 128;
ImageEnView1.BrushTool.TransparencyMode := ietmReplace;
ImageEnView1.MouseInteractGeneral  := [ miBrushTool ];

See Also

ImageEn Interactive Tools
KeyInteract
BrushShowPropertiesDialog