Bonjour à tous,
TEST 1 :
J'éssaye de déclarer un pixmap et de tracer un rectangle sur celui-ci. Or à l'exécution, le programme retourne l'erreur suivante :
Voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 (visu_detou:27739): Gdk-CRITICAL **: gdk_draw_rectangle: assertion `GDK_IS_DRAWABLE (drawable)' failed t_chemin_images : /home/julien/Edres-svn/tools/aaaImg/
J'ai également éssayé de récuperer le pixbuf d'une image existante et tracer dessus :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 GdkPixmap *pix_masque; pix_masque = gdk_pixmap_new(ps_Struct->p_window, 400, 300,-1); GdkGC *gc; gc = gdk_gc_new(ps_Struct->p_image[i]->window); gdk_draw_rectangle(pix_masque, gc, TRUE,0,0,60,60);
Voila, je pense que je n'ai pas encore compri très bien le mécanisme de dessin avec GTK, Merci de m'éclairer.
Code : Sélectionner tout - Visualiser dans une fenêtre à part pix_masque = gtk_image_get_pixbuf(ps_Struct->p_image[i]);
TEST 2:
Je met mon pix buf dans un pix map pour le manipuler effectuer un traitement.
Marche pas :
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
19
20
21 // Chargement du pixbuf pix_buf = gtk_image_get_pixbuf(ps_Struct->p_image[i]); // Creation pixmap pix_map=gdk_pixmap_new(ps_Struct->p_window, gdk_pixbuf_get_width(pix_buf), gdk_pixbuf_get_height(pix_buf), gdk_visual_get_system()->depth); // Insertion du pixbuf dans le pixmap gdk_draw_pixbuf(pix_map, ps_Struct->p_window->style->fg_gc[GTK_WIDGET_STATE ( ps_Struct->p_window)], pix_buf,0,0,0,0, gdk_pixbuf_get_width(pix_buf), gdk_pixbuf_get_height(pix_buf), gdk_visual_get_system()->depth,0,0); // Sauvegarde du pixbuf if( !gdk_pixbuf_save(pix_map, c_chemin_complet, "jpeg", (GError **) NULL, "quality", "100", NULL) ) { printf("Erreur save pixbuf\n"); }
Julien.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 (visu_detou:31537): Gdk-CRITICAL **: gdk_draw_pixbuf: assertion `GDK_IS_PIXBUF (pixbuf)' failed (visu_detou:31537): GLib-GObject-CRITICAL **: g_object_unref: assertion `G_IS_OBJECT (object)' failed (visu_detou:31537): GLib-GObject-CRITICAL **: g_object_ref: assertion `G_IS_OBJECT (object)' failed (visu_detou:31537): Gdk-CRITICAL **: gdk_draw_pixbuf: assertion `GDK_IS_PIXBUF (pixbuf)' failed
Partager