밑의 코딩을 보면 image1 의 X Y 좌표 0에서부터 그 크기 까지 루프를 돌면서
memo1에 RGB값을 ADD시키는 코딩인데
memo1찍히는것은 R[FF] G[FF] B[FF] <--이값만 여러개찍히는데 어떤부분이 틀린것인지 통~~알수가 없어여 알고 계신는분은 답변부탁드립니다
procedure TForm1.Button1Click(Sender: TObject);
var
x, y : integer;
tmp_Color : Integer;
begin
tmp_Color := Image1.Canvas.Pixels[x,y];
for y:=0 to image1.height -1 do
begin
for x := 0 to image1.Width -1 do
begin
memo1.Lines.add(format('R[%2X] G[%2X] B[%2x]',
[tmp_Color and $FF,
(tmp_Color and $FF00)shr 8,
(tmp_Color and $FF0000)shr 16]));
end;
end;
end;
TRGBColor = record
B, G, R : byte;
end;
TRGBColorArray = array[0..0] of TRGBColor;
PRGBArray = ^TRGBColorArray;
procedure ReadBitmap(Bitmap: TBitmap; Memo: TMemo);
var
x, y: integer;
p: PRGBArray;
begin
Memo.Clear;
with Bitmap do
begin
if Empty or (Height = 0) or (Width = 0) then
Exit;
for y:=0 to Height-1 do
begin
p := ScanLine[y];
for x:=0 to Width -1 do
with p[x] do
Memo1.Add(Format('%.2x %.2x %.2x', [R, G, B]);
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ReadBitmap(Image1.Picture.Bitmap, Memo1);
end;
이렇게 사용해 보시는 것도...