2017-05-16 13 views
1

我無法精確地用Swift爲我的iOS應用渲染顏色。用Swift和iOS顯示正確的顏色

我定義的顏色RGB使用本網站Coolors(82,165,234),所以我用ColorSync實用工具來接它,它告訴我,這是sRGB的(98,181,238)。

我定義夫特的顏色:

let BlueColour = UIColor(red: 98.0/255.0, green: 181.0/255.0, blue:238.0/255.0, alpha: 1); 

然而,當我在模擬器中運行該應用程序,該視圖是藍色的不同色調。當我使用ColorSync Utility選取視圖的顏色時,它會告訴我,我的視圖的顏色是sRGB(72,179,241)。

我可以看到模擬器中的顏色與我在Coolors中選擇的顏色不同。

BlueColour.cgColor是:

[<CGColorSpace 0x170027bc0> (kCGColorSpaceICCBased; kCGColorSpaceModelRGB; sRGB IEC61966-2.1; extended range)] (0.384314 0.709804 0.933333 1) 

我怎麼能保證我準確地呈現我想要的顏色?

+1

我相信你所談論的色彩空間,這是比UIColor更深的級別。看看CGColor。 – dfd

+0

我已經將BlueColour.cgColor添加到我的問題 - 它說色彩空間是sRGB;這有幫助嗎? –

回答

2

嘗試使用「數字色彩照度計的效用與價值一樣發起的UIColor(),即的UIColor(displayP3Red:綠:藍:阿爾法:)

+1

謝謝!這會獲得正確的sRGB值,現在模擬器中的顏色是相同的。我不確定爲什麼ColorSync Utility顯示不同的值。 –