2.0.4 CCLabelTTF在ios7下不显示的问题
要修改框架lib目录里的 CCImage.mm,就是把浮点值取了个整,之前的浮点形导致绘制失败:
在_initWithString这个方法里把如下代码替换一下就行了:
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 /////////////////////////////////////////////////////////
参考:
http://www.cocoachina.com/ask/questions/show/92695
https://github.com/ricardoquesada/cocos2d-x/commit/e652423639d1d83396af2a331d4edae2af153063
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步