不是的实际文件大小是230 =bitmapfilehead(14)+bitmapinfohead(40)+rgbqure(8)+168
不信,你可以用vc 的bitmap view建立一个,读出以上信息 biSizeImage 不等于你的计算值

解决方案 »

  1.   

    你的biBitCount为1,是2色图吧。rgbqure怎会是8?
      

  2.   

    RGBQUAD 就是8个自节见 MSDN 的定义
    typedef struct tagRGBQUAD {
      BYTE    rgbBlue; 
      BYTE    rgbGreen; 
      BYTE    rgbRed; 
      BYTE    rgbReserved; 
    } RGBQUAD
      

  3.   

    No!实际文件大小是230 =bitmapfilehead(14)+bitmapinfohead(40)+rgbqure(8)*numColors+168
    numColors是颜色数,这里是2
      

  4.   

    对于bmp图片,每一行的字节数必须是4的倍数,这是为了与以后的32位操作系统兼容而设的,你的文件是2色图从bibitcount=1可以看出,一行有72个点就是 72/8=9个字节,不是4的倍数,为了补齐,在每行会加上3个无用的字节,变为12 个字节,这加上的3个字节一般都是0,你不妨用ultredit打开看看事不是这样。于是每行12 个字节,乘上14 行,12*14=168,看在我说的这么辛苦的份上,多给我地点份吧,呵呵