8

我刚刚想出了一种方法来更改从UIImagePickerViewController. 这可以在 的帮助下完成UIImagePickerControllerCropRect。但我不知道如何使用它。最初裁剪框是方形的。我希望它是矩形的。

有人可以和我分享一个例子吗?

4

2 回答 2

6

是的,我们可以做到。

像这样创建用户定义的函数:

- (UIImage *)imageByCropping:(UIImage *)imageToCrop toRect:(CGRect)rect
{
   CGImageRef imageRef = CGImageCreateWithImageInRect([imageToCrop CGImage], rect);

    UIImage *cropped = [UIImage imageWithCGImage:imageRef];
    CGImageRelease(imageRef);


    return cropped;

}

并调用此代码:

UIImage *img1=[self imageByCropping:img toRect:CGRectMake(0,0, 106.6, 106.6)];
UIImageView *image_view=[[UIImageView alloc] initWithImage:img1];
于 2012-04-20T05:22:31.953 回答
3

您无法使用内置的 UIImagePickerController 功能执行此操作。不幸的是,您无法控制裁剪框的大小。

这是 github 上的一个项目,可以帮助您完成您想做的事情(结帐YSImageCrop.h)。

基本上,底线是您必须自己实现 UIImagePickerController 功能。我相信UIImagePickerWithEditor项目是一个很好的起点。

于 2012-04-19T01:58:51.480 回答