要修改框架lib目錄裏的 CCImage.mm,就是把浮點值取了個整,以前的浮點形致使繪製失敗:ios
在_initWithString這個方法裏把以下代碼替換一下就好了:git
1 ///////////////////////////////////////////////////////// 2 ///////////////////////////////////////////////////////// 3 // for CCLabelTTF can not show text in ios7 4 /* 5 unsigned char* data = new unsigned char[(int)(dim.width * dim.height * 4)]; 6 memset(data, 0, (int)(dim.width * dim.height * 4)); 7 8 // draw text 9 CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); 10 CGContextRef context = CGBitmapContextCreate(data, dim.width, dim.height, 8, dim.width * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big); 11 */ 12 13 const int _width = dim.width; 14 const int _height = dim.height; 15 16 unsigned char* data = new unsigned char[(int)(dim.width * dim.height * 4)]; 17 memset(data, 0, (int)(_width * _height * 4)); 18 19 // draw text 20 CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); 21 CGContextRef context = 22 CGBitmapContextCreate(data, _width, _height, 8, _width * 4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big); 23 24 ///////////////////////////////////////////////////////// 25 /////////////////////////////////////////////////////////
參考:github
http://www.cocoachina.com/ask/questions/show/92695框架
https://github.com/ricardoquesada/cocos2d-x/commit/e652423639d1d83396af2a331d4edae2af153063spa