Exemple #1
0
        /// <summary>
        ///     Applies filtering effect to an image and upload updated image to Cloud Storage.
        /// </summary>
        public void FilterImageAndUploadToStorage()
        {
            Console.WriteLine("Apply filtering effect to an image and upload to cloud storage");

            UploadSampleImageToCloud();

            var filterType       = "GaussianBlur";
            var filterProperties = new GaussianBlurFilterProperties
            {
                Radius = 4,
                Sigma  = 1.1
            };
            var    format  = "bmp";
            var    folder  = CloudPath; // Input file is saved at the Examples folder in the storage
            string storage = null;      // We are using default Cloud Storage

            var filterEffectRequest = new FilterEffectImageRequest(SampleImageFileName, filterType, filterProperties,
                                                                   format, folder, storage);

            Console.WriteLine(
                $"Call FilterEffectImage with params: filter type:{filterType}, radius: {filterProperties.Radius}, sigma: {filterProperties.Sigma} format:{format}");

            using (var updatedImage = ImagingApi.FilterEffectImage(filterEffectRequest))
            {
                UploadImageToCloud(GetModifiedSampleImageFileName(false, format), updatedImage);
            }

            Console.WriteLine();
        }
Exemple #2
0
        public void FilterEffectTest(string formatExtension, params string[] additionalExportFormats)
        {
            string name    = null;
            string folder  = TempFolder;
            string storage = this.TestStorage;

            List <string> formatsToExport = new List <string>(this.BasicExportFormats);

            foreach (string additionalExportFormat in additionalExportFormats)
            {
                if (!formatsToExport.Contains(additionalExportFormat))
                {
                    formatsToExport.Add(additionalExportFormat);
                }
            }

            foreach (var inputFile in BasicInputTestFiles)
            {
                if (inputFile.Name.EndsWith(formatExtension))
                {
                    name = inputFile.Name;
                }
                else
                {
                    continue;
                }

                foreach (var filter in filters)
                {
                    foreach (var format in formatsToExport)
                    {
                        if (formatExtension == ".psd" && format == "webp")
                        {
                            continue;
                        }

                        this.TestGetRequest(
                            "FilterEffectTest",
                            $"Input image: {name}; Output format: {format ?? "null"}; Filter type: {filter.FilterType}",
                            name,
                            delegate
                        {
                            var request = new FilterEffectImageRequest(name, filter.FilterType,
                                                                       filter.FilterProperties, format, folder, storage);
                            return(ImagingApi.FilterEffectImage(request));
                        },
                            null,
                            folder,
                            storage
                            );
                    }
                }
            }
        }