par
Ez3kiel » 13 janv. 2012, 12:41
Bonjour,
Je requiert un peu d'aide, je suis en train de créer un générateur d'image via un formulaire, formulaire qui envoi basique-ment nom et prenom dans une page traitement.php.
Traitement.php récupère les données, crée une image .png et y intègre nom et prénom, jusque là mon code fonctionne (j'ai testé également l'enregistrement sur ftp et ça marche), mais ensuite je souhaiterais intégrer à cette image un logo.jpg, et c'est là que ça ne fonctionne plus.
Dans ma logique de débutant, je pense que mon code est censé marché, mais dans la pratique ... Hum.
Si vous voyiez le petit défaut de mon code ça m'arrangerait grandement.
Traitement.php
<?php
header('Content-type: image/png');
$image = imagecreate(300, 150); //Crée une image de300 pixels de large et 150 pixels de haut
$orange = imagecolorallocate($image, 255, 128, 0);
$bleu = imagecolorallocate($image, 0, 0, 255);
$bleuclair = imagecolorallocate($image, 156, 227, 254);
$noir = imagecolorallocate($image, 0, 0, 0);
$blanc = imagecolorallocate($image, 255, 255, 255);
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$string = $nom.' '.$prenom;
imagestring($image, 5, 15, 15,$string, $noir);
$source = imagecreatefromjpg('logo.jpg'); // Le logo est la source et $image la destination
// Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
$largeur_source = imagesx($source);
$hauteur_source = imagesy($source);
$largeur_destination = imagesx($image);
$hauteur_destination = imagesy($image);
// On veut placer le logo en bas à droite, on calcule les coordonnées où on doit placer le logo sur la photo
$destination_x = $largeur_destination - $largeur_source;
$destination_y = $hauteur_destination - $hauteur_source;
// On met le logo (source) dans l'image de destination
imagecopymerge($image, $source, $destination_x, $destination_y, 0, 0, $largeur_source, $hauteur_source, 100);
$file = 'final.png';
imagepng($image,$file);
?>
Merci d'avance !
Bonjour,
Je requiert un peu d'aide, je suis en train de créer un générateur d'image via un formulaire, formulaire qui envoi basique-ment nom et prenom dans une page traitement.php.
Traitement.php récupère les données, crée une image .png et y intègre nom et prénom, jusque là mon code fonctionne (j'ai testé également l'enregistrement sur ftp et ça marche), mais ensuite je souhaiterais intégrer à cette image un logo.jpg, et c'est là que ça ne fonctionne plus. :mrgreen:
Dans ma logique de débutant, je pense que mon code est censé marché, mais dans la pratique ... Hum. :non:
Si vous voyiez le petit défaut de mon code ça m'arrangerait grandement.
Traitement.php [php]<?php
header('Content-type: image/png');
$image = imagecreate(300, 150); //Crée une image de300 pixels de large et 150 pixels de haut
$orange = imagecolorallocate($image, 255, 128, 0);
$bleu = imagecolorallocate($image, 0, 0, 255);
$bleuclair = imagecolorallocate($image, 156, 227, 254);
$noir = imagecolorallocate($image, 0, 0, 0);
$blanc = imagecolorallocate($image, 255, 255, 255);
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$string = $nom.' '.$prenom;
imagestring($image, 5, 15, 15,$string, $noir);
$source = imagecreatefromjpg('logo.jpg'); // Le logo est la source et $image la destination
// Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image
$largeur_source = imagesx($source);
$hauteur_source = imagesy($source);
$largeur_destination = imagesx($image);
$hauteur_destination = imagesy($image);
// On veut placer le logo en bas à droite, on calcule les coordonnées où on doit placer le logo sur la photo
$destination_x = $largeur_destination - $largeur_source;
$destination_y = $hauteur_destination - $hauteur_source;
// On met le logo (source) dans l'image de destination
imagecopymerge($image, $source, $destination_x, $destination_y, 0, 0, $largeur_source, $hauteur_source, 100);
$file = 'final.png';
imagepng($image,$file);
?>
[/php]
Merci d'avance !