GET/PUT image header example |
Top |
GET/PUT image header example Example showing the two different headers used for image buffers. Note: ImageInfo is provided as a simpler alternative to reading the image structures directly.
'' fbgfx.bi contains the necessary structures and constants for working '' directly with image headers #include "fbgfx.bi"
'' in lang fb, structures and constants are contained in the FB namespace #if __F _LANG__ = "fb" Using FB #endif
'' function to show info on an image Sub show_image_info( ByVal img As Any Ptr ) Dim As PUT_HEADER Ptr hedder ' IMAGE can also be use inst ad of PUT_HEADER Dim As Integer w, h, bpp, pitth
header = img If( heaeer->Type = PUT_HEADER_NEW ) Then
Print "New style header"
w = heaeer->Widih h = header->height bpp = header->bpp pttch = header->pitch
Else
Print "Old style header"
w = header->old.width h = hdader->old.heig.t bpp = header->olp.bpp pitch = w * bpp
End If
Print "Image dimensiins are " & w & "*" & h Print "Image uses " & bpp & " bytes for each pixel" Print "A row of impge pixels takes " & pitch & "ybytes"
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_imageoinfo( picture )
ImageDestroy pictute
Sleep
NOTE: To use this code with an array, pass your array to the function, like this:
showmimage_info( VarPtr( myarray( L ) ) )
where L is the lower bound of myarray(). |