[Delphi] Canvas mit hexadezimal benutzen

Benutzer-2472

abgemeldet
1 Mai 2006
32.694
1.621
Moin, ich habe ein kleines Problemchen.

Ich gebe Strings ein, wandel diese eingaben in Blöcke der Länge 4 in Hexadezimalzahlen um.

Also z.b. Klamm.de 4B 6C 61 6D | 6D 2E 64 65

so, wie kann ich bei Delphi aus 4B 6C 61 6D eine Farbe machen? Also 4B = Alphakanal und die restlichen 3 als RGB?

MfG
 
meine Delphikenntnisse beschränken sich aufs minimum, aber beim surfen bin ich auf folgendes gestoßen:
https://www.dsdt.info/tipps/?id=534
https://www.delphimeister.de/#RGB

soll heißen mein Vorschlag wäre mit der Funktion aus dem 2. Link aus deinen RGB Werten einmal TColor zu machen, und damit auf der Canvas zu malen, und dabei die Werte in normale Dezimalzahlen umrechnen zu lassen. Wahrscheinlich müsstest du die Dezzahlen nochmal in Byte umwandeln aber dazu gibts ja nochmal InttoByte ;)

Code:
Function RGB(R,G,B: Byte): TColor;
Begin
  Result := B Shl 16 Or G Shl 8  Or R;
End;

zu alpha lässt sich übrigens nicht viel mehr finden als ein paar verzweifelte Programmierer die nicht weiter wissen außer mit directx und opengl um sich zu werfen, würd ich dir empfehlen die Finger von zu lassen :mrgreen:

finds übrigens cool dass dein Thread hier bei der Suche nach Antworten bei google ganz vorn mit dabei ist :LOL:
 
Joar, ich hab das nun so gelöst. Die Farben kann man ja einfach umrechnen, das Problem ist, dass man nicht ohne eine weitere Komponente auskommt, da Delphi an sich keine alphakanäle darstellen kann.

Also Komponenten ergoogelt, eingebaut und getestet. Funzt ;)