J'ai réussi à suivre un tuto pour animer un gif, le seul problème c'est que mon texte ($txt) lui aussi est animé...
Peut-on faire en sorte svp que celui-ci reste statique ?
En gros le images tournent mais le texte lui ne bouge pas, il reste à sa place.
Merci par avance.
Cordialement,
Mon code :
<?php
require('gif.class.php');
$animation = array();
$duree = array();
//define('LARGEUR', 600);
//define('HAUTEUR', 600);
/* * ******************************* * Parametre * ******************************** */
$largeur = 600; /* longueur de l'image */
$hauteur = 600; /* hauteur de l'image */
//$txt = html_entity_decode(strip_tags($_GET['fichier']));
$txt = 'Test';
/* * ******************************* * IMAGE 1 * ******************************** */
$image = imagecreate($largeur, $hauteur);
/* Background */
$background = imagecolorallocate($image, 0, 255, 0);
$image= imagecreatefrompng('2016/1.png'); //Notre joli fond :p
/* Couleur du text */
$couleurTxt = imagecolorallocate($image, 238, 153, 26);
/* texte à mettre dans l'image */
/* Taille du texte */
$font_size = 10;
$font = 'arial.ttf';
/* Hauteur et largeur des caratères */
$largeurCaractere = ImageFontWidth($font_size);
$hauteurCaractere = ImageFontHeight($font_size);
/* Longueur du texte (taille caratère X nombre de caractère) */
$largeurTxt = $largeurCaractere * strlen($txt);
/* Recherche de la position horizontale centrale pour centrer le texte */
$positionCentreHor = ceil(($largeur - $largeurTxt) / 2);
/* Recherche de la position horizontale centrale pour centrer le texte */
//$positionCentreVer = ceil(($hauteur - $hauteurCaractere) / 2);
$positionCentreVer = 420;
/* Ajout du texte au centre de l'image */
$image_string = ImageString($image, $font_size, $positionCentreHor, $positionCentreVer, $txt, $couleurTxt);
ob_start();
imagegif($image);
$animation[] = ob_get_clean();
$duree[] = 200;
imagedestroy($image);
/* * ******************************* * IMAGE 2 * ******************************** */
$image = imagecreate($largeur, $hauteur);
/* Background */
$background = imagecolorallocate($image, 0, 255, 0);
$image= imagecreatefrompng('2016/2.png'); //Notre joli fond :p
/* Couleur du text */
$couleurTxt = imagecolorallocate($image, 238, 153, 26);
/* texte à mettre dans l'image */
$font_size = 10;
$font = 'arial.ttf';
/* Hauteur et largeur des caratères */
$largeurCaractere = ImageFontWidth($font_size);
$hauteurCaractere = ImageFontHeight($font_size);
/* Longueur du texte (taille caratère X nombre de caractère) */
$largeurTxt = $largeurCaractere * strlen($txt);
/* Recherche de la position horizontale centrale pour centrer le texte */
$positionCentreHor = ceil(($largeur - $largeurTxt) / 2);
/* Recherche de la position horizontale centrale pour centrer le texte */
//$positionCentreVer = ceil(($hauteur - $hauteurCaractere) / 2);
$positionCentreVer = 420;
/* Ajout du texte au centre de l'image */
$image_string = ImageString($image, $font_size, $positionCentreHor, $positionCentreVer, $txt, $couleurTxt);
ob_start();
imagegif($image);
$animation[] = ob_get_clean();
$duree[] = 50;
imagedestroy($image);
/* * ******************************* * IMAGE 3 * ******************************** */
$image = imagecreate($largeur, $hauteur);
/* Background */
$background = imagecolorallocate($image, 0, 255, 0);
$image= imagecreatefrompng('2016/3.png'); //Notre joli fond :p
/* Couleur du text */
$couleurTxt = imagecolorallocate($image, 238, 153, 26);
/* texte à mettre dans l'image */
/* Taille du texte */
$font_size = 10;
$font = 'arial.ttf';
/* Hauteur et largeur des caratères */
$largeurCaractere = ImageFontWidth($font_size);
$hauteurCaractere = ImageFontHeight($font_size);
/* Longueur du texte (taille caratère X nombre de caractère) */
$largeurTxt = $largeurCaractere * strlen($txt);
/* Recherche de la position horizontale centrale pour centrer le texte */
$positionCentreHor = ceil(($largeur - $largeurTxt) / 2);
/* Recherche de la position horizontale centrale pour centrer le texte */
//$positionCentreVer = ceil(($hauteur - $hauteurCaractere) / 2);
$positionCentreVer = 420;
/* Ajout du texte au centre de l'image */
$image_string = ImageString($image, $font, $positionCentreHor, $positionCentreVer, $txt, $couleurTxt);
ob_start();
imagegif($image);
$animation[] = ob_get_clean();
$duree[] = 50;
imagedestroy($image);
/* * ******************************* * IMAGE 4 * ******************************** */
$image = imagecreate($largeur, $hauteur);
/* Background */
$background = imagecolorallocate($image, 0, 255, 0);
$image= imagecreatefrompng('2016/4.png'); //Notre joli fond :p
/* Couleur du text */
$couleurTxt = imagecolorallocate($image, 238, 153, 26);
/* texte à mettre dans l'image */
/* Taille du texte */
$font_size = 10;
$font = 'arial.ttf';
/* Hauteur et largeur des caratères */
$largeurCaractere = ImageFontWidth($font_size);
$hauteurCaractere = ImageFontHeight($font_size);
/* Longueur du texte (taille caratère X nombre de caractère) */
$largeurTxt = $largeurCaractere * strlen($txt);
/* Recherche de la position horizontale centrale pour centrer le texte */
$positionCentreHor = ceil(($largeur - $largeurTxt) / 2);
/* Recherche de la position horizontale centrale pour centrer le texte */
//$positionCentreVer = ceil(($hauteur - $hauteurCaractere) / 2);
$positionCentreVer = 420;
/* Ajout du texte au centre de l'image */
$image_string = ImageString($image, $font, $positionCentreHor, $positionCentreVer, $txt, $couleurTxt);
ob_start();
imagegif($image);
$animation[] = ob_get_clean();
$duree[] = 50;
imagedestroy($image);
/* * ******************************* * IMAGE 5 * ******************************** */
$image = imagecreate($largeur, $hauteur);
/* Background */
$background = imagecolorallocate($image, 0, 255, 0);
$image= imagecreatefrompng('2016/1.png'); //Notre joli fond :p
/* Couleur du text */
$couleurTxt = imagecolorallocate($image, 238, 153, 26);
/* texte à mettre dans l'image */
/* Taille du texte */
$font_size = 10;
$font = 'arial.ttf';
/* Hauteur et largeur des caratères */
$largeurCaractere = ImageFontWidth($font_size);
$hauteurCaractere = ImageFontHeight($font_size);
/* Longueur du texte (taille caratère X nombre de caractère) */
$largeurTxt = $largeurCaractere * strlen($txt);
/* Recherche de la position horizontale centrale pour centrer le texte */
$positionCentreHor = ceil(($largeur - $largeurTxt) / 2);
/* Recherche de la position horizontale centrale pour centrer le texte */
//$positionCentreVer = ceil(($hauteur - $hauteurCaractere) / 2);
$positionCentreVer = 420;
/* Ajout du texte au centre de l'image */
$image_string = ImageString($image, $font_size, $positionCentreHor, $positionCentreVer, $txt, $couleurTxt);
ob_start();
imagegif($image);
$animation[] = ob_get_clean();
$duree[] = 300;
imagedestroy($image);
/* * ******************************* * CREATION IMAGE * ******************************** */
$gif = new GIFEncoder($animation, $duree, 0, 2, 0, 0, 0, 'bin');
header ("Content-type: image/gif");
echo $gif->GetAnimation();
?>