![]() |
ColorBox - Color zu Hexcolor machen
Heya,
ich wollte mal gerne wissen wie man eine in der ColorBox ausgewählte Frabe zu deren Hexwert umrechnet bzw umformt. Greetz Master_BB |
Re: ColorBox - Color zu Hexcolor machen
Delphi-Quellcode:
IntToHex(ColorBox1.Selected, 8);
|
Re: ColorBox - Color zu Hexcolor machen
ah ja thx funktioniert,
jedoch hab ich das problem das manche farben falsch sind. ich habe die digits auf 6 runter gestellt
Delphi-Quellcode:
weil im HTML Code die Farben nur 6 Stellen hatten.
IntToHex(ColorBar1.Selected,6);
und bei manchen Farben ist auf der HTML Seite die Farbe anders als die in der ColorBar ausgewählte. Wie kommt das? |
Re: ColorBox - Color zu Hexcolor machen
Hai Master_BB,
wird bei HTML nicht eine andere Reihenfolge verwendet? BTW: Schaue Dir auch einmal ColorToRGB an. |
Re: ColorBox - Color zu Hexcolor machen
Sharky hat Recht. TColor speichert Daten nicht im RGB-Format, sondern komplett anders. Du musst wie folgt vorgehen:
Delphi-Quellcode:
Greetz
var
r, g, b: Byte; aColor: TColor; RGB: String[6]; begin ColorToRGB(aColor, r, g, b); RGB := IntToHex(r, 2)+IntToHex(g, 2)+IntToHex(b, 2); end; alcaeus |
Re: ColorBox - Color zu Hexcolor machen
Zitat:
|
Re: ColorBox - Color zu Hexcolor machen
Zitat:
Delphi-Quellcode:
IntToHex(ColorToRGB(ColorBox1.Selected), 6));
|
Re: ColorBox - Color zu Hexcolor machen
:oops: :wall: :oops:
Ich muss eine falsche Deklaration im Kopf gehabt haben. Der Weg von Stevie ist natürlich der richtige. Sorry... Greetz alcaeus |
Re: ColorBox - Color zu Hexcolor machen
Zitat:
Zitat:
|
Re: ColorBox - Color zu Hexcolor machen
Delphi-Quellcode:
var
r, g, b: Byte; aColor: TColor; RGB: String[6]; begin R := GetRValue( AColor ); G := GetGValue( AColor ); B := GetBValue( AColor ); RGB := IntToHex(r, 2)+IntToHex(g, 2)+IntToHex(b, 2); end; |
Re: ColorBox - Color zu Hexcolor machen
Zitat:
|
Re: ColorBox - Color zu Hexcolor machen
hm sorry bisher kappiere ich noch nicht was RGB usw ist.
und eure schnipsel laufe bisher noch nicht so ganz
Delphi-Quellcode:
so hab ich das bisher und RGB gebe ich als Farbe an
aColor := ColorBox4.Color;
R := GetRValue( AColor ); G := GetGValue( AColor ); B := GetBValue( AColor ); RGB := IntToHex(r, 2)+IntToHex(g, 2)+IntToHex(b, 2); font color="#'+rgb+'" usw |
Re: ColorBox - Color zu Hexcolor machen
Zitat:
Rot Grün Blau Wenn Du nun eine Farbe im RGB-Format angiebst ist das z.B. (Hexschreibweis) $FF00FF. Dies entspricht einer Mischung aus 100% Rot und 100% Blau = clFuchsia. Delphi bzw. Windows setzen die Farbanteile aber in der Reihenfolge: Grün Blau Rot zusammen. Und dann ist: $FF00FF = 100% Grün plus 100% Rot. |
Re: ColorBox - Color zu Hexcolor machen
Zitat:
Delphi bzw. Windows setzen die Farbanteile aber in der Reihenfolge: Blau Grün Rot zusammen. Und dann ist: $FF00FF = 100% Grün plus 100% Rot.[/quote] |
Re: ColorBox - Color zu Hexcolor machen
so ich hab jetzt ein schönes ergebnis was perfekt funktioniert.
Delphi-Quellcode:
lang hats gedauert
function TFHTMLExport.ColorToHTML(AColor : TColor) : string;
var ATemp : LongInt; begin Result := ''; ATemp := ColorToRGB(AColor); Result := Format('#%.2x%.2x%.2x', [GetRValue(ATemp), GetGValue(ATemp), GetBValue(ATemp)]); end; aber hier die funktion fals soetwas nocheinmal jemand brauchen sollte... Greetz |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:36 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