问题
最近在Laya项目中处理多语言的情况下,发现印度语显示会出现乱码
如上图所示,印度语显示中出现了虚线圈,并且无法居中。
原因
WebGL渲染文字时启用了字符缓存,对于字形随字母组合变化的语种,即字形多的语种,如阿拉伯语,印度语,启用字符缓存,将导致显示错误,因此在显示阿拉伯语,印度语等字形多的语种,需禁用字符缓存。
解决
在laya.core.js文件中,找到下列语句
Text.CharacterCache=true;
修改成:
Text.CharacterCache=false;
改完之后,显示正常: