1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
| // On récupère l'image dans un pixbuf
if ( !(pix_buf = gtk_image_get_pixbuf(GTK_IMAGE(ps_Struct->p_image[i]))))
{
printf("Erreur get pixbuf 1\n");
}
// Creation du masque (pixmap), myWin est un gdk_window, a priori le parent on s'en fout puisque c'est pour le ET logique
if (!( pix_map = gdk_pixmap_new(myWin,
gdk_pixbuf_get_width(GDK_PIXBUF(pix_buf)),
gdk_pixbuf_get_height(GDK_PIXBUF(pix_buf)),
gdk_visual_get_system()->depth)))
{
printf("Erreur new pixmap\n");
}
// Dessin de mon quadrilatere sur le masque :
gdk_draw_rectangle (pix_map,
pWidget->style->white_gc,
TRUE,
0, 0, 40, 40);
// Comment convoluer mon masque avec l'image? dois-je avoir 2 pixbuf ou 2 pixmap?
// Enregistrement du pixbuf :
if( !gdk_pixbuf_save(pix_buf, c_chemin_complet, "jpeg", (GError **) err, "quality", "100", NULL) )
{
printf("Erreur save pixbuf\n");
} |
Partager