[Couleur] Récupérer les valeurs R,V,B et L,U,V ?
Comment en partant d'une couleur, peut-on retrouver les valeurs de chaque composante de cette couleur ?
Mon but est de pouvoir, en partant d'une couleur, en définir une nouvelle qui ira plus vers le rouge, le vert ou le bleu (suivant mes envies quoi).
Pour par exemple recréé des dégradés de couleurs !
un peu comme du code HTML :
Code:
1 2
| #CC0000
#FF0000 => je le veux rouge + lumineux, donc j'augmente ces 2 valeurs |
Ce que j'ai essayé :
Convertir la couleur en un entier puis ajouter une nouvelle valeur entière et reconvertir en TColor => Aïe, c'est pas vraiment un dégradé!
Puis j'ai essayé ceci :
Code:
1 2 3 4 5 6 7
| int a = ColorDialog1->Color;
AnsiString couleur = IntToHex(a,8);
AnsiString RR = this->reverseAS(couleur.SubString(couleur.Length()-2, 2));
AnsiString VV = this->reverseAS(couleur.SubString(couleur.Length()-4, 2));
AnsiString BB = this->reverseAS(couleur.SubString(couleur.Length()-6, 2));
int b = RR.ToInt();
ShowMessage(RR+VV+BB + " " + b); |
reverseAS est une fonction à moi pour inverser la chaîne ansistring...
Mais, pb, certaines couleurs ne passent pas !?
Bref, avez-vous une autre solution ?