Skip to content

Instantly share code, notes, and snippets.

@lucaswkuipers
Created January 19, 2024 17:52
Show Gist options
  • Save lucaswkuipers/278af5d2afb4c46ed3eeb1f2b9d2cc22 to your computer and use it in GitHub Desktop.
Save lucaswkuipers/278af5d2afb4c46ed3eeb1f2b9d2cc22 to your computer and use it in GitHub Desktop.
RGBA components from SwiftUI.Color
import SwiftUI
#if canImport(UIKit)
typealias PlatformColor = UIColor
#elseif canImport(AppKit)
typealias PlatformColor = NSColor
#endif
extension Color {
var rgba: (red: Double, green: Double, blue: Double, alpha: Double) {
var red = CGFloat()
var green = CGFloat()
var blue = CGFloat()
var alpha = CGFloat()
PlatformColor(self)
#if canImport(AppKit)
.usingColorSpace(.sRGB)!
#endif
.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
return (red: red, green: green, blue: blue, alpha: alpha)
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment