diff --git a/wand/mogrify.c b/wand/mogrify.c
index 4761eea..4c586d4 100644
--- a/wand/mogrify.c
+++ b/wand/mogrify.c
@@ -2217,6 +2217,23 @@
*image=median_image;
break;
}
+ if (LocaleCompare("mode",option+1) == 0)
+ {
+ Image
+ *mode_image;
+
+ /*
+ Mode image.
+ */
+ (void) SyncImageSettings(mogrify_info,*image);
+ (void) ParseGeometry(argv[i+1],&geometry_info);
+ mode_image=ModeImage(*image,geometry_info.rho,exception);
+ if (mode_image == (Image *) NULL)
+ break;
+ *image=DestroyImage(*image);
+ *image=mode_image;
+ break;
+ }
if (LocaleCompare("modulate",option+1) == 0)
{
(void) SyncImageSettings(mogrify_info,*image);
@@ -5404,6 +5421,17 @@
ThrowMogrifyInvalidArgumentException(option,argv[i]);
break;
}
+ if (LocaleCompare("mode",option+1) == 0)
+ {
+ if (*option == '+')
+ break;
+ i++;
+ if (i == (ssize_t) argc)
+ ThrowMogrifyException(OptionError,"MissingArgument",option);
+ if (IsGeometry(argv[i]) == MagickFalse)
+ ThrowMogrifyInvalidArgumentException(option,argv[i]);
+ break;
+ }
if (LocaleCompare("monitor",option+1) == 0)
break;
if (LocaleCompare("monochrome",option+1) == 0)