Registriert seit: 12. Jan 2019
Ort: Hessen
702 Beiträge
Delphi 12 Athens
|
AW: RGBToHex und umgekehrt
18. Mai 2019, 11:43
Ich konvertiere RGB zu Hex.
Delphi-Quellcode:
function TSkinEngine.RGBtoHEX(ColrRGB: ColorRef): string;
var
R, G, B: Byte;
begin
R:= GetRValue(ColrRGB);
G:= GetGValue(ColrRGB);
B:= GetBValue(ColrRGB);
Result:= Format('$%.2x%.2x%.2x', [R, G, B]);
end;
UseColor := RGBtoHEX(RGB(11,37,86)); // := $0B2556;
jetzt umgekehrt.
Delphi-Quellcode:
if UseColor > '' then
begin
R := Byte(StrToInt('$' + Copy(UseColor, 3, 2)));
G := Byte(StrToInt('$' + Copy(UseColor, 5, 2)));
B := Byte(StrToInt('$' + Copy(UseColor, 7, 2)));
end
Die Werte von R, G, B sind aber jetzt komplett anders. Was mache ich falsch?
Du kannst nicht zählen . Dein UseColor hat 7 Zeichen, R belegt die Positionen 2 und 3, G 4 und 5, B 6 und 7.
Peter Below
|
|
Zitat
|