Sofern es nicht um Linux geht: WinAPI -> GetDIBits()Laurin hat geschrieben: Es scheint keine Möglichkeit zu geben, wie man die sPeicheradresse herausbekommt.
Beispiel (u.a.) hier:
http://robsite.de/php/pureboard/viewtopic.php?t=1164
Sofern es nicht um Linux geht: WinAPI -> GetDIBits()Laurin hat geschrieben: Es scheint keine Möglichkeit zu geben, wie man die sPeicheradresse herausbekommt.
Code: Alles auswählen
hbmp = CreateImage(0,100,100)
StartDrawing(ImageOutput())
Plot(0,0,RGB(123,0,0))
StopDrawing()
mem = AllocateMemory(100*100*4)
GetBitmapBits_(hbmp,100*100*4,mem)
Debug Red(PeekL(mem)>>16) ;Nur zum test ob der selbe Rot-Wert wie oben rauskommt
Code: Alles auswählen
StartDrawing(ImageOutput())
*mem = DrawingBuffer()
xwid = DrawingBufferPitch()
StopDrawing()
Aus der PBHilfe 'DrawingBuffer()': "Diese befindet sich im Videospeicher, wenn die Ausgabe auf ScreenOutput() oder SpriteOutput() erfolgt."Kaeru Gaman hat geschrieben:man kann auch den drawing-mode verwenden, nur um den pointer zu ermitteln:mit DrawingBufferPitch() kann man die länge einer Zeile in Byte erfragenCode: Alles auswählen
StartDrawing(ImageOutput()) *mem = DrawingBuffer() xwid = DrawingBufferPitch() StopDrawing()
Code: Alles auswählen
CreateImage(0,100,100)
StartDrawing(ImageOutput())
*mem = DrawingBuffer()
Debug *mem
StopDrawing()
müsste also heissen:Gibt die 'SpeicherAdresse' des Zeichenbuffers ("DrawingBuffer") zurück. Diese befindet sich im Videospeicher, wenn die Ausgabe auf ScreenOutput() oder SpriteOutput() erfolgt.
Gibt die 'SpeicherAdresse' des Zeichenbuffers ("DrawingBuffer") zurück, wenn die Ausgabe auf ScreenOutput() oder SpriteOutput() erfolgt. Diese befindet sich im Videospeicher.