Exemplo n.º 1
0
        private void SetRadioButtons(ImageOption imageOption, ImageLayout imageLayout)
        {
            switch (imageOption)
            {
            case ImageOption.ImageOptionCenter:
                rdoImageCenter.Checked = true;
                break;

            case ImageOption.ImageOptionFill:
                rdoImageFill.Checked = true;
                break;

            case ImageOption.ImageOptionStretchProportionately:
                rdoImageStretchAspect.Checked = true;
                break;
            }
            switch (imageLayout)
            {
            case ImageLayout.ImageLayoutPortrait:
                rdoLayoutPortrait.Checked = true;
                break;

            case ImageLayout.ImageLayoutLandscape:
                rdoLayoutLandscape.Checked = true;
                break;
            }
        }
 /// <inheritdoc />
 public ImageController(IFileStore fileStore, IImageService imageService, ImageOption imageOption, IFileProvider fileProvider)
 {
     _fileStore    = fileStore;
     _imageService = imageService;
     _imageOption  = imageOption;
     _fileProvider = fileProvider;
 }
        private async void imagePicker_SelectedIndexChanged(object sender, EventArgs e)
        {
            overlay.IsVisible = true;
            Picker picker = sender as Picker;
            string userId = Application.Current.Properties["Id"].ToString().Replace("\"", "");

            if (picker.SelectedIndex == -1)
            {
                return;
            }
            ImageOption imageOption = new ImageOption();
            MediaFile   imagePath   = null;

            if (picker.SelectedIndex == 0)
            {
                imagePath = await imageOption.TakePhoto();
            }
            else if (picker.SelectedIndex == 1)
            {
                imagePath = await imageOption.UploadPhoto();
            }
            string imageLink = await fireStorage.StoreImages(imagePath.GetStream(), userId + DateTime.Now.ToString("MM_dd_yyyy_hh_mm_ss_fff"));

            await api.updateProfilePicture(userId, imageLink);

            await api.syncUserData(userId);

            retrieveUserProp();
            imagePicker.IsVisible     = false;
            imagePicker.SelectedIndex = -1;
            overlay.IsVisible         = false;
        }
Exemplo n.º 4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="waterImageType"></param>
        /// <param name="sourceImgPath"></param>
        /// <param name="waterImgPath"></param>
        /// <param name="option"></param>
        /// <returns></returns>
        public static Image CreateWaterImage(WaterImageType waterImageType, string sourceImgPath, string waterImgPath, ImageOption option)
        {
            WaterImageBuilder builder = new WaterImageBuilderByFill();

            builder.SetSourceImage(sourceImgPath);
            builder.SetWaterImage(waterImgPath);
            builder.SetOpetion(option);
            return builder.ProcessBitmap();
        }
 public static void Validate(this FileInfo fileInfo, ImageOption imageOption)
 {
     if (!imageOption.Filters.Contains(fileInfo.Extension.ToLower()))
     {
         throw new Exception("文件格式错误");
     }
     if (imageOption.MaxContentLength < fileInfo.Length)
     {
         throw new Exception($"文件必须小于{imageOption.MaxContentLength}");
     }
 }
        public static ImageServiceBuilder AddImageService(this IServiceCollection service, Action <ImageOption> action = null)
        {
            service.AddTransient <IImageService, ImageService>();
            var imageOption = new ImageOption();

            action?.Invoke(imageOption);
            service.AddSingleton(imageOption);
            service.AddTransient(imageOption.FileStoreFactory);
            var serviceBuilder = new ImageServiceBuilder(service, imageOption);

            return(serviceBuilder);
        }
Exemplo n.º 7
0
        private async void ImagePicker_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                Picker picker = sender as Picker;
                if (picker.SelectedIndex == -1)
                {
                    return;
                }
                ImageOption imageOption = new ImageOption();
                MediaFile   imagePath   = null;
                int         counter     = 0;
                if (picker.SelectedIndex == 0)
                {
                    imagePath = await imageOption.TakePhoto();
                }
                else if (picker.SelectedIndex == 1)
                {
                    imagePath = await imageOption.UploadPhoto();
                }
                var looper = imageGrid.Children.Where(x => x is Frame);
                if (!string.IsNullOrEmpty(imagePath.Path.ToString()))
                {
                    foreach (Frame btn in looper)
                    {
                        ImageButton sample = btn.Content as ImageButton;
                        //await DisplayAlert("Error!", sample.Source.ToString(), "Okay");
                        counter++;
                        if (sample.Source.ToString().Contains("dashed_border.png"))
                        {
                            sample.Source = imagePath.Path.ToString();
                            sample.Aspect = Aspect.AspectFill;
                            var sample2 = await fireStorage.StoreImages(imagePath.GetStream(), (Application.Current.Properties["Id"].ToString().Replace("\"", "") + "_" + counter.ToString()) + DateTime.Now.ToString("MM_dd_yyyy_hh_mm_ss_fff"));

                            imageUrl = sample2;
                            await saveToGallery();

                            savetoSqlite();
                            break;
                        }
                    }
                }
                imagePicker.SelectedIndex = -1;
            }
            catch (Exception ex)
            {
                await DisplayAlert("Edit Profile", ex.ToString(), "Okay");
            }
        }
Exemplo n.º 8
0
        private async void imagePicker_SelectedIndexChanged(object sender, EventArgs e)
        {
            Picker picker = sender as Picker;
            string userId = Application.Current.Properties["Id"].ToString().Replace("\"", "");

            if (picker.SelectedIndex == -1)
            {
                return;
            }
            ImageOption imageOption = new ImageOption();
            MediaFile   imagePath   = null;

            if (picker.SelectedIndex == 0)
            {
                imagePath = await imageOpt.TakePhoto();
            }
            else if (picker.SelectedIndex == 1)
            {
                imagePath = await imageOpt.UploadPhoto();
            }
            string imageLink = await fireStorage.StoreImages(imagePath.GetStream(), Session_Id + userId + Receiver_Id + DateTime.Now.ToString("MM_dd_yyyy_hh_mm_ss_fff"));

            await sendMessage(imageLink);
        }
Exemplo n.º 9
0
 private void SetRadioButtons(ImageOption imageOption, ImageLayout imageLayout)
 {
     switch (imageOption)
     {
         case ImageOption.ImageOptionCenter:
             rdoImageCenter.Checked = true;
             break;
         case ImageOption.ImageOptionFill:
             rdoImageFill.Checked = true;
             break;
         case ImageOption.ImageOptionStretchProportionately:
             rdoImageStretchAspect.Checked = true;
             break;
     }
     switch (imageLayout)
     {
         case ImageLayout.ImageLayoutPortrait:
             rdoLayoutPortrait.Checked = true;
             break;
         case ImageLayout.ImageLayoutLandscape:
             rdoLayoutLandscape.Checked = true;
             break;
     }
 }
 public ImageServiceBuilder(IServiceCollection service, ImageOption imageOption)
 {
     Service     = service;
     ImageOption = imageOption;
 }
        private async void ImagePicker_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                Picker picker = sender as Picker;
                if (picker.SelectedIndex == -1)
                {
                    return;
                }
                ImageOption imageOption = new ImageOption();
                MediaFile   imagePath   = null;
                int         counter     = 0;
                if (picker.SelectedIndex == 0)
                {
                    imagePath = await imageOption.TakePhoto();
                }
                else if (picker.SelectedIndex == 1)
                {
                    imagePath = await imageOption.UploadPhoto();
                }
                var looper = imageGrid.Children.Where(x => x is AbsoluteLayout);
                if (!string.IsNullOrEmpty(imagePath.Path.ToString()))
                {
                    int ctr1 = 0;
                    foreach (AbsoluteLayout abl in looper)
                    {
                        var         loopers    = abl.Children.Where(x => x is Frame).FirstOrDefault() as Frame;
                        var         btnloopers = abl.Children.Where(x => x is ImageButton).FirstOrDefault() as ImageButton;
                        CachedImage sample     = loopers.Content as CachedImage;
                        if (sample.Source.ToString().Contains("dashed_border.png"))
                        {
                            //sample.Source = imagePath.Path.ToString();
                            //sample.Aspect = Aspect.AspectFill;
                            var sample2 = await fireStorage.StoreImages(imagePath.GetStream(), (Application.Current.Properties["Id"].ToString().Replace("\"", "") + "_" + counter.ToString()) + DateTime.Now.ToString("MM_dd_yyyy_hh_mm_ss_fff"));

                            imageUrl = sample2;
                            var isSaved = await saveToGallery();

                            if (isSaved)
                            {
                                var isRetrieved = await api.retrieveGallery();

                                if (isRetrieved)
                                {
                                    loadFromSqlite(true);
                                }
                            }
                            //savetoSqlite();
                            //if (ctr1 != 0)
                            //   btnloopers.IsVisible = true;
                            break;
                        }
                        ctr1++;
                    }
                }
                imagePicker.SelectedIndex = -1;
            }
            catch (Exception ex)
            {
                await DisplayAlert("Connection Error", ex.ToString(), "Okay");
            }
        }
Exemplo n.º 12
0
 public EntityFrameworkFileStore(ImageDbContext imageDbContext, ImageOption imageOption, IImageService imageService)
 {
     _imageDbContext = imageDbContext;
     _imageService   = imageService;
     _imageOption    = imageOption;
 }