您好,登錄后才能下訂單哦!
今天用cocos studio加了一個(gè)TextBMFont控件,然后需要?jiǎng)討B(tài)修改TextBMFont控件顯示的字符串,用來(lái)顯示中文的,結(jié)果一直無(wú)法修改TextBMFont控件的值,最后原來(lái)是寫(xiě)到xml文件的中文字符串沒(méi)有保存成UTF-8格式。
=====================================================================================
記錄一下完整實(shí)現(xiàn)步驟
一、制作BMFont字體
1、下載并安裝BMFont軟件
2、因?yàn)橐玫街形淖址?,所以要進(jìn)行字體設(shè)置。選項(xiàng)->字體設(shè)置
3、設(shè)置導(dǎo)出設(shè)置,選項(xiàng)->輸出設(shè)置
4、新建txt文本,輸入所需要的字符,然后另存為UTF-8格式,否則軟件不識(shí)別
5、回到BMFont軟件,編輯->從文件中選擇字符,找到剛才保存的txt文本
6、選項(xiàng)->位圖字體另存為,這樣就生成了fnt和png格式的文件
二、新建XML文件
由于cocos2d-x直接使用會(huì)出現(xiàn)亂碼,這里我們使用將中文字符寫(xiě)到xml文件中的方法。注意文件編碼要保存為UTF-8,xml文檔格式如下
<dict> <key>hello</key> <string>你好</string> <key>world</key> <string>世界</string> </dict>
三、代碼中解析
auto m_res = CSLoader::createNode("test.csb"); if(m_res == nullptr) { return false; } addChild(m_res); ui::TextBMFont* show = dynamic_cast<ui::TextBMFont*>(chestTip->getChildByName("Show")); //創(chuàng)建詞典類實(shí)例 auto config = Dictionary::createWithContentsOfFile("Config.xml"); const char *hello = ((String*)config->objectForKey("hello"))->getCString(); show>setString(hello);
注:test.csb是在cocos studio下導(dǎo)出的文件,
需要#include "../cocos/editor-support/cocostudio/CocoStudio.h"
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。