SI
0.3*(decimal[rouge]) + 0.59*(decimal[vert]) + 0.11*(decimal[bleu])
EST INFERIEUR OU EGAL A 128
couleur_de_texte = #FFFFFF;
SINON
couleur_de_texte = #000000;
pR = 0.2125;
pG = 0.7154;
pB = 0.0721;
trustno1 a dit:je ne suis pas fort en php.
//------ RGB vers #xxxxxx
function RGBtoHEX()
{
var strTot = "#";
var str = "";
var i;
i = Math.round(this.r * 255); str = i.toString(16); if (str.length == 1) str = "0" + str; strTot += str;
i = Math.round(this.g * 255); str = i.toString(16); if (str.length == 1) str = "0" + str; strTot += str;
i = Math.round(this.b * 255); str = i.toString(16); if (str.length == 1) str = "0" + str; strTot += str;
strTot = strTot.toUpperCase();
return strTot;
}
//------ #xxxxxx vers RGB
function HEXtoRGB(str)
{
var rgb = new RGB(0, 0, 0);
if (str.length != 7)
return rgb;
rgb.r = bound(parseInt(str.substr(1,2), 16) / 255.0);
rgb.g = bound(parseInt(str.substr(3,2), 16) / 255.0);
rgb.b = bound(parseInt(str.substr(5,2), 16) / 255.0);
return rgb;
}
trustno1 a dit:Bonjour à tous
J'ai essayé avec ce code mais ca marche pas
<?
if (0.3*(hexdec(rouge)) + 0.59*(hexdec(vert)) + 0.11*(hexdec(bleu)) <= 128)
{
$couleur = "#FFFFFF";
}
else
{
$couleur = "#000000";
}
echo"<body bgcolor=#ffffff><font color=$couleur>Maison</font>";
?>
le bgcolor est blanc, et le texte (Maison) blanc aussi, donc le code n'a rien changé
<?php
if (0.3*(hexdec(00)) + 0.59*(hexdec(00)) + 0.11*(hexdec(00)) <= 128)
{
$couleur = "#FFFFFF";
}
else
{
$couleur = "#000000";
}
echo"<body bgcolor=#000000><font color='".$couleur."'>Maison</font>";
?>
<?php
//la ligne ci-dessous sert a enlever le #
$couleur_fond =str_replace("#","",$fond);
//les 3 ligne ci dessous servent a séparer le code couleur du fond en 3
$rouge=substr($couleur_fond, 0, 2); // les 2 premieres lettres
$vert=substr($couleur_fond, 2, 2); // les 2 lettres du milieu
$bleu=substr($couleur_fond, 4, 2); // les 2 dernieres lettres
if (0.3*(hexdec($rouge)) + 0.59*(hexdec($vert)) + 0.11*(hexdec($bleu)) <= 128)
{
$couleur = "#FFFFFF";
}
else
{
$couleur = "#000000";
}
echo"<body bgcolor=$fond><font color='".$couleur."'>Maison</font>";
?>
function getTxtCouleur(hex) {
//Le paramètre passé est de la forme #xxxxxx
if((0.2125*parseInt(hex.substr(1,2), 16) + 0.7154*parseInt(hex.substr(3,2), 16) + 0.0721*parseInt(hex.substr(5,2), 16)) <= 128)
return "#FFFFFF";
else
return "#000000";
}
CaYuS a dit:Tu sais pour Adsense, ils ne sont pas allez chercher bien loin...
(...)
Voilà ce n'était pas plus compliqué que ça ..., en espérant n'avoir perdu personne en cours de route...