Décomposer une couleur en composantes RGB PHP
Un article de WikiTuto.
Sommaire |
Explication
Nous venons de dire que la couleur de fond sera passée par son nom. Pour la concision de l'exemple, les couleurs possibles seront limitées à celles définies en HTML 3.2, mais on pourrait utiliser l'ensemble des couleurs définies par X11 (dans le rgb.txt). Pour récupérer les valeurs des composantes Rouge, Verte et Bleue pour une couleur donnée, nous utiliserons un tableau associatif dérivé de Colors.php de Claus Radloff (téléchargeable sur Berber's PHP3 Examples page, partie "Graphics").
Voici comment cela fonctionne (Après avoir lu le paragraphe sur les tableaux associatifs, ça ne devrait pas vous poser de problème).
// Extrait de Colors.php par Claus Radloff.
// On créée une correspondance entre le nom et les composantes RGB
$coltable = Array (
"black"=>array("red"=>0x00, "green"=>0x00, "blue"=>0x00),
"maroon"=>array("red"=>0x80, "green"=>0x00, "blue"=>0x00),
"green"=>array("red"=>0x00, "green"=>0x80, "blue"=>0x00),
...
"aqua"=>array("red"=>0x00, "green"=>0xFF, "blue"=>0xFF),
"white"=>array("red"=>0xFF, "green"=>0xFF, "blue"=>0xFF)
) ;
Le tableau $coltable est un tableau associatif qui comporte comme clé le nom de la couleur, et comme valeur un tableau associatif ayant pour clé le nom de le composante red, green ou blue, et comme valeur, la valeur de cette composante exprimée de 0 à 255. Ainsi, pour obtenir les valeurs des composantes RGB de la couleur aqua, on procède comme suit :
$mycol = $coltable["aqua"];
$red = $mycol["red"];
$green = $mycol["green"];
$blue = $mycol["blue"];
Il ne reste plus qu'à générer et retourner une image GIF
Voir aussi
- L'ensemble des articles concernant le PHP
- Ecrire des classes
- Utiliser des fonctions optionnelles
- Les paramètres d'appel
- Décomposer une couleur en composantes RGB
- Générer et retourner une image GIF
- Utilisation de Formulaires



