Jean-Francois Ortolo
2008-10-27 08:26:28 UTC
Bonjour
D'après le PHP Manual, la chaîne de caractère $string affichée par
l'instruction:
imagestring($image, $font, $x, $y, $string, $color);
est valable à condition que cette chaine $string soit codée en
"Latin2", c'est-à-dire "ISO-8859-2" si je ne me trompe pas.
Or, la chaine $string dont je dispose, est codée au départ en
"ISO-8859-1", et j'obtiens bien des caractères bizarre vaguement
orientaux, quand il y a un e accent grave ( è ) dans la chaine $string ,
sans conversion par iconv.
Le PHP Manual recommande donc, de convertir $string avec la fonction
iconv(), et un exemple est donné par les Américains qui laissent des
commentaires, avec cette fonction: $text = iconv("ISO-8859-1", "Latin2",
$string);
( Avec un autre jeu de codage en input que "ISO-8859-1" , mais celà
revient au même. )
Or, quand je soumet la variable $string à cette instruction, le texte
en sortie est la chaîne vide...
Même chose avec:
$text = iconv("ISO-8859-1", "ISO-8859-2", $string);
Quel que soit le contenu de $string, la variable $text n'affiche rien
sur l'image, qui par ailleurs s'affiche bien..
J'ajoute, que je donne la valeur 3 à la variable $font lors de
l'appel à imagestring($image, $font, $x, $y, $text, $color);
D'où ma question, peut-être plus générale:
Comment avec imagestring(), afficher du texte codé en "ISO-8859-1"
avec les accents, alors que imagestring() suppose que la chaîne devant
s'afficher, est en "Latin2" ?
Merci beaucoup de vos réponses.
Bien à vous.
Amicalement.
Jean-François Ortolo
D'après le PHP Manual, la chaîne de caractère $string affichée par
l'instruction:
imagestring($image, $font, $x, $y, $string, $color);
est valable à condition que cette chaine $string soit codée en
"Latin2", c'est-à-dire "ISO-8859-2" si je ne me trompe pas.
Or, la chaine $string dont je dispose, est codée au départ en
"ISO-8859-1", et j'obtiens bien des caractères bizarre vaguement
orientaux, quand il y a un e accent grave ( è ) dans la chaine $string ,
sans conversion par iconv.
Le PHP Manual recommande donc, de convertir $string avec la fonction
iconv(), et un exemple est donné par les Américains qui laissent des
commentaires, avec cette fonction: $text = iconv("ISO-8859-1", "Latin2",
$string);
( Avec un autre jeu de codage en input que "ISO-8859-1" , mais celà
revient au même. )
Or, quand je soumet la variable $string à cette instruction, le texte
en sortie est la chaîne vide...
Même chose avec:
$text = iconv("ISO-8859-1", "ISO-8859-2", $string);
Quel que soit le contenu de $string, la variable $text n'affiche rien
sur l'image, qui par ailleurs s'affiche bien..
J'ajoute, que je donne la valeur 3 à la variable $font lors de
l'appel à imagestring($image, $font, $x, $y, $text, $color);
D'où ma question, peut-être plus générale:
Comment avec imagestring(), afficher du texte codé en "ISO-8859-1"
avec les accents, alors que imagestring() suppose que la chaîne devant
s'afficher, est en "Latin2" ?
Merci beaucoup de vos réponses.
Bien à vous.
Amicalement.
Jean-François Ortolo
--
Visitez mon site gratuit donnant des Statistiques,
des Pronostics et des Historiques Graphiques
sur les Courses de Chevaux:
http://www.pronostics-courses.fr/
Visitez mon site gratuit donnant des Statistiques,
des Pronostics et des Historiques Graphiques
sur les Courses de Chevaux:
http://www.pronostics-courses.fr/