chez moi, j'ai une ima avec ce code (sur la ligne saveimage(), ou alors une iamge toute noire (en opengl), ou des fois une image toute déformée, mais jamais le bon résultat.
En gros, je dessine sur le screen et je voudrais faire un screenshot du screen.
C'est un bug ?
Code : Tout sélectionner
; 5.30LTS
; date : 11/06/2015
#Window_main = 0
If InitSprite() : EndIf
flag = #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered|#PB_Window_MaximizeGadget|#PB_Window_SizeGadget
CanvasW = 600
CanvasH = 400
If OpenWindow(#Window_main,0,0,600,400, "Screenshot", Flag)
If OpenWindowedScreen(WindowID(0), 0,0,CanvasW,CanvasH)
EndIf
ShowCursor_(1)
EndIf
#Img_saveImage = 0
UsePNGImageDecoder()
UsePNGImageEncoder()
If IsImage(#Img_saveImage) = 0
CreateImage(#Img_saveImage, CanvasW,CanvasH,32,#PB_Image_Transparent)
EndIf
ClearScreen(RGB(120,120,120))
If StartDrawing(ScreenOutput())
Circle(50,50,50,#Red)
Circle(100,50,50,#Green)
StopDrawing()
EndIf
FlipBuffers()
If StartDrawing(ScreenOutput())
DrawingMode(#PB_2DDrawing_Default)
GrabDrawingImage(#Img_saveImage,0,0,CanvasW,CanvasH)
StopDrawing()
EndIf
savefile$ = "testok.png"
If SaveImage(#Img_saveImage,savefile$,#PB_ImagePlugin_PNG)=0
MessageRequester("error","unable to save the part of the image screen !"+savefile$)
EndIf:
Merci.