Changeset 104155 in spip-zone
- Timestamp:
- May 4, 2017, 11:37:40 AM (4 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
_core_/plugins/filtres_images/filtres/couleurs.php
r100447 r104155 50 50 } 51 51 52 // Lire la luminance relative d'une couleur 53 // de 0 à 1 54 // cf. https://fr.wikipedia.org/wiki/Luminance#Luminance_relative 55 // cf. https://bl.ocks.org/Fil/cf03a054826ee5b3013577ecc0b009e6 56 // http://code.spip.net/@couleur_luminance_relative 57 function couleur_luminance_relative($couleur) { 58 $c = _couleur_hex_to_dec($couleur); 59 return (0.2126 * $c['red'] + 0.7152 * $c['green'] + 0.0722 * $c['blue']) / 255; 60 } 52 61 53 62 // http://code.spip.net/@couleur_extreme … … 58 67 // -> la limite est une valeur de 0 a 255, permettant de regler le point limite entre le passage noir ou blanc 59 68 60 $couleurs = _couleur_hex_to_dec($couleur); 61 $red = $couleurs["red"]; 62 $green = $couleurs["green"]; 63 $blue = $couleurs["blue"]; 64 65 66 /* 67 $moyenne = round(($red+$green+$blue)/3); 68 69 if ($moyenne > $limite) $couleur_texte = "ffffff"; 70 else $couleur_texte = "000000"; 71 */ 72 73 include_spip('filtres/images_lib'); 74 $hsl = _couleur_rgb2hsl($red, $green, $blue); 75 76 if ($hsl["l"] > $limite) { 69 if (couleur_luminance_relative($couleur) > $limite) { 77 70 $couleur_texte = "ffffff"; 78 71 } else { … … 100 93 // utile pour ecrire sur fond blanc, 101 94 // mais sans changer quand la couleur est deja foncee 102 $couleurs = _couleur_hex_to_dec($couleur); 103 $red = $couleurs["red"]; 104 $green = $couleurs["green"]; 105 $blue = $couleurs["blue"]; 106 107 $moyenne = round(($red + $green + $blue) / 3); 108 109 if ($moyenne > $seuil) { 95 if (couleur_luminance_relative($couleur) > $seuil / 255) { 110 96 include_spip("inc/filtres_images_mini"); 111 112 97 return couleur_foncer($couleur); 113 98 } else { … … 118 103 // http://code.spip.net/@couleur_eclaircir_si_foncee 119 104 function couleur_eclaircir_si_foncee($couleur, $seuil = 123) { 120 $couleurs = _couleur_hex_to_dec($couleur); 121 $red = $couleurs["red"]; 122 $green = $couleurs["green"]; 123 $blue = $couleurs["blue"]; 124 125 $moyenne = round(($red + $green + $blue) / 3); 126 127 if ($moyenne < $seuil) { 105 if (couleur_luminance_relative($couleur) < $seuil / 255) { 128 106 include_spip("inc/filtres_images_mini"); 129 130 107 return couleur_eclaircir($couleur); 131 108 } else {
Note: See TracChangeset
for help on using the changeset viewer.