Bu Kısımda Get pixel metodu ile aldığım renk bilgisini convert ettim. (ama İstediğim şekilde değil tabiki)
Kod: Tümünü seç
function ColorToHex(Renk: TColor): String;
var
R, G, B: Byte;
begin
Renk:=ColorToRGB(Renk);
R:=GetRValue(Renk);
G:=GetGValue(Renk);
B:=GetBValue(Renk);
ColorToHex:=IntToHex(R,2)+IntToHex(G,2)+IntToHex(B,2) ;
end;
Kod: Tümünü seç
procedure TForm1.Button17Click(Sender: TObject);
var
x,y:integer;
renk:TColor;
veri,renkkodu,renkkodu1: AnsiString;
begin
for y:=0 to image1.Picture.Bitmap.Height do
begin
for x:=0 to image1.Picture.Bitmap.Width do
begin
renk:=getpixel(image1.Canvas.Handle,x,y);
renkkodu:=ColorToHex(renk);
veri:= chr($50)+#0+chr(x+140)+#0+chr(y)+(renk kodlarını göndermem gereken yer 2 byte );
ComPort.WriteStr(veri);
end;
end;
end;
Hocam bu aldığım renk bilgisini 16bit'e dönüştürüp 2 byte şeklinde nasıl alabilirim. Yardımcı olursanız Çok sevinirim.