1 votes

Comment peindre un cercle transparent comme utiliser CGContextClearRect pour dessiner un rectangle transparent ?

Quelqu'un sait-il comment je peux dessiner un cercle transparent sur un CALayer tout comme j'utilise CGContextClearRect pour dessiner un rectangle transparent ? Mon besoin est de dessiner un masque sur une image, dans certains cas, je dois l'effacer, mais CGContextClearRect ne permet que de dessiner un rectangle, je me demande s'il existe un autre moyen de faire la même chose et de dessiner un cercle transparent.

Regards, Anto

3voto

David Kanarek Points 8816

Le commentaire de Shreekara est légèrement décalé. Utilisez AddArc au lieu de StrokeEllipse :

CGRect cirleRect = CGRectMake(0, 0, 100, 100); 
CGContextAddArc(context, 50, 50, 50, 0.0, 2*M_PI, 0);
CGContextClip(context); 
CGContextClearRect(context,cirleRect);

1voto

Shreekara Points 31

Dessinez d'abord le cercle, puis découpez le chemin, puis effacez à nouveau le rectangle d'encadrement du cercle par CGContextClearRect.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X