UIViewをマスクするためのコンテンツとして画像を使用するCALayerを使用しようとしています。マスクのために私は複雑なpng画像を持っています。私がview.layer.maskとしてイメージを適用すると、私は自分が望むものとは逆の振る舞いをします。 CAlayerを元に戻す方法はありますか?私はCALayerのを逆にすることができます逆CAShapeLayersと変更可能なパス、何も上のいくつかの記事を見てきましたCALayerマスクを逆にする
layerMask = CALayer()
guard let layerMask = layerMask else { return }
layerMask.contents = #imageLiteral(resourceName: "mask").cgImage
view.layer.mask = layerMask
// What I would like to to is
view.layer.mask = layerMask.inverse. // <---
:ここに私のコードです。 私ができることは、Photoshopで画像を反転させてアルファを反転させることですが、その問題はすべての画面サイズに合わせて正確なサイズの画像を作成できないことです。私はそれが理にかなってほしいと思う。
「私はそれが意味をなさないことを願っています。それはしません。最初の場所でマスク画像を「後ろ向きに」描いたということです。まあ、それはばかげていた。マスク画像を正しく描画して、始めてみませんか? – matt
その問題は、キーウィンドウの中央にマスクのサイズが固定されていることです。私がPhotoshopで「正しい」マスクを描くと、マスクがすべての画面サイズで動作することは決してありません。だから私は私のメインロゴからステンシルする必要があるマスクとして私の会社のロゴを使用して – arvidurs
いいえ、私は従いません。 _your_ maskではじまり、_correct_ maskで始めるとうまくいけないのはなぜですか? – matt