14
Ci scusiamo per questa domanda, ma ho cercato un sacco di discussioni qui in S.O. e non ho trovato nulla.Come ritagliare un quadrato centrale in una UIImmagine?
La domanda è: come ritagliare un quadrato centrale in una UIImmagine?
Ho provato il codice muggito ma senza successo. Il ritaglio avviene, ma nell'angolo in alto a sinistra.
-(UIImage*)imageCrop:(UIImage*)original
{
UIImage *ret = nil;
// This calculates the crop area.
float originalWidth = original.size.width;
float originalHeight = original.size.height;
float edge = fminf(originalWidth, originalHeight);
float posX = (originalWidth - edge)/2.0f;
float posY = (originalHeight - edge)/2.0f;
CGRect cropSquare = CGRectMake(posX, posY,
edge, edge);
// This performs the image cropping.
CGImageRef imageRef = CGImageCreateWithImageInRect([original CGImage], cropSquare);
ret = [UIImage imageWithCGImage:imageRef
scale:original.scale
orientation:original.imageOrientation];
CGImageRelease(imageRef);
return ret;
}