Question

Je souhaite remplir une forme de polygone que j'ai dessinée via Core Graphics avec un CGGradient linéaire. La fonction CGContextDrawLinearGradient dessine un dégradé d'un point à un autre, mais remplit la totalité de la vue. Comment puis-je afficher le dégradé uniquement à l'intérieur de la forme de polygone que j'ai dessinée?

Était-ce utile?

La solution

Vous pouvez construire un CGMutablePath dans la forme de votre choix, puis l'utiliser pour clipser la région que vous souhaitez afficher, par exemple ...

// Construct yourClipPath

CGContextAddPath(yourContext, yourClipPath);
CGContextClosePath(yourContext);
CGContextClip(yourContext);

// Draw Your Gradient
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top