S3C6410 FrameBuffer编程(二) ---- 与BMP格式图片相关的结构体

本文详细介绍了BMP图片文件的内部结构,包括文件头、图片信息头及像素数据的组织形式。通过三个核心结构体,深入浅出地解析了BMP格式的存储原理和技术细节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 文件信息结构体

typedef struct bmp_file{



unsigned short map_id; //图片类型
unsigned int file_size; //文件大小
unsigned int reserved;   //无定义,默认为0
unsigned int offset; // 偏移量:从文件开始到数据区的长度


}__attribute__((packed)) BMPFILEHEADER;


__attribute__((packed)): 防止编译器字节对齐


2.图片信息结构体
typedef struct bmp_info{


unsigned int cur_size;      //文件信息结构体的大小
unsigned int width;           //图片的宽
unsigned int hight;           //图片的高
unsigned short reserved; //无定义,默认为1
unsigned short bpp;         //每个像素点占的位数
unsigned int compression;  //压缩方式,0为不压缩
unsigned int map_size;       //图像大小

unsigned int x_ppm;            //水平每米像素个数
unsigned int y_ppm;            //竖直每米像素个数
unsigned int palette;            //颜色表的颜色数
unsigned int bitmapdata;   //指定重要的颜色数


}__attribute__((packed))BMPINFOHEADER;


3。像素结构体

typedef struct pixel{


unsigned char blue;
unsigned char green;

unsigned char red;


}__attribute__((packed))PIXEL;


BMPFILEHEADER FileHead;
BMPINFOHEADER InfoHead;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值