[Delphi] color werte (?)

smoker_on_line

Ehemann und Papa
ID: 79985
L
4 Juni 2006
700
66
sitzte hier schon wieder mal die ganze nacht am rechner und bastel mit delphi und meinem html editor. nun habe ich kleines problem. farbwerte!

ich habe bei delphi folgenden farbwert: $00FFCC99 kann mir nun jemand sage wie ich dadraus nen normalen hex wert bekomme? also #00ff00 bsp.

habe bereits viel gegoogelt aber ich weiß nicht genau wie man die sachen nennt und wonach ich am besten suchen sollte.habe nach color konverter und delphi color to html color und so gesucht aber nicht wirklich was brauchbares gefunden.

hoffe hier kann mir jemand helfen. wichtig sonst komme ich im moment nicht wirklich weiter:yawn:
 
Hilft dir das was?

Wie wandelt man zwischen HTML-Farbcode und einem Delphi-TColor-Wert?

In Delphi hat z.B. die Farbkonstante clRed (also "rot") den hexadezimalen Wert $FF:


clBlue : $00FF0000
clGreen : $0000FF00
clRed : $000000FF
allgemein: $xxBBGGRR

In HTML sind die Bytes für die drei Grundfarben Rot, Grün und Blau aber anders angeordnet:


Rot : #FF0000
Grün : #00FF00
Blau : #0000FF
allgem.: RRGGBB

Die Umwandlung eines Delphi-TColor-Farbwertes in einen HTML-Farbcode funktioniert recht einfach mittels der "ColorToRGB"-Funktion, die Ausgabe muß lediglich passend formatiert werden:


function ColorToHTMLColor(Color: TColor): String;
var
C: packed record case Integer of
0: (Int: LongInt);
1: (B0, B1, B2, B3: Byte);
end;
H: Byte;
begin
// convert negative (SysColor) values like clBtnFace
C.Int := ColorToRGB(Color);
// red value of TColor is in byte 0, of HTML in byte 2: swap
H := C.B0;
C.B0 := C.B2;
C.B2 := H;
// output hex value
Result := Format('"#%.6x"', [C.Int]);
end; {Michael Winter}

Man kann sich übrigens nur auf eine 216-Farben Palette verlassen, die durch die Farbteilwerte 00, 33, 66, 99, CC und FF in jeweils R, G und B gebildet wird. Benutzt man andere, darf der Browser das mit Gewalt umbiegen und durch eine der Farben in der Palette ersetzen.
Von: https://www.delphi-fundgrube.de/faq14.htm