Pixel verdunkeln beim GtkPixBuf/DrawingArea?



  • Hallo,

    auf folgende Art und Weise zeige ich eine tif-Datei in meinem Fenster unter GTK an:

    GdkPixbuf *tifFile;
    GtkWidget *drawingArea;
    drawingArea = gtk_drawing_area_new();
    /* Drawing Area anzeigen */
    gtk_widget_show(drawingArea);
    gtk_container_add( GTK_CONTAINER( mainWindow ), drawingArea);
    
    /* Tif-Datei laden */
    tifFile = gdk_pixbuf_new_from_file(filename, &error);
      if (error)
        {
          std::cout<< error->message << std::endl;
        }
    
    /* Bild in die Drawing Area kopieren */
    gdk_draw_pixbuf(drawingArea->window, NULL, GDK_PIXBUF (tifFile), 0, 0, 0, 0, -1, -1, GDK_RGB_DITHER_NONE, 0, 0);
    

    Nun möchte ich die Farbwerte bestimmter Pixel verdunkeln, mache ich das besser auf der Drawing Area oder im PixBuf?
    Ich könnte ja mittels "gdk_draw_point" ein Pixel zeichnen, aber ich muss ja vorher abfragen, welchen Farbwert der Pixel hat.

    Wie kann ich das lösen?
    Dankeschön für eure Hilfe,
    Andy



  • Hi,

    wir hatten gerade erst einen Pixel-Thread: http://www.c-plusplus.net/forum/viewtopic-var-t-is-219140.html
    Evtl. findest du ja da bereits die Antwort auf deine Frage. Und ich würde auf dem PixBuf operieren. Oder auf einem GtkImage.

    Cheers

    GPC


Anmelden zum Antworten