Appel aux pros de GTK et manipulation des images. J'avance pas !

Appel aux pros de GTK et manipulation des images. J'avance pas ! - C - Programmation

Marsh Posté le 28-04-2008 à 10:57:02    

Bonjour Bonjour,
 
Voici ce que je souhaite faire :
1 Charger un png
2 cliquer 4 points sur l'image
3 Créer un masque (quadrilatère) afin de faire un et logique avec mon image
4 Sauvegarder l'image
 
Ce que j'ai réussi à faire :
a) Charger le png dans un GTK_IMAGE
b) Enregistrer un pixbuf
c) j'ai les coordonnées de mon quadrilatère
 
Ce que je ne comprends pas :
Le masque doit être un gdk_pixmap, gtk_pixmap, gdk_pixbuf, gtk_pixbuf?
Pour le et logique, mon image originale doit être un gdk_pixmap, gtk_pixmap, gdk_pixbuf, gtk_pixbuf?
 
Le cooooode :
 

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


 
Je craque, j'ai vraiment du mal à saisir le mécanisme de dessin GTK


Message édité par jijiz le 28-04-2008 à 10:59:29
Reply

Marsh Posté le 28-04-2008 à 10:57:02   

Reply

Marsh Posté le 29-04-2008 à 09:26:25    

up

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed