Je suis en train de faire une application iPhone où il y a deux ImageViews et quand vous touchez le dessus, où que vous tapiez, celui du bas montre à la place.Comment découper ou modifier l'alpha d'une image (pixels) dans Quartz?
Fondamentalement, ce que je veux faire est de couper une ellipse/arrondi sur une image. Pour ce faire, je pensais soit à écrêter l'image, soit à changer les pixels alpha dans le rect à zéro. Je suis nouveau à la programmation 2D Quartz donc je ne suis pas sûr de savoir comment faire cela.
En supposant que j'ai:
UIImageView *topImage;
UIImageView *bottomImage;
Comment puis-je supprimer un CGRect/Ellipse/roundedRect de ces images. C'est un peu comme ces billets de loterie que vous devez gratter pour révéler si vous avez gagné.
Alors, que dois-je mettre dans la méthode drawrect pour cela? Je ne suis pas expérimenté avec Quartz – gizmoitai
donc la section des documents concernant l'écrêtage réel est en bas (désolé j'ai oublié de le mentionner), mais fondamentalement créer un chemin, dessiner un rectangle arrondi où vous le voulez, couper le contexte sur le chemin, dessinez l'image, (déclippez le chemin?) et continuez. Je n'inclue pas de code spécifique parce que c'est inutile, il suffit de fouiller dans les documents Apple pour les appels de fonction. google aussi. Heres quelque chose pour le chemin rect arrondi http://www.drobnik.com/touch/2010/02/drawing-rounded-rectangles/ –
J'ai essayé ce code: CGContextRef CTX = UIGraphicsGetCurrentContext(); \t CGRect frame = CGRectMake (100, 100, 100, 100); \t CGPathRef roundedRectPath = [self newPathForRoundedRect: rayon de trame: 5]; \t CGContextAddPath (ctx, roundedRectPath); \t CGContextClip (ctx); \t CGPathRelease (roundedRectPath); (Avec la fonction rectangle arrondi que vous avez envoyé) Ceci est sur une vue blanche et sous la vue il y a une fenêtre grise, donc je pensais que cela montrerait juste gris au lieu de blanc dans le cadre CGRect mais ce n'était pas le cas quoi que ce soit ... – gizmoitai