procedure EraseInverted(img: TImage32; const polygon: TPathD; fillRule: TFillRule; const bounds: TRect); overload;
procedure EraseInverted(img: TImage32; const polygons: TPathsD; fillRule: TFillRule; const bounds: TRect); overload;
EraseInverted will clear whatever's between the supplied rectangle and polygon regions.
uses Img32, Img32.Fmt.PNG, Img32.Extra;
...
var
img: TImage32;
path: TPathD;
begin
img.LoadFromFile('./lenna.png');
path := Ellipse(Rect(20,20,236,236));
EraseInverted(img, path, frNonZero, img.Bounds);
img.SaveToFile('erase_outer.png');
img.Free;
end;
After:
Copyright ©2010-2023 Angus Johnson - Image32 4.8 - Help file built on 16 Apr 2025