在quick-cocos2d-x中,当我们在拉伸图片的时候,往往使用setScale,但是这样拉伸往往使图片在边角显得有些模糊,那我们就可以使用CCScale9Sprite来进行图片的放大拉伸。
这里我找了一张示例图片a.png,是我自己随手画的一张png图片。用setScale大家都会对其进行拉伸,下面我就贴出自己的CCScale9Sprite的代码:
<span style="white-space:pre"> </span>local b = display.newSprite("a.png") local size = b:getContentSize() --获取图片的总尺寸 local rect = CCRectMake(0,size.width,size.height) --获取CCScale9Sprite这种方式居中显示的区域尺寸(一共分成九个区域,这里指的是正中央的最大的那个区域~) local purpose = CCRectMake(30,30,size.width - 30*2,size.height - 30*2) local a = CCScale9Sprite:create("a.png",rect,purpose) --设置最终图片显示的尺寸 a:setContentSize(CCSizeMake(200,200)) a:setPosition(display.cx,display.cy) self:addChild(a)
而setScale的效果我们肯定已经得到过了~
由此可见,两者对图片拉伸是不同的~
ps:我的测试环境是 2.2.5
github:https://github.com/Froyo91/Froyo91-quick-cocos2d-x-CCScale9Sprite
原文链接:/cocos2dx/345194.html