Soyez le premier à donner votre avis sur cette source.
Vue 19 049 fois - Téléchargée 615 fois
<?php // Création de l'image $fichierImage = imagecreatetruecolor(350, 400) or die("L'image n'a pas été générée ! Désolé"); // Texte à afficher $policeTitre = 4; // La plus grande police $police = 2; // La plus petite police // Fonction pour déterminer le centrage de la chaine de caractères (elle prend comme paramètre : la chaine et la police d'écriture function centrage_texte($z,$y) { // Je calcule le nombre de caractères dans la chaine $a = strlen($z); // Je calcule la taille d'un caractère par rapport à la taille de la police $b = imagefontwidth($y); // Je calcule la taille de ma chaine de caractères $c = $a*$b; // Je calcule combien il me reste de caractères/espace sur les côtés pour centrer mon texte $d = 350-$c; // Je recherche l'emplacement où débutera ma chaine de caractères $e = $d/2; // La chaine commencera ... à cet emplacement return $e; } // Couleurs $couleurFond = imagecolorallocate($fichierImage,255,0,0); // C'est du rouge ! $couleurTexte = imagecolorallocate($fichierImage,0,0,0 ); // C'est du noir ! // Création d'un rectangle imagefilledrectangle($fichierImage, 0, 0,350,400,$couleurFond); // Textes à centrer $texte1 = "TITRE"; $texte2 = "Je suis un texte centré"; // Insertion des textes + utilisation de la fonction pour centrer imagestring($fichierImage,$policeTitre,centrage_texte($texte1,$policeTitre),10,$texte1,$couleurTexte); imagestring($fichierImage,$police,centrage_texte($texte2,$police),100,$texte2,$couleurTexte); // Type de l'image header("Content-type: image/jpeg"); // Expédition de l'image au navigateur imagejpeg($fichierImage); // Destruction de l'image imagedestroy($fichierImage); /* Les commentaires ont été mis à jour + ajout de l'utilisation de la fonction die() de PHP */ ?>
10 mars 2007 à 09:04
Pour ma part merci beaucoup pour cette source, j'ai utilisé la fonction pour aligner mon texte à droite
19 déc. 2006 à 10:52
essaye de nous centrer un Arial
en faisant des petits tests avec "iiiiiiiiii" et "mmmmmmmmmm" (10 caractères à chaque fois et pourtant bien différent en largeur. Donc impossible à centrer avec ton programme)
21 févr. 2006 à 18:03
le or die est seulement pour faire planter ton script si GD n'est pas installé... plutôt que de sortir d'autres sortes de warning...
Mais bon ce n'est pas bien grave
Moi par exemple, dans mon installateur (je prépare un prog open source)
Je fais une vérification si gd existe mais après, je ne la fais plus lors de l'exécution.
Si je copiais un code de mon programme ici, il n'y aurait pas de or die... Donc c'est correct si tu ne le mets pas, mais c'est correct de le mentionner aux autres.
21 févr. 2006 à 17:44
Je vais vous répondre ...
1) Pour les commentaires, j'en ai mis pour ceux qui prendront ce script pour qu'ils comprennent comment j'ai programmé (j'enlève les commentaires lorsque le script est prêt à être utilisé!). Quand j'ai commencé le PHP, je trouvais des scripts mais il manquait des commentaires ou de la documentation en rapport (je prends le temps de commenter mes scripts pour que des débutants puissent comprendre : "on a tous été un débutant, un jour!")
2) En ce qui concerne la fonction die() de PHP, vous allez être étonnés mais ce script fonctionne sans ... !!
3) Pour la qualité de mes commentaires, ce script fait parti d'un produit que je développe pour mon entreprise, il contient des commentaires pour les autres développeurs ("// C'est moi la plus grande police ! Nananère !! " et "// Cherche pas à comprendre ! Moi j'ai compris ! Parce ce que je suis trop fort !! Capiche!!
" >> mon chef aime bien ce genre de commentaires et il en ajoute lui aussi : on communique entre nous par les commentaires!)
Cordialement,
Zeo
20 févr. 2006 à 01:45
Moi des commentaires de la sorte j'appelle ca des easter egg de commentaire ;) par contre, il ne faut pas en abuser...
Ce qui serait bien, serait une fonction qui prend en paramètre l'image et qu'elle utiliser imagesx() plutôt que de hardcoder 350 comme tu le fais.
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.