I use Gdk::Pixbuf to display an image with Gdk::Cairo in C ++:
virtual bool on_draw(const Cairo::RefPtr<Cairo::Context>& cr) { Glib::RefPtr<Gdk::Pixbuf> image = Gdk::Pixbuf::create_from_file(filename); Gdk::Cairo::set_source_pixbuf(cr, image, (width - image->get_width())/2, (height - image->get_height())/2); cr->paint(); }
This image is in B&W, and I need to output some pixels whose brightness exceeds a certain threshold. For this, I would like to color these pixels.
Firstly, I do not know (and cannot find on the Internet) how to get the brightness of a specific pixel in my Pixbuf image.
Secondly, I find no other way to draw a pixel than to draw a line of length 1 (which is a kind of ugly solution).
could you help me? If possible, I would like to avoid changing the library ...
thanks
source share