Imagestring en PHP
bob26
-
bob26 -
bob26 -
Bonjour,
je ne sais pas si qqun pourra me répondre sur le code PHP suivant qui affiche bien l'image carte_drome_villes.jpg
mais qui bloque sur la fonction imagestring
en renvoyant l'erreur suivante " Warning: imagestring() expects parameter 1 to be resource, string given in ...."
$Wpoint = 5 ;
$Hpoint = 5 ;
$Nocom = 15 ;
$Nomcom = "ARTHEMONAY" ;
$Xcom = 162 ;
$Ycom = 120 ;
$Left = 700 ;
$Top = 20 ;
$Width = 400 ;
$Height = 600 ;
$Xpoint = $Left + $Xcom;
$Ypoint = $Top + $Ycom ;
$carte = 'carte_drome_villes.jpg';
ECHO '<IMG STYLE="position:absolute; TOP: ' . $Top . 'px; Left:'. $Left. 'px ; WIDTH: '. $Width .' px; HEIGHT: '. $Height.' px; border:3px solid;" src="' . $carte . '"/>';
$ima = imagecreatetruecolor(120,20)
or die('Impossible de crée un flux d\'image GD');
$text_color = imagecolorallocate ($ima, 70, 70, 70);
imagestring ($carte, 3, 200, 140, $Nomcom, $text_color);
je ne sais pas si qqun pourra me répondre sur le code PHP suivant qui affiche bien l'image carte_drome_villes.jpg
mais qui bloque sur la fonction imagestring
en renvoyant l'erreur suivante " Warning: imagestring() expects parameter 1 to be resource, string given in ...."
$Wpoint = 5 ;
$Hpoint = 5 ;
$Nocom = 15 ;
$Nomcom = "ARTHEMONAY" ;
$Xcom = 162 ;
$Ycom = 120 ;
$Left = 700 ;
$Top = 20 ;
$Width = 400 ;
$Height = 600 ;
$Xpoint = $Left + $Xcom;
$Ypoint = $Top + $Ycom ;
$carte = 'carte_drome_villes.jpg';
ECHO '<IMG STYLE="position:absolute; TOP: ' . $Top . 'px; Left:'. $Left. 'px ; WIDTH: '. $Width .' px; HEIGHT: '. $Height.' px; border:3px solid;" src="' . $carte . '"/>';
$ima = imagecreatetruecolor(120,20)
or die('Impossible de crée un flux d\'image GD');
$text_color = imagecolorallocate ($ima, 70, 70, 70);
imagestring ($carte, 3, 200, 140, $Nomcom, $text_color);
A voir également:
- Imagestring en PHP
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
- Retour a la ligne php - Forum Webmastering
- Alert php - Forum PHP
- Retour a la ligne php ✓ - Forum PHP
15 réponses
Bonjour,
Le premier paramètre de imagestring est la ressource de l'image donc $ima et nom pas le nom du fichier que vous voulez créer
Cordialement
Le premier paramètre de imagestring est la ressource de l'image donc $ima et nom pas le nom du fichier que vous voulez créer
$ima = imagecreatetruecolor(120,20) or die('Impossible de crée un flux d\'image GD'); $text_color = imagecolorallocate ($ima, 70, 70, 70); imagestring ($ima, 3, 200, 140, $Nomcom, $text_color);
Cordialement
re
merci de la réponse rapide
maintenant il n'y a plus d'erreur .... l'image "carte_drome_villes.jpg" s'affiche bien
mais pas la chaine $Nomcom
merci de la réponse rapide
maintenant il n'y a plus d'erreur .... l'image "carte_drome_villes.jpg" s'affiche bien
mais pas la chaine $Nomcom
Votre image fait 120x120 pixels
Vous affichez le texte en X=200 et Y=140
Donc pas dans l'image
essayez
imagestring ($ima, 3, 20, 14, $Nomcom, $text_color);
Ca devrait afficher quelque chose
Vous affichez le texte en X=200 et Y=140
Donc pas dans l'image
essayez
imagestring ($ima, 3, 20, 14, $Nomcom, $text_color);
Ca devrait afficher quelque chose
non ça ne change rien
l'image "carte_drome_villes.jpg" fait 400 X 600 px
$ima fait 120 X 20
et tjrs pas d'affichage de la chaine $Nomcom
l'image "carte_drome_villes.jpg" fait 400 X 600 px
$ima fait 120 X 20
et tjrs pas d'affichage de la chaine $Nomcom
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mais je suis débutant en php donc un oubli ?
l'image ""carte_drome_villes.jpg" s'affiche correctement
et je voudrais afficher par dessus la chaine $Nomcom a une position bien précise
est ce la bonne méthode ?
l'image ""carte_drome_villes.jpg" s'affiche correctement
et je voudrais afficher par dessus la chaine $Nomcom a une position bien précise
est ce la bonne méthode ?
Non...
L'image sur laquelle vous dessinez c'est $ima, pas une autre
Si vous voulez dessiner sur votre fichier "carte_drome_villes.jpg"
il va falloir faire ceci
$img = resource imagecreatefromjpeg ("carte_drome_villes.jpg");
$text_color = imagecolorallocate ($img, 70, 70, 70);
imagestring ($img, 3, 200, 140, $Nomcom, $text_color);
imagejpeg($img);
on ne travaille plus sur $ima
L'image sur laquelle vous dessinez c'est $ima, pas une autre
Si vous voulez dessiner sur votre fichier "carte_drome_villes.jpg"
il va falloir faire ceci
$img = resource imagecreatefromjpeg ("carte_drome_villes.jpg");
$text_color = imagecolorallocate ($img, 70, 70, 70);
imagestring ($img, 3, 200, 140, $Nomcom, $text_color);
imagejpeg($img);
on ne travaille plus sur $ima
Oui il faut préciser le mime type dans un header auparavant
header("Content-type: image/png");
sans vouloir abuser, ce serait bien que vous regardiez un peu avant ici https://www.php.net/manual/fr/ref.image.php
header("Content-type: image/png");
sans vouloir abuser, ce serait bien que vous regardiez un peu avant ici https://www.php.net/manual/fr/ref.image.php
non tu n'abuses pas
mais même si je suis débutant en programmation PHP .... je ne suis pas un "novice" quand même
et je te rassure ... avant de poster ... je suis allé à la pêche aux infos
et si je suis là ... c'est que je seche !!!
mais c'est vrai que j'oublie certainement quelque chose d'évident pour toi
donc comme tu veux !!!
mais même si je suis débutant en programmation PHP .... je ne suis pas un "novice" quand même
et je te rassure ... avant de poster ... je suis allé à la pêche aux infos
et si je suis là ... c'est que je seche !!!
mais c'est vrai que j'oublie certainement quelque chose d'évident pour toi
donc comme tu veux !!!
Ce code là fonctionne à condition d'avoir une image carte_drome_villes.jpg sur le même répertoire que le fichier PHP
<?php
header("Content-type: image/jpg");
$img = imagecreatefromjpeg ("carte_drome_villes.jpg");
$text_color = imagecolorallocate ($img, 70, 70, 70);
imagestring ($img, 3, 200, 140, 'texte', $text_color);
imagejpeg($img);
?>
<?php
header("Content-type: image/jpg");
$img = imagecreatefromjpeg ("carte_drome_villes.jpg");
$text_color = imagecolorallocate ($img, 70, 70, 70);
imagestring ($img, 3, 200, 140, 'texte', $text_color);
imagejpeg($img);
?>
OK
grand merci
ça marche
une autre question (sans vouloir abuser !! )
à partir d'une carte mappée je voudrais que chaque zone de la carte amene vers un même lien mais avec une variable différente
quelle est la meilleure solution ?
grand merci
ça marche
une autre question (sans vouloir abuser !! )
à partir d'une carte mappée je voudrais que chaque zone de la carte amene vers un même lien mais avec une variable différente
quelle est la meilleure solution ?
Bonjour,
La solution la plus simple c'est de passer une variable en GET dans l'URL
genre http://..../carte.php?zone=10
Cordialement
La solution la plus simple c'est de passer une variable en GET dans l'URL
genre http://..../carte.php?zone=10
Cordialement
Bonjour
et désolé pour la question précédente !!! j'avais pas compris
mais Merci pour la réponse ... ça fonctionne tres bien
Par contre, comme j'ai plusieurs cartes mappées différentes + un nombre de zones différentes pour chaque carte + des coordonnées différentes (évidemment) + une variable à transmettre différente ... j'ai mis toutes ces valeurs en variables (récupérées dans un BDD Mysql) et je voulais faire avec une boucle FOR NEXT la déclaration des AREA SHAPE .... et apparemment ça ne fonctionne pas .... seule la dernière zone de la boucle est prise en compte !
Est ce que ce n'est pas possible ? ou est ce que j'oublie qq chose ?
et désolé pour la question précédente !!! j'avais pas compris
mais Merci pour la réponse ... ça fonctionne tres bien
Par contre, comme j'ai plusieurs cartes mappées différentes + un nombre de zones différentes pour chaque carte + des coordonnées différentes (évidemment) + une variable à transmettre différente ... j'ai mis toutes ces valeurs en variables (récupérées dans un BDD Mysql) et je voulais faire avec une boucle FOR NEXT la déclaration des AREA SHAPE .... et apparemment ça ne fonctionne pas .... seule la dernière zone de la boucle est prise en compte !
Est ce que ce n'est pas possible ? ou est ce que j'oublie qq chose ?