public static void ProcessImage(IEnumerable <IPlugin> extensions, object source, object target = null, ResizeSettings resizeSettings = null) { resizeSettings = resizeSettings ?? new ResizeSettings() { }; target = target ?? new MemoryStream(); var builderConfig = new ImageResizer.Configuration.Config(); foreach (var extension in extensions) { extension.Install(builderConfig); } var imageBuilder = new ImageBuilder(builderConfig.Plugins.ImageBuilderExtensions, builderConfig.Plugins, builderConfig.Pipeline, builderConfig.Pipeline); Console.WriteLine("processing " + source); if (source is string && source.ToString().StartsWith("http")) { source = new MemoryStream(new WebClient().DownloadData(source.ToString())); } imageBuilder.Build(source, target, resizeSettings, false); }
private void CropImage(Rectangle cp, Stream source, MemoryStream croppedImage) { var imageResizer = new ImageResizer.Configuration.Config(); string cropFormat = $"?crop={cp.Left},{cp.Top},{cp.Right},{cp.Bottom}"; var resizeJob = new ImageResizer.ImageJob(source, croppedImage, new Instructions(cropFormat)); imageResizer.Build(resizeJob); }
public IPlugin Install(ImageResizer.Configuration.Config c) { if (c.Plugins.Has <ProfilingObserverPlugin>()) { return(null); } c.Plugins.AllPlugins.AddFirst(this); c.Plugins.ImageBuilderExtensions.AddFirst(this); return(this); }
public static void ProcessImage(IEnumerable<IPlugin> extensions, object source, object target = null, ResizeSettings resizeSettings = null) { resizeSettings = resizeSettings ?? new ResizeSettings() {}; target = target ?? new MemoryStream(); var builderConfig = new ImageResizer.Configuration.Config(); foreach (var extension in extensions) extension.Install(builderConfig); var imageBuilder = new ImageBuilder(builderConfig.Plugins.ImageBuilderExtensions, builderConfig.Plugins, builderConfig.Pipeline, builderConfig.Pipeline); Console.WriteLine("processing " + source); if (source is string && source.ToString().StartsWith("http")) { source = new MemoryStream(new WebClient().DownloadData(source.ToString())); } imageBuilder.Build(source, target, resizeSettings, false); }
public bool Uninstall(ImageResizer.Configuration.Config c) { c.Plugins.remove_plugin(this); return(true); }
public Stream ResizeImage(Stream image, int width, int height) { var config = new ImageResizer.Configuration.Config(); var buffer = new MemoryStream(); var job = new ImageJob(image, buffer, new Instructions($"width={width}")); config.Build(job); return buffer; //var resizedImage = new Bitmap(image); //var result = new Bitmap(width, height); //result.SetResolution(resizedImage.HorizontalResolution, resizedImage.VerticalResolution); //using (Graphics graphics = Graphics.FromImage(result)) //{ // graphics.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.HighQuality; // graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic; // graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality; // graphics.DrawImage(resizedImage, 0, 0, width, height); //} //resizedImage.Dispose(); //await _storageHelper.Storefile(result, _thumbnailImage); //return await _storageHelper.GetFile(_thumbnailImage); }
public ImageResizer.Plugins.IPlugin Install(ImageResizer.Configuration.Config c) { c.Plugins.add_plugin(this); return(this); }