iOS 9.3 颜色管理/配置文件
iOS 9.3 Color Management / Profiles
我有很多应用依赖于基于点击像素的 rgb 值检查。如果我点击 returns 128/128/138 的像素,那么它会从数组中打开这个特定的东西。在 9.3 中,这不再有效,因为我返回了疯狂的颜色值。
我做了一些挖掘,发现 iOS 现在有颜色配置文件支持。我的文件根本没有关联的配置文件。好像是这个问题。
自 Retina 3 以来,每个显示器都返回了略有不同的饱和度,我不得不对其进行调整。但这揭示了一个更大的问题(至少对我而言)。
有没有办法在 iOS 9.3 中禁用颜色配置文件管理?如果是这样,也许检查一下 OS 我在做什么,然后才禁用它?或者添加一个配置文件(在 9.3 下被忽略,那么好),使它们在 9.3 上工作?
谢谢
你最好的办法是将你正在绘制的任何内容转换为屏幕(然后作为像素选择)到 CGColorSpaceCreateDeviceRGB() 返回的色彩空间。使用此色彩空间,合成系统将知道不再对您的数据进行转换。
直接来自文档:"Colors in a device-dependent color space are not transformed or otherwise modified when displayed on an output device..."。
我有很多应用依赖于基于点击像素的 rgb 值检查。如果我点击 returns 128/128/138 的像素,那么它会从数组中打开这个特定的东西。在 9.3 中,这不再有效,因为我返回了疯狂的颜色值。
我做了一些挖掘,发现 iOS 现在有颜色配置文件支持。我的文件根本没有关联的配置文件。好像是这个问题。
自 Retina 3 以来,每个显示器都返回了略有不同的饱和度,我不得不对其进行调整。但这揭示了一个更大的问题(至少对我而言)。
有没有办法在 iOS 9.3 中禁用颜色配置文件管理?如果是这样,也许检查一下 OS 我在做什么,然后才禁用它?或者添加一个配置文件(在 9.3 下被忽略,那么好),使它们在 9.3 上工作?
谢谢
你最好的办法是将你正在绘制的任何内容转换为屏幕(然后作为像素选择)到 CGColorSpaceCreateDeviceRGB() 返回的色彩空间。使用此色彩空间,合成系统将知道不再对您的数据进行转换。
直接来自文档:"Colors in a device-dependent color space are not transformed or otherwise modified when displayed on an output device..."。