Beispiel #1
0
        /// <summary>
        /// Takes a photo to a StorageFile and adds rotation metadata to it
        /// </summary>
        /// <returns></returns>
        public async Task <string> TakePhotoAsync()
        {
            var stream = new InMemoryRandomAccessStream();

            try
            {
                await _mediaCapture.CapturePhotoToStreamAsync(ImageEncodingProperties.CreateJpeg(), stream);

                var photoOrientation = RotationHelper.ConvertOrientationToPhotoOrientation(RotationHelper.GetCameraOrientation(_displayInformation, SimpleOrientation.Faceup));

                return(await ReencodeAndSavePhotoAsync(stream, photoOrientation));
            }
            catch (Exception ex)
            {
                Debug.WriteLine("Exception when taking a photo: {0}", ex.ToString());
            }

            return(null);
        }