如何解决CGImageCreate: 无效的图像 alphaInfo
我收到一个奇怪的错误,我无法指出是代码的哪一部分导致了它。
运行使用相机图像检测条形码的 iOS 应用时,出现以下错误:
2020-12-27 23:58:53.674730+0100 MYAPP[11942:4109474] [Unknown process name] CGImageCreate: invalid image alphaInfo: kCGImageAlphaNone. It should be kCGImageAlphaNoneSkipLast
我不知道这是从哪里触发的。有人可以帮忙吗?
到目前为止我已经尝试过:
-
添加带有
NSLog
的符号调试器,假设这是一个日志输出,但调试器没有捕获它。 -
由于错误提到图像没有正确的 alphaInfo,我尝试在 UIImage 被修改的所有地方添加一个 alpha(它被修改以进行裁剪和旋转)
还有什么我应该尝试的吗?
P.S.:该应用程序是使用 Cordova 的混合应用程序,之前使用 XCode < 12
编译并在 iOS < 14
上运行时未出现此错误。
P.P.S.:我对 iOS/objective-c 很陌生。如果需要,我可以提供更多日志。
解决方法
如果您创建 CGImage
对象,请尝试将 bitmapInfo
赋予 CGImage
初始值设定项。
let bitmapInfo = CGBitmapInfo(rawValue: CGImageAlphaInfo.noneSkipLast.rawValue)
let cgImage = CGImage(
width: width,height: height,bitsPerComponent: bitsPerComponent,bitsPerPixel: bitsPerPixel,bytesPerRow: bytesPerRow,space: colorSpace,bitmapInfo: bitmapInfo,provider: provider,decode: nil,shouldInterpolate: true,intent: CGColorRenderingIntent.defaultIntent
)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。