GDK et Image PB
Publié : mer. 04/nov./2009 15:51
Bonjour,
Je souhaite utiliser les fonctions du GDK avec de images crees avec pB.
J'arrive a creer un pixmap GDK, tracer des primitives et l'afficher dans un image gadget
Ce que je cherche c'est de recuperer un pixmap depuis une image crée dans pb avec CreateImage()
J'avais cru comprendre qu'une image PB etait un pixmap
j'ai donc essayé ceci
Evidement cela ne fonctionne pas
Quelqu'un connait il la façon de recuperer le pixmap d'une image PB
Merci
Je souhaite utiliser les fonctions du GDK avec de images crees avec pB.
J'arrive a creer un pixmap GDK, tracer des primitives et l'afficher dans un image gadget
Code : Tout sélectionner
Dim poly.gdkpoint(5)
poly(0)\x=100
poly(0)\y=100
poly(1)\x=150
poly(1)\y=130
poly(2)\x=120
poly(2)\y=150
poly(3)\x=80
poly(3)\y=150
poly(4)\x=60
poly(4)\y=100
pixmap=gdk_pixmap_new_(0,200,200,24)
gc=gdk_gc_new_(pixmap)
fg.GdkColor
bg.GdkColor
fg\pixel=$FF0000
gdk_gc_set_foreground_(gc,fg)
gdk_draw_rectangle_(pixmap,gc,#True,0,0,200,200)
fg\pixel=$0000FF
gdk_gc_set_foreground_(gc,fg)
gdk_draw_rectangle_(pixmap,gc,#False,10,10,100,100)
fg\pixel=$00FF00
gdk_gc_set_foreground_(gc,fg)
bg\pixel=$888888
gdk_gc_set_background_(gc,bg)
gdk_gc_set_line_attributes_(gc,3,#GDK_LINE_DOUBLE_DASH,0,0)
gdk_draw_polygon_(pixmap,gc,#False,poly(),5)
OpenWindow(1,20,20,300,300,"")
ImageGadget(0,0,0,200,200,0)
gtk_image_set_from_pixmap_(GadgetID(0), pixmap,0)
Repeat
E=WaitWindowEvent(10)
Until E=#PB_Event_CloseWindow
J'avais cru comprendre qu'une image PB etait un pixmap
j'ai donc essayé ceci
Code : Tout sélectionner
Enumeration
#img
EndEnumeration
CreateImage(#Img,200,200,24)
StartDrawing(ImageOutput(img))
Box(0,0,200,200,RGB(255,255,255))
StopDrawing()
Dim poly.gdkpoint(5)
poly(0)\x=100
poly(0)\y=100
poly(1)\x=150
poly(1)\y=130
poly(2)\x=120
poly(2)\y=150
poly(3)\x=80
poly(3)\y=150
poly(4)\x=60
poly(4)\y=100
pixmap=ImageId(#img)
gc=gdk_gc_new_(pixmap)
fg.GdkColor
bg.GdkColor
fg\pixel=$FF0000
gdk_gc_set_foreground_(gc,fg)
gdk_draw_rectangle_(pixmap,gc,#True,0,0,200,200)
fg\pixel=$0000FF
gdk_gc_set_foreground_(gc,fg)
gdk_draw_rectangle_(pixmap,gc,#False,10,10,100,100)
fg\pixel=$00FF00
gdk_gc_set_foreground_(gc,fg)
bg\pixel=$888888
gdk_gc_set_background_(gc,bg)
gdk_gc_set_line_attributes_(gc,3,#GDK_LINE_DOUBLE_DASH,0,0)
gdk_draw_polygon_(pixmap,gc,#False,poly(),5)
OpenWindow(1,20,20,300,300,"")
ImageGadget(0,0,0,200,200,0)
gtk_image_set_from_pixmap_(GadgetID(0), pixmap,0)
Repeat
E=WaitWindowEvent(10)
Until E=#PB_Event_CloseWindow
Quelqu'un connait il la façon de recuperer le pixmap d'une image PB
Merci