1. 程式人生 > >cocos2d-x 使用點陣圖工具BMFont自定義字型 fnt

cocos2d-x 使用點陣圖工具BMFont自定義字型 fnt

[原文地址:http://blog.csdn.net/qiurisuixiang/article/details/8984288]

1 在看別人的程式碼的時候,有時候會發現.fnt檔案,這個檔案是如何產生的呢,其實是使用點陣圖處理工具生成的

3 安裝後,開啟BMFont,介面如下,右邊的列表是字型庫


4 新建一個txt檔案,輸入要用到的文字(一定要儲存為UTF-8格式,否則軟體無法識別


5 在BMFont上找到Edit選單,然後選擇Selects chars from file,載入剛才新建的txt檔案,你會發現剛才輸入的字元在BMFont中已經被選中。

6 在BMFont上找到Option選單,然後選擇Font Setting設定字型,然後設定其中的Font(字型可以按需求隨便選擇)和Charset(預設的Unicode就可以)


7 設定匯出選項,在BMFont上找到Option選單,然後選擇Export options,在cocos2d-x中需要按如下設定


8 準備匯出字型,在BMFont上找到Options,然後選擇Save bitmap font as,會發現儲存路徑下多出了一個fnt檔案和一個png檔案(其實這個和plist檔案儲存拼圖資訊原理差不多),將它們拷貝到cocos2d-x工程的Resources目錄下

9 使用方法如下

[cpp] view plaincopyprint?
  1. /** 使用字型點陣圖 **/
  2. //建立點陣圖 第一個引數要和在BMFont中載入的文字中存在的
  3. CCLabelBMFont *label = CCLabelBMFont::create("I am hahaya."
    "info.fnt");  
  4. label->setPosition(ccp(size.width / 2, size.height - 50));  
  5. this->addChild(label, 1);  

10 程式執行效果


11 在使用BMFont生成中文時需要注意,在Font Setting中設定Font時,Font要設定成中文的(比如微軟雅黑),Charset預設Unicode就行,同樣按照以前相同的方式設定Export options。然後再將寫有中文的文字檔案載入,最後儲存。

12 使用中文點陣圖程式碼如下