前面都用到了".fnt"檔案,但是沒講述".fnt"是怎麼產生的怎麼用的...
今天就將這個非常有用的位元影像處理工具,來回答上面的問題...
1、:http://www.angelcode.com/products/bmfont/
2、建立一個txt檔案,然後輸入你用到的文字,儲存為UTF-8編碼的txt,這軟體可能不支援別的編碼匯入。
上面是我的輸入內容
3、認識Bitmap Font generator介面:
這是我們預設開啟的樣子,右邊的列表是我的字型庫,各種不同的字型,中間的就是單獨的字型塊(注意:為了符號等輸入,請勾選右邊列表的第一項Latin+Latin Supplement)
①Edit->select char from file 選擇剛剛建立的Bitmap.txt檔案,匯入進來就會發現,剛內容中的字元,在這個軟體裡面,對應的字塊被選中了
②Options->Font Setting :Font 隨便你自己選中,charset選中預設Unicode就行了
③Options->Export Options:
注意框出的地方,這是cocos2dx,如果使用其他引擎,請按照對應的引擎設定
④Options->save bitmap font as..
然後輸入匯出的檔案名稱bitmap,檔案類型預設選.fnt,然後就會發現匯出路徑多了一個bitmap.png的檔案,那就是圖片資源
4、代碼使用:
CCSize s = CCDirector::sharedDirector()->getWinSize();//注意:輸入圖庫裡面有的文字
CCLabelBMFont* label = CCLabelBMFont::create("oh!I use bitmap succeed! ","fonts/bitmap.fnt");
CCMenuItemLabel* item = CCMenuItemLabel::create(label,this, menu_selector(MenuTestLayer::menuCallbackConfig));
item->setPosition(ccp(s.width/2, s.height/2));
layer->addChild(item);
5、運行效果:
6.中文字型輸入
先設定字型為中文 Options->Font Setting :Font 隨便你自己選中(中文),儲存時charset選中默Unicode就行