中文支持的使用方式,不过可以引入其他的框


如果你想基于BitmapFont在游戏中做个聊天室的东西,那有点难度。不过可以引入其他的框架。在android中libgdx游戏其实是个view,你可以在一个linear layout中嵌入它,再嵌入一个textview和edittext,让android原生来显示中文也是种方法。

题外话,有时候使用BitmapFont缩小字体时会模糊,可以尝试这样解决

之前用libgdx做游戏就发现,有些文字显示效果就是不好。经过研究,共有一下几个问题和相应的解决办法:
1. 做的字库边缘会有其他字的像素点:这是由于Hiero做的字是一个整图片,用的时候是在里面切出来一个字的图片,但是当字过于密集,就会造成切到其它字的边缘了。所以这里做字库的时候padding加一个像素就够了。如果觉得字间距太大,可以调整fnt文件的xadvance值。
2. 做的字库在电脑上看清楚,手机上不清楚:这是由于手机分辨率有很多种,所以会对字进行缩放。其实就算是和电脑上一样的分辨率,在手机上其实也不清楚。这是因为默认是用nearest算法,这里改成linear就好了。如:bitmapFont.getRegion().getTexture().setFilter(TextureFilter.Linear, TextureFilter.Linear);
3. 用了Linear算法,有的字清楚,有的不清楚:这就是一直困扰我的问题,最后才发现,还是由于画面显示的像素问题,字所在的坐标必须是整数,这样不论是nearest还是Linear都会是最佳显示效果。

相关内容