有人能告诉我为什么这个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/