ich ein JPG-Bild mit einem runden Objekt in einem rect haben und will die envoirement des runden Objekts transparent machen ...iOS: Inverse UIBezierPath (bezierPathWithOvalInRect)
(Entfernen von rotem Bereich in Dieses Beispiel)
Mit Hilfe dieser iOS make part of an UIImage transparent und "UIBezierPath bezierPathWithOvalInRect" habe ich ein wenig Erfolg, aber das machen einen Pfad um mein Objekt, und ich muss es umkehren, um das Äußere und nicht das Innere zu machen des Weges transparent.
Im nicht sicher, wo ich das richtige Ergebnis erhalten muss meinen Code ändern ..
Hier ist mein Code:
//BezierPath
UIBezierPath *bezierPath = [UIBezierPath bezierPathWithOvalInRect:CGRectMake(0, 0, 100, 100)];
// Create an image context containing the original UIImage.
UIGraphicsBeginImageContext(_imgTemp.image.size);
[_imgTemp.image drawAtPoint:CGPointZero];
// Clip to the bezier path and clear that portion of the image.
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextAddPath(context,bezierPath.CGPath);
CGContextClip(context);
CGContextClearRect(context,CGRectMake(0,0,self._imgTemp.image.size.width,self._imgTemp.image.size.height));
// Build a new UIImage from the image context.
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
self._imgTemp.image = newImage;
Wer die Lösung wurde?
Wollen Sie nur die rote machen transparent oder schwarz transparent geworden? –