Как я могу обрезать изображение в форме пузыря, которое у меня есть в моем проекте.Обрезание ImageView в форме другого ImageView
ответ
После простой код для изменения размера или урожая изображения, вам нужно просто пройти высоту или ширину для изображения, как вы хотите:
Для Получить Croped Image:
UIImage *croppedImg = nil;
CGRect cropRect = CGRectMake(AS YOu Need);
croppedImg = [self croppIngimageByImageName:self.imageView.image toRect:cropRect];
Используйте следующий метод, который возвращает UIImage
(as Вы хотите размер изображения)
- (UIImage *)croppIngimageByImageName:(UIImage *)imageToCrop toRect:(CGRect)rect
{
//CGRect CropRect = CGRectMake(rect.origin.x, rect.origin.y, rect.size.width, rect.size.height+15);
CGImageRef imageRef = CGImageCreateWithImageInRect([imageToCrop CGImage], rect);
UIImage *cropped = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
return cropped;
}
Здесь вы получаете Croped Image, которые возвращаются описанным выше способом;
ИЛИ ИЗМЕНЕНИЕ РАЗМЕРА
, а также использовать следующий метод для конкретной Hight и ширина с изображением для Resizing UIImage:
+ (UIImage*)resizeImage:(UIImage*)image withWidth:(int)width withHeight:(int)height
{
CGSize newSize = CGSizeMake(width, height);
float widthRatio = newSize.width/image.size.width;
float heightRatio = newSize.height/image.size.height;
if(widthRatio > heightRatio)
{
newSize=CGSizeMake(image.size.width*heightRatio,image.size.height*heightRatio);
}
else
{
newSize=CGSizeMake(image.size.width*widthRatio,image.size.height*widthRatio);
}
UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
[image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];
UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
Этот метод обратного NewImage, с определенным размером, который вы хотите.
Привет. iPatel Мое имя Рамани - одна помощь, Мой проект - одна концепция - изображение лица лица, но не идеальная культура лица. Позвольте мне знать любую идею, пожалуйста, объявите ,,,, –
@ RamaniHitesh, конечно, дайте мне знать, что вы сделали или предоставили исходный код. – iPatel
Uimageview * cropView = [[UIImageView alloc] initWithFrame: CGRectMake (130, 200, 60, 60)]; cropView.clipsToBounds = YES; cropView.layer.masksToBounds = YES; cropView.layer.cornerRadius = cropView.bounds.size.width/2.0f; cropView.layer.borderWidth = 5.0; [cropView.layer setBorderColor: [[UIColor redColor] CGColor]]; CGRect rect = self.cropView.frame; CGRect drawRect = [self cropRectForFrame: rect]; UIImage * croppedImage = [self изображениеByCropping: self.image toRect: drawRect]; return croppedImage; –
Этот [ответ] (http://stackoverflow.com/a/13016064/1407017) может быть полезен. – Amar