FreeBASIC マニュアルのトップに戻る

FreeBASIC FaqPggetputstructure

目次→テーブル→FaqPggetputstructure←オリジナル・サイト

GET/PUT 画像ヘッダーの例 左にメニュー・フレームが表示されていない場合は、ここをクリックして下さい

←リンク元に戻る プログラム開発関連に戻る

画像バッファのために使われる、2つの異なったヘッダーを例示します。
注意: ImageInfo は、画像構造を直接読むための、より簡単な選択肢として、提供されます。

'' fbgfx.bi は、画像ヘッダーで直接働くために必要な、構造と定数を含みます。
#include "fbgfx.bi"

'' lang fb では、構造と定数は、FB 名前空間に含まれています。
#if __FB_LANG__ = "fb"
Using FB
#endif


'' 画像の情報を示す関数
Sub show_image_info( ByVal img As Any Ptr )
    Dim As PUT_HEADER Ptr header 'PUT_HEADER の代わりに IMAGE を使うこともできます
    Dim As Integer w, h, bpp, pitch

    header = img
    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() の下限です。
目次に戻る

←リンク元に戻る プログラム開発関連に戻る
ページ歴史:2021-03-10 17:51:26
日本語翻訳:WATANABE Makoto、原文著作者:ChaOs

ホームページのトップに戻る

表示-非営利-継承