Declaration property MaskInverted: Boolean; Description
If the layer is a
mask then setting MaskInverted will invert the mask (transparent area will become solid and vice versa).
Default: False
Demos\LayerEditing\LayerMask\LayerMask.dpr
// Create a star shape mask ImageEnView1.LayersInsert( ImageEnView1.LayersCurrent + 1, iesStar5 ); ImageEnView1.CurrentLayer.FillColor := $00808080; // 50% masking, as 128 = 80 hex) ImageEnView1.CurrentLayer.BorderWidth := 0; ImageEnView1.CurrentLayer.IsMask := True; ImageEnView1.CurrentLayer.MaskInverted := True; ImageEnView1.CurrentLayer.Visible := False; // Create an explosion with a gradient mask that radiates out ImageEnView1.LayersInsert( ImageEnView1.LayersCurrent + 1, iesExplosion ); ImageEnView1.CurrentLayer.FillGradient := gpgDiagCenter; ImageEnView1.CurrentLayer.FillColor2 := clBlack; // 100% masking ImageEnView1.CurrentLayer.FillColor := clWhite; // 0% masking ImageEnView1.CurrentLayer.BorderWidth := 0; ImageEnView1.CurrentLayer.IsMask := True; ImageEnView1.CurrentLayer.MaskInverted := True; ImageEnView1.CurrentLayer.Visible := False; // Create a diamond with solid border ImageEnView1.LayersInsert( ImageEnView1.LayersCurrent + 1, iesDiamond ); ImageEnView1.CurrentLayer.FillColor := $00808080; // 50% masking, as 128 = 80 hex) ImageEnView1.CurrentLayer.BorderWidth := 30; ImageEnView1.CurrentLayer.BorderColor := clBlack; // 100% masking ImageEnView1.CurrentLayer.IsMask := True; ImageEnView1.CurrentLayer.MaskInverted := True; ImageEnView1.CurrentLayer.Visible := False; // Add a mask layer (to the top-most image layer) which is transparent at the top and opaque at the bottom ImageEnView1.LayersInsert( ImageEnView1.LayersCurrent + 1, 0, 255, gpgVertical ); // Which is the same as... ImageEnView1.LayersInsert( ImageEnView1.LayersCurrent + 1, iesRectangle ); ImageEnView1.CurrentLayer.FillGradient := gpgVertical; ImageEnView1.CurrentLayer.FillColor := clWhite; // 0% masking ImageEnView1.CurrentLayer.FillColor2 := clBlack; // 100% masking ImageEnView1.CurrentLayer.BorderWidth := 0; ImageEnView1.CurrentLayer.MaskInverted := True; ImageEnView1.CurrentLayer.IsMask := True; ImageEnView1.CurrentLayer.Visible := False; // Make it the cover the underlying image prevLayer := ImageEnView1.Layers[ ImageEnView1.LayersCurrent - 1]; ImageEnView1.CurrentLayer.PosX := prevLayer.PosX; ImageEnView1.CurrentLayer.PosY := prevLayer.PosY; ImageEnView1.CurrentLayer.Width := prevLayer.Width; ImageEnView1.CurrentLayer.Height := prevLayer.Height; // Add an elliptical mask to image layer 2 (i.e. to make the image circular) ImageEnView1.LayersInsert( 3, iesEllipse ); ImageEnView1.CurrentLayer.FillColor := clBlack; ImageEnView1.CurrentLayer.ClientAreaBox := ImageEnView1.Layers[2].ClientAreaBox; ImageEnView1.CurrentLayer.IsMask := True; ImageEnView1.CurrentLayer.MaskInverted := True; ImageEnView1.CurrentLayer.Visible := False; ImageEnView1.Update();