Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 从选定区域中的uiimagepickerviewcontroller裁剪图像_Ios_Objective C_Uiimagepickercontroller - Fatal编程技术网

Ios 从选定区域中的uiimagepickerviewcontroller裁剪图像

Ios 从选定区域中的uiimagepickerviewcontroller裁剪图像,ios,objective-c,uiimagepickercontroller,Ios,Objective C,Uiimagepickercontroller,拍摄图像时,如何从选定区域的UIImagePickerController裁剪图像。覆盖代码下方的UIImagePickerController的视图 -(UIImage *)centerCropImage:(UIImage *)image { // Use smallest side length as crop square length CGFloat squareLength = MIN(image.size.width, image.size.height); //

拍摄图像时,如何从选定区域的
UIImagePickerController
裁剪图像。覆盖代码下方的UIImagePickerController的视图

-(UIImage *)centerCropImage:(UIImage *)image
{
   // Use smallest side length as crop square length
   CGFloat squareLength = MIN(image.size.width, image.size.height);
   // Center the crop area
   CGRect clippedRect = CGRectMake((image.size.width - squareLength) / 2, (image.size.height - squareLength) / 2, squareLength, squareLength);
   // Crop logic
   CGImageRef imageRef = CGImageCreateWithImageInRect([image CGImage], clippedRect);
   UIImage * croppedImage = [UIImage imageWithCGImage:imageRef];
   CGImageRelease(imageRef);
   return croppedImage;
}
然后在imagePickerViewDelegate方法中

-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info
{
    UIImage *image = [info objectForKey: @"UIImagePickerControllerOriginalImage"];
    [self centerCropImage:image]; //Just give your image here for cropping
    yourImage.image=image; 
    picker.delegate =self;
    [picker dismissViewControllerAnimated:YES completion:nil];
}

你做了什么检查我是否已从
UIImagePickerController
捕获图像,但我需要裁剪区域部分。当我当时单击捕获按钮时,我有一个问题,该方法称为…??您的按钮操作方法称为。之后,当您从照片库中选择图像并通过相机时,调用imagePickerViewDelegate方法。该方法是didFinishPickingMediaWithInfo。当UIImagePickerController在此时打开捕获按钮时,单击该时间使用的方法…?此时它正在调用以下按钮行操作UIImagePickerController*picker=[[UIImagePickerController alloc]init];picker.delegate=self;picker.allowsdediting=是;picker.sourceType=UIImagePickerController源类型摄像头;[自我呈现视图控制器:选择器动画:是完成:空];