Salut a tous,
Je me casse la tête en ce moment sur ce petit bout de code tres simpliste normalement :
Mais helas je n'ai pas le résultat escompté, à savoir qu'il écrive du texte sur ma photo.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 <?php header("Content-type: image/png"); //on envoie les infos au navigateur /* ligne à modifier selon votre installation */ $file = $_SERVER['DOCUMENT_ROOT'].'/photo.jpg'; $image = imagecreatefromjpeg($file); //ouverture de l'image jpeg $color = "BEDFFE"; $rouge = hexdec(substr($color,0,2)); //conversion du canal rouge $vert = hexdec(substr($color,2,4)); //conversion du canal vert $bleu = hexdec(substr($color,4,6)); //conversion du canal bleu /* on créé la couleur et on l'attribue à une variable pour ne pas la perdre */ $couleur = imagecolorallocate($image,$rouge,$vert,$bleu); putenv('GDFONTPATH=' . realpath('.')); //ligne obligatoire ! /*imagettftext($image, $size, $angle, $x, $y, $couleur, $font_filename, $text);*/ imagettftext($image, 14, 45, 10, 190, $couleur, 'Vivaldii.TTF', 'Voici un texte !'); imagepng($image); //renvoie une image sous format png imagedestroy($image); //détruit l'image, libérant ainsi de la mémoire ?>
Pourquoi ? Et bien je ne trouve pas.
Pour tester cela : http://membres.lycos.fr/uncorrect2/index.php
J'ai meme essayé plus simple avec ce code ci :
Et la pas de souci....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 <?php header("Content-type: image/png"); //la ligne qui change tout ! /* ligne à modifier selon votre installation */ $file = $_SERVER['DOCUMENT_ROOT'].'/photo.jpg'; $image = imagecreatefromjpeg($file); //ouverture de l'image jpeg $color = "BEDFFE"; $rouge = hexdec(substr($color,0,2)); //conversion du canal rouge $vert = hexdec(substr($color,2,4)); //conversion du canal vert $bleu = hexdec(substr($color,4,6)); //conversion du canal bleu /* on créé la couleur et on l'attribue à une variable pour ne pas la perdre */ $couleur = imagecolorallocate($image,$rouge,$vert,$bleu); imagestring($image, 3, 65, 10, "horizontal", $couleur); //on écrit horizontalement imagestringup($image, 3, 5, 180, "vertical", $couleur); //on écrit verticalement imagepng($image); //renvoie une image sous format png imagedestroy($image); //détruit l'image, libérant ainsi de la mémoire ?>
Résultat ici : http://membres.lycos.fr/uncorrect2/index2.php
Quelqu'un aurait il plus de lumière que moi pour resoudre ce petit ennui ?
Merci d'avance ;-)
Partager