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] Utilisation de imagescolorat


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 30
    Par défaut [GD] Utilisation de imagescolorat
    Bonjour,

    je cherche à récupérer la couleur d'un pixel sur une image qui s'appelle palette.png. J'utilise pour cela la fonction imagecolorat. Cependant, je ne comprend pas ce que signifie ce que je récupère :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $x=intval($_POST['x']);
    $y=intval($_POST['y']);
     
    $im = imagecreatefrompng("palette.png");
    $rgb = imagecolorat($im,$x,$y);
    $r = ($rgb >> 16) & 0xFF;
    $g = ($rgb >> 8) & 0xFF;
    $b = $rgb & 0xFF;
     
    echo $r.','.$g.','.$b;

    ce code me renvoi 23,25,26 au lieu de quelque chose comme ça 125 192 255.

    Pourriez-vous m'expliquer à quoi correpond 23 25 26 ?

    Sachant que le mieux pour moi serai de récupérer la couleur en hexadécimal #FF0000.


  2. #2
    Membre émérite Avatar de micetf
    Homme Profil pro
    Professeur des Ecoles
    Inscrit en
    Mai 2009
    Messages
    557
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardèche (Rhône Alpes)

    Informations professionnelles :
    Activité : Professeur des Ecoles
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2009
    Messages : 557
    Par défaut
    Regarde l'exemple #1 de la doc.
    Fred

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    30
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2007
    Messages : 30
    Par défaut
    C'est justement ce que j'expliquais, le résultat de ce bout de code ne me renvoi pas int(119) int(123) int(180) comme montré dans l'exemple mais une suite avec 2 chiffres, 19 23 80. J'ai bien essayé ensuite de mettre des 1 ou des 2 devant les codes couleurs renvoyées mais ça ne correspond pas à la couleur voulue .. je sais pas si je suis très clair

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    498
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 498
    Par défaut
    Je ne comprends pas trop ton problème! L'exemple proposé par Fred renvoie les variables avec var_dump qui permet d'avoir des infos sur celle-ci (d'où le typage (int)). Dans ton exemple, le pixel renvoyé est 23,25,26 soit en hexa :
    dechex($r).dechex($g).dechex($b) ou #17191A. Le code est correct pour moi. Es-tu sur de chercher le bon pixel?

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

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  2. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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