procedure TForm1.LoadBitmap(Path : string); // načte bitmapu o velikosti 256 x 256 pixelu ze souboru // prohodi červenou a modrou složku // bitmapu jiné velikosti je nutno upravit tak, aby // jeji šířka a výška byla mocninou dvou var X : TImage; bih : TBitmapInfoHeader; bi : TBitmapInfo; b : byte; i,j : word; begin X := TImage.Create(Self); X.Picture.LoadFromFile(Path); with bih do begin biSize := SizeOf(bih); biWidth := Velikost; biHeight := Velikost; biPlanes := 1; biBitCount := 24; biCompression := BI_RGB; biSizeImage := Velikost; biXPelsPerMeter := 0; biYPelsPerMeter := 0; biClrImportant := 0; biClrUsed := 0; end; bi.bmiHeader := bih; GetDIBits(X.Picture.Bitmap.Canvas.Handle,X.Picture.Bitmap.Handle, 0,Velikost,@buffer,bi,dib_rgb_colors); for i := 1 to Velikost do for j := 1 to Velikost do begin b := buffer[i,j].red; buffer[i,j].red := buffer[i,j].blue; buffer[i,j].blue := b; end; X.Free end;