TranslateRect

procedure TranslateRect(var rec: TRect; dx, dy: integer); overload;

procedure TranslateRect(var rec: TRectD; dx, dy: double); overload;


uses Img32, Img32.Fmt.PNG;
...
var
  img: TImage32;
  rec: TRect;
  pt: TPoint;
begin
  img := TImage32.Create(256, 256);

  rec := Rect(img.Width - 120, 0, img.Width, 120);
  pt := MidPoint(rec);
  DrawPoint(img, PointD(pt), 20, clNavy32);
  img.GaussianBlur(rec, 48);

  TranslateRect(rec, -120, 0);
  pt := MidPoint(rec);
  DrawPoint(img, PointD(pt), 20, clNavy32);
  img.GaussianBlur(rec, 24);

  rec := Rect(img.Width - 120, img.Height -125, 
    img.Width, img.Height-5);
  pt := MidPoint(rec);
  DrawPoint(img, PointD(pt), 20, clNavy32);
  img.BoxBlur(rec, 12, 3);

  TranslateRect(rec, -120, 0);
  pt := MidPoint(rec);
  DrawPoint(img, PointD(pt), 20, clNavy32);
  img.BoxBlur(rec, 6, 3);

  img.Free;