GET/PUT для изображений, пример с заголовком
 
Пример, показывающий два различных способа подключения заголовка, используемого для буфера изображения.
Примечание: ImageInfo выполнен в виде простой альтернативы для считывания структуры изображения.

'' Fbgfx.bi содержит необходимые структуры и константы для работы
'' непосредственно с заголовками изображения

#include "fbgfx.bi"

'' в lang fb, структуры и константы содержатся в пространстве имен FB
#if __FB_LANG__ = "fb"
Using FB
#endif


'' функция, для отображения данных изображения
Sub show_image_info( ByVal image As Any Ptr )
    Dim As PUT_HEADER Ptr header
    Dim As Integer w, h, bpp, pitch

    header = image
    If( header->Type = PUT_HEADER_NEW ) Then

        Print "New style header"

        w = header->Width
        h = header->height
        bpp = header->bpp
        pitch = header->pitch

    Else

        Print "Old style header"

        w = header->old.width
        h = header->old.height
        bpp = header->old.bpp
        pitch = w * bpp

    End If

    Print "Image dimensions are " & w & "*" & h
    Print "Image uses " & bpp & " bytes for each pixel"
    Print "A row of image pixels takes " & pitch & " bytes"

End Sub


Dim As Any Ptr picture

ScreenRes 320, 200, 32

picture = ImageCreate( 10, 10, RGB(128, 192, 255) )

Put( 40, 40 ), picture, PSet

show_image_info( picture )

ImageDestroy picture

Sleep


ПРИМЕЧАНИЕ: Чтобы использовать этот код с массивом, передайте ваш массив в функцию так:

show_image_info( VarPtr( myarray( L ) ) )

где L является нижней границей MyArray ().