



<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8"  />
  <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"  />
  <title>Magick++, C++ API for ImageMagick: Image Class @ ImageMagick</title>
  <meta name="application-name" content="ImageMagick" />
  <meta name="description" content="Use ImageMagick® to create, edit, compose, convert bitmap images. With ImageMagick you can resize your image, crop it, change its shades and colors, add captions, among other operations." />
  <meta name="application-url" content="https://imagemagick.org" />
  <meta name="generator" content="PHP" />
  <meta name="keywords" content="magick++, c++, api, for, imagemagick:, image, class, 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-2017 ImageMagick Studio LLC" />
  <meta name="distribution" content="Global" />
  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" />
  <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
  <link href="https://imagemagick.org/api/Image++.html" rel="canonical" />
  <link href="../../images/wand.png" rel="icon" />
  <link href="../../images/wand.ico" rel="shortcut icon" />
  <link href="../assets/magick.css" rel="stylesheet" />
</head>
<body>
  <header>
  <nav class="navbar navbar-expand-md navbar-dark bg-dark fixed-top">
    <a class="navbar-brand" href="../../"><img class="d-block" id="icon" alt="ImageMagick" width="32" height="32" src="../../images/wand.ico"/></a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsExampleDefault" aria-controls="navbarsExampleDefault" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>

    <div class="navbar-collapse collapse" id="navbarsExampleDefault" style="">
    <ul class="navbar-nav mr-auto">
      <li class="nav-item ">
        <a class="nav-link" href="../../index.html">Home <span class="sr-only">(current)</span></a>
      </li>
      <li class="nav-item ">
        <a class="nav-link" href="../../www/download.html">Download</a>
      </li>
      <li class="nav-item ">
        <a class="nav-link" href="../../www/command-line-tools.html">Tools</a>
      </li>
      <li class="nav-item ">
        <a class="nav-link" href="../../www/command-line-processing.html">Command-line</a>
      </li>
      <li class="nav-item ">
        <a class="nav-link" href="../../www/resources.html">Resources</a>
      </li>
      <li class="nav-item ">
        <a class="nav-link" href="../../www/develop.html">Develop</a>
      </li>
      <li class="nav-item">
        <a class="nav-link" target="_blank" href="https://imagemagick.org/discourse-server/">Community</a>
      </li>
    </ul>
    <form class="form-inline my-2 my-lg-0" action="https://imagemagick.org/script/search.php">
      <input class="form-control mr-sm-2" type="text" name="q" placeholder="Search" aria-label="Search">
      <button class="btn btn-outline-success my-2 my-sm-0" type="submit" name="sa">Search</button>
    </form>
    </div>
  </nav>
  <div class="container">
   <script async="async" src="https://localhost/pagead/js/adsbygoogle.js"></script>    <ins class="adsbygoogle"
         style="display:block"
         data-ad-client="ca-pub-3129977114552745"
         data-ad-slot="6345125851"
         data-ad-format="auto"></ins>
    <script>
      (adsbygoogle = window.adsbygoogle || []).push({});
    </script>

  </div>
  </header>
  <main class="container">
    <div class="magick-template">
<h1> Magick::Image Class</h1>
<p class="navigation-index">[<a href="Image++.html#BLOBs">BLOBs</a> &#8226; <a href="Image++.html#Constructors">Constructors</a> &#8226; <a href="Image++.html#Image%20Manipulation%20Methods">Image Manipulation Methods</a> &#8226; <a href="Image++.html#Image%20Attributes">Image Attributes</a> &#8226; <a href="Image++.html#Raw%20Image%20Pixel%20Access">Low-Level Image Pixel Access</a>]</p>
<div class="doc-section">
<p>Image is the primary object in Magick++ and represents
a single image frame (see <a href="https://imagemagick.org/Magick++/ImageDesign.html">design</a> ). The
<a href="https://imagemagick.org/Magick++/STL.html">STL interface</a> <b>must</b> be used to operate on
image sequences or images (e.g. of format GIF, TIFF, MIFF, Postscript,
&amp; MNG) which are comprised of multiple image frames. Individual
frames of a multi-frame image may be requested by adding array-style
notation to the end of the file name (e.g. "animation.gif[3]" retrieves
the fourth frame of a GIF animation.  Various image manipulation
operations may be applied to the image. Attributes may be set on the
image to influence the operation of the manipulation operations. The <a
 href="https://imagemagick.org/Magick++/Pixels.html"> Pixels</a> class provides low-level access to
image
pixels. As a convenience, including <tt><font color="#663366">&lt;Magick++.h&gt;</font></tt>
is sufficient in order to use the complete Magick++ API. The Magick++
API is enclosed within the <i>Magick</i> namespace so you must either
add the prefix "<tt> Magick::</tt> " to each class/enumeration name or
add
the statement "<tt> using namespace Magick;</tt>" after including the <tt>Magick++.h</tt>
header.</p>
<p>The preferred way to allocate Image objects is via automatic
allocation (on the stack). There is no concern that allocating Image
objects on the stack will excessively enlarge the stack since Magick++
allocates all large data objects (such as the actual image data) from
the heap. Use of automatic allocation is preferred over explicit
allocation (via <i>new</i>) since it is much less error prone and
allows use of C++ scoping rules to avoid memory leaks. Use of automatic
allocation allows Magick++ objects to be assigned and copied just like
the C++ intrinsic data types (e.g. '<i>int</i> '), leading to clear and
easy to read code. Use of automatic allocation leads to naturally
exception-safe code since if an exception is thrown, the object is
automagically deallocated once the stack unwinds past the scope of the
allocation (not the case for objects allocated via <i>new</i> ). </p>
<p>Image is very easy to use. For example, here is a the source to a
program which reads an image, crops it, and writes it to a new file
(the
exception handling is optional but strongly recommended): </p>
<pre class="code">
#include &lt;Magick++.h> 
#include &lt;iostream> 
using namespace std; 
using namespace Magick; 
int main(int argc,char **argv) 
{ 
  InitializeMagick(*argv);

  // Construct the image object. Separating image construction from the 
  // the read operation ensures that a failure to read the image file 
  // doesn't render the image object useless. 
  Image image;
  try { 
    // Read a file into image object 
    image.read( "girl.gif" );

    // Crop the image to specified size (width, height, xOffset, yOffset)
    image.crop( Geometry(100,100, 100, 100) );

    // Write the image to a file 
    image.write( "x.gif" ); 
  } 
  catch( Exception &error_ ) 
    { 
      cout &lt;&lt; "Caught exception: " &lt;&lt; error_.what() &lt;&lt; endl; 
      return 1; 
    } 
  return 0; 
}
</pre>
The following is the source to a program which illustrates the use of
Magick++'s efficient reference-counted assignment and copy-constructor
operations which minimize use of memory and eliminate unnecessary copy
operations (allowing Image objects to be efficiently assigned, and
copied into containers).  The program accomplishes the
following:
<ol>
  <li> Read master image.</li>
  <li> Assign master image to second image.</li>
  <li> Resize second image to the size 640x480.</li>
  <li> Assign master image to a third image.</li>
  <li> Resize third image to the size 800x600.</li>
  <li> Write the second image to a file.</li>
  <li> Write the third image to a file.</li>
</ol>
<pre class="code">
#include <Magick++.h> 
#include <iostream> 
using namespace std; 
using namespace Magick; 
int main(int argc,char **argv) 
{ 
  InitializeMagick(*argv);

  Image master("horse.jpg"); 
  Image second = master; 
  second.resize("640x480"); 
  Image third = master; 
  third.resize("800x600"); 
  second.write("horse640x480.jpg"); 
  third.write("horse800x600.jpg"); 
  return 0; 
}
</pre>
During the entire operation, a maximum of three images exist in memory
and the image data is never copied.
<p>The following is the source for another simple program which creates
a 100 by 100 pixel white image with a red pixel in the center and
writes it to a file: </p>
<pre class="code">
#include <Magick++.h> 
using namespace std; 
using namespace Magick; 
int main(int argc,char **argv) 
{ 
  InitializeMagick(*argv);
  Image image( "100x100", "white" ); 
  image.pixelColor( 49, 49, "red" ); 
  image.write( "red_pixel.png" ); 
  return 0; 
}
</pre>
If you wanted to change the color image to grayscale, you could add the
lines:
<pre class="code">
image.quantizeColorSpace( GRAYColorspace ); 
image.quantizeColors( 256 ); 
image.quantize( );
</pre>
</p>
<p>or, more simply: </p>
<pre class="code">
 image.type( GrayscaleType );
</pre>
<p>prior to writing the image. </p>
</div>
<h2> <a name="BLOBs"></a> BLOBs</h2>
<div class="doc-section">
While encoded images (e.g. JPEG) are most often written-to and
read-from a disk file, encoded images may also reside in memory.
Encoded
images in memory are known as BLOBs (Binary Large OBjects) and may be
represented using the <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> class. The encoded
image may be initially placed in memory by reading it directly from a
file, reading the image from a database, memory-mapped from a disk
file, or could be written to memory by Magick++. Once the encoded image
has been placed within a Blob, it may be read into a Magick++ Image via
a <a href="Image++.html#constructor_blob">constructor</a> or <a href="Image++.html#read">read()</a>
. Likewise, a Magick++ image may be written to a Blob via <a
 href="Image++.html#write"> write()</a> .
<p>An example of using Image to write to a Blob follows: <br>
  </p>
<pre class="code">
#include <Magick++.h> 
using namespace std; 
using namespace Magick; 
int main(int argc,char **argv) 
{ 
  InitializeMagick(*argv);

  // Read GIF file from disk 
  Image image( "giraffe.gif" );
  // Write to BLOB in JPEG format 
  Blob blob; 
  image.magick( "JPEG" ) // Set JPEG output format 
  image.write( &blob );

  [ Use BLOB data (in JPEG format) here ]

  return 0; 
}
</pre>
<p><br>
likewise, to read an image from a Blob, you could use one of the
following examples: </p>
<p>[ <font color="#000000">Entry condition for the following examples
is that <i>data</i> is pointer to encoded image data and <i>length</i>
represents the size of the data</font> ] </p>
<pre class="code">
Blob blob( data, length ); 
Image image( blob );
</pre>
or
<pre class="code">
Blob blob( data, length ); 
Image image; 
image.read( blob);
</pre>
some images do not contain their size or format so the size and format must be specified in advance:
<pre class="code">
Blob blob( data, length ); 
Image image; 
image.size( "640x480") 
image.magick( "RGBA" ); 
image.read( blob);
</pre>
</div>
<h2> <a name="Constructors"></a> Constructors</h2>
<div class="doc-section">
Image may be constructed in a number of ways. It may be constructed
from a file, a URL, or an encoded image (e.g. JPEG) contained in an
in-memory <a href="https://imagemagick.org/Magick++/Blob.html"> BLOB</a> . The available Image
constructors are shown in the following table: <br>
  <br>
 
<ul><table bgcolor="#ffffff" border="1" width="100%">
  <caption><b>Image Constructors</b></caption> <tbody>
    <tr>
      <td>
      <center><b>Signature</b></center>
      </td>
      <td>
      <center><b>Description</b></center>
      </td>
    </tr>
    <tr>
      <td><font size="-1">const std::string &amp;imageSpec_</font></td>
      <td><font size="-1">Construct Image by reading from file or URL
specified by <i>imageSpec_</i>. Use array notation (e.g. filename[9])
to select a specific scene from a multi-frame image.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const Geometry &amp;size_, const <a
 href="https://imagemagick.org/Magick++/Color.html"> Color</a> &amp;color_</font></td>
      <td><font size="-1">Construct a blank image canvas of specified
size and color</font></td>
    </tr>
    <tr>
      <td><a name="constructor_blob"></a> <font size="-1">const <a
 href="https://imagemagick.org/Magick++/Blob.html">Blob</a> &amp;blob_</font></td>
      <td rowspan="5"><font size="-1">Construct Image by reading from
encoded image data contained in an in-memory <a href="https://imagemagick.org/Magick++/Blob.html">BLOB</a>
. Depending on the constructor arguments, the Blob <a href="Image++.html#size">size</a>
, <a href="Image++.html#depth">depth</a> , <a href="Image++.html#magick">magick</a> (format)
may
also be specified. Some image formats require that size be specified.
The default ImageMagick uses for depth depends on the compiled-in
Quantum size (8 or 16).  If ImageMagick's Quantum size does not
match that of the image, the depth may need to be specified.
ImageMagick can usually automagically detect the image's format.
When a format can't be automagically detected, the format (<a
 href="Image++.html#magick">magick</a> ) must be specified.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size,
size_t depth</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size,
size_t depth_, const string &amp;magick_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size,
const
string &amp;magick_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const size_t width_, </font> <br>
      <font size="-1">const size_t height_,</font> <br>
      <font size="-1">std::string map_,</font> <br>
      <font size="-1">const <a href="https://imagemagick.org/Magick++/Enumerations.html#StorageType">
StorageType</a> type_,</font> <br>
      <font size="-1">const void *pixels_</font></td>
      <td><font size="-1">Construct a new Image based on an array of
image pixels. The pixel data must be in scanline order top-to-bottom.
The data can be character, short int, integer, float, or double. Float
and double require the pixels to be normalized [0..1]. The other types
are [0..MaxRGB].  For example, to create a 640x480 image from
unsigned red-green-blue character data, use</font>
      <p><font size="-1">   Image image( 640, 480, "RGB",
0, pixels );</font> </p>
      <p><font size="-1">The parameters are as follows:</font> <br>
 
      <table border="0" width="100%">
        <tbody>
          <tr>
            <td><font size="-1">width_</font></td>
            <td><font size="-1">Width in pixels of the image.</font></td>
          </tr>
          <tr>
            <td><font size="-1">height_</font></td>
            <td><font size="-1">Height in pixels of the image.</font></td>
          </tr>
          <tr>
            <td><font size="-1">map_</font></td>
            <td><font size="-1">This character string can be any
combination or order of R = red, G = green, B = blue, A = alpha, C =
cyan, Y = yellow M = magenta, and K = black. The ordering reflects the
order of the pixels in the supplied pixel array.</font></td>
          </tr>
          <tr>
            <td><font size="-1">type_</font></td>
            <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#StorageType">Pixel
storage type</a> (CharPixel, ShortPixel, IntegerPixel, FloatPixel, or
DoublePixel)</font></td>
          </tr>
          <tr>
            <td><font size="-1">pixels_</font></td>
            <td><font size="-1">This array of values contain the pixel
components as defined by the map_ and type_ parameters. The length of
the arrays must equal the area specified by the width_ and height_
values and type_ parameters.</font></td>
          </tr>
        </tbody>
      </table>
      </p>
      </td>
    </tr>
  </tbody>
</table></ul>
</div>
<h2> <a name="Image Manipulation Methods"></a> Image Manipulation Methods</h2>
<div class="doc-section">
<i>Image</i> supports access to all the single-image (versus
image-list) manipulation operations provided by the ImageMagick
library. If you
must process a multi-image file (such as an animation), the <a
 href="https://imagemagick.org/Magick++/STL.html"> STL interface</a> , which provides a multi-image
abstraction on top of <i>Image</i>, must be used.
<p>Image manipulation methods are very easy to use.  For example: </p>
<pre class="code">
Image image; 
image.read("myImage.tiff"); 
image.addNoise(GaussianNoise); 
image.write("myImage.tiff");
</pre>
adds gaussian noise to the image file "myImage.tiff".
<p>The operations supported by Image are shown in the following table: <br>
 
<ul><table nosave="" border="1">
  <caption><b>Image Image Manipulation Methods</b></caption> <tbody>
    <tr align="center">
      <td><b>Method</b></td>
      <td><b>Signature(s)</b></td>
      <td><b>Description</b></td>
    </tr>
    <tr>
      <td style="text-align: center;" valign="middle">
      <div align="center"><a name="adaptiveThreshold"></a> <font
 size="-1">adaptiveThreshold<br>
      </font></div>
      </td>
      <td valign="middle"><font size="-1">size_t width, size_t
height, size_t offset = 0<br>
      </font></td>
      <td valign="top"><font size="-1">Apply adaptive thresholding to
the image. Adaptive thresholding is useful if the ideal threshold level
is not known in advance, or if the illumination gradient is not
constant
across the image. Adaptive thresholding works by evaluating the mean
(average) of a pixel region (size specified by <i>width</i> and <i>height</i>)
and using the mean as the thresholding value. In order to remove
residual noise from the background, the threshold may be adjusted by
subtracting a constant <i>offset</i> (default zero) from the mean to
compute the threshold.</font><br>
      </td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="addNoise"></a> <font size="-1">addNoise</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#NoiseType">NoiseType</a>
noiseType_</font></td>
      <td><font size="-1">Add noise to image with specified noise type.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="addNoiseChannel"></a>addNoiseChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel_, const NoiseType noiseType_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Add noise to an image
channel with the specified noise type.</small><font size="-1"> The <span
 style="font-style: italic;">channel_</span> parameter specifies the
channel to add noise to.  The </font><small>noiseType_ parameter
specifies the type of noise.<br>
      </small></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="affineTransform"></a>affineTransform<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const DrawableAffine
&amp;affine<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Transform image by
specified affine (or free transform) matrix.<br>
      </small></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="4">
      <center><a name="annotate"></a> <font size="-1">annotate</font></center>
      </td>
      <td><font size="-1">const std::string &amp;text_, const <a
 href="https://imagemagick.org/Magick++/Geometry.html"> Geometry</a> &amp;location_</font></td>
      <td><font size="-1">Annotate using specified text, and placement
location</font></td>
    </tr>
    <tr>
      <td><font size="-1">string text_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;boundingArea_, <a href="https://imagemagick.org/Magick++/Enumerations.html#GravityType">GravityType</a>
gravity_</font></td>
      <td><font size="-1">Annotate using specified text, bounding area,
and placement gravity. If <i>boundingArea_</i> is invalid, then
bounding area is entire image.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const std::string &amp;text_, const <a
 href="https://imagemagick.org/Magick++/Geometry.html"> Geometry</a> &amp;boundingArea_, <a
 href="https://imagemagick.org/Magick++/Enumerations.html#GravityType">GravityType</a> gravity_, double
degrees_, </font></td>
      <td><font size="-1">Annotate with text using specified text,
bounding area, placement gravity, and rotation. If <i>boundingArea_</i>
is invalid, then bounding area is entire image.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const std::string &amp;text_, <a
 href="https://imagemagick.org/Magick++/Enumerations.html#GravityType"> GravityType</a> gravity_</font></td>
      <td><font size="-1">Annotate with text (bounding area is entire
image) and placement gravity.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="blur"></a> <font size="-1">blur</font></center>
      </td>
      <td><font size="-1">const double radius_ = 1, const double sigma_
= 0.5</font></td>
      <td><font size="-1">Blur image. The <i>radius_ </i>parameter
specifies the radius of the Gaussian, in pixels, not counting the
center
pixel.  The <i>sigma_</i> parameter specifies the standard
deviation of the Laplacian, in pixels.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="blurChannel"></a>blurChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel_, const double radius_ = 0.0, const double sigma_ = 1.0<br>
      </small></td>
      <td style="vertical-align: middle;"><font size="-1">Blur an image
channel. The <span style="font-style: italic;">channel_</span>
parameter specifies the channel to blur. The <i>radius_ </i>parameter
specifies the radius of the Gaussian, in pixels, not counting the
center
pixel.  The <i>sigma_</i> parameter specifies the standard
deviation of the Laplacian, in pixels.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="border"></a> <font size="-1">border</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_ = "6x6+0+0"</font></td>
      <td><font size="-1">Border image (add border to image).  The
color of the border is specified by the <i>borderColor</i> attribute.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="cdl"></a> <font size="-1">cdl</font></center>
      </td>
      <td><font size="-1">const std::string &amp;cdl_</font></td>
      <td><font size="-1">color correct with a color decision list. See <a href="http://en.wikipedia.org/wiki/ASC_CDL">http://en.wikipedia.org/wiki/ASC_CDL</a> for details.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="channel"></a> <font size="-1">channel</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ChannelType">ChannelType</a>
layer_</font></td>
      <td><font size="-1">Extract channel from image. Use this option
to extract a particular channel from  the image.  <i>MatteChannel</i>
  for  example, is useful for extracting the opacity values
from an image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="charcoal"></a> <font size="-1">charcoal</font></center>
      </td>
      <td><font size="-1">const double radius_ = 1, const double sigma_
= 0.5</font></td>
      <td><font size="-1">Charcoal effect image (looks like charcoal
sketch). The <i>radius_</i> parameter specifies the radius of the
Gaussian, in pixels, not counting the center pixel.  The <i>sigma_</i>
parameter specifies the standard deviation of the Laplacian, in pixels.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="chop"></a> <font size="-1">chop</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_</font></td>
      <td><font size="-1">Chop image (remove vertical or horizontal
subregion of image)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="colorize"></a> <font size="-1">colorize</font></center>
      </td>
      <td><font size="-1">const unsigned int opacityRed_, const
unsigned int opacityGreen_, const unsigned int opacityBlue_, const
Color &amp;penColor_</font></td>
      <td><font size="-1">Colorize image with pen color, using
specified percent opacity for red, green, and blue quantums.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="colorMatrix"></a> <font size="-1">colorMatrix</font></center>
      </td>
      <td><font size="-1">const size_t order_, const double *color_matrix_</font></td>
      <td><font size="-1">apply color correction to the image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="comment"></a> <font size="-1">comment</font></center>
      </td>
      <td><font size="-1">const std::string &amp;comment_</font></td>
      <td><font size="-1">Comment image (add comment string to
image).  By default, each image is commented with its file name.
Use  this  method to  assign a specific comment to the
image.  Optionally you can include the image filename, type,
width, height, or other  image  attributes by embedding <a
 href="https://imagemagick.org/Magick++/FormatCharacters.html">special format characters.</a> </font></td>
    </tr>
    <tr>
      <td style="text-align: center;" valign="middle"><font size="-1"><a
 name="compare"></a> compare<br>
      </font></td>
      <td valign="middle"><font size="-1">const Image &amp;reference_<br>
      </font></td>
      <td valign="top"><font size="-1">Compare current image with
another image. Sets <a href="Image++.html#meanErrorPerPixel">meanErrorPerPixel</a>
, <a href="Image++.html#normalizedMaxError">normalizedMaxError</a> , and <a
 href="Image++.html#normalizedMeanError">normalizedMeanError</a> in the current
image. False is returned if the images are identical. An ErrorOption
exception is thrown if the reference image columns, rows, colorspace,
or
matte differ from the current image.</font><br>
      </td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="3">
      <center><a name="composite"></a> <font size="-1">composite</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Image.html">Image</a>
&amp;compositeImage_, ssize_t xOffset_, ssize_t yOffset_, <a
 href="https://imagemagick.org/Magick++/Enumerations.html#CompositeOperator"> CompositeOperator</a>
compose_ = <i>InCompositeOp</i></font></td>
      <td><font size="-1">Compose an image onto the current image at
offset specified by <i>xOffset_</i>, <i>yOffset_ </i>using the
composition algorithm specified by <i>compose_</i>. </font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Image.html">Image</a>
&amp;compositeImage_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;offset_, <a href="https://imagemagick.org/Magick++/Enumerations.html#CompositeOperator">CompositeOperator</a>
compose_ = <i>InCompositeOp</i></font></td>
      <td><font size="-1">Compose an image onto the current image at
offset specified by <i>offset_</i> using the composition algorithm
specified by <i>compose_</i> . </font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Image.html">Image</a>
&amp;compositeImage_, <a href="https://imagemagick.org/Magick++/Enumerations.html#GravityType">GravityType</a>
gravity_, <a href="https://imagemagick.org/Magick++/Enumerations.html#CompositeOperator">CompositeOperator</a>
compose_ = <i>InCompositeOp</i></font></td>
      <td><font size="-1">Compose an image onto the current image with
placement specified by <i>gravity_ </i>using the composition
algorithm
specified by <i>compose_</i>. </font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="contrast"></a> <font size="-1">contrast</font></center>
      </td>
      <td><font size="-1">size_t sharpen_</font></td>
      <td><font size="-1">Contrast image (enhance intensity differences
in image)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="convolve"></a> <font size="-1">convolve</font></center>
      </td>
      <td><font size="-1">size_t order_, const double *kernel_</font></td>
      <td><font size="-1">Convolve image.  Applies a user-specified
convolution to the image. The <i>order_</i> parameter represents the
number of columns and rows in the filter kernel, and <i>kernel_</i>
is a two-dimensional array of doubles representing the convolution
kernel to apply.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="crop"></a> <font size="-1">crop</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_</font></td>
      <td><font size="-1">Crop image (subregion of original image)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="cycleColormap"></a> <font size="-1">cycleColormap</font></center>
      </td>
      <td><font size="-1">int amount_</font></td>
      <td><font size="-1">Cycle image colormap</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="despeckle"></a> <font size="-1">despeckle</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Despeckle image (reduce speckle noise)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="display"></a> <font size="-1">display</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Display image on screen.</font> <br>
      <font size="-1"><b><font color="#ff0000">Caution: </font></b> if
an image format is is not compatible with the display visual (e.g.
JPEG on a colormapped display) then the original image will be
altered. Use a copy of the original if this is a problem.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="distort"></a> <font size="-1">distort</font></center>
      </td>
      <td><font size="-1">const DistortImageMethod method, const size_t number_arguments, const double *arguments, const bool bestfit = false </font></td>
      <td><font size="-1">Distort image.  Applies a user-specified
distortion to the image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="2">
      <center><a name="draw"></a> <font size="-1">draw</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Drawable.html">Drawable</a>
&amp;drawable_</font></td>
      <td><font size="-1">Draw shape or text on image.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const std::list&lt;<a href="https://imagemagick.org/Magick++/Drawable.html">Drawable</a>
&gt; &amp;drawable_</font></td>
      <td><font size="-1">Draw shapes or text on image using a set of
Drawable objects contained in an STL list. Use of this method improves
drawing performance and allows batching draw objects together in a
list for repeated use.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="edge"></a> <font size="-1">edge</font></center>
      </td>
      <td><font size="-1">size_t radius_ = 0.0</font></td>
      <td><font size="-1">Edge image (hilight edges in image). 
The radius is the radius of the pixel neighborhood.. Specify a radius
of zero for automatic radius selection.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="emboss"></a> <font size="-1">emboss</font></center>
      </td>
      <td><font size="-1">const double radius_ = 1, const double sigma_
= 0.5</font></td>
      <td><font size="-1">Emboss image (hilight edges with 3D effect).
The <i> radius_</i> parameter specifies the radius of the Gaussian, in
pixels, not counting the center pixel.  The <i>sigma_</i>
parameter specifies the standard deviation of the Laplacian, in pixels.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="enhance"></a> <font size="-1">enhance</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Enhance image (minimize noise)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="equalize"></a> <font size="-1">equalize</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Equalize image (histogram equalization)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="erase"></a> <font size="-1">erase</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Set all image pixels to the current
background color.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="4">
      <center><a name="extent"></a> <font size="-1">extent</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html"> Geometry</a> &amp;geometry_</font></td>
      <td rowspan="2"><font size="-1">extends the image as defined by the geometry, gravity, and image background color.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_, const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;backgroundColor_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html"> Geometry</a> &amp;geometry_, const <a href="../../api/Enumerations.html#GravityType">GravityType</a>
&amp;gravity_</font></td>
      <td rowspan="2"><font size="-1">extends the image as defined by the geometry, gravity, and image background color.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_, const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;backgroundColor_,
const <a href="https://imagemagick.org/Magick++/Enumerations.html#GravityType">GravityType</a> &amp;gravity_</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="flip"></a> <font size="-1">flip</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Flip image (reflect each scanline in the
vertical direction)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="4">
      <center><a name="floodFillColor"></a> <font size="-1">floodFill-</font>
      <br>
      <font size="-1">Color</font></center>
      </td>
      <td><font size="-1">ssize_t x_, ssize_t y_, const <a
 href="https://imagemagick.org/Magick++/Color.html"> Color</a> &amp;fillColor_</font></td>
      <td rowspan="2"><font size="-1">Flood-fill color across pixels
that match the color of the target pixel and are neighbors of the
target pixel. Uses current fuzz setting when determining color match.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;point_, const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;fillColor_</font></td>
    </tr>
    <tr>
      <td><font size="-1">ssize_t x_, ssize_t y_, const <a
 href="https://imagemagick.org/Magick++/Color.html"> Color</a> &amp;fillColor_, const <a
 href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;borderColor_</font></td>
      <td rowspan="2"><font size="-1">Flood-fill color across pixels
starting at target-pixel and stopping at pixels matching specified
border color. Uses current fuzz setting when determining color match.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;point_, const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;fillColor_,
const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;borderColor_</font></td>
    </tr>
    <tr>
      <td style="text-align: center;"><a name="floodFillOpacity"></a> <font
 size="-1">floodFillOpacity</font></td>
      <td><font size="-1">const long x_, const long y_, const unsigned int
opacity_, const PaintMethod method_</font></td>
      <td><font size="-1">Floodfill pixels matching color (within fuzz
factor) of target pixel(x,y) with replacement opacity value using
method.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="4">
      <center><a name="floodFillTexture"></a> <font size="-1">floodFill-</font>
      <br>
      <font size="-1">Texture</font></center>
      </td>
      <td><font size="-1">ssize_t x_, ssize_t y_,  const
Image &amp;texture_</font></td>
      <td rowspan="2"><font size="-1">Flood-fill texture across pixels
that match the color of the target pixel and are neighbors of the
target pixel. Uses current fuzz setting when determining color match.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;point_, const Image &amp;texture_</font></td>
    </tr>
    <tr>
      <td><font size="-1">ssize_t x_, ssize_t y_, const Image
&amp;texture_, const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;borderColor_</font></td>
      <td rowspan="2"><font size="-1">Flood-fill texture across pixels
starting at target-pixel and stopping at pixels matching specified
border color. Uses current fuzz setting when determining color match.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;point_, const Image &amp;texture_, const <a href="https://imagemagick.org/Magick++/Color.html">
Color</a>
&amp;borderColor_</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="flop"></a> <font size="-1">flop</font></center>
      </td>
      <td><font size="-1">void </font></td>
      <td><font size="-1">Flop image (reflect each scanline in the
horizontal direction)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="2">
      <center><a name="frame"></a> <font size="-1">frame</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_ = "25x25+6+6"</font></td>
      <td rowspan="2"><font size="-1">Add decorative frame around image</font></td>
    </tr>
    <tr>
      <td><font size="-1">size_t width_, size_t height_,
ssize_t x_, ssize_t y_, ssize_t innerBevel_ = 0, ssize_t outerBevel_ = 0</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fx"></a> <font size="-1">fx</font></center>
      </td>
      <td><font size="-1">const std::string expression, const Magick::ChannelType channel</font></td>
      <td><font size="-1">Fx image.  Applies a mathematical
expression to the image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="2">
      <center><a name="gamma"></a> <font size="-1">gamma</font></center>
      </td>
      <td><font size="-1">double gamma_</font></td>
      <td><font size="-1">Gamma correct image (uniform red, green, and
blue correction).</font></td>
    </tr>
    <tr>
      <td><font size="-1">double gammaRed_, double gammaGreen_, double
gammaBlue_</font></td>
      <td><font size="-1">Gamma correct red, green, and blue channels
of image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="gaussianBlur"></a> <font size="-1">gaussianBlur</font></center>
      </td>
      <td><font size="-1">const double width_, const double sigma_</font></td>
      <td><font size="-1">Gaussian blur image. The number of neighbor
pixels to be included in the convolution mask is specified by
'width_'.  For example, a width of one gives a (standard) 3x3
convolution mask. The standard deviation of the gaussian bell curve is
specified by 'sigma_'.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="gaussianBlurChannel"></a>gaussianBlurChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel_, const double radius_ = 0.0, const double sigma_ = 1.0<br>
      </small></td>
      <td style="vertical-align: middle;"><font size="-1">Gaussian blur
an image channel. </font><font size="-1">The <span
 style="font-style: italic;">channel_</span> parameter specifies the
channel to blur. </font><font size="-1">The number of neighbor
pixels to be included in the convolution mask is specified by
'width_'.  For example, a width of one gives a (standard) 3x3
convolution mask. The standard deviation of the gaussian bell curve is
specified by 'sigma_'.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" valign="middle"><font size="-1"><a
 name="haldClut"></a> haldClut<br>
      </font></td>
      <td valign="middle"><font size="-1">const Image &amp;reference_<br>
      </font></td>
      <td valign="top"><font size="-1">apply a Hald color lookup table to the image.</font><br>
      </td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="implode"></a> <font size="-1">implode</font></center>
      </td>
      <td><font size="-1">const double factor_</font></td>
      <td><font size="-1">Implode image (special effect)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="inverseFourierTransform"></a> <font size="-1">inverseFourierTransform</font></center>
      </td>
      <td><font size="-1">const Image &amp;phaseImage_, const bool magnitude_</font></td>
      <td><font size="-1">implements the inverse discrete Fourier transform (DFT) of the image either as a magnitude / phase or real / imaginary image pair.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="label"></a> <font size="-1">label</font></center>
      </td>
      <td><font size="-1">const string &amp;label_</font></td>
      <td><font size="-1">Assign a label to an image. Use this option
to  assign  a  specific label to the image. Optionally
you can include the image filename, type, width, height, or scene
number in the label by embedding  <a href="https://imagemagick.org/Magick++/FormatCharacters.html">
special format characters.</a> If the first character of string is @,
the
image label is read from a file titled by the remaining characters in
the string. When converting to Postscript, use this  option to
specify a header string to print above the image.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: top; text-align: center;"><small><a
 name="level"></a>level<br>
      </small></td>
      <td style="vertical-align: top;"><small>const double black_point,
const double white_point, const double mid_point=1.0<br>
      </small></td>
      <td style="vertical-align: top;"><small>Level image. Adjust the
levels of the image by scaling the colors falling between specified
white and black points to the full available quantum range. The
parameters provided represent the black, mid (gamma), and white
points.  The black point specifies the darkest color in the image.
Colors darker than the black point are set to zero. Mid point (gamma)
specifies a gamma correction to apply to the image. White point
specifies the lightest color in the image.  Colors brighter than
the white point are set to the maximum quantum value. The black and
white point have the valid range 0 to MaxRGB while mid (gamma) has a
useful range of 0 to ten.<br>
      </small></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="levelChannel"></a>levelChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel, const double black_point, const double white_point, const
double mid_point=1.0<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Level image channel.
Adjust the levels of the image channel by scaling the values falling
between specified white and black points to the full available quantum
range. The parameters provided represent the black, mid (gamma), and
white points. The black point specifies the darkest color in the image.
Colors darker than the black point are set to zero. Mid point (gamma)
specifies a gamma correction to apply to the image. White point
specifies the lightest color in the image. Colors brighter than the
white point are set to the maximum quantum value. The black and white
point have the valid range 0 to MaxRGB while mid (gamma) has a useful
range of 0 to ten.<br>
      </small></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="magnify"></a> <font size="-1">magnify</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Magnify image by integral size</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="map"></a> <font size="-1">map</font></center>
      </td>
      <td><font size="-1">const Image &amp;mapImage_ , bool dither_ =
false</font></td>
      <td><font size="-1">Remap image colors with closest color from
reference image. Set dither_ to <i>true</i> in to apply
Floyd/Steinberg
error diffusion to the image. By default, color reduction chooses an
optimal  set  of colors that best represent the original
image. Alternatively, you can  choose  a 
particular  set  of colors  from  an image file
with this option.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="matteFloodfill"></a> <font size="-1">matteFloodfill</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;target_, const unsigned int  opacity_, const ssize_t x_, const
ssize_t
y_, <a href="https://imagemagick.org/Magick++/Enumerations.html#PaintMethod">PaintMethod</a> method_</font></td>
      <td><font size="-1">Floodfill designated area with a replacement
opacity value.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;"><a name="medianFilter"></a> <font
 size="-1">medianFilter</font></td>
      <td><font size="-1">const double radius_ = 0.0</font></td>
      <td><font size="-1">Filter image by replacing each pixel
component with the median color in a circular neighborhood</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="mergeLayers"></a> <font size="-1">mergeLayers</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#LayerMethod">LayerMethod</a>
noiseType_</font></td>
      <td><font size="-1">handle multiple images forming a set of image layers or animation frames.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="minify"></a> <font size="-1">minify</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Reduce image by integral size</font></td>
    </tr>
    <tr>
      <td style="text-align: center;"><a name="modifyImage"></a> <font
 size="-1">modifyImage</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Prepare to update image. Ensures that there
is only one reference to the underlying image so that the underlying
image may be safely modified without effecting previous generations of
the image. Copies the underlying image to a new image if necessary.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="modulate"></a> <font size="-1">modulate</font></center>
      </td>
      <td><font size="-1">double brightness_, double saturation_,
double hue_</font></td>
      <td><font size="-1">Modulate percent hue, saturation, and
brightness of an image. Modulation of saturation and brightness is as a
ratio of the current value (1.0 for no change). Modulation of hue is an
absolute rotation of -180 degrees to +180 degrees from the current
position corresponding to an argument range of 0 to 2.0 (1.0 for no
change).</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="motionBlur"></a>motionBlur<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const double radius_,
const double sigma_, const double angle_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Motion blur image with
specified blur factor. The radius_ parameter specifies the radius of
the Gaussian, in pixels, not counting the center pixel.  The
sigma_ parameter specifies the standard deviation of the Laplacian, in
pixels. The angle_ parameter specifies the angle the object appears to
be coming from (zero degrees is from the right).<br>
      </small></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="negate"></a> <font size="-1">negate</font></center>
      </td>
      <td><font size="-1">bool grayscale_ = false</font></td>
      <td><font size="-1">Negate colors in image.  Replace every
pixel with its complementary color (white becomes black, yellow becomes
blue, etc.).  Set grayscale to only negate grayscale values in
image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="normalize"></a> <font size="-1">normalize</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Normalize image (increase contrast by
normalizing the pixel values to span the full range of color values).</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="oilPaint"></a> <font size="-1">oilPaint</font></center>
      </td>
      <td><font size="-1">size_t radius_ = 3</font></td>
      <td><font size="-1">Oilpaint image (image looks like oil painting)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="opacity"></a> <font size="-1">opacity</font></center>
      </td>
      <td><font size="-1">unsigned int opacity_</font></td>
      <td><font size="-1">Set or attenuate the opacity channel in the
image. If the image pixels are opaque then they are set to the
specified
opacity value, otherwise they are blended with the supplied opacity
value.  The value of opacity_ ranges from 0 (completely opaque) to
      <i>MaxRGB</i>
. The defines <i>OpaqueOpacity</i> and <i>TransparentOpacity</i> are
available to specify completely opaque or completely transparent,
respectively.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="opaque"></a> <font size="-1">opaque</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;opaqueColor_, const <a href="https://imagemagick.org/Magick++/Color.html">Color</a> &amp;penColor_</font></td>
      <td><font size="-1">Change color of pixels matching opaqueColor_
to specified penColor_.</font></td>
    </tr>
    <tr nosave="">
      <td style="text-align: center;" rowspan="2" nosave="">
      <center><a name="ping"></a> <font size="-1">ping</font></center>
      </td>
      <td><font size="-1">const std::string &amp;imageSpec_</font></td>
      <td rowspan="2" nosave=""><font size="-1">Ping is similar to read
except only enough of the image is read to determine the image columns,
rows, and filesize.  The <a href="Image++.html#columns">columns</a> </font>,
      <font size="-1"><a href="Image++.html#rows">rows</a> , and <a
 href="Image++.html#fileSize">fileSize</a>
attributes are valid after invoking ping.  The image data is not
valid after calling ping.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const Blob &amp;blob_</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="process"></a>process<br>
      </small></td>
      <td style="vertical-align: middle;"><small>std::string name_,
const ssize_t argc_, char **argv_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Execute the named
process module, passing any arguments via an argument vector, with
argc_
specifying the number of arguments in the vector, and argv_ passing the
address of an array of null-terminated C strings which constitute the
argument vector. An exception is thrown if the requested process module
does not exist, fails to load, or fails during execution.</small><br>
      </td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="quantize"></a> <font size="-1">quantize</font></center>
      </td>
      <td><font size="-1">bool measureError_ = false</font></td>
      <td><font size="-1">Quantize image (reduce number of colors). Set
measureError_ to true in order to calculate error attributes.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="raise"></a> <font size="-1">raise</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_ = "6x6+0+0",  bool raisedFlag_ =  false</font></td>
      <td><font size="-1">Raise image (lighten or darken the edges of
an image to give a 3-D raised or lowered effect)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="8">
      <center><a name="read"></a> <font size="-1">read</font></center>
      </td>
      <td><font size="-1">const string &amp;imageSpec_</font></td>
      <td><font size="-1">Read image into current object</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;size_, const std::string &amp;imageSpec_</font></td>
      <td><font size="-1">Read image of specified size into current
object. This form is useful for images that do not specify their size
or to specify a size hint for decoding an image. For example, when
reading a Photo CD, JBIG, or JPEG image, a size request causes the
library to return an image which is the next resolution greater or
equal to the specified size. This may result in memory and time savings.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> &amp;blob_</font></td>
      <td rowspan="5"><font size="-1">Read encoded image of specified
size from an in-memory <a href="https://imagemagick.org/Magick++/Blob.html">BLOB</a> into current
object. Depending on the method arguments, the Blob size, depth, and
format may also be specified. Some image formats require that size be
specified. The default ImageMagick uses for depth depends on its
Quantum size (8 or 16).  If ImageMagick's Quantum size does not
match that of the image, the depth may need to be specified.
ImageMagick can usually automagically detect the image's format.
When
a format can't be automagically detected, the format must be specified.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size_,
size_t depth_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size_,
size_t depth_, const string &amp;magick_ </font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;blob_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> &amp;size_,
const
string &amp;magick_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const size_t width_, const size_t
height_, std::string map_, const StorageType type_, const void *pixels_</font></td>
      <td><font size="-1">Read image based on an array of image pixels.
The pixel data must be in scanline order top-to-bottom. The data can be
character, short int, integer, float, or double. Float and double
require the pixels to be normalized [0..1]. The other types are
[0..MaxRGB].  For example, to create a 640x480 image from
unsigned red-green-blue character data, use</font>
      <p><font size="-1">  image.read( 640, 480, "RGB", CharPixel,
pixels );</font> </p>
      <p><font size="-1">The parameters are as follows:</font> <br>
 
      <table border="0" width="100%">
        <tbody>
          <tr>
            <td><font size="-1">width_</font></td>
            <td><font size="-1">Width in pixels of the image.</font></td>
          </tr>
          <tr>
            <td><font size="-1">height_</font></td>
            <td><font size="-1">Height in pixels of the image.</font></td>
          </tr>
          <tr>
            <td><font size="-1">map_</font></td>
            <td><font size="-1">This character string can be any
combination or order of R = red, G = green, B = blue, A = alpha, C =
cyan, Y = yellow M = magenta, and K = black. The ordering reflects the
order of the pixels in the supplied pixel array.</font></td>
          </tr>
          <tr>
            <td><font size="-1">type_</font></td>
            <td><font size="-1">Pixel storage type (CharPixel,
ShortPixel, IntegerPixel, FloatPixel, or DoublePixel)</font></td>
          </tr>
          <tr>
            <td><font size="-1">pixels_</font></td>
            <td><font size="-1">This array of values contain the pixel
components as defined by the map_ and type_ parameters. The length of
the arrays must equal the area specified by the width_ and height_
values and type_ parameters.</font></td>
          </tr>
        </tbody>
      </table>
      </p>
      </td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="reduceNoise"></a> <font size="-1">reduceNoise</font></center>
      </td>
      <td><font size="-1">const double order_</font></td>
      <td><font size="-1">reduce noise in image using a noise peak elimination filter.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="randomThreshold"></a>randomThreshold<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const Geometry
&amp;thresholds_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Random threshold the
image. Changes the value of individual pixels based on the intensity of
each pixel compared to a random threshold.  The result is a
low-contrast, two color image.  The thresholds_ argument is a
geometry containing LOWxHIGH thresholds.  If the string contains
2x2, 3x3, or 4x4, then an ordered dither of order 2, 3, or 4 will be
performed instead. This is a very fast alternative to 'quantize' based
dithering.<br>
      </small></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="randomThresholdChannel"></a>randomThresholdChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const Geometry
&amp;thresholds_, const ChannelType channel_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Random threshold an
image channel. Similar to <a href="Image++.html#randomThreshold">randomThreshold</a>()
but restricted to the specified channel.<br>
      </small></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="roll"></a> <font size="-1">roll</font></center>
      </td>
      <td><font size="-1">int columns_, ssize_t rows_</font></td>
      <td><font size="-1">Roll image (rolls image vertically and
horizontally) by specified number of columns and rows)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="rotate"></a> <font size="-1">rotate</font></center>
      </td>
      <td><font size="-1">double degrees_</font></td>
      <td><font size="-1">Rotate image counter-clockwise by specified
number of degrees.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="sample"></a> <font size="-1">sample</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_ </font></td>
      <td><font size="-1">Resize image by using pixel sampling algorithm</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="scale"></a> <font size="-1">scale</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_</font></td>
      <td><font size="-1">Resize image by using simple ratio algorithm</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="segment"></a> <font size="-1">segment</font></center>
      </td>
      <td><font size="-1">double clusterThreshold_ = 1.0,</font> <br>
      <font size="-1">double smoothingThreshold_ = 1.5</font></td>
      <td><font size="-1">Segment (coalesce similar image components)
by analyzing the histograms of the color components and identifying
units that are homogeneous with the fuzzy c-means technique. Also uses <i>quantizeColorSpace</i>
and <i>verbose</i> image attributes. Specify <i> clusterThreshold_</i>
,
as the number  of  pixels  each cluster  must
exceed
the cluster threshold to be considered valid. <i>SmoothingThreshold_</i>
eliminates noise in the  second derivative of the histogram. As
the
value is  increased, you can  expect  a  smoother
second derivative.  The default is 1.5.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="shade"></a> <font size="-1">shade</font></center>
      </td>
      <td><font size="-1">double azimuth_ = 30, double elevation_ = 30,</font>
      <br>
      <font size="-1">bool colorShading_ = false</font></td>
      <td><font size="-1">Shade image using distant light source.
Specify <i> azimuth_</i> and <i>elevation_</i> as the 
position  of  the light source. By default, the shading
results as a grayscale image.. Set c<i>olorShading_</i> to <i>true</i>
to
shade the red, green, and blue components of the image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="shadow"></a> <font size="-1">shadow</font></center>
      </td>
      <td><font size="-1">const double percent_opacity = 80, const double sigma_
= 0.5, const ssize_t x_ = 0, const ssize_t y_ = 0</font></td>
      <td><font size="-1">simulate an image shadow</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="sharpen"></a> <font size="-1">sharpen</font></center>
      </td>
      <td><font size="-1">const double radius_ = 1, const double sigma_
= 0.5</font></td>
      <td><font size="-1">Sharpen pixels in image.  The <i>radius_</i>
parameter specifies the radius of the Gaussian, in pixels, not counting
the center pixel.  The <i>sigma_</i> parameter specifies the
standard deviation of the Laplacian, in pixels.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="sharpenChannel"></a>sharpenChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel_, const double radius_ = 0.0, const double sigma_ = 1.0<br>
      </small></td>
      <td style="vertical-align: middle;"><font size="-1">Sharpen pixel
quantums in an image channel  The <span
 style="font-style: italic;">channel_</span> parameter specifies the
channel to sharpen..  The <i>radius_</i>
parameter specifies the radius of the Gaussian, in pixels, not counting
the center pixel.  The <i>sigma_</i> parameter specifies the
standard deviation of the Laplacian, in pixels.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="shave"></a> <font size="-1">shave</font></center>
      </td>
      <td><font size="-1">const Geometry &amp;geometry_</font></td>
      <td><font size="-1">Shave pixels from image edges.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="shear"></a> <font size="-1">shear</font></center>
      </td>
      <td><font size="-1">double xShearAngle_, double yShearAngle_</font></td>
      <td><font size="-1">Shear image (create parallelogram by sliding
image by X or Y axis).  Shearing slides one edge of an image along
the X  or  Y axis,  creating  a
parallelogram.  An X direction shear slides an edge along the X
axis, while  a  Y  direction shear  slides 
an edge along the Y axis.  The amount of the shear is controlled
by a shear angle.  For X direction  shears,  x 
degrees is measured relative to the Y axis, and similarly, for Y
direction shears  y  degrees is measured relative to the X
axis. Empty triangles left over from shearing the  image  are
filled  with  the  color  defined as <i>borderColor</i>. </font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="solarize"></a> <font size="-1">solarize</font></center>
      </td>
      <td><font size="-1">double factor_ = 50.0</font></td>
      <td><font size="-1">Solarize image (similar to effect seen when
exposing a photographic film to light during the development process)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="splice"></a> <font size="-1">splice</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_</font></td>
      <td><font size="-1">splice the background color into the image</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="spread"></a> <font size="-1">spread</font></center>
      </td>
      <td><font size="-1">size_t amount_ = 3</font></td>
      <td><font size="-1">Spread pixels randomly within image by
specified amount</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="stegano"></a> <font size="-1">stegano</font></center>
      </td>
      <td><font size="-1">const Image &amp;watermark_</font></td>
      <td><font size="-1">Add a digital watermark to the image (based
on second image)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="sparseColor"></a> <font size="-1">sparseColor</font></center>
      </td>
      <td><font size="-1">const ChannelType channel, const SparseColorMethod method, const size_t number_arguments, const double *arguments </font></td>
      <td><font size="-1">Sparse color image, given a set of coordinates, interpolates the colors found at those coordinates, across the whole image, using various methods.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="statistics"></a> <font size="-1">statistics</font></center>
      </td>
      <td><font size="-1">ImageStatistics *statistics</font></td>
      <td><font size="-1">Obtain image statistics. Statistics are normalized to the range of 0.0 to 1.0 and are output to the specified ImageStatistics structure.  The structure includes members maximum, minimum, mean, standard_deviation, and variance for each of these channels: red, green, blue, and opacity (e.g. statistics->red.maximum).</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="stereo"></a> <font size="-1">stereo</font></center>
      </td>
      <td><font size="-1">const Image &amp;rightImage_</font></td>
      <td><font size="-1">Create an image which appears in stereo when
viewed with red-blue glasses (Red image on left, blue on right)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="swirl"></a> <font size="-1">swirl</font></center>
      </td>
      <td><font size="-1">double degrees_</font></td>
      <td><font size="-1">Swirl image (image pixels are rotated by
degrees)</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="texture"></a> <font size="-1">texture</font></center>
      </td>
      <td><font size="-1">const Image &amp;texture_</font></td>
      <td><font size="-1">Layer a texture on pixels matching image
background color.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="threshold"></a> <font size="-1">threshold</font></center>
      </td>
      <td><font size="-1">double threshold_</font></td>
      <td><font size="-1">Threshold image</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="2">
      <center><a name="transform"></a> <font size="-1">transform</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;imageGeometry_</font></td>
      <td rowspan="2"><font size="-1">Transform image based on image
and crop geometries. Crop geometry is optional.</font></td>
    </tr>
    <tr>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;imageGeometry_, const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;cropGeometry_ </font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="transparent"></a> <font size="-1">transparent</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;color_</font></td>
      <td><font size="-1">Add matte image to image, setting pixels
matching color to transparent.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="trim"></a> <font size="-1">trim</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Trim edges that are the background color from
the image.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="unsharpmask"></a> <font size="-1">unsharpmask</font></center>
      </td>
      <td><font size="-1">double radius_, double sigma_, double
amount_, double threshold_</font></td>
      <td><font size="-1">Sharpen the image using the unsharp mask
algorithm. The <i>radius</i>_
parameter specifies the radius of the Gaussian, in pixels, not
counting the center pixel. The <i>sigma</i>_ parameter specifies the
standard deviation of the Gaussian, in pixels. The <i>amount</i>_
parameter specifies the percentage of the difference between the
original and the blur image that is added back into the original. The <i>threshold</i>_
parameter specifies the threshold in pixels needed to apply the
difference amount.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="unsharpmaskChannel"></a>unsharpmaskChannel<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel_, const double radius_, const double sigma_, const double
amount_, const double threshold_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Sharpen an image
channel using the unsharp mask algorithm. The <span
 style="font-style: italic;">channel_</span> parameter specifies the
channel to sharpen. </small><font size="-1">The <i>radius</i>_
parameter specifies the radius of the Gaussian, in pixels, not
counting the center pixel. The <i>sigma</i>_ parameter specifies the
standard deviation of the Gaussian, in pixels. The <i>amount</i>_
parameter specifies the percentage of the difference between the
original and the blur image that is added back into the original. The <i>threshold</i>_
parameter specifies the threshold in pixels needed to apply the
difference amount.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="wave"></a> <font size="-1">wave</font></center>
      </td>
      <td><font size="-1">double amplitude_ = 25.0, double wavelength_
= 150.0</font></td>
      <td><font size="-1">Alter an image along a sine wave.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;" rowspan="5">
      <center><a name="write"></a> <font size="-1">write</font></center>
      </td>
      <td><font size="-1">const string &amp;imageSpec_</font></td>
      <td><font size="-1">Write image to a file using filename i<i>mageSpec_</i>
.</font> <br>
      <font size="-1"><b><font color="#ff0000">Caution: </font></b> if
an image format is selected which is capable of supporting fewer
colors than the original image or quantization has been requested, the
original image will be quantized to fewer colors. Use a copy of the
original if this is a problem.</font></td>
    </tr>
    <tr>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> *blob_</font></td>
      <td rowspan="3"><font size="-1">Write image to a in-memory <a
 href="https://imagemagick.org/Magick++/Blob.html"> BLOB</a> stored in <i>blob_</i>. The <i>magick</i>_
parameter specifies the image format to write (defaults to <a
 href="Image++.html#magick">magick</a> ). The depth_ parameter species the image
depth (defaults to <a href="Image++.html#depth"> depth</a> ).</font> <br>
      <font size="-1"><b><font color="#ff0000">Caution: </font></b> if
an image format is selected which is capable of supporting fewer
colors than the original image or quantization has been requested, the
original image will be quantized to fewer colors. Use a copy of the
original if this is a problem.</font></td>
    </tr>
    <tr>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> *blob_,
std::string &amp;magick_</font></td>
    </tr>
    <tr>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> *blob_,
std::string &amp;magick_, size_t depth_</font></td>
    </tr>
    <tr>
      <td><font size="-1">const ssize_t x_, const ssize_t y_, const size_t
columns_, const size_t rows_, const std::string &amp;map_,
const StorageType type_, void *pixels_</font></td>
      <td><font size="-1">Write pixel data into a buffer you supply.
The data is saved either as char, short int, integer, float or double
format in the order specified by the type_ parameter. For example, we
want to extract scanline 1 of a 640x480 image as character data in
red-green-blue order:</font>
      <p><font size="-1">  image.write(0,0,640,1,"RGB",0,pixels);</font>
      </p>
      <p><font size="-1">The parameters are as follows:</font> <br>
 
      <table border="0" width="100%">
        <tbody>
          <tr>
            <td><font size="-1">x_</font></td>
            <td><font size="-1">Horizontal ordinate of left-most
coordinate of region to extract.</font></td>
          </tr>
          <tr>
            <td><font size="-1">y_</font></td>
            <td><font size="-1">Vertical ordinate of top-most
coordinate of region to extract.</font></td>
          </tr>
          <tr>
            <td><font size="-1">columns_</font></td>
            <td><font size="-1">Width in pixels of the region to
extract.</font></td>
          </tr>
          <tr>
            <td><font size="-1">rows_</font></td>
            <td><font size="-1">Height in pixels of the region to
extract.</font></td>
          </tr>
          <tr>
            <td><font size="-1">map_</font></td>
            <td><font size="-1">This character string can be any
combination or order of R = red, G = green, B = blue, A = alpha, C =
cyan, Y = yellow, M = magenta, and K = black. The ordering reflects
the order of the pixels in the supplied pixel array.</font></td>
          </tr>
          <tr>
            <td><font size="-1">type_</font></td>
            <td><font size="-1">Pixel storage type (CharPixel,
ShortPixel, IntegerPixel, FloatPixel, or DoublePixel)</font></td>
          </tr>
          <tr>
            <td><font size="-1">pixels_</font></td>
            <td><font size="-1">This array of values contain the pixel
components as defined by the map_ and type_ parameters. The length of
the arrays must equal the area specified by the width_ and height_
values and type_ parameters.</font></td>
          </tr>
        </tbody>
      </table>
      </p>
      </td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="resize"></a> <font size="-1">resize</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_</font></td>
      <td><font size="-1">Resize image to specified size.</font></td>
    </tr>
  </tbody>
</table></ul>
</p>
</div>
<h2> <a name="Image Attributes"></a> Image Attributes</h2>
<div class="doc-section">
Image attributes are set and obtained via methods in Image. Except for
methods which accept pointer arguments (e.g. c<tt>hromaBluePrimary)</tt>
all methods return attributes by value.
<p>Image attributes are easily used. For example, to set the resolution
of the TIFF file "file.tiff" to 150 dots-per-inch (DPI) in both the
horizontal and vertical directions, you can use the following example
code: </p>
<pre class="code">
string filename("file.tiff"); 
Image image; 
image.read(filename); 
image.resolutionUnits(PixelsPerInchResolution); 
image.density(Geometry(150,150));   // could also use image.density("150x150") 
image.write(filename)
</pre>
The supported image attributes and the method arguments required to
obtain them are shown in the following table: <br>
 
<ul><table border="1">
  <caption>Image Attributes</caption> <tbody>
    <tr>
      <td>
      <center><b>Function</b></center>
      </td>
      <td>
      <center><b>Type</b></center>
      </td>
      <td>
      <center><b>Get Signature</b></center>
      </td>
      <td>
      <center><b>Set Signature</b></center>
      </td>
      <td>
      <center><b>Description</b></center>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="adjoin"></a> <font size="-1">adjoin</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool flag_</font></td>
      <td><font size="-1">Join images into a single multi-image file.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="antiAlias"></a> <font size="-1">antiAlias</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool flag_</font></td>
      <td><font size="-1">Control antialiasing of rendered Postscript
and Postscript or TrueType fonts. Enabled by default.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="animationDelay"></a> <font size="-1">animation-</font>
      <br>
      <font size="-1">Delay</font></center>
      </td>
      <td><font size="-1">size_t (0 to 65535)</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t delay_</font></td>
      <td><font size="-1">Time in 1/100ths of a second (0 to 65535)
which must expire before displaying the next image in an animated
sequence. This option is useful for regulating the animation of a
sequence  of GIF images within Netscape.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="animationIterations"></a> <font size="-1">animation-</font>
      <br>
      <font size="-1">Iterations</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t iterations_</font></td>
      <td><font size="-1">Number of iterations to loop an animation
(e.g. Netscape loop extension) for.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle; text-align: center;"><small><a
 name="attribute"></a>attribute<br>
      </small></td>
      <td style="vertical-align: middle;"><small>string<br>
      </small></td>
      <td style="vertical-align: top;" valign="top"><small>const
std::string name_<br>
      </small></td>
      <td style="vertical-align: top;" valign="top"><small>const
std::string name_, const std::string value_</small></td>
      <td style="vertical-align: middle;"><small>An arbitrary named
image attribute. Any number of named attributes may be attached to the
image. For example, the image comment is a named image attribute with
the name "comment". EXIF tags are attached to the image as named
attributes. Use the syntax "EXIF:&lt;tag&gt;" to request an EXIF tag
similar to "EXIF:DateTime".</small><br>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="backgroundColor"></a> <font size="-1">background-</font>
      <br>
      <font size="-1">Color</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Color.html">Color</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;color_</font></td>
      <td><font size="-1">Image background color</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="backgroundTexture"></a> <font size="-1">background-</font>
      <br>
      <font size="-1">Texture</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;texture_</font></td>
      <td><font size="-1">Image file name to use as the background
texture. Does not modify image pixels.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="baseColumns"></a> <font size="-1">baseColumns</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Base image width (before transformations)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="baseFilename"></a> <font size="-1">baseFilename</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Base image filename (before transformations)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="baseRows"></a> <font size="-1">baseRows</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Base image height (before transformations)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="borderColor"></a> <font size="-1">borderColor</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Color.html">Color</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"> const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;color_</font></td>
      <td><font size="-1">Image border color</font></td>
    </tr>
    <tr>
      <td><a name="boundingBox"></a> <font size="-1">boundingBox</font></td>
      <td><font size="-1">Geometry</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Return smallest bounding box enclosing
non-border pixels. The current fuzz value is used when discriminating
between pixels. This is the crop bounding box used by
crop(Geometry(0,0)).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="boxColor"></a> <font size="-1">boxColor</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Color.html">Color</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;boxColor_</font></td>
      <td><font size="-1">Base color that annotation text is rendered
on.</font></td>
    </tr>
    <tr>
      <td><a name="cacheThreshold"></a> <font size="-1">cacheThreshold</font></td>
      <td><font size="-1">size_t</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">const size_t</font></td>
      <td><font size="-1">Pixel cache threshold in megabytes. Once this
threshold is exceeded, all subsequent pixels cache operations are
to/from disk. This is a static method and the attribute it sets is
shared by all Image objects.</font></td>
    </tr>
    <tr>
      <td style="vertical-align: middle;" valign="middle"><small><a
 name="channelDepth"></a>channelDepth<br>
      </small></td>
      <td style="vertical-align: middle;" valign="middle"><small>size_t
<br>
      </small></td>
      <td style="vertical-align: middle;" valign="middle"><small>const
ChannelType channel_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const ChannelType
channel_, const size_t depth_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Channel modulus depth.
The channel modulus depth represents the minimum number of bits
required
to support the channel without loss. Setting the channel's modulus
depth
modifies the channel (i.e. discards resolution) if the requested
modulus
depth is less than the current modulus depth, otherwise the channel is
not altered. There is no attribute associated with the modulus depth so
the current modulus depth is obtained by inspecting the pixels. As a
result, the depth returned may be less than the most recently set
channel depth. Subsequent image processing may result in increasing the
channel depth.<br>
      </small></td>
    </tr>
    <tr>
      <td>
      <center><a name="chromaBluePrimary"></a> <font size="-1">chroma-</font>
      <br>
      <font size="-1">BluePrimary</font></center>
      </td>
      <td><font size="-1">double x &amp; y</font></td>
      <td><font size="-1">double *x_, double *y_</font></td>
      <td><font size="-1">double x_, double y_</font></td>
      <td><font size="-1">Chromaticity blue primary point (e.g. x=0.15,
y=0.06)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="chromaGreenPrimary"></a> <font size="-1">chroma-</font>
      <br>
      <font size="-1">GreenPrimary</font></center>
      </td>
      <td><font size="-1">double x &amp; y</font></td>
      <td><font size="-1">double *x_, double *y_</font></td>
      <td><font size="-1">double x_, double y_</font></td>
      <td><font size="-1">Chromaticity green primary point (e.g. x=0.3,
y=0.6)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="chromaRedPrimary"></a> <font size="-1">chroma-</font>
      <br>
      <font size="-1">RedPrimary</font></center>
      </td>
      <td><font size="-1">double x &amp; y</font></td>
      <td><font size="-1">double *x_, double *y_</font></td>
      <td><font size="-1">double x_, double y_</font></td>
      <td><font size="-1">Chromaticity red primary point (e.g. x=0.64,
y=0.33)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="chromaWhitePoint"></a> <font size="-1">chroma-</font>
      <br>
      <font size="-1">WhitePoint</font></center>
      </td>
      <td><font size="-1">double x &amp; y</font></td>
      <td><font size="-1">double*x_, double *y_</font></td>
      <td><font size="-1">double x_, double y_</font></td>
      <td><font size="-1">Chromaticity white point (e.g. x=0.3127,
y=0.329)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="classType"></a> <font size="-1">classType</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ClassType">ClassType</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"> <a href="https://imagemagick.org/Magick++/Enumerations.html#ClassType">ClassType</a>
class_</font></td>
      <td><font size="-1">Image storage class.  Note that
conversion from a DirectClass image to a PseudoClass image may result
in a loss of color due to the limited size of the palette (256 or
65535 colors).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="clipMask"></a> <font size="-1">clipMask</font></center>
      </td>
      <td><font size="-1">Image</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const Image &amp;clipMask_</font></td>
      <td><font size="-1">Associate a clip mask image with the current
image. The clip mask image must have the same dimensions as the current
image or an exception is thrown. Clipping occurs wherever pixels are
transparent in the clip mask image. Clipping Pass an invalid image to
unset an existing clip mask.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="colorFuzz"></a> <font size="-1">colorFuzz</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">double fuzz_</font></td>
      <td><font size="-1">Colors within this distance are considered
equal. A number of algorithms search for a target  color. By
default the color must be exact. Use this option to match colors that
are close to the target color in RGB space.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="colorMap"></a> <font size="-1">colorMap</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Color.html">Color</a> </font></td>
      <td><font size="-1">size_t index_</font></td>
      <td><font size="-1">size_t index_, const <a
 href="https://imagemagick.org/Magick++/Color.html"> Color</a> &amp;color_</font></td>
      <td><font size="-1">Color at colormap index.</font></td>
    </tr>
    <tr>
      <td valign="middle">
      <div align="center"><a name="colorMapSize"></a> <font size="-1">colorMapSize<br>
      </font></div>
      </td>
      <td valign="middle"><font size="-1">size_t<br>
      </font></td>
      <td valign="middle"><font size="-1">void<br>
      </font></td>
      <td valign="middle"><font size="-1">size_t entries_<br>
      </font></td>
      <td valign="middle"><font size="-1">Number of entries in the
colormap. Setting the colormap size may extend or truncate the
colormap.
The maximum number of supported entries is specified by the <i>MaxColormapSize</i>constant,
and is dependent on the value of QuantumDepth when ImageMagick is
compiled. An exception is thrown if more entries are requested than may
be supported. Care should be taken when truncating the colormap to
ensure that the image colormap indexes reference valid colormap entries.</font><br>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="colorSpace"></a> <font size="-1">colorSpace</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ColorspaceType">ColorspaceType</a>
colorSpace_</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ColorspaceType">ColorspaceType</a>
colorSpace_</font></td>
      <td><font size="-1">The colorspace (e.g. CMYK) used to represent
the image pixel colors. Image pixels are always stored as RGB(A) except
for the case of CMY(K).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="columns"></a> <font size="-1">columns</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Image width</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="comment"></a> <font size="-1">comment</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Image comment</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="compose"></a> <font size="-1">compose</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#CompositeOperator">CompositeOperator</a>
      </font></td>
      <td><small><font size="-1"><small>void</small></font></small></td>
      <td><small><font size="-1"><small><a
 href="https://imagemagick.org/Magick++/Enumerations.html#CompositeOperator">CompositeOperator</a>
compose_</small></font></small></td>
      <td><font size="-1">Composition operator to be used when
composition is implicitly used (such as for image flattening).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="compressType"></a> <font size="-1">compress-</font>
      <br>
      <font size="-1">Type</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#CompressionType">CompressionType</a>
      </font></td>
      <td><small><font size="-1"><small>void</small></font></small></td>
      <td><small><font size="-1"><small><a
 href="https://imagemagick.org/Magick++/Enumerations.html#CompressionType">CompressionType</a>
compressType_</small></font></small></td>
      <td><font size="-1">Image compresion type. The default is the
compression type of the specified image file.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="debug"></a> <font size="-1">debug</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><small><font size="-1"><small>void</small></font></small></td>
      <td><small><font size="-1"><small>bool flag_</small></font></small></td>
      <td><font size="-1">Enable printing of internal debug messages
from ImageMagick as it executes.</font></td>
    </tr>
    <tr>
      <td style="text-align: center; vertical-align: middle;"><small><a
 name="defineValue"></a>defineValue<br>
      </small></td>
      <td style="vertical-align: middle; text-align: left;"><small>string<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const std::string
&amp;magick_, const std::string &amp;key_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const std::string
&amp;magick_, const std::string &amp;key_,  const std::string
&amp;value_<br>
      </small></td>
      <td style="vertical-align: top;"><small>Set or obtain a
definition string to applied when encoding or decoding the specified
format. The meanings of the definitions are format specific. The format
is designated by the <span style="font-style: italic;">magick_</span>
argument, the format-specific key is designated by <span
 style="font-style: italic;">key_</span>, and the associated value is
specified by <span style="font-style: italic;">value_</span>. See the
defineSet() method if the key must be removed entirely.</small><br>
      </td>
    </tr>
    <tr>
      <td style="text-align: center; vertical-align: middle;"><small><a
 name="defineSet"></a>defineSet<br>
      </small></td>
      <td style="vertical-align: middle; text-align: left;"><small>bool<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const std::string
&amp;magick_, const std::string &amp;key_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>const std::string
&amp;magick_, const std::string &amp;key_, bool flag_<br>
      </small></td>
      <td style="vertical-align: middle;"><small>Set or obtain a
definition flag to applied when encoding or decoding the specified
format.</small><small>. Similar to the defineValue() method except that
passing the <span style="font-style: italic;">flag_</span> value
'true'
creates a value-less define with that format and key. Passing the <span
 style="font-style: italic;">f</span><span style="font-style: italic;">lag_</span>
value 'false' removes any existing matching definition. The method
returns 'true' if a matching key exists, and 'false' if no matching key
exists.<br>
      </small></td>
    </tr>
    <tr>
      <td>
      <center><a name="density"></a> <font size="-1">density</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>  
(default 72x72)</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;density_</font></td>
      <td><font size="-1">Vertical and horizontal resolution in pixels
of the image. This option specifies an image density when decoding a
Postscript or Portable Document page. Often used with <i>psPageSize</i>.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="depth"></a> <font size="-1">depth</font></center>
      </td>
      <td><font size="-1"> size_t (8-32)</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t depth_</font></td>
      <td><font size="-1">Image depth. Used to specify the bit depth
when reading or writing  raw images or when the output format
supports multiple depths. Defaults to the quantum depth that
ImageMagick is compiled with.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="endian"></a> <font size="-1">endian</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#EndianType">EndianType</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#EndianType">EndianType</a>
endian_</font></td>
      <td><font size="-1">Specify (or obtain) endian option for formats
which support it.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="directory"></a> <font size="-1">directory</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"> </font></td>
      <td><font size="-1">Tile names from within an image montage</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="file"></a> <font size="-1">file</font></center>
      </td>
      <td><font size="-1">FILE *</font></td>
      <td><font size="-1">FILE *</font></td>
      <td><font size="-1">FILE *file_</font></td>
      <td><font size="-1">Image file descriptor.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fileName"></a> <font size="-1">fileName</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;fileName_</font></td>
      <td><font size="-1">Image file name.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fileSize"></a> <font size="-1">fileSize</font></center>
      </td>
      <td><font size="-1">off_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Number of bytes of the image on disk</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fillColor"></a> <font size="-1">fillColor</font></center>
      </td>
      <td><font size="-1">Color</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const Color &amp;fillColor_</font></td>
      <td><font size="-1">Color to use when filling drawn objects</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fillPattern"></a> <font size="-1">fillPattern</font></center>
      </td>
      <td><font size="-1">Image</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const Image &amp;fillPattern_</font></td>
      <td><font size="-1">Pattern image to use when filling drawn
objects.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fillRule"></a> <font size="-1">fillRule</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#FillRule">FillRule</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const Magick::FillRule &amp;fillRule_</font></td>
      <td><font size="-1">Rule to use when filling drawn objects.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="filterType"></a> <font size="-1">filterType</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#FilterTypes">FilterTypes</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#FilterTypes">FilterTypes</a>
filterType_</font></td>
      <td><font size="-1">Filter to use when resizing image. The
reduction filter employed has a significant effect on the time required
to resize an image and the resulting quality. The default filter is <i>Lanczos</i>
which has been shown to produce high quality results when reducing most
images.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="font"></a> <font size="-1">font</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;font_</font></td>
      <td><font size="-1">Text rendering font. If the font is a fully
qualified X server font name, the font is obtained from an X 
server. To use a TrueType font, precede the TrueType filename with an
@. Otherwise, specify  a  Postscript font name (e.g.
"helvetica").</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fontPointsize"></a> <font size="-1">fontPointsize</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t pointSize_</font></td>
      <td><font size="-1">Text rendering font point size</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="fontTypeMetrics"></a> <font size="-1">fontTypeMetrics</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/TypeMetric.html">TypeMetric</a> </font></td>
      <td><font size="-1">const std::string &amp;text_, <a
 href="https://imagemagick.org/Magick++/TypeMetric.html"> TypeMetric</a> *metrics</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Update metrics with font type metrics using
specified <i>text</i>, and current <a href="Image++.html#font">font</a> and <a
 href="Image++.html#fontPointsize">fontPointSize</a> settings.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="format"></a> <font size="-1">format</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Long form image format description.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="gamma"></a> <font size="-1">gamma</font></center>
      </td>
      <td><font size="-1">double (typical range 0.8 to 2.3)</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Gamma level of the image. The same color
image displayed on two different  workstations  may 
look  different due to differences in the display monitor. 
Use gamma correction  to  adjust  for this 
color  difference.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="geometry"></a> <font size="-1">geometry</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> </font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Preferred size of the image when encoding.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="gifDisposeMethod"></a> <font size="-1">gifDispose-</font>
      <br>
      <font size="-1">Method</font></center>
      </td>
      <td><font size="-1">size_t</font> <br>
      <font size="-1">{ 0 = Disposal not specified,</font> <br>
      <font size="-1">1 = Do not dispose of graphic,</font> <br>
      <font size="-1">3 = Overwrite graphic with background color,</font>
      <br>
      <font size="-1">4 = Overwrite graphic with previous graphic. }</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t disposeMethod_</font></td>
      <td><font size="-1">GIF disposal method. This option is used to
control how successive frames are rendered (how the preceding frame is
disposed of) when creating a GIF animation.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="iccColorProfile"></a> <font size="-1">iccColorProfile</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a>
&amp;colorProfile_</font></td>
      <td><font size="-1">ICC color profile. Supplied via a <a
 href="https://imagemagick.org/Magick++/Blob.html"> Blob</a> since Magick++/ and ImageMagick do not
currently support formating this data structure directly. 
Specifications are available from the <a href="http://www.color.org/">
International Color Consortium</a> for the format of ICC color profiles.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="interlaceType"></a> <font size="-1">interlace-</font>
      <br>
      <font size="-1">Type</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#InterlaceType">InterlaceType</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#InterlaceType">InterlaceType</a>
interlace_</font></td>
      <td><font size="-1">The type of interlacing scheme (default <i>NoInterlace</i>
). This option is used to specify the type of  interlacing
scheme  for  raw  image formats such as RGB or YUV. <i>NoInterlace</i>
means do not  interlace, <i>LineInterlace</i> uses scanline
interlacing, and <i>PlaneInterlace</i> uses plane interlacing. <i>
PartitionInterlace</i> is like <i>PlaneInterlace</i> except the 
different planes  are saved  to individual files (e.g. 
image.R, image.G, and image.B). Use <i>LineInterlace</i> or <i>
PlaneInterlace</i> to create an interlaced GIF or progressive JPEG
image.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="iptcProfile"></a> <font size="-1">iptcProfile</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Blob.html">Blob</a> &amp;
iptcProfile_</font></td>
      <td><font size="-1">IPTC profile. Supplied via a <a
 href="https://imagemagick.org/Magick++/Blob.html"> Blob</a> since Magick++ and ImageMagick do not
currently  support formating this data structure directly.
Specifications are available from the <a href="http://www.iptc.org/">
International Press Telecommunications Council</a> for IPTC profiles.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="label"></a> <font size="-1">label</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;label_</font></td>
      <td><font size="-1">Image label</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="magick"></a> <font size="-1">magick</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"> const string &amp;magick_</font></td>
      <td><font size="-1">Get image format (e.g. "GIF")</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="matte"></a> <font size="-1">matte</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool matteFlag_</font></td>
      <td><font size="-1">True if the image has transparency. If set
True, store matte channel if  the image has one otherwise create
an opaque one.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="matteColor"></a> <font size="-1">matteColor</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Color.html">Color</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Color.html">Color</a>
&amp;matteColor_</font></td>
      <td><font size="-1">Image matte (frame) color</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="meanErrorPerPixel"></a> <font size="-1">meanError-</font>
      <br>
      <font size="-1">PerPixel</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">The mean error per pixel computed when an
image is color reduced. This parameter is only valid if verbose is set
to true and the image has just been quantized.</font></td>
    </tr>
    <tr>
      <td style="text-align: center; vertical-align: middle;"><font
 size="-1"><a name="modulusDepth"></a>modulusDepth<br>
      </font></td>
      <td style="text-align: left; vertical-align: middle;"><small>size_t
<br>
      </small></td>
      <td style="text-align: left; vertical-align: middle;"><small><font
 size="-1"><small>void<br>
      </small></font></small></td>
      <td style="text-align: left; vertical-align: middle;"><small>size_t
depth_<br>
      </small></td>
      <td style="text-align: left; vertical-align: middle;"><small>Image
modulus depth (minimum number of bits required to support
red/green/blue components without loss of accuracy). The pixel modulus
depth may be decreased by supplying a value which is less than the
current value, updating the pixels (reducing accuracy) to the new
depth.
The pixel modulus depth can not be increased over the current value
using this method.<br>
      </small></td>
    </tr>
    <tr>
      <td>
      <center><a name="monochrome"></a> <font size="-1">monochrome</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool flag_</font></td>
      <td><font size="-1">Transform the image to black and white</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="montageGeometry"></a> <font size="-1">montage-</font>
      <br>
      <font size="-1">Geometry</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> </font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Tile size and offset within an image montage.
Only valid for montage images.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="normalizedMaxError"></a> <font size="-1">normalized-</font>
      <br>
      <font size="-1">MaxError</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">The normalized max error per pixel computed
when an image is color reduced. This parameter is only valid if verbose
is set to true and the image has just been quantized.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="normalizedMeanError"></a> <font size="-1">normalized-</font>
      <br>
      <font size="-1">MeanError</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">The normalized mean error per pixel computed
when an image is color reduced. This parameter is only valid if verbose
is set to true and the image has just been quantized.</font></td>
    </tr>
    <tr>
      <td style="text-align: center; vertical-align: middle;"><small><a
 name="orientation"></a>orientation<br>
      </small></td>
      <td style="vertical-align: middle;"><small><a
 href="https://imagemagick.org/Magick++/Enumerations.html#OrientationType">OrientationType</a></small></td>
      <td style="vertical-align: top;"><small>void</small><br>
      </td>
      <td style="vertical-align: middle;"><small><a
 href="https://imagemagick.org/Magick++/Enumerations.html#OrientationType">OrientationType</a>
orientation_</small></td>
      <td style="vertical-align: top;"><small>Image orientation.
 Supported by some file formats such as DPX and TIFF. Useful for
turning the right way up.<br>
      </small></td>
    </tr>
    <tr>
      <td>
      <center><a name="packets"></a> <font size="-1">packets</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">The number of runlength-encoded packets in</font>
      <br>
      <font size="-1">the image</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="packetSize"></a> <font size="-1">packetSize</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">The number of bytes in each pixel packet</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="page"></a> <font size="-1">page</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Geometry.html#PostscriptPageSize">Geometry</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a
 href="https://imagemagick.org/Magick++/Geometry.html#PostscriptPageSize"> Geometry</a> &amp;pageSize_</font></td>
      <td><font size="-1">Preferred size and location of an image
canvas.</font>
      <p><font size="-1">Use this option to specify the dimensions
and position of the Postscript page in dots per inch or a TEXT page in
pixels. This option is typically used in concert with <i><a
 href="Image++.html#density"> density</a> </i>.</font> </p>
      <p><font size="-1">Page may also be used to position a GIF
image (such as for a scene in an animation)</font></p>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="pixelColor"></a> <font size="-1">pixelColor</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Color.html">Color</a> </font></td>
      <td><font size="-1">ssize_t x_, ssize_t y_</font></td>
      <td><font size="-1">ssize_t x_, ssize_t y_, const <a
 href="https://imagemagick.org/Magick++/Color.html"> Color</a> &amp;color_</font></td>
      <td><font size="-1">Get/set pixel color at location x &amp; y.</font></td>
    </tr>
    <tr>
      <td valign="top">
      <div align="center"><a name="profile"></a> <small>profile</small><br>
      </div>
      </td>
      <td valign="top"><a href="https://imagemagick.org/Magick++/Blob.html"><small> Blob</small><small><br>
      </small></a> </td>
      <td valign="top"><small>const std::string name_</small><small><br>
      </small></td>
      <td valign="top"><small>const std::string name_, const Blob
&amp;colorProfile_</small><small><br>
      </small></td>
      <td valign="top"><small>Get/set/remove </small><small> a named
profile</small><small>. Valid names include </small><small>"*",
"8BIM", "ICM", "IPTC", or a user/format-defined profile name. </small><br>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="quality"></a> <font size="-1">quality</font></center>
      </td>
      <td><font size="-1">size_t (0 to 100)</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t quality_</font></td>
      <td><font size="-1">JPEG/MIFF/PNG compression level (default 75).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="quantizeColors"></a> <font size="-1">quantize-</font>
      <br>
      <font size="-1">Colors</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t colors_</font></td>
      <td><font size="-1">Preferred number of colors in the image. The
actual number of colors in the image may be less than your request, but
never more. Images with less unique colors than specified with this
option will have any duplicate or unused colors removed.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="quantizeColorSpace"></a> <font size="-1">quantize-</font>
      <br>
      <font size="-1">ColorSpace</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ColorspaceType">ColorspaceType</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ColorspaceType">ColorspaceType</a>
colorSpace_</font></td>
      <td><font size="-1">Colorspace to quantize colors in (default
RGB). Empirical evidence suggests that distances in color spaces such
as YUV or YIQ correspond to perceptual color differences more closely
than do distances in RGB space. These color spaces may give better
results when color reducing an image.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="quantizeDither"></a> <font size="-1">quantize-</font>
      <br>
      <font size="-1">Dither</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool flag_</font></td>
      <td><font size="-1">Apply Floyd/Steinberg error diffusion to the
image. The basic strategy of dithering is to  trade 
intensity
resolution  for  spatial  resolution  by 
averaging the intensities  of  several 
neighboring  pixels. Images which  suffer  from 
severe  contouring  when  reducing colors can be
improved with this option. The quantizeColors or monochrome option must
be set for this option to take effect.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="quantizeTreeDepth"></a> <font size="-1">quantize-</font>
      <br>
      <font size="-1">TreeDepth</font></center>
      </td>
      <td><font size="-1">size_t </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t treeDepth_</font></td>
      <td><font size="-1">Depth of the quantization color
classification tree. Values of 0 or 1 allow selection of the optimal
tree depth for the color reduction algorithm. Values between 2 and 8
may be used to manually adjust the tree depth.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="renderingIntent"></a> <font size="-1">rendering-</font>
      <br>
      <font size="-1">Intent</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#RenderingIntent">RenderingIntent</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#RenderingIntent">RenderingIntent</a>
render_</font></td>
      <td><font size="-1">The type of rendering intent</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="resolutionUnits"></a> <font size="-1">resolution-</font>
      <br>
      <font size="-1">Units</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ResolutionType">ResolutionType</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ResolutionType">ResolutionType</a>
units_</font></td>
      <td><font size="-1">Units of image resolution</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="rows"></a> <font size="-1">rows</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">The number of pixel rows in the image</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="scene"></a> <font size="-1">scene</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t scene_</font></td>
      <td><font size="-1">Image scene number</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="signature"></a> <font size="-1">signature</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">bool force_ = false</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Image MD5 signature. Set force_ to 'true' to
force re-computation of signature.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="size"></a> <font size="-1">size</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a> </font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/Geometry.html">Geometry</a>
&amp;geometry_</font></td>
      <td><font size="-1">Width and height of a raw image (an image
which does not support width and height information).  Size may
also be used to affect the image size read from a multi-resolution
format (e.g. Photo CD, JBIG, or JPEG.</font></td>
    </tr>
    <tr>
      <td style="text-align: center;">
      <center><a name="strip"></a> <font size="-1">strip</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">strips an image of all profiles and comments.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeAntiAlias"></a> <font size="-1">strokeAntiAlias</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool flag_</font></td>
      <td><font size="-1">Enable or disable anti-aliasing when drawing
object outlines.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeColor"></a> <font size="-1">strokeColor</font></center>
      </td>
      <td><font size="-1">Color</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const Color &amp;strokeColor_</font></td>
      <td><font size="-1">Color to use when drawing object outlines</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeDashOffset"></a> <font size="-1">strokeDashOffset</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">double strokeDashOffset_</font></td>
      <td><font size="-1">While drawing using a dash pattern, specify
distance into the dash pattern to start the dash (default 0).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeDashArray"></a> <font size="-1">strokeDashArray</font></center>
      </td>
      <td><font size="-1">const double*</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const double* strokeDashArray_</font></td>
      <td><font size="-1">Specify the pattern of dashes and gaps used
to stroke paths. The strokeDashArray represents a zero-terminated
array of numbers that specify the lengths (in pixels) of alternating
dashes and gaps in user units. If an odd number of values is provided,
then the list of values is repeated to yield an even number of
values.  A typical strokeDashArray_ array might contain the
members 5 3 2 0, where the zero value indicates the end of the pattern
array.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeLineCap"></a> <font size="-1">strokeLineCap</font></center>
      </td>
      <td><font size="-1">LineCap</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">LineCap lineCap_</font></td>
      <td><font size="-1">Specify the shape to be used at the corners
of paths (or other vector shapes) when they are stroked. Values of
LineJoin are UndefinedJoin, MiterJoin, RoundJoin, and BevelJoin.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeLineJoin"></a> <font size="-1">strokeLineJoin</font></center>
      </td>
      <td><font size="-1">LineJoin</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">LineJoin lineJoin_</font></td>
      <td><font size="-1">Specify the shape to be used at the corners
of paths (or other vector shapes) when they are stroked. Values of
LineJoin are UndefinedJoin, MiterJoin, RoundJoin, and BevelJoin.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeMiterLimit"></a> <font size="-1">strokeMiterLimit</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t miterLimit_</font></td>
      <td><font size="-1">Specify miter limit. When two line segments
meet at a sharp angle and miter joins have been specified for
'lineJoin', it is possible for the miter to extend far beyond the
thickness of the line stroking the path. The miterLimit' imposes a
limit on the ratio of the miter length to the 'lineWidth'. The default
value of this parameter is 4.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokeWidth"></a> <font size="-1">strokeWidth</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">double strokeWidth_</font></td>
      <td><font size="-1">Stroke width for use when drawing vector
objects (default one)</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="strokePattern"></a> <font size="-1">strokePattern</font></center>
      </td>
      <td><font size="-1">Image</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const Image &amp;strokePattern_</font></td>
      <td><font size="-1">Pattern image to use while drawing object
stroke (outlines).</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="subImage"></a> <font size="-1">subImage</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t subImage_</font></td>
      <td><font size="-1">Subimage of an image sequence</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="subRange"></a> <font size="-1">subRange</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">size_t subRange_</font></td>
      <td><font size="-1">Number of images relative to the base image</font></td>
    </tr>
    <tr>
      <td valign="middle">
      <div align="center"><a name="textEncoding"></a> <small>textEncoding</small><br>
      </div>
      </td>
      <td valign="middle"><small>string</small><small><br>
      </small></td>
      <td valign="middle"><small>void</small><small><br>
      </small></td>
      <td valign="middle"><small>const std::string &amp;encoding_</small><small><br>
      </small></td>
      <td valign="top"><small>Specify the code set to use for text
annotations. The only character encoding which may be specified at
this time is "UTF-8" for representing </small><small><a
 href="http://www.unicode.org/"> Unicode </a> </small><small>as a
sequence of bytes. Specify an empty string to use the default ASCII
encoding. Successful text annotation using Unicode may require fonts
designed to support Unicode.</small><br>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="tileName"></a> <font size="-1">tileName</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;tileName_</font></td>
      <td><font size="-1">Tile name</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="totalColors"></a> <font size="-1">totalColors</font></center>
      </td>
      <td><font size="-1">size_t</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">Number of colors in the image</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="type"></a> <font size="-1">type</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#ImageType">ImageType</a>
      </font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#ffffff"><font size="-1"><a
 href="https://imagemagick.org/Magick++/Enumerations.html#ImageType"> ImageType</a> </font></td>
      <td><font size="-1">Image type.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="verbose"></a> <font size="-1">verbose</font></center>
      </td>
      <td><font size="-1">bool</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">bool verboseFlag_</font></td>
      <td><font size="-1">Print detailed information about the image</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="view"></a> <font size="-1">view</font></center>
      </td>
      <td><font size="-1">string</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;view_</font></td>
      <td><font size="-1">FlashPix viewing parameters.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="virtualPixelMethod"></a> <font size="-1">virtualPixelMethod</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#VirtualPixelMethod">VirtualPixelMethod</a>
      </font></td>
      <td><small><font size="-1"><small>void</small></font></small></td>
      <td><small><font size="-1"><small><a
 href="https://imagemagick.org/Magick++/Enumerations.html#VirtualPixelMethod">VirtualPixelMethod</a>
virtualPixelMethod_</small></font></small></td>
      <td><font size="-1">Image virtual pixel method.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="x11Display"></a> <font size="-1">x11Display</font></center>
      </td>
      <td><font size="-1">string (e.g. "hostname:0.0")</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">const string &amp;display_</font></td>
      <td><font size="-1">X11 display to display to, obtain fonts from,
or to capture image from</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="xResolution"></a> <font size="-1">xResolution</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">x resolution of the image</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="yResolution"></a> <font size="-1">yResolution</font></center>
      </td>
      <td><font size="-1">double</font></td>
      <td><font size="-1">void</font></td>
      <td bgcolor="#666666"><font size="-1"> </font></td>
      <td><font size="-1">y resolution of the image</font></td>
    </tr>
  </tbody>
</table></ul>
</div>
<h2> <a name="Raw Image Pixel Access"></a> Low-Level Image Pixel Access</h2>
<div class="doc-section">
Image pixels (of type <i><a href="https://imagemagick.org/Magick++/PixelPacket.html">PixelPacket</a> </i>)
may be accessed directly via the <i>Image Pixel Cache</i> .  The
image pixel cache is a rectangular window into the actual image pixels
(which may be in memory, memory-mapped from a disk file, or entirely on
disk). Two interfaces exist to access the <i>Image Pixel Cache.</i>
The
interface described here (part of the <i>Image</i> class) supports
only
one view at a time. See the <i><a href="https://imagemagick.org/Magick++/Pixels.html">Pixels</a> </i>
class for a more abstract interface which supports simultaneous pixel
views (up to the number of rows). As an analogy, the interface
described
here relates to the <i><a href="https://imagemagick.org/Magick++/Pixels.html">Pixels</a> </i> class as
stdio's gets() relates to fgets(). The <i><a href="https://imagemagick.org/Magick++/Pixels.html"> Pixels</a>
</i>class provides the more general form of the interface.
<p>Obtain existing image pixels via <i>getPixels()</i>. Create a new
pixel region using <i>setPixels().</i></p>
<p>In order to ensure that only the current generation of the image is
modified, the Image's <a href="Image++.html#modifyImage">modifyImage()</a> method
should be invoked to reduce the reference count on the underlying image
to one. If this is not done, then it is possible for a previous
generation of the image to be modified due to the use of reference
counting when copying or constructing an Image.<br>
</p>
<p>Depending on the capabilities of the operating system, and the
relationship of the window to the image, the pixel cache may be a copy
of the pixels in the selected window, or it may be the actual image
pixels. In any case calling <i>syncPixels()</i> insures that the base
image is updated with the contents of the modified pixel cache. The
method <i> readPixels()</i> supports copying foreign pixel data
formats
into the pixel cache according to the <i>QuantumTypes</i>. The method <i>writePixels()</i>
supports copying the pixels in the cache to a foreign pixel
representation according to the format specified by <i>QuantumTypes</i>.</p>
<p>The pixel region is effectively a small image in which the pixels
may be accessed, addressed, and updated, as shown in the following
example:
<pre class="code">
<p><img class="icon" src="../../api/Cache.png" name="Graphic1" width="254" border="0" /></p>
Image image("cow.png"); 
// Ensure that there are no other references to this image.
image.modifyImage();
// Set the image type to TrueColor DirectClass representation.
image.type(TrueColorType);
// Request pixel region with size 60x40, and top origin at 20x30 
ssize_t columns = 60; 
PixelPacket *pixel_cache = image.getPixels(20,30,columns,40); 
// Set pixel at column 5, and row 10 in the pixel cache to red. 
ssize_t column = 5; 
ssize_t row = 10; 
PixelPacket *pixel = pixel_cache+row*columns+column; 
*pixel = Color("red"); 
// Save changes to underlying image .
image.syncPixels();
  // Save updated image to file.
image.write("horse.png");
</pre>
</p>
<p>The image cache supports the following methods: <br>
 
<ul><table border="1" width="100%">
  <caption>Image Cache Methods</caption> <tbody>
    <tr>
      <td>
      <center><b>Method</b></center>
      </td>
      <td>
      <center><b>Returns</b></center>
      </td>
      <td>
      <center><b>Signature</b></center>
      </td>
      <td>
      <center><b>Description</b></center>
      </td>
    </tr>
    <tr>
      <td>
      <center><a name="getConstPixels"></a> <font size="-1">getConstPixels</font></center>
      </td>
      <td><font size="-1">const <a href="https://imagemagick.org/Magick++/PixelPacket.html">PixelPacket</a>
*</font></td>
      <td><font size="-1">const ssize_t x_, const ssize_t y_, const size_t
columns_, const size_t rows_</font></td>
      <td><font size="-1">Transfers pixels from the image to the pixel
cache as defined by the specified rectangular region. </font><font
 size="-1">The returned pointer remains valid until the next getPixel,
getConstPixels, or setPixels call and should never be deallocated by
the
user.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="getConstIndexes"></a> <font size="-1">getConstIndexes</font></center>
      </td>
      <td><font size="-1">const IndexPacket*</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Returns a pointer to the Image pixel indexes
corresponding to a previous </font><font size="-1">getPixel,
getConstPixels, or setPixels call.  </font><font size="-1">The
returned pointer remains valid until the next getPixel, getConstPixels,
or setPixels call and should never be deallocated by the user.</font><font
 size="-1"> Only valid for PseudoClass images or CMYKA images. The
pixel indexes represent an array of type IndexPacket, with each entry
corresponding to an x,y pixel position. For PseudoClass images, the
entry's value is the offset into the colormap (see <a href="Image++.html#colorMap">colorMap</a>
) for that pixel. For CMYKA images, the indexes are used to contain the
alpha channel.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="getIndexes"></a> <font size="-1">getIndexes</font></center>
      </td>
      <td><font size="-1">IndexPacket*</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Returns a pointer to the Image pixel indexes
corresponding to the pixel region requested by the last <a
 href="Image++.html#getConstPixels">getConstPixels</a> , <a href="Image++.html#getPixels">getPixels</a>
, or <a href="Image++.html#setPixels">setPixels</a> call. </font><font
 size="-1">The
returned pointer remains valid until the next getPixel, getConstPixels,
or setPixels call and should never be deallocated by the user.</font><font
 size="-1"> </font><font size="-1">Only valid for PseudoClass images
or
CMYKA images. The pixel indexes represent an array of type
IndexPacket, with each entry corresponding to a pixel x,y position. For
PseudoClass images, the entry's value is the offset into the colormap
(see <a href="Image++.html#colorMap">colorMap</a> )  for that pixel. For
CMYKA
images, the indexes are used to contain the alpha channel.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="getPixels"></a> <font size="-1">getPixels</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/PixelPacket.html">PixelPacket</a> *</font></td>
      <td><font size="-1">const ssize_t x_, const ssize_t y_, const size_t
columns_, const size_t rows_</font></td>
      <td><font size="-1">Transfers pixels from the image to the pixel
cache as defined by the specified rectangular region. Modified pixels
may be subsequently transferred back to the image via syncPixels. </font><font
 size="-1">The returned pointer remains valid until the next getPixel,
getConstPixels, or setPixels call and should never be deallocated by
the
user.</font><font size="-1"></font></td>
    </tr>
    <tr>
      <td>
      <center><a name="setPixels"></a> <font size="-1">setPixels</font></center>
      </td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/PixelPacket.html">PixelPacket</a> *</font></td>
      <td><font size="-1">const ssize_t x_, const ssize_t y_, const size_t
columns_, const size_t rows_</font></td>
      <td><font size="-1">Allocates a pixel cache region to store image
pixels as defined by the region rectangle.  This area is
subsequently transferred from the pixel cache to the image via
syncPixels. </font><font size="-1">The returned pointer remains
valid until the next getPixel, getConstPixels, or setPixels call and
should never be deallocated by the user.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="syncPixels"></a> <font size="-1">syncPixels</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">void</font></td>
      <td><font size="-1">Transfers the image cache pixels to the image.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="readPixels"></a> <font size="-1">readPixels</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#QuantumTypes">QuantumTypes</a>
quantum_, unsigned char *source_,</font></td>
      <td><font size="-1">Transfers one or more pixel components from a
buffer or file into the image pixel cache of an image. ReadPixels is
typically used to support image decoders. The region transferred
corresponds to the region set by a preceding setPixels call.</font></td>
    </tr>
    <tr>
      <td>
      <center><a name="writePixels"></a> <font size="-1">writePixels</font></center>
      </td>
      <td><font size="-1">void</font></td>
      <td><font size="-1"><a href="https://imagemagick.org/Magick++/Enumerations.html#QuantumTypes">QuantumTypes</a>
quantum_, unsigned char *destination_</font></td>
      <td><font size="-1">Transfers one or more pixel components from
the image pixel cache to a buffer or file. WritePixels is typically
used to support image encoders. The region transferred corresponds to
the region set by a preceding getPixels or getConstPixels call.</font></td>
    </tr>
  </tbody>
</table></ul>
</p>
</div>
</div>
    </div>
  </main><!-- /.container -->
  <footer class="magick-footer">
    <p><a href="../../www/security-policy.html">Security</a> •
    <a href="../../www/architecture.html">Architecture</a> •
    <a href="../../www/links.html">Related</a> •
     <a href="../../www/sitemap.html">Sitemap</a>
       
    <a href="Image++.html#"><img class="d-inline" id="wand" alt="And Now a Touch of Magick" width="16" height="16" src="../../images/wand.ico"/></a>
       
    <a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
    <a href="../../www/support.html">Donate</a> •
    <a href="../../www/contact.html">Contact Us</a>
    <br/>
        <small>© 1999-2018 ImageMagick Studio LLC</small></p>
  </footer>

  <!-- Javascript assets -->
  <script src="../assets/magick.js" crossorigin="anonymous"></script>
  <script>window.jQuery || document.write('<script src="../assets/jquery.min.js"><\/script>')</script>
</body>
</html>
<!-- Magick Cache 7th September 2018 15:21 -->