Invert CALayer-Maske, die auf einem Strich basiert (keine Füllung)
Liebe Stapelüberlauf-Community,
Ich habe ein Problem mit der Maskeneigenschaft einesCAShapeLayer
unter iOS (Swift).
as ich versuche zu erreichen, ist einRadiergumm löscht Teile einer Bildebene durch Maskieren. Das Problem tritt auf, wenn ich versuche, es zu invertieren.
Ich habe einige gute Antworten zum Umkehren eines Pfades gefunden, aber diese waren nur nützlich, wenn ein @ verwendet wurdgefüll Pfad. Was ich versuche zu tun, istSchlaganfal ein Pfad und verwenden Sie den umgekehrten Pfad, um ein Bild zu maskieren. Die Linienbreite auf dem Strich sollte um @ liege30.0
so sieht es aus wie ein Radiergummi.
Ich habe verschiedene Dinge ausprobiert. Meine aktuelle Version sieht so aus:
Ein ... kreierenCAShapeLayer
welches den Weg des Radiergummis enthältStellen Sie das @ efill-color
der Ebene zunil
Stellen Sie das @ estroke-color
undline width
Füge die Ebene als Maske der Bildebene hinzuDies funktioniert gut, aber es macht nur die Teile des Bildes sichtbardas sind innerhalb des Strichs. Ich will es machenrückgängig gemach. Ich dachte an eine Schwarz-Weiß-Maske, aber das funktioniert nicht, weil die Maske über den Alphakanal geliefert wird.
Hat jemand eine Idee, wie man das Problem löst?