2013-03-18 76 views
5

我修改了标准的例子的 “Hello World”:cocos2d。正确混合?

 CCSprite *sprite = [CCSprite spriteWithFile:@"Untitled-1.png"]; 
     CGSize winSize = [CCDirector sharedDirector].winSize; 
     sprite.position = ccp(winSize.width/2, winSize.height/2); 
     [label setBlendFunc:(ccBlendFunc){GL_ZERO, GL_SRC_ALPHA}]; 
     [label setColor:ccBLACK]; 
     [sprite addChild:label]; 
     [self addChild:sprite]; 

我:

image enter image description here

如何删除/切割背景围绕 “Hello World” 的标签?

+0

你想达到什么目的?与{GL_ZERO,GL_SRC_ALPHA}你乘以源alpha的背景颜色,并且根本不绘制源颜色,这导致源颜色为0的黑色和源为不透明的背景颜色。 – Kreiri 2013-03-19 09:27:06

+2

我想得到一个渐变字体,我不能让自己购买像字形编辑器这样的东西。 – user2083364 2013-03-28 16:38:13

回答

3

我目前的解决方案是初始化CCLabelTTF是这样的:

CCLabelTTF *label = [CCLabelTTF labelWithString:@"Hello World" fontName:@"Marker Felt" fontSize:64 dimensions:size hAlignment:kCCTextAlignmentCenter vAlignment:kCCVerticalTextAlignmentCenter]; 

其中尺寸为[CCDirector sharedDirector] .winSize我examle。

欢迎任何其他建议

+0

此解决方案仅适用于2层,但会擦除第三层和其他层。这意味着标签周围的区域是黑色的,不透明 – user2083364 2013-06-12 06:52:27