测试显示 中文或者 其它平台已经判断显示的 可以借用这偷懒的方法
在cocos-x 3.2,vs2012 环境中运行的
inline std::string WideByte2UTF8(const wstring& text) { int asciisize = ::WideCharToMultiByte(CP_UTF8,text.c_str(),text.size(),NULL,NULL); if (asciisize == ERROR_NO_UNICODE_TRANSLATION || asciisize == 0) { return string(); } char* resultstring = new char[asciisize]; int convresult = ::WideCharToMultiByte(CP_UTF8,resultstring,asciisize,NULL); if (convresult != asciisize) { return string(); } std::string buffer(resultstring,convresult); delete[] resultstring; return buffer; }
在cpp中调用
std::string str = ""; str = WideByte2UTF8(L"你好世界"); Label* label = Label::createWithSystemFont(str.c_str(),"Arial",20); label->setColor(Color3B::RED); label->setPosition(200,200); this->addChild(label);原文链接:https://www.f2er.com/cocos2dx/343823.html