Ho un'immagine con uno sfondo colorato e ho bisogno di generare delle scritte che abbiano un colore diverso dallo sfondo.
Inizialmente utilizzavo uno script che generava colori "opposti": dato un colore in formato $r $b $g, e una "soglia" di distanza $s, lo script è:
Codice PHP:
$s 50;

if (
$r $s$r rand($r+$s255);
elseif (
$r 255-$s$r rand (0$r-$s);
elseif (
rand(0,1)) $r rand(0,$r-$s);
else 
$r rand($r+$s,255);

if (
$g $s$g rand($g+$s255);
elseif (
$g 255-$s$g rand (0$g-$s);
elseif (
rand(0,1)) $g rand(0,$g-$s);
else 
$g rand($g+$s,255);

if (
$b $s$b rand($b+$s255);
elseif (
$b 255-$s$b rand (0$b-$s);
elseif (
rand(0,1)) $b rand(0,$b-$s);
else 
$b rand($b+$s,255); 
Inizialmente sembrava funzionare bene, ma se lo sfondo è un colore primario, cominciano ad esserci problemi!
Ad esempio, se lo sfondo è nero (0, 0, 0) colori come rosso (255, 0, 0), verde (0, 255, 0), giallo (255, 255, 0)... non usciranno mai, perché hanno una coordinata che è zero!

Qualcuno ha qualche idea migliore?