DrawInvertedPolygon

procedure DrawInvertedPolygon(img: TImage32; const polygon: TPathD; fillRule: TFillRule); overload;

procedure DrawInvertedPolygon(img: TImage32; const polygons: TPathsD; fillRule: TFillRule); overload;

Example
  uses Img32, Img32.Fmt.PNG, Img32.vector, Img32.Draw;
  ...
  var
    img: TImage32;
    path: TPathD;
    rec: TRect;
  begin
    img := TImage32.Create(256,256);
    rec := img.Bounds;
    rec.Right := rec.Right div 4;
    path := Rectangle(rec);

    //draw a multicolored background
    DrawPolygon(img, path, frEvenOdd, clRed32);
    path := OffsetPath(path, rec.Width, 0);
    DrawPolygon(img, path, frEvenOdd, clYellow32);
    path := OffsetPath(path, rec.Width, 0);
    DrawPolygon(img, path, frEvenOdd, clLime32);
    path := OffsetPath(path, rec.Width, 0);
    DrawPolygon(img, path, frEvenOdd, clBlue32);

    //draw a color inverted ellipse
    path := Ellipse(RectD(30,30,226,226));
    DrawInvertedPolygon(img, path, frNonZero);

    img.SaveToFile('DrawInvertedPolygon.png');
    img.Free;
  end;