ジェネリックRGBカラースペースのカラーを含む文字列をSwiftのUIColorに変換しようとしています。例えば、一般的な文字列は次のようになります。SwiftのジェネリックRGBを開始
0.121569 0.129412 0.156863 1
のMacOSでのカラーピッカーを使用して、私は、これらの値は、一般的なRGB色空間を使用していることを発見しました。
はしかし、私はUIColorに、これらの値を変換しようとすると、それは、sRGB色空間を使用しています。
let red = CGFloat((components[0] as NSString).doubleValue)
let green = CGFloat((components[1] as NSString).doubleValue)
let blue = CGFloat((components[2] as NSString).doubleValue)
let alpha = CGFloat((components[3] as NSString).doubleValue)
print(UIColor(red: red, green: green, blue: blue, alpha: alpha))
// Log Result: NSCustomColorSpace sRGB IEC61966-2.1 colorspace 0.121569 0.129412 0.156863 1
したがって、私のアプリケーションには異なる色が表示されます。私はIEC61966-2.1するカラーピッカーで色空間を変更することで、これを確認し、それは確かに異なる値を表示:
私は正しいUIColor値に一般的なRGB値を変換する方法を任意のアイデア?
EDITは明確にするために、私は色空間の方法であることにより、XMLファイルに外部ソースから
正しいUIColor値を意味していますか? NSColorそれはOS Xだけです –