cocos2d-x 3.0 final 中文显示

cocos2d-x 3.0的中文显示非常easy,首先,你须要一个xml文件保存中文,还须要一个能显示中文的TTF文件


<?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>滑動手指,同样數字磁塊
合併相加,目標2048!</string>
</dict>
</plist>

如上,为什么我用的是繁体,由于官方给的是能显示繁体的TTF,那就将就用吧,官方tests样例中的繁体TTF文件为wt021.ttf


以下就是直接使用,


TTFConfig config1("fonts/wt021.ttf",20);
	auto strings = FileUtils::getInstance()->getValueMapFromFile("strings.xml");
	std::string miaoshu  = strings["miaoshu"].asString();
	auto labelts = Label::createWithTTF(config1,miaoshu,TextHAlignment::LEFT);
	labelts->setTextColor(Color4B(216,28,87,255));
	labelts->setPosition(Point(origin.x + visibleSize.width/10,origin.y + visibleSize.height/9*7));
	labelts->setAnchorPoint(Point::ZERO);
	this->addChild(labelts);

效果例如以下


看看,连换行都一并攻克了.


另一种更简洁的办法,就是使用 FileUtils::getInstance()->getStringFromFile("strings.xml");意思就是将string.xml文件里的内容当作一个超级长的字符串显示,strings.xml里面是纯文本哦,不是xml格式哦,我写strings.xml是懒换文件名称的,当然,换行什么的都在

posted @ 2014-06-19 09:12  mfrbuaa  阅读(275)  评论(0编辑  收藏  举报