texte sur image
le 05/06/2004 à 18:37
bibi
bonjour, en fait j'essaye de mettre du texte sur une image
donc je fai :
$image = "img.jpg";
$taille = "12";
$angle = 0;
$x = $y = 0;
$couleur = "#FFFFFF";
$police = "arial.ttf";
$texte = "bonjour";
imageTTFText($image, $taille, $angle, $x, $y, $couleur, $police, $texte);
et ca me fait comme erreur :
Warning: imagettftext(): supplied argument is not a valid Image resource in c:\program files\easyphp\www\textsurimage.php on line 11
la police et l'image sont bien dans le meme répertoire
j'ai essayé de c/c le script de la doc tout en l'adaptant mé ca marche pa mieux ca me fait pleins de caractères bizarre :s
merci davance lé gens :)
commit suicide
La fonction imageTTFText prend en premier argument un parametre de type ressource image et non le chemin d'une image.
Ce premier argument doit donc etre le resultat d'un imagecreate (ou de ses derives).
le 05/06/2004 à 23:47
bibi
ouais mais avec l'exemple de la doc ca marche pa non plus en fait :/
commit suicide
le 06/06/2004 à 00:07
bibi
ma kestion va peut etre paraitre débile c possible ^^
comment on transforme une image normale en ressource
enfin tu vois ske jveu dire ou pa du tout ?
commit suicide
J'ai deja répondu à cette question :) (imagecreate ou ses dérivés).
Slt
http://www.lephpfacile.com/manuel_php/ref.image.php
J'ai moi aussi un problème avec imagettftext (mais au niveau de la font)
Mon code :
<?php
header("content-type: image/png");
$largeur=600;
$hauteur=60;
// image originale
$fichier_source="./pg_membre/images/zaz.png";
$source=ImageCreateFromPng($fichier_source);
//Création de l'image destination
$im=imagecreate($largeur,$hauteur);
//Définition des couleurs utiliser sur l'img
$marron=ImageColorAllocate($im,204,102,51);
$black=imagecolorallocate($im,0,0,0);
$marron2=imagecolorallocate($im,204,102,50);
//Copy de l'img original $source sur l'img vierge $im
@imagecopymerge($im,$source,0,0,0,0,600,60,100);
//Ecriture du titre sur l'image que l'on vient de créer
$tr=PATH_HTTP."/fonts/comic.ttf";
$font=imageloadfont("$tr");
imagettftext($im,20,0,20,20,$marron2,$font,"titre");
?>
Mes erreurs :
<b>Warning</b>: ImageFontLoad: unable to open file in <b>c:\documents and settings\moogli\bureau\site_26-05-04\pg_membre_traitement.php</b> on line <b>78</b>
<b>Warning</b>: Could not find/open font in <b>c:\documents and settings\moogli\bureau\site_26-05-04\pg_membre_traitement.php</b> on line <b>80</b>
Voila de koi aider bibi et si en plus vous pouviez m'aider aussi se serait top
merci
@+
Il en faut peu pour être heureux !!!!!
Y'a quoi dans PATH_HTTP ?
Sinon, ce n'est pas necessaire d'utiliser imageloadfont pour ecrire avec une police perso.
A moins que ca ne soit voulu, passe directement en argument dans imagettftext le chemin vers ta font.
Mais la, le PATH_HTTP, j'ai peur que ca soit un chemin Web, alors qu'il faut preciser le chemin du systeme de fichier pour chercher la font.
Y a bien une URL dans PATH_HTTP, mais avant j'ai aussi essayé de mettre un chemin partiel du style ./font ou avec le chemin exat depuis la racine mais rien n'a faire.
j'ai essayer imageloadfont() justement parce que imagettftext j'avais déja l'erreur sur la font....
Il en faut peu pour être heureux !!!!!
Il ne faut pas mettre une URL, mais bien un chemin du systeme de fichier du serveur (a priori, tu as deja essayé).
Chez moi ca fonctionne :)
vi g essayé sa :
<?php
imagettftext($im,20,0,20,20,$marron2,"C:\Documents and Settings\Moogli\Bureau\site_26-05-04\fonts\comic.ttf","titre");
?>
sa donne sa :
<b>Warning</b>: Could not find/open font in <b>c:\documents and settings\moogli\bureau\site_26-05-04\pg_membre_traitement.php</b> on line <b>79</b>
J'ai aussi essayé sa :
<?php
imagettftext($im,20,0,20,20,$marron2,"C:/Documents and Settings/Moogli/Bureau/site_26-05-04/fonts/comic.ttf","titre");
?>
et même erreur.
J'ai aussi essayé avec des ./fonts/comic.ttf
ou fonts\comic.ttf
bref j'ai remuer slashes et backslashes dans tout les sens et j'ai toujours le meme problème.
Je me demande si cela ne peut pas etre un problème de config?
Il en faut peu pour être heureux !!!!!