可可 – 如何创建与Photoshop UI模型中完全匹配的NSColor实例?

可可 – 如何创建与Photoshop UI模型中完全匹配的NSColor实例?,第1张

概述我的UI设计师给我在Photoshop中创建的很好的UI模型.我想要完全匹配模型中的颜色,但是每次使用-colorWithCalibratedRed:green:blue:alpha:NSColor的方法创建颜色时,颜色都不匹配. 我已经尝试从Photoshop模型中使用Pixie应用程序在/ Developer / Applications / Graphics Tools /中复制颜色,并将N 我的UI设计师给我在Photoshop中创建的很好的UI模型.我想要完全匹配模型中的颜色,但是每次使用-colorWithCalibratedRed:green:blue:Alpha:NScolor的方法创建颜色时,颜色都不匹配.

我已经尝试从Photoshop模型中使用PixIE应用程序在/ Developer / Applications / Graphics Tools /中复制颜色,并将NScolor定义复制到剪贴板,但是在构建和运行应用程序时这些颜色不正确.

如果我使用Photoshop颜色选择器提供的值,它们也不正确.

我怀疑这与我从屏幕采样校准颜色的事实有关,所以值不正确,但我不知道如何解决这个问题.

如果我使用-colorWithDeviceRed:green:blue:Alpha:并通过它看起来正确的值,然后颜色在其他系统上不一致.

有没有办法可靠地做到这一点?

@H_502_20@解决方法 没有像“纯”RGB颜色这样的东西,从一个显示到下一个显示是一致的.除非您在标准化的颜色空间中工作,否则在一个显示屏上显示颜色的数字可能会在另一个显示屏上略有不同.

让您的设计师将您的模型转换为标准色彩空间,如sRGB.然后,您可以使用NScolor上的方法,而不仅仅是组件值,而是组件所在的颜色空间;这将使您在任何显示器上看起来相似的颜色.

换句话说,使用sRGB在Photoshop中使用(R,G,B)=(1.0,1.0,1.0)制成的色样应该与使用以下颜色使用的颜色相似:

NScolorSpace *sRGB = [NScolorSpace sRGBcolorSpace];CGfloat components[3] = { 1.0,1.0 };NScolor *sRGBRed = [NScolor colorWithcolorSpace:sRGB components:&components count:3];

请注意,[NScolorSpace sRGBcolorSpace]仅适用于Mac OS X 10.5 Leopard及以上版本.如果您仍然需要在Tiger上运行,您可以编写一个运行在10.5上的实用程序应用程序,并将规范的sRGB颜色转换为校准的RGB空间:

NScolor *calibratedcolor = [sRGBRed colorUsingcolorSpacename:NSCalibratedRGBcolorSpace];

无论是使用sRGB还是校准空间,一旦有了一系列的颜色,就可以将它们放在一个NScolor@R_301_6818@中,写入一个文件,然后在运行时从应用程序的资源中加载.

总结

以上是内存溢出为你收集整理的可可 – 如何创建与Photoshop UI模型中完全匹配的NSColor实例?全部内容,希望文章能够帮你解决可可 – 如何创建与Photoshop UI模型中完全匹配的NSColor实例?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1018371.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存