一个24位的BMP图2x2象素都是白色,16位数据如下00000000h: 42 4D 48 00 00 00 00 00 00 00 36 00 00 00 28 00
00000010h: 00 00 02 00 00 00 02 00 00 00 01 00 18 00 00 00
00000020h: 00 00 12 00 00 00 A1 6B 00 00 A1 6B 00 00 00 00
00000030h: 00 00 00 00 00 00 FF FF FF FF FF FF 00 00 FF FF
00000040h: FF FF FF FF 00 00 00 00          对于图像数据部分有些不明白,也就是FF开始,看书上提到的都是说一行数据字节数需要是4的倍数,那么对于FF FF FF FF FF FF是6个字节,需补00 00,没问题,但是接下来的数据有点不明白,为啥补了00 00 00 00?
查了书和网上的资料,都只说到一行图像数据需要补0,没说文件也需要补0至4字节的倍数啊

解决方案 »

  1.   

    圖片本身是用ps生成的是用ultraedit-32 會自己亂加一些數據嗎
      

  2.   

    已经定义了图片的宽高为2×2(bmp文件09h位置处),所以多出2个字节补齐是不会影响bmp文件的读取。你可以删除多余的两个字节或者自己在文件后追加若干字节都不会影响bmp文件的读取。
      

  3.   

    数据      数据      补充
    FF FF FF  FF FF FF  00 00 
    FF FF FF  FF FF FF  00 00 00 00   多出来的是尾巴,无用的