3

我想在一个框架中打开 iPhone 相机。实际上我有一个心形的图像。所以我想在这张图片中打开相机。所以请任何人都可以建议我如何做到这一点。

谢谢

4

2 回答 2

2

以下是通过相机点击获取框架图像的步骤:

1 打开一个包含心形框架的剪切图像的视图。

UIImage *image = [UIImage imageNamed:@"myimage.png"];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
imageView.frame = CGRectMake( 0, 0, cell.frame.size.width, cell.frame.size.height );
imageView.contentMode = UIViewContentModeScaleToFill;

2 调用该切割心形图像下方的相机叠加层以使用相机拍摄图像。

UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsImageEditing = YES;
picker.sourceType = (sender == takePictureButton) ? UIImagePickerControllerSourceTypeCamera :
UIImagePickerControllerSourceTypeSavedPhotosAlbum;
[self presentModalViewController: picker animated:YES];
[picker release];

3 单击图像让图像视图出现并启用捕捉的图像可编辑。

4 然后用心形图像视图拍摄屏幕截图,以根据您的要求获取图像。

UIGraphicsBeginImageContext(webview.frame.size);
[self.view.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(viewImage, nil, nil, nil);
于 2012-07-22T05:46:42.310 回答
0

UIImagePickerController有财产cameraOverlayView。我还没有尝试过,但我想你可以添加一个UImageView作为它的子视图,使用带有 alpha 通道的图像来掩盖你不希望相机显示的区域。

为什么不试一试并报告它的工作原理。

cameraOverlayView

显示在默认图像选择器界面顶部的自定义视图。@property (nonatomic, 保留) UIView *cameraOverlayView 讨论

您可以使用覆盖视图在默认图像选择器界面的顶部呈现自定义视图层次结构。图像选择器将您的自定义覆盖视图分层放置在其他图像选择器视图之上,并将其相对于屏幕坐标定位。如果您将默认相机控件设置为可见,请将透明度合并到您的视图中,或将其放置以避免遮挡底层内容。

于 2012-07-22T05:44:52.987 回答