GD2 L'image ne peut être affichée car elle contient des erreurs

Eléphanteau du PHP | 29 Messages

29 oct. 2007, 21:06

Bonsoir,


J'ai un drôle de bug :
http://www.tokidoki.fr/functions/gd_title.php

Ce script est la copie conforme de l'exemple 1021 trouvé ici :
http://fr2.php.net/manual/en/function.imagettftext.php

Normalement tout est bien installé mais bon : http://www.tokidoki.fr/admin/phpinfo.php

J'ai bien mis la police arial.ttf dans le même dossier.
<?php
// Set the content-type
header("Content-type: image/png");

// Create the image
$im = imagecreatetruecolor(400, 30);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, 399, 29, $white);

// The text to draw
$text = 'Testing...';
// Replace path by your own font path
$font = 'arial.ttf';

// Add some shadow to the text
imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

// Add the text
imagettftext($im, 20, 0, 10, 20, $black, $font, $text);

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);
?> 

Merci !

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

29 oct. 2007, 21:29

Commente la ligne du header() pour éventuellement afficher un message d'erreur.

/!\ Avant de poster se documenter et rechercher.
Qui ne sait pas rendre un service n'a pas le droit d'en demander.
MaBrute

Eléphanteau du PHP | 29 Messages

29 oct. 2007, 21:33

Bonne idée !


Warning: imagettftext() [function.imagettftext]: Could not find/open font in /home/tokidoki/www/functions/gd_title.php on line 10

Warning: imagettftext() [function.imagettftext]: Could not find/open font in /home/tokidoki/www/functions/gd_title.php on line 11
�PNG ��� IHDR����������߇����IDATx���A � �0���?��U����,���;��a�d�aX@�a�d�aX@�a�d�aX@�a�d�aX@�a�d�aX@�a�d�aX@�a�d�aX@��i9��N�����IEND�B`�


arial.ttf est bien en chmod 777.

Eléphanteau du PHP | 29 Messages

29 oct. 2007, 21:35

Bon, étrangement j'ai fait :

Code : Tout sélectionner

$font = './arial.ttf';
Au lieu de :

Code : Tout sélectionner

$font = 'arial.ttf';

Vous avez une explication ?

Eléphant du PHP | 445 Messages

29 oct. 2007, 21:42

Si la police est dans le meme repertoire, alors utilise ./

Et verifie la casse de la police (Arial ou lieu de arial par exemple)

Eléphanteau du PHP | 29 Messages

29 oct. 2007, 21:44

Oui j'ai fait attention, ça fonctionne maintenant.

Merci :)