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

Linux Discussion :

Récupérer le code couleur en hexa sous la souris


Sujet :

Linux

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 2
    Points
    2
    Par défaut Récupérer le code couleur en hexa sous la souris
    Bonjour,

    Je voudrais savoir comment récupérer le code couleur en hexa du pixel sous la souris a une position (x,y) sans cliquer. (Si possible sans capture d'image).

    ex: if mousepixelat(320,100) & color = 0x00FFFF00 then cmd

    voilà, merci pour l'aide

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Assuming you mean using C and GTK the answer can be using:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gdk_get_default_root_window()
    And
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    GdkPixbuf*  gdk_pixbuf_get_from_drawable    (GdkPixbuf *dest,
                                                 GdkDrawable *src,
                                                 GdkColormap *cmap,
                                                 int src_x,
                                                 int src_y,
                                                 int dest_x,
                                                 int dest_y,
                                                 int width,
                                                 int height);
    EDIT: sample c++ code using Gdkmm (note that this is just a sample that assume an RGB color space, you should check the colorspace of the drawable before giving a meaning to the raw bytes).
    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
     
    #include <iostream>
    #include <gtkmm.h>
    #include <gdkmm.h>
     
    int main(int argc, char* argv[])
    {
      Gtk::Main kit(argc, argv);
      if(argc != 3) { std::cerr << argv[0] << " x y" << std::endl; return 1;}
      int x = atoi(argv[1]);
      int y = atoi(argv[2]);
      Glib::RefPtr<Gdk::Screen> screen = Gdk::Screen::get_default();
      Glib::RefPtr<Gdk::Drawable> win = screen->get_root_window();
      Glib::RefPtr<Gdk::Pixbuf> pb = Gdk::Pixbuf::create(win, x, y, 1, 1);
      unsigned char* rgb = pb->get_pixels();
      std::cerr << (int)rgb[0] << ", " << (int)rgb[1] << ", " << (int)rgb[2] << std::endl;
      return 0;
    }
    Voilà, j'ai trouvé ca mais comment ca fonctionne ? :X

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/04/2013, 13h38
  2. Récupérer le code couleur de chaque pixel d'une image
    Par darkwall_37 dans le forum Débuter
    Réponses: 4
    Dernier message: 18/05/2010, 23h14
  3. Récupérer le code d'une page html contenue dans un balise object sous I
    Par olivier21c dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/05/2008, 16h48
  4. [VBA] - Récupérer le code RGB des couleurs systèmes
    Par Invité dans le forum VBA Access
    Réponses: 8
    Dernier message: 12/06/2007, 10h25
  5. [VB]Code couleur sous visual basic
    Par mauriiice dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 05/02/2006, 13h50

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