В cocos2d я не могу использовать какой-то метод, например UIGraphicsGetCurrentContext
, поэтому я делаю это следующим образом:
memset(textData, 0, sW*sH*4);
CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB();
CGContextRef context = CGBitmapContextCreate(textData, sW, sH, 8, sW*4, colorSpace, kCGImageAlphaPremultipliedLast | kCGBitmapByteOrder32Big);
CGColorSpaceRelease( colorSpace );
CGContextSetRGBFillColor(context, 1, 1, 1, 1);
CGContextTranslateCTM(context, 0.0f, sH);
CGContextScaleCTM(context, 1.0f, -1.0f);
UIGraphicsPushContext(context);
NSString* sstr = [NSString stringWithCString:(const char*)str encoding:NSUnicodeStringEncoding];//its right
UIFont* font = [UIFont fontWithName:@"arial" size:12];
[sstr drawInRect:CGRectMake(x, sH-y,100,100) withFont:font lineBreakMode:UILineBreakModeWordWrap alignment:UITextAlignmentCenter];
UIGraphicsPopContext();
CGContextRelease(context);
Когда я отлаживаю и точка останова на UIGraphicsPopContext
, содержимое textData
всегда ноль в памяти, кто-нибудь, помогите мне.context
и textData
не ноль.