一.什么是MBM?
MBM格式文件是Symbian
OS的位圖文件格式,這是一種多位圖文件。由于一個MBM文件可能包含多個位圖,所以bmconv還產生一個位圖頭文件MBG,這個頭文件提供了一個訪問位圖的ID。當從MBM文件加載一張位圖的時候,應該包括相應的頭文件,同時應當使用恰當的標識符作為加載位圖的方法的參數。
二.創建.mbm文件
MBM代表Multi-BitMaps,一個MBM文件可以包含多個具有不同色深和分辨率的BMP文件。MBM文件可以在編譯過程中自動創建,也可以使用bmconv工具手動創建。下面將分別介紹這兩種方法。
1.編譯過程中創建
需要在程序的MMP文件中添加以下內容:
start bitmap target-file
[targetpath
target-path ]
[header ]
[sourcepath source-path ]
source color-depth
source-bitmap-list
end
例如:
start bitmap sprites.mbm
header
sourcepath ..\bitmaps
source c12 ship.bmp
bullet.bmp alien.bmp
end
2.使用bmconv工具創建
輸入如下命令:
bmconv sprites.mbm /c12ship.bmp /c12bullet.bmp
/c12alien.bmp
在bmconv命令后使用/u選項,可以從MBM文件中提取BMP文件,得到的BMP文件色深都是24。也可以使用在命令后指定/v選項來顯示MBM文件的內容。
三.使用BMCONV工具加工自己的MBM 和MBG文件
如果你想更換自己應用程序的圖標,但是又不想調用系統已經生成好多那些圖片,怎么辦?就要用到BMCONV工具了。這個工具是專門用于.BMP文件和MBM,MBG
文件之間的轉換的。我們在更改我們的圖標的時候,MBM和MBG文件是必不可少的。而且也必須用到MBG文件里生成的相關枚舉值,雖然你或許能夠猜出來該枚舉值是多少,但是MBG文件還是必須的。
BMCONV應該位于...\Epoc32\tools
目錄下面。不過在哪個盤下面進行轉換操作好像并沒有什么限制(我沒有遇到過)。下面就講一下如何進行BMP文件和MBM,MBG文件之間的相互轉換。
BMP->MBM,MBG
例如已經有了名為 my.bmp,
要生成對應的mbg和mbm文件,文件名分別為每my.mbg, my.mbm 輸入命令為:bmconv /hmy.mbg my.mbm
/c12my.bmp
注意:
1.第一個MBG文件和/h
之間沒有空格,后面的都有一個空格。/c12和圖片文件名中間沒有空格。圖片文件名前面加上/c12,就是把圖片壓成12色的。BMP圖片存的時候一定要是8位的,因為別的轉換不了。
2.
一般在轉換的時候都需要一個遮掩圖片,就是像mymask.bmp。在轉換的時候加my.bmp 后面就行了。如下:
bmconv /hmy.mbg my.mbm /c12my.bmp
/c12mymask.bmp
MBM,MBG-> BMP
其實是一個逆過程,可以由相應的MBM,MBG文件還原BMP文件。
bmconv /u my.mbm my.bmp mymask.bmp
注意:/u 和后面的my.mbm之間有空格。