Seite 1 von 1

DrawingBuffer() speichern und wieder auslesen

Verfasst: 29.05.2012 13:43
von Lambda
Speichern

Code: Alles auswählen

    StartDrawing(ImageOutput(\img))
      DrawingMode(#PB_2DDrawing_AlphaBlend)
      
      mem=AllocateMemory(OutputWidth()*OutputHeight()*4)
      CopyMemory(DrawingBuffer(), mem, OutputWidth()*OutputHeight()*4)
      AddPackMemory(mem, MemorySize(mem))
    StopDrawing()
Öffnen

Code: Alles auswählen

            file=NextPackFile()
            mem = AllocateMemory(PackFileSize())
            CopyMemory(file, mem, PackFileSize())
            
            StartDrawing(ImageOutput(layer()\element()\img))
              FillMemory(DrawingBuffer(), PackFileSize(), mem)
            StopDrawing()
Sollte das nicht gehn? Ich bekomm am End ein schwarzes halbtransparentes bild.

Re: DrawingBuffer() speichern und wieder auslesen

Verfasst: 29.05.2012 13:59
von NicTheQuick
Du hast in deinem zweiten Code 'FillMemory()' statt 'CopyMemory()' verwandt. Deswegen wird der gesamte Bildspeicher mit der Zeigeradresse 'mem' überschrieben statt mit deren Inhalt.

Re: DrawingBuffer() speichern und wieder auslesen

Verfasst: 29.05.2012 14:21
von Lambda
pah :D dankesehr