为用户高亮颜色的NSColor将是控制颜色 selectedControlColor
据我所知,您首先必须将selectedControlColor转换为已知的颜色空间,因为它不是基于NSNamedColorSpace.
NSNamedColorSpace =目录名称和颜色名称组件此颜色空间的组件是准备颜色的列表或目录的索引.命名颜色的目录带有查找表,能够在给定设备上生成正确的颜色.
通常,建议您使用校准(或通用)颜色空间而不是设备颜色空间.设备颜色空间中的颜色可以在不同设备之间变化很大,而校准颜色空间通常会产生相当准确的颜色.另一方面,设备颜色空间在某些情况下可能会产生更好的性能,因此如果您确定要渲染或捕获颜色的设备,请使用设备颜色空间.
一个代码示例
NSColor *aColor = [[NSColor selectedControlColor] colorUsingColorSpaceName:NSCalibratedRGBColorSpace];
if (aColor) {
NSLog(@" Red %f, Green %f, Blue %f, Alpha %f,", aColor.redComponent,aColor.greenComponent,aColor.blueComponent,aColor.alphaComponent);
}
Run Code Online (Sandbox Code Playgroud)
请参阅" 颜色编程主题"中的 " 创建和转换颜色空间"部分
这将让您更多地了解这是如何工作的,并找出颜色有多少组件.
| 归档时间: |
|
| 查看次数: |
1278 次 |
| 最近记录: |