有人能告诉我为什么这个colorUsingColorSpaceName返回nil吗?例如,下面的代码块将打印“devicecolor is nill”:

NSColor *color = [NSColor windowBackgroundColor];
NSColor *deviceColor = [color colorUsingColorSpaceName: NSDeviceRGBColorSpace];
if(deviceColor == nil) NSLog(@"deviceColor is nill");

如何在NSColor中转换NSNamedColorSpace?我需要能够得到颜色组件,这样我就可以将NSColor转换为CGColorRef

最佳答案

用rgb值来表示太复杂了。它是一个单独的对象,当窗口处于活动状态与非活动状态时,其绘制方式不同。在某些情况下,它也是一种图案颜色(即平铺图像),而不是平面填充。

关于objective-c - 无法将NSNamedColorSpace转换为NSDeviceRGBColorSpace?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2687505/

10-09 13:01