DrawingBuffer()
Syntaxe
*Resultat = DrawingBuffer()Description
Renvoie le tampon (buffer) de dessin, ce qui permet la manipulation des pixels directement en mémoire.
Arguments
Aucun.
Valeur de retour
Renvoie le pointeur de données des pixels si l'accès direct aux pixels est possible ou zéro sinon.
Remarques
Cette fonction doit être appelée à nouveau si d'autres commandes de dessin de cette bibliothèque ont été utilisées depuis la dernière manipulation de pixels.
Une fois que StopDrawing() a été appelé, le tampon est invalidé et ne peut plus être utilisé.
Cette commande est destinée aux programmeurs chevronnés. Pour obtenir plus d'informations sur le buffer, les commandes suivantes peuvent être utilisées : DrawingBufferPixelFormat() et DrawingBufferPitch().
Cela peut correspondre directement à la mémoire vidéo si la sortie est ScreenOutput() ou SpriteOutput() et permet des manipulations très rapide des pixels.
Avec ImageOutput() cette commande permet l'accès direct aux pixels de l'image.
Exemple
DirectScreenDrawing.pb
Exemple
If OpenWindow(0, 0, 0, 200, 200, "Buffer Image", #PB_Window_SystemMenu | #PB_Window_ScreenCentered) If CreateImage(0, 200, 200, 32) And StartDrawing(ImageOutput(0)) DrawText(60,80,"PUREBASIC", RGB(255, 255, 0)) Debug "Adresse mémoire : " + Str(DrawingBuffer()) Debug "Longueur réelle d'une ligne en octet : " + Str(DrawingBufferPitch()) Debug "Format de pixel : " + Str(DrawingBufferPixelFormat()) StopDrawing() ImageGadget(0, 0, 0, 200, 200, ImageID(0)) EndIf Repeat Event = WaitWindowEvent() Until Event = #PB_Event_CloseWindow EndIf
Voir aussi
DrawingBufferPixelFormat(), DrawingBufferPitch()
OS Supportés
Tous