Inverter a máscara do CALayer baseada em um traçado (sem preenchimento)

Caro comunidade de estouro de pilha,

Estou com um problema relacionado à propriedade mask de umCAShapeLayer no iOS (Swift).

O que estou tentando alcançar é umaapagador que apaga partes de uma camada de imagem mascarando-a. O problema surge quando tento invertê-lo.

Encontrei boas respostas sobre a inversão de um caminho, mas estas foram úteis apenas ao usar umpreenchidas caminho. O que eu tento fazer éAcidente vascular cerebral um caminho e use o invertido para mascarar uma imagem. A largura da linha no traçado deve em torno de30.0 então parece uma borracha.

Eu tentei coisas diferentes. Minha versão atual é assim:

Crie umCAShapeLayer que mantém o caminho do apagadorColocou ofill-color da camada paranilColocou ostroke-color eline widthAdicione a camada como a máscara da camada de imagem

Isso está funcionando bem, mas apenas torna as partes da imagem visíveisque estão dentro do curso. Eu quero fazer issoinvertido. Pensei em uma máscara em preto e branco, mas isso não funciona, porque a máscara é entregue através do canal alfa.

Alguém tem uma idéia de como resolver o problema?

questionAnswers(1)

yourAnswerToTheQuestion