journée debug php :pb avec une fonction graphique: - Programmation
Marsh Posté le 23-08-2001 à 11:55:58
il te manquerait pas un / avant le dossier fonts
ImageTTFtext($dst_img,9.5,0,$x,$y,$colorblack,"/Fonts/COUR.TTF",$lignes);
!!!!
Marsh Posté le 23-08-2001 à 12:00:38
je viens de le rajouter mais rien n'y fait toujours le meme message d'erreur......
Marsh Posté le 23-08-2001 à 12:03:18
en fait je me demande si je dispose bien de la fonction??
si ce n'etait pas le cas alors j'aurais un autre message d'erreur non??
Marsh Posté le 23-08-2001 à 12:10:28
la fonction est forcément là mais requiert les bibliothèques GD et FREETYPE à mon avis il te manque la seconde.
; à retirer devant dans php.ini ou chargement dynamique dans le script.
Marsh Posté le 23-08-2001 à 12:16:38
peut tu etres plus precis!!
j'ai cherché le freetype dans le php.ini et j'ai rien trouvé...
par contre la librairie gd elle est bien activé...le chemin aussi...
j'ai fait des tests à la gomme dessiner des carrés etc marche tres bien...
peut tu m'expliquer ou me donner une adresse sur la façon d'activer le police truetype dans php.ini , ou alors de façon dynamique...
merci
Marsh Posté le 23-08-2001 à 12:18:12
Moi je table plutôt sur la case sensitive!
Renomme tes fichiers et répertoires en minuscule et essaye!
Marsh Posté le 23-08-2001 à 12:22:47
je viens de renomer le point ttf ainsi que le repertoire l'hebergeant mais helas cela ne change rien...toujours la meme erreur
Marsh Posté le 23-08-2001 à 12:34:02
sur nexen.net y'a ça en dernière ligne de la doc pour imagettftext :
....
imagettftext() requiert les bibliothèques GD ainsi que FreeType.
..
http://dev.nexen.net/docs/php/anno [...] tftext.php
vas voir car freetype est un aussi un lien.
Marsh Posté le 23-08-2001 à 13:10:07
essaye ça pour voir:
<?
Header("Content-type: image/jpeg" );
$x=400;
$y=300;
$data=array (3, 1, 7, 2, 5, 4, 6);
$im = imagecreate($x,$y);
$black = ImageColorAllocate($im, 0,0,0);
$blue = ImageColorAllocate($im, 0,36,135);
$white = ImageColorAllocate($im, 255,255,255);
ImageFilledRectangle($im,0,0,$x,$y,$white);
imageline($im,0,50,$x,50,$black);
imageline($im,$x-50,0,$x-50,$y,$black);
ImageTTFText($im, 12, 45,$x-40,40, $black, "comic.ttf","exemple" );
for($i=0;$i<sizeof($data);$i++)
{
ImageFilledRectangle($im,$i*50+15,51,$i*50+40,51+$data[$i]*30,$blue);
}
ImageJpeg($im);
?>
C'est un exemple qui marche, on verra si ça marche chez toi.
(Met le fichier comic.ttf dans le même répertoire sinon...)
Marsh Posté le 23-08-2001 à 15:04:36
desolé pour mes reponses longues, on à des coupures de reseau...:gun:
j'ai essayé le fichier de shinji qui ne marche pas avec imagettftext, si je la met en commentaire j'ai des barres verticales bleues...
Par contre j'ai plus de message sur le fait qu'il ne trouve pas la font, mais en guise d'image j'ai un carré blanc avec une croix rouge dessus...
vous y comprenait quelque chose
Marsh Posté le 23-08-2001 à 15:09:25
la doc concernant les free type c'est assez complexe je ne sais pas compiler et veux pas encore me lancer sur le noyau php...
j'arrive deja pas à faire tourner des trucs classic alors.......
C'est bizzare parceque à la maison j'ai ecrit mon appli graphique et en copiant collant les fichiers ici ça foire...
pourant dans les deux cas j'utilise php 4.06 et suis sous 98se avec pws4...
Marsh Posté le 23-08-2001 à 15:32:03
Essaye avec php 4.0.5 j'ai déjà trouvé un beug dans la 4.0.6 à propos de la fonction imagecopyresized(). En fait ça vient pas de PHP mais de la librairie GD : la version 4.0.5 de php est compilée avec la version 1.X de la librairie GD et la version 4.0.6 de php est compilée avec une version bétâ de GD 2.0 du coup il a des beugs...c'est les mecs de php.net qui m'ont dit ça après leur avoir signalé ce beug!Peut être ton prob est un autre beug!
Je vais essayer voir avec la version 4.0.6 j'en ai pour 2sec!
Marsh Posté le 23-08-2001 à 15:36:15
ouais, je confirme, ça marche avec php4.0.5 et pas avec php4.0.6!!!!
Plus qu'a faire come moi et utiliser la version 4.0.5
@+
Marsh Posté le 23-08-2001 à 15:41:34
ouais super au moins je vais arreter de me prendre la teuté...
Par contre j'utilise un imagecopymerge et imagecopy....est ce que ça va etre dispo dans la version d'avant???
Marsh Posté le 23-08-2001 à 15:43:53
au fait pour de-installer php je degage le repertoire php contenant le extensions, le php.ini et LA clef dans la base c'est tout
Marsh Posté le 23-08-2001 à 15:44:35
finalement à la maison je dois avoir le 4.05 alors, vu que ça taourne
Marsh Posté le 23-08-2001 à 15:55:21
de www.php.net:
ImageCopyMerge (PHP 4 >= 4.0.1) donc oui!
Moi j'ai les 2 versions d'installé sur le pc(4.0.5 et 4.0.6) c'est pour ça que j'ai pu tester! Chacune dans un répertoire différent! La version que je souhaite utiliser dans le répertoire c:\php(dépend de ta config de php.ini et httpd.conf) si je veux utiliser php4.0.6, j'arrête apache s'il est lancé puis je renome le c:\php en c:\php4.0.5 et le c:\4.0.6 en c:\php, je relance apache et j'utilise php4.0.6!
Voilà!
@+
Marsh Posté le 23-08-2001 à 11:05:49
voici mon code:
ImageTTFtext($dst_img,9.5,0,$x,$y,$colorblack,"Fonts/COUR.TTF",$lignes);
j'ai donc copié coller le repertoire fonts de windows dans mon appli, et donc j'appel le cour.ttf mais j'ai une erruer...du type
Warning: Could not find/open font in C:\Inetpub\wwwroot\grapics\jpg.php on line 28
c'est encore un warnig...mais la mon image ne s'affiche plus...
des idées...