Veuillez donner des idées sur la façon de recadrer UIImage
sur une forme ovale ou une forme de cercle. Veuillez partager vos idées.
Réponses
Trop de publicités?#import <QuartzCore/QuartzCore.h>
CALayer *imageLayer = YourImageview.layer;
[imageLayer setCornerRadius:5];
[imageLayer setBorderWidth:1];
[imageLayer setMasksToBounds:YES];
en augmentant le rayon, il deviendra plus arrondi.
Tant que l'image est un carré, vous pouvez obtenir un cercle parfait en prenant la moitié de la largeur comme rayon du coin :
[imageView.layer setCornerRadius:imageView.frame.size.width/2];
Vous devez également ajouter
[imageView.layer setMasksToBounds:YES];
Rapide 4.2
import QuartzCore
var imageLayer: CALayer? = YourImageview.layer
imageLayer?.cornerRadius = 5
imageLayer?.borderWidth = 1
imageLayer?.masksToBounds = true
Avoir imageView en forme ovale n'est pas difficile.
Vous pouvez faire ce qui suit
UIBezierPath *path = [UIBezierPath bezierPathWithOvalInRect:yourImageView.bounds];
CAShapeLayer *maskLayer = [CAShapeLayer layer];
maskLayer.path = path.CGPath;
yourImageView.layer.mask = maskLayer;
Si le rect passé à bezierPathWithOvalInRect est Square, l'image sera recadrée en cercle.
Code rapide
let path = UIBezierPath(ovalIn: yourImageView.bounds)
let maskLayer = CAShapeLayer()
maskLayer.path = path.cgPath
yourImageView.layer.mask = maskLayer
regarde ça http://iphonedevelopertips.com/cocoa/how-to-mask-an-image.html#comment-58842
créer un masque ovale à la place
dites-moi si vous avez également besoin d'un exemple de code