Я замечаю странное поведение между UIColor и CGColor.
Используя этот код:
let rect = UIView(frame: CGRect(x: 0, y: 0, width: 60, height: 60))
rect.backgroundColor = UIColor(named: "bgStart")
addSubview(rect)
Я получаю цвет, который хотел и создал в активы (251,16,78 | sRGB).
Но с CoreGraphics я получить немного другой цвет, как вы можете видеть на картинке. (Я использую CGGradient, потому что он должен быть градиентным в будущем, когда я смогу получить правильный цвет).
let context = UIGraphicsGetCurrentContext()!
let gradient = CGGradient(colorsSpace: nil, colors: [UIColor(named: "bgStart")!.cgColor,UIColor(named: "bgStart")!.cgColor] as CFArray, locations: [0, 1])!
let rectangle = UIBezierPath(rect: rect)
context.saveGState()
rectangle.addClip()
context.drawLinearGradient(gradient, start: CGPoint(x: rect.size.width, y: 0), end: CGPoint(x: rect.size.width, y: rect.size.height), options: [])
context.restoreGState()