gros-titre.php

 <?
 
 function gros_titre($image, $coul_fond_image, $coul_text, $coul_fond_text,
$haut_X, $haut_Y, $bas_X, $bas_Y, $text, $angle_text, $taille_police_text, $police_text)
 {
 // === CREATION D'UN GROS TITRE AVEC REMPLISSAGE DU CREUX DES LETTRES
 // === AUTEUR : Thierry MOSCATO
 // === CREATION: 25/08/2003
 // === MAIL : tmosth@aol.com
 // === POLICE TRUE TYPE (TTF) - vous pouvez trouver des polices TTF à télécharger sur internet
 // par exemple sur http://perso.wanadoo.fr/dephitro/telechar.htm
 
 // === ça ne marche que si l'angle est à 0
 // === ça ne marche que si la police est supérieure à 27
 if($taille_police_text < 28) $taille_police_text = 28;
 if($angle_text > 0) $angle_text = 0;
 
 // === remplissage fond de l'image qui contiendra le texte
 imagefill($image, $haut_X, $haut_Y, $coul_fond_image);
 
 // === repérage des coordonnées de la boite qui encadre la police de caractère et récupération d'un tableau depoints ($box)
 $box = imagettfbbox($taille_police_text, $angle_text, $police_text, $text);
 
 for($index = 0; $index < count($box); $index +=2)
 {
  $box[$index] +=$haut_X ;
 
  $box[$index+1] +=$haut_Y;
 }
 
 // === on dessine un polygone autour du texte avec les coordonnées stockées dans le tableau $box
 imagefilledpolygon($image, $box, count($box)/2, $coul_fond_text);
 
 
 // === on dessine le texte True Type === attention: la police ttf employée doit se trouver dans votre répertoire, sinon, indiquer son chemin complet
 imagettftext($image, $taille_police_text, $angle_text, $haut_X , $haut_Y , $coul_text, $police_text, $text);
 
 
 // === nouveau remplissage fond de l'image qui contiendra le texte pour remplir les intérieurs des lettres
 imagefill($image, $haut_X, $haut_Y, $coul_fond_image);
 
 
 header("Content-type: image/jpeg");
 imagejpeg($image);
 }
 
 
 
 // ======================= un exemple pour tester cette fonction ================
 $text = " "."PICOLETO et PICOLETA"; // laisser impérativement les 2 espaces en début
 $angle_text = 0; // ça ne marche que si l'angle est à 0
 $taille_police_text = 48;// ça ne marche que si la police est supérieure à 27 mais amusez-vous avec des polices énormes, style 550 par ex.
 $police_text = "Sophie.ttf";
 $haut_X = 0;
 $haut_Y = $taille_police_text;
 $bas_X = 0;
 $bas_Y = 0;
 
 // === déclaration de l'image
 $image = imagecreate((strlen($text) *
(($taille_police_text/2)+($taille_police_text/4)) + $taille_police_text) , $haut_Y +
($taille_police_text/14));
 
 
 // === on fixe les couleurs
 $coul_fond_image = imagecolorallocate($image, 150, 50, 250);
 $coul_text = imagecolorallocate($image, 0, 0, 0);
 $coul_fond_text = imagecolorallocate($image, 254, 235, 50);
 
 // === on appelle la fonction de dessin du logo texte
 gros_titre($image, $coul_fond_image, $coul_text, $coul_fond_text, $haut_X,
$haut_Y, $bas_X, $bas_Y, $text, $angle_text, $taille_police_text, $police_text);
 
 ?> 
 
info/gros-titre.txt · Dernière modification: 2008/11/11 11:37 (modification externe)
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki