#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
#include <ctype.h>
#include <process.h>
#ifndef BMP_H_INCLUED
#define BMP_H_INCLUED
typedef unsigned short WORD; //typedef 的作用:使得 WORD 代替 unsigned short;
typedef unsigned long DWORD;
typedef long LONG;
typedef unsigned char BYTE;
typedef struct tagBITMAPFILEHEADER //创建文件头结构体
{
WORD bfType; //文件格式
DWORD bfSize; //该文件的大小
WORD bfReserved1; //保留量为 0;
WORD bfReserved2; //保留量为 0;
DWORD bfOffBits; //像素数据距离文件头的位置
}BITMAPFILEHEADER;
typedef struct tagBITMAPINFOHEADER //创建信息头结构体
{
DWORD biSize; //结构体的大小
LONG biWidth; //位图的宽度
LONG biHeight; //位图的高度
WORD biPlanes; //位图的片面数
WORD biBitCount; //位图的位数
DWORD biCompression; //位图的压缩方法
DWORD biSizeImage; //位图像素数据的大小
LONG biXPelsPerMeter; //水平方向的分辨率
LONG biYPelsPerMeter; //垂直方向的分辨率
DWORD biClrUsed; //位图用到的颜色数 0 代表全部都用到了
DWORD biClrImportant; //位图中重要的颜色数 0 代表全部都很重要
}BITMAPINFOHEADER;
typedef struct tagRGBQUAD //调色板 24 位图像用不到
{
BYTE rgbBlue; //蓝色分量
BYTE rgbGreen; //绿色分量
BYTE rgbRed; //红色分量
BYTE rgbReserved; //保留值