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