IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[GD] generation d'image couleur du texte


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 71
    Points : 40
    Points
    40
    Par défaut [GD] generation d'image couleur du texte
    Bonjour,
    j'aimerai générer plusieurs images à la volée.
    En fait j'ai une image de fond et j'aimerai y intégrer un texte (qui change à chaque fois).
    pour chaque texte correspond 3 images de fonds.

    Donc, si j'ai 5 textes je génère 15 images.
    Pour cela, j'ai utilisé une boucle.

    Grâce à cela, j'arrive à générer mes images.
    J'arrive également à régler la position du texte.

    Par contre je n'arrive pas à définir la couleur du texte.
    Pourtant j'utilise la fonction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    imagecolorallocate($image, "255", "255", "255");
    Les couleurs du texte de mes images sont différentes pour chaque image alors qu'elles devraient être toutes blanches...Pour info, je ne sais pas si ça a de l'importance, mais mes images sont noires...

    Quelqu'un peut m'aider?Merci!!

  2. #2
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 022
    Points : 2 273
    Points
    2 273
    Par défaut
    Salut,
    on peut voir ton code ?
    Vive les roues en pierre

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 71
    Points : 40
    Points
    40
    Par défaut
    Fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    function generer($image, $fonte, $texte,  $fichier) {
     
    		$image= imagecreatefrompng($image);
     
    		$bb=imageftbbox(FONT_SIZE, 0, $fonte, $texte);
    		$dx= abs($bb[4]-$bb[0]);
     
    		$couleur = imagecolorexact($image, "255", "255", "255");
     
     
    		if($dx>MAX_X) {
    			list($texte1, $texte2)= couper($texte);
    			$bb1=imageftbbox(FONT_SIZE, 0, $fonte, $texte1);
    			$bb2=imageftbbox(FONT_SIZE, 0, $fonte, $texte2);
    			$dx1= abs($bb1[4]-$bb1[0]);
    			$dx2= abs($bb2[4]-$bb2[0]);
    			$x1=X0-0.5*$dx1;
    			$x2=X0-0.5*$dx2;
    			imagefttext($image, FONT_SIZE, 0, $x1, Y1, $couleur, $fonte, $texte1);
    			imagefttext($image, FONT_SIZE, 0, $x2, Y2, $couleur, $fonte, $texte2);
    		} else {
    			$x=X0-0.5*$dx;
    			imagefttext($image, FONT_SIZE, 0, $x, Y0, $couleur, $fonte, $texte);
    		}
    		imagepng($image, $fichier);
    		//imagedestroy($image);
    }
    Appel a la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    generer("$lienimage/bt_a_off.png", "$RSCDIR/comic.ttf",
    		$repA, "$lienimage2/$idQuestion-a-n.png");

  4. #4
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 022
    Points : 2 273
    Points
    2 273
    Par défaut
    T'utilises imagecolorexact() ou imagecolorallocate() ? car la première ne peut pas générer une couleur qui n'existe pas déjà dans l'image.
    Vive les roues en pierre

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2006
    Messages
    71
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 71
    Points : 40
    Points
    40
    Par défaut
    j'ai utilisé les deux...
    avec imagecolorexact() , quand l'image est verte ou orange, cela fonctionne mais quand elle est noire ca ne marche pas.
    avec imagecolorallocate(), ca me met des couleurs aléatoires (orange, bleu, marron, vert...)

  6. #6
    Membre émérite Avatar de Djakisback
    Profil pro
    Inscrit en
    Février 2005
    Messages
    2 022
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 2 022
    Points : 2 273
    Points
    2 273
    Par défaut
    Tu lui passes des strings alors qu'elle prend des int "255" => 255.
    Mais ça devrait pas pour autant avoir un effet aléatoire il me semble.
    Vive les roues en pierre

Discussions similaires

  1. [WD20] Couleur de texte dans une liste image
    Par JG_33 dans le forum WinDev
    Réponses: 3
    Dernier message: 05/06/2015, 14h18
  2. wxWidgets : couleur de texte sur une seule ligne
    Par Oatly dans le forum wxWidgets
    Réponses: 8
    Dernier message: 05/12/2004, 19h24
  3. boîte de dialogue avec image de fond + texte
    Par Eugénie dans le forum MFC
    Réponses: 13
    Dernier message: 31/08/2004, 13h32
  4. [border][panel] couleur du texte
    Par harold63 dans le forum Composants
    Réponses: 3
    Dernier message: 29/06/2004, 15h36
  5. Réponses: 6
    Dernier message: 28/05/2004, 19h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo