cocos2d-x 为最新版。
代码如下
TTFConfig config1("fonts/simheis.ttf", 20);
auto strings = FileUtils::getInstance()->getValueMapFromFile("soul.xml");
std::string miaoshu = strings"miaoshu"].asString();
auto labelts = Label::createWithTTF(config1, miaoshu, TextHAlignment::LEFT);
labelts->setTextColor(Color4B(255, 255, 255, 255));
labelts->setPosition(Point(origin.x + visibleSize.width / 2, origin.y + visibleSize.height / 2));
labelts->setAnchorPoint(Point::ZERO);
this->addChild(labelts, 20);
simheis.ttf是从window里拷过来的。
soul.xml如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>miaoshu</key>
<string>感受感受</string>
</dict>
</plist>
后来经过测试发现,改成数字和英文也不行。
另外一种方法
auto label = LabelBMFont::create("当前位置:","res/wq.fnt");
label->setAnchorPoint(Vec2(0.5, 0.5));
label->setPosition(label->getContentSize().width, visibleSize.height - label->getContentSize().height);
this->addChild(label);
这个是自己用BMFont生成的png+fnt文件。也不行
直接
auto label = Label::createWithTTF("now 当前位置:", "fonts/simheis.ttf", 32);
更是什么都不显示。
看了下文件的编码。是“系统默认”。windows8系统。
我以为是utf8的问题。可是把所有文件都换成了utf8无bom,也是不行
跪求帮助