Riempimento di una forma con una sfumatura in CGContext
-
06-07-2019 - |
Domanda
Voglio riempire una forma poligonale che ho disegnato tramite Core Graphics con un CGGradient lineare. La funzione CGContextDrawLinearGradient disegna un gradiente da un punto all'altro, ma riempie l'intera vista. Come posso visualizzare il gradiente solo all'interno della forma poligonale che ho disegnato?
Soluzione
Puoi costruire un CGMutablePath nella forma desiderata e poi usarlo per agganciare la regione che vuoi visualizzare, qualcosa come ...
// Construct yourClipPath
CGContextAddPath(yourContext, yourClipPath);
CGContextClosePath(yourContext);
CGContextClip(yourContext);
// Draw Your Gradient
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow