![]() |
Color zu Hex
Hallo.
Ich wollte mal fragen wie ich aus einer Color-Variable (z.b. clWhite) einen Wert als HEX-Farbe (z.b. #ffffff, also wie im HTML Body Bgcolor-Tag) erhalten kann. Freu mich schon mal im voraus auf Antworten. LHMultimedia :mrgreen: :mrgreen: :mrgreen: :mrgreen: :coder: |
Re: Color zu Hex
Mit IntToHex(clWhite,6) bekommst Du den RGB hexWert der Farbe.
Welcher aber nicht der Farbpallette von HTML netspricht. Grüße Klaus |
Re: Color zu Hex
warum entspricht der nicht der Farbpalette von HTML? inzwischen verarbeiten browser eigentlich alle Farbwerte. Bei clWhite solltest du zuvor jedoch ColorToRGB aufrufen
|
Re: Color zu Hex
TColor ist "nur" ein Integer, welcher in den unteren 3 Bytes die Farbinformationen enthält ... siehe
![]() Demnach brauchst du deises z.B. nur mit IntToHex umzuwandeln. Allerdings ist die Farbreinfolge (RGB) in Delphi andersrum, als in "HTML". Also mußt du noch die Bytes tauschen. $00RRGGBB <> $00BBGGRR [add] aha, doch shcon antworten. Für clWhite ist ColorToRGB nicht notwendig, da dieses die Farbwerte schon enthält, allerdings für die Konstanden der Systemfarben (z.B. clBtnFace) wäre es notwendig (na ja .. schaden kann ColorToRGB aber och nicht). |
Re: Color zu Hex
Danke für die schnellen Antoworten!
LHMultimedia! |
Re: Color zu Hex
bei DelphiWorks gibts ne function dafür :)
Delphi-Quellcode:
function dwColorToHTMLColor(const Color: TColor): String;
var iR, iG, iB: Byte; begin iR:= GetRValue(Color); iG:= GetGValue(Color); iB:= GetBValue(Color); result:= Format('#%.2x%.2x%.2x', [iR, iG, iB]); end; |
Re: Color zu Hex
^^
Delphi-Quellcode:
Function ColorToHTMLColor(Color: TColor): String;
Begin Color := ColorToRGB(Color); Result := Format('#%.2x%.2x%.2x', [GetRValue(Color), GetGValue(Color), GetBValue(Color)]); End; // oder Function ColorToHTMLColor(Color: TColor): String; Begin Color := ColorToRGB(Color); Color := ((Color shl 16) and $FF0000) or (Color and $00FF00) or ((Color shr 16) and $0000FF); Result := '#' + IntToStr(Color, 6); End; // ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz