首页 文章

匹配AppKit和SpriteKit颜色

提问于
浏览
9

我正在为macOS构建一个小型实用程序应用程序,它将SpriteKit与AppKit结合在一起 . 具体来说,我使用SKView作为应用程序窗口的“背景”(主要用于SpriteKit中更容易的特定类型的动画) . 我也在改变Window的background属性的颜色来调整 Headers 栏颜色 . 在绿色和红色之间切换 .

我遇到的问题是AppKit和SpriteKit之间的颜色匹配 . 简而言之,它们并不匹配 . 正如您在图像中看到的那样, Headers 栏与SKView略有不同 .

enter image description here

经过一段时间的游戏后,我发现SKView中的背景颜色位于“设备RGB颜色空间”中,窗口颜色位于“sRGB IEC61966-2.1颜色空间”中 . 我将AppKit颜色更改为设备RGB,颜色仍然不匹配 .

我正在使用常规的旧NSColor初始化程序创建颜色 .

我不确定你是否可以改变颜色的颜色空间 . Window和SKView上的backgroundColor属性是只读的 .

有任何想法吗?

1 回答

  • 1

    如果我正确读你想要做的是匹配颜色你不能只做像_3025212这样的东西,应该把它们设置为相等

    我的第二个问题是你需要它们匹配吗?大多数时候人们都不会注意到,如果他们注意到他们真的不在乎

    这里还有一些关于转换的数据RGB to sRGB

相关问题