CCLabelAtlas的一点技巧

做游戏经常用到自定义的数字。如果已经有了这样的图片,怎么在cocos2d里面显示出来呢?CCLabelAtlas就能胜任这个工作:
[CCLabelAtlas labelWithString:s charMapFile:filePath itemWidth:25 itemHeight:27 startCharMap:'1'];
charMapFile:存放字符的图片路径
itemWidth:图片中每个字符所占的宽度
startCharMap:图片中第一个字符的ascII值
这个类会将传入的图片“分成”指定宽高的小块,根据需要获得字符的ASCII与startCharMap指定的图中的第一个 字符的ASCII计算偏移量,取得对应的小块。这就需要图片中的字符是按照ASCII的顺序连续排列的。
因此如果图片中只有数字1~9,那很简单,在startCharMap那里传入‘1’或者49都可以,49是字符1的ASCII。因为1~9的ASCII是连续的。
如果数字中含有0呢?0的ASCII是0,如果把0放在第一个位置,那么需要把1放在第50个位置,制作这样的图片就比较麻烦。但是我们可以换个思路,把0排在9的后面。9后面的ASCII对应的字符是‘:’,当我们需要获得字符串的时候只需要将字符串中的0替换成‘:’就行了。例如1024替换成1:24。
CCLabelAtlas的一点技巧
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值