0
私はCGContextに描画したいオブジェクトNSImageを持っています。 は、私は、それを行うにしてください必要がありますかどのようにクリップCGContextにNSImageを描画する方法
func clip(to: CGRect, mask: CGImage)
、CGContextには、対応する方法がないことがわかったが、CGImage方法があるように思われますか?
私はCGContextに描画したいオブジェクトNSImageを持っています。 は、私は、それを行うにしてください必要がありますかどのようにクリップCGContextにNSImageを描画する方法
func clip(to: CGRect, mask: CGImage)
、CGContextには、対応する方法がないことがわかったが、CGImage方法があるように思われますか?
最も簡単な方法は、あなたのCGContext
をラップNSGraphicsContext
を作成し、それに描画するためにです:
let gc: CGContext = ...
let nsImage: NSImage = ...
let rect: CGRect = ...
let priorNsgc = NSGraphicsContext.current
defer { NSGraphicsContext.current = priorNsgc }
NSGraphicsContext.current = NSGraphicsContext(cgContext: gc, flipped: false)
nsImage.draw(in: rect)
はCIImageオブジェクトにNSImgeオブジェクトに変換します。その後、CGContextを作成することができます。 –