我目前正在制作iphone应用程序,用户拍摄照片或从相册中选择照片,然后在图像上放置覆盖图。用户可以缩放,旋转和保存图像。目前,我可以拍照,或选择一张专辑。至于叠加层,我只是使用UIImageView并将其放置在“接口”构建器中的层次结构顶部。对于相机,我正在使用此代码:拍照后编辑图像
-(IBAction)getPhoto:(id)sender {
// Create an image picker controller
UIImagePickerController * imagePicker = [[UIImagePickerController alloc] init];
if((UIButton *) sender == choosePhotoBtn) {
// Set source to photo albums
imagePicker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
}
else {
// Set source to camera
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.showsCameraControls = YES;
}
// Delegate is self
imagePicker.delegate = self;
// Allow editing of image
imagePicker.allowsEditing = YES;
// Show image picker
[self presentModalViewController:imagePicker animated: YES];
}
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
// Dismiss modalviewcontroller
[picker dismissModalViewControllerAnimated:YES];
// Displaying image to the imageView
imageView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
// Access the uncropped image from info dictionary
UIImage * image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
// Save Image
UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);
[picker release];
}
我现在遇到的问题是在照片拍摄后编辑照片。如何自定义相机这样的表现?:
选择或者使用相机或正从专辑
一旦选定照片,覆盖图像将变为一个在那里我”我在脸上放了一个“圆圈”,照片就像面具一样在下面。这个视图也可以全屏编辑。你可以旋转,缩放和移动图像,直到你点击完成。
我已阅读手册中的这一部分,但似乎无法理解如何使用它。 http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIImagePickerController_Class/UIImagePickerController/UIImagePickerController.html
希望有人能指出我正确的方向。
非常感谢。 -Hakimo
其中OP使用UIImagePickerControllerOriginalImage或UIImagePickerControllerEditedImage?我不明白你。 – inherithandle 2015-10-06 12:19:51
@inherithandle OP是指UIImagePickerControllerDelegate的'imagePickerController:didFinishPickingMediaWithInfo:'方法。 'info'参数包含一个NSDictionary,其中包含编辑信息键,如“UIImagePickerControllerOriginalImage”和“UIImagePickerControllerEditedImage” – 2016-01-20 11:15:42