[Delphi] Odczytywanie koloru

0

Witam

Mam problem, z którym nie moge se poradzić, choć dla niektórych pewnie jest banalniy ;]

Powiedzmy, że mam na formie TImage z wczytanym obrazkiem. Co zrobić aby odczytać do TLabel nazwę koloru pixela na którym znajduje się myszka?

Proszę o pomoc :)

0

image.picture.bitmap.canvas.pixels[x, y]
mouse.pos.x
mouse.pos.y
getRValue
getGValue
getBValue

te funkcje Ci sie przydadza (jesli nie przekrecilem nazw)

0

nazwę koloru pixela

Chodzi o nazwę koloru, czy podanie wartości R G B ?

0
procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
const
  RGBFortStr = 'R: %0:.3d G: %1:.3d B: %2:.3d';
  HTMLFortStr = '#%0:.2x%1:.2x%2:.2x';
var
  cl: Integer;
  r, g, b: Byte;
begin
  cl:= Image1.Canvas.Pixels[X, Y];
  r:= GetRValue(cl);
  g:= GetGValue(cl);
  b:= GetBValue(cl);
  Label1.Caption:= Format(RGBFortStr, [r, g, b]);
  Label2.Caption:= Format(HTMLFortStr, [r, g, b]);
end;
0

Przepraszam, ale po co tak kombinować?

procedure TForm1.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,
  Y: Integer);
begin
  Label1.Caption:= ColorToString(Image1.Canvas.Pixels[X, Y]);
end;
0
simplex napisał(a)

Przepraszam, ale po co tak kombinować?

Bo zależy co się chce uzyskać.

0

Troche źle się wyraziłem w 1 poście :P Chodzi tutaj o nazwę koloru np: $00FF0D0D :D

0

Dzieki wszystkim za odpowiedzi wszystko pięknie działa )

1 użytkowników online, w tym zalogowanych: 0, gości: 1