📄 bitmap.h
字号:
// SUNPLUS S+core IDE generated include file.#ifndef COS_BITMAP_H_11840_18756__INCLUDED_#define COS_BITMAP_H_11840_18756__INCLUDED_#include ".\TFT\TFT_API.h"#include "TypeDef.h"// constants for BitPerPixel of struct FILE_HEADER#define BP_SINGLE 1#define BP_16COLOR 4#define BP_256COLOR 8#define BP_16BITCOLOR 16#define BP_24BITCOLOR 24#define BP_32BITCOLOR 32// constants for CompresType of struct FILE_HEADER#define BI_RGB 0#define BI_RLE8 1#define BI_RLE4 2#define BI_BITFIELDS 3typedef struct { UINT8 B;// : 8; UINT8 G;// : 8; UINT8 R;// : 8; UINT8 Filled;// : 8;}RGBQUAD;typedef struct { RGBQUAD ColorTable[256]; UINT32 CTOffset; UINT32 CTSize;}COLORTABLE;typedef struct { UINT16 DUMP; // offset:-2,保证按4字节对齐 UINT16 Type; // offset:0x00 文件标识, 一般是0x4d42, 也就是"BM" UINT32 FileSize; // offset:0x02 整个文件的大小 UINT32 Reserved; // offset:0x06 保留 must be 0 UINT32 Offset; // offset:0x0a 位图数据的偏移量}FILE_HEADER;typedef struct { UINT32 HeadSize; // offset:0x0e 位图信息头的长度, windows系统一般为0x28 UINT32 Width; // offset:0x12 位图宽度 UINT32 Height; // offset:0x16 位图高度 UINT16 Planes; // offset:0x1a 位图的柱面数(该值将总是1) UINT16 BitPerPixel; // offset:0x1c 每个象素的位数(1-单色位图; 4-16色位图; 8-256色位图; 16-16bit高彩色位图; 24-24bit真彩色位图; 32-32bit增强型真彩色位图) UINT32 CompresType; // offset:0x1e 压缩方式(0-不压缩; 1-使用8位RLE压缩; 2-使用4位RLE压缩; 3-位域存放方式) UINT32 DataSize; // offset:0x22 用字节数表示的位图数据大小, 必须为4的倍数 UINT32 HResolution; // offset:0x26 用象素/米表示的水平分辨率 UINT32 VResolution; // offset:0x2a 用象素/米表示的垂直分辨率 UINT32 Colors; // offset:0x2e 位图使用的颜色数. 如8bit/象素表示为100H或者256 UINT32 ImportColor; // offset:0x32 指定重要的颜色数. 当该域的值等于颜色数(或者等于0)时,表示所有颜色都一样重要 COLORTABLE ColorTable; // 调色板规范}INFO_HEADER;typedef struct { FILE_HEADER FileHead;// 文件信息头 INFO_HEADER InfoHead;// 图象信息头 UINT8 *Data; // 图象数据 UINT8 Opened; UINT32 LineWidth;// 每行占用的字节数} BITMAP_FILE;UINT8 BMP_OpenFile(BITMAP_FILE *BFile, UINT8 *BitFile);UINT8 BMP_CheckFormat(BITMAP_FILE *BFile);COLOR BMP_GetPixelColor(BITMAP_FILE *BFile, UINT16 x, UINT16 y);UINT32 BMP_GetLineColor(BITMAP_FILE *BFile, UINT16 line, COLOR ColorTable[]);UINT32 BMP_GetLineColor2(BITMAP_FILE *BFile, UINT8 *DataAddr, COLOR *ColorTable);UINT32 BMP_GetWidth(BITMAP_FILE *BFile);UINT32 BMP_GetHeight(BITMAP_FILE *BFile);UINT32 BMP_GetOffset(BITMAP_FILE *BFile);UINT32 BMP_GetLineWidth(BITMAP_FILE *BFile);void BMP_CloseFile(BITMAP_FILE *BFile);#endif //COS_BITMAP_H_11840_18756__INCLUDED_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -