<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>ImageMagick: Command-line Tools: Mogrify</title>
  <meta http-equiv="content-language" content="en-US">
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <meta http-equiv="reply-to" content="magick-users@imagemagick.org">
  <meta name="application-name" content="ImageMagick">
  <meta name="description" content="ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, JPEG-2000, GIF, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.">
  <meta name="application-url" content="http://www.imagemagick.org">
  <meta name="generator" content="PHP">
  <meta name="keywords" content="command-line, tools:, mogrify, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert">
  <meta name="rating" content="GENERAL">
  <meta name="robots" content="INDEX, FOLLOW">
  <meta name="generator" content="ImageMagick Studio LLC">
  <meta name="author" content="ImageMagick Studio LLC">
  <meta name="revisit-after" content="2 DAYS">
  <meta name="resource-type" content="document">
  <meta name="copyright" content="Copyright (c) 1999-2015 ImageMagick Studio LLC">
  <meta name="distribution" content="Global">
  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1">
  <link rel="icon" href="../images/wand.png">
  <link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
  <link rel="stylesheet" href="css/bootstrap.min.css">
  <link rel="stylesheet" href="../css/magick.css">
</head>

<body>
<div class="main">
<div class="magick-masthead">
  <div class="container">
    <script type="text/javascript">
    <!--
      google_ad_client = "pub-3129977114552745";
      google_ad_slot = "5439289906";
      google_ad_width = 728;
      google_ad_height = 90;
    //-->
    </script>
    <center><script type="text/javascript" src="http://localhost/pagead/show_ads.js">
    </script></center>
    <nav class="magick-nav">
      <a class="magick-nav-item " href="../index.html">Home</a>
      <a class="magick-nav-item " href="binary-releases.html">Download</a>
      <a class="magick-nav-item " href="command-line-tools.html">Tools</a>
      <a class="magick-nav-item " href="command-line-options.html">Options</a>
      <a class="magick-nav-item " href="resources.html">Resources</a>
      <a class="magick-nav-item " href="api.html">Develop</a>
      <a class="magick-nav-item " href="http://nextgen.imagemagick.org/script/search.php">Search</a>
      <a class="magick-nav-item pull-right" href="http://www.imagemagick.org/discourse-server/">Community</a>
    </nav>
  </div>
</div>
<div class="container">
<div class="magick-header">
<p class="text-center"><a href="mogrify.html#usage">Example Usage</a> • <a href="mogrify.html#options">Option Summary</a></p>

<p class="lead magick-description">Use the <code>mogrify</code> program to resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and much more.   This tool is similiar to <a href="convert.html">convert</a> except that the original image file is overwritten (unless you change the file suffix with the <a href="command-line-options.html#format">-format</a> option) with any changes you request.  See <a href="command-line-processing.html">Command Line Processing</a> for advice on how to structure your <code>mogrify</code> command or see below for sample usages of the command.</p>

<h2 class="magick-header"><a id="usage"></a>Example Usage</h2>

<p>We list a few examples of the <code>mogrify</code> command here to illustrate its usefulness and ease of use.  To get started, let's reduce the size of our
rose:</p>

<pre>
mogrify -resize 50% rose.jpg
</pre>

<ul>
  <a href="../images/rose.jpg">
  <img src="../images/rose.jpg" width="70" height="46" alt="rose">
  </a>
  <img style="margin-top:13px; margin-bottom:13px;" src="../images/right.gif" width="20" height="20" alt="==&gt;">
  <a href="../images/rose.png">
  <img style="margin-top:12px; margin-bottom: 11px;" src="../images/rose.png" width="35" height="23" alt="rose">
  </a>
</ul>

<p>You can resize all your JPEG images in a folder to a maximum dimension of 256x256 with this command:</p>

<pre>
mogrify -resize 256x256 *.jpg
</pre>

<p>Finally, we convert all our PNG images in a folder to the JPEG format:</p>

<pre>
mogrify -format jpg *.png
</pre>

<p>Here image files 1.png, 2.png, etc., are left untouched and files 1.jpg, 2.jpg, etc., are created.  They are copies of their respective PNG images except are stored  in the JPEG image format.</p>


<p>You can find additional examples of using <code>mogrify</code> in <a href="http://www.ibm.com/developerworks/library/l-graf/?ca=dnt-428">Graphics from the Command Line</a>.  Further discussion is available in  <a href="http://www.ibm.com/developerworks/library/l-graf2/?ca=dgr-lnxw15GraphicsLine">More Graphics from the Command Line</a> and <a href="http://www.imagemagick.org/Usage/">Examples of ImageMagick Usage</a>.</p>

<h2 class="magick-header"><a id="options"></a>Option Summary</h2>

<p>The <code>mogrify</code> command recognizes these options.  Click on an option to get more details about how that option works.</p>

<table class="table table-condensed table-striped">
  <tbody>
  <tr>
    <th align="left">Option</th>
    <th align="left">Description</th>
  </tr>

  <tr>
    <td><a href="command-line-options.html#adaptive-blur">-adaptive-blur <var>geometry</var></a></td>
    <td>adaptively blur pixels; decrease effect near edges</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#adaptive-resize">-adaptive-resize <var>geometry</var></a></td>
    <td>adaptively resize image with data dependent triangulation.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#adaptive-sharpen">-adaptive-sharpen <var>geometry</var></a></td>
    <td>adaptively sharpen pixels; increase effect near edges</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#adjoin">-adjoin</a></td>
    <td>join images into a single multi-image file</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#affine">-affine <var>matrix</var></a></td>
    <td>affine transform matrix</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#alpha">-alpha</a></td>
    <td>on, activate, off, deactivate, set, opaque, copy",
transparent, extract, background, or shape the alpha channel</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#annotate">-annotate <var>geometry text</var></a></td>
    <td>annotate the image with text</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#antialias">-antialias</a></td>
    <td>remove pixel-aliasing</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#append">-append</a></td>
    <td>append an image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#authenticate">-authenticate <var>value</var></a></td>
    <td>decipher image with this password</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#auto-gamma">-auto-gamma</a></td>
    <td>automagically adjust gamma level of image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#auto-level">-auto-level</a></td>
    <td>automagically adjust color levels of image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#auto-orient">-auto-orient</a></td>
    <td>automagically orient image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#background">-background <var>color</var></a></td>
    <td>background color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#bench">-bench <var>iterations</var></a></td>
    <td>measure performance</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#bias">-bias <var>value</var></a></td>
    <td>add bias when convolving an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#black-threshold">-black-threshold <var>value</var></a></td>
    <td>force all pixels below the threshold into black</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#blue-primary">-blue-primary <var>point</var></a></td>
    <td>chromaticity blue primary point</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#blue-shift">-blue-shift  <var>factor</var></a></td>
    <td>simulate a scene at nighttime in the moonlight</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#blur">-blur <var>geometry</var></a></td>
    <td>reduce image noise and reduce detail levels</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#border">-border <var>geometry</var></a></td>
    <td>surround image with a border of color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#bordercolor">-bordercolor <var>color</var></a></td>
    <td>border color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#brightness-contrast">-brightness-contrast <var>geometry</var></a></td>
    <td>improve brightness / contrast of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#canny">-canny <var>geometry</var></a></td>
    <td>use a multi-stage algorithm to detect a wide range of edges in the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#caption">-caption <var>string</var></a></td>
    <td>assign a caption to an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#cdl">-cdl <var>filename</var></a></td>
    <td>color correct with a color decision list</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#channel">-channel <var>type</var></a></td>
    <td>apply option to select image channels</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#charcoal">-charcoal <var>radius</var></a></td>
    <td>simulate a charcoal drawing</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#chop">-chop <var>geometry</var></a></td>
    <td>remove pixels from the image interior</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#clip">-clip</a></td>
    <td>clip along the first path from the 8BIM profile</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#clamp">-clamp</a></td>
    <td>set each pixel whose value is below zero to zero and any the pixel whose value is above the quantum range to the quantum range (e.g. 65535) otherwise the pixel value remains unchanged.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#clip-mask">-clip-mask</a> <var>filename</var></td>
    <td>associate clip mask with the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#clip-path">-clip-path <var>id</var></a></td>
    <td>clip along a named path from the 8BIM profile</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#clut">-clut</a></td>
    <td>apply a color lookup table to the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#complex">-complex<var>operator</var></a></td>
    <td>perform complex mathematics on an image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#connected-components">-connected-components <var>connectivity</var></a></td>
    <td>connected-components uniquely labeled, choose from 4 or 8 way connectivity</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#contrast-stretch">-contrast-stretch <var>geometry</var></a></td>
    <td>improve the contrast in an image by `stretching' the range of intensity value</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#coalesce">-coalesce</a></td>
    <td>merge a sequence of images</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#colorize">-colorize <var>value</var></a></td>
    <td>colorize the image with the fill color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#color-matrix">-color-matrix <var>matrix</var></a></td>
    <td>apply color correction to the image.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#colors">-colors <var>value</var></a></td>
    <td>preferred number of colors in the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#colorspace">-colorspace <var>type</var></a></td>
    <td>set image colorspace</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#combine">-combine</a></td>
    <td>combine a sequence of images</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#comment">-comment <var>string</var></a></td>
    <td>annotate image with comment</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#compose">-compose <var>operator</var></a></td>
    <td>set image composite operator</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#composite">-composite</a></td>
    <td>composite image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#compress">-compress <var>type</var></a></td>
    <td>image compression type</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#contrast">-contrast</a></td>
    <td>enhance or reduce the image contrast</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#convolve">-convolve <var>coefficients</var></a></td>
    <td>apply a convolution kernel to the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#crop">-crop <var>geometry</var></a></td>
    <td>crop the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#cycle">-cycle <var>amount</var></a></td>
    <td>cycle the image colormap</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#decipher">-decipher <var>filename</var></a></td>
    <td>convert cipher pixels to plain</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#debug">-debug <var>events</var></a></td>
    <td>display copious debugging information</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#define">-define <var>format:option</var></a></td>
    <td>define one or more image format options</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#deconstruct">-deconstruct</a></td>
    <td>break down an image sequence into constituent parts</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#delay">-delay <var>value</var></a></td>
    <td>display the next image after pausing</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#delete">-delete <var>index</var></a></td>
    <td>delete the image from the image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#density">-density <var>geometry</var></a></td>
    <td>horizontal and vertical density of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#depth">-depth <var>value</var></a></td>
    <td>image depth</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#despeckle">-despeckle</a></td>
    <td>reduce the speckles within an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#direction">-direction <var>type</var></a></td>
    <td>render text right-to-left or left-to-right</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#display">-display <var>server</var></a></td>
    <td>get image or font from this X server</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#dispose">-dispose <var>method</var></a></td>
    <td>layer disposal method</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#distort">-distort <var>type coefficients</var></a></td>
    <td>distort image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#distribute-cache">-distribute-cache <var>port</var></a></td>
    <td>launch a pixel cache server</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#dither">-dither  <var>method</var></a></td>
    <td>apply error diffusion to image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#draw">-draw <var>string</var></a></td>
    <td>annotate the image with a graphic primitive</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#duplicate">-duplicate <var>count,indexes</var></a></td>
    <td>duplicate an image one or more times</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#edge">-edge <var>radius</var></a></td>
    <td>apply a filter to detect edges in the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#emboss">-emboss <var>radius</var></a></td>
    <td>emboss an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#encipher">-encipher <var>filename</var></a></td>
    <td>convert plain pixels to cipher pixels</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#encoding">-encoding <var>type</var></a></td>
    <td>text encoding type</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#endian">-endian <var>type</var></a></td>
    <td>endianness (MSB or LSB) of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#enhance">-enhance</a></td>
    <td>apply a digital filter to enhance a noisy image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#equalize">-equalize</a></td>
    <td>perform histogram equalization to an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#evaluate">-evaluate <var>operator value</var></a></td>
    <td>evaluate an arithmetic, relational, or logical expression</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#evaluate-sequence">-evaluate-sequence <var>operator</var></a></td>
    <td>evaluate an arithmetic, relational, or logical expression for an image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#extent">-extent <var>geometry</var></a></td>
    <td>set the image size</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#extract">-extract <var>geometry</var></a></td>
    <td>extract area from image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#family">-family <var>name</var></a></td>
    <td>render text with this font family</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#features">-features <var>distance</var></a></td>
    <td>analyze image features (e.g. contract, correlations, etc.).</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#fft">-fft</a></td>
    <td>implements the discrete Fourier transform (DFT)</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#fill">-fill <var>color</var></a></td>
    <td>color to use when filling a graphic primitive</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#filter">-filter <var>type</var></a></td>
    <td>use this filter when resizing an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#flatten">-flatten</a></td>
    <td>flatten a sequence of images</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#flip">-flip</a></td>
    <td>flip image in the vertical direction</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#floodfill">-floodfill <var>geometry color</var></a></td>
    <td>floodfill the image with color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#flop">-flop</a></td>
    <td>flop image in the horizontal direction</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#font">-font <var>name</var></a></td>
    <td>render text with this font</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#format">-format <var>type</var></a></td>
    <td>output formatted image characteristics</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#frame">-frame <var>geometry</var></a></td>
    <td>surround image with an ornamental border</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#function">-function <var>name</var></a></td>
    <td>apply a function to the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#fuzz">-fuzz <var>distance</var></a></td>
    <td>colors within this distance are considered equal</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#fx">-fx <var>expression</var></a></td>
    <td>apply mathematical expression to an image channel(s)</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#gamma">-gamma <var>value</var></a></td>
    <td>level of gamma correction</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#gaussian-blur">-gaussian-blur <var>geometry</var></a></td>
    <td>reduce image noise and reduce detail levels</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#geometry">-geometry <var>geometry</var></a></td>
    <td>preferred size or location of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#gravity">-gravity <var>type</var></a></td>
    <td>horizontal and vertical text placement</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#intensity">-grayscale <var>method</var></a></td>
    <td>convert image to grayscale</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#green-primary">-green-primary <var>point</var></a></td>
    <td>chromaticity green primary point</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#help">-help</a></td>
    <td>print program options</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#hough-lines">-hough-lines <var>geometry</var></a></td>
    <td>identify lines in the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#identify">-identify</a></td>
    <td>identify the format and characteristics of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#ift">-ifft</a></td>
    <td>implements the inverse discrete Fourier transform (DFT)</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#implode">-implode <var>amount</var></a></td>
    <td>implode image pixels about the center</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#insert">-insert <var>index</var></a></td>
    <td>insert last image into the image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#intensity">-intensity <var>method</var></a></td>
    <td>method to generate an intensity value from a pixel</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#intent">-intent <var>type</var></a></td>
    <td>type of rendering intent when managing the image color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#interlace">-interlace <var>type</var></a></td>
    <td>type of image interlacing scheme</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#interline-spacing">-interline-spacing <var>value</var></a></td>
    <td>the space between two text lines</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#interpolate">-interpolate <var>method</var></a></td>
    <td>pixel color interpolation method</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#interword-spacing">-interword-spacing <var>value</var></a></td>
    <td>the space between two words</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#kerning">-kerning <var>value</var></a></td>
    <td>the space between two characters</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#kuwahara">-kuwahara <var>geometry</var></a></td>
    <td>edge preserving noise reduction filter</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#label">-label <var>string</var></a></td>
    <td>assign a label to an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#lat">-lat <var>geometry</var></a></td>
    <td>local adaptive thresholding</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#layers">-layers <var>method</var></a></td>
    <td>optimize or compare image layers</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#level">-level <var>value</var></a></td>
    <td>adjust the level of image contrast</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#limit">-limit <var>type value</var></a></td>
    <td>pixel cache resource limit</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#linear-stretch">-linear-stretch <var>geometry</var></a></td>
    <td>linear with saturation histogram stretch</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#liquid-rescale">-liquid-rescale <var>geometry</var></a></td>
    <td>rescale image with seam-carving</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#log">-log <var>format</var></a></td>
    <td>format of debugging information</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#loop">-loop <var>iterations</var></a></td>
    <td>add Netscape loop extension to your GIF animation</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#mask">-mask <var>filename</var></a></td>
    <td>associate a mask with the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#mattecolor">-mattecolor <var>color</var></a></td>
    <td>frame color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#median">-median <var>radius</var></a></td>
    <td>apply a median filter to the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#mean-shift">-mean-shift <var>geometry</var></a></td>
    <td>delineate arbitrarily shaped clusters in the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#metric">-metric <var>type</var></a></td>
    <td>measure differences between images with this metric</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#mode">-mode <var>radius</var></a></td>
    <td>make each pixel the 'predominant color' of the neighborhood</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#modulate">-modulate <var>value</var></a></td>
    <td>vary the brightness, saturation, and hue</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#monitor">-monitor</a></td>
    <td>monitor progress</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#monochrome">-monochrome</a></td>
    <td>transform image to black and white</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#morph">-morph <var>value</var></a></td>
    <td>morph an image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#morphology">-morphology <var>method</var></a> <var>kernel</var></td>
    <td>apply a morphology method to the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#motion-blur">-motion-blur <var>geometry</var></a></td>
    <td>simulate motion blur</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#negate">-negate</a></td>
    <td>replace each pixel with its complementary color </td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#noise">-noise <var>radius</var></a></td>
    <td>add or reduce noise in an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#normalize">-normalize</a></td>
    <td>transform image to span the full range of colors</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#opaque">-opaque <var>color</var></a></td>
    <td>change this color to the fill color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#ordered-dither">-ordered-dither <var>NxN</var></a></td>
    <td>ordered dither the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#orient">-orient <var>type</var></a></td>
    <td>image orientation</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#page">-page <var>geometry</var></a></td>
    <td>size and location of an image canvas (setting)</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#paint">-paint <var>radius</var></a></td>
    <td>simulate an oil painting</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#perceptible">-perceptible</a></td>
    <td>set each pixel whose value is less than |<var>epsilon</var>| to <var>-epsilon</var> or <var>epsilon</var> (whichever is closer) otherwise the pixel value remains unchanged.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#ping">-ping</a></td>
    <td>efficiently determine image attributes</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#pointsize">-pointsize <var>value</var></a></td>
    <td>font point size</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#polaroid">-polaroid <var>angle</var></a></td>
    <td>simulate a Polaroid picture</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#poly">-poly <var>terms</var></a></td>
    <td>build a polynomial from the image sequence and the corresponding terms (coefficients and degree pairs).</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#posterize">-posterize <var>levels</var></a></td>
    <td>reduce the image to a limited number of color levels</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#precision">-precision <var>value</var></a></td>
    <td>set the maximum number of significant digits to be printed</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#preview">-preview <var>type</var></a></td>
    <td>image preview type</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#print">-print <var>string</var></a></td>
    <td>interpret string and print to console</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#process">-process <var>image-filter</var></a></td>
    <td>process the image with a custom image filter</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#profile">-profile <var>filename</var></a></td>
    <td>add, delete, or apply an image profile</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#quality">-quality <var>value</var></a></td>
    <td>JPEG/MIFF/PNG compression level</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#quantize">-quantize <var>colorspace</var></a></td>
    <td>reduce image colors in this colorspace</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#quiet">-quiet</a></td>
    <td>suppress all warning messages</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#radial-blur">-radial-blur <var>angle</var></a></td>
    <td>radial blur the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#raise">-raise <var>value</var></a></td>
    <td>lighten/darken image edges to create a 3-D effect</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#random-threshold">-random-threshold <var>low,high</var></a></td>
    <td>random threshold the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#red-primary">-red-primary <var>point</var></a></td>
    <td>chromaticity red primary point</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#regard-warnings">-regard-warnings</a></td>
    <td>pay attention to warning messages.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#region">-region <var>geometry</var></a></td>
    <td>apply options to a portion of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#remap">-remap <var>filename</var></a></td>
    <td>transform image colors to match this set of colors</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#render">-render</a></td>
    <td>render vector graphics</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#repage">-repage <var>geometry</var></a></td>
    <td>size and location of an image canvas</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#resample">-resample <var>geometry</var></a></td>
    <td>change the resolution of an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#resize">-resize <var>geometry</var></a></td>
    <td>resize the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#respect-parentheses">-respect-parentheses</a></td>
    <td>settings remain in effect until parenthesis boundary.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#roll">-roll <var>geometry</var></a></td>
    <td>roll an image vertically or horizontally</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#rotate">-rotate <var>degrees</var></a></td>
    <td>apply Paeth rotation to the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#sample">-sample <var>geometry</var></a></td>
    <td>scale image with pixel sampling</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#sampling-factor">-sampling-factor <var>geometry</var></a></td>
    <td>horizontal and vertical sampling factor</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#scale">-scale <var>geometry</var></a></td>
    <td>scale the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#scene">-scene <var>value</var></a></td>
    <td>image scene number</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#seed">-seed <var>value</var></a></td>
    <td>seed a new sequence of pseudo-random numbers</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#segment">-segment <var>values</var></a></td>
    <td>segment an image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#threshold">-selective-blur <var>geometry</var></a></td>
    <td>selectively blur pixels within a contrast threshold</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#separate">-separate</a></td>
    <td>separate an image channel into a grayscale image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#sepia-tone">-sepia-tone <var>threshold</var></a></td>
    <td>simulate a sepia-toned photo</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#set">-set <var>attribute value</var></a></td>
    <td>set an image attribute</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#shade">-shade <var>degrees</var></a></td>
    <td>shade the image using a distant light source</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#shadow">-shadow <var>geometry</var></a></td>
    <td>simulate an image shadow</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#sharpen">-sharpen <var>geometry</var></a></td>
    <td>sharpen the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#shave">-shave <var>geometry</var></a></td>
    <td>shave pixels from the image edges</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#shear">-shear <var>geometry</var></a></td>
    <td>slide one edge of the image along the X or Y axis</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#sigmoidal">-sigmoidal-contrast <var>geometry</var></a></td>
    <td>increase the contrast without saturating highlights or shadows</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#size">-size <var>geometry</var></a></td>
    <td>width and height of image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#sketch">-sketch <var>geometry</var></a></td>
    <td>simulate a pencil sketch</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#smush">-smush <var>offset</var></a></td>
    <td>smush an image sequence together</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#solarize">-solarize <var>threshold</var></a></td>
    <td>negate all pixels above the threshold level</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#splice">-splice <var>geometry</var></a></td>
    <td>splice the background color into the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#spread">-spread <var>radius</var></a></td>
    <td>displace image pixels by a random amount</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#statistic">-statistic <var>type</var> <var>geometry</var></a></td>
    <td>replace each pixel with corresponding statistic from the neighborhood</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#strip">-strip</a></td>
    <td>strip image of all profiles and comments</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#stroke">-stroke <var>color</var></a></td>
    <td>graphic primitive stroke color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#strokewidth">-strokewidth <var>value</var></a></td>
    <td>graphic primitive stroke width</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#stretch">-stretch <var>type</var></a></td>
    <td>render text with this font stretch</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#style">-style <var>type</var></a></td>
    <td>render text with this font style</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#swap">-swap <var>indexes</var></a></td>
    <td>swap two images in the image sequence</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#swirl">-swirl <var>degrees</var></a></td>
    <td>swirl image pixels about the center</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#synchronize">-synchronize</a></td>
    <td>synchronize image to storage device</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#texture">-texture <var>filename</var></a></td>
    <td>name of texture to tile onto the image background</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#threshold">-threshold <var>value</var></a></td>
    <td>threshold the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#thumbnail">-thumbnail <var>geometry</var></a></td>
    <td>create a thumbnail of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#tile">-tile <var>filename</var></a></td>
    <td>tile image when filling a graphic primitive</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#tile-offset">-tile-offset <var>geometry</var></a></td>
    <td>set the image tile offset</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#tint">-tint <var>value</var></a></td>
    <td>tint the image with the fill color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#transform">-transform</a></td>
    <td>affine transform image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#transparent">-transparent <var>color</var></a></td>
    <td>make this color transparent within the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#transparent-color">-transparent-color <var>color</var></a></td>
    <td>transparent color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#transpose">-transpose</a></td>
    <td>flip image in the vertical direction and rotate 90 degrees</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#transverse">-transverse</a></td>
    <td>flop image in the horizontal direction and rotate 270 degrees</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#treedepth">-treedepth <var>value</var></a></td>
    <td>color tree depth</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#trim">-trim</a></td>
    <td>trim image edges</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#type">-type <var>type</var></a></td>
    <td>image type</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#undercolor">-undercolor <var>color</var></a></td>
    <td>annotation bounding box color</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#unique-colors">-unique-colors</a></td>
    <td>discard all but one of any pixel color.</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#units">-units <var>type</var></a></td>
    <td>the units of image resolution</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#unsharp">-unsharp <var>geometry</var></a></td>
    <td>sharpen the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#verbose">-verbose</a></td>
    <td>print detailed information about the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#version">-version</a></td>
    <td>print version information</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#view">-view</a></td>
    <td>FlashPix viewing transforms</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#vignette">-vignette <var>geometry</var></a></td>
    <td>soften the edges of the image in vignette style</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#virtual-pixel">-virtual-pixel <var>method</var></a></td>
    <td>access method for pixels outside the boundaries of the image</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#wave">-wave <var>geometry</var></a></td>
    <td>alter an image along a sine wave</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#weight">-weight <var>type</var></a></td>
    <td>render text with this font weight</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#white-point">-white-point <var>point</var></a></td>
    <td>chromaticity white point</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#white-threshold">-white-threshold <var>value</var></a></td>
    <td>force all pixels above the threshold into white</td>
  </tr>

  <tr>
    <td><a href="command-line-options.html#write">-write <var>filename</var></a></td>
    <td>write images to this file</td>
  </tr>

  </tbody>
</table>

</div>
  <footer class="magick-footer">
    <div class="magick-nav-item pull-left">
      <a href="support.html">Donate</a>
    </div>
    <p><a href="sitemap.html">Sitemap</a> •
    <a href="links.html">Related</a> •
    <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Image Studio</a> •
    <a href="http://jqmagick.imagemagick.org/">JqMagick</a>
</p>
    <p><a href="mogrify.html#">Back to top</a> •
    <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
    <a href="http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
    <p><small>©  1999-2015 ImageMagick Studio LLC</small></p>
  </footer>
</div><!-- /.container -->

  <script src="https://localhost/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
  <script src="../js/bootstrap.min.js"></script>
  <script type="text/javascript">
    /* <![CDATA[ */
    (function() {
        var s = document.createElement('offline-script'), t = document.getElementsByTagName('offline-script')[0];
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto';
        t.parentNode.insertBefore(s, t);
    })();
    /* ]]> */
  </script>
</div>
</body>
</html>
