Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.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
Windows store apps 如何创建一个相机窗体,将图像和视频保存到我们想要的文件夹中_Windows Store Apps - Fatal编程技术网

Windows store apps 如何创建一个相机窗体,将图像和视频保存到我们想要的文件夹中

Windows store apps 如何创建一个相机窗体,将图像和视频保存到我们想要的文件夹中,windows-store-apps,Windows Store Apps,我想创建一个注册表单,用户可以在Windows应用商店中为他们的个人资料拍摄照片或短视频(将infor保存在.json中)。有人帮我如何使相机拍摄照片,以及如何保存照片。 网络上有很多例子。 首先添加到清单 <Capabilities> <DeviceCapability Name="webcam" /> </Capabilities> 在btnTakePhoto_点击事件中 btnTakePhoto.IsEnabled = false;

我想创建一个注册表单,用户可以在Windows应用商店中为他们的个人资料拍摄照片或短视频(将infor保存在.json中)。有人帮我如何使相机拍摄照片,以及如何保存照片。
网络上有很多例子。
首先添加到清单

 <Capabilities>
<DeviceCapability Name="webcam" />
</Capabilities>
在btnTakePhoto_点击事件中

  btnTakePhoto.IsEnabled = false;
        btnStartPreview.IsEnabled = false;

        InMemoryRandomAccessStream stream = new InMemoryRandomAccessStream();
        await mediaCapture.CapturePhotoToStreamAsync(ImageEncodingProperties.CreateJpeg(), stream);

        stream.Seek(0); // текущую позицию потока устанавливаем в 0
        BitmapImage bitmap = new BitmapImage();
        bitmap.SetSource(stream);
        captureImage.Source = bitmap;
        if (isPreviewing == true) await mediaCapture.StopPreviewAsync();
        isPreviewing = false;
下面是一个大例子:

您有Windows 8.1或UWP应用程序吗?我有这两个应用程序。我希望看到的摄像头将显示在我想要的位置
using Windows.Media.Capture;
using Windows.UI.Xaml.Media.Imaging;
using Windows.Media.MediaProperties;
using Windows.Storage.Streams;

MediaCapture mediaCapture;
bool isPreviewing = false;

        private async void Page_Loaded(object sender, RoutedEventArgs e)
    {
        MediaCaptureInitializationSettings set = new MediaCaptureInitializationSettings();
        set.StreamingCaptureMode = StreamingCaptureMode.Video;
        mediaCapture = new MediaCapture();
        await mediaCapture.InitializeAsync(set);
    }

        private async void btnStartPreview_Click(object sender, RoutedEventArgs e)
    {
        if (isPreviewing == false)
        {
            previewElement.Source = mediaCapture;
            await mediaCapture.StartPreviewAsync();
            isPreviewing = true;
        }
        previewElement.Visibility = Visibility.Visible;
    }
  btnTakePhoto.IsEnabled = false;
        btnStartPreview.IsEnabled = false;

        InMemoryRandomAccessStream stream = new InMemoryRandomAccessStream();
        await mediaCapture.CapturePhotoToStreamAsync(ImageEncodingProperties.CreateJpeg(), stream);

        stream.Seek(0); // текущую позицию потока устанавливаем в 0
        BitmapImage bitmap = new BitmapImage();
        bitmap.SetSource(stream);
        captureImage.Source = bitmap;
        if (isPreviewing == true) await mediaCapture.StopPreviewAsync();
        isPreviewing = false;