fonts文件夹里是华文仿宋字体,而且名称改成了“hwfs.ttf"
vs2013文件高级保存选项也改成了utf-8
TTFConfig ttfConfig(“fonts/hwfs.ttf”, 28);
auto label = Label::createWithTTF(ttfConfig, “你好中国”, TextHAlignment::CENTER, visibleSize.width);
无法显示,将你好中国改成纯英文可以,混搭也不行,求解。百度了一下午,问题都没解决
fonts文件夹里是华文仿宋字体,而且名称改成了“hwfs.ttf"
vs2013文件高级保存选项也改成了utf-8
TTFConfig ttfConfig(“fonts/hwfs.ttf”, 28);
auto label = Label::createWithTTF(ttfConfig, “你好中国”, TextHAlignment::CENTER, visibleSize.width);
无法显示,将你好中国改成纯英文可以,混搭也不行,求解。百度了一下午,问题都没解决
使用geojson或者xml加载中文,直接加载都会出现各种问题
就是json加载的
win下得中文显示确实很麻烦,之前用过字符编码的转化,还得使用第三方库。后来又用到了XML文件感觉这个东西还好一些,比较省事。你创建一个文件类似这样。
<?xml version="1.0" encoding="UTF-8"?> loading 加载中... 然后用Dictionary加载文件,从里边取值就好。其他的方法我没试过,不过感觉这种方法还是不错的,你试试。谢了,从昨天开始搞这个中文,用了各种方法,好不容易win下成功,移植到android又失败了。
版主帮看下这个问题std::string name = datas"name"].asString(); 这个name是从json里读取的。
TTFConfig ttfConfigname(“fonts/hwls.ttf”, 32);
auto nameLab = Label::createWithTTF(ttfConfigname, name.c_str(), TextHAlignment::CENTER, bgSize.width);
这种方法不显示中文,但是下面这种显示中文
Label* nameLab =Label::create(name.c_str(),“Arial”, 32);
这什么原因,想用label的新方法啊
底下的方法是调用系统的方法创建的,各个平台下得实现都不一样,没有字体会用系统的默认字体文件显示。第一种方法要求必须字体文件中包含你要显示的字符,你又要显示中文,编码又要对,所以你才保存到json中然后读取。你看下你的json文件的保存格式是什么,要将字符编码改成UTF-8。
json是utf8为编码格式,这个没问题。hwls.ttf是用的华文隶书。应该也没问题啊。但是读取json还是无法显示中文
读出来的东西打印一下看看是什么,自己调试一下,可以试试从XML中读取,冲json中读取我不知道你的方法对不对啊。
谢谢了,我用的rapidjson做的,
可以使用libiconv扩展库, 对中文支持也很不错
告诉你正解吧
英文软件cocos2dx处理的是ASSIC编码,也就是单个字母的单字节,不支持中文这种双字节的宽字符
中文是unicode编码,cocos2dx不支持。
用图片吧
直接用汉字图片
或者用第三方先把汉字渲染成图片然后再用
用xcode 放弃vs吧
用配置文件哪有这么多问题啊?我WINDOWS和安卓都可以显示中文