Bitmap vertikal spiegeln |
|
| System | Win9x, WinNT, Win2000, WinXP, Vista, Win7 |
|---|---|
| Ab Delphi-Version | Delphi 1 |
| Letzte Änderung | 28.09.2010 |
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:
TRGBArray = array[0..0] of TRGBTriple;
pRGBArray = ^TRGBArray;
Dann der Code:
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:
begin
SpiegelnVertikal(Image1.Picture.Bitmap);
end;