How create UIImage from bytes?

2019-07-17 05:55发布

问题:

I need in UIImage created from my colors (for example, i need in image 1x1 pixel with black color).

I've got array:

unsigned char *color[] = {0, 0, 0, 1};

How can i create UIImage from this array ?

I've try

 unsigned char *bytes[4] = {0,0,0,1};
 NSData *data = [NSData dataWithBytes:bytes length:4];
 UIImage *img = [UIImage imageWithData:data];

but this method has no result...

回答1:

You'll want to create a bitmap context (using CGBitmapContextCreate()), and draw into that. This requires using CoreGraphics. Then take your context and use CGBitmapContextCreateImage() to create an CGImageRef out of it. Finally, use +[UIImage imageWithCGImage:] to convert that CGImageRef to a UIImage.



回答2:

Thank you, all!

This is solved my problem.

http://www.iphonedevsdk.com/forum/iphone-sdk-development/23525-cgimagecreate-alpha.html