Quiero agregar una sombra alrededor del borde EXTERIOR de un CGPath HUECO (esas dos palabras son críticas: afuera + hueco :)).Sombreado de sombras creadas por CALayer.shadow
La implementación de la sombra de Apple solo le permite hacer sombras "llenas".
Entonces ... ¿cómo cortar la parte interior de la sombra? Si fuera una llamada de render, llamaría a los métodos CGContextSetClip * para que se recorten donde yo quisiera ... pero no veo cómo llegar, ya que no es una llamada de renderización, ni un CALayer en sí mismo. .
(una consecuencia desafortunada de Apple "ocultar" como un conjunto de variables de magia, supongo?)
NB: este es el IOS única - IIRC en Mac tiene acceso directo a los filtros utilizados para crear sombras , para que pueda crear sus propias sombras (arbitrarias) a mano.
ACTUALIZACIÓN:
trabajé encontrar la manera de clip para mostrar sólo la parte interior de la sombra: establecer el "layer.mask", al ser una capa nueva que es un clon de la capa actual (es decir, la misma ruta), y establece el camino fillcolor a cualquier cosa con alfa completo.
Esto es lo contrario de lo que estoy intentando, así que si pudiera encontrar una manera de hacer que la capa de máscara voltee alfa (0 se convierte en 1, 1 se convierte en 0), estaría allí ...
Intenté esto, pero no pasó nada a mi capa, y no definiste 'shadowBorderWidth'. ¿Qué significa? –
He cambiado el código. No sé si funcionará, probablemente sí. Si no funciona para ti, tienes MUCHA depuraciones que hacer: tu método cloneShapeLayer, tu regla de enrollamiento en tu CGPath, tu CGPath original, etc ... esto depende mucho de TU código fuente y TUS datos de tu imagen - No puedo depurar eso por ti. – Adam
Gracias, intentaré esto :) –