GD pour les nuls
riecola
Messages postés
22
Statut
Membre
-
ricric Messages postés 34 Statut Membre -
ricric Messages postés 34 Statut Membre -
Bonjour a tous,
Voila je suis obligé de travailler avec du GD, et j'y connais absolument rien... J'ai cherché sur les sites mais je trouve hyper compliqué... (on ne se moque pas)
J'ai bien mis en route le GD sur easy php, je suis sur et certain que c'est activé.
Alors si je suis un code pris sur internet :
Donc si j'appele cette page essai.php, il faut bien que je fasse une autre page essai.html:
Alors quand j'ouvre cette page par le serveur j'ai un carré blanc avec croix rouge!!!! pourquoi? le chemin de mon image est bon alors c'est quoi le bleme?
Merci a tous ceux qui me repondront. Je vous rappelle je suis nul, alors des mots simples s'il vous plait...
Voila je suis obligé de travailler avec du GD, et j'y connais absolument rien... J'ai cherché sur les sites mais je trouve hyper compliqué... (on ne se moque pas)
J'ai bien mis en route le GD sur easy php, je suis sur et certain que c'est activé.
Alors si je suis un code pris sur internet :
<?php
header("Content-type:image/jpeg");
$im=imagecreatefromjpg("anniv1.jpg");
imagejpg($im);
?>
Donc si j'appele cette page essai.php, il faut bien que je fasse une autre page essai.html:
<html> <body> <img src="essai.php"> </body> </html>
Alors quand j'ouvre cette page par le serveur j'ai un carré blanc avec croix rouge!!!! pourquoi? le chemin de mon image est bon alors c'est quoi le bleme?
Merci a tous ceux qui me repondront. Je vous rappelle je suis nul, alors des mots simples s'il vous plait...
A voir également:
- GD pour les nuls
- Tableau croisé dynamique pour les nuls - Guide
- Onedrive pour les nuls - Guide
- Google drive pour les nuls - Guide
- Vpn pour les nuls - Forum Réseau
- Sap pour les nuls pdf gratuit - Forum Programmation
6 réponses
pffffff , c'est toujours après que la solution saute aux yeux... c'est bon j'ai réussi à afficher ce que je voulais.
cependant si vous pouvez me dire comment écrire sur mon image en GD je veux bien!!!
Merci
cependant si vous pouvez me dire comment écrire sur mon image en GD je veux bien!!!
Merci
Ca serait bien de partager ta solution, plutot que de laisser un message disant que tu as trouvé... car moi je galère avec le même probleme, mais avec tout le code dans la meme page!
salut!
Je me rappele plus de ce qui marchait pas mais voila code qui transforme un image jpeg en GD:
Mets bien ton image ds meme dossier que ce fichier.php
En plus si tu veux rajouter du texte dessus voila (dans un nouveau fichier.php)
(les variables proviennent d'un formulaire)
J'ai pas reussi à melanger du texte php et image en gd, il faut gere des sesions ou des cookies parait il. DOnc le texte ici sera en GD (c'est tjs mieux que rien)
Normalement ca marche au pire je peux t'envoyer mon dossier zipé
Je me rappele plus de ce qui marchait pas mais voila code qui transforme un image jpeg en GD:
<?php
header("Content-type:image/jpeg");
$src_im=imagecreatefromjpeg("anniv1.jpg");
$src_w=imagesx($src_im);
$src_h=imagesy($src_im);
$dst_w=floor($src_w*0.5);
$dst_h=floor($src_h*0.5);
$dst_im=imagecreatetruecolor($dst_w,$dst_h);
imagecopyresampled($dst_im,$src_im,0,0,0,0,$dst_w,$dst_h,$src_w,$src_h);
imagejpeg($dst_im);
imagedestroy($dst_im);
imagedestroy($src_im);
?>
Mets bien ton image ds meme dossier que ce fichier.php
En plus si tu veux rajouter du texte dessus voila (dans un nouveau fichier.php)
<?php
$nom_image = $_POST["image"];
$texte = $_POST["texte"];
$var1 = "Bonjour ".$_POST["destinataire"].", ".$_POST["expediteur"]." vous envoie cette carte";
$message = $_POST ["verso"];
header ("Content-type: image/jpeg");
$image = imagecreatefromjpeg($nom_image);
$image_w=imagesx($image);
$image_h=imagesy($image);
$dst_w=floor($image_w*1.5);
$dst_h=floor($image_h*1.5);
function centrage_texte($z,$y)
{
$a = strlen($z);
$b = imagefontwidth($y);
$c = $a*$b;
$d = 759-$c;
$e = $d/2;
return $e;
}
$dst_im=imagecreatetruecolor($dst_w,$dst_h);
imagecopyresampled($dst_im,$image,0,0,0,0,$dst_w,$dst_h,$image_w,$image_h);
$noir = imagecolorallocate($dst_im, 0, 0, 0);
$blanc = imagecolorallocate($dst_im, 255, 255, 255);
$policeTitre = 10;
imageFilledRectangle ($dst_im,240,240,520,280,$blanc);
imagestring($dst_im, $policeTitre,centrage_texte($var1,$policeTitre),5,$var1,$noir);
imagestring($dst_im, 10, 0, 400,$message,$noir);
imagestring($dst_im,$policeTitre,centrage_texte($texte,$policeTitre),250,$texte,$noir);
imagejpeg($dst_im);
?>
<img src="anniversaire.php"/>
(les variables proviennent d'un formulaire)
J'ai pas reussi à melanger du texte php et image en gd, il faut gere des sesions ou des cookies parait il. DOnc le texte ici sera en GD (c'est tjs mieux que rien)
Normalement ca marche au pire je peux t'envoyer mon dossier zipé
"J'ai pas reussi à melanger du texte php et image en gd"
Bonjour
Qu'entends-tu par cette phrase ?
Ton code écris bien du texte sur une image.
C'est quoi cettte histoire de mélange ??
Bonjour
Qu'entends-tu par cette phrase ?
Ton code écris bien du texte sur une image.
C'est quoi cettte histoire de mélange ??
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
SAlut
Quand je dis que je ne reussis pas à mélanger du texte PHP et une image GD c'est que je voulais qu'il y ait affiché "bonjour, voila la prévisualisation de votre carte" en caractère comme sur une page HTML ,et qu'en dessous il y ait l'image en GD puis qu'a nouveau on ait un texte normal type HTML pr le message de la Ecard.
Or si je veux mettre un texte echo en php et que je le met avant le code qui genere l'image GD on a juste l'image, le texte n'apparait pas.
Si je met le texte echo php après le code GD j'ai le texte mais le serveur interprete mon image dans un charabia pas possible.
Mon prof m'a dit que pour faire ce que je voulais il me fallait des sessions ou des cookies (pour enregistrer les variables du formulaires). Comme je ne savais pas faire ca je me suis débrouillée.
Donc le code si dessus marque le texte non pas en caractère normal ms interpreté en GD (c'est pourquoi la qualité des lettres est médiocre).c'est la seule facon que j'ai trouvé pour mettre du texte et une image GD quand on y connait rien.
J'espere que j'ai reussi à etre claire.
Quand je dis que je ne reussis pas à mélanger du texte PHP et une image GD c'est que je voulais qu'il y ait affiché "bonjour, voila la prévisualisation de votre carte" en caractère comme sur une page HTML ,et qu'en dessous il y ait l'image en GD puis qu'a nouveau on ait un texte normal type HTML pr le message de la Ecard.
Or si je veux mettre un texte echo en php et que je le met avant le code qui genere l'image GD on a juste l'image, le texte n'apparait pas.
Si je met le texte echo php après le code GD j'ai le texte mais le serveur interprete mon image dans un charabia pas possible.
Mon prof m'a dit que pour faire ce que je voulais il me fallait des sessions ou des cookies (pour enregistrer les variables du formulaires). Comme je ne savais pas faire ca je me suis débrouillée.
Donc le code si dessus marque le texte non pas en caractère normal ms interpreté en GD (c'est pourquoi la qualité des lettres est médiocre).c'est la seule facon que j'ai trouvé pour mettre du texte et une image GD quand on y connait rien.
J'espere que j'ai reussi à etre claire.
Riecola--> >Merci, j'ai maintenant compris ton problème.
Jeje--> en reprenant le code de Riecola, voici une solution pour afficher, dans une page HTML, une image modifiée en utilisant la bibliothèque GD.
1 Page html avec le formulaire de saisie des champs
******************************************
image
texte
destinataire
expediteur
verso
2 Page html (XXX est à remplacer par les valeurs saisies lors de l'étape précédente)
******************
ICI code HTML à placer avant l'image modifiée<br />
<img src="anniversaire.php?image=XXX&texte=XXX&destinataire=XXX&expediteur=XXX&verso=XXX" />
<br /><br />
ICI Code HTML à placer après l'image modifiée<br />
3 anniversaire.php (script appellé lors du chargement de la page 2)
***************
<?php
function centrage_texte($z,$y) {
$a = strlen($z);
$b = imagefontwidth($y);
$c = $a*$b;
$d = 759-$c;
$e = $d/2;
return $e;
}
$nom_image = $_POST["image"];
$texte = $_POST["texte"];
$var1 = "Bonjour ".$_POST["destinataire"].", ".$_POST["expediteur"]." vous envoie cette carte";
$message = $_POST ["verso"];
header ("Content-type: image/jpeg");
$image = imagecreatefromjpeg($nom_image);
$image_w=imagesx($image);
$image_h=imagesy($image);
$dst_w=floor($image_w*1.5);
$dst_h=floor($image_h*1.5);
$dst_im=imagecreatetruecolor($dst_w,$dst_h);
imagecopyresampled($dst_im,$image,0,0,0,0,$dst_w,$dst_h,$image_w,$image_h);
$noir = imagecolorallocate($dst_im, 0, 0, 0);
$blanc = imagecolorallocate($dst_im, 255, 255, 255);
$policeTitre = 10;
imageFilledRectangle ($dst_im,240,240,520,280,$blanc);
imagestring($dst_im, $policeTitre,centrage_texte($var1,$policeTitre),5,$var1,$noir);
imagestring($dst_im, 10, 0, 400,$message,$noir);
imagestring($dst_im,$policeTitre,centrage_texte($texte,$policeTitre),250,$texte,$noir);
imagejpeg($dst_im);
?>
********************************
Jeje--> en reprenant le code de Riecola, voici une solution pour afficher, dans une page HTML, une image modifiée en utilisant la bibliothèque GD.
1 Page html avec le formulaire de saisie des champs
******************************************
image
texte
destinataire
expediteur
verso
2 Page html (XXX est à remplacer par les valeurs saisies lors de l'étape précédente)
******************
ICI code HTML à placer avant l'image modifiée<br />
<img src="anniversaire.php?image=XXX&texte=XXX&destinataire=XXX&expediteur=XXX&verso=XXX" />
<br /><br />
ICI Code HTML à placer après l'image modifiée<br />
3 anniversaire.php (script appellé lors du chargement de la page 2)
***************
<?php
function centrage_texte($z,$y) {
$a = strlen($z);
$b = imagefontwidth($y);
$c = $a*$b;
$d = 759-$c;
$e = $d/2;
return $e;
}
$nom_image = $_POST["image"];
$texte = $_POST["texte"];
$var1 = "Bonjour ".$_POST["destinataire"].", ".$_POST["expediteur"]." vous envoie cette carte";
$message = $_POST ["verso"];
header ("Content-type: image/jpeg");
$image = imagecreatefromjpeg($nom_image);
$image_w=imagesx($image);
$image_h=imagesy($image);
$dst_w=floor($image_w*1.5);
$dst_h=floor($image_h*1.5);
$dst_im=imagecreatetruecolor($dst_w,$dst_h);
imagecopyresampled($dst_im,$image,0,0,0,0,$dst_w,$dst_h,$image_w,$image_h);
$noir = imagecolorallocate($dst_im, 0, 0, 0);
$blanc = imagecolorallocate($dst_im, 255, 255, 255);
$policeTitre = 10;
imageFilledRectangle ($dst_im,240,240,520,280,$blanc);
imagestring($dst_im, $policeTitre,centrage_texte($var1,$policeTitre),5,$var1,$noir);
imagestring($dst_im, 10, 0, 400,$message,$noir);
imagestring($dst_im,$policeTitre,centrage_texte($texte,$policeTitre),250,$texte,$noir);
imagejpeg($dst_im);
?>
********************************