Ios ARGB映像的CGContext.init返回nil

Ios ARGB映像的CGContext.init返回nil,ios,swift,bitmap,cgcontext,cgimage,Ios,Swift,Bitmap,Cgcontext,Cgimage,我正在尝试创建一个CGContext,并用ARGB格式的像素数组填充它。我已经成功地创建了像素阵列,但是当我尝试使用CGColorSpaceCreateDeviceRGB和CGImageAlphaInfo创建CGContext时,它首先返回nil func generateBitMapage8bit()->CGImage{ let width=params[0] 让高度=参数[1] 让bitmapBytesPerRow=宽度*4 let context=CGContext(数据:nil, 宽度:

我正在尝试创建一个CGContext,并用ARGB格式的像素数组填充它。我已经成功地创建了像素阵列,但是当我尝试使用CGColorSpaceCreateDeviceRGB和CGImageAlphaInfo创建CGContext时,它首先返回nil

func generateBitMapage8bit()->CGImage{
let width=params[0]
让高度=参数[1]
让bitmapBytesPerRow=宽度*4
let context=CGContext(数据:nil,
宽度:宽度,
高度:高度,,
比特组件:8,
bytesPerRow:bitmapBytesPerRow,
空格:CGColorSpaceCreateDeviceRGB(),//请参阅

似乎您使用了不正确的配置(CGImageAlphaInfo.first)。对于8位组件和RGB颜色空间,您只有以下有效的alpha选项:

  • KCGIMAGEALPHANEONSKIPFIRST
  • kCGImageAlphaNoneSkipLast
  • KCGIMAGEAlphaPremultipledFirst
  • KCGIMAGEAlphaPremultipledLast
您还可以尝试在方案中设置CGBITMAP\u CONTEXT\u LOG\u ERRORS环境变量,以在运行时获取更多信息