- UID
- 1
- 精华
- 积分
- 76361
- 威望
- 点
- 宅币
- 个
- 贡献
- 次
- 宅之契约
- 份
- 最后登录
- 1970-1-1
- 在线时间
- 小时
|
这些代码用于操作BMP文件。这些代码是跨平台的。能在不同的平台完成编译。
为了和Windows自带的结构体区分开来,我改变了大小写。- #include<stdint.h>
- #pragma pack(push,1)
- typedef struct
- {
- uint16_t bfType;
- uint32_t bfSize;
- uint16_t bfReserved1;
- uint16_t bfReserved2;
- uint32_t bfOffBits;
- }BitmapFileHeader,*BitmapFileHeaderP;
- typedef struct
- {
- uint32_t biSize;
- int32_t biWidth;
- int32_t biHeight;
- uint16_t biPlanes;
- uint16_t biBitCount;
- uint32_t biCompression;
- uint32_t biSizeImage;
- int32_t biXPelsPerMeter;
- int32_t biYPelsPerMeter;
- uint32_t biClrUsed;
- uint32_t biClrImportant;
- }BitmapInfoHeader,*BitmapInfoHeaderP;
- typedef struct
- {
- uint8_t B;
- uint8_t G;
- uint8_t R;
- uint8_t X;
- }RGBQuad,*RGBQuadP;
- typedef struct
- {
- BitmapInfoHeader bmiHeader;
- RGBQuad bmiColors[1];
- }BitmapInfo,*BitmapInfoP;
- #pragma pack(pop)
复制代码 |
|