CGBitmapContextCreate错误与swift

前端之家收集整理的这篇文章主要介绍了CGBitmapContextCreate错误与swift前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图在swift中创建一个CGContext。它编译,但在运行时抛出错误
let colorSpace:CGColorSpace = CGColorSpaceCreateDeviceRGB()
let context:CGContext = CGBitmapContextCreate(nil,20,8,colorSpace,CGBitmapInfo.AlphaInfoMask)
CGColorSpaceRelease(colorSpace);

....

错误是:

Error: CGBitmapContextCreate: unsupported parameter combination: 8 integer bits/component; 32 bits/pixel; 3-component color space; unrecognized; 96 bytes/row.
fatal error: Can't unwrap Optional.None
为了防止有人遇到同样的问题。下面的代码片段终于奏效了。
let colorSpace:CGColorSpace = CGColorSpaceCreateDeviceRGB()
let bitmapInfo = CGBitmapInfo(CGImageAlphaInfo.PremultipliedLast.rawValue)
let context = CGBitmapContextCreate(nil,UInt(rect.size.width),UInt(rect.size.height),bitmapInfo)

它在swift中生成一个32位RGBA上下文

猜你在找的Swift相关文章