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 zunilStellen Sie das @ estroke-color undline widthFüge die Ebene als Maske der Bildebene hinzu

Dies 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?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage