![](/img/trans.png)
[英]Is there a faster way to draw NSImage in a MacOS Cocoa swift application?
[英]Get NSImage from NSGradient with Cocoa (macOS)
我正在尋找一個擴展來從NSGradient
object 和 Swift 中的 Cocoa (macOS) 創建一個NSImage
。
這是 Swift 5 中的操作方法:
extension NSImage {
convenience init?(gradientColors: [NSColor], imageSize: NSSize) {
guard let gradient = NSGradient(colors: gradientColors) else { return nil }
let rect = NSRect(origin: CGPoint.zero, size: imageSize)
self.init(size: rect.size)
let path = NSBezierPath(rect: rect)
self.lockFocus()
gradient.draw(in: path, angle: 0.0)
self.unlockFocus()
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.