【发布时间】:2014-09-10 19:19:07
【问题描述】:
我在 Swift 中使用 CGImageAlphaInfo 和 CGBitmapInfo 执行按位运算时遇到问题。
特别是,我不知道如何移植这段 Objective-C 代码:
bitmapInfo &= ~kCGBitmapAlphaInfoMask;
bitmapInfo |= kCGImageAlphaNoneSkipFirst;
以下简单的 Swift 端口在最后一行产生了有点神秘的编译器错误'CGBitmapInfo' is not identical to 'Bool':
bitmapInfo &= ~CGBitmapInfo.AlphaInfoMask
bitmapInfo |= CGImageAlphaInfo.NoneSkipFirst
查看源代码我注意到CGBitmapInfo 被声明为RawOptionSetType 而CGImageAlphaInfo 不是。也许这与它有关?
有关位运算符的官方文档没有涵盖枚举,这无济于事。
【问题讨论】:
标签: swift core-graphics bit-manipulation