Pour mon boulot, j’ai été confrontée à devoir générer des couleurs aléatoires à la place de puiser dans ce que les développeurs avaient prévu (nous faisions un fork d’une plateforme existante). Mais je devais également penser au texte qui serait mis. Donc, il me fallait également trouver un moyen pour afficher du clair dans du foncé et du foncé dans du clair.Grâce à des bouts de code de Manithu et sur 01php.net, j’ai trouvé mon bonheur. J’ai décidé de vous les présenter ici dans un petit script (sans aucune portion de code du projet sur lequel j’étais):
<?php //couleur aléatoire générée function getColor(){ $a = DecHex(mt_rand(0,15)); $b = DecHex(mt_rand(0,15)); $c = DecHex(mt_rand(0,15)); $d = DecHex(mt_rand(0,15)); $e = DecHex(mt_rand(0,15)); $f = DecHex(mt_rand(0,15)); $hexa = $a . $b . $c . $d . $e . $f; return $hexa; } //couleur du texte en fonction de la couleur générée function getContrastColor($color) { return (hexdec($color) > 0xffffff/2) ? '000000' : 'ffffff'; } $color = getColor(); $text_color = getContrastColor($color); echo '<body bgcolor='.$color.'>'; echo '<p style="color:'.$text_color.';">Blabla</p></body>'; ?>
merci mille fois pour le partage.
anne-marie