淺析BMP文件格式

我們在編程的時辰, 有的時辰會用到BMP文件的存儲以及讀取, 這個時辰就需要對BMP文件格局有一個大要的領會才能順遂的讀取以及存儲BMP文件

淺析BMP文件格式


總述1BMP文件總體來說由四部門組成, 別離為位圖文件頭、位圖信息頭、彩色表和圖像數據陣列 。 知道了文件的構成那么大要說一下文件這幾部門大?。?
位圖文件頭大小為14字節,
位圖信息頭為40字節,
彩色表按照BMP圖的分歧(我感受這里的分歧指的就是日常平凡說的單色位圖、8位位圖以及16位位圖或者24位位圖這種分歧)而大小分歧
圖像數據陣列就是看圖片的大小而分歧了, 接下來具體針對分歧部門來進行詮釋, 如下圖:

淺析BMP文件格式



位圖文件頭1位圖文件頭如下圖有五個部門構成, 依次進行詮釋:
1.bfType:2字節 暗示位圖類型, 因為這里解析的是BMP文件, 所以這兩個字節為BM
2.bfSize:4字節 暗示文件的大小
3.bfReserved1:2字節 這個是保留的, 為0
4.bfReserved2:2字節 這個也是保留的, 為0
5.bfOffBits:4字節 這個是說文件起頭到現實圖像數據之間的字節偏移量, 我理解的文件包羅四個部門, 最后一個部門為現實圖像數據, 所以這個量指的就是前三個內容的大小

淺析BMP文件格式



位圖信息頭 和 彩色表1下圖中的變量BITMAPINFO布局暗示位圖信息頭, 包羅兩個部門, 別離詮釋:
1.bmiHeader 40字節  暗示位圖文件信息頭 這個在
2進行具體詮釋
2.bmiColors 字節不定 暗示彩色表 這個在
3進行具體詮釋

淺析BMP文件格式



2下圖中暗示的就是bmiHeader 位圖信息頭的構成部門, 別離進行詮釋:
1.biSize 4字節 暗示位圖文件信息頭的大小(為40 單元是字節)
2.biWidth 4字節  暗示位圖文件的寬度(像素)
3.biHeight 4字節 暗示位圖文件的高度(像素)
4.biPlanes 2字節 不太理解, 一般為1
5.biBiCount 2字節  這個就是常說的幾位位圖, 值為1/4/8/16/24/32
6.biCompression 4字節 暗示位圖文件的壓縮體例, 默認0 暗示沒有壓縮
7.biSizeImage 4字節 暗示圖像的大小, 當沒有壓縮的時辰, 這個值可覺得0
8.biXPelsPerMeter 4字節 暗示程度分辯率
9.biYPelsPerMeter 4字節 暗示垂直分辯率
10.biCIrUsed 4字節 暗示彩色表中的顏色索引數量
11.biCIrImportant 4字節 暗示有主要影響到顏色索引數量

淺析BMP文件格式



3下圖中暗示彩色表中一個彩色快的布局, 別離進行詮釋
1.rgbBlue 1字節 藍色
2.rgbGreen 1字節 綠色
3.rgbRed 1字節 紅色
【淺析BMP文件格式】4.rgbReserved 1字節 保留位0

淺析BMP文件格式



4申明一點:

猜你喜歡