Home » Tipps & Tricks » Grafik » Grafikbearbeitung » Bitmap vertikal spiegeln
Bitmap vertikal spiegeln
Eine der Grundaufgaben eines jeden Grafikprogrammes ist es, Bilder zu spiegeln.
Der folgende Tipp zeigt wie man in Delphi ein TBitmap vertikal spiegeln kann. Zuerst müssen diese beiden Typen vereinbart werden:
type TRGBArray = array[0..0] of TRGBTriple; pRGBArray = ^TRGBArray;
Dann der Code:
procedure SpiegelnVertikal(Bitmap : TBitmap); var j,w :Integer; help:TBitmap; begin help := TBitmap.Create; try help.Width := Bitmap.Width; help.Height := Bitmap.Height; help.PixelFormat := Bitmap.PixelFormat; w := Bitmap.Width*sizeof(TRGBTriple); for j := 0 to Bitmap.Height-1 do move(Bitmap.Scanline[j]^,Help.Scanline[Bitmap.Height - 1 - j]^,w); Bitmap.Assign(help); finally help.free; end; end;
Ein Aufruf sähe zum Beispiel aus:
procedure TForm1.Button1Click(Sender: TObject); begin SpiegelnVertikal(Image1.Picture.Bitmap); end;