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