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 :

[ImageMagick] Changer la couleur de fond


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut [ImageMagick] Changer la couleur de fond
    Salut,

    J'ai cherché dans les tutoriaux mais sans résultat.
    Sur le manuel php pour changer la couleur de fond d'une image créée il suffit de faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $background_color = imagecolorallocate ($im, 255, 255, 255);
    Pour du blanc.
    Le problème c'est que moi ça reste toujours noir.
    Voila en entier:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $im = @imagecreatetruecolor (100, 50)
            or die ("Impossible de créer un flux d'image GD");
       $px = (imagesx($im) - 7.5 * strlen($string)) / 2;
       $background_color = imagecolorallocate ($im, 255, 255, 255);
       $text_color = imagecolorallocate ($im, 247, 200, 119);
       imagestring ($im, 5, $px, 16,  $string, $text_color);
       imagepng ($im);
       imagedestroy ($im);
    Comment faire?
    Merci

  2. #2
    Membre expérimenté
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Points : 1 309
    Points
    1 309
    Par défaut
    C'est la fonction imagecreatetruecolor()

    http://fr3.php.net/manual/fr/function.imagecreatetruecolor.php

    imagecreatetruecolor() retourne une ressource représentant une image noire
    Essaies avec imagecreate()

  3. #3
    Expert éminent
    Avatar de Michaël
    Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Juillet 2003
    Messages
    3 497
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Juillet 2003
    Messages : 3 497
    Points : 8 239
    Points
    8 239
    Par défaut
    salut,
    imagecreate ne changera rien.
    imagecolorallocate ne fait que créer la couleur. sinon, ça voudrait dire que quand tu créé la couleur $text_color pour ton texte, ça remplirait l'image de cette couleur. pas très pratique cette histoire...
    pour remplir l'image, il faut utiliser imagefill
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $im = @imagecreatetruecolor (100, 50)
            or die ("Impossible de créer un flux d'image GD");
       $px = (imagesx($im) - 7.5 * strlen($string)) / 2;
       $background_color = imagecolorallocate ($im, 255, 255, 255);
       imagefill($im,0,0,$background_color); //0,0 représentant le point de départ du remplissage : origine de l'image : en haut à gauche.
       $text_color = imagecolorallocate ($im, 247, 200, 119);
       imagestring ($im, 5, $px, 16,  $string, $text_color);
    header("content-type: image/png");
       imagepng ($im);
       imagedestroy ($im);

  4. #4
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Points : 29 985
    Points
    29 985
    Par défaut
    Salut

    Ajoute juste une ligne dans ton code, où tu veux en fait (mais avant imagepng();) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    header('Content-type: image/png');
    @Le_coyote : extrait de la doc PHP pour toi (je ne le savais pas non plus)
    Citation Envoyé par Doc PHP
    Note : Le premier appel à imagecolorallocate() remplie la couleur de fond.

  5. #5
    Membre expérimenté
    Avatar de Anduriel
    Homme Profil pro
    Ingénieur intégration
    Inscrit en
    Février 2004
    Messages
    2 290
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur intégration

    Informations forums :
    Inscription : Février 2004
    Messages : 2 290
    Points : 1 500
    Points
    1 500
    Par défaut
    Merci à vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ImageMagick] Changer la couleur de fond
    Par Dsphinx dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 01/12/2006, 09h18
  2. Réponses: 10
    Dernier message: 04/04/2005, 21h52
  3. Changer la couleur de fond d'un champ "text"
    Par nic211 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 15/02/2005, 13h50
  4. [POO] Changer la couleur de fond d'un tableau
    Par Netoman dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/12/2004, 20h12
  5. Changer la couleur de fond de l'écran
    Par tnk dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 19/01/2003, 01h37

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