I use this method to process the image, but if it contains high-resolution images, more than 1000 x 1000 pixels, the image processing takes a very long time and cause the application not responding for a while, how to overcome it.
when processing high resolution images always appear Not Responding messages as in the picture.
type
TRGBArray = array[0..0] of TRGBTriple;
pRGBArray = ^TRGBArray;
var
ARL, ALL, AOL : pRGBarray;
TOGfx, TRGfx, TLGfx : TBitmap;
procedure TFZN.GfXColorProcessor;
var
X, Y : integer;
begin
TOGfx.Assign(TRGfx);
for Y := 0 to TRGfx.Height - 1 do
begin
ARL := TOGfx.Scanline[Y];
AOL := TLGfx.Scanline[Y];
//-------------------------
for x := 0 to TRGfx.Width - 1 do
begin
ARL[x].RGBtRed := AOL[X].RGBtRed;
IBG.Picture.bitmap.Assign(TOGfx);
end;
end;
end;