Home » Tipps & Tricks » Grafik » Konvertierungen » TColor in den HTML-Farbcode umwandeln und umgekehrt
TColor in den HTML-Farbcode umwandeln und umgekehrt
Farbwerte werden in Delphi in dem Typ TColor abgelegt. Der TColor-Typ unterscheidet sich vom Aufbau her von den aus HTML bekannten Farbcodes.
Aufbau des Types TColor:
$xxBBGGRR
Ein HTML-Farbcode ist hingegen so aufgebaut:
#RRGGBB
Mithilfe folgender Funktionen lässt sich zwischen den Farbtypen umschalten:
function ColorToHtmlColor(AColor: TColor): string; begin Result := IntToHex(ColorToRgb(AColor), 6); Result := '#' + Copy(Result, 5, 2) + Copy(Result, 3, 2) + Copy(Result, 1, 2); end; function HtmlColorToColor(AHtmlColor: string): TColor; begin Delete(AHtmlColor, 1, 1); Result := StrToInt('$' + Copy(AHtmlColor, 5, 2) + Copy(AHtmlColor, 3, 2) + Copy(AHtmlColor, 1, 2)); end;
Aufgerufen werden können die Funktionen beispielsweise so:
procedure TForm1.Button1Click(Sender: TObject); begin Color := HtmlColorToColor('#FF0000'); Caption := ColorToHtmlColor(Color); end;
Hier wird zunächst der HTML-Code, der die Farbe Rot repräsentiert, in den Delphi TColor-Wert konvertiert und dem Formular als Hintergrundfarbe zugewiesen. Anschließend wird dieser Wert zurückgewandelt und in der Titelleiste des Formulars ausgegeben.