如何在摄像头捕获后删除WinRT中的默认裁剪

时间:2013-05-20 09:51:43

标签: windows-8 windows-runtime

我在WinRT应用程序中使用下面给出的相机捕获方法,

        var camera = new CameraCaptureUI();
        var aspectRatio = new Size(16, 9);
        camera.PhotoSettings.CroppedAspectRatio = aspectRatio;
        var file = await camera.CaptureFileAsync(CameraCaptureUIMode.Photo);
        if (file != null)
        {
            var fileStream = await file.OpenAsync(FileAccessMode.Read);
            var bitmapImage = new BitmapImage();
            bitmapImage.SetSource(fileStream);
            var imageDimension = Utilities.GetImageDimension(bitmapImage.PixelWidth, bitmapImage.PixelHeight);
            SourceImage = new WriteableBitmap((int)imageDimension.Item1, (int)imageDimension.Item2);
            var imageStream = await file.OpenAsync(FileAccessMode.Read);
            SourceImage.SetSource(imageStream);

        }

因此,在调用此代码行camera.CaptureFileAsync(CameraCaptureUIMode.Photo);期间,相机用户界面会出现,同时点击屏幕上的图片会捕获。我的问题出现在这一步之后。在捕获图像后出现默认裁剪屏幕,我不希望执行此中间步骤。在我的应用程序基于检测到的帧我需要实现新的裁剪方法/区域。所以我的问题是如何在WinRT中禁用这种中间裁剪功能,

1 个答案:

答案 0 :(得分:3)

你有财产:

camera.PhotoSettings.AllowCropping = false;

Details可以在这里找到。