diff --git a/src/wand/magick.rs b/src/wand/magick.rs index dada86b..fb13f23 100644 --- a/src/wand/magick.rs +++ b/src/wand/magick.rs @@ -1016,6 +1016,12 @@ impl MagickWand { /// Applies k-means color reduction to the image. MagickKmeansImage => kmeans(number_colors: size_t, max_iterations: size_t, tolerance: f64) + + /// Extracts the 'mean' from the image and adjust the image to try make set its gamma appropriately. + MagickAutoGammaImage => auto_gamma() + + /// Adjusts the levels of a particular image channel by scaling the minimum and maximum values to the full quantum range. + MagickAutoLevelImage => auto_level() ); get!(get_image_colors, MagickGetImageColors, size_t); diff --git a/tests/lib.rs b/tests/lib.rs index efb515d..7f36ad6 100644 --- a/tests/lib.rs +++ b/tests/lib.rs @@ -398,6 +398,25 @@ fn test_resource_limits() { } #[test] +fn test_auto_level() { + START.call_once(|| { + magick_wand_genesis(); + }); + let wand = MagickWand::new(); + assert!(wand.read_image("tests/data/IMG_5745.JPG").is_ok()); + assert!(wand.auto_level().is_ok()); +} + +#[test] +fn test_auto_gamma() { + START.call_once(|| { + magick_wand_genesis(); + }); + let wand = MagickWand::new(); + assert!(wand.read_image("tests/data/IMG_5745.JPG").is_ok()); + assert!(wand.auto_gamma().is_ok()); +} + fn test_import_export_pixels_roundtrip() { START.call_once(|| { magick_wand_genesis();