Thema: Delphi TBitmap färben

Einzelnen Beitrag anzeigen

Florian H

Registriert seit: 30. Mär 2003
Ort: Mühlacker
1.043 Beiträge
 
Delphi 6 Professional
 
#1

TBitmap färben

  Alt 18. Okt 2003, 09:58
Hallo,

für eine Skinfunktion eines meiner Programme hatte ich folgende Idee:
Um das Programm, bzw. den Skin belieibig färben zu können, nehme ich Schwarz-Weiß-Bitmaps für die Controls die ich als Bilder habe und färbe die dann entsprechend ein.
Der User wählt dann einen Farbton und entsprechend werden dann Pixel für Pixel des Bildes, je nach Grauwert, gefärbt.

Aber das will mir irgendwie nicht so recht gelingen!
Ich habe folgendes probiert:
Delphi-Quellcode:
      PixelColor := RGB(round(r*(getRValue(PixelColor) / 255)),
                        round(g*(getRValue(PixelColor) / 255)),
                        round(b*(getRValue(PixelColor) / 255)));
Dabei ist PixelColor die Farbe des S/W-Pixels des Skins und r,g und b sind die aufgeteilten RGB-Werte der Farbe, mit der gefärbt werden soll.

Wenn ich das so mache, funktioniert das aber nicht so richtig, ich kann partout nicht mit einem blauton färben und auch sonst ist die Farbdarstellung nicht richtig...

Gibt es da noch eine gute Möglichkeit?
Wenn einer was mit HLS hat, bitte mit Code, daran bin ich nämlich auch gescheitert...


Viele Grüße
Florian
Florian Heft
  Mit Zitat antworten Zitat