相机覆盖不在中心
Camera Overlay not in the center
我正在尝试向此 UIImagePickerController 实例添加叠加层,但结果是叠加层偏离中心。
我创建了一个简单的红色方块 (300x300 pt) 来举例说明问题并用作叠加层并将其添加到相机叠加层中,使用以下方法:
CGRect bounds = [[UIScreen mainScreen] bounds];
UIView *containerOverlay = [[UIView alloc] initWithFrame:bounds];
UIImage *overlay = [UIImage imageNamed:@"red"];
UIImageView *overlayView = [[UIImageView alloc] initWithImage:overlay];
CGFloat midX = CGRectGetMidX(bounds);
CGFloat midY = CGRectGetMidY(bounds);
CGPoint center = CGPointMake(midX, midY);
overlayView.center = center;
[containerOverlay addSubview:overlayView];
[_camera setCameraOverlayView:containerOverlay];
这是实时预览中显示的...完全偏离垂直中心。
令人惊讶的是,当我拍照并且 iOS 向我显示已拍摄的照片时,叠加层神奇地居中...
如何在实时摄像机上将叠加层居中?
叠加层以屏幕边界为中心,对吗?
你在这里做什么:
CGFloat midX = CGRectGetMidX(bounds);
CGFloat midY = CGRectGetMidY(bounds);
如果您希望叠加层与实际图像矩形对齐,您需要偏移底部黑条(它与顶部黑条的高度不同)。
我正在尝试向此 UIImagePickerController 实例添加叠加层,但结果是叠加层偏离中心。
我创建了一个简单的红色方块 (300x300 pt) 来举例说明问题并用作叠加层并将其添加到相机叠加层中,使用以下方法:
CGRect bounds = [[UIScreen mainScreen] bounds];
UIView *containerOverlay = [[UIView alloc] initWithFrame:bounds];
UIImage *overlay = [UIImage imageNamed:@"red"];
UIImageView *overlayView = [[UIImageView alloc] initWithImage:overlay];
CGFloat midX = CGRectGetMidX(bounds);
CGFloat midY = CGRectGetMidY(bounds);
CGPoint center = CGPointMake(midX, midY);
overlayView.center = center;
[containerOverlay addSubview:overlayView];
[_camera setCameraOverlayView:containerOverlay];
这是实时预览中显示的...完全偏离垂直中心。
令人惊讶的是,当我拍照并且 iOS 向我显示已拍摄的照片时,叠加层神奇地居中...
如何在实时摄像机上将叠加层居中?
叠加层以屏幕边界为中心,对吗?
你在这里做什么:
CGFloat midX = CGRectGetMidX(bounds);
CGFloat midY = CGRectGetMidY(bounds);
如果您希望叠加层与实际图像矩形对齐,您需要偏移底部黑条(它与顶部黑条的高度不同)。