我无法从图像视图裁剪图像,图像视图在裁剪之前进行缩放和旋转。使用现有的裁剪方法。但它仅适用于固定的图像视图。希望代码有用。
答案 0 :(得分:2)
最后成功裁剪旋转缩放图像。
1)需要裁剪整个缩放或旋转的图像。
2)从裁剪后的图像裁剪矩形。您将获得最终缩放或旋转裁剪图像。
我发布示例代码,可能对其他人有用。
UIGraphicsBeginImageContextWithOptions(self.view.frame.size, NO, 0.0);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
CGRect rect = CGRectMake(100,100 ,200, 200);//Rect we need from scaled or rotated image.
CGImageRef cropped = CGImageCreateWithImageInRect(viewImage.CGImage, rect);
UIImage *img = [UIImage imageWithCGImage:cropped];
CGImageRelease(cropped);
感谢。
答案 1 :(得分:0)
试试这个(如果你需要裁剪角落):
UIImageView *imageSubview = [[UIImageView alloc] initWithFrame:CGRectMake(50.0f, 5.0f,80.0f, 60.0f)];
[imageSubview setImage:actualImage];
[imageSubview setContentMode:UIViewContentModeScaleToFill];
[imageSubview.layer setCornerRadius:10.0];
[imageSubview.layer setMasksToBounds:YES];
[cell addSubview:imageSubview];
只需增加半径,你就可以使它成为圆形,或者在这条路径上行走,你将获得实际的解决方案。:)
答案 2 :(得分:0)
UIImage *myImage = [UIImage imageNamed:@"photo.png"];
CGRect cropRect = CGRectMake(0.0, 0.0, 320.0, 44.0));
CGImageRef croppedImage = CGImageCreateWithImageInRect([myImage CGImage], cropRect);
UIImageView *myImageView = [[UIImageView alloc] initWithFrame:cropRect];
[myImageView setImage:[UIImage imageWithCGImage:croppedImage]];
CGImageRelease(croppedImage);
用于裁剪特定的高度和宽度