ビットマップイメージを描画します。

構文

void ShowBMP(
  int x_offs,
  int y_offs,
  unsigned short mode,
  unsigned char *bmp
);

パラメータ

x_offs
[in] ビットマップの左端のx座標位置を指定します。
y_offs
[in] ビットマップの上端のy座標位置を指定します。
mode
[in] ビットマップの描画方法を指定します。
説明
WRITE_TO_SCREEN LCD画面に描画します。
TRANSPARENT 黒部分を透過させ、LCD画面に描画します。
bmp
[in] ビットマップの参照元バッファを指定します。

戻り値

 なし

解説

 この関数は描画のために画面のドット座標を用いています。
設定可能な値は以下の通りとなります。
 X (左右): 0 〜 (DISP_WIDTH - 1)
 Y (上下): 0 〜 (DISP_HEIGHT - 1)
 ステータスバーを表示している場合、設定可能なY座標値は以下の通りとなります。
 Y (上下): 0 〜 (DISP_HEIGHT - 17)
説明
DISP_WIDTH 128 ピクセル
DISP_HEIGHT 160 ピクセル

必要条件

ヘッダファイル:
lib.h
ライブラリファイル:
libSTARTUPOPH5000.a

サンプル

#include <stdio.h>
#include <stdlib.h>
#include "lib.h"

void main(void)
{
    struct ffblk ffblkSt;
    unsigned char *imageBuffer;
    FILE *fp;
    printf("[ShowBMP]\n");
    printf("Please any key\r");
    ResetKey();
    while(!kbhit())
        Idle();
    if (findfirst("image.bmp", &ffblkSt) == OK)
    {
        if ((imageBuffer = malloc(ffblkSt.filesize)) == NULL)
            return;
        fp = fopen("image.bmp","rb");
        if (fp != NULL)
        {
            fread(imageBuffer, ffblkSt.filesize, 1, fp);
            fclose(fp);
        }
        ShowBMP(0, 0, WRITE_TO_SCREEN, imageBuffer);
        printf("Please any key\r");
        ResetKey();
        while(!kbhit())
            Idle();
    }
}

最終更新日:2020/10/02