NSBezierPath
丸みを帯びた画像を作成し、グラフィックスコンテキストのクリッピング領域に追加することで、カスタムビューの中央に丸みを帯びた画像を描画しています。これはうまく機能していますが、ビューの背景(丸みを帯びた中央の画像の外側の領域)を描画するパフォーマンスを向上させることができるかどうか疑問に思っていますが、このクリップを反転して背景描画(NSGradient
塗りつぶし)を実行します。
クリップパスを反転する方法を誰かが提案できますか?
NSBezierPath
丸みを帯びた画像を作成し、グラフィックスコンテキストのクリッピング領域に追加することで、カスタムビューの中央に丸みを帯びた画像を描画しています。これはうまく機能していますが、ビューの背景(丸みを帯びた中央の画像の外側の領域)を描画するパフォーマンスを向上させることができるかどうか疑問に思っていますが、このクリップを反転して背景描画(NSGradient
塗りつぶし)を実行します。
クリップパスを反転する方法を誰かが提案できますか?
これを行っても背景の描画性能は向上しません。どちらかといえば、より複雑なクリッピング パスを使用すると、描画が遅くなります。
背景を再描画する大きなオーバーヘッドなしで背景の上にオブジェクトを描画したい場合は、この質問への回答で説明したように、コア アニメーション レイヤーを使用できます。