Implicit conversion from enum type 'enum CGImageAlphaInfo' to another enumeration type 'CGBitmapinfo' (aka) 'enum CGBitmapInfo')

I am converting an old iOS 5 project to iOS6.0 on xCode5, and most of the warnings and errors have been fixed, but for this. any suggestions on how to rewrite the code to avoid error warnings.

#define kBitsPerComponent 8 #define kBitmapInfo kCGImageAlphaPremultipliedLast - (UIImage*)scaleToSize:(CGSize)size :(UIImage *)image { CGBitmapInfo bitmapInfo = kBitmapInfo; size_t bytesPerRow = size.width * 4.0; CGColorSpaceRef colorSpace = CGColorSpaceCreateDeviceRGB(); CGContextRef context = CGBitmapContextCreate(NULL, size.width, size.height, kBitsPerComponent, bytesPerRow, colorSpace, bitmapInfo); CGRect rect = CGRectMake(0.0f, 0.0f, size.width, size.height); CGContextDrawImage(context, rect, image.CGImage); CGImageRef scaledImageRef = CGBitmapContextCreateImage(context); UIImage* scaledImage = [UIImage imageWithCGImage:scaledImageRef]; CGImageRelease(scaledImageRef); CGContextRelease(context); CGColorSpaceRelease(colorSpace); return scaledImage; } 

the code gives a warning Implicit conversion from enumeration type 'enum CGImageAlphaInfo' to another enumeration type 'CGBitmapinfo' (aka) 'enum CGBitmapInfo')

would be very grateful if someone could help in how to change the code.

+43
enums ios core-graphics
Sep 20 '13 at 16:36
source share
1 answer

From the docs:

Constants for specifying alpha channel information are declared with the CGImageAlphaInfo type, but can be safely passed to this parameter.

So, you can simply use the throw to suppress the warning:

 CGBitmapInfo bitmapInfo = (CGBitmapInfo) kBitmapInfo; 
+116
Sep 20 '13 at 16:45
source share



All Articles