OVH Cloud OVH Cloud

php image et carracteres accentuer

1 réponse
Avatar
al
Bonjour, lorsque je veus affiché des carractères accentués dans une image
php (jpeg) ils affichent d'autres caractères.
Par exemple:
à se change en r

ê se change en e

et ainsi de suite. Sur mon site je dispose de la gd-jpeg v1.

Comment puis-je y remédier simplement? Par exemple en tapant un autre
carractère qui me donnerais celui souhaité?

merci

1 réponse

Avatar
Thomas Harding
Le 13-05-2006, al a écrit :
Bonjour, lorsque je veus affiché des carractères accentués dans une image
php (jpeg) ils affichent d'autres caractères.
Par exemple:
à se change en r

ê se change en e

et ainsi de suite. Sur mon site je dispose de la gd-jpeg v1.

Comment puis-je y remédier simplement? Par exemple en tapant un autre
carractère qui me donnerais celui souhaité?


##########
$string = substr($_REQUEST['string'],0,50);

$im = @ImageCreateFromPng ('bouton.png')
or die ("Cannot Initialize new GD image stream");
$col = ImageColorAllocate ($im, 0, 0, 0);
imageColorTransparent($im,$col);

$imagesize = getImageSize('bouton.png');
$imagewidth = $imagesize[0];
$imageheight = $imagesize[1];

// note: 000 est pris par le transparent
$black = ImageColorAllocate ($im, 1, 1, 1);
$white = ImageColorAllocate ($im,255,255,255);


// note: $string est en utf-8, et on veut de l'iso-8859-1
$string = recode('utf-8..iso-8859-1',$string);

$font=ImagePsLoadFont("URWGothicL-Demi.pfb");
imagepsencodefont ($font,'latin1.enc');

$size = ImagePSBbox($string,$font,96);
$h = ($imagewidth - $size[2]) / 2;
$v = ($imageheight + $size[3]) / 2;

ImagePsText($im, $string,$font, 96, $black, $white, $h, $v);
ImagePsFreeFont($font);
header("Content-Type: image/png");

$bouton = ImageCreate (150,50);
ImageCopyResampled
($bouton,$im,0,0,0,0,150,50,$imagewidth,$imageheight);
ImagePng ($bouton);


###########

URWGothicL-Demi.pfb est une description de fonte PostScript,
latin1.enc est obtenu par un Ogonkify du fichier en question.


Je peux te les envoyer si tu me le demandes par mail.

--
Thomas Harding