Beispiel #1
0
        private async Task PickPhotoCommandExecute(PlatformDocument document)
        {
            if (document.Name.EndsWith(".png") || document.Name.EndsWith(".jpg"))
            {
                var photoModel = new PhotoModel
                {
                    NoteId = Id
                };

                var mediaService = DependencyService.Get <IMediaService>();
                var fileSystem   = DependencyService.Get <IFileSystem>();
                var imageContent = fileSystem.ReadAllBytes(document.Path);

                var    resizedImage = mediaService.ResizeImage(imageContent, ConstantsHelper.ResizedImageWidth, ConstantsHelper.ResizedImageHeight);
                string path         = Environment.GetFolderPath(Environment.SpecialFolder.Personal);
                string imagePath    = Path.Combine(path, document.Name);

                File.WriteAllBytes(imagePath, resizedImage);
                photoModel.ResizedPath = imagePath;
                photoModel.Thumbnail   = imagePath;

                await _transformHelper.ResizeAsync(imagePath, photoModel);

                Photos.Add(photoModel.ToPhotoViewModel());
                PhotosCollectionChanged?.Invoke(this, EventArgs.Empty);
            }
            IsLoading = false;
        }
        private async Task PickPhotoCommandExecute(PlatformDocument document)
        {
            IsLoading = true;
            var ci = CrossMultilingual.Current.CurrentCultureInfo;

            if (document.Name.EndsWith(".png") || document.Name.EndsWith(".jpg"))
            {
                var mediaService = DependencyService.Get <IMediaService>();
                var fileSystem   = DependencyService.Get <IFileSystem>();
                var imageContent = fileSystem.ReadAllBytes(document.Path);

                var resizedImage = mediaService.ResizeImage(imageContent, ConstantsHelper.ResizedImageWidth,
                                                            ConstantsHelper.ResizedImageHeight);
                var photoModel = new PhotoModel
                {
                    Name  = document.Name,
                    Image = Convert.ToBase64String(resizedImage)
                };

                Photos.Add(photoModel.ToPhotoViewModel());
                PhotosCollectionChanged?.Invoke(this, EventArgs.Empty);
                IsLoading = false;
            }
            else
            {
                IsLoading = false;
                var imagePickErrorMesssageLocalized =
                    Resmgr.Value.GetString(ConstantsHelper.ImagePickErrorMesssage, ci);
                var okLocalized = Resmgr.Value.GetString(ConstantsHelper.Ok, ci);

                _alertService.ShowOkAlert(imagePickErrorMesssageLocalized, okLocalized);
            }
        }
Beispiel #3
0
 private void DeletePhotoCommandExecute(int position)
 {
     IsLoading = true;
     if (Photos.Any())
     {
         Photos.RemoveAt(position);
         PhotosCollectionChanged?.Invoke(this, EventArgs.Empty);
     }
     IsLoading = false;
 }
Beispiel #4
0
        private async Task TakePhotoCommandExecute()
        {
            bool permissionResult = await PermissionService.AskPermission();

            if (permissionResult)
            {
                IsLoading = true;
                var photoModel = await _mediaHelper.TakePhotoAsync();

                if (photoModel != null)
                {
                    Photos.Add(photoModel.ToPhotoViewModel());
                    PhotosCollectionChanged?.Invoke(this, EventArgs.Empty);
                }
                IsLoading = false;
            }
        }