Example #1
0
        public static IImageFilters DrawText(this IImageFilters imageUrlBuilder, string text, int?size = null, double?x = null, double?y = null, bool useBase64Url = true)
        {
            List <string> builder = new List <string>();

            if (useBase64Url)
            {
                byte[] buffer    = Encoding.UTF8.GetBytes(text);
                string base64Url = WebEncoders.Base64UrlEncode(buffer);

                builder.Add($"text={base64Url}");
            }
            else
            {
                builder.Add($"text={text}");
            }

            if (size != null)
            {
                builder.Add($"size={size}");
            }

            if (x != null)
            {
                builder.Add($"x={x.Value.ToUrlString()}");
            }

            if (y != null)
            {
                builder.Add($"y={y.Value.ToUrlString()}");
            }

            imageUrlBuilder.Filter($"drawtext({string.Join(",", builder)})");

            return(imageUrlBuilder);
        }
Example #2
0
        public Filters(IImageFilters imageFilters)
        {
            _filters = new Dictionary <IImageFilterProperty, Action <IImageFilterProperty, Image> >
            {
                {
                    imageFilters.PropertySepia, (filter, image) =>
                    image.Mutate(x => x.Sepia(filter.Amount))
                },
                {
                    imageFilters.PropertyBlackWhite, (filter, image) =>
                    image.Mutate(x => x.BlackWhite())
                },
                {
                    imageFilters.PropertyInvert, (filter, image) =>
                    image.Mutate(x => x.Invert())
                },
                {
                    imageFilters.PropertyPolaroid, (filter, image) =>

                    image.Mutate(x => x.Polaroid())
                },
                {
                    imageFilters.PropertyGrayscale, (filter, image) =>

                    image.Mutate(x => x.Grayscale(filter.Amount))
                },
                {
                    imageFilters.PropertyKodachrome, (filter, image) =>
                    image.Mutate(x => x.Kodachrome())
                },
                {
                    imageFilters.PropertyContrast, (filter, image) =>
                    image.Mutate(x => x.Contrast(filter.Amount))
                },
                {
                    imageFilters.PropertyLomograph, (filter, image) =>
                    image.Mutate(x => x.Lomograph())
                },
                {
                    imageFilters.PropertySaturate, (filter, image) =>
                    image.Mutate(x => x.Saturate(filter.Amount))
                },
                {
                    imageFilters.PropertyGaussianBlur, (filter, image) =>
                    image.Mutate(x => x.GaussianBlur(filter.Amount))
                },
                {
                    imageFilters.PropertyPixelate, (filter, image) =>
                    image.Mutate(x => x.Pixelate(filter.Size))
                },
                {
                    imageFilters.PropertyBrightness, (filter, image) =>
                    image.Mutate(x => x.Brightness(filter.Amount))
                }
            };
        }
        public static IImageBuildUrl Bmp(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter("bmp()");

            return(imageUrlBuilder);
        }
Example #4
0
        public static IImageFilters Resize(this IImageFilters imageUrlBuilder, int width, int height)
        {
            imageUrlBuilder.Filter($"resize({width},{height})");

            return(imageUrlBuilder);
        }
Example #5
0
        public static IImageFilters Blur(this IImageFilters imageUrlBuilder, int radius)
        {
            imageUrlBuilder.Filter($"blur({radius})");

            return(imageUrlBuilder);
        }
Example #6
0
        public static IImageFilters Crop(this IImageFilters imageUrlBuilder, double x, double y, double width, double heigth)
        {
            imageUrlBuilder.Filter($"crop({x.ToUrlString()},{y.ToUrlString()},{width.ToUrlString()},{heigth.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #7
0
        public static IImageFilters Crop(this IImageFilters imageUrlBuilder, int x, int y, int width, int heigth)
        {
            imageUrlBuilder.Filter($"crop({x},{y},{width},{heigth})");

            return(imageUrlBuilder);
        }
Example #8
0
        public static IImageFilters DPR(this IImageFilters imageUrlBuilder, double value)
        {
            imageUrlBuilder.Filter($"dpr({value.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #9
0
        public static IImageFilters Grayscale(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter($"grayscale()");

            return(imageUrlBuilder);
        }
Example #10
0
        public static IImageFilters Trim(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter("trim()");

            return(imageUrlBuilder);
        }
Example #11
0
        public static IImageFilters Resize(this IImageFilters imageUrlBuilder, int width, int height, ResizeMode mode, AnchorPositionMode anchorPosition)
        {
            imageUrlBuilder.Filter($"resize({width},{height},{mode.ToUrlString()},{anchorPosition.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #12
0
 public ControlsManipulation(IimageManipulation im)
 {
     imgf = new ImageFilters();
     _im  = im;
 }
Example #13
0
 public ControlsManipulation()
 {
     imgf = new ImageFilters();
     fm   = new FilenameManipulation();
     _im  = new ImageManipulation(fm);
 }
        public static IImageFilters PageToImage(this IImageFilters imageUrlBuilder, int pageIndex, int width, int height)
        {
            imageUrlBuilder.Filter($"pagetoimage({pageIndex},{width},{height})");

            return(imageUrlBuilder);
        }
        public static IImageFilters PageToImage(this IImageFilters imageUrlBuilder, int pageIndex)
        {
            imageUrlBuilder.Filter($"pagetoimage({pageIndex})");

            return(imageUrlBuilder);
        }
Example #16
0
        public static IImageFilters BackgroundColor(this IImageFilters imageUrlBuilder, double r, double g, double b)
        {
            imageUrlBuilder.Filter($"backgroundcolor({r.ToUrlString()},{g.ToUrlString()},{b.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #17
0
        public static IImageFilters SvgRemoveSize(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter("removesize()");

            return(imageUrlBuilder);
        }
Example #18
0
        public static IImageFilters Grayscale(this IImageFilters imageUrlBuilder, double value)
        {
            imageUrlBuilder.Filter($"grayscale({value.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #19
0
        public static IImageFilters BackgroundColor(this IImageFilters imageUrlBuilder, byte r, byte g, byte b)
        {
            imageUrlBuilder.Filter($"backgroundcolor({r},{g},{b})");

            return(imageUrlBuilder);
        }
Example #20
0
        public static IImageFilters BlackWhite(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter($"blackwhite()");

            return(imageUrlBuilder);
        }
Example #21
0
        public static IImageFilters NoCache(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter($"nocache()");

            return(imageUrlBuilder);
        }
Example #22
0
        public static IImageFilters Brightness(this IImageFilters imageUrlBuilder, double value)
        {
            imageUrlBuilder.Filter($"brightness({value.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #23
0
        public static IImageFilters Crop(this IImageFilters imageUrlBuilder, double width, double heigth)
        {
            Crop(imageUrlBuilder, 0, 0, width, heigth);

            return(imageUrlBuilder);
        }
Example #24
0
        public static IImageFilters Contrast(this IImageFilters imageUrlBuilder, double value)
        {
            imageUrlBuilder.Filter($"contrast({value.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #25
0
        public static IImageFilters Blur(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter($"blur()");

            return(imageUrlBuilder);
        }
Example #26
0
        public static IImageFilters Invert(this IImageFilters imageUrlBuilder)
        {
            imageUrlBuilder.Filter($"invert()");

            return(imageUrlBuilder);
        }
Example #27
0
        public static IImageFilters Resize(this IImageFilters imageUrlBuilder, int size)
        {
            imageUrlBuilder.Filter($"resize({size})");

            return(imageUrlBuilder);
        }
Example #28
0
        public static IImageFilters Rotate(this IImageFilters imageUrlBuilder, double angle)
        {
            imageUrlBuilder.Filter($"rotate({angle.ToUrlString()})");

            return(imageUrlBuilder);
        }
Example #29
0
        public static IImageFilters Flip(this IImageFilters imageUrlBuilder, FlipMode flippingMode)
        {
            imageUrlBuilder.Filter($"flip({flippingMode.ToUrlString()})");

            return(imageUrlBuilder);
        }
        public static IImageBuildUrl Jpg(this IImageFilters imageUrlBuilder, int quality)
        {
            imageUrlBuilder.Filter($"jpg({quality})");

            return(imageUrlBuilder);
        }