public string Execute(FileItem item, string infile, string dest, ValuePairEnumerator configData) { var conf = new EnhanceViewModel(configData); dest = Path.Combine(Path.GetDirectoryName(dest), Path.GetFileNameWithoutExtension(dest) + ".jpg"); using (MagickImage image = new MagickImage(infile)) { if (conf.Normalize) image.Normalize(); if (conf.AutoGamma) image.AutoGamma(); image.BrightnessContrast(new Percentage(conf.Brightness), new Percentage(conf.Contrast)); if (conf.SContrast > 0) image.SigmoidalContrast(true, conf.SContrast); if (conf.Edge) image.AdaptiveSharpen(); if (conf.Sharpen > 0) image.UnsharpMask(1.5, 1.5, conf.Sharpen/100.0, 0.2); image.Format = MagickFormat.Jpeg; image.Write(dest); } return dest; }
private void ExecuteBrightnessContrast(XmlElement element, MagickImage image) { Hashtable arguments = new Hashtable(); foreach (XmlAttribute attribute in element.Attributes) { if (attribute.Name == "brightness") arguments["brightness"] = Variables.GetValue<Percentage>(attribute); else if (attribute.Name == "channels") arguments["channels"] = Variables.GetValue<Channels>(attribute); else if (attribute.Name == "contrast") arguments["contrast"] = Variables.GetValue<Percentage>(attribute); } if (OnlyContains(arguments, "brightness", "contrast")) image.BrightnessContrast((Percentage)arguments["brightness"], (Percentage)arguments["contrast"]); else if (OnlyContains(arguments, "brightness", "contrast", "channels")) image.BrightnessContrast((Percentage)arguments["brightness"], (Percentage)arguments["contrast"], (Channels)arguments["channels"]); else throw new ArgumentException("Invalid argument combination for 'brightnessContrast', allowed combinations are: [brightness, contrast] [brightness, contrast, channels]"); }
public bool OverrideTextureMaps(string textureName, double reflection, double blur, double specular) { using (var image = new MagickImage(Kn5.TexturesData[textureName])) { if (image.Width > 512 || image.Height > 512) { image.Resize(512, 512); } image.BrightnessContrast(reflection, 1d, Channels.Red); image.BrightnessContrast(blur, 1d, Channels.Green); image.BrightnessContrast(specular, 1d, Channels.Blue); return OverrideTexture(textureName, image.ToByteArray(MagickFormat.Bmp)); } }
public static void threshold(string image_path, string output_path, int brightness = 20, int contrast = 20, int posterize = 2) { using (MagickImage image = new MagickImage(image_path)) { image.BrightnessContrast(brightness, contrast); image.ColorSpace = ColorSpace.Gray; image.Posterize(posterize); image.Normalize(); image.Write(output_path); } }
public void Test_BrightnessContrast() { using (MagickImage image = new MagickImage(Files.Builtin.Wizard)) { ColorAssert.AreNotEqual(MagickColors.White, image, 340, 295); image.BrightnessContrast(new Percentage(50), new Percentage(50)); image.Clamp(); ColorAssert.AreEqual(MagickColors.White, image, 340, 295); } }