Thema: Delphi RGBToHex und umgekehrt

Einzelnen Beitrag anzeigen

peterbelow
Online

Registriert seit: 12. Jan 2019
Ort: Hessen
670 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: RGBToHex und umgekehrt

  Alt 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
  Mit Zitat antworten Zitat