<meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1">
<link rel="icon" href="images/wand.png">
<link rel="shortcut icon" href="images/wand.ico" type="images/x-icon">
- <link rel="stylesheet" href="www/www/css/bootstrap.min.css">
- <link rel="stylesheet" href="www/www/css/magick.css">
+ <link rel="stylesheet" href="www/css/bootstrap.min.css">
+ <link rel="stylesheet" href="css/magick.css">
</head>
<body>
<a class="magick-nav-item " href="www/command-line-options.html">Options</a>
<a class="magick-nav-item " href="www/resources.html">Resources</a>
<a class="magick-nav-item " href="www/api.html">Develop</a>
- <a class="magick-nav-item " href="www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
+ <a class="magick-nav-item " href="www/http://nextgen.imagemagick.org/script/search.php">Search</a>
<a class="magick-nav-item pull-right" href="http://www.imagemagick.org/http://nextgen.imagemagick.org/discourse-server//">Community</a>
</nav>
</div>
<p>The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite language. Choose from these interfaces: <a href="www/api.html#ada">G2F</a> (Ada), <a href="www/api.html#c">MagickCore</a> (C), <a href="www/api.html#c">MagickWand</a> (C), <a href="www/api.html#ch">ChMagick</a> (Ch), <a href="www/api.html#com_">ImageMagickObject</a> (COM+), <a href="www/api.html#c__">Magick++</a> (C++), <a href="www/api.html#java">JMagick</a> (Java), <a href="www/api.html#lisp">L-Magick</a> (Lisp), <a href="www/api.html#lua">Lua</a>, <a href="www/api.html#neko">NMagick</a> (Neko/haXe), <a href="www/api.html#dot-net">Magick.NET</a> (.NET), <a href="www/api.html#pascal">PascalMagick</a> (Pascal), <a href="www/api.html#perl">PerlMagick</a> (Perl), <a href="www/api.html#php">MagickWand for PHP</a> (PHP), <a href="www/api.html#php">IMagick</a> (PHP), <a href="www/api.html#python">PythonMagick</a> (Python), <a href="www/api.html#ruby">RMagick</a> (Ruby), or <a href="www/api.html#tcl">TclMagick</a> (Tcl/TK). With a language interface, use ImageMagick to modify or create images dynamically and <var>automagically</var>.</p>
<p>ImageMagick utilizes multiple computational threads to increase performance and can read, process, or write mega-, giga-, or tera-pixel image sizes.</p>
-<p>ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you may use, copy, modify, and distribute in both open and proprietary applications. It is distributed under the Apache 2.0 <a href="www/license.html">license</a>.</p>
+<p>ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you may use, copy, modify, and distribute in both open and proprietary applications. It is distributed under the Apache 2.0 <a href="http://www.imagemagick.org/www/license.html">license</a>.</p>
<p>The ImageMagick development process ensures a <a href="http://upstream-tracker.org/versions/imagemagick.html">stable API</a> and ABI. Before each ImageMagick release, we perform a comprehensive security assessment that includes <a href="https://code.google.com/p/address-sanitizer/">memory error</a> and <a href="https://code.google.com/p/data-race-test/wiki/ThreadSanitizer">thread data race</a> detection to prevent security vulnerabilities.</p>
-<p>The current release is ImageMagick 6.9.1-4 available from <a href="http://www.imagemagick.org/ImageMagick-7.0.0">http://www.imagemagick.org/download</a>. It runs on <a href="http://www.imagemagick.org/download/linux/">Linux</a>, <a href="http://www.imagemagick.org/download/binaries/">Windows</a>, <a href="http://www.imagemagick.org/download/binaries/">Mac Os X</a>, <a href="http://www.imagemagick.org/download/iOS/">iOS</a>, Android OS, and others.</p>
+<p>The current release is ImageMagick 6.9.1-4 available from <a href="http://www.imagemagick.org/download/">http://www.imagemagick.org/download</a>. It runs on <a href="http://www.imagemagick.org/download/linux/">Linux</a>, <a href="http://www.imagemagick.org/download/binaries/">Windows</a>, <a href="http://www.imagemagick.org/download/binaries/">Mac Os X</a>, <a href="http://www.imagemagick.org/download/iOS/">iOS</a>, Android OS, and others.</p>
-<p>The authoritative ImageMagick web site is <a href="index.html">http://www.imagemagick.org</a>. The authoritative source code repository is <a href="https://subversion.imagemagick.org/subversion/ImageMagick/">https://subversion.imagemagick.org/subversion/ImageMagick/</a>.</p>
+<p>The authoritative ImageMagick web site is <a href="http://www.imagemagick.org/">http://www.imagemagick.org</a>. The authoritative source code repository is <a href="https://subversion.imagemagick.org/subversion/ImageMagick/">https://subversion.imagemagick.org/subversion/ImageMagick/</a>.</p>
<h2 class="magick-header">Features and Capabilities</h2>
<p>Here are just a few <a href="www/examples.html">examples</a> of what ImageMagick can do for you:</p>
</tr>
<tr>
<td><a href="http://www.imagemagick.org/Usage/resize/">Transform</a></td>
- <td>resize, rotate, crop, flip or trim an image.</td>
+ <td>resize, rotate, deskew, crop, flip or trim an image.</td>
</tr>
<tr>
<td><a href="http://www.imagemagick.org/Usage/masking/">Transparency</a></td>
<h2 class="magick-header"><a id="news"></a>News</h2>
-<p>The design of ImageMagick is an evolutionary process, with the design and implementation efforts serving to influence and guide further progress in the other. With <a href="http://www.imagemagick.org/ImageMagick-7.0.0">ImageMagick version 7</a>, we aim to improve the design based on lessons learned from the version 6 implementation. See the <a href="www/porting.html">porting</a> guide to track the progress of the version 7 development effort.</p>
+<p>The design of ImageMagick is an evolutionary process, with the design and implementation efforts serving to influence and guide further progress in the other. With <a href="index.html">ImageMagick version 7</a>, we aim to improve the design based on lessons learned from the version 6 implementation. See the <a href="www/porting.html">porting</a> guide to track the progress of the version 7 development effort.</p>
<h2 class="magick-header"><a id="community"></a>Community</h2>
<p>To join the ImageMagick community, try the <a href="http://www.imagemagick.org/http://nextgen.imagemagick.org/discourse-server//">discourse server</a>. You can review questions or comments (with informed responses) posed by ImageMagick users or ask your own questions.</p>
</p>
<p><a href="index.html#">Back to top</a> •
<a href="http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x89AB63D48277377A">Public Key</a> •
- <a href="www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
+ <a href="www/http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
<p><small>© 1999-2015 ImageMagick Studio LLC</small></p>
</footer>
</div><!-- /.container -->
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<div class="magick-header">
<p class="text-center"><a href="animate.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/animate_8c.html" id="AnimateImages">AnimateImages</a></h2>
+
+<p>AnimateImages() repeatedly displays an image sequence to any X window screen. It returns a value other than 0 if successful. Check the exception member of image to determine the reason for any failure.</p>
+
+<p>The format of the AnimateImages method is:</p>
+
+<pre class="text">
+MagickBooleanType AnimateImages(const ImageInfo *image_info,
+ Image *images,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="annotate.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/annotate_8c.html" id="AnnotateImage">AnnotateImage</a></h2>
+
+<p>AnnotateImage() annotates an image with text. Optionally you can include any of the following bits of information about the image by embedding the appropriate special characters:</p>
+
+<pre class="text">
+ \n newline
+ \r carriage return
+ < less-than character.
+ > greater-than character.
+ & ampersand character.
+ a percent sign
+ b file size of image read in
+ c comment meta-data property
+ d directory component of path
+ e filename extension or suffix
+ f filename (including suffix)
+ g layer canvas page geometry (equivalent to "WxHXY")
+ h current image height in pixels
+ i image filename (note: becomes output filename for "info:")
+ k CALCULATED: number of unique colors
+ l label meta-data property
+ m image file format (file magic)
+ n number of images in current image sequence
+ o output filename (used for delegates)
+ p index of image in current image list
+ q quantum depth (compile-time constant)
+ r image class and colorspace
+ s scene number (from input unless re-assigned)
+ t filename without directory or extension (suffix)
+ u unique temporary filename (used for delegates)
+ w current width in pixels
+ x x resolution (density)
+ y y resolution (density)
+ z image depth (as read in unless modified, image save depth)
+ A image transparency channel enabled (true/false)
+ C image compression type
+ D image GIF dispose method
+ G original image size (wxh; before any resizes)
+ H page (canvas) height
+ M Magick filename (original file exactly as given, including read mods)
+ O page (canvas) offset ( = XY )
+ P page (canvas) size ( = WxH )
+ Q image compression quality ( 0 = default )
+ S ?? scenes ??
+ T image time delay (in centi-seconds)
+ U image resolution units
+ W page (canvas) width
+ X page (canvas) x offset (including sign)
+ Y page (canvas) y offset (including sign)
+ Z unique filename (used for delegates)
+ @ CALCULATED: trim bounding box (without actually trimming)
+ # CALCULATED: 'signature' hash of image values
+</pre>
+
+<p>The format of the AnnotateImage method is:</p>
+
+<pre class="text">
+MagickBooleanType AnnotateImage(Image *image,DrawInfo *draw_info,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/annotate_8c.html" id="FormatMagickCaption">FormatMagickCaption</a></h2>
+
+<p>FormatMagickCaption() formats a caption so that it fits within the image width. It returns the number of lines in the formatted caption.</p>
+
+<p>The format of the FormatMagickCaption method is:</p>
+
+<pre class="text">
+ssize_t FormatMagickCaption(Image *image,DrawInfo *draw_info,
+ const MagickBooleanType split,TypeMetric *metrics,char **caption,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>The image.</p>
+
+<dt>draw_info</dt>
+<p>the draw info.</p>
+
+<dt>split</dt>
+<p>when no convenient line breaks-- insert newline.</p>
+
+<dt>metrics</dt>
+<p>Return the font metrics in this structure.</p>
+
+<dt>caption</dt>
+<p>the caption.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/annotate_8c.html" id="GetMultilineTypeMetrics">GetMultilineTypeMetrics</a></h2>
+
+<p>GetMultilineTypeMetrics() returns the following information for the specified font and text:</p>
+
+<pre class="text">
+ character width
+ character height
+ ascender
+ descender
+ text width
+ text height
+ maximum horizontal advance
+ bounds: x1
+ bounds: y1
+ bounds: x2
+ bounds: y2
+ origin: x
+ origin: y
+ underline position
+ underline thickness
+</pre>
+
+<p>This method is like GetTypeMetrics() but it returns the maximum text width and height for multiple lines of text.</p>
+
+<p>The format of the GetMultilineTypeMetrics method is:</p>
+
+<pre class="text">
+MagickBooleanType GetMultilineTypeMetrics(Image *image,
+ const DrawInfo *draw_info,TypeMetric *metrics,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>metrics</dt>
+<dd>Return the font metrics in this structure. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/annotate_8c.html" id="GetTypeMetrics">GetTypeMetrics</a></h2>
+
+<p>GetTypeMetrics() returns the following information for the specified font and text:</p>
+
+<pre class="text">
+ character width
+ character height
+ ascender
+ descender
+ text width
+ text height
+ maximum horizontal advance
+ bounds: x1
+ bounds: y1
+ bounds: x2
+ bounds: y2
+ origin: x
+ origin: y
+ underline position
+ underline thickness
+</pre>
+
+<p>The format of the GetTypeMetrics method is:</p>
+
+<pre class="text">
+MagickBooleanType GetTypeMetrics(Image *image,const DrawInfo *draw_info,
+ TypeMetric *metrics,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>metrics</dt>
+<dd>Return the font metrics in this structure. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="attribute.html#"></a></p>
+<p class="text-center"><a href="attribute.html#GetImageDepth">GetImageDepth</a> • <a href="attribute.html#GetImageQuantumDepth">GetImageQuantumDepth</a> • <a href="attribute.html#GetImageType">GetImageType</a> • <a href="attribute.html#IsImageGray">IsImageGray</a> • <a href="attribute.html#IsImageMonochrome">IsImageMonochrome</a> • <a href="attribute.html#IsImageOpaque">IsImageOpaque</a> • <a href="attribute.html#SetImageDepth">SetImageDepth</a> • <a href="attribute.html#SetImageGray">SetImageGray</a> • <a href="attribute.html#SetImageMonochrome">SetImageMonochrome</a> • <a href="attribute.html#SetImageType">SetImageType</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="GetImageDepth">GetImageDepth</a></h2>
+
+<p>GetImageDepth() returns the depth of a particular image channel.</p>
+
+<p>The format of the GetImageDepth method is:</p>
+
+<pre class="text">
+size_t GetImageDepth(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="GetImageQuantumDepth">GetImageQuantumDepth</a></h2>
+
+<p>GetImageQuantumDepth() returns the depth of the image rounded to a legal quantum depth: 8, 16, or 32.</p>
+
+<p>The format of the GetImageQuantumDepth method is:</p>
+
+<pre class="text">
+size_t GetImageQuantumDepth(const Image *image,
+ const MagickBooleanType constrain)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>constrain</dt>
+<dd>A value other than MagickFalse, constrains the depth to a maximum of MAGICKCORE_QUANTUM_DEPTH. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="GetImageType">GetImageType</a></h2>
+
+<p>GetImageType() returns the potential type of image:</p>
+
+<p>Bilevel Grayscale GrayscaleMatte Palette PaletteMatte TrueColor TrueColorMatte ColorSeparation ColorSeparationMatte</p>
+
+<p>To ensure the image type matches its potential, use SetImageType():</p>
+
+<pre class="text">
+ (void) SetImageType(image,GetImageType(image));
+</pre>
+
+<p>The format of the GetImageType method is:</p>
+
+<pre class="text">
+ImageType GetImageType(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="IsImageGray">IsImageGray</a></h2>
+
+<p>IsImageGray() returns MagickTrue if the type of the image is grayscale or bi-level.</p>
+
+<p>The format of the IsImageGray method is:</p>
+
+<pre class="text">
+MagickBooleanType IsImageGray(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="IsImageMonochrome">IsImageMonochrome</a></h2>
+
+<p>IsImageMonochrome() returns MagickTrue if type of the image is bi-level.</p>
+
+<p>The format of the IsImageMonochrome method is:</p>
+
+<pre class="text">
+MagickBooleanType IsImageMonochrome(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="IsImageOpaque">IsImageOpaque</a></h2>
+
+<p>IsImageOpaque() returns MagickTrue if none of the pixels in the image have an alpha value other than OpaqueAlpha (QuantumRange).</p>
+
+<p>Will return true immediatally is alpha channel is not available.</p>
+
+<p>The format of the IsImageOpaque method is:</p>
+
+<pre class="text">
+MagickBooleanType IsImageOpaque(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="SetImageDepth">SetImageDepth</a></h2>
+
+<p>SetImageDepth() sets the depth of the image.</p>
+
+<p>The format of the SetImageDepth method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageDepth(Image *image,const size_t depth,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>channel</dt>
+<dd>the channel. </dd>
+
+<dd> </dd>
+<dt>depth</dt>
+<dd>the image depth. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="SetImageGray">SetImageGray</a></h2>
+
+<p>SetImageGray() returns MagickTrue if all the pixels in the image have the same red, green, and blue intensities and changes the type of the image to bi-level or grayscale.</p>
+
+<p>The format of the SetImageGray method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageGray(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="SetImageMonochrome">SetImageMonochrome</a></h2>
+
+<p>SetImageMonochrome() returns MagickTrue if all the pixels in the image have the same red, green, and blue intensities and the intensity is either 0 or QuantumRange and changes the type of the image to bi-level.</p>
+
+<p>The format of the SetImageMonochrome method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageMonochrome(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/attribute_8c.html" id="SetImageType">SetImageType</a></h2>
+
+<p>SetImageType() sets the type of image. Choose from these types:</p>
+
+<p>Bilevel Grayscale GrayscaleMatte Palette PaletteMatte TrueColor TrueColorMatte ColorSeparation ColorSeparationMatte OptimizeType</p>
+
+<p>The format of the SetImageType method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageType(Image *image,const ImageType type,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>type</dt>
+<dd>Image type. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="blob.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="BlobToImage">BlobToImage</a></h2>
+
+<p>BlobToImage() implements direct to memory image formats. It returns the blob as an image.</p>
+
+<p>The format of the BlobToImage method is:</p>
+
+<pre class="text">
+Image *BlobToImage(const ImageInfo *image_info,const void *blob,
+ const size_t length,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>blob</dt>
+<dd>the address of a character stream in one of the image formats understood by ImageMagick. </dd>
+
+<dd> </dd>
+<dt>length</dt>
+<dd>This size_t integer reflects the length in bytes of the blob. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="FileToImage">FileToImage</a></h2>
+
+<p>FileToImage() write the contents of a file to an image.</p>
+
+<p>The format of the FileToImage method is:</p>
+
+<pre class="text">
+MagickBooleanType FileToImage(Image *,const char *filename)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>filename</dt>
+<dd>the filename. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="GetBlobProperties">GetBlobProperties</a></h2>
+
+<p>GetBlobProperties() returns information about an image blob.</p>
+
+<p>The format of the GetBlobProperties method is:</p>
+
+<pre class="text">
+const struct stat *GetBlobProperties(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="ImageToBlob">ImageToBlob</a></h2>
+
+<p>ImageToBlob() implements direct to memory image formats. It returns the image as a formatted blob and its length. The magick member of the Image structure determines the format of the returned blob (GIF, JPEG, PNG, etc.). This method is the equivalent of WriteImage(), but writes the formatted "file" to a memory buffer rather than to an actual file.</p>
+
+<p>The format of the ImageToBlob method is:</p>
+
+<pre class="text">
+void *ImageToBlob(const ImageInfo *image_info,Image *image,
+ size_t *length,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>length</dt>
+<dd>return the actual length of the blob. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="ImageToFile">ImageToFile</a></h2>
+
+<p>ImageToFile() writes an image to a file. It returns MagickFalse if an error occurs otherwise MagickTrue.</p>
+
+<p>The format of the ImageToFile method is:</p>
+
+<pre class="text">
+ MagickBooleanType ImageToFile(Image *image,char *filename,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>filename</dt>
+<dd>Write the image to this file. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="ImagesToBlob">ImagesToBlob</a></h2>
+
+<p>ImagesToBlob() implements direct to memory image formats. It returns the image sequence as a blob and its length. The magick member of the ImageInfo structure determines the format of the returned blob (GIF, JPEG, PNG, etc.)</p>
+
+<p>Note, some image formats do not permit multiple images to the same image stream (e.g. JPEG). in this instance, just the first image of the sequence is returned as a blob.</p>
+
+<p>The format of the ImagesToBlob method is:</p>
+
+<pre class="text">
+void *ImagesToBlob(const ImageInfo *image_info,Image *images,
+ size_t *length,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>length</dt>
+<dd>return the actual length of the blob. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/blob_8c.html" id="InjectImageBlob">InjectImageBlob</a></h2>
+
+<p>InjectImageBlob() injects the image with a copy of itself in the specified format (e.g. inject JPEG into a PDF image).</p>
+
+<p>The format of the InjectImageBlob method is:</p>
+
+<pre class="text">
+MagickBooleanType InjectImageBlob(const ImageInfo *image_info,
+ Image *image,Image *inject_image,const char *format,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info.. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>inject_image</dt>
+<dd>inject into the image stream. </dd>
+
+<dd> </dd>
+<dt>format</dt>
+<dd>the image format. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="cache-view.html#"></a></p>
+<p class="text-center"><a href="cache-view.html#AcquireAuthenticCacheView">AcquireAuthenticCacheView</a> • <a href="cache-view.html#AcquireVirtualCacheView">AcquireVirtualCacheView</a> • <a href="cache-view.html#CloneCacheView">CloneCacheView</a> • <a href="cache-view.html#DestroyCacheView">DestroyCacheView</a> • <a href="cache-view.html#GetCacheViewAuthenticPixels">GetCacheViewAuthenticPixels</a> • <a href="cache-view.html#GetCacheViewAuthenticMetacontent">GetCacheViewAuthenticMetacontent</a> • <a href="cache-view.html#GetCacheViewAuthenticPixelQueue">GetCacheViewAuthenticPixelQueue</a> • <a href="cache-view.html#GetCacheViewColorspace">GetCacheViewColorspace</a> • <a href="cache-view.html#GetCacheViewImage">GetCacheViewImage</a> • <a href="cache-view.html#GetCacheViewStorageClass">GetCacheViewStorageClass</a> • <a href="cache-view.html#GetCacheViewVirtualMetacontent">GetCacheViewVirtualMetacontent</a> • <a href="cache-view.html#GetCacheViewVirtualPixelQueue">GetCacheViewVirtualPixelQueue</a> • <a href="cache-view.html#GetCacheViewVirtualPixels">GetCacheViewVirtualPixels</a> • <a href="cache-view.html#GetOneCacheViewAuthenticPixel">GetOneCacheViewAuthenticPixel</a> • <a href="cache-view.html#GetOneCacheViewVirtualPixel">GetOneCacheViewVirtualPixel</a> • <a href="cache-view.html#GetOneCacheViewVirtualPixelInfo">GetOneCacheViewVirtualPixelInfo</a> • <a href="cache-view.html#GetOneCacheViewVirtualMethodPixel">GetOneCacheViewVirtualMethodPixel</a> • <a href="cache-view.html#QueueCacheViewAuthenticPixels">QueueCacheViewAuthenticPixels</a> • <a href="cache-view.html#SetCacheViewStorageClass">SetCacheViewStorageClass</a> • <a href="cache-view.html#SetCacheViewVirtualPixelMethod">SetCacheViewVirtualPixelMethod</a> • <a href="cache-view.html#SyncCacheViewAuthenticPixels">SyncCacheViewAuthenticPixels</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="AcquireAuthenticCacheView">AcquireAuthenticCacheView</a></h2>
+
+<p>AcquireAuthenticCacheView() acquires an authentic view into the pixel cache. It always succeeds but may return a warning or informational exception.</p>
+
+<p>The format of the AcquireAuthenticCacheView method is:</p>
+
+<pre class="text">
+CacheView *AcquireAuthenticCacheView(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="AcquireVirtualCacheView">AcquireVirtualCacheView</a></h2>
+
+<p>AcquireVirtualCacheView() acquires a virtual view into the pixel cache, using the VirtualPixelMethod that is defined within the given image itself. It always succeeds but may return a warning or informational exception.</p>
+
+<p>The format of the AcquireVirtualCacheView method is:</p>
+
+<pre class="text">
+CacheView *AcquireVirtualCacheView(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="CloneCacheView">CloneCacheView</a></h2>
+
+<p>CloneCacheView() makes an exact copy of the specified cache view.</p>
+
+<p>The format of the CloneCacheView method is:</p>
+
+<pre class="text">
+CacheView *CloneCacheView(const CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="DestroyCacheView">DestroyCacheView</a></h2>
+
+<p>DestroyCacheView() destroys the specified view returned by a previous call to AcquireCacheView().</p>
+
+<p>The format of the DestroyCacheView method is:</p>
+
+<pre class="text">
+CacheView *DestroyCacheView(CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewAuthenticPixels">GetCacheViewAuthenticPixels</a></h2>
+
+<p>GetCacheViewAuthenticPixels() gets pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.</p>
+
+<p>The format of the GetCacheViewAuthenticPixels method is:</p>
+
+<pre class="text">
+Quantum *GetCacheViewAuthenticPixels(CacheView *cache_view,
+ const ssize_t x,const ssize_t y,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewAuthenticMetacontent">GetCacheViewAuthenticMetacontent</a></h2>
+
+<p>GetCacheViewAuthenticMetacontent() returns the meta-content corresponding with the last call to SetCacheViewIndexes() or GetCacheViewAuthenticMetacontent(). The meta-content are authentic and can be updated.</p>
+
+<p>The format of the GetCacheViewAuthenticMetacontent() method is:</p>
+
+<pre class="text">
+void *GetCacheViewAuthenticMetacontent(CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewAuthenticPixelQueue">GetCacheViewAuthenticPixelQueue</a></h2>
+
+<p>GetCacheViewAuthenticPixelQueue() returns the pixels associated with the last call to QueueCacheViewAuthenticPixels() or GetCacheViewAuthenticPixels(). The pixels are authentic and therefore can be updated.</p>
+
+<p>The format of the GetCacheViewAuthenticPixelQueue() method is:</p>
+
+<pre class="text">
+Quantum *GetCacheViewAuthenticPixelQueue(CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewColorspace">GetCacheViewColorspace</a></h2>
+
+<p>GetCacheViewColorspace() returns the image colorspace associated with the specified view.</p>
+
+<p>The format of the GetCacheViewColorspace method is:</p>
+
+<pre class="text">
+ColorspaceType GetCacheViewColorspace(const CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewImage">GetCacheViewImage</a></h2>
+
+<p>GetCacheViewImage() returns the image associated with the specified view.</p>
+
+<p>The format of the GetCacheViewImage method is:</p>
+
+<pre class="text">
+const Image *GetCacheViewImage(const CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewStorageClass">GetCacheViewStorageClass</a></h2>
+
+<p>GetCacheViewStorageClass() returns the image storage class associated with the specified view.</p>
+
+<p>The format of the GetCacheViewStorageClass method is:</p>
+
+<pre class="text">
+ClassType GetCacheViewStorageClass(const CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewVirtualMetacontent">GetCacheViewVirtualMetacontent</a></h2>
+
+<p>GetCacheViewVirtualMetacontent() returns the meta-content corresponding with the last call to GetCacheViewVirtualMetacontent(). The meta-content is virtual and therefore cannot be updated.</p>
+
+<p>The format of the GetCacheViewVirtualMetacontent() method is:</p>
+
+<pre class="text">
+const void *GetCacheViewVirtualMetacontent(
+ const CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewVirtualPixelQueue">GetCacheViewVirtualPixelQueue</a></h2>
+
+<p>GetCacheViewVirtualPixelQueue() returns the the pixels associated with the last call to GetCacheViewVirtualPixels(). The pixels are virtual and therefore cannot be updated.</p>
+
+<p>The format of the GetCacheViewVirtualPixelQueue() method is:</p>
+
+<pre class="text">
+const Quantum *GetCacheViewVirtualPixelQueue(
+ const CacheView *cache_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetCacheViewVirtualPixels">GetCacheViewVirtualPixels</a></h2>
+
+<p>GetCacheViewVirtualPixels() gets virtual pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.</p>
+
+<p>The format of the GetCacheViewVirtualPixels method is:</p>
+
+<pre class="text">
+const Quantum *GetCacheViewVirtualPixels(
+ const CacheView *cache_view,const ssize_t x,const ssize_t y,
+ const size_t columns,const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetOneCacheViewAuthenticPixel">GetOneCacheViewAuthenticPixel</a></h2>
+
+<p>GetOneCacheViewAuthenticPixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs.</p>
+
+<p>The format of the GetOneCacheViewAuthenticPixel method is:</p>
+
+<pre class="text">
+MagickBooleaNType GetOneCacheViewAuthenticPixel(
+ const CacheView *cache_view,const ssize_t x,const ssize_t y,
+ Quantum *pixel,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> These values define the offset of the pixel. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetOneCacheViewVirtualPixel">GetOneCacheViewVirtualPixel</a></h2>
+
+<p>GetOneCacheViewVirtualPixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneCacheViewAuthenticPixel() instead.</p>
+
+<p>The format of the GetOneCacheViewVirtualPixel method is:</p>
+
+<pre class="text">
+MagickBooleanType GetOneCacheViewVirtualPixel(
+ const CacheView *cache_view,const ssize_t x,const ssize_t y,
+ Quantum *pixel,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> These values define the offset of the pixel. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetOneCacheViewVirtualPixelInfo">GetOneCacheViewVirtualPixelInfo</a></h2>
+
+<p>GetOneCacheViewVirtualPixelInfo() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneCacheViewAuthenticPixel() instead.</p>
+
+<p>The format of the GetOneCacheViewVirtualPixelInfo method is:</p>
+
+<pre class="text">
+MagickBooleanType GetOneCacheViewVirtualPixelInfo(
+ const CacheView *cache_view,const ssize_t x,const ssize_t y,
+ PixelInfo *pixel,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> These values define the offset of the pixel. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="GetOneCacheViewVirtualMethodPixel">GetOneCacheViewVirtualMethodPixel</a></h2>
+
+<p>GetOneCacheViewVirtualMethodPixel() returns a single virtual pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneCacheViewAuthenticPixel() instead.</p>
+
+<p>The format of the GetOneCacheViewVirtualPixel method is:</p>
+
+<pre class="text">
+MagickBooleanType GetOneCacheViewVirtualMethodPixel(
+ const CacheView *cache_view,
+ const VirtualPixelMethod virtual_pixel_method,const ssize_t x,
+ const ssize_t y,Quantum *pixel,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>virtual_pixel_method</dt>
+<dd>the virtual pixel method. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> These values define the offset of the pixel. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="QueueCacheViewAuthenticPixels">QueueCacheViewAuthenticPixels</a></h2>
+
+<p>QueueCacheViewAuthenticPixels() queues authentic pixels from the in-memory or disk pixel cache as defined by the geometry parameters. A pointer to the pixels is returned if the pixels are transferred, otherwise a NULL is returned.</p>
+
+<p>The format of the QueueCacheViewAuthenticPixels method is:</p>
+
+<pre class="text">
+Quantum *QueueCacheViewAuthenticPixels(CacheView *cache_view,
+ const ssize_t x,const ssize_t y,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="SetCacheViewStorageClass">SetCacheViewStorageClass</a></h2>
+
+<p>SetCacheViewStorageClass() sets the image storage class associated with the specified view.</p>
+
+<p>The format of the SetCacheViewStorageClass method is:</p>
+
+<pre class="text">
+MagickBooleanType SetCacheViewStorageClass(CacheView *cache_view,
+ const ClassType storage_class,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>storage_class</dt>
+<dd>the image storage class: PseudoClass or DirectClass. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="SetCacheViewVirtualPixelMethod">SetCacheViewVirtualPixelMethod</a></h2>
+
+<p>SetCacheViewVirtualPixelMethod() sets the virtual pixel method associated with the specified cache view.</p>
+
+<p>The format of the SetCacheViewVirtualPixelMethod method is:</p>
+
+<pre class="text">
+MagickBooleanType SetCacheViewVirtualPixelMethod(CacheView *cache_view,
+ const VirtualPixelMethod virtual_pixel_method)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>virtual_pixel_method</dt>
+<dd>the virtual pixel method. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache-view_8c.html" id="SyncCacheViewAuthenticPixels">SyncCacheViewAuthenticPixels</a></h2>
+
+<p>SyncCacheViewAuthenticPixels() saves the cache view pixels to the in-memory or disk cache. It returns MagickTrue if the pixel region is flushed, otherwise MagickFalse.</p>
+
+<p>The format of the SyncCacheViewAuthenticPixels method is:</p>
+
+<pre class="text">
+MagickBooleanType SyncCacheViewAuthenticPixels(CacheView *cache_view,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>cache_view</dt>
+<dd>the cache view. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="cache.html#"></a></p>
+<p class="text-center"><a href="cache.html#AcquirePixelCacheNexus">AcquirePixelCacheNexus</a> • <a href="cache.html#GetAuthenticMetacontent">GetAuthenticMetacontent</a> • <a href="cache.html#GetAuthenticPixelQueue">GetAuthenticPixelQueue</a> • <a href="cache.html#GetAuthenticPixels">GetAuthenticPixels</a> • <a href="cache.html#GetOneAuthenticPixel">GetOneAuthenticPixel</a> • <a href="cache.html#GetOneVirtualPixel">GetOneVirtualPixel</a> • <a href="cache.html#GetOneVirtualPixelInfo">GetOneVirtualPixelInfo</a> • <a href="cache.html#GetVirtualMetacontent">GetVirtualMetacontent</a> • <a href="cache.html#GetVirtualPixelQueue">GetVirtualPixelQueue</a> • <a href="cache.html#GetVirtualPixels">GetVirtualPixels</a> • <a href="cache.html#QueueAuthenticPixels">QueueAuthenticPixels</a> • <a href="cache.html#SetPixelCacheVirtualMethod">SetPixelCacheVirtualMethod</a> • <a href="cache.html#SyncAuthenticPixels">SyncAuthenticPixels</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="AcquirePixelCacheNexus">AcquirePixelCacheNexus</a></h2>
+
+<p>AcquirePixelCacheNexus() allocates the NexusInfo structure.</p>
+
+<p>The format of the AcquirePixelCacheNexus method is:</p>
+
+<pre class="text">
+NexusInfo **AcquirePixelCacheNexus(const size_t number_threads)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>number_threads</dt>
+<dd>the number of nexus threads. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetAuthenticMetacontent">GetAuthenticMetacontent</a></h2>
+
+<p>GetAuthenticMetacontent() returns the authentic metacontent corresponding with the last call to QueueAuthenticPixels() or GetVirtualPixels(). NULL is returned if the associated pixels are not available.</p>
+
+<p>The format of the GetAuthenticMetacontent() method is:</p>
+
+<pre class="text">
+void *GetAuthenticMetacontent(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetAuthenticPixelQueue">GetAuthenticPixelQueue</a></h2>
+
+<p>GetAuthenticPixelQueue() returns the authentic pixels associated corresponding with the last call to QueueAuthenticPixels() or GetAuthenticPixels().</p>
+
+<p>The format of the GetAuthenticPixelQueue() method is:</p>
+
+<pre class="text">
+Quantum *GetAuthenticPixelQueue(const Image image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetAuthenticPixels">GetAuthenticPixels</a></h2>
+
+<p>GetAuthenticPixels() obtains a pixel region for read/write access. If the region is successfully accessed, a pointer to a Quantum array representing the region is returned, otherwise NULL is returned.</p>
+
+<p>The returned pointer may point to a temporary working copy of the pixels or it may point to the original pixels in memory. Performance is maximized if the selected region is part of one row, or one or more full rows, since then there is opportunity to access the pixels in-place (without a copy) if the image is in memory, or in a memory-mapped file. The returned pointer must *never* be deallocated by the user.</p>
+
+<p>Pixels accessed via the returned pointer represent a simple array of type Quantum. If the image has corresponding metacontent,call GetAuthenticMetacontent() after invoking GetAuthenticPixels() to obtain the meta-content corresponding to the region. Once the Quantum array has been updated, the changes must be saved back to the underlying image using SyncAuthenticPixels() or they may be lost.</p>
+
+<p>The format of the GetAuthenticPixels() method is:</p>
+
+<pre class="text">
+Quantum *GetAuthenticPixels(Image *image,const ssize_t x,
+ const ssize_t y,const size_t columns,const size_t rows,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetOneAuthenticPixel">GetOneAuthenticPixel</a></h2>
+
+<p>GetOneAuthenticPixel() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs.</p>
+
+<p>The format of the GetOneAuthenticPixel() method is:</p>
+
+<pre class="text">
+MagickBooleanType GetOneAuthenticPixel(const Image image,const ssize_t x,
+ const ssize_t y,Quantum *pixel,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> These values define the location of the pixel to return. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetOneVirtualPixel">GetOneVirtualPixel</a></h2>
+
+<p>GetOneVirtualPixel() returns a single virtual pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneAuthenticPixel() instead.</p>
+
+<p>The format of the GetOneVirtualPixel() method is:</p>
+
+<pre class="text">
+MagickBooleanType GetOneVirtualPixel(const Image image,const ssize_t x,
+ const ssize_t y,Quantum *pixel,ExceptionInfo exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> These values define the location of the pixel to return. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetOneVirtualPixelInfo">GetOneVirtualPixelInfo</a></h2>
+
+<p>GetOneVirtualPixelInfo() returns a single pixel at the specified (x,y) location. The image background color is returned if an error occurs. If you plan to modify the pixel, use GetOneAuthenticPixel() instead.</p>
+
+<p>The format of the GetOneVirtualPixelInfo() method is:</p>
+
+<pre class="text">
+MagickBooleanType GetOneVirtualPixelInfo(const Image image,
+ const VirtualPixelMethod virtual_pixel_method,const ssize_t x,
+ const ssize_t y,PixelInfo *pixel,ExceptionInfo exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>virtual_pixel_method</dt>
+<dd>the virtual pixel method. </dd>
+
+<dd> </dd>
+<dt>x,y</dt>
+<dd> these values define the location of the pixel to return. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>return a pixel at the specified (x,y) location. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetVirtualMetacontent">GetVirtualMetacontent</a></h2>
+
+<p>GetVirtualMetacontent() returns the virtual metacontent corresponding with the last call to QueueAuthenticPixels() or GetVirtualPixels(). NULL is returned if the meta-content are not available.</p>
+
+<p>The format of the GetVirtualMetacontent() method is:</p>
+
+<pre class="text">
+const void *GetVirtualMetacontent(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetVirtualPixelQueue">GetVirtualPixelQueue</a></h2>
+
+<p>GetVirtualPixelQueue() returns the virtual pixels associated corresponding with the last call to QueueAuthenticPixels() or GetVirtualPixels().</p>
+
+<p>The format of the GetVirtualPixelQueue() method is:</p>
+
+<pre class="text">
+const Quantum *GetVirtualPixelQueue(const Image image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="GetVirtualPixels">GetVirtualPixels</a></h2>
+
+<p>GetVirtualPixels() returns an immutable pixel region. If the region is successfully accessed, a pointer to it is returned, otherwise NULL is returned. The returned pointer may point to a temporary working copy of the pixels or it may point to the original pixels in memory. Performance is maximized if the selected region is part of one row, or one or more full rows, since there is opportunity to access the pixels in-place (without a copy) if the image is in memory, or in a memory-mapped file. The returned pointer must *never* be deallocated by the user.</p>
+
+<p>Pixels accessed via the returned pointer represent a simple array of type Quantum. If the image type is CMYK or the storage class is PseudoClass, call GetAuthenticMetacontent() after invoking GetAuthenticPixels() to access the meta-content (of type void) corresponding to the the region.</p>
+
+<p>If you plan to modify the pixels, use GetAuthenticPixels() instead.</p>
+
+<p>Note, the GetVirtualPixels() and GetAuthenticPixels() methods are not thread- safe. In a threaded environment, use GetCacheViewVirtualPixels() or GetCacheViewAuthenticPixels() instead.</p>
+
+<p>The format of the GetVirtualPixels() method is:</p>
+
+<pre class="text">
+const Quantum *GetVirtualPixels(const Image *image,const ssize_t x,
+ const ssize_t y,const size_t columns,const size_t rows,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="QueueAuthenticPixels">QueueAuthenticPixels</a></h2>
+
+<p>QueueAuthenticPixels() queues a mutable pixel region. If the region is successfully initialized a pointer to a Quantum array representing the region is returned, otherwise NULL is returned. The returned pointer may point to a temporary working buffer for the pixels or it may point to the final location of the pixels in memory.</p>
+
+<p>Write-only access means that any existing pixel values corresponding to the region are ignored. This is useful if the initial image is being created from scratch, or if the existing pixel values are to be completely replaced without need to refer to their pre-existing values. The application is free to read and write the pixel buffer returned by QueueAuthenticPixels() any way it pleases. QueueAuthenticPixels() does not initialize the pixel array values. Initializing pixel array values is the application's responsibility.</p>
+
+<p>Performance is maximized if the selected region is part of one row, or one or more full rows, since then there is opportunity to access the pixels in-place (without a copy) if the image is in memory, or in a memory-mapped file. The returned pointer must *never* be deallocated by the user.</p>
+
+<p>Pixels accessed via the returned pointer represent a simple array of type Quantum. If the image type is CMYK or the storage class is PseudoClass, call GetAuthenticMetacontent() after invoking GetAuthenticPixels() to obtain the meta-content (of type void) corresponding to the region. Once the Quantum (and/or Quantum) array has been updated, the changes must be saved back to the underlying image using SyncAuthenticPixels() or they may be lost.</p>
+
+<p>The format of the QueueAuthenticPixels() method is:</p>
+
+<pre class="text">
+Quantum *QueueAuthenticPixels(Image *image,const ssize_t x,
+ const ssize_t y,const size_t columns,const size_t rows,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="SetPixelCacheVirtualMethod">SetPixelCacheVirtualMethod</a></h2>
+
+<p>SetPixelCacheVirtualMethod() sets the "virtual pixels" method for the pixel cache and returns the previous setting. A virtual pixel is any pixel access that is outside the boundaries of the image cache.</p>
+
+<p>The format of the SetPixelCacheVirtualMethod() method is:</p>
+
+<pre class="text">
+VirtualPixelMethod SetPixelCacheVirtualMethod(Image *image,
+ const VirtualPixelMethod virtual_pixel_method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>virtual_pixel_method</dt>
+<dd>choose the type of virtual pixel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cache_8c.html" id="SyncAuthenticPixels">SyncAuthenticPixels</a></h2>
+
+<p>SyncAuthenticPixels() saves the image pixels to the in-memory or disk cache. The method returns MagickTrue if the pixel region is flushed, otherwise MagickFalse.</p>
+
+<p>The format of the SyncAuthenticPixels() method is:</p>
+
+<pre class="text">
+MagickBooleanType SyncAuthenticPixels(Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="channel.html#CombineImages">CombineImages</a> • <a href="channel.html#GetImageAlphaChannel">GetImageAlphaChannel</a> • <a href="channel.html#SeparateImageChannel">SeparateImageChannel</a> • <a href="channel.html#SeparateImages">SeparateImages</a> • <a href="channel.html#SetImageAlphaChannel">SetImageAlphaChannel</a></p>
+<p class="text-center"><a href="channel.html#ChannelFxImage">ChannelFxImage</a> • <a href="channel.html#CombineImages">CombineImages</a> • <a href="channel.html#GetImageAlphaChannel">GetImageAlphaChannel</a> • <a href="channel.html#SeparateImage">SeparateImage</a> • <a href="channel.html#SeparateImages">SeparateImages</a> • <a href="channel.html#SetImageAlphaChannel">SetImageAlphaChannel</a></p>
-<h2><a href="http://www.imagemagick.org/api/MagickCore/channel_8c.html" id="CombineImages">CombineImages</a></h2>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/channel_8c.html" id="ChannelFxImage">ChannelFxImage</a></h2>
+
+<p>ChannelFxImage() applies a channel expression to the specified image. The expression consists of one or more channels, either mnemonic or numeric (e.g. red, 1), separated by actions as follows:</p>
+
+<dd>
+</dd>
+
+<dd> <=> exchange two channels (e.g. red<=>blue) => copy one channel to another channel (e.g. red=>green) = assign a constant value to a channel (e.g. red=50) , write new image channels in the specified order (e.g. red, green) | add a new output image for the next set of channel operations ; move to the next input image for the source of channel data </dd>
+
+<dd> For example, to create 3 grayscale images from the red, green, and blue channels of an image, use: </dd>
+
+<pre class="text">
+ -channel-fx "red; green; blue"
+</pre>
+
+<p>A channel without an operation symbol implies separate (i.e, semicolon).
+
+</p><dd> The format of the ChannelFxImage method is: </dd>
+
+<pre class="text">
+Image *ChannelFxImage(const Image *image,const char *expression,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:
+
+</p><dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>expression</dt>
+<dd>A channel expression. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/channel_8c.html" id="CombineImages">CombineImages</a></h2>
<p>CombineImages() combines one or more images into a single image. The grayscale value of the pixels of each image in the sequence is assigned in order to the specified channels of the combined image. The typical ordering would be image 1 => Red, 2 => Green, 3 => Blue, etc.</p>
<p>The format of the CombineImages method is:</p>
<pre class="text">
-Image *CombineImages(const Image *image,const ChannelType channel,
+Image *CombineImages(const Image *images,const ColorspaceType colorspace,
ExceptionInfo *exception)
</pre>
<dd> </dd>
<dl class="dl-horizontal">
-<dt>image</dt>
-<dd>the image. </dd>
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>colorspace</dt>
+<dd>the image colorspace. </dd>
<dd> </dd>
<dt>exception</dt>
<dd> </dd>
</dl>
-<h2><a href="http://www.imagemagick.org/api/MagickCore/channel_8c.html" id="GetImageAlphaChannel">GetImageAlphaChannel</a></h2>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/channel_8c.html" id="GetImageAlphaChannel">GetImageAlphaChannel</a></h2>
<p>GetImageAlphaChannel() returns MagickFalse if the image alpha channel is not activated. That is, the image is RGB rather than RGBA or CMYK rather than CMYKA.</p>
<dd> </dd>
</dl>
-<h2><a href="http://www.imagemagick.org/api/MagickCore/channel_8c.html" id="SeparateImageChannel">SeparateImageChannel</a></h2>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/channel_8c.html" id="SeparateImage">SeparateImage</a></h2>
-<p>SeparateImageChannel() separates a channel from the image and returns it as a grayscale image. A channel is a particular color component of each pixel in the image.</p>
+<p>SeparateImage() separates a channel from the image and returns it as a grayscale image.</p>
-<p>The format of the SeparateImageChannel method is:</p>
+<p>The format of the SeparateImage method is:</p>
<pre class="text">
-MagickBooleanType SeparateImageChannel(Image *image,
- const ChannelType channel)
+Image *SeparateImage(const Image *image,const ChannelType channel,
+ ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd> </dd>
<dt>channel</dt>
-<dd>Identify which channel to extract: RedChannel, GreenChannel, BlueChannel, OpacityChannel, CyanChannel, MagentaChannel, YellowChannel, or BlackChannel. </dd>
+<dd>the image channel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
-<h2><a href="http://www.imagemagick.org/api/MagickCore/channel_8c.html" id="SeparateImages">SeparateImages</a></h2>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/channel_8c.html" id="SeparateImages">SeparateImages</a></h2>
<p>SeparateImages() returns a separate grayscale image for each channel specified.</p>
<p>The format of the SeparateImages method is:</p>
<pre class="text">
-MagickBooleanType SeparateImages(const Image *image,
- const ChannelType channel,ExceptionInfo *exception)
+Image *SeparateImages(const Image *image,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dt>image</dt>
<dd>the image. </dd>
-<dd> </dd>
-<dt>channel</dt>
-<dd>Identify which channels to extract: RedChannel, GreenChannel, BlueChannel, OpacityChannel, CyanChannel, MagentaChannel, YellowChannel, or BlackChannel. </dd>
-
<dd> </dd>
<dt>exception</dt>
<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
-<h2><a href="http://www.imagemagick.org/api/MagickCore/channel_8c.html" id="SetImageAlphaChannel">SetImageAlphaChannel</a></h2>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/channel_8c.html" id="SetImageAlphaChannel">SetImageAlphaChannel</a></h2>
<p>SetImageAlphaChannel() activates, deactivates, resets, or sets the alpha channel.</p>
<pre class="text">
MagickBooleanType SetImageAlphaChannel(Image *image,
- const AlphaChannelType alpha_type)
+ const AlphaChannelOption alpha_type,ExceptionInfo *exception)
</pre>
<p>A description of each parameter follows:</p>
<dd> </dd>
<dt>alpha_type</dt>
-<dd> The alpha channel type: ActivateAlphaChannel, AssociateAlphaChannel, CopyAlphaChannel, Disassociate, DeactivateAlphaChannel, ExtractAlphaChannel, OpaqueAlphaChannel, ResetAlphaChannel, SetAlphaChannel, ShapeAlphaChannel, and TransparentAlphaChannel. </dd>
+<dd> The alpha channel type: ActivateAlphaChannel, AssociateAlphaChannel, CopyAlphaChannel, DeactivateAlphaChannel, DisassociateAlphaChannel, ExtractAlphaChannel, OffAlphaChannel, OnAlphaChannel, OpaqueAlphaChannel, SetAlphaChannel, ShapeAlphaChannel, and TransparentAlphaChannel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
<dd> </dd>
</dl>
<div class="magick-header">
<p class="text-center"><a href="cipher.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="AcquireAESInfo">AcquireAESInfo</a></h2>
+
+<p>AcquireAESInfo() allocate the AESInfo structure.</p>
+
+<p>The format of the AcquireAESInfo method is:</p>
+
+<pre class="text">
+AESInfo *AcquireAESInfo(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="DestroyAESInfo">DestroyAESInfo</a></h2>
+
+<p>DestroyAESInfo() zeros memory associated with the AESInfo structure.</p>
+
+<p>The format of the DestroyAESInfo method is:</p>
+
+<pre class="text">
+AESInfo *DestroyAESInfo(AESInfo *aes_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>aes_info</dt>
+<dd>the cipher context. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="EncipherAESBlock">EncipherAESBlock</a></h2>
+
+<p>EncipherAESBlock() enciphers a single block of plaintext to produce a block of ciphertext.</p>
+
+<p>The format of the EncipherAESBlock method is:</p>
+
+<pre class="text">
+void EncipherAES(AESInfo *aes_info,const unsigned char *plaintext,
+ unsigned char *ciphertext)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>aes_info</dt>
+<dd>the cipher context. </dd>
+
+<dd> </dd>
+<dt>plaintext</dt>
+<dd>the plain text. </dd>
+
+<dd> </dd>
+<dt>ciphertext</dt>
+<dd>the cipher text. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="PasskeyDecipherImage">PasskeyDecipherImage</a></h2>
+
+<p>PasskeyDecipherImage() converts cipher pixels to plain pixels.</p>
+
+<p>The format of the PasskeyDecipherImage method is:</p>
+
+<pre class="text">
+MagickBooleanType PasskeyDecipherImage(Image *image,
+ const StringInfo *passkey,ExceptionInfo *exception)
+MagickBooleanType DecipherImage(Image *image,const char *passphrase,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>passphrase</dt>
+<dd>decipher cipher pixels with this passphrase. </dd>
+
+<dd> </dd>
+<dt>passkey</dt>
+<dd>decrypt cipher pixels with this passkey. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="PasskeyEncipherImage">PasskeyEncipherImage</a></h2>
+
+<p>PasskeyEncipherImage() converts pixels to cipher-pixels.</p>
+
+<p>The format of the PasskeyEncipherImage method is:</p>
+
+<pre class="text">
+MagickBooleanType PasskeyEncipherImage(Image *image,
+ const StringInfo *passkey,ExceptionInfo *exception)
+MagickBooleanType EncipherImage(Image *image,const char *passphrase,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>passphrase</dt>
+<dd>encipher pixels with this passphrase. </dd>
+
+<dd> </dd>
+<dt>passkey</dt>
+<dd>decrypt cipher pixels with this passkey. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="SetAESKey">SetAESKey</a></h2>
+
+<p>SetAESKey() sets the key for the AES cipher. The key length is specified in bits. Valid values are 128, 192, or 256 requiring a key buffer length in bytes of 16, 24, and 32 respectively.</p>
+
+<p>The format of the SetAESKey method is:</p>
+
+<pre class="text">
+SetAESKey(AESInfo *aes_info,const StringInfo *key)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>aes_info</dt>
+<dd>the cipher context. </dd>
+
+<dd> </dd>
+<dt>key</dt>
+<dd>the key. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="PasskeyDecipherImage">PasskeyDecipherImage</a></h2>
+
+<p>PasskeyDecipherImage() converts cipher pixels to plain pixels.</p>
+
+<p>The format of the PasskeyDecipherImage method is:</p>
+
+<pre class="text">
+MagickBooleanType PasskeyDecipherImage(Image *image,
+ const StringInfo *passkey,ExceptionInfo *exception)
+MagickBooleanType DecipherImage(Image *image,const char *passphrase,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>passphrase</dt>
+<dd>decipher cipher pixels with this passphrase. </dd>
+
+<dd> </dd>
+<dt>passkey</dt>
+<dd>decrypt cipher pixels with this passkey. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/cipher_8c.html" id="PasskeyEncipherImage">PasskeyEncipherImage</a></h2>
+
+<p>PasskeyEncipherImage() converts pixels to cipher-pixels.</p>
+
+<p>The format of the PasskeyEncipherImage method is:</p>
+
+<pre class="text">
+MagickBooleanType PasskeyEncipherImage(Image *image,
+ const StringInfo *passkey,ExceptionInfo *exception)
+MagickBooleanType EncipherImage(Image *image,const char *passphrase,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>passphrase</dt>
+<dd>decipher cipher pixels with this passphrase. </dd>
+
+<dd> </dd>
+<dt>passkey</dt>
+<dd>decrypt cipher pixels with this passkey. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="color.html#"></a></p>
+<p class="text-center"><a href="color.html#AcquireColorCache">AcquireColorCache</a> • <a href="color.html#GetColorInfoList">GetColorInfoList</a> • <a href="color.html#GetColorList">GetColorList</a> • <a href="color.html#ListColorInfo">ListColorInfo</a> • <a href="color.html#QueryColorname">QueryColorname</a></p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/color_8c.html" id="AcquireColorCache">AcquireColorCache</a></h2>
+
+<p>AcquireColorCache() caches one or more color configurations which provides a mapping between color attributes and a color name.</p>
+
+<p>The format of the AcquireColorCache method is:</p>
+
+<pre class="text">
+LinkedListInfo *AcquireColorCache(const char *filename,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>filename</dt>
+<dd>the font file name. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/color_8c.html" id="GetColorInfoList">GetColorInfoList</a></h2>
+
+<p>GetColorInfoList() returns any colors that match the specified pattern.</p>
+
+<p>The format of the GetColorInfoList function is:</p>
+
+<pre class="text">
+const ColorInfo **GetColorInfoList(const char *pattern,
+ size_t *number_colors,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>pattern</dt>
+<dd>Specifies a pointer to a text string containing a pattern. </dd>
+
+<dd> </dd>
+<dt>number_colors</dt>
+<dd> This integer returns the number of colors in the list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/color_8c.html" id="GetColorList">GetColorList</a></h2>
+
+<p>GetColorList() returns any colors that match the specified pattern.</p>
+
+<p>The format of the GetColorList function is:</p>
+
+<pre class="text">
+char **GetColorList(const char *pattern,size_t *number_colors,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>pattern</dt>
+<dd>Specifies a pointer to a text string containing a pattern. </dd>
+
+<dd> </dd>
+<dt>number_colors</dt>
+<dd> This integer returns the number of colors in the list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/color_8c.html" id="ListColorInfo">ListColorInfo</a></h2>
+
+<p>ListColorInfo() lists color names to the specified file. Color names are a convenience. Rather than defining a color by its red, green, and blue intensities just use a color name such as white, blue, or yellow.</p>
+
+<p>The format of the ListColorInfo method is:</p>
+
+<pre class="text">
+MagickBooleanType ListColorInfo(FILE *file,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>file</dt>
+<p>List color names to this file handle.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/color_8c.html" id="QueryColorname">QueryColorname</a></h2>
+
+<p>QueryColorname() returns a named color for the given color intensity. If an exact match is not found, a hex value is returned instead. For example an intensity of rgb:(0,0,0) returns black whereas rgb:(223,223,223) returns #dfdfdf.</p>
+
+<p>UPDATE: the 'image' argument is no longer needed as all information should have been preset using GetPixelInfo().</p>
+
+<p>The format of the QueryColorname method is:</p>
+
+<pre class="text">
+MagickBooleanType QueryColorname(const Image *image,
+ const PixelInfo *color,const ComplianceType compliance,char *name,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image. (not used! - color gets settings from GetPixelInfo()</p>
+
+<dt>color</dt>
+<p>the color intensities.</p>
+
+<dt>Compliance</dt>
+<p>Adhere to this color standard: SVG, X11, or XPM.</p>
+
+<dt>name</dt>
+<p>Return the color name or hex value.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
</div>
<footer class="magick-footer">
<div class="magick-header">
<p class="text-center"><a href="colormap.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/colormap_8c.html" id="AcquireImageColormap">AcquireImageColormap</a></h2>
+
+<p>AcquireImageColormap() allocates an image colormap and initializes it to a linear gray colorspace. If the image already has a colormap, it is replaced. AcquireImageColormap() returns MagickTrue if successful, otherwise MagickFalse if there is not enough memory.</p>
+
+<p>The format of the AcquireImageColormap method is:</p>
+
+<pre class="text">
+MagickBooleanType AcquireImageColormap(Image *image,const size_t colors,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>colors</dt>
+<dd>the number of colors in the image colormap. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/colormap_8c.html" id="CycleColormap">CycleColormap</a></h2>
+
+<p>CycleColormap() displaces an image's colormap by a given number of positions. If you cycle the colormap a number of times you can produce a psychodelic effect.</p>
+
+<p>WARNING: this assumes an images colormap is in a well know and defined order. Currently Imagemagick has no way of setting that order.</p>
+
+<p>The format of the CycleColormapImage method is:</p>
+
+<pre class="text">
+MagickBooleanType CycleColormapImage(Image *image,const ssize_t displace,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>displace</dt>
+<dd> displace the colormap this amount. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="colorspace.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/colorspace_8c.html" id="SetImageColorspace">SetImageColorspace</a></h2>
+
+<p>SetImageColorspace() sets the colorspace member of the Image structure.</p>
+
+<p>The format of the SetImageColorspace method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageColorspace(Image *image,
+ const ColorspaceType colorspace,ExceptiionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>colorspace</dt>
+<dd>the colorspace. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/colorspace_8c.html" id="TransformImageColorspace">TransformImageColorspace</a></h2>
+
+<p>TransformImageColorspace() transforms an image colorspace, changing the image data to reflect the new colorspace.</p>
+
+<p>The format of the TransformImageColorspace method is:</p>
+
+<pre class="text">
+MagickBooleanType TransformImageColorspace(Image *image,
+ const ColorspaceType colorspace,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>colorspace</dt>
+<dd>the colorspace. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="compare.html#"></a></p>
+<p class="text-center"><a href="compare.html#CompareImages">CompareImages</a> • <a href="compare.html#GetImageDistortion">GetImageDistortion</a> • <a href="compare.html#GetImageDistortions">GetImageDistortions</a> • <a href="compare.html#IsImagesEqual">IsImagesEqual</a> • <a href="compare.html#SimilarityImage">SimilarityImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/compare_8c.html" id="CompareImages">CompareImages</a></h2>
+
+<p>CompareImages() compares one or more pixel channels of an image to a reconstructed image and returns the difference image.</p>
+
+<p>The format of the CompareImages method is:</p>
+
+<pre class="text">
+Image *CompareImages(const Image *image,const Image *reconstruct_image,
+ const MetricType metric,double *distortion,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>reconstruct_image</dt>
+<dd>the reconstruct image. </dd>
+
+<dd> </dd>
+<dt>metric</dt>
+<dd>the metric. </dd>
+
+<dd> </dd>
+<dt>distortion</dt>
+<dd>the computed distortion between the images. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/compare_8c.html" id="GetImageDistortion">GetImageDistortion</a></h2>
+
+<p>GetImageDistortion() compares one or more pixel channels of an image to a reconstructed image and returns the specified distortion metric.</p>
+
+<p>The format of the GetImageDistortion method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageDistortion(const Image *image,
+ const Image *reconstruct_image,const MetricType metric,
+ double *distortion,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>reconstruct_image</dt>
+<dd>the reconstruct image. </dd>
+
+<dd> </dd>
+<dt>metric</dt>
+<dd>the metric. </dd>
+
+<dd> </dd>
+<dt>distortion</dt>
+<dd>the computed distortion between the images. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/compare_8c.html" id="GetImageDistortions">GetImageDistortions</a></h2>
+
+<p>GetImageDistortions() compares the pixel channels of an image to a reconstructed image and returns the specified distortion metric for each channel.</p>
+
+<p>The format of the GetImageDistortions method is:</p>
+
+<pre class="text">
+double *GetImageDistortions(const Image *image,
+ const Image *reconstruct_image,const MetricType metric,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>reconstruct_image</dt>
+<dd>the reconstruct image. </dd>
+
+<dd> </dd>
+<dt>metric</dt>
+<dd>the metric. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/compare_8c.html" id="IsImagesEqual">IsImagesEqual</a></h2>
+
+<p>IsImagesEqual() measures the difference between colors at each pixel location of two images. A value other than 0 means the colors match exactly. Otherwise an error measure is computed by summing over all pixels in an image the distance squared in RGB space between each image pixel and its corresponding pixel in the reconstruct image. The error measure is assigned to these image members:</p>
+
+<pre class="text">
+ o mean_error_per_pixel: The mean error for any single pixel in
+the image.
+</pre>
+
+<dt>normalized_mean_error</dt>
+<p>The normalized mean quantization error for any single pixel in the image. This distance measure is normalized to a range between 0 and 1. It is independent of the range of red, green, and blue values in the image.</p>
+
+<dt>normalized_maximum_error</dt>
+<p>The normalized maximum quantization error for any single pixel in the image. This distance measure is normalized to a range between 0 and 1. It is independent of the range of red, green, and blue values in your image.</p>
+
+<p>A small normalized mean square error, accessed as image->normalized_mean_error, suggests the images are very similar in spatial layout and color.</p>
+
+<p>The format of the IsImagesEqual method is:</p>
+
+<pre class="text">
+MagickBooleanType IsImagesEqual(Image *image,
+ const Image *reconstruct_image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>reconstruct_image</dt>
+<p>the reconstruct image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/compare_8c.html" id="SimilarityImage">SimilarityImage</a></h2>
+
+<p>SimilarityImage() compares the reference image of the image and returns the best match offset. In addition, it returns a similarity image such that an exact match location is completely white and if none of the pixels match, black, otherwise some gray level in-between.</p>
+
+<p>The format of the SimilarityImageImage method is:</p>
+
+<pre class="text">
+Image *SimilarityImage(const Image *image,const Image *reference,
+ const MetricType metric,const double similarity_threshold,
+ RectangleInfo *offset,double *similarity,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>reference</dt>
+<dd>find an area of the image that closely resembles this image. </dd>
+
+<dd> </dd>
+<dt>metric</dt>
+<dd>the metric. </dd>
+
+<dd> </dd>
+<dt>similarity_threshold</dt>
+<dd>minimum distortion for (sub)image match. </dd>
+
+<dd> </dd>
+<dt>offset</dt>
+<dd>the best match offset of the reference image within the image. </dd>
+
+<dd> </dd>
+<dt>similarity</dt>
+<dd>the computed similarity between the images. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="composite.html#"></a></p>
+<p class="text-center"><a href="composite.html#CompositeImage">CompositeImage</a> • <a href="composite.html#TextureImage">TextureImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/composite_8c.html" id="CompositeImage">CompositeImage</a></h2>
+
+<p>CompositeImage() returns the second image composited onto the first at the specified offset, using the specified composite method.</p>
+
+<p>The format of the CompositeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType CompositeImage(Image *image,
+ const Image *source_image,const CompositeOperator compose,
+ const MagickBooleanType clip_to_self,const ssize_t x_offset,
+ const ssize_t y_offset,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the canvas image, modified by he composition </dd>
+
+<dd> </dd>
+<dt>source_image</dt>
+<dd>the source image. </dd>
+
+<dd> </dd>
+<dt>compose</dt>
+<dd>This operator affects how the composite is applied to the image. The operators and how they are utilized are listed here http://www.w3.org/TR/SVG12/#compositing. </dd>
+
+<dd> </dd>
+<dt>clip_to_self</dt>
+<dd>set to MagickTrue to limit composition to area composed. </dd>
+
+<dd> </dd>
+<dt>x_offset</dt>
+<dd>the column offset of the composited image. </dd>
+
+<dd> </dd>
+<dt>y_offset</dt>
+<dd>the row offset of the composited image. </dd>
+
+<dd> Extra Controls from Image meta-data in 'image' (artifacts) </dd>
+
+<dd> o "compose:args" A string containing extra numerical arguments for specific compose methods, generally expressed as a 'geometry' or a comma separated list of numbers. </dd>
+
+<dd> Compose methods needing such arguments include "BlendCompositeOp" and "DisplaceCompositeOp". </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/composite_8c.html" id="TextureImage">TextureImage</a></h2>
+
+<p>TextureImage() repeatedly tiles the texture image across and down the image canvas.</p>
+
+<p>The format of the TextureImage method is:</p>
+
+<pre class="text">
+MagickBooleanType TextureImage(Image *image,const Image *texture,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>texture_image</dt>
+<dd>This image is the texture to layer on the background. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="constitute.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="ConstituteImage">ConstituteImage</a></h2>
+
+<p>ConstituteImage() returns an image from the pixel data you supply. The pixel data must be in scanline order top-to-bottom. The data can be char, short int, int, float, or double. Float and double require the pixels to be normalized [0..1], otherwise [0..QuantumRange]. For example, to create a 640x480 image from unsigned red-green-blue character data, use:</p>
+
+<pre class="text">
+image = ConstituteImage(640,480,"RGB",CharPixel,pixels,&exception);
+</pre>
+
+<p>The format of the ConstituteImage method is:</p>
+
+<pre class="text">
+Image *ConstituteImage(const size_t columns,const size_t rows,
+ const char *map,const StorageType storage,const void *pixels,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>columns</dt>
+<dd>width in pixels of the image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>height in pixels of the image. </dd>
+
+<dd> </dd>
+<dt>map</dt>
+<dd> This string reflects the expected ordering of the pixel array. It can be any combination or order of R = red, G = green, B = blue, A = alpha (0 is transparent), O = opacity (0 is opaque), C = cyan, Y = yellow, M = magenta, K = black, I = intensity (for grayscale), P = pad. </dd>
+
+<dd> </dd>
+<dt>storage</dt>
+<dd>Define the data type of the pixels. Float and double types are expected to be normalized [0..1] otherwise [0..QuantumRange]. Choose from these types: CharPixel, DoublePixel, FloatPixel, IntegerPixel, LongPixel, QuantumPixel, or ShortPixel. </dd>
+
+<dd> </dd>
+<dt>pixels</dt>
+<dd>This array of values contain the pixel components as defined by map and type. You must preallocate this array where the expected length varies depending on the values of width, height, map, and type. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="PingImage">PingImage</a></h2>
+
+<p>PingImage() returns all the properties of an image or image sequence except for the pixels. It is much faster and consumes far less memory than ReadImage(). On failure, a NULL image is returned and exception describes the reason for the failure.</p>
+
+<p>The format of the PingImage method is:</p>
+
+<pre class="text">
+Image *PingImage(const ImageInfo *image_info,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>Ping the image defined by the file or filename members of this structure. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="PingImages">PingImages</a></h2>
+
+<p>PingImages() pings one or more images and returns them as an image list.</p>
+
+<p>The format of the PingImage method is:</p>
+
+<pre class="text">
+Image *PingImages(ImageInfo *image_info,const char *filename,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>filename</dt>
+<dd>the image filename. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="ReadImage">ReadImage</a></h2>
+
+<p>ReadImage() reads an image or image sequence from a file or file handle. The method returns a NULL if there is a memory shortage or if the image cannot be read. On failure, a NULL image is returned and exception describes the reason for the failure.</p>
+
+<p>The format of the ReadImage method is:</p>
+
+<pre class="text">
+Image *ReadImage(const ImageInfo *image_info,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>Read the image defined by the file or filename members of this structure. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="ReadImages">ReadImages</a></h2>
+
+<p>ReadImages() reads one or more images and returns them as an image list.</p>
+
+<p>The format of the ReadImage method is:</p>
+
+<pre class="text">
+Image *ReadImages(ImageInfo *image_info,const char *filename,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>filename</dt>
+<dd>the image filename. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="WriteImage">WriteImage</a></h2>
+
+<p>WriteImage() writes an image or an image sequence to a file or file handle. If writing to a file is on disk, the name is defined by the filename member of the image structure. WriteImage() returns MagickFalse is there is a memory shortage or if the image cannot be written. Check the exception member of image to determine the cause for any failure.</p>
+
+<p>The format of the WriteImage method is:</p>
+
+<pre class="text">
+MagickBooleanType WriteImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/constitute_8c.html" id="WriteImages">WriteImages</a></h2>
+
+<p>WriteImages() writes an image sequence into one or more files. While WriteImage() can write an image sequence, it is limited to writing the sequence into a single file using a format which supports multiple frames. WriteImages(), however, does not have this limitation, instead it generates multiple output files if necessary (or when requested). When ImageInfo's adjoin flag is set to MagickFalse, the file name is expected to include a printf-style formatting string for the frame number (e.g. "image02d.png").</p>
+
+<p>The format of the WriteImages method is:</p>
+
+<pre class="text">
+MagickBooleanType WriteImages(const ImageInfo *image_info,Image *images,
+ const char *filename,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>filename</dt>
+<dd>the image filename. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="decorate.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/decorate_8c.html" id="BorderImage">BorderImage</a></h2>
+
+<p>BorderImage() surrounds the image with a border of the color defined by the bordercolor member of the image structure. The width and height of the border are defined by the corresponding members of the border_info structure.</p>
+
+<p>The format of the BorderImage method is:</p>
+
+<pre class="text">
+Image *BorderImage(const Image *image,const RectangleInfo *border_info,
+ const CompositeOperator compose,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>border_info</dt>
+<dd> define the width and height of the border. </dd>
+
+<dd> </dd>
+<dt>compose</dt>
+<dd> the composite operator. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/decorate_8c.html" id="FrameImage">FrameImage</a></h2>
+
+<p>FrameImage() adds a simulated three-dimensional border around the image. The color of the border is defined by the matte_color member of image. Members width and height of frame_info specify the border width of the vertical and horizontal sides of the frame. Members inner and outer indicate the width of the inner and outer shadows of the frame.</p>
+
+<p>The format of the FrameImage method is:</p>
+
+<pre class="text">
+Image *FrameImage(const Image *image,const FrameInfo *frame_info,
+ const CompositeOperator compose,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>frame_info</dt>
+<dd>Define the width and height of the frame and its bevels. </dd>
+
+<dd> </dd>
+<dt>compose</dt>
+<dd>the composite operator. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/decorate_8c.html" id="RaiseImage">RaiseImage</a></h2>
+
+<p>RaiseImage() creates a simulated three-dimensional button-like effect by lightening and darkening the edges of the image. Members width and height of raise_info define the width of the vertical and horizontal edge of the effect.</p>
+
+<p>The format of the RaiseImage method is:</p>
+
+<pre class="text">
+MagickBooleanType RaiseImage(const Image *image,
+ const RectangleInfo *raise_info,const MagickBooleanType raise,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>raise_info</dt>
+<dd>Define the width and height of the raise area. </dd>
+
+<dd> </dd>
+<dt>raise</dt>
+<dd>A value other than zero creates a 3-D raise effect, otherwise it has a lowered effect. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="display.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/display_8c.html" id="DisplayImages">DisplayImages</a></h2>
+
+<p>DisplayImages() displays an image sequence to any X window screen. It returns a value other than 0 if successful. Check the exception member of image to determine the reason for any failure.</p>
+
+<p>The format of the DisplayImages method is:</p>
+
+<pre class="text">
+MagickBooleanType DisplayImages(const ImageInfo *image_info,
+ Image *images,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/display_8c.html" id="RemoteDisplayCommand">RemoteDisplayCommand</a></h2>
+
+<p>RemoteDisplayCommand() encourages a remote display program to display the specified image filename.</p>
+
+<p>The format of the RemoteDisplayCommand method is:</p>
+
+<pre class="text">
+MagickBooleanType RemoteDisplayCommand(const ImageInfo *image_info,
+ const char *window,const char *filename,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>window</dt>
+<dd>Specifies the name or id of an X window. </dd>
+
+<dd> </dd>
+<dt>filename</dt>
+<dd>the name of the image filename to display. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/display_8c.html" id="XDisplayBackgroundImage">XDisplayBackgroundImage</a></h2>
+
+<p>XDisplayBackgroundImage() displays an image in the background of a window.</p>
+
+<p>The format of the XDisplayBackgroundImage method is:</p>
+
+<pre class="text">
+MagickBooleanType XDisplayBackgroundImage(Display *display,
+ XResourceInfo *resource_info,Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>display</dt>
+<dd>Specifies a connection to an X server; returned from XOpenDisplay. </dd>
+
+<dd> </dd>
+<dt>resource_info</dt>
+<dd>Specifies a pointer to a X11 XResourceInfo structure. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="distort.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/distort_8c.html" id="AffineTransformImage">AffineTransformImage</a></h2>
+
+<p>AffineTransformImage() transforms an image as dictated by the affine matrix. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>The format of the AffineTransformImage method is:</p>
+
+<pre class="text">
+Image *AffineTransformImage(const Image *image,
+ AffineMatrix *affine_matrix,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>affine_matrix</dt>
+<dd>the affine matrix. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/distort_8c.html" id="DistortImage">DistortImage</a></h2>
+
+<p>DistortImage() distorts an image using various distortion methods, by mapping color lookups of the source image to a new destination image usally of the same size as the source image, unless 'bestfit' is set to true.</p>
+
+<p>If 'bestfit' is enabled, and distortion allows it, the destination image is adjusted to ensure the whole source 'image' will just fit within the final destination image, which will be sized and offset accordingly. Also in many cases the virtual offset of the source image will be taken into account in the mapping.</p>
+
+<p>If the '-verbose' control option has been set print to standard error the equicelent '-fx' formula with coefficients for the function, if practical.</p>
+
+<p>The format of the DistortImage() method is:</p>
+
+<pre class="text">
+Image *DistortImage(const Image *image,const DistortImageMethod method,
+ const size_t number_arguments,const double *arguments,
+ MagickBooleanType bestfit, ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image to be distorted. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the method of image distortion. </dd>
+
+<dd> ArcDistortion always ignores source image offset, and always 'bestfit' the destination image with the top left corner offset relative to the polar mapping center. </dd>
+
+<dd> Affine, Perspective, and Bilinear, do least squares fitting of the distrotion when more than the minimum number of control point pairs are provided. </dd>
+
+<dd> Perspective, and Bilinear, fall back to a Affine distortion when less than 4 control point pairs are provided. While Affine distortions let you use any number of control point pairs, that is Zero pairs is a No-Op (viewport only) distortion, one pair is a translation and two pairs of control points do a scale-rotate-translate, without any shearing. </dd>
+
+<dd> </dd>
+<dt>number_arguments</dt>
+<dd>the number of arguments given. </dd>
+
+<dd> </dd>
+<dt>arguments</dt>
+<dd>an array of floating point arguments for this method. </dd>
+
+<dd> </dd>
+<dt>bestfit</dt>
+<dd>Attempt to 'bestfit' the size of the resulting image. This also forces the resulting image to be a 'layered' virtual canvas image. Can be overridden using 'distort:viewport' setting. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure </dd>
+
+<dd> Extra Controls from Image meta-data (artifacts)... </dd>
+
+<dd> o "verbose" Output to stderr alternatives, internal coefficents, and FX equivalents for the distortion operation (if feasible). This forms an extra check of the distortion method, and allows users access to the internal constants IM calculates for the distortion. </dd>
+
+<dd> o "distort:viewport" Directly set the output image canvas area and offest to use for the resulting image, rather than use the original images canvas, or a calculated 'bestfit' canvas. </dd>
+
+<dd> o "distort:scale" Scale the size of the output canvas by this amount to provide a method of Zooming, and for super-sampling the results. </dd>
+
+<dd> Other settings that can effect results include </dd>
+
+<dd> o 'interpolate' For source image lookups (scale enlargements) </dd>
+
+<dd> o 'filter' Set filter to use for area-resampling (scale shrinking). Set to 'point' to turn off and use 'interpolate' lookup instead </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/distort_8c.html" id="RotateImage">RotateImage</a></h2>
+
+<p>RotateImage() creates a new image that is a rotated copy of an existing one. Positive angles rotate counter-clockwise (right-hand rule), while negative angles rotate clockwise. Rotated images are usually larger than the originals and have 'empty' triangular corners. X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image. RotateImage allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>The format of the RotateImage method is:</p>
+
+<pre class="text">
+Image *RotateImage(const Image *image,const double degrees,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>degrees</dt>
+<p>Specifies the number of degrees to rotate the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/distort_8c.html" id="SparseColorImage">SparseColorImage</a></h2>
+
+<p>SparseColorImage(), given a set of coordinates, interpolates the colors found at those coordinates, across the whole image, using various methods.</p>
+
+<p>The format of the SparseColorImage() method is:</p>
+
+<pre class="text">
+Image *SparseColorImage(const Image *image,
+ const SparseColorMethod method,const size_t number_arguments,
+ const double *arguments,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image to be filled in. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the method to fill in the gradient between the control points. </dd>
+
+<dd> The methods used for SparseColor() are often simular to methods used for DistortImage(), and even share the same code for determination of the function coefficents, though with more dimensions (or resulting values). </dd>
+
+<dd> </dd>
+<dt>number_arguments</dt>
+<dd>the number of arguments given. </dd>
+
+<dd> </dd>
+<dt>arguments</dt>
+<dd>array of floating point arguments for this method-- x,y,color_values-- with color_values given as normalized values. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="draw.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="AcquireDrawInfo">AcquireDrawInfo</a></h2>
+
+<p>AcquireDrawInfo() returns a DrawInfo structure properly initialized.</p>
+
+<p>The format of the AcquireDrawInfo method is:</p>
+
+<pre class="text">
+DrawInfo *AcquireDrawInfo(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="CloneDrawInfo">CloneDrawInfo</a></h2>
+
+<p>CloneDrawInfo() makes a copy of the given draw_info structure. If NULL is specified, a new DrawInfo structure is created initialized to default values.</p>
+
+<p>The format of the CloneDrawInfo method is:</p>
+
+<pre class="text">
+DrawInfo *CloneDrawInfo(const ImageInfo *image_info,
+ const DrawInfo *draw_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DestroyDrawInfo">DestroyDrawInfo</a></h2>
+
+<p>DestroyDrawInfo() deallocates memory associated with an DrawInfo structure.</p>
+
+<p>The format of the DestroyDrawInfo method is:</p>
+
+<pre class="text">
+DrawInfo *DestroyDrawInfo(DrawInfo *draw_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DrawAffineImage">DrawAffineImage</a></h2>
+
+<p>DrawAffineImage() composites the source over the destination image as dictated by the affine transform.</p>
+
+<p>The format of the DrawAffineImage method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawAffineImage(Image *image,const Image *source,
+ const AffineMatrix *affine,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>source</dt>
+<dd>the source image. </dd>
+
+<dd> </dd>
+<dt>affine</dt>
+<dd>the affine transform. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DrawClipPath">DrawClipPath</a></h2>
+
+<p>DrawClipPath() draws the clip path on the image mask.</p>
+
+<p>The format of the DrawClipPath method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawClipPath(Image *image,const DrawInfo *draw_info,
+ const char *name,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>the name of the clip path. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DrawImage">DrawImage</a></h2>
+
+<p>DrawImage() draws a graphic primitive on your image. The primitive may be represented as a string or filename. Precede the filename with an "at" sign (@) and the contents of the file are drawn on the image. You can affect how text is drawn by setting one or more members of the draw info structure.</p>
+
+<p>The format of the DrawImage method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawImage(Image *image,const DrawInfo *draw_info,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DrawGradientImage">DrawGradientImage</a></h2>
+
+<p>DrawGradientImage() draws a linear gradient on the image.</p>
+
+<p>The format of the DrawGradientImage method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawGradientImage(Image *image,
+ const DrawInfo *draw_info,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DrawPatternPath">DrawPatternPath</a></h2>
+
+<p>DrawPatternPath() draws a pattern.</p>
+
+<p>The format of the DrawPatternPath method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawPatternPath(Image *image,const DrawInfo *draw_info,
+ const char *name,Image **pattern,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>the pattern name. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="DrawPrimitive">DrawPrimitive</a></h2>
+
+<p>DrawPrimitive() draws a primitive (line, rectangle, ellipse) on the image.</p>
+
+<p>The format of the DrawPrimitive method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawPrimitive(Image *image,const DrawInfo *draw_info,
+ PrimitiveInfo *primitive_info,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>primitive_info</dt>
+<dd>Specifies a pointer to a PrimitiveInfo structure. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/draw_8c.html" id="GetAffineMatrix">GetAffineMatrix</a></h2>
+
+<p>GetAffineMatrix() returns an AffineMatrix initialized to the identity matrix.</p>
+
+<p>The format of the GetAffineMatrix method is:</p>
+
+<pre class="text">
+void GetAffineMatrix(AffineMatrix *affine_matrix)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>affine_matrix</dt>
+<dd>the affine matrix. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="drawing-wand.html#"></a></p>
+<p class="text-center"><a href="drawing-wand.html#ClearDrawingWand">ClearDrawingWand</a> • <a href="drawing-wand.html#CloneDrawingWand">CloneDrawingWand</a> • <a href="drawing-wand.html#DestroyDrawingWand">DestroyDrawingWand</a> • <a href="drawing-wand.html#DrawAffine">DrawAffine</a> • <a href="drawing-wand.html#DrawAlpha">DrawAlpha</a> • <a href="drawing-wand.html#DrawAnnotation">DrawAnnotation</a> • <a href="drawing-wand.html#DrawArc">DrawArc</a> • <a href="drawing-wand.html#DrawBezier">DrawBezier</a> • <a href="drawing-wand.html#DrawCircle">DrawCircle</a> • <a href="drawing-wand.html#DrawClearException">DrawClearException</a> • <a href="drawing-wand.html#DrawCloneExceptionInfo">DrawCloneExceptionInfo</a> • <a href="drawing-wand.html#DrawComposite">DrawComposite</a> • <a href="drawing-wand.html#DrawColor">DrawColor</a> • <a href="drawing-wand.html#DrawComment">DrawComment</a> • <a href="drawing-wand.html#DrawEllipse">DrawEllipse</a> • <a href="drawing-wand.html#DrawGetBorderColor">DrawGetBorderColor</a> • <a href="drawing-wand.html#DrawGetClipPath">DrawGetClipPath</a> • <a href="drawing-wand.html#DrawGetClipRule">DrawGetClipRule</a> • <a href="drawing-wand.html#DrawGetClipUnits">DrawGetClipUnits</a> • <a href="drawing-wand.html#DrawGetException">DrawGetException</a> • <a href="drawing-wand.html#DrawGetExceptionType">DrawGetExceptionType</a> • <a href="drawing-wand.html#DrawGetFillColor">DrawGetFillColor</a> • <a href="drawing-wand.html#DrawGetFillOpacity">DrawGetFillOpacity</a> • <a href="drawing-wand.html#DrawGetFillRule">DrawGetFillRule</a> • <a href="drawing-wand.html#DrawGetFont">DrawGetFont</a> • <a href="drawing-wand.html#DrawGetFontFamily">DrawGetFontFamily</a> • <a href="drawing-wand.html#DrawGetFontResolution">DrawGetFontResolution</a> • <a href="drawing-wand.html#DrawGetFontSize">DrawGetFontSize</a> • <a href="drawing-wand.html#DrawGetFontStretch">DrawGetFontStretch</a> • <a href="drawing-wand.html#DrawGetFontStyle">DrawGetFontStyle</a> • <a href="drawing-wand.html#DrawGetFontWeight">DrawGetFontWeight</a> • <a href="drawing-wand.html#DrawGetGravity">DrawGetGravity</a> • <a href="drawing-wand.html#DrawGetOpacity">DrawGetOpacity</a> • <a href="drawing-wand.html#DrawGetStrokeAntialias">DrawGetStrokeAntialias</a> • <a href="drawing-wand.html#DrawGetStrokeColor">DrawGetStrokeColor</a> • <a href="drawing-wand.html#DrawGetStrokeDashArray">DrawGetStrokeDashArray</a> • <a href="drawing-wand.html#DrawGetStrokeDashOffset">DrawGetStrokeDashOffset</a> • <a href="drawing-wand.html#DrawGetStrokeLineCap">DrawGetStrokeLineCap</a> • <a href="drawing-wand.html#DrawGetStrokeLineJoin">DrawGetStrokeLineJoin</a> • <a href="drawing-wand.html#DrawGetStrokeMiterLimit">DrawGetStrokeMiterLimit</a> • <a href="drawing-wand.html#DrawGetStrokeOpacity">DrawGetStrokeOpacity</a> • <a href="drawing-wand.html#DrawGetStrokeWidth">DrawGetStrokeWidth</a> • <a href="drawing-wand.html#DrawGetTextAlignment">DrawGetTextAlignment</a> • <a href="drawing-wand.html#DrawGetTextAntialias">DrawGetTextAntialias</a> • <a href="drawing-wand.html#DrawGetTextDecoration">DrawGetTextDecoration</a> • <a href="drawing-wand.html#DrawGetTextDirection">DrawGetTextDirection</a> • <a href="drawing-wand.html#DrawGetTextEncoding">DrawGetTextEncoding</a> • <a href="drawing-wand.html#DrawGetTextKerning">DrawGetTextKerning</a> • <a href="drawing-wand.html#DrawGetTextInterlineSpacing">DrawGetTextInterlineSpacing</a> • <a href="drawing-wand.html#DrawGetTextInterwordSpacing">DrawGetTextInterwordSpacing</a> • <a href="drawing-wand.html#DrawGetVectorGraphics">DrawGetVectorGraphics</a> • <a href="drawing-wand.html#DrawGetTextUnderColor">DrawGetTextUnderColor</a> • <a href="drawing-wand.html#DrawLine">DrawLine</a> • <a href="drawing-wand.html#DrawPathClose">DrawPathClose</a> • <a href="drawing-wand.html#DrawPathCurveToAbsolute">DrawPathCurveToAbsolute</a> • <a href="drawing-wand.html#DrawPathCurveToRelative">DrawPathCurveToRelative</a> • <a href="drawing-wand.html#DrawPathCurveToQuadraticBezierAbsolute">DrawPathCurveToQuadraticBezierAbsolute</a> • <a href="drawing-wand.html#DrawPathCurveToQuadraticBezierRelative">DrawPathCurveToQuadraticBezierRelative</a> • <a href="drawing-wand.html#DrawPathCurveToQuadraticBezierSmoothAbsolute">DrawPathCurveToQuadraticBezierSmoothAbsolute</a> • <a href="drawing-wand.html#DrawPathCurveToQuadraticBezierSmoothRelative">DrawPathCurveToQuadraticBezierSmoothRelative</a> • <a href="drawing-wand.html#DrawPathCurveToSmoothAbsolute">DrawPathCurveToSmoothAbsolute</a> • <a href="drawing-wand.html#DrawPathCurveToSmoothRelative">DrawPathCurveToSmoothRelative</a> • <a href="drawing-wand.html#DrawPathEllipticArcAbsolute">DrawPathEllipticArcAbsolute</a> • <a href="drawing-wand.html#DrawPathEllipticArcRelative">DrawPathEllipticArcRelative</a> • <a href="drawing-wand.html#DrawPathFinish">DrawPathFinish</a> • <a href="drawing-wand.html#DrawPathLineToAbsolute">DrawPathLineToAbsolute</a> • <a href="drawing-wand.html#DrawPathLineToRelative">DrawPathLineToRelative</a> • <a href="drawing-wand.html#DrawPathLineToHorizontalAbsolute">DrawPathLineToHorizontalAbsolute</a> • <a href="drawing-wand.html#DrawPathLineToHorizontalRelative">DrawPathLineToHorizontalRelative</a> • <a href="drawing-wand.html#DrawPathLineToVerticalAbsolute">DrawPathLineToVerticalAbsolute</a> • <a href="drawing-wand.html#DrawPathLineToVerticalRelative">DrawPathLineToVerticalRelative</a> • <a href="drawing-wand.html#DrawPathMoveToAbsolute">DrawPathMoveToAbsolute</a> • <a href="drawing-wand.html#DrawPathMoveToRelative">DrawPathMoveToRelative</a> • <a href="drawing-wand.html#DrawPathStart">DrawPathStart</a> • <a href="drawing-wand.html#DrawPoint">DrawPoint</a> • <a href="drawing-wand.html#DrawPolygon">DrawPolygon</a> • <a href="drawing-wand.html#DrawPolyline">DrawPolyline</a> • <a href="drawing-wand.html#DrawPopClipPath">DrawPopClipPath</a> • <a href="drawing-wand.html#DrawPopDefs">DrawPopDefs</a> • <a href="drawing-wand.html#DrawPopPattern">DrawPopPattern</a> • <a href="drawing-wand.html#DrawPushClipPath">DrawPushClipPath</a> • <a href="drawing-wand.html#DrawPushDefs">DrawPushDefs</a> • <a href="drawing-wand.html#DrawPushPattern">DrawPushPattern</a> • <a href="drawing-wand.html#DrawRectangle">DrawRectangle</a> • <a href="drawing-wand.html#DrawResetVectorGraphics">DrawResetVectorGraphics</a> • <a href="drawing-wand.html#DrawRotate">DrawRotate</a> • <a href="drawing-wand.html#DrawRoundRectangle">DrawRoundRectangle</a> • <a href="drawing-wand.html#DrawScale">DrawScale</a> • <a href="drawing-wand.html#DrawSetBorderColor">DrawSetBorderColor</a> • <a href="drawing-wand.html#DrawSetClipPath">DrawSetClipPath</a> • <a href="drawing-wand.html#DrawSetClipRule">DrawSetClipRule</a> • <a href="drawing-wand.html#DrawSetClipUnits">DrawSetClipUnits</a> • <a href="drawing-wand.html#DrawSetFillColor">DrawSetFillColor</a> • <a href="drawing-wand.html#DrawSetFillOpacity">DrawSetFillOpacity</a> • <a href="drawing-wand.html#DrawSetFontResolution">DrawSetFontResolution</a> • <a href="drawing-wand.html#DrawSetOpacity">DrawSetOpacity</a> • <a href="drawing-wand.html#DrawSetFillPatternURL">DrawSetFillPatternURL</a> • <a href="drawing-wand.html#DrawSetFillRule">DrawSetFillRule</a> • <a href="drawing-wand.html#DrawSetFont">DrawSetFont</a> • <a href="drawing-wand.html#DrawSetFontFamily">DrawSetFontFamily</a> • <a href="drawing-wand.html#DrawSetFontSize">DrawSetFontSize</a> • <a href="drawing-wand.html#DrawSetFontStretch">DrawSetFontStretch</a> • <a href="drawing-wand.html#DrawSetFontStyle">DrawSetFontStyle</a> • <a href="drawing-wand.html#DrawSetFontWeight">DrawSetFontWeight</a> • <a href="drawing-wand.html#DrawSetGravity">DrawSetGravity</a> • <a href="drawing-wand.html#DrawSetStrokeColor">DrawSetStrokeColor</a> • <a href="drawing-wand.html#DrawSetStrokePatternURL">DrawSetStrokePatternURL</a> • <a href="drawing-wand.html#DrawSetStrokeAntialias">DrawSetStrokeAntialias</a> • <a href="drawing-wand.html#DrawSetStrokeDashArray">DrawSetStrokeDashArray</a> • <a href="drawing-wand.html#DrawSetStrokeDashOffset">DrawSetStrokeDashOffset</a> • <a href="drawing-wand.html#DrawSetStrokeLineCap">DrawSetStrokeLineCap</a> • <a href="drawing-wand.html#DrawSetStrokeLineJoin">DrawSetStrokeLineJoin</a> • <a href="drawing-wand.html#DrawSetStrokeMiterLimit">DrawSetStrokeMiterLimit</a> • <a href="drawing-wand.html#DrawSetStrokeOpacity">DrawSetStrokeOpacity</a> • <a href="drawing-wand.html#DrawSetStrokeWidth">DrawSetStrokeWidth</a> • <a href="drawing-wand.html#DrawSetTextAlignment">DrawSetTextAlignment</a> • <a href="drawing-wand.html#DrawSetTextAntialias">DrawSetTextAntialias</a> • <a href="drawing-wand.html#DrawSetTextDecoration">DrawSetTextDecoration</a> • <a href="drawing-wand.html#DrawSetTextEncoding">DrawSetTextEncoding</a> • <a href="drawing-wand.html#DrawSetTextKerning">DrawSetTextKerning</a> • <a href="drawing-wand.html#DrawSetTextInterlineSpacing">DrawSetTextInterlineSpacing</a> • <a href="drawing-wand.html#DrawSetTextInterwordSpacing">DrawSetTextInterwordSpacing</a> • <a href="drawing-wand.html#DrawSetTextUnderColor">DrawSetTextUnderColor</a> • <a href="drawing-wand.html#DrawSetVectorGraphics">DrawSetVectorGraphics</a> • <a href="drawing-wand.html#DrawSkewX">DrawSkewX</a> • <a href="drawing-wand.html#DrawSkewY">DrawSkewY</a> • <a href="drawing-wand.html#DrawTranslate">DrawTranslate</a> • <a href="drawing-wand.html#DrawSetViewbox">DrawSetViewbox</a> • <a href="drawing-wand.html#IsDrawingWand">IsDrawingWand</a> • <a href="drawing-wand.html#NewDrawingWand">NewDrawingWand</a> • <a href="drawing-wand.html#PeekDrawingWand">PeekDrawingWand</a> • <a href="drawing-wand.html#PopDrawingWand">PopDrawingWand</a> • <a href="drawing-wand.html#PushDrawingWand">PushDrawingWand</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="ClearDrawingWand">ClearDrawingWand</a></h2>
+
+<p>ClearDrawingWand() clears resources associated with the drawing wand.</p>
+
+<p>The format of the ClearDrawingWand method is:</p>
+
+<pre class="text">
+void ClearDrawingWand(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand to clear. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="CloneDrawingWand">CloneDrawingWand</a></h2>
+
+<p>CloneDrawingWand() makes an exact copy of the specified wand.</p>
+
+<p>The format of the CloneDrawingWand method is:</p>
+
+<pre class="text">
+DrawingWand *CloneDrawingWand(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DestroyDrawingWand">DestroyDrawingWand</a></h2>
+
+<p>DestroyDrawingWand() frees all resources associated with the drawing wand. Once the drawing wand has been freed, it should not be used and further unless it re-allocated.</p>
+
+<p>The format of the DestroyDrawingWand method is:</p>
+
+<pre class="text">
+DrawingWand *DestroyDrawingWand(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand to destroy. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawAffine">DrawAffine</a></h2>
+
+<p>DrawAffine() adjusts the current affine transformation matrix with the specified affine transformation matrix. Note that the current affine transform is adjusted rather than replaced.</p>
+
+<p>The format of the DrawAffine method is:</p>
+
+<pre class="text">
+void DrawAffine(DrawingWand *wand,const AffineMatrix *affine)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>Drawing wand </dd>
+
+<dd> </dd>
+<dt>affine</dt>
+<dd>Affine matrix parameters </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawAlpha">DrawAlpha</a></h2>
+
+<p>DrawAlpha() paints on the image's alpha channel in order to set effected pixels to transparent. to influence the alpha of pixels. The available paint methods are:</p>
+
+<pre class="text">
+ PointMethod: Select the target pixel
+ ReplaceMethod: Select any pixel that matches the target pixel.
+ FloodfillMethod: Select the target pixel and matching neighbors.
+ FillToBorderMethod: Select the target pixel and neighbors not matching
+border color.
+ ResetMethod: Select all pixels.
+</pre>
+
+<p>The format of the DrawAlpha method is:</p>
+
+<pre class="text">
+void DrawAlpha(DrawingWand *wand,const double x,const double y,
+ const PaintMethod paint_method)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate </dd>
+
+<dd> </dd>
+<dt>paint_method</dt>
+<dd>paint method. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawAnnotation">DrawAnnotation</a></h2>
+
+<p>DrawAnnotation() draws text on the image.</p>
+
+<p>The format of the DrawAnnotation method is:</p>
+
+<pre class="text">
+void DrawAnnotation(DrawingWand *wand,const double x,
+ const double y,const unsigned char *text)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate to left of text </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate to text baseline </dd>
+
+<dd> </dd>
+<dt>text</dt>
+<dd>text to draw </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawArc">DrawArc</a></h2>
+
+<p>DrawArc() draws an arc falling within a specified bounding rectangle on the image.</p>
+
+<p>The format of the DrawArc method is:</p>
+
+<pre class="text">
+void DrawArc(DrawingWand *wand,const double sx,const double sy,
+ const double ex,const double ey,const double sd,const double ed)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>sx</dt>
+<dd>starting x ordinate of bounding rectangle </dd>
+
+<dd> </dd>
+<dt>sy</dt>
+<dd>starting y ordinate of bounding rectangle </dd>
+
+<dd> </dd>
+<dt>ex</dt>
+<dd>ending x ordinate of bounding rectangle </dd>
+
+<dd> </dd>
+<dt>ey</dt>
+<dd>ending y ordinate of bounding rectangle </dd>
+
+<dd> </dd>
+<dt>sd</dt>
+<dd>starting degrees of rotation </dd>
+
+<dd> </dd>
+<dt>ed</dt>
+<dd>ending degrees of rotation </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawBezier">DrawBezier</a></h2>
+
+<p>DrawBezier() draws a bezier curve through a set of points on the image.</p>
+
+<p>The format of the DrawBezier method is:</p>
+
+<pre class="text">
+void DrawBezier(DrawingWand *wand,
+ const size_t number_coordinates,const PointInfo *coordinates)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>number_coordinates</dt>
+<dd>number of coordinates </dd>
+
+<dd> </dd>
+<dt>coordinates</dt>
+<dd>coordinates </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawCircle">DrawCircle</a></h2>
+
+<p>DrawCircle() draws a circle on the image.</p>
+
+<p>The format of the DrawCircle method is:</p>
+
+<pre class="text">
+void DrawCircle(DrawingWand *wand,const double ox,
+ const double oy,const double px, const double py)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>ox</dt>
+<dd>origin x ordinate </dd>
+
+<dd> </dd>
+<dt>oy</dt>
+<dd>origin y ordinate </dd>
+
+<dd> </dd>
+<dt>px</dt>
+<dd>perimeter x ordinate </dd>
+
+<dd> </dd>
+<dt>py</dt>
+<dd>perimeter y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawClearException">DrawClearException</a></h2>
+
+<p>DrawClearException() clear any exceptions associated with the wand.</p>
+
+<p>The format of the DrawClearException method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawClearException(DrawWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawCloneExceptionInfo">DrawCloneExceptionInfo</a></h2>
+
+<p>DrawCloneExceptionInfo() clones the ExceptionInfo structure within the wand.</p>
+
+<p>The format of the DrawCloneExceptionInfo method is:</p>
+
+<pre class="text">
+ExceptionInfo *DrawCloneExceptionInfo(DrawWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawComposite">DrawComposite</a></h2>
+
+<p>DrawComposite() composites an image onto the current image, using the specified composition operator, specified position, and at the specified size.</p>
+
+<p>The format of the DrawComposite method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawComposite(DrawingWand *wand,
+ const CompositeOperator compose,const double x,
+ const double y,const double width,const double height,
+ MagickWand *magick_wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>compose</dt>
+<dd>composition operator </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of top left corner </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of top left corner </dd>
+
+<dd> </dd>
+<dt>width</dt>
+<dd>Width to resize image to prior to compositing. Specify zero to use existing width. </dd>
+
+<dd> </dd>
+<dt>height</dt>
+<dd>Height to resize image to prior to compositing. Specify zero to use existing height. </dd>
+
+<dd> </dd>
+<dt>magick_wand</dt>
+<dd>Image to composite is obtained from this wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawColor">DrawColor</a></h2>
+
+<p>DrawColor() draws color on image using the current fill color, starting at specified position, and using specified paint method. The available paint methods are:</p>
+
+<pre class="text">
+ PointMethod: Recolors the target pixel
+ ReplaceMethod: Recolor any pixel that matches the target pixel.
+ FloodfillMethod: Recolors target pixels and matching neighbors.
+ ResetMethod: Recolor all pixels.
+</pre>
+
+<p>The format of the DrawColor method is:</p>
+
+<pre class="text">
+void DrawColor(DrawingWand *wand,const double x,const double y,
+ const PaintMethod paint_method)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate. </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate. </dd>
+
+<dd> </dd>
+<dt>paint_method</dt>
+<dd>paint method. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawComment">DrawComment</a></h2>
+
+<p>DrawComment() adds a comment to a vector output stream.</p>
+
+<p>The format of the DrawComment method is:</p>
+
+<pre class="text">
+void DrawComment(DrawingWand *wand,const char *comment)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>comment</dt>
+<dd>comment text </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawEllipse">DrawEllipse</a></h2>
+
+<p>DrawEllipse() draws an ellipse on the image.</p>
+
+<p>The format of the DrawEllipse method is:</p>
+
+<pre class="text">
+ void DrawEllipse(DrawingWand *wand,const double ox,const double oy,
+ const double rx,const double ry,const double start,const double end)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>ox</dt>
+<dd>origin x ordinate </dd>
+
+<dd> </dd>
+<dt>oy</dt>
+<dd>origin y ordinate </dd>
+
+<dd> </dd>
+<dt>rx</dt>
+<dd>radius in x </dd>
+
+<dd> </dd>
+<dt>ry</dt>
+<dd>radius in y </dd>
+
+<dd> </dd>
+<dt>start</dt>
+<dd>starting rotation in degrees </dd>
+
+<dd> </dd>
+<dt>end</dt>
+<dd>ending rotation in degrees </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetBorderColor">DrawGetBorderColor</a></h2>
+
+<p>DrawGetBorderColor() returns the border color used for drawing bordered objects.</p>
+
+<p>The format of the DrawGetBorderColor method is:</p>
+
+<pre class="text">
+void DrawGetBorderColor(const DrawingWand *wand,
+ PixelWand *border_color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>border_color</dt>
+<dd>Return the border color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetClipPath">DrawGetClipPath</a></h2>
+
+<p>DrawGetClipPath() obtains the current clipping path ID. The value returned must be deallocated by the user when it is no longer needed.</p>
+
+<p>The format of the DrawGetClipPath method is:</p>
+
+<pre class="text">
+char *DrawGetClipPath(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetClipRule">DrawGetClipRule</a></h2>
+
+<p>DrawGetClipRule() returns the current polygon fill rule to be used by the clipping path.</p>
+
+<p>The format of the DrawGetClipRule method is:</p>
+
+<pre class="text">
+ FillRule DrawGetClipRule(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetClipUnits">DrawGetClipUnits</a></h2>
+
+<p>DrawGetClipUnits() returns the interpretation of clip path units.</p>
+
+<p>The format of the DrawGetClipUnits method is:</p>
+
+<pre class="text">
+ClipPathUnits DrawGetClipUnits(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetException">DrawGetException</a></h2>
+
+<p>DrawGetException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
+
+<p>The format of the DrawGetException method is:</p>
+
+<pre class="text">
+char *DrawGetException(const DrawWand *wand,
+ ExceptionType *severity)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>severity</dt>
+<dd>the severity of the error is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetExceptionType">DrawGetExceptionType</a></h2>
+
+<p>DrawGetExceptionType() the exception type associated with the wand. If no exception has occurred, UndefinedExceptionType is returned.</p>
+
+<p>The format of the DrawGetExceptionType method is:</p>
+
+<pre class="text">
+ExceptionType DrawGetExceptionType(const DrawWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFillColor">DrawGetFillColor</a></h2>
+
+<p>DrawGetFillColor() returns the fill color used for drawing filled objects.</p>
+
+<p>The format of the DrawGetFillColor method is:</p>
+
+<pre class="text">
+void DrawGetFillColor(const DrawingWand *wand,
+ PixelWand *fill_color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>fill_color</dt>
+<dd>Return the fill color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFillOpacity">DrawGetFillOpacity</a></h2>
+
+<p>DrawGetFillOpacity() returns the alpha used when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
+
+<p>The format of the DrawGetFillOpacity method is:</p>
+
+<pre class="text">
+double DrawGetFillOpacity(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFillRule">DrawGetFillRule</a></h2>
+
+<p>DrawGetFillRule() returns the fill rule used while drawing polygons.</p>
+
+<p>The format of the DrawGetFillRule method is:</p>
+
+<pre class="text">
+FillRule DrawGetFillRule(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFont">DrawGetFont</a></h2>
+
+<p>DrawGetFont() returns a null-terminaged string specifying the font used when annotating with text. The value returned must be freed by the user when no longer needed.</p>
+
+<p>The format of the DrawGetFont method is:</p>
+
+<pre class="text">
+char *DrawGetFont(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFontFamily">DrawGetFontFamily</a></h2>
+
+<p>DrawGetFontFamily() returns the font family to use when annotating with text. The value returned must be freed by the user when it is no longer needed.</p>
+
+<p>The format of the DrawGetFontFamily method is:</p>
+
+<pre class="text">
+char *DrawGetFontFamily(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFontResolution">DrawGetFontResolution</a></h2>
+
+<p>DrawGetFontResolution() gets the image X and Y resolution.</p>
+
+<p>The format of the DrawGetFontResolution method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawGetFontResolution(const DrawingWand *wand,
+ double *x,double *y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>the x-resolution. </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>the y-resolution. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFontSize">DrawGetFontSize</a></h2>
+
+<p>DrawGetFontSize() returns the font pointsize used when annotating with text.</p>
+
+<p>The format of the DrawGetFontSize method is:</p>
+
+<pre class="text">
+double DrawGetFontSize(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFontStretch">DrawGetFontStretch</a></h2>
+
+<p>DrawGetFontStretch() returns the font stretch used when annotating with text.</p>
+
+<p>The format of the DrawGetFontStretch method is:</p>
+
+<pre class="text">
+StretchType DrawGetFontStretch(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFontStyle">DrawGetFontStyle</a></h2>
+
+<p>DrawGetFontStyle() returns the font style used when annotating with text.</p>
+
+<p>The format of the DrawGetFontStyle method is:</p>
+
+<pre class="text">
+StyleType DrawGetFontStyle(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetFontWeight">DrawGetFontWeight</a></h2>
+
+<p>DrawGetFontWeight() returns the font weight used when annotating with text.</p>
+
+<p>The format of the DrawGetFontWeight method is:</p>
+
+<pre class="text">
+size_t DrawGetFontWeight(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetGravity">DrawGetGravity</a></h2>
+
+<p>DrawGetGravity() returns the text placement gravity used when annotating with text.</p>
+
+<p>The format of the DrawGetGravity method is:</p>
+
+<pre class="text">
+GravityType DrawGetGravity(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetOpacity">DrawGetOpacity</a></h2>
+
+<p>DrawGetOpacity() returns the alpha used when drawing with the fill or stroke color or texture. Fully opaque is 1.0.</p>
+
+<p>The format of the DrawGetOpacity method is:</p>
+
+<pre class="text">
+double DrawGetOpacity(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeAntialias">DrawGetStrokeAntialias</a></h2>
+
+<p>DrawGetStrokeAntialias() returns the current stroke antialias setting. Stroked outlines are antialiased by default. When antialiasing is disabled stroked pixels are thresholded to determine if the stroke color or underlying canvas color should be used.</p>
+
+<p>The format of the DrawGetStrokeAntialias method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawGetStrokeAntialias(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeColor">DrawGetStrokeColor</a></h2>
+
+<p>DrawGetStrokeColor() returns the color used for stroking object outlines.</p>
+
+<p>The format of the DrawGetStrokeColor method is:</p>
+
+<pre class="text">
+void DrawGetStrokeColor(const DrawingWand *wand,
+ PixelWand *stroke_color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>stroke_color</dt>
+<dd>Return the stroke color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeDashArray">DrawGetStrokeDashArray</a></h2>
+
+<p>DrawGetStrokeDashArray() returns an array representing the pattern of dashes and gaps used to stroke paths (see DrawSetStrokeDashArray). The array must be freed once it is no longer required by the user.</p>
+
+<p>The format of the DrawGetStrokeDashArray method is:</p>
+
+<pre class="text">
+double *DrawGetStrokeDashArray(const DrawingWand *wand,
+ size_t *number_elements)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>number_elements</dt>
+<dd>address to place number of elements in dash array </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeDashOffset">DrawGetStrokeDashOffset</a></h2>
+
+<p>DrawGetStrokeDashOffset() returns the offset into the dash pattern to start the dash.</p>
+
+<p>The format of the DrawGetStrokeDashOffset method is:</p>
+
+<pre class="text">
+double DrawGetStrokeDashOffset(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeLineCap">DrawGetStrokeLineCap</a></h2>
+
+<p>DrawGetStrokeLineCap() returns the shape to be used at the end of open subpaths when they are stroked. Values of LineCap are UndefinedCap, ButtCap, RoundCap, and SquareCap.</p>
+
+<p>The format of the DrawGetStrokeLineCap method is:</p>
+
+<pre class="text">
+LineCap DrawGetStrokeLineCap(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeLineJoin">DrawGetStrokeLineJoin</a></h2>
+
+<p>DrawGetStrokeLineJoin() returns 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.</p>
+
+<p>The format of the DrawGetStrokeLineJoin method is:</p>
+
+<pre class="text">
+LineJoin DrawGetStrokeLineJoin(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeMiterLimit">DrawGetStrokeMiterLimit</a></h2>
+
+<p>DrawGetStrokeMiterLimit() returns the 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'.</p>
+
+<p>The format of the DrawGetStrokeMiterLimit method is:</p>
+
+<pre class="text">
+size_t DrawGetStrokeMiterLimit(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeOpacity">DrawGetStrokeOpacity</a></h2>
+
+<p>DrawGetStrokeOpacity() returns the alpha of stroked object outlines.</p>
+
+<p>The format of the DrawGetStrokeOpacity method is:</p>
+
+<pre class="text">
+double DrawGetStrokeOpacity(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetStrokeWidth">DrawGetStrokeWidth</a></h2>
+
+<p>DrawGetStrokeWidth() returns the width of the stroke used to draw object outlines.</p>
+
+<p>The format of the DrawGetStrokeWidth method is:</p>
+
+<pre class="text">
+double DrawGetStrokeWidth(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextAlignment">DrawGetTextAlignment</a></h2>
+
+<p>DrawGetTextAlignment() returns the alignment applied when annotating with text.</p>
+
+<p>The format of the DrawGetTextAlignment method is:</p>
+
+<pre class="text">
+AlignType DrawGetTextAlignment(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextAntialias">DrawGetTextAntialias</a></h2>
+
+<p>DrawGetTextAntialias() returns the current text antialias setting, which determines whether text is antialiased. Text is antialiased by default.</p>
+
+<p>The format of the DrawGetTextAntialias method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawGetTextAntialias(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextDecoration">DrawGetTextDecoration</a></h2>
+
+<p>DrawGetTextDecoration() returns the decoration applied when annotating with text.</p>
+
+<p>The format of the DrawGetTextDecoration method is:</p>
+
+<pre class="text">
+DecorationType DrawGetTextDecoration(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextDirection">DrawGetTextDirection</a></h2>
+
+<p>DrawGetTextDirection() returns the direction that will be used when annotating with text.</p>
+
+<p>The format of the DrawGetTextDirection method is:</p>
+
+<pre class="text">
+DirectionType DrawGetTextDirection(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextEncoding">DrawGetTextEncoding</a></h2>
+
+<p>DrawGetTextEncoding() returns a null-terminated string which specifies the code set used for text annotations. The string must be freed by the user once it is no longer required.</p>
+
+<p>The format of the DrawGetTextEncoding method is:</p>
+
+<pre class="text">
+char *DrawGetTextEncoding(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextKerning">DrawGetTextKerning</a></h2>
+
+<p>DrawGetTextKerning() gets the spacing between characters in text.</p>
+
+<p>The format of the DrawSetFontKerning method is:</p>
+
+<pre class="text">
+double DrawGetTextKerning(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextInterlineSpacing">DrawGetTextInterlineSpacing</a></h2>
+
+<p>DrawGetTextInterlineSpacing() gets the spacing between lines in text.</p>
+
+<p>The format of the DrawGetTextInterlineSpacing method is:</p>
+
+<pre class="text">
+double DrawGetTextInterlineSpacing(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextInterwordSpacing">DrawGetTextInterwordSpacing</a></h2>
+
+<p>DrawGetTextInterwordSpacing() gets the spacing between words in text.</p>
+
+<p>The format of the DrawSetFontKerning method is:</p>
+
+<pre class="text">
+double DrawGetTextInterwordSpacing(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetVectorGraphics">DrawGetVectorGraphics</a></h2>
+
+<p>DrawGetVectorGraphics() returns a null-terminated string which specifies the vector graphics generated by any graphics calls made since the wand was instantiated. The string must be freed by the user once it is no longer required.</p>
+
+<p>The format of the DrawGetVectorGraphics method is:</p>
+
+<pre class="text">
+char *DrawGetVectorGraphics(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawGetTextUnderColor">DrawGetTextUnderColor</a></h2>
+
+<p>DrawGetTextUnderColor() returns the color of a background rectangle to place under text annotations.</p>
+
+<p>The format of the DrawGetTextUnderColor method is:</p>
+
+<pre class="text">
+void DrawGetTextUnderColor(const DrawingWand *wand,
+ PixelWand *under_color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>under_color</dt>
+<dd>Return the under color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawLine">DrawLine</a></h2>
+
+<p>DrawLine() draws a line on the image using the current stroke color, stroke alpha, and stroke width.</p>
+
+<p>The format of the DrawLine method is:</p>
+
+<pre class="text">
+void DrawLine(DrawingWand *wand,const double sx,const double sy,
+ const double ex,const double ey)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>sx</dt>
+<dd>starting x ordinate </dd>
+
+<dd> </dd>
+<dt>sy</dt>
+<dd>starting y ordinate </dd>
+
+<dd> </dd>
+<dt>ex</dt>
+<dd>ending x ordinate </dd>
+
+<dd> </dd>
+<dt>ey</dt>
+<dd>ending y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathClose">DrawPathClose</a></h2>
+
+<p>DrawPathClose() adds a path element to the current path which closes the current subpath by drawing a straight line from the current point to the current subpath's most recent starting point (usually, the most recent moveto point).</p>
+
+<p>The format of the DrawPathClose method is:</p>
+
+<pre class="text">
+void DrawPathClose(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToAbsolute">DrawPathCurveToAbsolute</a></h2>
+
+<p>DrawPathCurveToAbsolute() draws a cubic Bezier curve from the current point to (x,y) using (x1,y1) as the control point at the beginning of the curve and (x2,y2) as the control point at the end of the curve using absolute coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathCurveToAbsolute(DrawingWand *wand,const double x1,
+ const double y1,const double x2,const double y2,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x1</dt>
+<dd>x ordinate of control point for curve beginning </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>y ordinate of control point for curve beginning </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>x ordinate of control point for curve ending </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>y ordinate of control point for curve ending </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of the end of the curve </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of the end of the curve </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToRelative">DrawPathCurveToRelative</a></h2>
+
+<p>DrawPathCurveToRelative() draws a cubic Bezier curve from the current point to (x,y) using (x1,y1) as the control point at the beginning of the curve and (x2,y2) as the control point at the end of the curve using relative coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToRelative method is:</p>
+
+<pre class="text">
+void DrawPathCurveToRelative(DrawingWand *wand,const double x1,
+ const double y1,const double x2,const double y2,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x1</dt>
+<dd>x ordinate of control point for curve beginning </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>y ordinate of control point for curve beginning </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>x ordinate of control point for curve ending </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>y ordinate of control point for curve ending </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of the end of the curve </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of the end of the curve </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToQuadraticBezierAbsolute">DrawPathCurveToQuadraticBezierAbsolute</a></h2>
+
+<p>DrawPathCurveToQuadraticBezierAbsolute() draws a quadratic Bezier curve from the current point to (x,y) using (x1,y1) as the control point using absolute coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToQuadraticBezierAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathCurveToQuadraticBezierAbsolute(DrawingWand *wand,
+ const double x1,const double y1,onst double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x1</dt>
+<dd>x ordinate of the control point </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>y ordinate of the control point </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of final point </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of final point </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToQuadraticBezierRelative">DrawPathCurveToQuadraticBezierRelative</a></h2>
+
+<p>DrawPathCurveToQuadraticBezierRelative() draws a quadratic Bezier curve from the current point to (x,y) using (x1,y1) as the control point using relative coordinates. At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToQuadraticBezierRelative method is:</p>
+
+<pre class="text">
+void DrawPathCurveToQuadraticBezierRelative(DrawingWand *wand,
+ const double x1,const double y1,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x1</dt>
+<dd>x ordinate of the control point </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>y ordinate of the control point </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of final point </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of final point </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToQuadraticBezierSmoothAbsolute">DrawPathCurveToQuadraticBezierSmoothAbsolute</a></h2>
+
+<p>DrawPathCurveToQuadraticBezierSmoothAbsolute() draws a quadratic Bezier curve (using absolute coordinates) from the current point to (x,y). The control point is assumed to be the reflection of the control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not a DrawPathCurveToQuadraticBezierAbsolute, DrawPathCurveToQuadraticBezierRelative, DrawPathCurveToQuadraticBezierSmoothAbsolute or DrawPathCurveToQuadraticBezierSmoothRelative, assume the control point is coincident with the current point.). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToQuadraticBezierSmoothAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathCurveToQuadraticBezierSmoothAbsolute(
+ DrawingWand *wand,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of final point </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of final point </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToQuadraticBezierSmoothRelative">DrawPathCurveToQuadraticBezierSmoothRelative</a></h2>
+
+<p>DrawPathCurveToQuadraticBezierSmoothRelative() draws a quadratic Bezier curve (using relative coordinates) from the current point to (x,y). The control point is assumed to be the reflection of the control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not a DrawPathCurveToQuadraticBezierAbsolute, DrawPathCurveToQuadraticBezierRelative, DrawPathCurveToQuadraticBezierSmoothAbsolute or DrawPathCurveToQuadraticBezierSmoothRelative, assume the control point is coincident with the current point.). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToQuadraticBezierSmoothRelative method is:</p>
+
+<pre class="text">
+void DrawPathCurveToQuadraticBezierSmoothRelative(DrawingWand *wand,
+ const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of final point </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of final point </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToSmoothAbsolute">DrawPathCurveToSmoothAbsolute</a></h2>
+
+<p>DrawPathCurveToSmoothAbsolute() draws a cubic Bezier curve from the current point to (x,y) using absolute coordinates. The first control point is assumed to be the reflection of the second control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not an DrawPathCurveToAbsolute, DrawPathCurveToRelative, DrawPathCurveToSmoothAbsolute or DrawPathCurveToSmoothRelative, assume the first control point is coincident with the current point.) (x2,y2) is the second control point (i.e., the control point at the end of the curve). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToSmoothAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathCurveToSmoothAbsolute(DrawingWand *wand,
+ const double x2,const double y2,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>x ordinate of second control point </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>y ordinate of second control point </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of termination point </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of termination point </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathCurveToSmoothRelative">DrawPathCurveToSmoothRelative</a></h2>
+
+<p>DrawPathCurveToSmoothRelative() draws a cubic Bezier curve from the current point to (x,y) using relative coordinates. The first control point is assumed to be the reflection of the second control point on the previous command relative to the current point. (If there is no previous command or if the previous command was not an DrawPathCurveToAbsolute, DrawPathCurveToRelative, DrawPathCurveToSmoothAbsolute or DrawPathCurveToSmoothRelative, assume the first control point is coincident with the current point.) (x2,y2) is the second control point (i.e., the control point at the end of the curve). At the end of the command, the new current point becomes the final (x,y) coordinate pair used in the polybezier.</p>
+
+<p>The format of the DrawPathCurveToSmoothRelative method is:</p>
+
+<pre class="text">
+void DrawPathCurveToSmoothRelative(DrawingWand *wand,
+ const double x2,const double y2,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>x ordinate of second control point </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>y ordinate of second control point </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of termination point </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of termination point </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathEllipticArcAbsolute">DrawPathEllipticArcAbsolute</a></h2>
+
+<p>DrawPathEllipticArcAbsolute() draws an elliptical arc from the current point to (x, y) using absolute coordinates. The size and orientation of the ellipse are defined by two radii (rx, ry) and an xAxisRotation, which indicates how the ellipse as a whole is rotated relative to the current coordinate system. The center (cx, cy) of the ellipse is calculated automagically to satisfy the constraints imposed by the other parameters. largeArcFlag and sweepFlag contribute to the automatic calculations and help determine how the arc is drawn. If largeArcFlag is true then draw the larger of the available arcs. If sweepFlag is true, then draw the arc matching a clock-wise rotation.</p>
+
+<p>The format of the DrawPathEllipticArcAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathEllipticArcAbsolute(DrawingWand *wand,
+ const double rx,const double ry,const double x_axis_rotation,
+ const MagickBooleanType large_arc_flag,
+ const MagickBooleanType sweep_flag,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>rx</dt>
+<dd>x radius </dd>
+
+<dd> </dd>
+<dt>ry</dt>
+<dd>y radius </dd>
+
+<dd> </dd>
+<dt>x_axis_rotation</dt>
+<dd>indicates how the ellipse as a whole is rotated relative to the current coordinate system </dd>
+
+<dd> </dd>
+<dt>large_arc_flag</dt>
+<dd>If non-zero (true) then draw the larger of the available arcs </dd>
+
+<dd> </dd>
+<dt>sweep_flag</dt>
+<dd>If non-zero (true) then draw the arc matching a clock-wise rotation </dd>
+
+<dd> </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathEllipticArcRelative">DrawPathEllipticArcRelative</a></h2>
+
+<p>DrawPathEllipticArcRelative() draws an elliptical arc from the current point to (x, y) using relative coordinates. The size and orientation of the ellipse are defined by two radii (rx, ry) and an xAxisRotation, which indicates how the ellipse as a whole is rotated relative to the current coordinate system. The center (cx, cy) of the ellipse is calculated automagically to satisfy the constraints imposed by the other parameters. largeArcFlag and sweepFlag contribute to the automatic calculations and help determine how the arc is drawn. If largeArcFlag is true then draw the larger of the available arcs. If sweepFlag is true, then draw the arc matching a clock-wise rotation.</p>
+
+<p>The format of the DrawPathEllipticArcRelative method is:</p>
+
+<pre class="text">
+void DrawPathEllipticArcRelative(DrawingWand *wand,
+ const double rx,const double ry,const double x_axis_rotation,
+ const MagickBooleanType large_arc_flag,
+ const MagickBooleanType sweep_flag,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>rx</dt>
+<dd>x radius </dd>
+
+<dd> </dd>
+<dt>ry</dt>
+<dd>y radius </dd>
+
+<dd> </dd>
+<dt>x_axis_rotation</dt>
+<dd>indicates how the ellipse as a whole is rotated relative to the current coordinate system </dd>
+
+<dd> </dd>
+<dt>large_arc_flag</dt>
+<dd>If non-zero (true) then draw the larger of the available arcs </dd>
+
+<dd> </dd>
+<dt>sweep_flag</dt>
+<dd>If non-zero (true) then draw the arc matching a clock-wise rotation </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathFinish">DrawPathFinish</a></h2>
+
+<p>DrawPathFinish() terminates the current path.</p>
+
+<p>The format of the DrawPathFinish method is:</p>
+
+<pre class="text">
+void DrawPathFinish(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathLineToAbsolute">DrawPathLineToAbsolute</a></h2>
+
+<p>DrawPathLineToAbsolute() draws a line path from the current point to the given coordinate using absolute coordinates. The coordinate then becomes the new current point.</p>
+
+<p>The format of the DrawPathLineToAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathLineToAbsolute(DrawingWand *wand,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x ordinate </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathLineToRelative">DrawPathLineToRelative</a></h2>
+
+<p>DrawPathLineToRelative() draws a line path from the current point to the given coordinate using relative coordinates. The coordinate then becomes the new current point.</p>
+
+<p>The format of the DrawPathLineToRelative method is:</p>
+
+<pre class="text">
+void DrawPathLineToRelative(DrawingWand *wand,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x ordinate </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathLineToHorizontalAbsolute">DrawPathLineToHorizontalAbsolute</a></h2>
+
+<p>DrawPathLineToHorizontalAbsolute() draws a horizontal line path from the current point to the target point using absolute coordinates. The target point then becomes the new current point.</p>
+
+<p>The format of the DrawPathLineToHorizontalAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathLineToHorizontalAbsolute(DrawingWand *wand,const double x)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathLineToHorizontalRelative">DrawPathLineToHorizontalRelative</a></h2>
+
+<p>DrawPathLineToHorizontalRelative() draws a horizontal line path from the current point to the target point using relative coordinates. The target point then becomes the new current point.</p>
+
+<p>The format of the DrawPathLineToHorizontalRelative method is:</p>
+
+<pre class="text">
+void DrawPathLineToHorizontalRelative(DrawingWand *wand,
+ const double x)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathLineToVerticalAbsolute">DrawPathLineToVerticalAbsolute</a></h2>
+
+<p>DrawPathLineToVerticalAbsolute() draws a vertical line path from the current point to the target point using absolute coordinates. The target point then becomes the new current point.</p>
+
+<p>The format of the DrawPathLineToVerticalAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathLineToVerticalAbsolute(DrawingWand *wand,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathLineToVerticalRelative">DrawPathLineToVerticalRelative</a></h2>
+
+<p>DrawPathLineToVerticalRelative() draws a vertical line path from the current point to the target point using relative coordinates. The target point then becomes the new current point.</p>
+
+<p>The format of the DrawPathLineToVerticalRelative method is:</p>
+
+<pre class="text">
+void DrawPathLineToVerticalRelative(DrawingWand *wand,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathMoveToAbsolute">DrawPathMoveToAbsolute</a></h2>
+
+<p>DrawPathMoveToAbsolute() starts a new sub-path at the given coordinate using absolute coordinates. The current point then becomes the specified coordinate.</p>
+
+<p>The format of the DrawPathMoveToAbsolute method is:</p>
+
+<pre class="text">
+void DrawPathMoveToAbsolute(DrawingWand *wand,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x ordinate </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathMoveToRelative">DrawPathMoveToRelative</a></h2>
+
+<p>DrawPathMoveToRelative() starts a new sub-path at the given coordinate using relative coordinates. The current point then becomes the specified coordinate.</p>
+
+<p>The format of the DrawPathMoveToRelative method is:</p>
+
+<pre class="text">
+void DrawPathMoveToRelative(DrawingWand *wand,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x ordinate </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPathStart">DrawPathStart</a></h2>
+
+<p>DrawPathStart() declares the start of a path drawing list which is terminated by a matching DrawPathFinish() command. All other DrawPath commands must be enclosed between a DrawPathStart() and a DrawPathFinish() command. This is because path drawing commands are subordinate commands and they do not function by themselves.</p>
+
+<p>The format of the DrawPathStart method is:</p>
+
+<pre class="text">
+void DrawPathStart(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPoint">DrawPoint</a></h2>
+
+<p>DrawPoint() draws a point using the current fill color.</p>
+
+<p>The format of the DrawPoint method is:</p>
+
+<pre class="text">
+void DrawPoint(DrawingWand *wand,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>target x coordinate </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>target y coordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPolygon">DrawPolygon</a></h2>
+
+<p>DrawPolygon() draws a polygon using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.</p>
+
+<p>The format of the DrawPolygon method is:</p>
+
+<pre class="text">
+void DrawPolygon(DrawingWand *wand,
+ const size_t number_coordinates,const PointInfo *coordinates)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>number_coordinates</dt>
+<dd>number of coordinates </dd>
+
+<dd> </dd>
+<dt>coordinates</dt>
+<dd>coordinate array </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPolyline">DrawPolyline</a></h2>
+
+<p>DrawPolyline() draws a polyline using the current stroke, stroke width, and fill color or texture, using the specified array of coordinates.</p>
+
+<p>The format of the DrawPolyline method is:</p>
+
+<pre class="text">
+void DrawPolyline(DrawingWand *wand,
+ const size_t number_coordinates,const PointInfo *coordinates)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>number_coordinates</dt>
+<dd>number of coordinates </dd>
+
+<dd> </dd>
+<dt>coordinates</dt>
+<dd>coordinate array </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPopClipPath">DrawPopClipPath</a></h2>
+
+<p>DrawPopClipPath() terminates a clip path definition.</p>
+
+<p>The format of the DrawPopClipPath method is:</p>
+
+<pre class="text">
+void DrawPopClipPath(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPopDefs">DrawPopDefs</a></h2>
+
+<p>DrawPopDefs() terminates a definition list.</p>
+
+<p>The format of the DrawPopDefs method is:</p>
+
+<pre class="text">
+void DrawPopDefs(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPopPattern">DrawPopPattern</a></h2>
+
+<p>DrawPopPattern() terminates a pattern definition.</p>
+
+<p>The format of the DrawPopPattern method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawPopPattern(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPushClipPath">DrawPushClipPath</a></h2>
+
+<p>DrawPushClipPath() starts a clip path definition which is comprized of any number of drawing commands and terminated by a DrawPopClipPath() command.</p>
+
+<p>The format of the DrawPushClipPath method is:</p>
+
+<pre class="text">
+void DrawPushClipPath(DrawingWand *wand,const char *clip_mask_id)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>clip_mask_id</dt>
+<dd>string identifier to associate with the clip path for later use. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPushDefs">DrawPushDefs</a></h2>
+
+<p>DrawPushDefs() indicates that commands up to a terminating DrawPopDefs() command create named elements (e.g. clip-paths, textures, etc.) which may safely be processed earlier for the sake of efficiency.</p>
+
+<p>The format of the DrawPushDefs method is:</p>
+
+<pre class="text">
+void DrawPushDefs(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawPushPattern">DrawPushPattern</a></h2>
+
+<p>DrawPushPattern() indicates that subsequent commands up to a DrawPopPattern() command comprise the definition of a named pattern. The pattern space is assigned top left corner coordinates, a width and height, and becomes its own drawing space. Anything which can be drawn may be used in a pattern definition. Named patterns may be used as stroke or brush definitions.</p>
+
+<p>The format of the DrawPushPattern method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawPushPattern(DrawingWand *wand,
+ const char *pattern_id,const double x,const double y,
+ const double width,const double height)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>pattern_id</dt>
+<dd>pattern identification for later reference </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>x ordinate of top left corner </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>y ordinate of top left corner </dd>
+
+<dd> </dd>
+<dt>width</dt>
+<dd>width of pattern space </dd>
+
+<dd> </dd>
+<dt>height</dt>
+<dd>height of pattern space </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawRectangle">DrawRectangle</a></h2>
+
+<p>DrawRectangle() draws a rectangle given two coordinates and using the current stroke, stroke width, and fill settings.</p>
+
+<p>The format of the DrawRectangle method is:</p>
+
+<pre class="text">
+void DrawRectangle(DrawingWand *wand,const double x1,
+ const double y1,const double x2,const double y2)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>x1</dt>
+<dd>x ordinate of first coordinate </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>y ordinate of first coordinate </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>x ordinate of second coordinate </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>y ordinate of second coordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawResetVectorGraphics">DrawResetVectorGraphics</a></h2>
+
+<p>DrawResetVectorGraphics() resets the vector graphics associated with the specified wand.</p>
+
+<p>The format of the DrawResetVectorGraphics method is:</p>
+
+<pre class="text">
+void DrawResetVectorGraphics(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawRotate">DrawRotate</a></h2>
+
+<p>DrawRotate() applies the specified rotation to the current coordinate space.</p>
+
+<p>The format of the DrawRotate method is:</p>
+
+<pre class="text">
+void DrawRotate(DrawingWand *wand,const double degrees)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>degrees</dt>
+<dd>degrees of rotation </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawRoundRectangle">DrawRoundRectangle</a></h2>
+
+<p>DrawRoundRectangle() draws a rounted rectangle given two coordinates, x & y corner radiuses and using the current stroke, stroke width, and fill settings.</p>
+
+<p>The format of the DrawRoundRectangle method is:</p>
+
+<pre class="text">
+void DrawRoundRectangle(DrawingWand *wand,double x1,double y1,
+ double x2,double y2,double rx,double ry)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x1</dt>
+<dd>x ordinate of first coordinate </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>y ordinate of first coordinate </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>x ordinate of second coordinate </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>y ordinate of second coordinate </dd>
+
+<dd> </dd>
+<dt>rx</dt>
+<dd>radius of corner in horizontal direction </dd>
+
+<dd> </dd>
+<dt>ry</dt>
+<dd>radius of corner in vertical direction </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawScale">DrawScale</a></h2>
+
+<p>DrawScale() adjusts the scaling factor to apply in the horizontal and vertical directions to the current coordinate space.</p>
+
+<p>The format of the DrawScale method is:</p>
+
+<pre class="text">
+void DrawScale(DrawingWand *wand,const double x,const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>horizontal scale factor </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>vertical scale factor </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetBorderColor">DrawSetBorderColor</a></h2>
+
+<p>DrawSetBorderColor() sets the border color to be used for drawing bordered objects.</p>
+
+<p>The format of the DrawSetBorderColor method is:</p>
+
+<pre class="text">
+void DrawSetBorderColor(DrawingWand *wand,const PixelWand *border_wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>border_wand</dt>
+<dd>border wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetClipPath">DrawSetClipPath</a></h2>
+
+<p>DrawSetClipPath() associates a named clipping path with the image. Only the areas drawn on by the clipping path will be modified as ssize_t as it remains in effect.</p>
+
+<p>The format of the DrawSetClipPath method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetClipPath(DrawingWand *wand,
+ const char *clip_mask)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>clip_mask</dt>
+<dd>name of clipping path to associate with image </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetClipRule">DrawSetClipRule</a></h2>
+
+<p>DrawSetClipRule() set the polygon fill rule to be used by the clipping path.</p>
+
+<p>The format of the DrawSetClipRule method is:</p>
+
+<pre class="text">
+void DrawSetClipRule(DrawingWand *wand,const FillRule fill_rule)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>fill_rule</dt>
+<dd>fill rule (EvenOddRule or NonZeroRule) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetClipUnits">DrawSetClipUnits</a></h2>
+
+<p>DrawSetClipUnits() sets the interpretation of clip path units.</p>
+
+<p>The format of the DrawSetClipUnits method is:</p>
+
+<pre class="text">
+void DrawSetClipUnits(DrawingWand *wand,
+ const ClipPathUnits clip_units)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>clip_units</dt>
+<dd>units to use (UserSpace, UserSpaceOnUse, or ObjectBoundingBox) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFillColor">DrawSetFillColor</a></h2>
+
+<p>DrawSetFillColor() sets the fill color to be used for drawing filled objects.</p>
+
+<p>The format of the DrawSetFillColor method is:</p>
+
+<pre class="text">
+void DrawSetFillColor(DrawingWand *wand,const PixelWand *fill_wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>fill_wand</dt>
+<dd>fill wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFillOpacity">DrawSetFillOpacity</a></h2>
+
+<p>DrawSetFillOpacity() sets the alpha to use when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
+
+<p>The format of the DrawSetFillOpacity method is:</p>
+
+<pre class="text">
+void DrawSetFillOpacity(DrawingWand *wand,const double fill_alpha)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>fill_opacity</dt>
+<dd>fill opacity </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFontResolution">DrawSetFontResolution</a></h2>
+
+<p>DrawSetFontResolution() sets the image resolution.</p>
+
+<p>The format of the DrawSetFontResolution method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetFontResolution(DrawingWand *wand,
+ const double x_resolution,const double y_resolution)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+<dt>x_resolution</dt>
+<dd>the image x resolution. </dd>
+
+<dd> </dd>
+<dt>y_resolution</dt>
+<dd>the image y resolution. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetOpacity">DrawSetOpacity</a></h2>
+
+<p>DrawSetOpacity() sets the alpha to use when drawing using the fill or stroke color or texture. Fully opaque is 1.0.</p>
+
+<p>The format of the DrawSetOpacity method is:</p>
+
+<pre class="text">
+void DrawSetOpacity(DrawingWand *wand,const double alpha)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>opacity</dt>
+<dd>fill and stroke opacity. The value 1.0 is opaque. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFillPatternURL">DrawSetFillPatternURL</a></h2>
+
+<p>DrawSetFillPatternURL() sets the URL to use as a fill pattern for filling objects. Only local URLs ("#identifier") are supported at this time. These local URLs are normally created by defining a named fill pattern with DrawPushPattern/DrawPopPattern.</p>
+
+<p>The format of the DrawSetFillPatternURL method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetFillPatternURL(DrawingWand *wand,
+ const char *fill_url)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>fill_url</dt>
+<dd>URL to use to obtain fill pattern. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFillRule">DrawSetFillRule</a></h2>
+
+<p>DrawSetFillRule() sets the fill rule to use while drawing polygons.</p>
+
+<p>The format of the DrawSetFillRule method is:</p>
+
+<pre class="text">
+void DrawSetFillRule(DrawingWand *wand,const FillRule fill_rule)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>fill_rule</dt>
+<dd>fill rule (EvenOddRule or NonZeroRule) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFont">DrawSetFont</a></h2>
+
+<p>DrawSetFont() sets the fully-sepecified font to use when annotating with text.</p>
+
+<p>The format of the DrawSetFont method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetFont(DrawingWand *wand,const char *font_name)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>font_name</dt>
+<dd>font name </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFontFamily">DrawSetFontFamily</a></h2>
+
+<p>DrawSetFontFamily() sets the font family to use when annotating with text.</p>
+
+<p>The format of the DrawSetFontFamily method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetFontFamily(DrawingWand *wand,
+ const char *font_family)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>font_family</dt>
+<dd>font family </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFontSize">DrawSetFontSize</a></h2>
+
+<p>DrawSetFontSize() sets the font pointsize to use when annotating with text.</p>
+
+<p>The format of the DrawSetFontSize method is:</p>
+
+<pre class="text">
+void DrawSetFontSize(DrawingWand *wand,const double pointsize)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>pointsize</dt>
+<dd>text pointsize </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFontStretch">DrawSetFontStretch</a></h2>
+
+<p>DrawSetFontStretch() sets the font stretch to use when annotating with text. The AnyStretch enumeration acts as a wild-card "don't care" option.</p>
+
+<p>The format of the DrawSetFontStretch method is:</p>
+
+<pre class="text">
+void DrawSetFontStretch(DrawingWand *wand,
+ const StretchType font_stretch)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>font_stretch</dt>
+<dd>font stretch (NormalStretch, UltraCondensedStretch, CondensedStretch, SemiCondensedStretch, SemiExpandedStretch, ExpandedStretch, ExtraExpandedStretch, UltraExpandedStretch, AnyStretch) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFontStyle">DrawSetFontStyle</a></h2>
+
+<p>DrawSetFontStyle() sets the font style to use when annotating with text. The AnyStyle enumeration acts as a wild-card "don't care" option.</p>
+
+<p>The format of the DrawSetFontStyle method is:</p>
+
+<pre class="text">
+void DrawSetFontStyle(DrawingWand *wand,const StyleType style)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>style</dt>
+<dd>font style (NormalStyle, ItalicStyle, ObliqueStyle, AnyStyle) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetFontWeight">DrawSetFontWeight</a></h2>
+
+<p>DrawSetFontWeight() sets the font weight to use when annotating with text.</p>
+
+<p>The format of the DrawSetFontWeight method is:</p>
+
+<pre class="text">
+void DrawSetFontWeight(DrawingWand *wand,
+ const size_t font_weight)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>font_weight</dt>
+<dd>font weight (valid range 100-900) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetGravity">DrawSetGravity</a></h2>
+
+<p>DrawSetGravity() sets the text placement gravity to use when annotating with text.</p>
+
+<p>The format of the DrawSetGravity method is:</p>
+
+<pre class="text">
+void DrawSetGravity(DrawingWand *wand,const GravityType gravity)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>gravity</dt>
+<dd>positioning gravity (NorthWestGravity, NorthGravity, NorthEastGravity, WestGravity, CenterGravity, EastGravity, SouthWestGravity, SouthGravity, SouthEastGravity) </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeColor">DrawSetStrokeColor</a></h2>
+
+<p>DrawSetStrokeColor() sets the color used for stroking object outlines.</p>
+
+<p>The format of the DrawSetStrokeColor method is:</p>
+
+<pre class="text">
+void DrawSetStrokeColor(DrawingWand *wand,
+ const PixelWand *stroke_wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>stroke_wand</dt>
+<dd>stroke wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokePatternURL">DrawSetStrokePatternURL</a></h2>
+
+<p>DrawSetStrokePatternURL() sets the pattern used for stroking object outlines.</p>
+
+<p>The format of the DrawSetStrokePatternURL method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetStrokePatternURL(DrawingWand *wand,
+ const char *stroke_url)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>stroke_url</dt>
+<dd>URL specifying pattern ID (e.g. "#pattern_id") </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeAntialias">DrawSetStrokeAntialias</a></h2>
+
+<p>DrawSetStrokeAntialias() controls whether stroked outlines are antialiased. Stroked outlines are antialiased by default. When antialiasing is disabled stroked pixels are thresholded to determine if the stroke color or underlying canvas color should be used.</p>
+
+<p>The format of the DrawSetStrokeAntialias method is:</p>
+
+<pre class="text">
+void DrawSetStrokeAntialias(DrawingWand *wand,
+ const MagickBooleanType stroke_antialias)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>stroke_antialias</dt>
+<dd>set to false (zero) to disable antialiasing </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeDashArray">DrawSetStrokeDashArray</a></h2>
+
+<p>DrawSetStrokeDashArray() specifies the pattern of dashes and gaps used to stroke paths. The stroke dash array represents an array of numbers that specify the lengths of alternating dashes and gaps in pixels. If an odd number of values is provided, then the list of values is repeated to yield an even number of values. To remove an existing dash array, pass a zero number_elements argument and null dasharray. A typical stroke dash array might contain the members 5 3 2.</p>
+
+<p>The format of the DrawSetStrokeDashArray method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetStrokeDashArray(DrawingWand *wand,
+ const size_t number_elements,const double *dasharray)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>number_elements</dt>
+<dd>number of elements in dash array </dd>
+
+<dd> </dd>
+<dt>dasharray</dt>
+<dd>dash array values </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeDashOffset">DrawSetStrokeDashOffset</a></h2>
+
+<p>DrawSetStrokeDashOffset() specifies the offset into the dash pattern to start the dash.</p>
+
+<p>The format of the DrawSetStrokeDashOffset method is:</p>
+
+<pre class="text">
+void DrawSetStrokeDashOffset(DrawingWand *wand,
+ const double dash_offset)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>dash_offset</dt>
+<dd>dash offset </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeLineCap">DrawSetStrokeLineCap</a></h2>
+
+<p>DrawSetStrokeLineCap() specifies the shape to be used at the end of open subpaths when they are stroked. Values of LineCap are UndefinedCap, ButtCap, RoundCap, and SquareCap.</p>
+
+<p>The format of the DrawSetStrokeLineCap method is:</p>
+
+<pre class="text">
+void DrawSetStrokeLineCap(DrawingWand *wand,
+ const LineCap linecap)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>linecap</dt>
+<dd>linecap style </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeLineJoin">DrawSetStrokeLineJoin</a></h2>
+
+<p>DrawSetStrokeLineJoin() specifies 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.</p>
+
+<p>The format of the DrawSetStrokeLineJoin method is:</p>
+
+<pre class="text">
+void DrawSetStrokeLineJoin(DrawingWand *wand,
+ const LineJoin linejoin)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>linejoin</dt>
+<dd>line join style </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeMiterLimit">DrawSetStrokeMiterLimit</a></h2>
+
+<p>DrawSetStrokeMiterLimit() specifies the 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'.</p>
+
+<p>The format of the DrawSetStrokeMiterLimit method is:</p>
+
+<pre class="text">
+void DrawSetStrokeMiterLimit(DrawingWand *wand,
+ const size_t miterlimit)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>miterlimit</dt>
+<dd>miter limit </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeOpacity">DrawSetStrokeOpacity</a></h2>
+
+<p>DrawSetStrokeOpacity() specifies the alpha of stroked object outlines.</p>
+
+<p>The format of the DrawSetStrokeOpacity method is:</p>
+
+<pre class="text">
+void DrawSetStrokeOpacity(DrawingWand *wand,
+ const double stroke_alpha)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>opacity</dt>
+<dd>stroke opacity. The value 1.0 is opaque. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetStrokeWidth">DrawSetStrokeWidth</a></h2>
+
+<p>DrawSetStrokeWidth() sets the width of the stroke used to draw object outlines.</p>
+
+<p>The format of the DrawSetStrokeWidth method is:</p>
+
+<pre class="text">
+void DrawSetStrokeWidth(DrawingWand *wand,
+ const double stroke_width)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>stroke_width</dt>
+<dd>stroke width </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextAlignment">DrawSetTextAlignment</a></h2>
+
+<p>DrawSetTextAlignment() specifies a text alignment to be applied when annotating with text.</p>
+
+<p>The format of the DrawSetTextAlignment method is:</p>
+
+<pre class="text">
+void DrawSetTextAlignment(DrawingWand *wand,const AlignType alignment)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>alignment</dt>
+<dd>text alignment. One of UndefinedAlign, LeftAlign, CenterAlign, or RightAlign. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextAntialias">DrawSetTextAntialias</a></h2>
+
+<p>DrawSetTextAntialias() controls whether text is antialiased. Text is antialiased by default.</p>
+
+<p>The format of the DrawSetTextAntialias method is:</p>
+
+<pre class="text">
+void DrawSetTextAntialias(DrawingWand *wand,
+ const MagickBooleanType text_antialias)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>text_antialias</dt>
+<dd>antialias boolean. Set to false (0) to disable antialiasing. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextDecoration">DrawSetTextDecoration</a></h2>
+
+<p>DrawSetTextDecoration() specifies a decoration to be applied when annotating with text.</p>
+
+<p>The format of the DrawSetTextDecoration method is:</p>
+
+<pre class="text">
+void DrawSetTextDecoration(DrawingWand *wand,
+ const DecorationType decoration)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>decoration</dt>
+<dd>text decoration. One of NoDecoration, UnderlineDecoration, OverlineDecoration, or LineThroughDecoration </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextEncoding">DrawSetTextEncoding</a></h2>
+
+<p>DrawSetTextEncoding() specifies the code set to use for text annotations. The only character encoding which may be specified at this time is "UTF-8" for representing Unicode as a sequence of bytes. Specify an empty string to set text encoding to the system's default. Successful text annotation using Unicode may require fonts designed to support Unicode.</p>
+
+<p>The format of the DrawSetTextEncoding method is:</p>
+
+<pre class="text">
+void DrawSetTextEncoding(DrawingWand *wand,const char *encoding)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>encoding</dt>
+<dd>character string specifying text encoding </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextKerning">DrawSetTextKerning</a></h2>
+
+<p>DrawSetTextKerning() sets the spacing between characters in text.</p>
+
+<p>The format of the DrawSetTextKerning method is:</p>
+
+<pre class="text">
+void DrawSetTextKerning(DrawingWand *wand,const double kerning)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>kerning</dt>
+<dd>text kerning </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextInterlineSpacing">DrawSetTextInterlineSpacing</a></h2>
+
+<p>DrawSetTextInterlineSpacing() sets the spacing between line in text.</p>
+
+<p>The format of the DrawSetInterlineSpacing method is:</p>
+
+<pre class="text">
+void DrawSetTextInterlineSpacing(DrawingWand *wand,
+ const double interline_spacing)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>interline_spacing</dt>
+<dd>text line spacing </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextInterwordSpacing">DrawSetTextInterwordSpacing</a></h2>
+
+<p>DrawSetTextInterwordSpacing() sets the spacing between words in text.</p>
+
+<p>The format of the DrawSetInterwordSpacing method is:</p>
+
+<pre class="text">
+void DrawSetTextInterwordSpacing(DrawingWand *wand,
+ const double interword_spacing)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>interword_spacing</dt>
+<dd>text word spacing </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetTextUnderColor">DrawSetTextUnderColor</a></h2>
+
+<p>DrawSetTextUnderColor() specifies the color of a background rectangle to place under text annotations.</p>
+
+<p>The format of the DrawSetTextUnderColor method is:</p>
+
+<pre class="text">
+void DrawSetTextUnderColor(DrawingWand *wand,
+ const PixelWand *under_wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>under_wand</dt>
+<dd>text under wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetVectorGraphics">DrawSetVectorGraphics</a></h2>
+
+<p>DrawSetVectorGraphics() sets the vector graphics associated with the specified wand. Use this method with DrawGetVectorGraphics() as a method to persist the vector graphics state.</p>
+
+<p>The format of the DrawSetVectorGraphics method is:</p>
+
+<pre class="text">
+MagickBooleanType DrawSetVectorGraphics(DrawingWand *wand,
+ const char *xml)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>xml</dt>
+<dd>the drawing wand XML. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSkewX">DrawSkewX</a></h2>
+
+<p>DrawSkewX() skews the current coordinate system in the horizontal direction.</p>
+
+<p>The format of the DrawSkewX method is:</p>
+
+<pre class="text">
+void DrawSkewX(DrawingWand *wand,const double degrees)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>degrees</dt>
+<dd>number of degrees to skew the coordinates </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSkewY">DrawSkewY</a></h2>
+
+<p>DrawSkewY() skews the current coordinate system in the vertical direction.</p>
+
+<p>The format of the DrawSkewY method is:</p>
+
+<pre class="text">
+void DrawSkewY(DrawingWand *wand,const double degrees)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>degrees</dt>
+<dd>number of degrees to skew the coordinates </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawTranslate">DrawTranslate</a></h2>
+
+<p>DrawTranslate() applies a translation to the current coordinate system which moves the coordinate system origin to the specified coordinate.</p>
+
+<p>The format of the DrawTranslate method is:</p>
+
+<pre class="text">
+void DrawTranslate(DrawingWand *wand,const double x,
+ const double y)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x</dt>
+<dd>new x ordinate for coordinate system origin </dd>
+
+<dd> </dd>
+<dt>y</dt>
+<dd>new y ordinate for coordinate system origin </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="DrawSetViewbox">DrawSetViewbox</a></h2>
+
+<p>DrawSetViewbox() sets the overall canvas size to be recorded with the drawing vector data. Usually this will be specified using the same size as the canvas image. When the vector data is saved to SVG or MVG formats, the viewbox is use to specify the size of the canvas image that a viewer will render the vector data on.</p>
+
+<p>The format of the DrawSetViewbox method is:</p>
+
+<pre class="text">
+void DrawSetViewbox(DrawingWand *wand,const double x1,const double y1,
+ const double x2,const double y2)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+<dt>x1</dt>
+<dd>left x ordinate </dd>
+
+<dd> </dd>
+<dt>y1</dt>
+<dd>top y ordinate </dd>
+
+<dd> </dd>
+<dt>x2</dt>
+<dd>right x ordinate </dd>
+
+<dd> </dd>
+<dt>y2</dt>
+<dd>bottom y ordinate </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="IsDrawingWand">IsDrawingWand</a></h2>
+
+<p>IsDrawingWand() returns MagickTrue if the wand is verified as a drawing wand.</p>
+
+<p>The format of the IsDrawingWand method is:</p>
+
+<pre class="text">
+MagickBooleanType IsDrawingWand(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="NewDrawingWand">NewDrawingWand</a></h2>
+
+<p>NewDrawingWand() returns a drawing wand required for all other methods in the API.</p>
+
+<p>The format of the NewDrawingWand method is:</p>
+
+<pre class="text">
+DrawingWand *NewDrawingWand(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="PeekDrawingWand">PeekDrawingWand</a></h2>
+
+<p>PeekDrawingWand() returns the current drawing wand.</p>
+
+<p>The format of the PeekDrawingWand method is:</p>
+
+<pre class="text">
+DrawInfo *PeekDrawingWand(const DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="PopDrawingWand">PopDrawingWand</a></h2>
+
+<p>PopDrawingWand() destroys the current drawing wand and returns to the previously pushed drawing wand. Multiple drawing wands may exist. It is an error to attempt to pop more drawing wands than have been pushed, and it is proper form to pop all drawing wands which have been pushed.</p>
+
+<p>The format of the PopDrawingWand method is:</p>
+
+<pre class="text">
+MagickBooleanType PopDrawingWand(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/drawing-wand_8c.html" id="PushDrawingWand">PushDrawingWand</a></h2>
+
+<p>PushDrawingWand() clones the current drawing wand to create a new drawing wand. The original drawing wand(s) may be returned to by invoking PopDrawingWand(). The drawing wands are stored on a drawing wand stack. For every Pop there must have already been an equivalent Push.</p>
+
+<p>The format of the PushDrawingWand method is:</p>
+
+<pre class="text">
+MagickBooleanType PushDrawingWand(DrawingWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the drawing wand. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="effect.html#"></a></p>
+<p class="text-center"><a href="effect.html#AdaptiveBlurImage">AdaptiveBlurImage</a> • <a href="effect.html#AdaptiveSharpenImage">AdaptiveSharpenImage</a> • <a href="effect.html#BlurImage">BlurImage</a> • <a href="effect.html#ConvolveImage">ConvolveImage</a> • <a href="effect.html#DespeckleImage">DespeckleImage</a> • <a href="effect.html#EdgeImage">EdgeImage</a> • <a href="effect.html#EmbossImage">EmbossImage</a> • <a href="effect.html#GaussianBlurImage">GaussianBlurImage</a> • <a href="effect.html#KuwaharaImage">KuwaharaImage</a> • <a href="effect.html#MotionBlurImage">MotionBlurImage</a> • <a href="effect.html#PreviewImage">PreviewImage</a> • <a href="effect.html#RotationalBlurImage">RotationalBlurImage</a> • <a href="effect.html#SelectiveBlurImage">SelectiveBlurImage</a> • <a href="effect.html#ShadeImage">ShadeImage</a> • <a href="effect.html#SharpenImage">SharpenImage</a> • <a href="effect.html#SpreadImage">SpreadImage</a> • <a href="effect.html#UnsharpMaskImage">UnsharpMaskImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveBlurImage">AdaptiveBlurImage</a></h2>
+
+<p>AdaptiveBlurImage() adaptively blurs the image by blurring less intensely near image edges and more intensely far from edges. We blur the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and AdaptiveBlurImage() selects a suitable radius for you.</p>
+
+<p>The format of the AdaptiveBlurImage method is:</p>
+
+<pre class="text">
+Image *AdaptiveBlurImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Laplacian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="AdaptiveSharpenImage">AdaptiveSharpenImage</a></h2>
+
+<p>AdaptiveSharpenImage() adaptively sharpens the image by sharpening more intensely near image edges and less intensely far from edges. We sharpen the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and AdaptiveSharpenImage() selects a suitable radius for you.</p>
+
+<p>The format of the AdaptiveSharpenImage method is:</p>
+
+<pre class="text">
+Image *AdaptiveSharpenImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Laplacian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="BlurImage">BlurImage</a></h2>
+
+<p>BlurImage() blurs an image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, the radius should be larger than sigma. Use a radius of 0 and BlurImage() selects a suitable radius for you.</p>
+
+<p>The format of the BlurImage method is:</p>
+
+<pre class="text">
+Image *BlurImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="ConvolveImage">ConvolveImage</a></h2>
+
+<p>ConvolveImage() applies a custom convolution kernel to the image.</p>
+
+<p>The format of the ConvolveImage method is:</p>
+
+<pre class="text">
+Image *ConvolveImage(const Image *image,const KernelInfo *kernel,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>kernel</dt>
+<dd>the filtering kernel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="DespeckleImage">DespeckleImage</a></h2>
+
+<p>DespeckleImage() reduces the speckle noise in an image while perserving the edges of the original image. A speckle removing filter uses a complementary hulling technique (raising pixels that are darker than their surrounding neighbors, then complementarily lowering pixels that are brighter than their surrounding neighbors) to reduce the speckle index of that image (reference Crimmins speckle removal).</p>
+
+<p>The format of the DespeckleImage method is:</p>
+
+<pre class="text">
+Image *DespeckleImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="EdgeImage">EdgeImage</a></h2>
+
+<p>EdgeImage() finds edges in an image. Radius defines the radius of the convolution filter. Use a radius of 0 and EdgeImage() selects a suitable radius for you.</p>
+
+<p>The format of the EdgeImage method is:</p>
+
+<pre class="text">
+Image *EdgeImage(const Image *image,const double radius,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the pixel neighborhood. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="EmbossImage">EmbossImage</a></h2>
+
+<p>EmbossImage() returns a grayscale image with a three-dimensional effect. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and Emboss() selects a suitable radius for you.</p>
+
+<p>The format of the EmbossImage method is:</p>
+
+<pre class="text">
+Image *EmbossImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the pixel neighborhood. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="GaussianBlurImage">GaussianBlurImage</a></h2>
+
+<p>GaussianBlurImage() blurs an image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, the radius should be larger than sigma. Use a radius of 0 and GaussianBlurImage() selects a suitable radius for you</p>
+
+<p>The format of the GaussianBlurImage method is:</p>
+
+<pre class="text">
+Image *GaussianBlurImage(const Image *image,onst double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="KuwaharaImage">KuwaharaImage</a></h2>
+
+<p>KuwaharaImage() is an edge preserving noise reduction filter.</p>
+
+<p>The format of the KuwaharaImage method is:</p>
+
+<pre class="text">
+Image *KuwaharaImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the square window radius. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="MotionBlurImage">MotionBlurImage</a></h2>
+
+<p>MotionBlurImage() simulates motion blur. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and MotionBlurImage() selects a suitable radius for you. Angle gives the angle of the blurring motion.</p>
+
+<p>Andrew Protano contributed this effect.</p>
+
+<p>The format of the MotionBlurImage method is:</p>
+
+<pre class="text">
+ Image *MotionBlurImage(const Image *image,const double radius,
+const double sigma,const double angle,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>angle</dt>
+<dd>Apply the effect along this angle. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="PreviewImage">PreviewImage</a></h2>
+
+<p>PreviewImage() tiles 9 thumbnails of the specified image with an image processing operation applied with varying parameters. This may be helpful pin-pointing an appropriate parameter for a particular image processing operation.</p>
+
+<p>The format of the PreviewImages method is:</p>
+
+<pre class="text">
+Image *PreviewImages(const Image *image,const PreviewType preview,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>preview</dt>
+<dd>the image processing operation. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="RotationalBlurImage">RotationalBlurImage</a></h2>
+
+<p>RotationalBlurImage() applies a radial blur to the image.</p>
+
+<p>Andrew Protano contributed this effect.</p>
+
+<p>The format of the RotationalBlurImage method is:</p>
+
+<pre class="text">
+ Image *RotationalBlurImage(const Image *image,const double angle,
+ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>angle</dt>
+<dd>the angle of the radial blur. </dd>
+
+<dd> </dd>
+<dt>blur</dt>
+<dd>the blur. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="SelectiveBlurImage">SelectiveBlurImage</a></h2>
+
+<p>SelectiveBlurImage() selectively blur pixels within a contrast threshold. It is similar to the unsharpen mask that sharpens everything with contrast above a certain threshold.</p>
+
+<p>The format of the SelectiveBlurImage method is:</p>
+
+<pre class="text">
+Image *SelectiveBlurImage(const Image *image,const double radius,
+ const double sigma,const double threshold,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>threshold</dt>
+<dd>only pixels within this contrast threshold are included in the blur operation. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="ShadeImage">ShadeImage</a></h2>
+
+<p>ShadeImage() shines a distant light on an image to create a three-dimensional effect. You control the positioning of the light with azimuth and elevation; azimuth is measured in degrees off the x axis and elevation is measured in pixels above the Z axis.</p>
+
+<p>The format of the ShadeImage method is:</p>
+
+<pre class="text">
+Image *ShadeImage(const Image *image,const MagickBooleanType gray,
+ const double azimuth,const double elevation,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>gray</dt>
+<dd>A value other than zero shades the intensity of each pixel. </dd>
+
+<dd> </dd>
+<dt>azimuth, elevation</dt>
+<dd> Define the light source direction. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="SharpenImage">SharpenImage</a></h2>
+
+<p>SharpenImage() sharpens the image. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and SharpenImage() selects a suitable radius for you.</p>
+
+<p>Using a separable kernel would be faster, but the negative weights cancel out on the corners of the kernel producing often undesirable ringing in the filtered result; this can be avoided by using a 2D gaussian shaped image sharpening kernel instead.</p>
+
+<p>The format of the SharpenImage method is:</p>
+
+<pre class="text">
+ Image *SharpenImage(const Image *image,const double radius,
+const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Laplacian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="SpreadImage">SpreadImage</a></h2>
+
+<p>SpreadImage() is a special effects method that randomly displaces each pixel in a block defined by the radius parameter.</p>
+
+<p>The format of the SpreadImage method is:</p>
+
+<pre class="text">
+Image *SpreadImage(const Image *image,const double radius,
+ const PixelInterpolateMethod method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd> choose a random pixel in a neighborhood of this extent. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd> the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/effect_8c.html" id="UnsharpMaskImage">UnsharpMaskImage</a></h2>
+
+<p>UnsharpMaskImage() sharpens one or more image channels. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and UnsharpMaskImage() selects a suitable radius for you.</p>
+
+<p>The format of the UnsharpMaskImage method is:</p>
+
+<pre class="text">
+ Image *UnsharpMaskImage(const Image *image,const double radius,
+const double sigma,const double amount,const double threshold,
+ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>gain</dt>
+<dd>the percentage of the difference between the original and the blur image that is added back into the original. </dd>
+
+<dd> </dd>
+<dt>threshold</dt>
+<dd>the threshold in pixels needed to apply the diffence gain. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="enhance.html#"></a></p>
+<p class="text-center"><a href="enhance.html#AutoGammaImage">AutoGammaImage</a> • <a href="enhance.html#AutoLevelImage">AutoLevelImage</a> • <a href="enhance.html#BrightnessContrastImage">BrightnessContrastImage</a> • <a href="enhance.html#ClutImage">ClutImage</a> • <a href="enhance.html#ColorDecisionListImage">ColorDecisionListImage</a> • <a href="enhance.html#ContrastImage">ContrastImage</a> • <a href="enhance.html#ContrastStretchImage">ContrastStretchImage</a> • <a href="enhance.html#EnhanceImage">EnhanceImage</a> • <a href="enhance.html#EqualizeImage">EqualizeImage</a> • <a href="enhance.html#GammaImage">GammaImage</a> • <a href="enhance.html#GrayscaleImage">GrayscaleImage</a> • <a href="enhance.html#HaldClutImage">HaldClutImage</a> • <a href="enhance.html#LevelImage">LevelImage</a> • <a href="enhance.html#LevelizeImage">LevelizeImage</a> • <a href="enhance.html#LevelImageColors">LevelImageColors</a> • <a href="enhance.html#LinearStretchImage">LinearStretchImage</a> • <a href="enhance.html#ModulateImage">ModulateImage</a> • <a href="enhance.html#NegateImage">NegateImage</a> • <a href="enhance.html#The%20NormalizeImage">The NormalizeImage</a> • <a href="enhance.html#SigmoidalContrastImage">SigmoidalContrastImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="AutoGammaImage">AutoGammaImage</a></h2>
+
+<p>AutoGammaImage() extract the 'mean' from the image and adjust the image to try make set its gamma appropriatally.</p>
+
+<p>The format of the AutoGammaImage method is:</p>
+
+<pre class="text">
+MagickBooleanType AutoGammaImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>The image to auto-level </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="AutoLevelImage">AutoLevelImage</a></h2>
+
+<p>AutoLevelImage() adjusts the levels of a particular image channel by scaling the minimum and maximum values to the full quantum range.</p>
+
+<p>The format of the LevelImage method is:</p>
+
+<pre class="text">
+MagickBooleanType AutoLevelImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>The image to auto-level </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="BrightnessContrastImage">BrightnessContrastImage</a></h2>
+
+<p>BrightnessContrastImage() changes the brightness and/or contrast of an image. It converts the brightness and contrast parameters into slope and intercept and calls a polynomical function to apply to the image.</p>
+
+<p>The format of the BrightnessContrastImage method is:</p>
+
+<pre class="text">
+MagickBooleanType BrightnessContrastImage(Image *image,
+ const double brightness,const double contrast,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>brightness</dt>
+<dd>the brightness percent (-100 .. 100). </dd>
+
+<dd> </dd>
+<dt>contrast</dt>
+<dd>the contrast percent (-100 .. 100). </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="ClutImage">ClutImage</a></h2>
+
+<p>ClutImage() replaces each color value in the given image, by using it as an index to lookup a replacement color value in a Color Look UP Table in the form of an image. The values are extracted along a diagonal of the CLUT image so either a horizontal or vertial gradient image can be used.</p>
+
+<p>Typically this is used to either re-color a gray-scale image according to a color gradient in the CLUT image, or to perform a freeform histogram (level) adjustment according to the (typically gray-scale) gradient in the CLUT image.</p>
+
+<p>When the 'channel' mask includes the matte/alpha transparency channel but one image has no such channel it is assumed that that image is a simple gray-scale image that will effect the alpha channel values, either for gray-scale coloring (with transparent or semi-transparent colors), or a histogram adjustment of existing alpha channel values. If both images have matte channels, direct and normal indexing is applied, which is rarely used.</p>
+
+<p>The format of the ClutImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ClutImage(Image *image,Image *clut_image,
+ const PixelInterpolateMethod method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image, which is replaced by indexed CLUT values </dd>
+
+<dd> </dd>
+<dt>clut_image</dt>
+<dd>the color lookup table image for replacement color values. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="ColorDecisionListImage">ColorDecisionListImage</a></h2>
+
+<p>ColorDecisionListImage() accepts a lightweight Color Correction Collection (CCC) file which solely contains one or more color corrections and applies the correction to the image. Here is a sample CCC file:</p>
+
+<pre class="text">
+ <ColorCorrectionCollection xmlns="urn:ASC:CDL:v1.2">
+ <ColorCorrection id="cc03345">
+ <SOPNode>
+ <Slope> 0.9 1.2 0.5 </Slope>
+ <Offset> 0.4 -0.5 0.6 </Offset>
+ <Power> 1.0 0.8 1.5 </Power>
+ </SOPNode>
+ <SATNode>
+ <Saturation> 0.85 </Saturation>
+ </SATNode>
+ </ColorCorrection>
+ </ColorCorrectionCollection>
+</pre>
+
+<p>which includes the slop, offset, and power for each of the RGB channels as well as the saturation.</p>
+
+<p>The format of the ColorDecisionListImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ColorDecisionListImage(Image *image,
+ const char *color_correction_collection,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>color_correction_collection</dt>
+<dd>the color correction collection in XML. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="ContrastImage">ContrastImage</a></h2>
+
+<p>ContrastImage() enhances the intensity differences between the lighter and darker elements of the image. Set sharpen to a MagickTrue to increase the image contrast otherwise the contrast is reduced.</p>
+
+<p>The format of the ContrastImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ContrastImage(Image *image,
+ const MagickBooleanType sharpen,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>sharpen</dt>
+<dd>Increase or decrease image contrast. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="ContrastStretchImage">ContrastStretchImage</a></h2>
+
+<p>ContrastStretchImage() is a simple image enhancement technique that attempts to improve the contrast in an image by 'stretching' the range of intensity values it contains to span a desired range of values. It differs from the more sophisticated histogram equalization in that it can only apply a linear scaling function to the image pixel values. As a result the 'enhancement' is less harsh.</p>
+
+<p>The format of the ContrastStretchImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ContrastStretchImage(Image *image,
+ const char *levels,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>black_point</dt>
+<dd>the black point. </dd>
+
+<dd> </dd>
+<dt>white_point</dt>
+<dd>the white point. </dd>
+
+<dd> </dd>
+<dt>levels</dt>
+<dd>Specify the levels where the black and white points have the range of 0 to number-of-pixels (e.g. 1, 10x90, etc.). </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="EnhanceImage">EnhanceImage</a></h2>
+
+<p>EnhanceImage() applies a digital filter that improves the quality of a noisy image.</p>
+
+<p>The format of the EnhanceImage method is:</p>
+
+<pre class="text">
+Image *EnhanceImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="EqualizeImage">EqualizeImage</a></h2>
+
+<p>EqualizeImage() applies a histogram equalization to the image.</p>
+
+<p>The format of the EqualizeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType EqualizeImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="GammaImage">GammaImage</a></h2>
+
+<p>GammaImage() gamma-corrects a particular image channel. The same image viewed on different devices will have perceptual differences in the way the image's intensities are represented on the screen. Specify individual gamma levels for the red, green, and blue channels, or adjust all three with the gamma parameter. Values typically range from 0.8 to 2.3.</p>
+
+<p>You can also reduce the influence of a particular channel with a gamma value of 0.</p>
+
+<p>The format of the GammaImage method is:</p>
+
+<pre class="text">
+MagickBooleanType GammaImage(Image *image,const double gamma,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>level</dt>
+<dd>the image gamma as a string (e.g. 1.6,1.2,1.0). </dd>
+
+<dd> </dd>
+<dt>gamma</dt>
+<dd>the image gamma. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="GrayscaleImage">GrayscaleImage</a></h2>
+
+<p>GrayscaleImage() converts the image to grayscale.</p>
+
+<p>The format of the GrayscaleImage method is:</p>
+
+<pre class="text">
+MagickBooleanType GrayscaleImage(Image *image,
+ const PixelIntensityMethod method ,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the pixel intensity method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="HaldClutImage">HaldClutImage</a></h2>
+
+<p>HaldClutImage() applies a Hald color lookup table to the image. A Hald color lookup table is a 3-dimensional color cube mapped to 2 dimensions. Create it with the HALD coder. You can apply any color transformation to the Hald image and then use this method to apply the transform to the image.</p>
+
+<p>The format of the HaldClutImage method is:</p>
+
+<pre class="text">
+MagickBooleanType HaldClutImage(Image *image,Image *hald_image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image, which is replaced by indexed CLUT values </dd>
+
+<dd> </dd>
+<dt>hald_image</dt>
+<dd>the color lookup table image for replacement color values. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="LevelImage">LevelImage</a></h2>
+
+<p>LevelImage() adjusts the levels of a particular image channel by scaling the colors falling between specified white and black points to the full available quantum range.</p>
+
+<p>The parameters provided represent the black, and white points. The black point specifies the darkest color in the image. Colors darker than the black point are set to zero. White point specifies the lightest color in the image. Colors brighter than the white point are set to the maximum quantum value.</p>
+
+<p>If a '!' flag is given, map black and white colors to the given levels rather than mapping those levels to black and white. See LevelizeImage() below.</p>
+
+<p>Gamma specifies a gamma correction to apply to the image.</p>
+
+<p>The format of the LevelImage method is:</p>
+
+<pre class="text">
+MagickBooleanType LevelImage(Image *image,const double black_point,
+ const double white_point,const double gamma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>black_point</dt>
+<dd>The level to map zero (black) to. </dd>
+
+<dd> </dd>
+<dt>white_point</dt>
+<dd>The level to map QuantumRange (white) to. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="LevelizeImage">LevelizeImage</a></h2>
+
+<p>LevelizeImage() applies the reversed LevelImage() operation to just the specific channels specified. It compresses the full range of color values, so that they lie between the given black and white points. Gamma is applied before the values are mapped.</p>
+
+<p>LevelizeImage() can be called with by using a +level command line API option, or using a '!' on a -level or LevelImage() geometry string.</p>
+
+<p>It can be used to de-contrast a greyscale image to the exact levels specified. Or by using specific levels for each channel of an image you can convert a gray-scale image to any linear color gradient, according to those levels.</p>
+
+<p>The format of the LevelizeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType LevelizeImage(Image *image,const double black_point,
+ const double white_point,const double gamma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>black_point</dt>
+<dd>The level to map zero (black) to. </dd>
+
+<dd> </dd>
+<dt>white_point</dt>
+<dd>The level to map QuantumRange (white) to. </dd>
+
+<dd> </dd>
+<dt>gamma</dt>
+<dd>adjust gamma by this factor before mapping values. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="LevelImageColors">LevelImageColors</a></h2>
+
+<p>LevelImageColors() maps the given color to "black" and "white" values, linearly spreading out the colors, and level values on a channel by channel bases, as per LevelImage(). The given colors allows you to specify different level ranges for each of the color channels separately.</p>
+
+<p>If the boolean 'invert' is set true the image values will modifyed in the reverse direction. That is any existing "black" and "white" colors in the image will become the color values given, with all other values compressed appropriatally. This effectivally maps a greyscale gradient into the given color gradient.</p>
+
+<p>The format of the LevelImageColors method is:</p>
+
+<pre class="text">
+ MagickBooleanType LevelImageColors(Image *image,
+const PixelInfo *black_color,const PixelInfo *white_color,
+const MagickBooleanType invert,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>black_color</dt>
+<dd>The color to map black to/from </dd>
+
+<dd> </dd>
+<dt>white_point</dt>
+<dd>The color to map white to/from </dd>
+
+<dd> </dd>
+<dt>invert</dt>
+<dd>if true map the colors (levelize), rather than from (level) </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="LinearStretchImage">LinearStretchImage</a></h2>
+
+<p>LinearStretchImage() discards any pixels below the black point and above the white point and levels the remaining pixels.</p>
+
+<p>The format of the LinearStretchImage method is:</p>
+
+<pre class="text">
+MagickBooleanType LinearStretchImage(Image *image,
+ const double black_point,const double white_point,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>black_point</dt>
+<dd>the black point. </dd>
+
+<dd> </dd>
+<dt>white_point</dt>
+<dd>the white point. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="ModulateImage">ModulateImage</a></h2>
+
+<p>ModulateImage() lets you control the brightness, saturation, and hue of an image. Modulate represents the brightness, saturation, and hue as one parameter (e.g. 90,150,100). If the image colorspace is HSL, the modulation is lightness, saturation, and hue. For HWB, use blackness, whiteness, and hue. And for HCL, use chrome, luma, and hue.</p>
+
+<p>The format of the ModulateImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ModulateImage(Image *image,const char *modulate,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>modulate</dt>
+<dd>Define the percent change in brightness, saturation, and hue. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="NegateImage">NegateImage</a></h2>
+
+<p>NegateImage() negates the colors in the reference image. The grayscale option means that only grayscale values within the image are negated.</p>
+
+<p>The format of the NegateImage method is:</p>
+
+<pre class="text">
+MagickBooleanType NegateImage(Image *image,
+ const MagickBooleanType grayscale,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>grayscale</dt>
+<dd>If MagickTrue, only negate grayscale pixels within the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="The_NormalizeImage">The NormalizeImage</a></h2>
+
+<p>The NormalizeImage() method enhances the contrast of a color image by mapping the darkest 2 percent of all pixel to black and the brightest 1 percent to white.</p>
+
+<p>The format of the NormalizeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType NormalizeImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/enhance_8c.html" id="SigmoidalContrastImage">SigmoidalContrastImage</a></h2>
+
+<p>SigmoidalContrastImage() adjusts the contrast of an image with a non-linear sigmoidal contrast algorithm. Increase the contrast of the image using a sigmoidal transfer function without saturating highlights or shadows. Contrast indicates how much to increase the contrast (0 is none; 3 is typical; 20 is pushing it); mid-point indicates where midtones fall in the resultant image (0 is white; 50 is middle-gray; 100 is black). Set sharpen to MagickTrue to increase the image contrast otherwise the contrast is reduced.</p>
+
+<p>The format of the SigmoidalContrastImage method is:</p>
+
+<pre class="text">
+MagickBooleanType SigmoidalContrastImage(Image *image,
+ const MagickBooleanType sharpen,const char *levels,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>sharpen</dt>
+<dd>Increase or decrease image contrast. </dd>
+
+<dd> </dd>
+<dt>contrast</dt>
+<dd>strength of the contrast, the larger the number the more 'threshold-like' it becomes. </dd>
+
+<dd> </dd>
+<dt>midpoint</dt>
+<dd>midpoint of the function as a color value 0 to QuantumRange. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="exception.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="AcquireExceptionInfo">AcquireExceptionInfo</a></h2>
+
+<p>AcquireExceptionInfo() allocates the ExceptionInfo structure.</p>
+
+<p>The format of the AcquireExceptionInfo method is:</p>
+
+<pre class="text">
+ExceptionInfo *AcquireExceptionInfo(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="ClearMagickException">ClearMagickException</a></h2>
+
+<p>ClearMagickException() clears any exception that may not have been caught yet.</p>
+
+<p>The format of the ClearMagickException method is:</p>
+
+<pre class="text">
+ClearMagickException(ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="CatchException">CatchException</a></h2>
+
+<p>CatchException() returns if no exceptions is found otherwise it reports the exception as a warning, error, or fatal depending on the severity.</p>
+
+<p>The format of the CatchException method is:</p>
+
+<pre class="text">
+CatchException(ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="CloneExceptionInfo">CloneExceptionInfo</a></h2>
+
+<p>CloneExceptionInfo() clones the ExceptionInfo structure.</p>
+
+<p>The format of the CloneExceptionInfo method is:</p>
+
+<pre class="text">
+ExceptionInfo *CloneException(ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="DestroyExceptionInfo">DestroyExceptionInfo</a></h2>
+
+<p>DestroyExceptionInfo() deallocates memory associated with an exception.</p>
+
+<p>The format of the DestroyExceptionInfo method is:</p>
+
+<pre class="text">
+ExceptionInfo *DestroyExceptionInfo(ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="GetExceptionMessage">GetExceptionMessage</a></h2>
+
+<p>GetExceptionMessage() returns the error message defined by the specified error code.</p>
+
+<p>The format of the GetExceptionMessage method is:</p>
+
+<pre class="text">
+char *GetExceptionMessage(const int error)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>error</dt>
+<dd>the error code. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="GetLocaleExceptionMessage">GetLocaleExceptionMessage</a></h2>
+
+<p>GetLocaleExceptionMessage() converts a enumerated exception severity and tag to a message in the current locale.</p>
+
+<p>The format of the GetLocaleExceptionMessage method is:</p>
+
+<pre class="text">
+const char *GetLocaleExceptionMessage(const ExceptionType severity,
+ const char *tag)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>severity</dt>
+<dd>the severity of the exception. </dd>
+
+<dd> </dd>
+<dt>tag</dt>
+<dd>the message tag. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="InheritException">InheritException</a></h2>
+
+<p>InheritException() inherits an exception from a related exception.</p>
+
+<p>The format of the InheritException method is:</p>
+
+<pre class="text">
+InheritException(ExceptionInfo *exception,const ExceptionInfo *relative)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+<dt>relative</dt>
+<dd>the related exception info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="InitializeExceptionInfo">InitializeExceptionInfo</a></h2>
+
+<p>InitializeExceptionInfo() initializes an exception to default values.</p>
+
+<p>The format of the InitializeExceptionInfo method is:</p>
+
+<pre class="text">
+InitializeExceptionInfo(ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="MagickError">MagickError</a></h2>
+
+<p>MagickError() calls the exception handler methods with an error reason.</p>
+
+<p>The format of the MagickError method is:</p>
+
+<pre class="text">
+void MagickError(const ExceptionType error,const char *reason,
+ const char *description)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>Specifies the numeric error category. </dd>
+
+<dd> </dd>
+<dt>reason</dt>
+<dd>Specifies the reason to display before terminating the program. </dd>
+
+<dd> </dd>
+<dt>description</dt>
+<dd>Specifies any description to the reason. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="MagickFatalError">MagickFatalError</a></h2>
+
+<p>MagickFatalError() calls the fatal exception handler methods with an error reason.</p>
+
+<p>The format of the MagickError method is:</p>
+
+<pre class="text">
+void MagickFatalError(const ExceptionType error,const char *reason,
+ const char *description)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>Specifies the numeric error category. </dd>
+
+<dd> </dd>
+<dt>reason</dt>
+<dd>Specifies the reason to display before terminating the program. </dd>
+
+<dd> </dd>
+<dt>description</dt>
+<dd>Specifies any description to the reason. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="MagickWarning">MagickWarning</a></h2>
+
+<p>MagickWarning() calls the warning handler methods with a warning reason.</p>
+
+<p>The format of the MagickWarning method is:</p>
+
+<pre class="text">
+void MagickWarning(const ExceptionType warning,const char *reason,
+ const char *description)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>warning</dt>
+<dd>the warning severity. </dd>
+
+<dd> </dd>
+<dt>reason</dt>
+<dd>Define the reason for the warning. </dd>
+
+<dd> </dd>
+<dt>description</dt>
+<dd>Describe the warning. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="SetErrorHandler">SetErrorHandler</a></h2>
+
+<p>SetErrorHandler() sets the exception handler to the specified method and returns the previous exception handler.</p>
+
+<p>The format of the SetErrorHandler method is:</p>
+
+<pre class="text">
+ErrorHandler SetErrorHandler(ErrorHandler handler)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>handler</dt>
+<dd>the method to handle errors. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="SetFatalErrorHandler">SetFatalErrorHandler</a></h2>
+
+<p>SetFatalErrorHandler() sets the fatal exception handler to the specified method and returns the previous fatal exception handler.</p>
+
+<p>The format of the SetErrorHandler method is:</p>
+
+<pre class="text">
+ErrorHandler SetErrorHandler(ErrorHandler handler)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>handler</dt>
+<dd>the method to handle errors. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="SetWarningHandler">SetWarningHandler</a></h2>
+
+<p>SetWarningHandler() sets the warning handler to the specified method and returns the previous warning handler.</p>
+
+<p>The format of the SetWarningHandler method is:</p>
+
+<pre class="text">
+ErrorHandler SetWarningHandler(ErrorHandler handler)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>handler</dt>
+<dd>the method to handle warnings. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/exception_8c.html" id="ThrowException">ThrowException</a></h2>
+
+<p>ThrowException() throws an exception with the specified severity code, reason, and optional description.</p>
+
+<p>The format of the ThrowException method is:</p>
+
+<pre class="text">
+MagickBooleanType ThrowException(ExceptionInfo *exception,
+ const ExceptionType severity,const char *reason,
+ const char *description)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>the exception info. </dd>
+
+<dd> </dd>
+<dt>severity</dt>
+<dd>the severity of the exception. </dd>
+
+<dd> </dd>
+<dt>reason</dt>
+<dd>the reason for the exception. </dd>
+
+<dd> </dd>
+<dt>description</dt>
+<dd>the exception description. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="feature.html#"></a></p>
+<p class="text-center"><a href="feature.html#CannyEdgeImage">CannyEdgeImage</a> • <a href="feature.html#GetImageFeatures">GetImageFeatures</a> • <a href="feature.html#Use%20HoughLineImage">Use HoughLineImage</a> • <a href="feature.html#MeanShiftImage">MeanShiftImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/feature_8c.html" id="CannyEdgeImage">CannyEdgeImage</a></h2>
+
+<p>CannyEdgeImage() uses a multi-stage algorithm to detect a wide range of edges in images.</p>
+
+<p>The format of the CannyEdgeImage method is:</p>
+
+<pre class="text">
+Image *CannyEdgeImage(const Image *image,const double radius,
+ const double sigma,const double lower_percent,
+ const double upper_percent,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the gaussian smoothing filter. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the sigma of the gaussian smoothing filter. </dd>
+
+<dd> </dd>
+<dt>lower_precent</dt>
+<dd>percentage of edge pixels in the lower threshold. </dd>
+
+<dd> </dd>
+<dt>upper_percent</dt>
+<dd>percentage of edge pixels in the upper threshold. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/feature_8c.html" id="GetImageFeatures">GetImageFeatures</a></h2>
+
+<p>GetImageFeatures() returns features for each channel in the image in each of four directions (horizontal, vertical, left and right diagonals) for the specified distance. The features include the angular second moment, contrast, correlation, sum of squares: variance, inverse difference moment, sum average, sum varience, sum entropy, entropy, difference variance, difference entropy, information measures of correlation 1, information measures of correlation 2, and maximum correlation coefficient. You can access the red channel contrast, for example, like this:</p>
+
+<pre class="text">
+channel_features=GetImageFeatures(image,1,exception);
+contrast=channel_features[RedPixelChannel].contrast[0];
+</pre>
+
+<p>Use MagickRelinquishMemory() to free the features buffer.</p>
+
+<p>The format of the GetImageFeatures method is:</p>
+
+<pre class="text">
+ChannelFeatures *GetImageFeatures(const Image *image,
+ const size_t distance,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>distance</dt>
+<dd>the distance. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/feature_8c.html" id="Use_HoughLineImage">Use HoughLineImage</a></h2>
+
+<p>Use HoughLineImage() in conjunction with any binary edge extracted image (we recommand Canny) to identify lines in the image. The algorithm accumulates counts for every white pixel for every possible orientation (for angles from 0 to 179 in 1 degree increments) and distance from the center of the image to the corner (in 1 px increments) and stores the counts in an accumulator matrix of angle vs distance. The size of the accumulator is 180x(diagonal/2). Next it searches this space for peaks in counts and converts the locations of the peaks to slope and intercept in the normal x,y input image space. Use the slope/intercepts to find the endpoints clipped to the bounds of the image. The lines are then drawn. The counts are a measure of the length of the lines</p>
+
+<p>The format of the HoughLineImage method is:</p>
+
+<pre class="text">
+Image *HoughLineImage(const Image *image,const size_t width,
+ const size_t height,const size_t threshold,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>width, height</dt>
+<dd>find line pairs as local maxima in this neighborhood. </dd>
+
+<dd> </dd>
+<dt>threshold</dt>
+<dd>the line count threshold. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/feature_8c.html" id="MeanShiftImage">MeanShiftImage</a></h2>
+
+<p>MeanShiftImage() delineate arbitrarily shaped clusters in the image. For each pixel, it visits all the pixels in the neighborhood specified by the window centered at the pixel and excludes those that are outside the radius=(window-1)/2 surrounding the pixel. From those pixels, it finds those that are within the specified color distance from the current mean, and computes a new x,y centroid from those coordinates and a new mean. This new x,y centroid is used as the center for a new window. This process iterates until it converges and the final mean is replaces the (original window center) pixel value. It repeats this process for the next pixel, etc., until it processes all pixels in the image. Results are typically better with colorspaces other than sRGB. We recommend YIQ, YUV or YCbCr.</p>
+
+<p>The format of the MeanShiftImage method is:</p>
+
+<pre class="text">
+Image *MeanShiftImage(const Image *image,const size_t width,
+ const size_t height,const double color_distance,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>width, height</dt>
+<dd>find pixels in this neighborhood. </dd>
+
+<dd> </dd>
+<dt>color_distance</dt>
+<dd>the color distance. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="fourier.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fourier_8c.html" id="ComplexImages">ComplexImages</a></h2>
+
+<p>ComplexImages() performs complex mathematics on an image sequence.</p>
+
+<p>The format of the ComplexImages method is:</p>
+
+<pre class="text">
+MagickBooleanType ComplexImages(Image *images,
+ const ComplexOperator op,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>op</dt>
+<dd>A complex op. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fourier_8c.html" id="ForwardFourierTransformImage">ForwardFourierTransformImage</a></h2>
+
+<p>ForwardFourierTransformImage() implements the discrete Fourier transform (DFT) of the image either as a magnitude / phase or real / imaginary image pair.</p>
+
+<p>The format of the ForwadFourierTransformImage method is:</p>
+
+<pre class="text">
+Image *ForwardFourierTransformImage(const Image *image,
+ const MagickBooleanType modulus,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>modulus</dt>
+<dd>if true, return as transform as a magnitude / phase pair otherwise a real / imaginary image pair. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fourier_8c.html" id="InverseFourierTransformImage">InverseFourierTransformImage</a></h2>
+
+<p>InverseFourierTransformImage() implements the inverse discrete Fourier transform (DFT) of the image either as a magnitude / phase or real / imaginary image pair.</p>
+
+<p>The format of the InverseFourierTransformImage method is:</p>
+
+<pre class="text">
+Image *InverseFourierTransformImage(const Image *magnitude_image,
+ const Image *phase_image,const MagickBooleanType modulus,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>magnitude_image</dt>
+<dd>the magnitude or real image. </dd>
+
+<dd> </dd>
+<dt>phase_image</dt>
+<dd>the phase or imaginary image. </dd>
+
+<dd> </dd>
+<dt>modulus</dt>
+<dd>if true, return transform as a magnitude / phase pair otherwise a real / imaginary image pair. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="fx.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="AddNoiseImage">AddNoiseImage</a></h2>
+
+<p>AddNoiseImage() adds random noise to the image.</p>
+
+<p>The format of the AddNoiseImage method is:</p>
+
+<pre class="text">
+Image *AddNoiseImage(const Image *image,const NoiseType noise_type,
+ const double attenuate,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>channel</dt>
+<dd>the channel type. </dd>
+
+<dd> </dd>
+<dt>noise_type</dt>
+<dd> The type of noise: Uniform, Gaussian, Multiplicative, Impulse, Laplacian, or Poisson. </dd>
+
+<dd> </dd>
+<dt>attenuate</dt>
+<dd> attenuate the random distribution. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="BlueShiftImage">BlueShiftImage</a></h2>
+
+<p>BlueShiftImage() mutes the colors of the image to simulate a scene at nighttime in the moonlight.</p>
+
+<p>The format of the BlueShiftImage method is:</p>
+
+<pre class="text">
+Image *BlueShiftImage(const Image *image,const double factor,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>factor</dt>
+<dd>the shift factor. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="CharcoalImage">CharcoalImage</a></h2>
+
+<p>CharcoalImage() creates a new image that is a copy of an existing one with the edge highlighted. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>The format of the CharcoalImage method is:</p>
+
+<pre class="text">
+Image *CharcoalImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the pixel neighborhood. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="ColorizeImage">ColorizeImage</a></h2>
+
+<p>ColorizeImage() blends the fill color with each pixel in the image. A percentage blend is specified with opacity. Control the application of different color components by specifying a different percentage for each component (e.g. 90/100/10 is 90 red, 100 green, and 10 blue).</p>
+
+<p>The format of the ColorizeImage method is:</p>
+
+<pre class="text">
+Image *ColorizeImage(const Image *image,const char *blend,
+ const PixelInfo *colorize,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>blend</dt>
+<dd> A character string indicating the level of blending as a percentage. </dd>
+
+<dd> </dd>
+<dt>colorize</dt>
+<dd>A color value. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="ColorMatrixImage">ColorMatrixImage</a></h2>
+
+<p>ColorMatrixImage() applies color transformation to an image. This method permits saturation changes, hue rotation, luminance to alpha, and various other effects. Although variable-sized transformation matrices can be used, typically one uses a 5x5 matrix for an RGBA image and a 6x6 for CMYKA (or RGBA with offsets). The matrix is similar to those used by Adobe Flash except offsets are in column 6 rather than 5 (in support of CMYKA images) and offsets are normalized (divide Flash offset by 255).</p>
+
+<p>The format of the ColorMatrixImage method is:</p>
+
+<pre class="text">
+Image *ColorMatrixImage(const Image *image,
+ const KernelInfo *color_matrix,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>color_matrix</dt>
+<dd> the color matrix. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="FxImage">FxImage</a></h2>
+
+<p>FxImage() applies a mathematical expression to the specified image.</p>
+
+<p>The format of the FxImage method is:</p>
+
+<pre class="text">
+Image *FxImage(const Image *image,const char *expression,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>expression</dt>
+<dd>A mathematical expression. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="ImplodeImage">ImplodeImage</a></h2>
+
+<p>ImplodeImage() creates a new image that is a copy of an existing one with the image pixels "implode" by the specified percentage. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>The format of the ImplodeImage method is:</p>
+
+<pre class="text">
+Image *ImplodeImage(const Image *image,const double amount,
+ const PixelInterpolateMethod method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>implode_image</dt>
+<dd>Method ImplodeImage returns a pointer to the image after it is implode. A null image is returned if there is a memory shortage. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>amount</dt>
+<dd> Define the extent of the implosion. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="The_MorphImages">The MorphImages</a></h2>
+
+<p>The MorphImages() method requires a minimum of two images. The first image is transformed into the second by a number of intervening images as specified by frames.</p>
+
+<p>The format of the MorphImage method is:</p>
+
+<pre class="text">
+Image *MorphImages(const Image *image,const size_t number_frames,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>number_frames</dt>
+<dd> Define the number of in-between image to generate. The more in-between frames, the smoother the morph. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="PlasmaImage">PlasmaImage</a></h2>
+
+<p>PlasmaImage() initializes an image with plasma fractal values. The image must be initialized with a base color and the random number generator seeded before this method is called.</p>
+
+<p>The format of the PlasmaImage method is:</p>
+
+<pre class="text">
+MagickBooleanType PlasmaImage(Image *image,const SegmentInfo *segment,
+ size_t attenuate,size_t depth,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>segment</dt>
+<dd> Define the region to apply plasma fractals values. </dd>
+
+<dd> </dd>
+<dt>attenuate</dt>
+<dd>Define the plasma attenuation factor. </dd>
+
+<dd> </dd>
+<dt>depth</dt>
+<dd>Limit the plasma recursion depth. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="PolaroidImage">PolaroidImage</a></h2>
+
+<p>PolaroidImage() simulates a Polaroid picture.</p>
+
+<p>The format of the AnnotateImage method is:</p>
+
+<pre class="text">
+Image *PolaroidImage(const Image *image,const DrawInfo *draw_info,
+ const char *caption,const double angle,
+ const PixelInterpolateMethod method,ExceptionInfo exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>caption</dt>
+<dd>the Polaroid caption. </dd>
+
+<dd> </dd>
+<dt>angle</dt>
+<dd>Apply the effect along this angle. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="MagickSepiaToneImage">MagickSepiaToneImage</a></h2>
+
+<p>MagickSepiaToneImage() applies a special effect to the image, similar to the effect achieved in a photo darkroom by sepia toning. Threshold ranges from 0 to QuantumRange and is a measure of the extent of the sepia toning. A threshold of 80 is a good starting point for a reasonable tone.</p>
+
+<p>The format of the SepiaToneImage method is:</p>
+
+<pre class="text">
+Image *SepiaToneImage(const Image *image,const double threshold,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>threshold</dt>
+<dd>the tone threshold. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="ShadowImage">ShadowImage</a></h2>
+
+<p>ShadowImage() simulates a shadow from the specified image and returns it.</p>
+
+<p>The format of the ShadowImage method is:</p>
+
+<pre class="text">
+Image *ShadowImage(const Image *image,const double alpha,
+ const double sigma,const ssize_t x_offset,const ssize_t y_offset,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>alpha</dt>
+<dd>percentage transparency. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>x_offset</dt>
+<dd>the shadow x-offset. </dd>
+
+<dd> </dd>
+<dt>y_offset</dt>
+<dd>the shadow y-offset. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="SketchImage">SketchImage</a></h2>
+
+<p>SketchImage() simulates a pencil sketch. We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma). For reasonable results, radius should be larger than sigma. Use a radius of 0 and SketchImage() selects a suitable radius for you. Angle gives the angle of the sketch.</p>
+
+<p>The format of the SketchImage method is:</p>
+
+<pre class="text">
+ Image *SketchImage(const Image *image,const double radius,
+const double sigma,const double angle,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center pixel. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>angle</dt>
+<dd>apply the effect along this angle. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="SolarizeImage">SolarizeImage</a></h2>
+
+<p>SolarizeImage() applies a special effect to the image, similar to the effect achieved in a photo darkroom by selectively exposing areas of photo sensitive paper to light. Threshold ranges from 0 to QuantumRange and is a measure of the extent of the solarization.</p>
+
+<p>The format of the SolarizeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType SolarizeImage(Image *image,const double threshold,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>threshold</dt>
+<dd> Define the extent of the solarization. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="SteganoImage">SteganoImage</a></h2>
+
+<p>SteganoImage() hides a digital watermark within the image. Recover the hidden watermark later to prove that the authenticity of an image. Offset defines the start position within the image to hide the watermark.</p>
+
+<p>The format of the SteganoImage method is:</p>
+
+<pre class="text">
+Image *SteganoImage(const Image *image,Image *watermark,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>watermark</dt>
+<dd>the watermark image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="StereoAnaglyphImage">StereoAnaglyphImage</a></h2>
+
+<p>StereoAnaglyphImage() combines two images and produces a single image that is the composite of a left and right image of a stereo pair. Special red-green stereo glasses are required to view this effect.</p>
+
+<p>The format of the StereoAnaglyphImage method is:</p>
+
+<pre class="text">
+Image *StereoImage(const Image *left_image,const Image *right_image,
+ ExceptionInfo *exception)
+Image *StereoAnaglyphImage(const Image *left_image,
+ const Image *right_image,const ssize_t x_offset,const ssize_t y_offset,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>left_image</dt>
+<dd>the left image. </dd>
+
+<dd> </dd>
+<dt>right_image</dt>
+<dd>the right image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+<dt>x_offset</dt>
+<dd>amount, in pixels, by which the left image is offset to the right of the right image. </dd>
+
+<dd> </dd>
+<dt>y_offset</dt>
+<dd>amount, in pixels, by which the left image is offset to the bottom of the right image. </dd>
+
+<dd> </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="SwirlImage">SwirlImage</a></h2>
+
+<p>SwirlImage() swirls the pixels about the center of the image, where degrees indicates the sweep of the arc through which each pixel is moved. You get a more dramatic effect as the degrees move from 1 to 360.</p>
+
+<p>The format of the SwirlImage method is:</p>
+
+<pre class="text">
+Image *SwirlImage(const Image *image,double degrees,
+ const PixelInterpolateMethod method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>degrees</dt>
+<dd>Define the tightness of the swirling effect. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="TintImage">TintImage</a></h2>
+
+<p>TintImage() applies a color vector to each pixel in the image. The length of the vector is 0 for black and white and at its maximum for the midtones. The vector weighting function is f(x)=(1-(4.0*((x-0.5)*(x-0.5))))</p>
+
+<p>The format of the TintImage method is:</p>
+
+<pre class="text">
+Image *TintImage(const Image *image,const char *blend,
+ const PixelInfo *tint,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>blend</dt>
+<dd>A color value used for tinting. </dd>
+
+<dd> </dd>
+<dt>tint</dt>
+<dd>A color value used for tinting. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="VignetteImage">VignetteImage</a></h2>
+
+<p>VignetteImage() softens the edges of the image in vignette style.</p>
+
+<p>The format of the VignetteImage method is:</p>
+
+<pre class="text">
+Image *VignetteImage(const Image *image,const double radius,
+ const double sigma,const ssize_t x,const ssize_t y,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the pixel neighborhood. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>x, y</dt>
+<dd> Define the x and y ellipse offset. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/fx_8c.html" id="WaveImage">WaveImage</a></h2>
+
+<p>WaveImage() creates a "ripple" effect in the image by shifting the pixels vertically along a sine wave whose amplitude and wavelength is specified by the given parameters.</p>
+
+<p>The format of the WaveImage method is:</p>
+
+<pre class="text">
+Image *WaveImage(const Image *image,const double amplitude,
+ const double wave_length,const PixelInterpolateMethod method,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>amplitude, wave_length</dt>
+<dd> Define the amplitude and wave length of the sine wave. </dd>
+
+<dd> </dd>
+<dt>interpolate</dt>
+<dd>the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="histogram.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/histogram_8c.html" id="GetImageHistogram">GetImageHistogram</a></h2>
+
+<p>GetImageHistogram() returns the unique colors in an image.</p>
+
+<p>The format of the GetImageHistogram method is:</p>
+
+<pre class="text">
+size_t GetImageHistogram(const Image *image,
+ size_t *number_colors,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>file</dt>
+<p>Write a histogram of the color distribution to this file handle.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/histogram_8c.html" id="IsHistogramImage">IsHistogramImage</a></h2>
+
+<p>IsHistogramImage() returns MagickTrue if the image has 1024 unique colors or less.</p>
+
+<p>The format of the IsHistogramImage method is:</p>
+
+<pre class="text">
+MagickBooleanType IsHistogramImage(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/histogram_8c.html" id="IsPaletteImage">IsPaletteImage</a></h2>
+
+<p>IsPaletteImage() returns MagickTrue if the image is PseudoClass and has 256 unique colors or less.</p>
+
+<p>The format of the IsPaletteImage method is:</p>
+
+<pre class="text">
+MagickBooleanType IsPaletteImage(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/histogram_8c.html" id="MinMaxStretchImage">MinMaxStretchImage</a></h2>
+
+<p>MinMaxStretchImage() uses the exact minimum and maximum values found in each of the channels given, as the BlackPoint and WhitePoint to linearly stretch the colors (and histogram) of the image. The stretch points are also moved further inward by the adjustment values given.</p>
+
+<p>If the adjustment values are both zero this function is equivalent to a perfect normalization (or autolevel) of the image.</p>
+
+<p>Each channel is stretched independantally of each other (producing color distortion) unless the special 'SyncChannels' flag is also provided in the channels setting. If this flag is present the minimum and maximum point will be extracted from all the given channels, and those channels will be stretched by exactly the same amount (preventing color distortion).</p>
+
+<p>In the special case that only ONE value is found in a channel of the image that value is not stretched, that value is left as is.</p>
+
+<p>The 'SyncChannels' is turned on in the 'DefaultChannels' setting by default.</p>
+
+<p>The format of the MinMaxStretchImage method is:</p>
+
+<pre class="text">
+MagickBooleanType MinMaxStretchImage(Image *image,const double black,
+ const double white,const double gamma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>The image to auto-level </dd>
+
+<dd> </dd>
+<dt>black, white</dt>
+<dd> move the black / white point inward from the minimum and maximum points by this color value. </dd>
+
+<dd> </dd>
+<dt>gamma</dt>
+<dd>the gamma. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/histogram_8c.html" id="GetNumberColors">GetNumberColors</a></h2>
+
+<p>GetNumberColors() returns the number of unique colors in an image.</p>
+
+<p>The format of the GetNumberColors method is:</p>
+
+<pre class="text">
+size_t GetNumberColors(const Image *image,FILE *file,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>file</dt>
+<p>Write a histogram of the color distribution to this file handle.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/histogram_8c.html" id="UniqueImageColors">UniqueImageColors</a></h2>
+
+<p>UniqueImageColors() returns the unique colors of an image.</p>
+
+<p>The format of the UniqueImageColors method is:</p>
+
+<pre class="text">
+Image *UniqueImageColors(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="image-view.html#"></a></p>
+<p class="text-center"><a href="image-view.html#CloneImageView">CloneImageView</a> • <a href="image-view.html#DestroyImageView">DestroyImageView</a> • <a href="image-view.html#DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a> • <a href="image-view.html#GetImageViewAuthenticMetacontent">GetImageViewAuthenticMetacontent</a> • <a href="image-view.html#GetImageViewAuthenticPixels">GetImageViewAuthenticPixels</a> • <a href="image-view.html#GetImageViewException">GetImageViewException</a> • <a href="image-view.html#GetImageViewExtent">GetImageViewExtent</a> • <a href="image-view.html#GetImageViewImage">GetImageViewImage</a> • <a href="image-view.html#GetImageViewIterator">GetImageViewIterator</a> • <a href="image-view.html#GetImageViewVirtualMetacontent">GetImageViewVirtualMetacontent</a> • <a href="image-view.html#GetImageViewVirtualPixels">GetImageViewVirtualPixels</a> • <a href="image-view.html#IsImageView">IsImageView</a> • <a href="image-view.html#NewImageView">NewImageView</a> • <a href="image-view.html#NewImageViewRegion">NewImageViewRegion</a> • <a href="image-view.html#SetImageViewDescription">SetImageViewDescription</a> • <a href="image-view.html#SetImageViewIterator">SetImageViewIterator</a> • <a href="image-view.html#TransferImageViewIterator">TransferImageViewIterator</a> • <a href="image-view.html#UpdateImageViewIterator">UpdateImageViewIterator</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="CloneImageView">CloneImageView</a></h2>
+
+<p>CloneImageView() makes a copy of the specified image view.</p>
+
+<p>The format of the CloneImageView method is:</p>
+
+<pre class="text">
+ImageView *CloneImageView(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="DestroyImageView">DestroyImageView</a></h2>
+
+<p>DestroyImageView() deallocates memory associated with a image view.</p>
+
+<p>The format of the DestroyImageView method is:</p>
+
+<pre class="text">
+ImageView *DestroyImageView(ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="DuplexTransferImageViewIterator">DuplexTransferImageViewIterator</a></h2>
+
+<p>DuplexTransferImageViewIterator() iterates over three image views in parallel and calls your transfer method for each scanline of the view. The source and duplex pixel extent is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination image view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p>
+
+<p>The callback signature is:</p>
+
+<pre class="text">
+MagickBooleanType DuplexTransferImageViewMethod(const ImageView *source,
+ const ImageView *duplex,ImageView *destination,const ssize_t y,
+ const int thread_id,void *context)
+</pre>
+
+<p>Use this pragma if the view is not single threaded:</p>
+
+<pre class="text">
+ #pragma omp critical
+</pre>
+
+<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
+
+<p>The format of the DuplexTransferImageViewIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType DuplexTransferImageViewIterator(ImageView *source,
+ ImageView *duplex,ImageView *destination,
+ DuplexTransferImageViewMethod transfer,void *context)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>source</dt>
+<dd>the source image view. </dd>
+
+<dd> </dd>
+<dt>duplex</dt>
+<dd>the duplex image view. </dd>
+
+<dd> </dd>
+<dt>destination</dt>
+<dd>the destination image view. </dd>
+
+<dd> </dd>
+<dt>transfer</dt>
+<dd>the transfer callback method. </dd>
+
+<dd> </dd>
+<dt>context</dt>
+<dd>the user defined context. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewAuthenticMetacontent">GetImageViewAuthenticMetacontent</a></h2>
+
+<p>GetImageViewAuthenticMetacontent() returns the image view authentic meta-content.</p>
+
+<p>The format of the GetImageViewAuthenticPixels method is:</p>
+
+<pre class="text">
+void *GetImageViewAuthenticMetacontent(
+ const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewAuthenticPixels">GetImageViewAuthenticPixels</a></h2>
+
+<p>GetImageViewAuthenticPixels() returns the image view authentic pixels.</p>
+
+<p>The format of the GetImageViewAuthenticPixels method is:</p>
+
+<pre class="text">
+Quantum *GetImageViewAuthenticPixels(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewException">GetImageViewException</a></h2>
+
+<p>GetImageViewException() returns the severity, reason, and description of any error that occurs when utilizing a image view.</p>
+
+<p>The format of the GetImageViewException method is:</p>
+
+<pre class="text">
+char *GetImageViewException(const PixelImage *image_view,
+ ExceptionType *severity)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the pixel image_view. </dd>
+
+<dd> </dd>
+<dt>severity</dt>
+<dd>the severity of the error is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewExtent">GetImageViewExtent</a></h2>
+
+<p>GetImageViewExtent() returns the image view extent.</p>
+
+<p>The format of the GetImageViewExtent method is:</p>
+
+<pre class="text">
+RectangleInfo GetImageViewExtent(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewImage">GetImageViewImage</a></h2>
+
+<p>GetImageViewImage() returns the image associated with the image view.</p>
+
+<p>The format of the GetImageViewImage method is:</p>
+
+<pre class="text">
+MagickCore *GetImageViewImage(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewIterator">GetImageViewIterator</a></h2>
+
+<p>GetImageViewIterator() iterates over the image view in parallel and calls your get method for each scanline of the view. The pixel extent is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. Any updates to the pixels in your callback are ignored.</p>
+
+<p>The callback signature is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageViewMethod(const ImageView *source,
+ const ssize_t y,const int thread_id,void *context)
+</pre>
+
+<p>Use this pragma if the view is not single threaded:</p>
+
+<pre class="text">
+ #pragma omp critical
+</pre>
+
+<p>to define a section of code in your callback get method that must be executed by a single thread at a time.</p>
+
+<p>The format of the GetImageViewIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageViewIterator(ImageView *source,
+ GetImageViewMethod get,void *context)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>source</dt>
+<dd>the source image view. </dd>
+
+<dd> </dd>
+<dt>get</dt>
+<dd>the get callback method. </dd>
+
+<dd> </dd>
+<dt>context</dt>
+<dd>the user defined context. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewVirtualMetacontent">GetImageViewVirtualMetacontent</a></h2>
+
+<p>GetImageViewVirtualMetacontent() returns the image view virtual meta-content.</p>
+
+<p>The format of the GetImageViewVirtualMetacontent method is:</p>
+
+<pre class="text">
+const void *GetImageViewVirtualMetacontent(
+ const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="GetImageViewVirtualPixels">GetImageViewVirtualPixels</a></h2>
+
+<p>GetImageViewVirtualPixels() returns the image view virtual pixels.</p>
+
+<p>The format of the GetImageViewVirtualPixels method is:</p>
+
+<pre class="text">
+const Quantum *GetImageViewVirtualPixels(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="IsImageView">IsImageView</a></h2>
+
+<p>IsImageView() returns MagickTrue if the the parameter is verified as a image view object.</p>
+
+<p>The format of the IsImageView method is:</p>
+
+<pre class="text">
+MagickBooleanType IsImageView(const ImageView *image_view)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="NewImageView">NewImageView</a></h2>
+
+<p>NewImageView() returns a image view required for all other methods in the Image View API.</p>
+
+<p>The format of the NewImageView method is:</p>
+
+<pre class="text">
+ImageView *NewImageView(MagickCore *wand,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="NewImageViewRegion">NewImageViewRegion</a></h2>
+
+<p>NewImageViewRegion() returns a image view required for all other methods in the Image View API.</p>
+
+<p>The format of the NewImageViewRegion method is:</p>
+
+<pre class="text">
+ImageView *NewImageViewRegion(MagickCore *wand,const ssize_t x,
+ const ssize_t y,const size_t width,const size_t height,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a extent of pixel_wands view. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="SetImageViewDescription">SetImageViewDescription</a></h2>
+
+<p>SetImageViewDescription() associates a description with an image view.</p>
+
+<p>The format of the SetImageViewDescription method is:</p>
+
+<pre class="text">
+void SetImageViewDescription(ImageView *image_view,
+ const char *description)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_view</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+<dt>description</dt>
+<dd>the image view description. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="SetImageViewIterator">SetImageViewIterator</a></h2>
+
+<p>SetImageViewIterator() iterates over the image view in parallel and calls your set method for each scanline of the view. The pixel extent is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension. The pixels are initiallly undefined and any settings you make in the callback method are automagically synced back to your image.</p>
+
+<p>The callback signature is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageViewMethod(ImageView *destination,
+ const ssize_t y,const int thread_id,void *context)
+</pre>
+
+<p>Use this pragma if the view is not single threaded:</p>
+
+<pre class="text">
+ #pragma omp critical
+</pre>
+
+<p>to define a section of code in your callback set method that must be executed by a single thread at a time.</p>
+
+<p>The format of the SetImageViewIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageViewIterator(ImageView *destination,
+ SetImageViewMethod set,void *context)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>destination</dt>
+<dd>the image view. </dd>
+
+<dd> </dd>
+<dt>set</dt>
+<dd>the set callback method. </dd>
+
+<dd> </dd>
+<dt>context</dt>
+<dd>the user defined context. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="TransferImageViewIterator">TransferImageViewIterator</a></h2>
+
+<p>TransferImageViewIterator() iterates over two image views in parallel and calls your transfer method for each scanline of the view. The source pixel extent is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination image view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p>
+
+<p>The callback signature is:</p>
+
+<pre class="text">
+MagickBooleanType TransferImageViewMethod(const ImageView *source,
+ ImageView *destination,const ssize_t y,const int thread_id,
+ void *context)
+</pre>
+
+<p>Use this pragma if the view is not single threaded:</p>
+
+<pre class="text">
+ #pragma omp critical
+</pre>
+
+<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
+
+<p>The format of the TransferImageViewIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType TransferImageViewIterator(ImageView *source,
+ ImageView *destination,TransferImageViewMethod transfer,void *context)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>source</dt>
+<dd>the source image view. </dd>
+
+<dd> </dd>
+<dt>destination</dt>
+<dd>the destination image view. </dd>
+
+<dd> </dd>
+<dt>transfer</dt>
+<dd>the transfer callback method. </dd>
+
+<dd> </dd>
+<dt>context</dt>
+<dd>the user defined context. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image-view_8c.html" id="UpdateImageViewIterator">UpdateImageViewIterator</a></h2>
+
+<p>UpdateImageViewIterator() iterates over the image view in parallel and calls your update method for each scanline of the view. The pixel extent is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted. Updates to pixels in your callback are automagically synced back to the image.</p>
+
+<p>The callback signature is:</p>
+
+<pre class="text">
+MagickBooleanType UpdateImageViewMethod(ImageView *source,
+ const ssize_t y,const int thread_id,void *context)
+</pre>
+
+<p>Use this pragma if the view is not single threaded:</p>
+
+<pre class="text">
+ #pragma omp critical
+</pre>
+
+<p>to define a section of code in your callback update method that must be executed by a single thread at a time.</p>
+
+<p>The format of the UpdateImageViewIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType UpdateImageViewIterator(ImageView *source,
+ UpdateImageViewMethod update,void *context)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>source</dt>
+<dd>the source image view. </dd>
+
+<dd> </dd>
+<dt>update</dt>
+<dd>the update callback method. </dd>
+
+<dd> </dd>
+<dt>context</dt>
+<dd>the user defined context. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="image.html#"></a></p>
+<p class="text-center"><a href="image.html#AcquireImage">AcquireImage</a> • <a href="image.html#AcquireImageInfo">AcquireImageInfo</a> • <a href="image.html#AcquireNextImage">AcquireNextImage</a> • <a href="image.html#AppendImages">AppendImages</a> • <a href="image.html#CatchImageException">CatchImageException</a> • <a href="image.html#ClipImagePath">ClipImagePath</a> • <a href="image.html#CloneImage">CloneImage</a> • <a href="image.html#CloneImageInfo">CloneImageInfo</a> • <a href="image.html#DestroyImage">DestroyImage</a> • <a href="image.html#DestroyImageInfo">DestroyImageInfo</a> • <a href="image.html#GetImageInfo">GetImageInfo</a> • <a href="image.html#GetImageInfoFile">GetImageInfoFile</a> • <a href="image.html#GetImageMask">GetImageMask</a> • <a href="image.html#GetImageVirtualPixelMethod">GetImageVirtualPixelMethod</a> • <a href="image.html#InterpretImageFilename">InterpretImageFilename</a> • <a href="image.html#IsHighDynamicRangeImage">IsHighDynamicRangeImage</a> • <a href="image.html#IsImageObject">IsImageObject</a> • <a href="image.html#IsTaintImage">IsTaintImage</a> • <a href="image.html#ModifyImage">ModifyImage</a> • <a href="image.html#NewMagickImage">NewMagickImage</a> • <a href="image.html#ReferenceImage">ReferenceImage</a> • <a href="image.html#ResetImagePage">ResetImagePage</a> • <a href="image.html#SetImageBackgroundColor">SetImageBackgroundColor</a> • <a href="image.html#SetImageChannelMask">SetImageChannelMask</a> • <a href="image.html#SetImageColor">SetImageColor</a> • <a href="image.html#SetImageStorageClass">SetImageStorageClass</a> • <a href="image.html#SetImageExtent">SetImageExtent</a> • <a href="image.html#SetImageInfoBlob">SetImageInfoBlob</a> • <a href="image.html#SetImageInfoFile">SetImageInfoFile</a> • <a href="image.html#SetImageMask">SetImageMask</a> • <a href="image.html#SetImageAlpha">SetImageAlpha</a> • <a href="image.html#SetImageVirtualPixelMethod">SetImageVirtualPixelMethod</a> • <a href="image.html#SmushImages">SmushImages</a> • <a href="image.html#StripImage">StripImage</a> • <a href="image.html#SyncImageSettings">SyncImageSettings</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="AcquireImage">AcquireImage</a></h2>
+
+<p>AcquireImage() returns a pointer to an image structure initialized to default values.</p>
+
+<p>The format of the AcquireImage method is:</p>
+
+<pre class="text">
+Image *AcquireImage(const ImageInfo *image_info,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>Many of the image default values are set from this structure. For example, filename, compression, depth, background color, and others. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="AcquireImageInfo">AcquireImageInfo</a></h2>
+
+<p>AcquireImageInfo() allocates the ImageInfo structure.</p>
+
+<p>The format of the AcquireImageInfo method is:</p>
+
+<pre class="text">
+ImageInfo *AcquireImageInfo(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="AcquireNextImage">AcquireNextImage</a></h2>
+
+<p>AcquireNextImage() initializes the next image in a sequence to default values. The next member of image points to the newly allocated image. If there is a memory shortage, next is assigned NULL.</p>
+
+<p>The format of the AcquireNextImage method is:</p>
+
+<pre class="text">
+void AcquireNextImage(const ImageInfo *image_info,Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>Many of the image default values are set from this structure. For example, filename, compression, depth, background color, and others. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="AppendImages">AppendImages</a></h2>
+
+<p>AppendImages() takes all images from the current image pointer to the end of the image list and appends them to each other top-to-bottom if the stack parameter is true, otherwise left-to-right.</p>
+
+<p>The current gravity setting effects how the image is justified in the final image.</p>
+
+<p>The format of the AppendImages method is:</p>
+
+<pre class="text">
+Image *AppendImages(const Image *images,const MagickBooleanType stack,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>stack</dt>
+<dd>A value other than 0 stacks the images top-to-bottom. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="CatchImageException">CatchImageException</a></h2>
+
+<p>CatchImageException() returns if no exceptions are found in the image sequence, otherwise it determines the most severe exception and reports it as a warning or error depending on the severity.</p>
+
+<p>The format of the CatchImageException method is:</p>
+
+<pre class="text">
+ExceptionType CatchImageException(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>An image sequence. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="ClipImagePath">ClipImagePath</a></h2>
+
+<p>ClipImagePath() sets the image clip mask based any clipping path information if it exists.</p>
+
+<p>The format of the ClipImagePath method is:</p>
+
+<pre class="text">
+MagickBooleanType ClipImagePath(Image *image,const char *pathname,
+ const MagickBooleanType inside,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>pathname</dt>
+<dd>name of clipping path resource. If name is preceded by #, use clipping path numbered by name. </dd>
+
+<dd> </dd>
+<dt>inside</dt>
+<dd>if non-zero, later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="CloneImage">CloneImage</a></h2>
+
+<p>CloneImage() copies an image and returns the copy as a new image object.</p>
+
+<p>If the specified columns and rows is 0, an exact copy of the image is returned, otherwise the pixel data is undefined and must be initialized with the QueueAuthenticPixels() and SyncAuthenticPixels() methods. On failure, a NULL image is returned and exception describes the reason for the failure.</p>
+
+<p>The format of the CloneImage method is:</p>
+
+<pre class="text">
+Image *CloneImage(const Image *image,const size_t columns,
+ const size_t rows,const MagickBooleanType orphan,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the cloned image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the cloned image. </dd>
+
+<dd> </dd>
+<dt>detach</dt>
+<dd> With a value other than 0, the cloned image is detached from its parent I/O stream. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="CloneImageInfo">CloneImageInfo</a></h2>
+
+<p>CloneImageInfo() makes a copy of the given image info structure. If NULL is specified, a new image info structure is created initialized to default values.</p>
+
+<p>The format of the CloneImageInfo method is:</p>
+
+<pre class="text">
+ImageInfo *CloneImageInfo(const ImageInfo *image_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="DestroyImage">DestroyImage</a></h2>
+
+<p>DestroyImage() dereferences an image, deallocating memory associated with the image if the reference count becomes zero.</p>
+
+<p>The format of the DestroyImage method is:</p>
+
+<pre class="text">
+Image *DestroyImage(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="DestroyImageInfo">DestroyImageInfo</a></h2>
+
+<p>DestroyImageInfo() deallocates memory associated with an ImageInfo structure.</p>
+
+<p>The format of the DestroyImageInfo method is:</p>
+
+<pre class="text">
+ImageInfo *DestroyImageInfo(ImageInfo *image_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="GetImageInfo">GetImageInfo</a></h2>
+
+<p>GetImageInfo() initializes image_info to default values.</p>
+
+<p>The format of the GetImageInfo method is:</p>
+
+<pre class="text">
+void GetImageInfo(ImageInfo *image_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="GetImageInfoFile">GetImageInfoFile</a></h2>
+
+<p>GetImageInfoFile() returns the image info file member.</p>
+
+<p>The format of the GetImageInfoFile method is:</p>
+
+<pre class="text">
+FILE *GetImageInfoFile(const ImageInfo *image_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="GetImageMask">GetImageMask</a></h2>
+
+<p>GetImageMask() returns the mask associated with the image.</p>
+
+<p>The format of the GetImageMask method is:</p>
+
+<pre class="text">
+Image *GetImageMask(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="GetImageVirtualPixelMethod">GetImageVirtualPixelMethod</a></h2>
+
+<p>GetImageVirtualPixelMethod() gets the "virtual pixels" method for the image. A virtual pixel is any pixel access that is outside the boundaries of the image cache.</p>
+
+<p>The format of the GetImageVirtualPixelMethod() method is:</p>
+
+<pre class="text">
+VirtualPixelMethod GetImageVirtualPixelMethod(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="InterpretImageFilename">InterpretImageFilename</a></h2>
+
+<p>InterpretImageFilename() interprets embedded characters in an image filename. The filename length is returned.</p>
+
+<p>The format of the InterpretImageFilename method is:</p>
+
+<pre class="text">
+size_t InterpretImageFilename(const ImageInfo *image_info,Image *image,
+ const char *format,int value,char *filename,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image_info</dt>
+<p>the image info..</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>format</dt>
+<p>A filename describing the format to use to write the numeric argument. Only the first numeric format identifier is replaced.</p>
+
+<dt>value</dt>
+<p>Numeric value to substitute into format filename.</p>
+
+<dt>filename</dt>
+<p>return the formatted filename in this character buffer.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="IsHighDynamicRangeImage">IsHighDynamicRangeImage</a></h2>
+
+<p>IsHighDynamicRangeImage() returns MagickTrue if any pixel component is non-integer or exceeds the bounds of the quantum depth (e.g. for Q16 0..65535.</p>
+
+<p>The format of the IsHighDynamicRangeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType IsHighDynamicRangeImage(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="IsImageObject">IsImageObject</a></h2>
+
+<p>IsImageObject() returns MagickTrue if the image sequence contains a valid set of image objects.</p>
+
+<p>The format of the IsImageObject method is:</p>
+
+<pre class="text">
+MagickBooleanType IsImageObject(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="IsTaintImage">IsTaintImage</a></h2>
+
+<p>IsTaintImage() returns MagickTrue any pixel in the image has been altered since it was first constituted.</p>
+
+<p>The format of the IsTaintImage method is:</p>
+
+<pre class="text">
+MagickBooleanType IsTaintImage(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="ModifyImage">ModifyImage</a></h2>
+
+<p>ModifyImage() ensures that there is only a single reference to the image to be modified, updating the provided image pointer to point to a clone of the original image if necessary.</p>
+
+<p>The format of the ModifyImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ModifyImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="NewMagickImage">NewMagickImage</a></h2>
+
+<p>NewMagickImage() creates a blank image canvas of the specified size and background color.</p>
+
+<p>The format of the NewMagickImage method is:</p>
+
+<pre class="text">
+Image *NewMagickImage(const ImageInfo *image_info,const size_t width,
+ const size_t height,const PixelInfo *background,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>width</dt>
+<dd>the image width. </dd>
+
+<dd> </dd>
+<dt>height</dt>
+<dd>the image height. </dd>
+
+<dd> </dd>
+<dt>background</dt>
+<dd>the image color. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="ReferenceImage">ReferenceImage</a></h2>
+
+<p>ReferenceImage() increments the reference count associated with an image returning a pointer to the image.</p>
+
+<p>The format of the ReferenceImage method is:</p>
+
+<pre class="text">
+Image *ReferenceImage(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="ResetImagePage">ResetImagePage</a></h2>
+
+<p>ResetImagePage() resets the image page canvas and position.</p>
+
+<p>The format of the ResetImagePage method is:</p>
+
+<pre class="text">
+MagickBooleanType ResetImagePage(Image *image,const char *page)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>page</dt>
+<dd>the relative page specification. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageBackgroundColor">SetImageBackgroundColor</a></h2>
+
+<p>SetImageBackgroundColor() initializes the image pixels to the image background color. The background color is defined by the background_color member of the image structure.</p>
+
+<p>The format of the SetImage method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageBackgroundColor(Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageChannelMask">SetImageChannelMask</a></h2>
+
+<p>SetImageChannelMask() sets the image channel mask from the specified channel mask.</p>
+
+<p>The format of the SetImageChannelMask method is:</p>
+
+<pre class="text">
+ChannelType SetImageChannelMask(Image *image,
+ const ChannelType channel_mask)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>channel_mask</dt>
+<dd>the channel mask. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageColor">SetImageColor</a></h2>
+
+<p>SetImageColor() set the entire image canvas to the specified color.</p>
+
+<p>The format of the SetImageColor method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageColor(Image *image,const PixelInfo *color,
+ ExeptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>background</dt>
+<dd>the image color. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageStorageClass">SetImageStorageClass</a></h2>
+
+<p>SetImageStorageClass() sets the image class: DirectClass for true color images or PseudoClass for colormapped images.</p>
+
+<p>The format of the SetImageStorageClass method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageStorageClass(Image *image,
+ const ClassType storage_class,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>storage_class</dt>
+<dd> The image class. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageExtent">SetImageExtent</a></h2>
+
+<p>SetImageExtent() sets the image size (i.e. columns & rows).</p>
+
+<p>The format of the SetImageExtent method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageExtent(Image *image,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd> The image width in pixels. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd> The image height in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageInfoBlob">SetImageInfoBlob</a></h2>
+
+<p>SetImageInfoBlob() sets the image info blob member.</p>
+
+<p>The format of the SetImageInfoBlob method is:</p>
+
+<pre class="text">
+void SetImageInfoBlob(ImageInfo *image_info,const void *blob,
+ const size_t length)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>blob</dt>
+<dd>the blob. </dd>
+
+<dd> </dd>
+<dt>length</dt>
+<dd>the blob length. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageInfoFile">SetImageInfoFile</a></h2>
+
+<p>SetImageInfoFile() sets the image info file member.</p>
+
+<p>The format of the SetImageInfoFile method is:</p>
+
+<pre class="text">
+void SetImageInfoFile(ImageInfo *image_info,FILE *file)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>file</dt>
+<dd>the file. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageMask">SetImageMask</a></h2>
+
+<p>SetImageMask() associates a mask with the image. The mask must be the same dimensions as the image.</p>
+
+<p>The format of the SetImageMask method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageMask(Image *image,const Image *mask,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>mask</dt>
+<dd>the image mask. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageAlpha">SetImageAlpha</a></h2>
+
+<p>SetImageAlpha() sets the alpha levels of the image.</p>
+
+<p>The format of the SetImageAlpha method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageAlpha(Image *image,const Quantum alpha,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>Alpha</dt>
+<dd>the level of transparency: 0 is fully opaque and QuantumRange is fully transparent. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SetImageVirtualPixelMethod">SetImageVirtualPixelMethod</a></h2>
+
+<p>SetImageVirtualPixelMethod() sets the "virtual pixels" method for the image and returns the previous setting. A virtual pixel is any pixel access that is outside the boundaries of the image cache.</p>
+
+<p>The format of the SetImageVirtualPixelMethod() method is:</p>
+
+<pre class="text">
+VirtualPixelMethod SetImageVirtualPixelMethod(Image *image,
+ const VirtualPixelMethod virtual_pixel_method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>virtual_pixel_method</dt>
+<dd>choose the type of virtual pixel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SmushImages">SmushImages</a></h2>
+
+<p>SmushImages() takes all images from the current image pointer to the end of the image list and smushes them to each other top-to-bottom if the stack parameter is true, otherwise left-to-right.</p>
+
+<p>The current gravity setting now effects how the image is justified in the final image.</p>
+
+<p>The format of the SmushImages method is:</p>
+
+<pre class="text">
+Image *SmushImages(const Image *images,const MagickBooleanType stack,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>stack</dt>
+<dd>A value other than 0 stacks the images top-to-bottom. </dd>
+
+<dd> </dd>
+<dt>offset</dt>
+<dd>minimum distance in pixels between images. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="StripImage">StripImage</a></h2>
+
+<p>StripImage() strips an image of all profiles and comments.</p>
+
+<p>The format of the StripImage method is:</p>
+
+<pre class="text">
+MagickBooleanType StripImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/image_8c.html" id="SyncImageSettings">SyncImageSettings</a></h2>
+
+<p>SyncImageSettings() syncs any image_info global options into per-image attributes.</p>
+
+<p>Note: in IMv6 free form 'options' were always mapped into 'artifacts', so that operations and coders can find such settings. In IMv7 if a desired per-image artifact is not set, then it will directly look for a global option as a fallback, as such this copy is no longer needed, only the link set up.</p>
+
+<p>The format of the SyncImageSettings method is:</p>
+
+<pre class="text">
+MagickBooleanType SyncImageSettings(const ImageInfo *image_info,
+ Image *image,ExceptionInfo *exception)
+MagickBooleanType SyncImagesSettings(const ImageInfo *image_info,
+ Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="layer.html#"></a></p>
+<p class="text-center"><a href="layer.html#CoalesceImages">CoalesceImages</a> • <a href="layer.html#DisposeImages">DisposeImages</a> • <a href="layer.html#CompareImagesLayers">CompareImagesLayers</a> • <a href="layer.html#OptimizeImageLayers">OptimizeImageLayers</a> • <a href="layer.html#OptimizeImagePlusLayers">OptimizeImagePlusLayers</a> • <a href="layer.html#OptimizeImageTransparency">OptimizeImageTransparency</a> • <a href="layer.html#RemoveDuplicateLayers">RemoveDuplicateLayers</a> • <a href="layer.html#RemoveZeroDelayLayers">RemoveZeroDelayLayers</a> • <a href="layer.html#CompositeLayers">CompositeLayers</a> • <a href="layer.html#MergeImageLayers">MergeImageLayers</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="CoalesceImages">CoalesceImages</a></h2>
+
+<p>CoalesceImages() composites a set of images while respecting any page offsets and disposal methods. GIF, MIFF, and MNG animation sequences typically start with an image background and each subsequent image varies in size and offset. A new image sequence is returned with all images the same size as the first images virtual canvas and composited with the next image in the sequence.</p>
+
+<p>The format of the CoalesceImages method is:</p>
+
+<pre class="text">
+Image *CoalesceImages(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="DisposeImages">DisposeImages</a></h2>
+
+<p>DisposeImages() returns the coalesced frames of a GIF animation as it would appear after the GIF dispose method of that frame has been applied. That is it returned the appearance of each frame before the next is overlaid.</p>
+
+<p>The format of the DisposeImages method is:</p>
+
+<pre class="text">
+Image *DisposeImages(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="CompareImagesLayers">CompareImagesLayers</a></h2>
+
+<p>CompareImagesLayers() compares each image with the next in a sequence and returns the minimum bounding region of all the pixel differences (of the LayerMethod specified) it discovers.</p>
+
+<p>Images do NOT have to be the same size, though it is best that all the images are 'coalesced' (images are all the same size, on a flattened canvas, so as to represent exactly how an specific frame should look).</p>
+
+<p>No GIF dispose methods are applied, so GIF animations must be coalesced before applying this image operator to find differences to them.</p>
+
+<p>The format of the CompareImagesLayers method is:</p>
+
+<pre class="text">
+Image *CompareImagesLayers(const Image *images,
+ const LayerMethod method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the layers type to compare images with. Must be one of... CompareAnyLayer, CompareClearLayer, CompareOverlayLayer. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="OptimizeImageLayers">OptimizeImageLayers</a></h2>
+
+<p>OptimizeImageLayers() compares each image the GIF disposed forms of the previous image in the sequence. From this it attempts to select the smallest cropped image to replace each frame, while preserving the results of the GIF animation.</p>
+
+<p>The format of the OptimizeImageLayers method is:</p>
+
+<pre class="text">
+Image *OptimizeImageLayers(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="OptimizeImagePlusLayers">OptimizeImagePlusLayers</a></h2>
+
+<p>OptimizeImagePlusLayers() is exactly as OptimizeImageLayers(), but may also add or even remove extra frames in the animation, if it improves the total number of pixels in the resulting GIF animation.</p>
+
+<p>The format of the OptimizePlusImageLayers method is:</p>
+
+<pre class="text">
+Image *OptimizePlusImageLayers(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="OptimizeImageTransparency">OptimizeImageTransparency</a></h2>
+
+<p>OptimizeImageTransparency() takes a frame optimized GIF animation, and compares the overlayed pixels against the disposal image resulting from all the previous frames in the animation. Any pixel that does not change the disposal image (and thus does not effect the outcome of an overlay) is made transparent.</p>
+
+<p>WARNING: This modifies the current images directly, rather than generate a new image sequence.</p>
+
+<p>The format of the OptimizeImageTransperency method is:</p>
+
+<pre class="text">
+void OptimizeImageTransperency(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image sequence </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="RemoveDuplicateLayers">RemoveDuplicateLayers</a></h2>
+
+<p>RemoveDuplicateLayers() removes any image that is exactly the same as the next image in the given image list. Image size and virtual canvas offset must also match, though not the virtual canvas size itself.</p>
+
+<p>No check is made with regards to image disposal setting, though it is the dispose setting of later image that is kept. Also any time delays are also added together. As such coalesced image animations should still produce the same result, though with duplicte frames merged into a single frame.</p>
+
+<p>The format of the RemoveDuplicateLayers method is:</p>
+
+<pre class="text">
+void RemoveDuplicateLayers(Image **image, ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="RemoveZeroDelayLayers">RemoveZeroDelayLayers</a></h2>
+
+<p>RemoveZeroDelayLayers() removes any image that as a zero delay time. Such images generally represent intermediate or partial updates in GIF animations used for file optimization. They are not ment to be displayed to users of the animation. Viewable images in an animation should have a time delay of 3 or more centi-seconds (hundredths of a second).</p>
+
+<p>However if all the frames have a zero time delay, then either the animation is as yet incomplete, or it is not a GIF animation. This a non-sensible situation, so no image will be removed and a 'Zero Time Animation' warning (exception) given.</p>
+
+<p>No warning will be given if no image was removed because all images had an appropriate non-zero time delay set.</p>
+
+<p>Due to the special requirements of GIF disposal handling, GIF animations should be coalesced first, before calling this function, though that is not a requirement.</p>
+
+<p>The format of the RemoveZeroDelayLayers method is:</p>
+
+<pre class="text">
+void RemoveZeroDelayLayers(Image **image, ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="CompositeLayers">CompositeLayers</a></h2>
+
+<p>CompositeLayers() compose the source image sequence over the destination image sequence, starting with the current image in both lists.</p>
+
+<p>Each layer from the two image lists are composted together until the end of one of the image lists is reached. The offset of each composition is also adjusted to match the virtual canvas offsets of each layer. As such the given offset is relative to the virtual canvas, and not the actual image.</p>
+
+<p>Composition uses given x and y offsets, as the 'origin' location of the source images virtual canvas (not the real image) allowing you to compose a list of 'layer images' into the destiantioni images. This makes it well sutiable for directly composing 'Clears Frame Animations' or 'Coaleased Animations' onto a static or other 'Coaleased Animation' destination image list. GIF disposal handling is not looked at.</p>
+
+<p>Special case:- If one of the image sequences is the last image (just a single image remaining), that image is repeatally composed with all the images in the other image list. Either the source or destination lists may be the single image, for this situation.</p>
+
+<p>In the case of a single destination image (or last image given), that image will ve cloned to match the number of images remaining in the source image list.</p>
+
+<p>This is equivelent to the "-layer Composite" Shell API operator.</p>
+
+
+<p>The format of the CompositeLayers method is:</p>
+
+<pre class="text">
+void CompositeLayers(Image *destination, const CompositeOperator
+compose, Image *source, const ssize_t x_offset, const ssize_t y_offset,
+ExceptionInfo *exception);
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>destination</dt>
+<dd>the destination images and results </dd>
+
+<dd> </dd>
+<dt>source</dt>
+<dd>source image(s) for the layer composition </dd>
+
+<dd> </dd>
+<dt>compose, x_offset, y_offset</dt>
+<dd> arguments passed on to CompositeImages() </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/layer_8c.html" id="MergeImageLayers">MergeImageLayers</a></h2>
+
+<p>MergeImageLayers() composes all the image layers from the current given image onward to produce a single image of the merged layers.</p>
+
+<p>The inital canvas's size depends on the given LayerMethod, and is initialized using the first images background color. The images are then compositied onto that image in sequence using the given composition that has been assigned to each individual image.</p>
+
+<p>The format of the MergeImageLayers is:</p>
+
+<pre class="text">
+Image *MergeImageLayers(const Image *image,
+ const LayerMethod method, ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image list to be composited together </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the method of selecting the size of the initial canvas. </dd>
+
+<dd> MergeLayer: Merge all layers onto a canvas just large enough to hold all the actual images. The virtual canvas of the first image is preserved but otherwise ignored. </dd>
+
+<dd> FlattenLayer: Use the virtual canvas size of first image. Images which fall outside this canvas is clipped. This can be used to 'fill out' a given virtual canvas. </dd>
+
+<dd> MosaicLayer: Start with the virtual canvas of the first image, enlarging left and right edges to contain all images. Images with negative offsets will be clipped. </dd>
+
+<dd> TrimBoundsLayer: Determine the overall bounds of all the image layers just as in "MergeLayer", then adjust the the canvas and offsets to be relative to those bounds, without overlaying the images. </dd>
+
+<dd> WARNING: a new image is not returned, the original image sequence page data is modified instead. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="list.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="AppendImageToList">AppendImageToList</a></h2>
+
+<p>AppendImageToList() appends the second image list to the end of the first list. The given image list pointer is left unchanged, unless it was empty.</p>
+
+<p>The format of the AppendImageToList method is:</p>
+
+<pre class="text">
+AppendImageToList(Image *images,const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list to be appended to. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the appended image or image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="CloneImageList">CloneImageList</a></h2>
+
+<p>CloneImageList() returns a duplicate of the image list.</p>
+
+<p>The format of the CloneImageList method is:</p>
+
+<pre class="text">
+Image *CloneImageList(const Image *images,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="CloneImages">CloneImages</a></h2>
+
+<p>CloneImages() clones one or more images from an image sequence, using a comma separated list of image numbers or ranges.</p>
+
+<p>The numbers start at 0 for the first image in the list, while negative numbers refer to images starting counting from the end of the range. Images may be refered to multiple times to clone them multiple times. Images refered beyond the available number of images in list are ignored.</p>
+
+<p>Images referenced may be reversed, and results in a clone of those images also being made with a reversed order.</p>
+
+<p>The format of the CloneImages method is:</p>
+
+<pre class="text">
+Image *CloneImages(const Image *images,const char *scenes,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>scenes</dt>
+<dd>This character string specifies which scenes to clone (e.g. 1,3-5,7-3,2). </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="DeleteImageFromList">DeleteImageFromList</a></h2>
+
+<p>DeleteImageFromList() deletes an image from the list. List pointer is moved to the next image, if one is present. See RemoveImageFromList().</p>
+
+<p>The format of the DeleteImageFromList method is:</p>
+
+<pre class="text">
+DeleteImageFromList(Image **images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="DeleteImages">DeleteImages</a></h2>
+
+<p>DeleteImages() deletes one or more images from an image sequence, using a comma separated list of image numbers or ranges.</p>
+
+<p>The numbers start at 0 for the first image, while negative numbers refer to images starting counting from the end of the range. Images may be refered to multiple times without problems. Image refered beyond the available number of images in list are ignored.</p>
+
+<p>If the referenced images are in the reverse order, that range will be completely ignored, unlike CloneImages().</p>
+
+<p>The format of the DeleteImages method is:</p>
+
+<pre class="text">
+DeleteImages(Image **images,const char *scenes,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>scenes</dt>
+<dd>This character string specifies which scenes to delete (e.g. 1,3-5,-2-6,2). </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="DestroyImageList">DestroyImageList</a></h2>
+
+<p>DestroyImageList() destroys an image list.</p>
+
+<p>The format of the DestroyImageList method is:</p>
+
+<pre class="text">
+Image *DestroyImageList(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="DuplicateImages">DuplicateImages</a></h2>
+
+<p>DuplicateImages() duplicates one or more images from an image sequence, using a count and a comma separated list of image numbers or ranges.</p>
+
+<p>The numbers start at 0 for the first image, while negative numbers refer to images starting counting from the end of the range. Images may be refered to multiple times without problems. Image refered beyond the available number of images in list are ignored.</p>
+
+<p>The format of the DuplicateImages method is:</p>
+
+<pre class="text">
+Image *DuplicateImages(Image *images,const size_t number_duplicates,
+ const char *scenes,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>number_duplicates</dt>
+<dd>duplicate the image sequence this number of times. </dd>
+
+<dd> </dd>
+<dt>scenes</dt>
+<dd>This character string specifies which scenes to duplicate (e.g. 1,3-5,-2-6,2). </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetFirstImageInList">GetFirstImageInList</a></h2>
+
+<p>GetFirstImageInList() returns a pointer to the first image in the list.</p>
+
+<p>The format of the GetFirstImageInList method is:</p>
+
+<pre class="text">
+Image *GetFirstImageInList(const Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetImageFromList">GetImageFromList</a></h2>
+
+<p>GetImageFromList() returns an image at the specified index from the image list. Starting with 0 as the first image in the list.</p>
+
+<p>A negative offset will return the image from the end of the list, such that an index of -1 is the last image.</p>
+
+<p>If no such image exists at the specified offset a NULL image pointer is returned. This will only happen if index is less that the negative of the list length, or larger than list length -1. EG: ( -N to N-1 )</p>
+
+<p>The format of the GetImageFromList method is:</p>
+
+<pre class="text">
+Image *GetImageFromList(const Image *images,const ssize_t index)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>index</dt>
+<dd>the position within the list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetImageIndexInList">GetImageIndexInList</a></h2>
+
+<p>GetImageIndexInList() returns the offset in the list of the specified image.</p>
+
+<p>The format of the GetImageIndexInList method is:</p>
+
+<pre class="text">
+ssize_t GetImageIndexInList(const Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetImageListLength">GetImageListLength</a></h2>
+
+<p>GetImageListLength() returns the length of the list (the number of images in the list).</p>
+
+<p>The format of the GetImageListLength method is:</p>
+
+<pre class="text">
+size_t GetImageListLength(const Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetLastImageInList">GetLastImageInList</a></h2>
+
+<p>GetLastImageInList() returns a pointer to the last image in the list.</p>
+
+<p>The format of the GetLastImageInList method is:</p>
+
+<pre class="text">
+Image *GetLastImageInList(const Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetNextImageInList">GetNextImageInList</a></h2>
+
+<p>GetNextImageInList() returns the next image in the list.</p>
+
+<p>The format of the GetNextImageInList method is:</p>
+
+<pre class="text">
+Image *GetNextImageInList(const Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="GetPreviousImageInList">GetPreviousImageInList</a></h2>
+
+<p>GetPreviousImageInList() returns the previous image in the list.</p>
+
+<p>The format of the GetPreviousImageInList method is:</p>
+
+<pre class="text">
+Image *GetPreviousImageInList(const Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="ImageListToArray">ImageListToArray</a></h2>
+
+<p>ImageListToArray() is a convenience method that converts an image list to a sequential array, with a NULL image pointer at the end of the array.</p>
+
+<p>The images remain part of the original image list, with the array providing an alternative means of indexing the image array.</p>
+
+<p>group = ImageListToArray(images, exception); while (i = 0; group[i] != (Image *) NULL; i++) printf("s\n", group[i]->filename); printf("d images\n", i); group = RelinquishMagickMemory(group);</p>
+
+<p>The format of the ImageListToArray method is:</p>
+
+<pre class="text">
+Image **ImageListToArray(const Image *images,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="InsertImageInList">InsertImageInList</a></h2>
+
+<p>InsertImageInList() insert the given image or image list, into the first image list, immediately AFTER the image pointed to. The given image list pointer is left unchanged unless previously empty.</p>
+
+<p>The format of the InsertImageInList method is:</p>
+
+<pre class="text">
+InsertImageInList(Image **images,Image *insert)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list to insert into. </dd>
+
+<dd> </dd>
+<dt>insert</dt>
+<dd>the image list to insert. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="NewImageList">NewImageList</a></h2>
+
+<p>NewImageList() creates an empty image list.</p>
+
+<p>The format of the NewImageList method is:</p>
+
+<pre class="text">
+Image *NewImageList(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="PrependImageToList">PrependImageToList</a></h2>
+
+<p>PrependImageToList() prepends the image to the beginning of the list.</p>
+
+<p>The format of the PrependImageToList method is:</p>
+
+<pre class="text">
+PrependImageToList(Image *images,Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="RemoveImageFromList">RemoveImageFromList</a></h2>
+
+<p>RemoveImageFromList() removes and returns the image pointed to.</p>
+
+<p>The given image list pointer is set to point to the next image in list if it exists, otherwise it is set to the previous image, or NULL if list was emptied.</p>
+
+<p>The format of the RemoveImageFromList method is:</p>
+
+<pre class="text">
+Image *RemoveImageFromList(Image **images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="RemoveFirstImageFromList">RemoveFirstImageFromList</a></h2>
+
+<p>RemoveFirstImageFromList() removes and returns the first image in the list.</p>
+
+<p>If the given image list pointer pointed to the removed first image, it is set to the new first image of list, or NULL if list was emptied, otherwise it is left as is.</p>
+
+<p>The format of the RemoveFirstImageFromList method is:</p>
+
+<pre class="text">
+Image *RemoveFirstImageFromList(Image **images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="RemoveLastImageFromList">RemoveLastImageFromList</a></h2>
+
+<p>RemoveLastImageFromList() removes and returns the last image from the list.</p>
+
+<p>If the given image list pointer pointed to the removed last image, it is set to the new last image of list, or NULL if list was emptied, otherwise it is left as is.</p>
+
+<p>The format of the RemoveLastImageFromList method is:</p>
+
+<pre class="text">
+Image *RemoveLastImageFromList(Image **images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="ReplaceImageInList">ReplaceImageInList</a></h2>
+
+<p>ReplaceImageInList() replaces an image in the list with the given image, or list of images. Old image is destroyed.</p>
+
+<p>The images list pointer is set to point to the first image of the inserted list of images.</p>
+
+<p>The format of the ReplaceImageInList method is:</p>
+
+<pre class="text">
+ReplaceImageInList(Image **images,Image *replace)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the list and pointer to image to replace </dd>
+
+<dd> </dd>
+<dt>replace</dt>
+<dd>the image or image list replacing the original </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="ReplaceImageInListReturnLast">ReplaceImageInListReturnLast</a></h2>
+
+<p>ReplaceImageInListReturnLast() is exactly as ReplaceImageInList() except the images pointer is set to the last image in the list of replacemen images.</p>
+
+<p>This allows you to simply use GetNextImageInList() to go to the image that follows the just replaced image, even if a list of replacement images was inserted.</p>
+
+<p>The format of the ReplaceImageInList method is:</p>
+
+<pre class="text">
+ReplaceImageInListReturnLast(Image **images,Image *replace)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the list and pointer to image to replace </dd>
+
+<dd> </dd>
+<dt>replace</dt>
+<dd>the image or image list replacing the original </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="ReverseImageList">ReverseImageList</a></h2>
+
+<p>ReverseImageList() reverses the order of an image list. The list pointer is reset to that start of the re-ordered list.</p>
+
+<p>The format of the ReverseImageList method is:</p>
+
+<pre class="text">
+void ReverseImageList(Image **images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="SpliceImageIntoList">SpliceImageIntoList</a></h2>
+
+<p>SpliceImageIntoList() removes 'length' images from the list and replaces them with the specified splice. Removed images are returned.</p>
+
+<p>The format of the SpliceImageIntoList method is:</p>
+
+<pre class="text">
+SpliceImageIntoList(Image **images,const size_t,
+ const Image *splice)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+<dt>length</dt>
+<dd>the length of the image list to remove. </dd>
+
+<dd> </dd>
+<dt>splice</dt>
+<dd>Replace the removed image list with this list. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/list_8c.html" id="SplitImageList">SplitImageList</a></h2>
+
+<p>SplitImageList() splits an image into two lists, after given image The list that was split off is returned, which may be empty.</p>
+
+<p>The format of the SplitImageList method is:</p>
+
+<pre class="text">
+Image *SplitImageList(Image *images)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image list. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="memory.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="AcquireAlignedMemory">AcquireAlignedMemory</a></h2>
+
+<p>AcquireAlignedMemory() returns a pointer to a block of memory at least size bytes whose address is a multiple of 16*sizeof(void *).</p>
+
+<p>The format of the AcquireAlignedMemory method is:</p>
+
+<pre class="text">
+void *AcquireAlignedMemory(const size_t count,const size_t quantum)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>count</dt>
+<dd>the number of quantum elements to allocate. </dd>
+
+<dd> </dd>
+<dt>quantum</dt>
+<dd>the number of bytes in each quantum. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="AcquireMagickMemory">AcquireMagickMemory</a></h2>
+
+<p>AcquireMagickMemory() returns a pointer to a block of memory at least size bytes suitably aligned for any use.</p>
+
+<p>The format of the AcquireMagickMemory method is:</p>
+
+<pre class="text">
+void *AcquireMagickMemory(const size_t size)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>size</dt>
+<dd>the size of the memory in bytes to allocate. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="AcquireQuantumMemory">AcquireQuantumMemory</a></h2>
+
+<p>AcquireQuantumMemory() returns a pointer to a block of memory at least count * quantum bytes suitably aligned for any use.</p>
+
+<p>The format of the AcquireQuantumMemory method is:</p>
+
+<pre class="text">
+void *AcquireQuantumMemory(const size_t count,const size_t quantum)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>count</dt>
+<dd>the number of quantum elements to allocate. </dd>
+
+<dd> </dd>
+<dt>quantum</dt>
+<dd>the number of bytes in each quantum. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="AcquireVirtualMemory">AcquireVirtualMemory</a></h2>
+
+<p>AcquireVirtualMemory() allocates a pointer to a block of memory at least size bytes suitably aligned for any use.</p>
+
+<p>The format of the AcquireVirtualMemory method is:</p>
+
+<pre class="text">
+MemoryInfo *AcquireVirtualMemory(const size_t count,const size_t quantum)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>count</dt>
+<dd>the number of quantum elements to allocate. </dd>
+
+<dd> </dd>
+<dt>quantum</dt>
+<dd>the number of bytes in each quantum. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="CopyMagickMemory">CopyMagickMemory</a></h2>
+
+<p>CopyMagickMemory() copies size bytes from memory area source to the destination. Copying between objects that overlap will take place correctly. It returns destination.</p>
+
+<p>The format of the CopyMagickMemory method is:</p>
+
+<pre class="text">
+void *CopyMagickMemory(void *destination,const void *source,
+ const size_t size)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>destination</dt>
+<dd>the destination. </dd>
+
+<dd> </dd>
+<dt>source</dt>
+<dd>the source. </dd>
+
+<dd> </dd>
+<dt>size</dt>
+<dd>the size of the memory in bytes to allocate. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="GetMagickMemoryMethods">GetMagickMemoryMethods</a></h2>
+
+<p>GetMagickMemoryMethods() gets the methods to acquire, resize, and destroy memory.</p>
+
+<p>The format of the GetMagickMemoryMethods() method is:</p>
+
+<pre class="text">
+void GetMagickMemoryMethods(AcquireMemoryHandler *acquire_memory_handler,
+ ResizeMemoryHandler *resize_memory_handler,
+ DestroyMemoryHandler *destroy_memory_handler)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>acquire_memory_handler</dt>
+<dd>method to acquire memory (e.g. malloc). </dd>
+
+<dd> </dd>
+<dt>resize_memory_handler</dt>
+<dd>method to resize memory (e.g. realloc). </dd>
+
+<dd> </dd>
+<dt>destroy_memory_handler</dt>
+<dd>method to destroy memory (e.g. free). </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="GetVirtualMemoryBlob">GetVirtualMemoryBlob</a></h2>
+
+<p>GetVirtualMemoryBlob() returns the virtual memory blob associated with the specified MemoryInfo structure.</p>
+
+<p>The format of the GetVirtualMemoryBlob method is:</p>
+
+<pre class="text">
+void *GetVirtualMemoryBlob(const MemoryInfo *memory_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory_info</dt>
+<dd>The MemoryInfo structure. </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="RelinquishAlignedMemory">RelinquishAlignedMemory</a></h2>
+
+<p>RelinquishAlignedMemory() frees memory acquired with AcquireAlignedMemory() or reuse.</p>
+
+<p>The format of the RelinquishAlignedMemory method is:</p>
+
+<pre class="text">
+void *RelinquishAlignedMemory(void *memory)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory</dt>
+<dd>A pointer to a block of memory to free for reuse. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="RelinquishMagickMemory">RelinquishMagickMemory</a></h2>
+
+<p>RelinquishMagickMemory() frees memory acquired with AcquireMagickMemory() or AcquireQuantumMemory() for reuse.</p>
+
+<p>The format of the RelinquishMagickMemory method is:</p>
+
+<pre class="text">
+void *RelinquishMagickMemory(void *memory)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory</dt>
+<dd>A pointer to a block of memory to free for reuse. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="RelinquishVirtualMemory">RelinquishVirtualMemory</a></h2>
+
+<p>RelinquishVirtualMemory() frees memory acquired with AcquireVirtualMemory().</p>
+
+<p>The format of the RelinquishVirtualMemory method is:</p>
+
+<pre class="text">
+MemoryInfo *RelinquishVirtualMemory(MemoryInfo *memory_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory_info</dt>
+<dd>A pointer to a block of memory to free for reuse. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="ResetMagickMemory">ResetMagickMemory</a></h2>
+
+<p>ResetMagickMemory() fills the first size bytes of the memory area pointed to by memory with the constant byte c.</p>
+
+<p>The format of the ResetMagickMemory method is:</p>
+
+<pre class="text">
+void *ResetMagickMemory(void *memory,int byte,const size_t size)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory</dt>
+<dd>a pointer to a memory allocation. </dd>
+
+<dd> </dd>
+<dt>byte</dt>
+<dd>set the memory to this value. </dd>
+
+<dd> </dd>
+<dt>size</dt>
+<dd>size of the memory to reset. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="ResizeMagickMemory">ResizeMagickMemory</a></h2>
+
+<p>ResizeMagickMemory() changes the size of the memory and returns a pointer to the (possibly moved) block. The contents will be unchanged up to the lesser of the new and old sizes.</p>
+
+<p>The format of the ResizeMagickMemory method is:</p>
+
+<pre class="text">
+void *ResizeMagickMemory(void *memory,const size_t size)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory</dt>
+<dd>A pointer to a memory allocation. </dd>
+
+<dd> </dd>
+<dt>size</dt>
+<dd>the new size of the allocated memory. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="ResizeQuantumMemory">ResizeQuantumMemory</a></h2>
+
+<p>ResizeQuantumMemory() changes the size of the memory and returns a pointer to the (possibly moved) block. The contents will be unchanged up to the lesser of the new and old sizes.</p>
+
+<p>The format of the ResizeQuantumMemory method is:</p>
+
+<pre class="text">
+void *ResizeQuantumMemory(void *memory,const size_t count,
+ const size_t quantum)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>memory</dt>
+<dd>A pointer to a memory allocation. </dd>
+
+<dd> </dd>
+<dt>count</dt>
+<dd>the number of quantum elements to allocate. </dd>
+
+<dd> </dd>
+<dt>quantum</dt>
+<dd>the number of bytes in each quantum. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/memory_8c.html" id="SetMagickMemoryMethods">SetMagickMemoryMethods</a></h2>
+
+<p>SetMagickMemoryMethods() sets the methods to acquire, resize, and destroy memory. Your custom memory methods must be set prior to the MagickCoreGenesis() method.</p>
+
+<p>The format of the SetMagickMemoryMethods() method is:</p>
+
+<pre class="text">
+SetMagickMemoryMethods(AcquireMemoryHandler acquire_memory_handler,
+ ResizeMemoryHandler resize_memory_handler,
+ DestroyMemoryHandler destroy_memory_handler)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>acquire_memory_handler</dt>
+<dd>method to acquire memory (e.g. malloc). </dd>
+
+<dd> </dd>
+<dt>resize_memory_handler</dt>
+<dd>method to resize memory (e.g. realloc). </dd>
+
+<dd> </dd>
+<dt>destroy_memory_handler</dt>
+<dd>method to destroy memory (e.g. free). </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="mime.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/mime_8c.html" id="AcquireMimeCache">AcquireMimeCache</a></h2>
+
+<p>AcquireMimeCache() caches one or more magic configurations which provides a mapping between magic attributes and a magic name.</p>
+
+<p>The format of the AcquireMimeCache method is:</p>
+
+<pre class="text">
+LinkedListInfo *AcquireMimeCache(const char *filename,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>filename</dt>
+<dd>the font file name. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/mime_8c.html" id="GetMimeInfoList">GetMimeInfoList</a></h2>
+
+<p>GetMimeInfoList() returns any image aliases that match the specified pattern.</p>
+
+<p>The magic of the GetMimeInfoList function is:</p>
+
+<pre class="text">
+const MimeInfo **GetMimeInfoList(const char *pattern,
+ size_t *number_aliases,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>pattern</dt>
+<dd>Specifies a pointer to a text string containing a pattern. </dd>
+
+<dd> </dd>
+<dt>number_aliases</dt>
+<dd> This integer returns the number of magics in the list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/mime_8c.html" id="GetMimeList">GetMimeList</a></h2>
+
+<p>GetMimeList() returns any image format alias that matches the specified pattern.</p>
+
+<p>The format of the GetMimeList function is:</p>
+
+<pre class="text">
+char **GetMimeList(const char *pattern,size_t *number_aliases,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>pattern</dt>
+<dd>Specifies a pointer to a text string containing a pattern. </dd>
+
+<dd> </dd>
+<dt>number_aliases</dt>
+<dd> This integer returns the number of image format aliases in the list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/mime_8c.html" id="GetMimeDescription">GetMimeDescription</a></h2>
+
+<p>GetMimeDescription() returns the mime type description.</p>
+
+<p>The format of the GetMimeDescription method is:</p>
+
+<pre class="text">
+const char *GetMimeDescription(const MimeInfo *mime_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>mime_info</dt>
+<dd> The magic info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/mime_8c.html" id="GetMimeType">GetMimeType</a></h2>
+
+<p>GetMimeType() returns the mime type.</p>
+
+<p>The format of the GetMimeType method is:</p>
+
+<pre class="text">
+const char *GetMimeType(const MimeInfo *mime_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>mime_info</dt>
+<dd> The magic info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/mime_8c.html" id="ListMimeInfo">ListMimeInfo</a></h2>
+
+<p>ListMimeInfo() lists the magic info to a file.</p>
+
+<p>The format of the ListMimeInfo method is:</p>
+
+<pre class="text">
+MagickBooleanType ListMimeInfo(FILE *file,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>file</dt>
+<p>An pointer to a FILE.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="module.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="AcquireModuleInfo">AcquireModuleInfo</a></h2>
+
+<p>AcquireModuleInfo() allocates the ModuleInfo structure.</p>
+
+<p>The format of the AcquireModuleInfo method is:</p>
+
+<pre class="text">
+ModuleInfo *AcquireModuleInfo(const char *path,const char *tag)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>path</dt>
+<dd>the path associated with the tag. </dd>
+
+<dd> </dd>
+<dt>tag</dt>
+<dd>a character string that represents the image format we are looking for. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="DestroyModuleList">DestroyModuleList</a></h2>
+
+<p>DestroyModuleList() unregisters any previously loaded modules and exits the module loaded environment.</p>
+
+<p>The format of the DestroyModuleList module is:</p>
+
+<pre class="text">
+void DestroyModuleList(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="GetModuleInfo">GetModuleInfo</a></h2>
+
+<p>GetModuleInfo() returns a pointer to a ModuleInfo structure that matches the specified tag. If tag is NULL, the head of the module list is returned. If no modules are loaded, or the requested module is not found, NULL is returned.</p>
+
+<p>The format of the GetModuleInfo module is:</p>
+
+<pre class="text">
+ModuleInfo *GetModuleInfo(const char *tag,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>tag</dt>
+<dd>a character string that represents the image format we are looking for. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="GetModuleInfoList">GetModuleInfoList</a></h2>
+
+<p>GetModuleInfoList() returns any modules that match the specified pattern.</p>
+
+<p>The format of the GetModuleInfoList function is:</p>
+
+<pre class="text">
+const ModuleInfo **GetModuleInfoList(const char *pattern,
+ size_t *number_modules,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>pattern</dt>
+<dd>Specifies a pointer to a text string containing a pattern. </dd>
+
+<dd> </dd>
+<dt>number_modules</dt>
+<dd> This integer returns the number of modules in the list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="GetModuleList">GetModuleList</a></h2>
+
+<p>GetModuleList() returns any image format modules that match the specified pattern.</p>
+
+<p>The format of the GetModuleList function is:</p>
+
+<pre class="text">
+char **GetModuleList(const char *pattern,const MagickModuleType type,
+ size_t *number_modules,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>pattern</dt>
+<dd>Specifies a pointer to a text string containing a pattern. </dd>
+
+<dd> </dd>
+<dt>type</dt>
+<dd>choose from MagickImageCoderModule or MagickImageFilterModule. </dd>
+
+<dd> </dd>
+<dt>number_modules</dt>
+<dd> This integer returns the number of modules in the list. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="GetMagickModulePath">GetMagickModulePath</a></h2>
+
+<p>GetMagickModulePath() finds a module with the specified module type and filename.</p>
+
+<p>The format of the GetMagickModulePath module is:</p>
+
+<pre class="text">
+MagickBooleanType GetMagickModulePath(const char *filename,
+ MagickModuleType module_type,char *path,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>filename</dt>
+<dd>the module file name. </dd>
+
+<dd> </dd>
+<dt>module_type</dt>
+<dd>the module type: MagickImageCoderModule or MagickImageFilterModule. </dd>
+
+<dd> </dd>
+<dt>path</dt>
+<dd>the path associated with the filename. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="IsModuleTreeInstantiated">IsModuleTreeInstantiated</a></h2>
+
+<p>IsModuleTreeInstantiated() determines if the module tree is instantiated. If not, it instantiates the tree and returns it.</p>
+
+<p>The format of the IsModuleTreeInstantiated() method is:</p>
+
+<pre class="text">
+IsModuleTreeInstantiated(Exceptioninfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="InvokeDynamicImageFilter">InvokeDynamicImageFilter</a></h2>
+
+<p>InvokeDynamicImageFilter() invokes a dynamic image filter.</p>
+
+<p>The format of the InvokeDynamicImageFilter module is:</p>
+
+<pre class="text">
+MagickBooleanType InvokeDynamicImageFilter(const char *tag,Image **image,
+ const int argc,const char **argv,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>tag</dt>
+<dd>a character string that represents the name of the particular module. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>argc</dt>
+<dd>a pointer to an integer describing the number of elements in the argument vector. </dd>
+
+<dd> </dd>
+<dt>argv</dt>
+<dd>a pointer to a text array containing the command line arguments. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="ListModuleInfo">ListModuleInfo</a></h2>
+
+<p>ListModuleInfo() lists the module info to a file.</p>
+
+<p>The format of the ListModuleInfo module is:</p>
+
+<pre class="text">
+MagickBooleanType ListModuleInfo(FILE *file,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>file</dt>
+<p>An pointer to a FILE.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="OpenModule">OpenModule</a></h2>
+
+<p>OpenModule() loads a module, and invokes its registration module. It returns MagickTrue on success, and MagickFalse if there is an error.</p>
+
+<p>The format of the OpenModule module is:</p>
+
+<pre class="text">
+MagickBooleanType OpenModule(const char *module,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>module</dt>
+<dd>a character string that indicates the module to load. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="OpenModules">OpenModules</a></h2>
+
+<p>OpenModules() loads all available modules.</p>
+
+<p>The format of the OpenModules module is:</p>
+
+<pre class="text">
+MagickBooleanType OpenModules(ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="RegisterModule">RegisterModule</a></h2>
+
+<p>RegisterModule() adds an entry to the module list. It returns a pointer to the registered entry on success.</p>
+
+<p>The format of the RegisterModule module is:</p>
+
+<pre class="text">
+ModuleInfo *RegisterModule(const ModuleInfo *module_info,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>info</dt>
+<dd>a pointer to the registered entry is returned. </dd>
+
+<dd> </dd>
+<dt>module_info</dt>
+<dd>a pointer to the ModuleInfo structure to register. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="TagToCoderModuleName">TagToCoderModuleName</a></h2>
+
+<p>TagToCoderModuleName() munges a module tag and obtains the filename of the corresponding module.</p>
+
+<p>The format of the TagToCoderModuleName module is:</p>
+
+<pre class="text">
+char *TagToCoderModuleName(const char *tag,char *name)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>tag</dt>
+<dd>a character string representing the module tag. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>return the module name here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="TagToFilterModuleName">TagToFilterModuleName</a></h2>
+
+<p>TagToFilterModuleName() munges a module tag and returns the filename of the corresponding filter module.</p>
+
+<p>The format of the TagToFilterModuleName module is:</p>
+
+<pre class="text">
+void TagToFilterModuleName(const char *tag,char name)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>tag</dt>
+<dd>a character string representing the module tag. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>return the filter name here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="TagToModuleName">TagToModuleName</a></h2>
+
+<p>TagToModuleName() munges the module tag name and returns an upper-case tag name as the input string, and a user-provided format.</p>
+
+<p>The format of the TagToModuleName module is:</p>
+
+<pre class="text">
+TagToModuleName(const char *tag,const char *format,char *module)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>tag</dt>
+<dd>the module tag. </dd>
+
+<dd> </dd>
+<dt>format</dt>
+<dd>a sprintf-compatible format string containing s where the upper-case tag name is to be inserted. </dd>
+
+<dd> </dd>
+<dt>module</dt>
+<dd>pointer to a destination buffer for the formatted result. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/module_8c.html" id="UnregisterModule">UnregisterModule</a></h2>
+
+<p>UnregisterModule() unloads a module, and invokes its de-registration module. Returns MagickTrue on success, and MagickFalse if there is an error.</p>
+
+<p>The format of the UnregisterModule module is:</p>
+
+<pre class="text">
+MagickBooleanType UnregisterModule(const ModuleInfo *module_info,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>module_info</dt>
+<dd>the module info. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="mogrify.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/mogrify_8c.html" id="MagickCommandGenesis">MagickCommandGenesis</a></h2>
+
+<p>MagickCommandGenesis() applies image processing options to an image as prescribed by command line options.</p>
+
+<p>It wiil look for special options like "-debug", "-bench", and "-distribute-cache" that needs to be applied even before the main processing begins, and may completely overrule normal command processing. Such 'Genesis' Options can only be given on the CLI, (not in a script) and are typically ignored (as they have been handled) if seen later.</p>
+
+<p>The format of the MagickCommandGenesis method is:</p>
+
+<pre class="text">
+MagickBooleanType MagickCommandGenesis(ImageInfo *image_info,
+ MagickCommand command,int argc,char **argv,char **metadata,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>command</dt>
+<dd>Choose from ConvertImageCommand, IdentifyImageCommand, MogrifyImageCommand, CompositeImageCommand, CompareImagesCommand, ConjureImageCommand, StreamImageCommand, ImportImageCommand, DisplayImageCommand, or AnimateImageCommand. </dd>
+
+<dd> </dd>
+<dt>argc</dt>
+<dd>Specifies a pointer to an integer describing the number of elements in the argument vector. </dd>
+
+<dd> </dd>
+<dt>argv</dt>
+<dd>Specifies a pointer to a text array containing the command line arguments. </dd>
+
+<dd> </dd>
+<dt>metadata</dt>
+<dd>any metadata is returned here. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="monitor.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/monitor_8c.html" id="SetImageProgressMonitor">SetImageProgressMonitor</a></h2>
+
+<p>SetImageProgressMonitor() sets the image progress monitor to the specified method and returns the previous progress monitor if any. The progress monitor method looks like this:</p>
+
+<pre class="text">
+ MagickBooleanType MagickProgressMonitor(const char *text,
+const MagickOffsetType offset,const MagickSizeType extent,
+void *client_data)
+</pre>
+
+<p>If the progress monitor returns MagickFalse, the current operation is interrupted.</p>
+
+<p>The format of the SetImageProgressMonitor method is:</p>
+
+<pre class="text">
+MagickProgressMonitor SetImageProgressMonitor(Image *image,
+ const MagickProgressMonitor progress_monitor,void *client_data)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>progress_monitor</dt>
+<dd>Specifies a pointer to a method to monitor progress of an image operation. </dd>
+
+<dd> </dd>
+<dt>client_data</dt>
+<dd>Specifies a pointer to any client data. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/monitor_8c.html" id="SetImageInfoProgressMonitor">SetImageInfoProgressMonitor</a></h2>
+
+<p>SetImageInfoProgressMonitor() sets the image_info progress monitor to the specified method and returns the previous progress monitor if any. The progress monitor method looks like this:</p>
+
+<pre class="text">
+ MagickBooleanType MagickProgressMonitor(const char *text,
+const MagickOffsetType offset,const MagickSizeType extent,
+void *client_data)
+</pre>
+
+<p>If the progress monitor returns MagickFalse, the current operation is interrupted.</p>
+
+<p>The format of the SetImageInfoProgressMonitor method is:</p>
+
+<pre class="text">
+MagickProgressMonitor SetImageInfoProgressMonitor(ImageInfo *image_info,
+ const MagickProgressMonitor progress_monitor,void *client_data)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>progress_monitor</dt>
+<dd>Specifies a pointer to a method to monitor progress of an image operation. </dd>
+
+<dd> </dd>
+<dt>client_data</dt>
+<dd>Specifies a pointer to any client data. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="montage.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/montage_8c.html" id="CloneMontageInfo">CloneMontageInfo</a></h2>
+
+<p>CloneMontageInfo() makes a copy of the given montage info structure. If NULL is specified, a new image info structure is created initialized to default values.</p>
+
+<p>The format of the CloneMontageInfo method is:</p>
+
+<pre class="text">
+MontageInfo *CloneMontageInfo(const ImageInfo *image_info,
+ const MontageInfo *montage_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>montage_info</dt>
+<dd>the montage info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/montage_8c.html" id="DestroyMontageInfo">DestroyMontageInfo</a></h2>
+
+<p>DestroyMontageInfo() deallocates memory associated with montage_info.</p>
+
+<p>The format of the DestroyMontageInfo method is:</p>
+
+<pre class="text">
+MontageInfo *DestroyMontageInfo(MontageInfo *montage_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>montage_info</dt>
+<dd>Specifies a pointer to an MontageInfo structure. </dd>
+
+<dd> </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/montage_8c.html" id="GetMontageInfo">GetMontageInfo</a></h2>
+
+<p>GetMontageInfo() initializes montage_info to default values.</p>
+
+<p>The format of the GetMontageInfo method is:</p>
+
+<pre class="text">
+void GetMontageInfo(const ImageInfo *image_info,
+ MontageInfo *montage_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>a structure of type ImageInfo. </dd>
+
+<dd> </dd>
+<dt>montage_info</dt>
+<dd>Specifies a pointer to a MontageInfo structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/montage_8c.html" id="MontageImageList">MontageImageList</a></h2>
+
+<p>MontageImageList() is a layout manager that lets you tile one or more thumbnails across an image canvas.</p>
+
+<p>The format of the MontageImageList method is:</p>
+
+<pre class="text">
+Image *MontageImageList(const ImageInfo *image_info,
+ const MontageInfo *montage_info,Image *images,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>montage_info</dt>
+<dd>Specifies a pointer to a MontageInfo structure. </dd>
+
+<dd> </dd>
+<dt>images</dt>
+<dd>Specifies a pointer to an array of Image structures. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="morphology.html#"></a></p>
+<p class="text-center"><a href="morphology.html#AcquireKernelInfo">AcquireKernelInfo</a> • <a href="morphology.html#AcquireKernelBuiltIn">AcquireKernelBuiltIn</a> • <a href="morphology.html#CloneKernelInfo">CloneKernelInfo</a> • <a href="morphology.html#DestroyKernelInfo">DestroyKernelInfo</a> • <a href="morphology.html#MorphologyApply">MorphologyApply</a> • <a href="morphology.html#This%20is%20almost%20identical%20to%20the%20MorphologyPrimative">This is almost identical to the MorphologyPrimative</a> • <a href="morphology.html#MorphologyImage">MorphologyImage</a> • <a href="morphology.html#ScaleGeometryKernelInfo">ScaleGeometryKernelInfo</a> • <a href="morphology.html#ScaleKernelInfo">ScaleKernelInfo</a> • <a href="morphology.html#ShowKernelInfo">ShowKernelInfo</a> • <a href="morphology.html#UnityAddKernelInfo">UnityAddKernelInfo</a> • <a href="morphology.html#ZeroKernelNans">ZeroKernelNans</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="AcquireKernelInfo">AcquireKernelInfo</a></h2>
+
+<p>AcquireKernelInfo() takes the given string (generally supplied by the user) and converts it into a Morphology/Convolution Kernel. This allows users to specify a kernel from a number of pre-defined kernels, or to fully specify their own kernel for a specific Convolution or Morphology Operation.</p>
+
+<p>The kernel so generated can be any rectangular array of floating point values (doubles) with the 'control point' or 'pixel being affected' anywhere within that array of values.</p>
+
+<p>Previously IM was restricted to a square of odd size using the exact center as origin, this is no longer the case, and any rectangular kernel with any value being declared the origin. This in turn allows the use of highly asymmetrical kernels.</p>
+
+<p>The floating point values in the kernel can also include a special value known as 'nan' or 'not a number' to indicate that this value is not part of the kernel array. This allows you to shaped the kernel within its rectangular area. That is 'nan' values provide a 'mask' for the kernel shape. However at least one non-nan value must be provided for correct working of a kernel.</p>
+
+<p>The returned kernel should be freed using the DestroyKernelInfo() when you are finished with it. Do not free this memory yourself.</p>
+
+<p>Input kernel defintion strings can consist of any of three types.</p>
+
+<p>"name:args[[@><]" Select from one of the built in kernels, using the name and geometry arguments supplied. See AcquireKernelBuiltIn()</p>
+
+<p>"WxH[+X+Y][@><]:num, num, num ..." a kernel of size W by H, with W*H floating point numbers following. the 'center' can be optionally be defined at +X+Y (such that +0+0 is top left corner). If not defined the pixel in the center, for odd sizes, or to the immediate top or left of center for even sizes is automatically selected.</p>
+
+<p>"num, num, num, num, ..." list of floating point numbers defining an 'old style' odd sized square kernel. At least 9 values should be provided for a 3x3 square kernel, 25 for a 5x5 square kernel, 49 for 7x7, etc. Values can be space or comma separated. This is not recommended.</p>
+
+<p>You can define a 'list of kernels' which can be used by some morphology operators A list is defined as a semi-colon separated list kernels.</p>
+
+<p>" kernel ; kernel ; kernel ; "</p>
+
+<p>Any extra ';' characters, at start, end or between kernel defintions are simply ignored.</p>
+
+<p>The special flags will expand a single kernel, into a list of rotated kernels. A '@' flag will expand a 3x3 kernel into a list of 45-degree cyclic rotations, while a '>' will generate a list of 90-degree rotations. The '<' also exands using 90-degree rotates, but giving a 180-degree reflected kernel before the +/- 90-degree rotations, which can be important for Thinning operations.</p>
+
+<p>Note that 'name' kernels will start with an alphabetic character while the new kernel specification has a ':' character in its specification string. If neither is the case, it is assumed an old style of a simple list of numbers generating a odd-sized square kernel has been given.</p>
+
+<p>The format of the AcquireKernal method is:</p>
+
+<pre class="text">
+KernelInfo *AcquireKernelInfo(const char *kernel_string)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel_string</dt>
+<dd>the Morphology/Convolution kernel wanted. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="AcquireKernelBuiltIn">AcquireKernelBuiltIn</a></h2>
+
+<p>AcquireKernelBuiltIn() returned one of the 'named' built-in types of kernels used for special purposes such as gaussian blurring, skeleton pruning, and edge distance determination.</p>
+
+<p>They take a KernelType, and a set of geometry style arguments, which were typically decoded from a user supplied string, or from a more complex Morphology Method that was requested.</p>
+
+<p>The format of the AcquireKernalBuiltIn method is:</p>
+
+<pre class="text">
+KernelInfo *AcquireKernelBuiltIn(const KernelInfoType type,
+ const GeometryInfo args)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the pre-defined type of kernel wanted </dd>
+
+<dd> </dd>
+<dt>args</dt>
+<dd>arguments defining or modifying the kernel </dd>
+
+<dd> Convolution Kernels </dd>
+
+<dd> Unity The a No-Op or Scaling single element kernel. </dd>
+
+<dd> Gaussian:{radius},{sigma} Generate a two-dimensional gaussian kernel, as used by -gaussian. The sigma for the curve is required. The resulting kernel is normalized, </dd>
+
+<dd> If 'sigma' is zero, you get a single pixel on a field of zeros. </dd>
+
+<dd> NOTE: that the 'radius' is optional, but if provided can limit (clip) the final size of the resulting kernel to a square 2*radius+1 in size. The radius should be at least 2 times that of the sigma value, or sever clipping and aliasing may result. If not given or set to 0 the radius will be determined so as to produce the best minimal error result, which is usally much larger than is normally needed. </dd>
+
+<dd> LoG:{radius},{sigma} "Laplacian of a Gaussian" or "Mexician Hat" Kernel. The supposed ideal edge detection, zero-summing kernel. </dd>
+
+<dd> An alturnative to this kernel is to use a "DoG" with a sigma ratio of approx 1.6 (according to wikipedia). </dd>
+
+<dd> DoG:{radius},{sigma1},{sigma2} "Difference of Gaussians" Kernel. As "Gaussian" but with a gaussian produced by 'sigma2' subtracted from the gaussian produced by 'sigma1'. Typically sigma2 > sigma1. The result is a zero-summing kernel. </dd>
+
+<dd> Blur:{radius},{sigma}[,{angle}] Generates a 1 dimensional or linear gaussian blur, at the angle given (current restricted to orthogonal angles). If a 'radius' is given the kernel is clipped to a width of 2*radius+1. Kernel can be rotated by a 90 degree angle. </dd>
+
+<dd> If 'sigma' is zero, you get a single pixel on a field of zeros. </dd>
+
+<dd> Note that two convolutions with two "Blur" kernels perpendicular to each other, is equivalent to a far larger "Gaussian" kernel with the same sigma value, However it is much faster to apply. This is how the "-blur" operator actually works. </dd>
+
+<dd> Comet:{width},{sigma},{angle} Blur in one direction only, much like how a bright object leaves a comet like trail. The Kernel is actually half a gaussian curve, Adding two such blurs in opposite directions produces a Blur Kernel. Angle can be rotated in multiples of 90 degrees. </dd>
+
+<dd> Note that the first argument is the width of the kernel and not the radius of the kernel. </dd>
+
+<dd> Binomial:[{radius}] Generate a discrete kernel using a 2 dimentional Pascel's Triangle of values. Used for special forma of image filters. </dd>
+
+<dd> # Still to be implemented... # # Filter2D # Filter1D # Set kernel values using a resize filter, and given scale (sigma) # Cylindrical or Linear. Is this possible with an image? # </dd>
+
+<dd> Named Constant Convolution Kernels </dd>
+
+<dd> All these are unscaled, zero-summing kernels by default. As such for non-HDRI version of ImageMagick some form of normalization, user scaling, and biasing the results is recommended, to prevent the resulting image being 'clipped'. </dd>
+
+<dd> The 3x3 kernels (most of these) can be circularly rotated in multiples of 45 degrees to generate the 8 angled varients of each of the kernels. </dd>
+
+<dd> Laplacian:{type} Discrete Lapacian Kernels, (without normalization) Type 0 : 3x3 with center:8 surounded by -1 (8 neighbourhood) Type 1 : 3x3 with center:4 edge:-1 corner:0 (4 neighbourhood) Type 2 : 3x3 with center:4 edge:1 corner:-2 Type 3 : 3x3 with center:4 edge:-2 corner:1 Type 5 : 5x5 laplacian Type 7 : 7x7 laplacian Type 15 : 5x5 LoG (sigma approx 1.4) Type 19 : 9x9 LoG (sigma approx 1.4) </dd>
+
+<dd> Sobel:{angle} Sobel 'Edge' convolution kernel (3x3) | -1, 0, 1 | | -2, 0,-2 | | -1, 0, 1 | </dd>
+
+<dd> Roberts:{angle} Roberts convolution kernel (3x3) | 0, 0, 0 | | -1, 1, 0 | | 0, 0, 0 | </dd>
+
+<dd> Prewitt:{angle} Prewitt Edge convolution kernel (3x3) | -1, 0, 1 | | -1, 0, 1 | | -1, 0, 1 | </dd>
+
+<dd> Compass:{angle} Prewitt's "Compass" convolution kernel (3x3) | -1, 1, 1 | | -1,-2, 1 | | -1, 1, 1 | </dd>
+
+<dd> Kirsch:{angle} Kirsch's "Compass" convolution kernel (3x3) | -3,-3, 5 | | -3, 0, 5 | | -3,-3, 5 | </dd>
+
+<dd> FreiChen:{angle} Frei-Chen Edge Detector is based on a kernel that is similar to the Sobel Kernel, but is designed to be isotropic. That is it takes into account the distance of the diagonal in the kernel. </dd>
+
+<dd> | 1, 0, -1 | | sqrt(2), 0, -sqrt(2) | | 1, 0, -1 | </dd>
+
+<dd> FreiChen:{type},{angle} </dd>
+
+<dd> Frei-Chen Pre-weighted kernels... </dd>
+
+<dd> Type 0: default un-nomalized version shown above. </dd>
+
+<dd> Type 1: Orthogonal Kernel (same as type 11 below) | 1, 0, -1 | | sqrt(2), 0, -sqrt(2) | / 2*sqrt(2) | 1, 0, -1 | </dd>
+
+<dd> Type 2: Diagonal form of Kernel... | 1, sqrt(2), 0 | | sqrt(2), 0, -sqrt(2) | / 2*sqrt(2) | 0, -sqrt(2) -1 | </dd>
+
+<dd> However this kernel is als at the heart of the FreiChen Edge Detection Process which uses a set of 9 specially weighted kernel. These 9 kernels not be normalized, but directly applied to the image. The results is then added together, to produce the intensity of an edge in a specific direction. The square root of the pixel value can then be taken as the cosine of the edge, and at least 2 such runs at 90 degrees from each other, both the direction and the strength of the edge can be determined. </dd>
+
+<dd> Type 10: All 9 of the following pre-weighted kernels... </dd>
+
+<dd> Type 11: | 1, 0, -1 | | sqrt(2), 0, -sqrt(2) | / 2*sqrt(2) | 1, 0, -1 | </dd>
+
+<dd> Type 12: | 1, sqrt(2), 1 | | 0, 0, 0 | / 2*sqrt(2) | 1, sqrt(2), 1 | </dd>
+
+<dd> Type 13: | sqrt(2), -1, 0 | | -1, 0, 1 | / 2*sqrt(2) | 0, 1, -sqrt(2) | </dd>
+
+<dd> Type 14: | 0, 1, -sqrt(2) | | -1, 0, 1 | / 2*sqrt(2) | sqrt(2), -1, 0 | </dd>
+
+<dd> Type 15: | 0, -1, 0 | | 1, 0, 1 | / 2 | 0, -1, 0 | </dd>
+
+<dd> Type 16: | 1, 0, -1 | | 0, 0, 0 | / 2 | -1, 0, 1 | </dd>
+
+<dd> Type 17: | 1, -2, 1 | | -2, 4, -2 | / 6 | -1, -2, 1 | </dd>
+
+<dd> Type 18: | -2, 1, -2 | | 1, 4, 1 | / 6 | -2, 1, -2 | </dd>
+
+<dd> Type 19: | 1, 1, 1 | | 1, 1, 1 | / 3 | 1, 1, 1 | </dd>
+
+<dd> The first 4 are for edge detection, the next 4 are for line detection and the last is to add a average component to the results. </dd>
+
+<dd> Using a special type of '-1' will return all 9 pre-weighted kernels as a multi-kernel list, so that you can use them directly (without normalization) with the special "-set option:morphology:compose Plus" setting to apply the full FreiChen Edge Detection Technique. </dd>
+
+<dd> If 'type' is large it will be taken to be an actual rotation angle for the default FreiChen (type 0) kernel. As such FreiChen:45 will look like a Sobel:45 but with 'sqrt(2)' instead of '2' values. </dd>
+
+<dd> WARNING: The above was layed out as per http://www.math.tau.ac.il/~turkel/notes/edge_detectors.pdf But rotated 90 degrees so direction is from left rather than the top. I have yet to find any secondary confirmation of the above. The only other source found was actual source code at http://ltswww.epfl.ch/~courstiv/exos_labos/sol3.pdf Neigher paper defineds the kernels in a way that looks locical or correct when taken as a whole. </dd>
+
+<dd> Boolean Kernels </dd>
+
+<dd> Diamond:[{radius}[,{scale}]] Generate a diamond shaped kernel with given radius to the points. Kernel size will again be radius*2+1 square and defaults to radius 1, generating a 3x3 kernel that is slightly larger than a square. </dd>
+
+<dd> Square:[{radius}[,{scale}]] Generate a square shaped kernel of size radius*2+1, and defaulting to a 3x3 (radius 1). </dd>
+
+<dd> Octagon:[{radius}[,{scale}]] Generate octagonal shaped kernel of given radius and constant scale. Default radius is 3 producing a 7x7 kernel. A radius of 1 will result in "Diamond" kernel. </dd>
+
+<dd> Disk:[{radius}[,{scale}]] Generate a binary disk, thresholded at the radius given, the radius may be a float-point value. Final Kernel size is floor(radius)*2+1 square. A radius of 5.3 is the default. </dd>
+
+<dd> NOTE: That a low radii Disk kernels produce the same results as many of the previously defined kernels, but differ greatly at larger radii. Here is a table of equivalences... "Disk:1" => "Diamond", "Octagon:1", or "Cross:1" "Disk:1.5" => "Square" "Disk:2" => "Diamond:2" "Disk:2.5" => "Octagon" "Disk:2.9" => "Square:2" "Disk:3.5" => "Octagon:3" "Disk:4.5" => "Octagon:4" "Disk:5.4" => "Octagon:5" "Disk:6.4" => "Octagon:6" All other Disk shapes are unique to this kernel, but because a "Disk" is more circular when using a larger radius, using a larger radius is preferred over iterating the morphological operation. </dd>
+
+<dd> Rectangle:{geometry} Simply generate a rectangle of 1's with the size given. You can also specify the location of the 'control point', otherwise the closest pixel to the center of the rectangle is selected. </dd>
+
+<dd> Properly centered and odd sized rectangles work the best. </dd>
+
+<dd> Symbol Dilation Kernels </dd>
+
+<dd> These kernel is not a good general morphological kernel, but is used more for highlighting and marking any single pixels in an image using, a "Dilate" method as appropriate. </dd>
+
+<dd> For the same reasons iterating these kernels does not produce the same result as using a larger radius for the symbol. </dd>
+
+<dd> Plus:[{radius}[,{scale}]] Cross:[{radius}[,{scale}]] Generate a kernel in the shape of a 'plus' or a 'cross' with a each arm the length of the given radius (default 2). </dd>
+
+<dd> NOTE: "plus:1" is equivalent to a "Diamond" kernel. </dd>
+
+<dd> Ring:{radius1},{radius2}[,{scale}] A ring of the values given that falls between the two radii. Defaults to a ring of approximataly 3 radius in a 7x7 kernel. This is the 'edge' pixels of the default "Disk" kernel, More specifically, "Ring" -> "Ring:2.5,3.5,1.0" </dd>
+
+<dd> Hit and Miss Kernels </dd>
+
+<dd> Peak:radius1,radius2 Find any peak larger than the pixels the fall between the two radii. The default ring of pixels is as per "Ring". Edges Find flat orthogonal edges of a binary shape Corners Find 90 degree corners of a binary shape Diagonals:type A special kernel to thin the 'outside' of diagonals LineEnds:type Find end points of lines (for pruning a skeletion) Two types of lines ends (default to both) can be searched for Type 0: All line ends Type 1: single kernel for 4-conneected line ends Type 2: single kernel for simple line ends LineJunctions Find three line junctions (within a skeletion) Type 0: all line junctions Type 1: Y Junction kernel Type 2: Diagonal T Junction kernel Type 3: Orthogonal T Junction kernel Type 4: Diagonal X Junction kernel Type 5: Orthogonal + Junction kernel Ridges:type Find single pixel ridges or thin lines Type 1: Fine single pixel thick lines and ridges Type 2: Find two pixel thick lines and ridges ConvexHull Octagonal Thickening Kernel, to generate convex hulls of 45 degrees Skeleton:type Traditional skeleton generating kernels. Type 1: Tradional Skeleton kernel (4 connected skeleton) Type 2: HIPR2 Skeleton kernel (8 connected skeleton) Type 3: Thinning skeleton based on a ressearch paper by Dan S. Bloomberg (Default Type) ThinSE:type A huge variety of Thinning Kernels designed to preserve conectivity. many other kernel sets use these kernels as source definitions. Type numbers are 41-49, 81-89, 481, and 482 which are based on the super and sub notations used in the source research paper. </dd>
+
+<dd> Distance Measuring Kernels </dd>
+
+<dd> Different types of distance measuring methods, which are used with the a 'Distance' morphology method for generating a gradient based on distance from an edge of a binary shape, though there is a technique for handling a anti-aliased shape. </dd>
+
+<dd> See the 'Distance' Morphological Method, for information of how it is applied. </dd>
+
+<dd> Chebyshev:[{radius}][x{scale}[!]] Chebyshev Distance (also known as Tchebychev or Chessboard distance) is a value of one to any neighbour, orthogonal or diagonal. One why of thinking of it is the number of squares a 'King' or 'Queen' in chess needs to traverse reach any other position on a chess board. It results in a 'square' like distance function, but one where diagonals are given a value that is closer than expected. </dd>
+
+<dd> Manhattan:[{radius}][x{scale}[!]] Manhattan Distance (also known as Rectilinear, City Block, or the Taxi Cab distance metric), it is the distance needed when you can only travel in horizontal or vertical directions only. It is the distance a 'Rook' in chess would have to travel, and results in a diamond like distances, where diagonals are further than expected. </dd>
+
+<dd> Octagonal:[{radius}][x{scale}[!]] An interleving of Manhatten and Chebyshev metrics producing an increasing octagonally shaped distance. Distances matches those of the "Octagon" shaped kernel of the same radius. The minimum radius and default is 2, producing a 5x5 kernel. </dd>
+
+<dd> Euclidean:[{radius}][x{scale}[!]] Euclidean distance is the 'direct' or 'as the crow flys' distance. However by default the kernel size only has a radius of 1, which limits the distance to 'Knight' like moves, with only orthogonal and diagonal measurements being correct. As such for the default kernel you will get octagonal like distance function. </dd>
+
+<dd> However using a larger radius such as "Euclidean:4" you will get a much smoother distance gradient from the edge of the shape. Especially if the image is pre-processed to include any anti-aliasing pixels. Of course a larger kernel is slower to use, and not always needed. </dd>
+
+<dd> The first three Distance Measuring Kernels will only generate distances of exact multiples of {scale} in binary images. As such you can use a scale of 1 without loosing any information. However you also need some scaling when handling non-binary anti-aliased shapes. </dd>
+
+<dd> The "Euclidean" Distance Kernel however does generate a non-integer fractional results, and as such scaling is vital even for binary shapes. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="CloneKernelInfo">CloneKernelInfo</a></h2>
+
+<p>CloneKernelInfo() creates a new clone of the given Kernel List so that its can be modified without effecting the original. The cloned kernel should be destroyed using DestoryKernelInfo() when no longer needed.</p>
+
+<p>The format of the CloneKernelInfo method is:</p>
+
+<pre class="text">
+KernelInfo *CloneKernelInfo(const KernelInfo *kernel)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel to be cloned </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="DestroyKernelInfo">DestroyKernelInfo</a></h2>
+
+<p>DestroyKernelInfo() frees the memory used by a Convolution/Morphology kernel.</p>
+
+<p>The format of the DestroyKernelInfo method is:</p>
+
+<pre class="text">
+KernelInfo *DestroyKernelInfo(KernelInfo *kernel)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel to be destroyed </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="MorphologyApply">MorphologyApply</a></h2>
+
+<p>MorphologyApply() applies a morphological method, multiple times using a list of multiple kernels. This is the method that should be called by other 'operators' that internally use morphology operations as part of their processing.</p>
+
+<p>It is basically equivalent to as MorphologyImage() (see below) but without any user controls. This allows internel programs to use this method to perform a specific task without possible interference by any API user supplied settings.</p>
+
+<p>It is MorphologyImage() task to extract any such user controls, and pass them to this function for processing.</p>
+
+<p>More specifically all given kernels should already be scaled, normalised, and blended appropriatally before being parred to this routine. The appropriate bias, and compose (typically 'UndefinedComposeOp') given.</p>
+
+<p>The format of the MorphologyApply method is:</p>
+
+<pre class="text">
+Image *MorphologyApply(const Image *image,MorphologyMethod method,
+ const ssize_t iterations,const KernelInfo *kernel,
+ const CompositeMethod compose,const double bias,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the source image </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the morphology method to be applied. </dd>
+
+<dd> </dd>
+<dt>iterations</dt>
+<dd>apply the operation this many times (or no change). A value of -1 means loop until no change found. How this is applied may depend on the morphology method. Typically this is a value of 1. </dd>
+
+<dd> </dd>
+<dt>channel</dt>
+<dd>the channel type. </dd>
+
+<dd> </dd>
+<dt>kernel</dt>
+<dd>An array of double representing the morphology kernel. </dd>
+
+<dd> </dd>
+<dt>compose</dt>
+<dd>How to handle or merge multi-kernel results. If 'UndefinedCompositeOp' use default for the Morphology method. If 'NoCompositeOp' force image to be re-iterated by each kernel. Otherwise merge the results using the compose method given. </dd>
+
+<dd> </dd>
+<dt>bias</dt>
+<dd>Convolution Output Bias. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="This_is almost identical to the MorphologyPrimative">This is almost identical to the MorphologyPrimative</a></h2>
+
+<p>This is almost identical to the MorphologyPrimative() function above, but applies the primitive directly to the actual image using two passes, once in each direction, with the results of the previous (and current) row being re-used.</p>
+
+<p>That is after each row is 'Sync'ed' into the image, the next row makes use of those values as part of the calculation of the next row. It repeats, but going in the oppisite (bottom-up) direction.</p>
+
+<p>Because of this 're-use of results' this function can not make use of multi- threaded, parellel processing. </p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="MorphologyImage">MorphologyImage</a></h2>
+
+<p>MorphologyImage() applies a user supplied kernel to the image according to the given mophology method.</p>
+
+<p>This function applies any and all user defined settings before calling the above internal function MorphologyApply().</p>
+
+<p>User defined settings include... * Output Bias for Convolution and correlation ("-define convolve:bias=??") * Kernel Scale/normalize settings ("-define convolve:scale=??") This can also includes the addition of a scaled unity kernel. * Show Kernel being applied ("-define showkernel=1")</p>
+
+<p>Other operators that do not want user supplied options interfering, especially "convolve:bias" and "showkernel" should use MorphologyApply() directly.</p>
+
+<p>The format of the MorphologyImage method is:</p>
+
+<pre class="text">
+Image *MorphologyImage(const Image *image,MorphologyMethod method,
+ const ssize_t iterations,KernelInfo *kernel,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the morphology method to be applied. </dd>
+
+<dd> </dd>
+<dt>iterations</dt>
+<dd>apply the operation this many times (or no change). A value of -1 means loop until no change found. How this is applied may depend on the morphology method. Typically this is a value of 1. </dd>
+
+<dd> </dd>
+<dt>kernel</dt>
+<dd>An array of double representing the morphology kernel. Warning: kernel may be normalized for the Convolve method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="ScaleGeometryKernelInfo">ScaleGeometryKernelInfo</a></h2>
+
+<p>ScaleGeometryKernelInfo() takes a geometry argument string, typically provided as a "-set option:convolve:scale {geometry}" user setting, and modifies the kernel according to the parsed arguments of that setting.</p>
+
+<p>The first argument (and any normalization flags) are passed to ScaleKernelInfo() to scale/normalize the kernel. The second argument is then passed to UnityAddKernelInfo() to add a scled unity kernel into the scaled/normalized kernel.</p>
+
+<p>The format of the ScaleGeometryKernelInfo method is:</p>
+
+<pre class="text">
+void ScaleGeometryKernelInfo(KernelInfo *kernel,
+ const double scaling_factor,const MagickStatusType normalize_flags)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel to modify </dd>
+
+<dd> o geometry: </dd>
+
+<pre class="text">
+ "-set option:convolve:scale {geometry}" setting.
+</pre>
+
+<p>
+</p></dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="ScaleKernelInfo">ScaleKernelInfo</a></h2>
+
+<p>ScaleKernelInfo() scales the given kernel list by the given amount, with or without normalization of the sum of the kernel values (as per given flags).</p>
+
+<p>By default (no flags given) the values within the kernel is scaled directly using given scaling factor without change.</p>
+
+<p>If either of the two 'normalize_flags' are given the kernel will first be normalized and then further scaled by the scaling factor value given.</p>
+
+<p>Kernel normalization ('normalize_flags' given) is designed to ensure that any use of the kernel scaling factor with 'Convolve' or 'Correlate' morphology methods will fall into -1.0 to +1.0 range. Note that for non-HDRI versions of IM this may cause images to have any negative results clipped, unless some 'bias' is used.</p>
+
+<p>More specifically. Kernels which only contain positive values (such as a 'Gaussian' kernel) will be scaled so that those values sum to +1.0, ensuring a 0.0 to +1.0 output range for non-HDRI images.</p>
+
+<p>For Kernels that contain some negative values, (such as 'Sharpen' kernels) the kernel will be scaled by the absolute of the sum of kernel values, so that it will generally fall within the +/- 1.0 range.</p>
+
+<p>For kernels whose values sum to zero, (such as 'Laplician' kernels) kernel will be scaled by just the sum of the postive values, so that its output range will again fall into the +/- 1.0 range.</p>
+
+<p>For special kernels designed for locating shapes using 'Correlate', (often only containing +1 and -1 values, representing foreground/brackground matching) a special normalization method is provided to scale the positive values separately to those of the negative values, so the kernel will be forced to become a zero-sum kernel better suited to such searches.</p>
+
+<p>WARNING: Correct normalization of the kernel assumes that the '*_range' attributes within the kernel structure have been correctly set during the kernels creation.</p>
+
+<p>NOTE: The values used for 'normalize_flags' have been selected specifically to match the use of geometry options, so that '!' means NormalizeValue, '^' means CorrelateNormalizeValue. All other GeometryFlags values are ignored.</p>
+
+<p>The format of the ScaleKernelInfo method is:</p>
+
+<pre class="text">
+void ScaleKernelInfo(KernelInfo *kernel, const double scaling_factor,
+ const MagickStatusType normalize_flags )
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel </dd>
+
+<dd> o scaling_factor: </dd>
+
+<pre class="text">
+ zero. If the kernel is normalized regardless of any flags.
+</pre>
+
+<p>o normalize_flags:
+
+</p><pre class="text">
+ specifically: NormalizeValue, CorrelateNormalizeValue,
+ and/or PercentValue
+</pre>
+
+<p>
+</p></dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="ShowKernelInfo">ShowKernelInfo</a></h2>
+
+<p>ShowKernelInfo() outputs the details of the given kernel defination to standard error, generally due to a users 'showkernel' option request.</p>
+
+<p>The format of the ShowKernel method is:</p>
+
+<pre class="text">
+void ShowKernelInfo(const KernelInfo *kernel)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="UnityAddKernelInfo">UnityAddKernelInfo</a></h2>
+
+<p>UnityAddKernelInfo() Adds a given amount of the 'Unity' Convolution Kernel to the given pre-scaled and normalized Kernel. This in effect adds that amount of the original image into the resulting convolution kernel. This value is usually provided by the user as a percentage value in the 'convolve:scale' setting.</p>
+
+<p>The resulting effect is to convert the defined kernels into blended soft-blurs, unsharp kernels or into sharpening kernels.</p>
+
+<p>The format of the UnityAdditionKernelInfo method is:</p>
+
+<pre class="text">
+void UnityAdditionKernelInfo(KernelInfo *kernel, const double scale )
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel </dd>
+
+<dd> o scale: </dd>
+
+<pre class="text">
+ the given kernel.
+</pre>
+
+<p>
+</p></dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/morphology_8c.html" id="ZeroKernelNans">ZeroKernelNans</a></h2>
+
+<p>ZeroKernelNans() replaces any special 'nan' value that may be present in the kernel with a zero value. This is typically done when the kernel will be used in special hardware (GPU) convolution processors, to simply matters.</p>
+
+<p>The format of the ZeroKernelNans method is:</p>
+
+<pre class="text">
+void ZeroKernelNans (KernelInfo *kernel)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>kernel</dt>
+<dd>the Morphology/Convolution kernel </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="paint.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/paint_8c.html" id="FloodfillPaintImage">FloodfillPaintImage</a></h2>
+
+<p>FloodfillPaintImage() changes the color value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the color value is changed for any neighbor pixel that does not match the bordercolor member of image.</p>
+
+<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
+
+<p>The format of the FloodfillPaintImage method is:</p>
+
+<pre class="text">
+MagickBooleanType FloodfillPaintImage(Image *image,
+ const DrawInfo *draw_info,const PixelInfo target,
+ const ssize_t x_offset,const ssize_t y_offset,
+ const MagickBooleanType invert,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>draw_info</dt>
+<dd>the draw info. </dd>
+
+<dd> </dd>
+<dt>target</dt>
+<dd>the RGB value of the target color. </dd>
+
+<dd> </dd>
+<dt>x_offset,y_offset</dt>
+<dd>the starting location of the operation. </dd>
+
+<dd> </dd>
+<dt>invert</dt>
+<dd>paint any pixel that does not match the target color. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/paint_8c.html" id="OilPaintImage">OilPaintImage</a></h2>
+
+<p>OilPaintImage() applies a special effect filter that simulates an oil painting. Each pixel is replaced by the most frequent color occurring in a circular region defined by radius.</p>
+
+<p>The format of the OilPaintImage method is:</p>
+
+<pre class="text">
+Image *OilPaintImage(const Image *image,const double radius,
+ const double sigma,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>radius</dt>
+<dd>the radius of the circular neighborhood. </dd>
+
+<dd> </dd>
+<dt>sigma</dt>
+<dd>the standard deviation of the Gaussian, in pixels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/paint_8c.html" id="OpaquePaintImage">OpaquePaintImage</a></h2>
+
+<p>OpaquePaintImage() changes any pixel that matches color with the color defined by fill argument.</p>
+
+<p>By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.</p>
+
+<p>The format of the OpaquePaintImage method is:</p>
+
+<pre class="text">
+MagickBooleanType OpaquePaintImage(Image *image,const PixelInfo *target,
+ const PixelInfo *fill,const MagickBooleanType invert,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>target</dt>
+<dd>the RGB value of the target color. </dd>
+
+<dd> </dd>
+<dt>fill</dt>
+<dd>the replacement color. </dd>
+
+<dd> </dd>
+<dt>invert</dt>
+<dd>paint any pixel that does not match the target color. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/paint_8c.html" id="TransparentPaintImage">TransparentPaintImage</a></h2>
+
+<p>TransparentPaintImage() changes the opacity value associated with any pixel that matches color to the value defined by opacity.</p>
+
+<p>By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color.</p>
+
+<p>The format of the TransparentPaintImage method is:</p>
+
+<pre class="text">
+MagickBooleanType TransparentPaintImage(Image *image,
+ const PixelInfo *target,const Quantum opacity,
+ const MagickBooleanType invert,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>target</dt>
+<dd>the target color. </dd>
+
+<dd> </dd>
+<dt>opacity</dt>
+<dd>the replacement opacity value. </dd>
+
+<dd> </dd>
+<dt>invert</dt>
+<dd>paint any pixel that does not match the target color. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/paint_8c.html" id="TransparentPaintImageChroma">TransparentPaintImageChroma</a></h2>
+
+<p>TransparentPaintImageChroma() changes the opacity value associated with any pixel that matches color to the value defined by opacity.</p>
+
+<p>As there is one fuzz value for the all the channels, TransparentPaintImage() is not suitable for the operations like chroma, where the tolerance for similarity of two color component (RGB) can be different. Thus we define this method to take two target pixels (one low and one high) and all the pixels of an image which are lying between these two pixels are made transparent.</p>
+
+<p>The format of the TransparentPaintImageChroma method is:</p>
+
+<pre class="text">
+MagickBooleanType TransparentPaintImageChroma(Image *image,
+ const PixelInfo *low,const PixelInfo *high,const Quantum opacity,
+ const MagickBooleanType invert,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>low</dt>
+<dd>the low target color. </dd>
+
+<dd> </dd>
+<dt>high</dt>
+<dd>the high target color. </dd>
+
+<dd> </dd>
+<dt>opacity</dt>
+<dd>the replacement opacity value. </dd>
+
+<dd> </dd>
+<dt>invert</dt>
+<dd>paint any pixel that does not match the target color. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="pixel-iterator.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="ClearPixelIterator">ClearPixelIterator</a></h2>
+
+<p>ClearPixelIterator() clear resources associated with a PixelIterator.</p>
+
+<p>The format of the ClearPixelIterator method is:</p>
+
+<pre class="text">
+void ClearPixelIterator(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="ClonePixelIterator">ClonePixelIterator</a></h2>
+
+<p>ClonePixelIterator() makes an exact copy of the specified iterator.</p>
+
+<p>The format of the ClonePixelIterator method is:</p>
+
+<pre class="text">
+PixelIterator *ClonePixelIterator(const PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the magick iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="DestroyPixelIterator">DestroyPixelIterator</a></h2>
+
+<p>DestroyPixelIterator() deallocates resources associated with a PixelIterator.</p>
+
+<p>The format of the DestroyPixelIterator method is:</p>
+
+<pre class="text">
+PixelIterator *DestroyPixelIterator(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="IsPixelIterator">IsPixelIterator</a></h2>
+
+<p>IsPixelIterator() returns MagickTrue if the iterator is verified as a pixel iterator.</p>
+
+<p>The format of the IsPixelIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType IsPixelIterator(const PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the magick iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="NewPixelIterator">NewPixelIterator</a></h2>
+
+<p>NewPixelIterator() returns a new pixel iterator.</p>
+
+<p>The format of the NewPixelIterator method is:</p>
+
+<pre class="text">
+PixelIterator *NewPixelIterator(MagickWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelClearIteratorException">PixelClearIteratorException</a></h2>
+
+<p>PixelClearIteratorException() clear any exceptions associated with the iterator.</p>
+
+<p>The format of the PixelClearIteratorException method is:</p>
+
+<pre class="text">
+MagickBooleanType PixelClearIteratorException(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="NewPixelRegionIterator">NewPixelRegionIterator</a></h2>
+
+<p>NewPixelRegionIterator() returns a new pixel iterator.</p>
+
+<p>The format of the NewPixelRegionIterator method is:</p>
+
+<pre class="text">
+PixelIterator *NewPixelRegionIterator(MagickWand *wand,const ssize_t x,
+ const ssize_t y,const size_t width,const size_t height)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+<dt>x,y,columns,rows</dt>
+<dd> These values define the perimeter of a region of pixels. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelGetCurrentIteratorRow">PixelGetCurrentIteratorRow</a></h2>
+
+<p>PixelGetCurrentIteratorRow() returns the current row as an array of pixel wands from the pixel iterator.</p>
+
+<p>The format of the PixelGetCurrentIteratorRow method is:</p>
+
+<pre class="text">
+PixelWand **PixelGetCurrentIteratorRow(PixelIterator *iterator,
+ size_t *number_wands)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+<dt>number_wands</dt>
+<dd>the number of pixel wands. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelGetIteratorException">PixelGetIteratorException</a></h2>
+
+<p>PixelGetIteratorException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
+
+<p>The format of the PixelGetIteratorException method is:</p>
+
+<pre class="text">
+char *PixelGetIteratorException(const PixelIterator *iterator,
+ ExceptionType *severity)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+<dt>severity</dt>
+<dd>the severity of the error is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelGetIteratorExceptionType">PixelGetIteratorExceptionType</a></h2>
+
+<p>PixelGetIteratorExceptionType() the exception type associated with the iterator. If no exception has occurred, UndefinedExceptionType is returned.</p>
+
+<p>The format of the PixelGetIteratorExceptionType method is:</p>
+
+<pre class="text">
+ExceptionType PixelGetIteratorExceptionType(
+ const PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelGetIteratorRow">PixelGetIteratorRow</a></h2>
+
+<p>PixelGetIteratorRow() returns the current pixel iterator row.</p>
+
+<p>The format of the PixelGetIteratorRow method is:</p>
+
+<pre class="text">
+MagickBooleanType PixelGetIteratorRow(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelGetNextIteratorRow">PixelGetNextIteratorRow</a></h2>
+
+<p>PixelGetNextIteratorRow() returns the next row as an array of pixel wands from the pixel iterator.</p>
+
+<p>The format of the PixelGetNextIteratorRow method is:</p>
+
+<pre class="text">
+PixelWand **PixelGetNextIteratorRow(PixelIterator *iterator,
+ size_t *number_wands)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+<dt>number_wands</dt>
+<dd>the number of pixel wands. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelGetPreviousIteratorRow">PixelGetPreviousIteratorRow</a></h2>
+
+<p>PixelGetPreviousIteratorRow() returns the previous row as an array of pixel wands from the pixel iterator.</p>
+
+<p>The format of the PixelGetPreviousIteratorRow method is:</p>
+
+<pre class="text">
+PixelWand **PixelGetPreviousIteratorRow(PixelIterator *iterator,
+ size_t *number_wands)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+<dt>number_wands</dt>
+<dd>the number of pixel wands. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelResetIterator">PixelResetIterator</a></h2>
+
+<p>PixelResetIterator() resets the pixel iterator. Use it in conjunction with PixelGetNextIteratorRow() to iterate over all the pixels in a pixel container.</p>
+
+<p>The format of the PixelResetIterator method is:</p>
+
+<pre class="text">
+void PixelResetIterator(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelSetFirstIteratorRow">PixelSetFirstIteratorRow</a></h2>
+
+<p>PixelSetFirstIteratorRow() sets the pixel iterator to the first pixel row.</p>
+
+<p>The format of the PixelSetFirstIteratorRow method is:</p>
+
+<pre class="text">
+void PixelSetFirstIteratorRow(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the magick iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelSetIteratorRow">PixelSetIteratorRow</a></h2>
+
+<p>PixelSetIteratorRow() set the pixel iterator row.</p>
+
+<p>The format of the PixelSetIteratorRow method is:</p>
+
+<pre class="text">
+MagickBooleanType PixelSetIteratorRow(PixelIterator *iterator,
+ const ssize_t row)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelSetLastIteratorRow">PixelSetLastIteratorRow</a></h2>
+
+<p>PixelSetLastIteratorRow() sets the pixel iterator to the last pixel row.</p>
+
+<p>The format of the PixelSetLastIteratorRow method is:</p>
+
+<pre class="text">
+void PixelSetLastIteratorRow(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the magick iterator. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-iterator_8c.html" id="PixelSyncIterator">PixelSyncIterator</a></h2>
+
+<p>PixelSyncIterator() syncs the pixel iterator.</p>
+
+<p>The format of the PixelSyncIterator method is:</p>
+
+<pre class="text">
+MagickBooleanType PixelSyncIterator(PixelIterator *iterator)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>iterator</dt>
+<dd>the pixel iterator. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="pixel-wand.html#"></a></p>
+<p class="text-center"><a href="pixel-wand.html#ClearPixelWand">ClearPixelWand</a> • <a href="pixel-wand.html#ClonePixelWand">ClonePixelWand</a> • <a href="pixel-wand.html#ClonePixelWands">ClonePixelWands</a> • <a href="pixel-wand.html#DestroyPixelWand">DestroyPixelWand</a> • <a href="pixel-wand.html#DestroyPixelWands">DestroyPixelWands</a> • <a href="pixel-wand.html#IsPixelWandSimilar">IsPixelWandSimilar</a> • <a href="pixel-wand.html#IsPixelWand">IsPixelWand</a> • <a href="pixel-wand.html#NewPixelWand">NewPixelWand</a> • <a href="pixel-wand.html#NewPixelWands">NewPixelWands</a> • <a href="pixel-wand.html#PixelClearException">PixelClearException</a> • <a href="pixel-wand.html#PixelGetAlpha">PixelGetAlpha</a> • <a href="pixel-wand.html#PixelGetAlphaQuantum">PixelGetAlphaQuantum</a> • <a href="pixel-wand.html#PixelGetBlack">PixelGetBlack</a> • <a href="pixel-wand.html#PixelGetBlackQuantum">PixelGetBlackQuantum</a> • <a href="pixel-wand.html#PixelGetBlue">PixelGetBlue</a> • <a href="pixel-wand.html#PixelGetBlueQuantum">PixelGetBlueQuantum</a> • <a href="pixel-wand.html#PixelGetColorAsString">PixelGetColorAsString</a> • <a href="pixel-wand.html#PixelGetColorAsNormalizedString">PixelGetColorAsNormalizedString</a> • <a href="pixel-wand.html#PixelGetColorCount">PixelGetColorCount</a> • <a href="pixel-wand.html#PixelGetCyan">PixelGetCyan</a> • <a href="pixel-wand.html#PixelGetCyanQuantum">PixelGetCyanQuantum</a> • <a href="pixel-wand.html#PixelGetException">PixelGetException</a> • <a href="pixel-wand.html#PixelGetExceptionType">PixelGetExceptionType</a> • <a href="pixel-wand.html#PixelGetFuzz">PixelGetFuzz</a> • <a href="pixel-wand.html#PixelGetGreen">PixelGetGreen</a> • <a href="pixel-wand.html#PixelGetGreenQuantum">PixelGetGreenQuantum</a> • <a href="pixel-wand.html#PixelGetHSL">PixelGetHSL</a> • <a href="pixel-wand.html#PixelGetIndex">PixelGetIndex</a> • <a href="pixel-wand.html#PixelGetMagenta">PixelGetMagenta</a> • <a href="pixel-wand.html#PixelGetMagentaQuantum">PixelGetMagentaQuantum</a> • <a href="pixel-wand.html#PixelGetMagickColor">PixelGetMagickColor</a> • <a href="pixel-wand.html#PixelGetPixel">PixelGetPixel</a> • <a href="pixel-wand.html#PixelGetQuantumPacket">PixelGetQuantumPacket</a> • <a href="pixel-wand.html#PixelGetQuantumPixel">PixelGetQuantumPixel</a> • <a href="pixel-wand.html#PixelGetRed">PixelGetRed</a> • <a href="pixel-wand.html#PixelGetRedQuantum">PixelGetRedQuantum</a> • <a href="pixel-wand.html#PixelGetYellow">PixelGetYellow</a> • <a href="pixel-wand.html#PixelGetYellowQuantum">PixelGetYellowQuantum</a> • <a href="pixel-wand.html#PixelSetAlpha">PixelSetAlpha</a> • <a href="pixel-wand.html#PixelSetAlphaQuantum">PixelSetAlphaQuantum</a> • <a href="pixel-wand.html#PixelSetBlack">PixelSetBlack</a> • <a href="pixel-wand.html#PixelSetBlackQuantum">PixelSetBlackQuantum</a> • <a href="pixel-wand.html#PixelSetBlue">PixelSetBlue</a> • <a href="pixel-wand.html#PixelSetBlueQuantum">PixelSetBlueQuantum</a> • <a href="pixel-wand.html#PixelSetColor">PixelSetColor</a> • <a href="pixel-wand.html#PixelSetColorCount">PixelSetColorCount</a> • <a href="pixel-wand.html#PixelSetColorFromWand">PixelSetColorFromWand</a> • <a href="pixel-wand.html#PixelSetCyan">PixelSetCyan</a> • <a href="pixel-wand.html#PixelSetCyanQuantum">PixelSetCyanQuantum</a> • <a href="pixel-wand.html#PixelSetFuzz">PixelSetFuzz</a> • <a href="pixel-wand.html#PixelSetGreen">PixelSetGreen</a> • <a href="pixel-wand.html#PixelSetGreenQuantum">PixelSetGreenQuantum</a> • <a href="pixel-wand.html#PixelSetHSL">PixelSetHSL</a> • <a href="pixel-wand.html#PixelSetIndex">PixelSetIndex</a> • <a href="pixel-wand.html#PixelSetMagenta">PixelSetMagenta</a> • <a href="pixel-wand.html#PixelSetMagentaQuantum">PixelSetMagentaQuantum</a> • <a href="pixel-wand.html#PixelSetPixelColor">PixelSetPixelColor</a> • <a href="pixel-wand.html#PixelSetQuantumPixel">PixelSetQuantumPixel</a> • <a href="pixel-wand.html#PixelSetRed">PixelSetRed</a> • <a href="pixel-wand.html#PixelSetRedQuantum">PixelSetRedQuantum</a> • <a href="pixel-wand.html#PixelSetYellow">PixelSetYellow</a> • <a href="pixel-wand.html#PixelSetYellowQuantum">PixelSetYellowQuantum</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="ClearPixelWand">ClearPixelWand</a></h2>
+
+<p>ClearPixelWand() clears resources associated with the wand.</p>
+
+<p>The format of the ClearPixelWand method is:</p>
+
+<pre class="text">
+void ClearPixelWand(PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="ClonePixelWand">ClonePixelWand</a></h2>
+
+<p>ClonePixelWand() makes an exact copy of the specified wand.</p>
+
+<p>The format of the ClonePixelWand method is:</p>
+
+<pre class="text">
+PixelWand *ClonePixelWand(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="ClonePixelWands">ClonePixelWands</a></h2>
+
+<p>ClonePixelWands() makes an exact copy of the specified wands.</p>
+
+<p>The format of the ClonePixelWands method is:</p>
+
+<pre class="text">
+PixelWand **ClonePixelWands(const PixelWand **wands,
+ const size_t number_wands)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wands</dt>
+<dd>the magick wands. </dd>
+
+<dd> </dd>
+<dt>number_wands</dt>
+<dd>the number of wands. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="DestroyPixelWand">DestroyPixelWand</a></h2>
+
+<p>DestroyPixelWand() deallocates resources associated with a PixelWand.</p>
+
+<p>The format of the DestroyPixelWand method is:</p>
+
+<pre class="text">
+PixelWand *DestroyPixelWand(PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="DestroyPixelWands">DestroyPixelWands</a></h2>
+
+<p>DestroyPixelWands() deallocates resources associated with an array of pixel wands.</p>
+
+<p>The format of the DestroyPixelWands method is:</p>
+
+<pre class="text">
+PixelWand **DestroyPixelWands(PixelWand **wand,
+ const size_t number_wands)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>number_wands</dt>
+<dd>the number of wands. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="IsPixelWandSimilar">IsPixelWandSimilar</a></h2>
+
+<p>IsPixelWandSimilar() returns MagickTrue if the distance between two colors is less than the specified distance.</p>
+
+<p>The format of the IsPixelWandSimilar method is:</p>
+
+<pre class="text">
+MagickBooleanType IsPixelWandSimilar(PixelWand *p,PixelWand *q,
+ const double fuzz)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>p</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>q</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>fuzz</dt>
+<dd>any two colors that are less than or equal to this distance squared are consider similar. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="IsPixelWand">IsPixelWand</a></h2>
+
+<p>IsPixelWand() returns MagickTrue if the wand is verified as a pixel wand.</p>
+
+<p>The format of the IsPixelWand method is:</p>
+
+<pre class="text">
+MagickBooleanType IsPixelWand(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="NewPixelWand">NewPixelWand</a></h2>
+
+<p>NewPixelWand() returns a new pixel wand.</p>
+
+<p>The format of the NewPixelWand method is:</p>
+
+<pre class="text">
+PixelWand *NewPixelWand(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="NewPixelWands">NewPixelWands</a></h2>
+
+<p>NewPixelWands() returns an array of pixel wands.</p>
+
+<p>The format of the NewPixelWands method is:</p>
+
+<pre class="text">
+PixelWand **NewPixelWands(const size_t number_wands)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>number_wands</dt>
+<dd>the number of wands. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelClearException">PixelClearException</a></h2>
+
+<p>PixelClearException() clear any exceptions associated with the iterator.</p>
+
+<p>The format of the PixelClearException method is:</p>
+
+<pre class="text">
+MagickBooleanType PixelClearException(PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetAlpha">PixelGetAlpha</a></h2>
+
+<p>PixelGetAlpha() returns the normalized alpha value of the pixel wand.</p>
+
+<p>The format of the PixelGetAlpha method is:</p>
+
+<pre class="text">
+double PixelGetAlpha(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetAlphaQuantum">PixelGetAlphaQuantum</a></h2>
+
+<p>PixelGetAlphaQuantum() returns the alpha value of the pixel wand.</p>
+
+<p>The format of the PixelGetAlphaQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetAlphaQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetBlack">PixelGetBlack</a></h2>
+
+<p>PixelGetBlack() returns the normalized black color of the pixel wand.</p>
+
+<p>The format of the PixelGetBlack method is:</p>
+
+<pre class="text">
+double PixelGetBlack(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetBlackQuantum">PixelGetBlackQuantum</a></h2>
+
+<p>PixelGetBlackQuantum() returns the black color of the pixel wand.</p>
+
+<p>The format of the PixelGetBlackQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetBlackQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetBlue">PixelGetBlue</a></h2>
+
+<p>PixelGetBlue() returns the normalized blue color of the pixel wand.</p>
+
+<p>The format of the PixelGetBlue method is:</p>
+
+<pre class="text">
+double PixelGetBlue(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetBlueQuantum">PixelGetBlueQuantum</a></h2>
+
+<p>PixelGetBlueQuantum() returns the blue color of the pixel wand.</p>
+
+<p>The format of the PixelGetBlueQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetBlueQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetColorAsString">PixelGetColorAsString</a></h2>
+
+<p>PixelGetColorAsString() returnsd the color of the pixel wand as a string.</p>
+
+<p>The format of the PixelGetColorAsString method is:</p>
+
+<pre class="text">
+char *PixelGetColorAsString(PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetColorAsNormalizedString">PixelGetColorAsNormalizedString</a></h2>
+
+<p>PixelGetColorAsNormalizedString() returns the normalized color of the pixel wand as a string.</p>
+
+<p>The format of the PixelGetColorAsNormalizedString method is:</p>
+
+<pre class="text">
+char *PixelGetColorAsNormalizedString(PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetColorCount">PixelGetColorCount</a></h2>
+
+<p>PixelGetColorCount() returns the color count associated with this color.</p>
+
+<p>The format of the PixelGetColorCount method is:</p>
+
+<pre class="text">
+size_t PixelGetColorCount(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetCyan">PixelGetCyan</a></h2>
+
+<p>PixelGetCyan() returns the normalized cyan color of the pixel wand.</p>
+
+<p>The format of the PixelGetCyan method is:</p>
+
+<pre class="text">
+double PixelGetCyan(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetCyanQuantum">PixelGetCyanQuantum</a></h2>
+
+<p>PixelGetCyanQuantum() returns the cyan color of the pixel wand.</p>
+
+<p>The format of the PixelGetCyanQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetCyanQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetException">PixelGetException</a></h2>
+
+<p>PixelGetException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
+
+<p>The format of the PixelGetException method is:</p>
+
+<pre class="text">
+char *PixelGetException(const PixelWand *wand,ExceptionType *severity)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>severity</dt>
+<dd>the severity of the error is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetExceptionType">PixelGetExceptionType</a></h2>
+
+<p>PixelGetExceptionType() the exception type associated with the wand. If no exception has occurred, UndefinedExceptionType is returned.</p>
+
+<p>The format of the PixelGetExceptionType method is:</p>
+
+<pre class="text">
+ExceptionType PixelGetExceptionType(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the magick wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetFuzz">PixelGetFuzz</a></h2>
+
+<p>PixelGetFuzz() returns the normalized fuzz value of the pixel wand.</p>
+
+<p>The format of the PixelGetFuzz method is:</p>
+
+<pre class="text">
+double PixelGetFuzz(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetGreen">PixelGetGreen</a></h2>
+
+<p>PixelGetGreen() returns the normalized green color of the pixel wand.</p>
+
+<p>The format of the PixelGetGreen method is:</p>
+
+<pre class="text">
+double PixelGetGreen(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetGreenQuantum">PixelGetGreenQuantum</a></h2>
+
+<p>PixelGetGreenQuantum() returns the green color of the pixel wand.</p>
+
+<p>The format of the PixelGetGreenQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetGreenQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetHSL">PixelGetHSL</a></h2>
+
+<p>PixelGetHSL() returns the normalized HSL color of the pixel wand.</p>
+
+<p>The format of the PixelGetHSL method is:</p>
+
+<pre class="text">
+void PixelGetHSL(const PixelWand *wand,double *hue,double *saturation,
+ double *lightness)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>hue,saturation,lightness</dt>
+<dd>Return the pixel hue, saturation, and brightness. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetIndex">PixelGetIndex</a></h2>
+
+<p>PixelGetIndex() returns the colormap index from the pixel wand.</p>
+
+<p>The format of the PixelGetIndex method is:</p>
+
+<pre class="text">
+Quantum PixelGetIndex(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetMagenta">PixelGetMagenta</a></h2>
+
+<p>PixelGetMagenta() returns the normalized magenta color of the pixel wand.</p>
+
+<p>The format of the PixelGetMagenta method is:</p>
+
+<pre class="text">
+double PixelGetMagenta(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetMagentaQuantum">PixelGetMagentaQuantum</a></h2>
+
+<p>PixelGetMagentaQuantum() returns the magenta color of the pixel wand.</p>
+
+<p>The format of the PixelGetMagentaQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetMagentaQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetMagickColor">PixelGetMagickColor</a></h2>
+
+<p>PixelGetMagickColor() gets the magick color of the pixel wand.</p>
+
+<p>The format of the PixelGetMagickColor method is:</p>
+
+<pre class="text">
+void PixelGetMagickColor(PixelWand *wand,PixelInfo *color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>color</dt>
+<dd> The pixel wand color is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetPixel">PixelGetPixel</a></h2>
+
+<p>PixelGetPixel() returns the pixel wand pixel.</p>
+
+<p>The format of the PixelGetPixel method is:</p>
+
+<pre class="text">
+PixelInfo PixelGetPixel(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetQuantumPacket">PixelGetQuantumPacket</a></h2>
+
+<p>PixelGetQuantumPacket() gets the packet of the pixel wand as a PixelInfo.</p>
+
+<p>The format of the PixelGetQuantumPacket method is:</p>
+
+<pre class="text">
+void PixelGetQuantumPacket(PixelWand *wand,PixelInfo *packet)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>packet</dt>
+<dd> The pixel wand packet is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetQuantumPixel">PixelGetQuantumPixel</a></h2>
+
+<p>PixelGetQuantumPixel() gets the pixel of the pixel wand as a PixelInfo.</p>
+
+<p>The format of the PixelGetQuantumPixel method is:</p>
+
+<pre class="text">
+void PixelGetQuantumPixel(const Image *image,const PixelWand *wand,
+ Quantum *pixel)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd> The pixel wand pixel is returned here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetRed">PixelGetRed</a></h2>
+
+<p>PixelGetRed() returns the normalized red color of the pixel wand.</p>
+
+<p>The format of the PixelGetRed method is:</p>
+
+<pre class="text">
+double PixelGetRed(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetRedQuantum">PixelGetRedQuantum</a></h2>
+
+<p>PixelGetRedQuantum() returns the red color of the pixel wand.</p>
+
+<p>The format of the PixelGetRedQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetRedQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetYellow">PixelGetYellow</a></h2>
+
+<p>PixelGetYellow() returns the normalized yellow color of the pixel wand.</p>
+
+<p>The format of the PixelGetYellow method is:</p>
+
+<pre class="text">
+double PixelGetYellow(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelGetYellowQuantum">PixelGetYellowQuantum</a></h2>
+
+<p>PixelGetYellowQuantum() returns the yellow color of the pixel wand.</p>
+
+<p>The format of the PixelGetYellowQuantum method is:</p>
+
+<pre class="text">
+Quantum PixelGetYellowQuantum(const PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetAlpha">PixelSetAlpha</a></h2>
+
+<p>PixelSetAlpha() sets the normalized alpha value of the pixel wand.</p>
+
+<p>The format of the PixelSetAlpha method is:</p>
+
+<pre class="text">
+void PixelSetAlpha(PixelWand *wand,const double alpha)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>alpha</dt>
+<dd>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetAlphaQuantum">PixelSetAlphaQuantum</a></h2>
+
+<p>PixelSetAlphaQuantum() sets the alpha value of the pixel wand.</p>
+
+<p>The format of the PixelSetAlphaQuantum method is:</p>
+
+<pre class="text">
+void PixelSetAlphaQuantum(PixelWand *wand,const Quantum alpha)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>alpha</dt>
+<dd>the alpha value. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetBlack">PixelSetBlack</a></h2>
+
+<p>PixelSetBlack() sets the normalized black color of the pixel wand.</p>
+
+<p>The format of the PixelSetBlack method is:</p>
+
+<pre class="text">
+void PixelSetBlack(PixelWand *wand,const double black)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>black</dt>
+<dd>the black color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetBlackQuantum">PixelSetBlackQuantum</a></h2>
+
+<p>PixelSetBlackQuantum() sets the black color of the pixel wand.</p>
+
+<p>The format of the PixelSetBlackQuantum method is:</p>
+
+<pre class="text">
+void PixelSetBlackQuantum(PixelWand *wand,const Quantum black)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>black</dt>
+<dd>the black color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetBlue">PixelSetBlue</a></h2>
+
+<p>PixelSetBlue() sets the normalized blue color of the pixel wand.</p>
+
+<p>The format of the PixelSetBlue method is:</p>
+
+<pre class="text">
+void PixelSetBlue(PixelWand *wand,const double blue)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>blue</dt>
+<dd>the blue color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetBlueQuantum">PixelSetBlueQuantum</a></h2>
+
+<p>PixelSetBlueQuantum() sets the blue color of the pixel wand.</p>
+
+<p>The format of the PixelSetBlueQuantum method is:</p>
+
+<pre class="text">
+void PixelSetBlueQuantum(PixelWand *wand,const Quantum blue)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>blue</dt>
+<dd>the blue color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetColor">PixelSetColor</a></h2>
+
+<p>PixelSetColor() sets the color of the pixel wand with a string (e.g. "blue", "#0000ff", "rgb(0,0,255)", "cmyk(100,100,100,10)", etc.).</p>
+
+<p>The format of the PixelSetColor method is:</p>
+
+<pre class="text">
+MagickBooleanType PixelSetColor(PixelWand *wand,const char *color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>color</dt>
+<dd>the pixel wand color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetColorCount">PixelSetColorCount</a></h2>
+
+<p>PixelSetColorCount() sets the color count of the pixel wand.</p>
+
+<p>The format of the PixelSetColorCount method is:</p>
+
+<pre class="text">
+void PixelSetColorCount(PixelWand *wand,const size_t count)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>count</dt>
+<dd>the number of this particular color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetColorFromWand">PixelSetColorFromWand</a></h2>
+
+<p>PixelSetColorFromWand() sets the color of the pixel wand.</p>
+
+<p>The format of the PixelSetColorFromWand method is:</p>
+
+<pre class="text">
+void PixelSetColorFromWand(PixelWand *wand,const PixelWand *color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>color</dt>
+<dd>set the pixel wand color here. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetCyan">PixelSetCyan</a></h2>
+
+<p>PixelSetCyan() sets the normalized cyan color of the pixel wand.</p>
+
+<p>The format of the PixelSetCyan method is:</p>
+
+<pre class="text">
+void PixelSetCyan(PixelWand *wand,const double cyan)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>cyan</dt>
+<dd>the cyan color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetCyanQuantum">PixelSetCyanQuantum</a></h2>
+
+<p>PixelSetCyanQuantum() sets the cyan color of the pixel wand.</p>
+
+<p>The format of the PixelSetCyanQuantum method is:</p>
+
+<pre class="text">
+void PixelSetCyanQuantum(PixelWand *wand,const Quantum cyan)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>cyan</dt>
+<dd>the cyan color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetFuzz">PixelSetFuzz</a></h2>
+
+<p>PixelSetFuzz() sets the fuzz value of the pixel wand.</p>
+
+<p>The format of the PixelSetFuzz method is:</p>
+
+<pre class="text">
+void PixelSetFuzz(PixelWand *wand,const double fuzz)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>fuzz</dt>
+<dd>the fuzz value. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetGreen">PixelSetGreen</a></h2>
+
+<p>PixelSetGreen() sets the normalized green color of the pixel wand.</p>
+
+<p>The format of the PixelSetGreen method is:</p>
+
+<pre class="text">
+void PixelSetGreen(PixelWand *wand,const double green)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>green</dt>
+<dd>the green color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetGreenQuantum">PixelSetGreenQuantum</a></h2>
+
+<p>PixelSetGreenQuantum() sets the green color of the pixel wand.</p>
+
+<p>The format of the PixelSetGreenQuantum method is:</p>
+
+<pre class="text">
+void PixelSetGreenQuantum(PixelWand *wand,const Quantum green)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>green</dt>
+<dd>the green color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetHSL">PixelSetHSL</a></h2>
+
+<p>PixelSetHSL() sets the normalized HSL color of the pixel wand.</p>
+
+<p>The format of the PixelSetHSL method is:</p>
+
+<pre class="text">
+void PixelSetHSL(PixelWand *wand,const double hue,
+ const double saturation,const double lightness)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>hue,saturation,lightness</dt>
+<dd>Return the pixel hue, saturation, and brightness. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetIndex">PixelSetIndex</a></h2>
+
+<p>PixelSetIndex() sets the colormap index of the pixel wand.</p>
+
+<p>The format of the PixelSetIndex method is:</p>
+
+<pre class="text">
+void PixelSetIndex(PixelWand *wand,const Quantum index)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>index</dt>
+<dd>the colormap index. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetMagenta">PixelSetMagenta</a></h2>
+
+<p>PixelSetMagenta() sets the normalized magenta color of the pixel wand.</p>
+
+<p>The format of the PixelSetMagenta method is:</p>
+
+<pre class="text">
+void PixelSetMagenta(PixelWand *wand,const double magenta)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>magenta</dt>
+<dd>the magenta color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetMagentaQuantum">PixelSetMagentaQuantum</a></h2>
+
+<p>PixelSetMagentaQuantum() sets the magenta color of the pixel wand.</p>
+
+<p>The format of the PixelSetMagentaQuantum method is:</p>
+
+<pre class="text">
+void PixelSetMagentaQuantum(PixelWand *wand,
+ const Quantum magenta)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>magenta</dt>
+<dd>the green magenta. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetPixelColor">PixelSetPixelColor</a></h2>
+
+<p>PixelSetPixelColor() sets the color of the pixel wand.</p>
+
+<p>The format of the PixelSetPixelColor method is:</p>
+
+<pre class="text">
+void PixelSetPixelColor(PixelWand *wand,const PixelInfo *color)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>color</dt>
+<dd>the pixel wand color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetQuantumPixel">PixelSetQuantumPixel</a></h2>
+
+<p>PixelSetQuantumPixel() sets the pixel of the pixel wand.</p>
+
+<p>The format of the PixelSetQuantumPixel method is:</p>
+
+<pre class="text">
+void PixelSetQuantumPixel(const Image *image,const Quantum *pixel,
+ PixelWand *wand)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>pixel</dt>
+<dd>the pixel wand pixel. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetRed">PixelSetRed</a></h2>
+
+<p>PixelSetRed() sets the normalized red color of the pixel wand.</p>
+
+<p>The format of the PixelSetRed method is:</p>
+
+<pre class="text">
+void PixelSetRed(PixelWand *wand,const double red)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>red</dt>
+<dd>the red color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetRedQuantum">PixelSetRedQuantum</a></h2>
+
+<p>PixelSetRedQuantum() sets the red color of the pixel wand.</p>
+
+<p>The format of the PixelSetRedQuantum method is:</p>
+
+<pre class="text">
+void PixelSetRedQuantum(PixelWand *wand,const Quantum red)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>red</dt>
+<dd>the red color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetYellow">PixelSetYellow</a></h2>
+
+<p>PixelSetYellow() sets the normalized yellow color of the pixel wand.</p>
+
+<p>The format of the PixelSetYellow method is:</p>
+
+<pre class="text">
+void PixelSetYellow(PixelWand *wand,const double yellow)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>yellow</dt>
+<dd>the yellow color. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickWand/pixel-wand_8c.html" id="PixelSetYellowQuantum">PixelSetYellowQuantum</a></h2>
+
+<p>PixelSetYellowQuantum() sets the yellow color of the pixel wand.</p>
+
+<p>The format of the PixelSetYellowQuantum method is:</p>
+
+<pre class="text">
+void PixelSetYellowQuantum(PixelWand *wand,const Quantum yellow)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>wand</dt>
+<dd>the pixel wand. </dd>
+
+<dd> </dd>
+<dt>yellow</dt>
+<dd>the yellow color. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="profile.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="CloneImageProfiles">CloneImageProfiles</a></h2>
+
+<p>CloneImageProfiles() clones one or more image profiles.</p>
+
+<p>The format of the CloneImageProfiles method is:</p>
+
+<pre class="text">
+MagickBooleanType CloneImageProfiles(Image *image,
+ const Image *clone_image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>clone_image</dt>
+<dd>the clone image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="DeleteImageProfile">DeleteImageProfile</a></h2>
+
+<p>DeleteImageProfile() deletes a profile from the image by its name.</p>
+
+<p>The format of the DeleteImageProfile method is:</p>
+
+<pre class="text">
+MagickBooleanTyupe DeleteImageProfile(Image *image,const char *name)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>the profile name. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="DestroyImageProfiles">DestroyImageProfiles</a></h2>
+
+<p>DestroyImageProfiles() releases memory associated with an image profile map.</p>
+
+<p>The format of the DestroyProfiles method is:</p>
+
+<pre class="text">
+void DestroyImageProfiles(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="GetImageProfile">GetImageProfile</a></h2>
+
+<p>GetImageProfile() gets a profile associated with an image by name.</p>
+
+<p>The format of the GetImageProfile method is:</p>
+
+<pre class="text">
+const StringInfo *GetImageProfile(const Image *image,const char *name)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>the profile name. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="GetNextImageProfile">GetNextImageProfile</a></h2>
+
+<p>GetNextImageProfile() gets the next profile name for an image.</p>
+
+<p>The format of the GetNextImageProfile method is:</p>
+
+<pre class="text">
+char *GetNextImageProfile(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>hash_info</dt>
+<dd>the hash info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="ProfileImage">ProfileImage</a></h2>
+
+<p>ProfileImage() associates, applies, or removes an ICM, IPTC, or generic profile with / to / from an image. If the profile is NULL, it is removed from the image otherwise added or applied. Use a name of '*' and a profile of NULL to remove all profiles from the image.</p>
+
+<p>ICC and ICM profiles are handled as follows: If the image does not have an associated color profile, the one you provide is associated with the image and the image pixels are not transformed. Otherwise, the colorspace transform defined by the existing and new profile are applied to the image pixels and the new profile is associated with the image.</p>
+
+<p>The format of the ProfileImage method is:</p>
+
+<pre class="text">
+MagickBooleanType ProfileImage(Image *image,const char *name,
+ const void *datum,const size_t length,const MagickBooleanType clone)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>Name of profile to add or remove: ICC, IPTC, or generic profile. </dd>
+
+<dd> </dd>
+<dt>datum</dt>
+<dd>the profile data. </dd>
+
+<dd> </dd>
+<dt>length</dt>
+<dd>the length of the profile. </dd>
+
+<dd> </dd>
+<dt>clone</dt>
+<dd>should be MagickFalse. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="RemoveImageProfile">RemoveImageProfile</a></h2>
+
+<p>RemoveImageProfile() removes a named profile from the image and returns its value.</p>
+
+<p>The format of the RemoveImageProfile method is:</p>
+
+<pre class="text">
+void *RemoveImageProfile(Image *image,const char *name)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>the profile name. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="ResetImageProfileIterator">ResetImageProfileIterator</a></h2>
+
+<p>ResetImageProfileIterator() resets the image profile iterator. Use it in conjunction with GetNextImageProfile() to iterate over all the profiles associated with an image.</p>
+
+<p>The format of the ResetImageProfileIterator method is:</p>
+
+<pre class="text">
+ResetImageProfileIterator(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="SetImageProfile">SetImageProfile</a></h2>
+
+<p>SetImageProfile() adds a named profile to the image. If a profile with the same name already exists, it is replaced. This method differs from the ProfileImage() method in that it does not apply CMS color profiles.</p>
+
+<p>The format of the SetImageProfile method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageProfile(Image *image,const char *name,
+ const StringInfo *profile)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>name</dt>
+<dd>the profile name, for example icc, exif, and 8bim (8bim is the Photoshop wrapper for iptc profiles). </dd>
+
+<dd> </dd>
+<dt>profile</dt>
+<dd>A StringInfo structure that contains the named profile. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/profile_8c.html" id="SyncImageProfiles">SyncImageProfiles</a></h2>
+
+<p>SyncImageProfiles() synchronizes image properties with the image profiles. Currently we only support updating the EXIF resolution and orientation.</p>
+
+<p>The format of the SyncImageProfiles method is:</p>
+
+<pre class="text">
+MagickBooleanType SyncImageProfiles(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="property.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="CloneImageProperties">CloneImageProperties</a></h2>
+
+<p>CloneImageProperties() clones all the image properties to another image.</p>
+
+<p>The format of the CloneImageProperties method is:</p>
+
+<pre class="text">
+MagickBooleanType CloneImageProperties(Image *image,
+ const Image *clone_image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>clone_image</dt>
+<dd>the clone image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="DefineImageProperty">DefineImageProperty</a></h2>
+
+<p>DefineImageProperty() associates an assignment string of the form "key=value" with an artifact or options. It is equivelent to SetImageProperty()</p>
+
+<p>The format of the DefineImageProperty method is:</p>
+
+<pre class="text">
+MagickBooleanType DefineImageProperty(Image *image,const char *property,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>property</dt>
+<dd>the image property. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="DeleteImageProperty">DeleteImageProperty</a></h2>
+
+<p>DeleteImageProperty() deletes an image property.</p>
+
+<p>The format of the DeleteImageProperty method is:</p>
+
+<pre class="text">
+MagickBooleanType DeleteImageProperty(Image *image,const char *property)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>property</dt>
+<dd>the image property. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="DestroyImageProperties">DestroyImageProperties</a></h2>
+
+<p>DestroyImageProperties() destroys all properties and associated memory attached to the given image.</p>
+
+<p>The format of the DestroyDefines method is:</p>
+
+<pre class="text">
+void DestroyImageProperties(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="FormatImageProperty">FormatImageProperty</a></h2>
+
+<p>FormatImageProperty() permits formatted property/value pairs to be saved as an image property.</p>
+
+<p>The format of the FormatImageProperty method is:</p>
+
+<pre class="text">
+MagickBooleanType FormatImageProperty(Image *image,const char *property,
+ const char *format,...)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt> image</dt>
+<p>The image.</p>
+
+<dt> property</dt>
+<p>The attribute property.</p>
+
+<dt> format</dt>
+<p>A string describing the format to use to write the remaining arguments.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="GetImageProperty">GetImageProperty</a></h2>
+
+<p>GetImageProperty() gets a value associated with an image property.</p>
+
+<p>This includes, profile prefixes, such as "exif:", "iptc:" and "8bim:" It does not handle non-prifile prefixes, such as "fx:", "option:", or "artifact:".</p>
+
+<p>The returned string is stored as a properity of the same name for faster lookup later. It should NOT be freed by the caller.</p>
+
+<p>The format of the GetImageProperty method is:</p>
+
+<pre class="text">
+const char *GetImageProperty(const Image *image,const char *key,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>key</dt>
+<dd>the key. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="GetNextImageProperty">GetNextImageProperty</a></h2>
+
+<p>GetNextImageProperty() gets the next free-form string property name.</p>
+
+<p>The format of the GetNextImageProperty method is:</p>
+
+<pre class="text">
+char *GetNextImageProperty(const Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="InterpretImageProperties">InterpretImageProperties</a></h2>
+
+<p>InterpretImageProperties() replaces any embedded formatting characters with the appropriate image property and returns the interpreted text.</p>
+
+<p>This searches for and replaces \n \r \ replaced by newline, return, and percent resp. &lt; &gt; &amp; replaced by '<', '>', '&' resp. replaced by percent</p>
+
+<p>x [x] where 'x' is a single letter properity, case sensitive). [type:name] where 'type' a is special and known prefix. [name] where 'name' is a specifically known attribute, calculated value, or a per-image property string name, or a per-image 'artifact' (as generated from a global option). It may contain ':' as long as the prefix is not special.</p>
+
+<p>Single letter substitutions will only happen if the character before the percent is NOT a number. But braced substitutions will always be performed. This prevents the typical usage of percent in a interpreted geometry argument from being substituted when the percent is a geometry flag.</p>
+
+<p>If 'glob-expresions' ('*' or '?' characters) is used for 'name' it may be used as a search pattern to print multiple lines of "name=value\n" pairs of the associacted set of properties.</p>
+
+<p>The returned string must be freed using DestoryString() by the caller.</p>
+
+<p>The format of the InterpretImageProperties method is:</p>
+
+<pre class="text">
+char *InterpretImageProperties(ImageInfo *image_info,
+ Image *image,const char *embed_text,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. (required) </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. (optional) </dd>
+
+<dd> </dd>
+<dt>embed_text</dt>
+<dd>the address of a character string containing the embedded formatting characters. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="(void)_LogMagickEvent(TraceEvent,GetMagickModule">(void) LogMagickEvent(TraceEvent,GetMagickModule</a></h2>
+
+<p>(void) LogMagickEvent(TraceEvent,GetMagickModule(),"s",image->filename); else if( image_info != (ImageInfo *) NULL && IfMagickTrue(image_info->debug)) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"s","no-image");</p>
+
+<p>if (embed_text == (const char *) NULL) return((char *) NULL); p=embed_text;</p>
+
+<p>if (*p == '\0') return(ConstantString(""));</p>
+
+<p>/* handle a '@' replace string from file */ if (*p == '@') { p++; if (*p != '-' && IfMagickFalse(IsPathAccessible(p)) ) { (void) ThrowMagickException(exception,GetMagickModule(),OptionError, "UnableToAccessPath","s",p); return((char *) NULL); } return(FileToString(p,~0UL,exception)); }</p>
+
+<p>/* Translate any embedded format characters. </p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="RemoveImageProperty">RemoveImageProperty</a></h2>
+
+<p>RemoveImageProperty() removes a property from the image and returns its value.</p>
+
+<p>In this case the ConstantString() value returned should be freed by the caller when finished.</p>
+
+<p>The format of the RemoveImageProperty method is:</p>
+
+<pre class="text">
+char *RemoveImageProperty(Image *image,const char *property)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>property</dt>
+<dd>the image property. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="ResetImagePropertyIterator">ResetImagePropertyIterator</a></h2>
+
+<p>ResetImagePropertyIterator() resets the image properties iterator. Use it in conjunction with GetNextImageProperty() to iterate over all the values associated with an image property.</p>
+
+<p>The format of the ResetImagePropertyIterator method is:</p>
+
+<pre class="text">
+ResetImagePropertyIterator(Image *image)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/property_8c.html" id="SetImageProperty">SetImageProperty</a></h2>
+
+<p>SetImageProperty() saves the given string value either to specific known attribute or to a freeform property string.</p>
+
+<p>Attempting to set a property that is normally calculated will produce an exception.</p>
+
+<p>The format of the SetImageProperty method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageProperty(Image *image,const char *property,
+ const char *value,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>property</dt>
+<dd>the image property. </dd>
+
+<dd> </dd>
+<dt>values</dt>
+<dd>the image property values. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="quantize.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="QuantizeImage">QuantizeImage</a></h2>
+
+<p>QuantizeImage() takes a standard RGB or monochrome images and quantizes them down to some fixed number of colors.</p>
+
+<p>For purposes of color allocation, an image is a set of n pixels, where each pixel is a point in RGB space. RGB space is a 3-dimensional vector space, and each pixel, Pi, is defined by an ordered triple of red, green, and blue coordinates, (Ri, Gi, Bi).</p>
+
+<p>Each primary color component (red, green, or blue) represents an intensity which varies linearly from 0 to a maximum value, Cmax, which corresponds to full saturation of that color. Color allocation is defined over a domain consisting of the cube in RGB space with opposite vertices at (0,0,0) and (Cmax, Cmax, Cmax). QUANTIZE requires Cmax = 255.</p>
+
+<p>The algorithm maps this domain onto a tree in which each node represents a cube within that domain. In the following discussion these cubes are defined by the coordinate of two opposite vertices (vertex nearest the origin in RGB space and the vertex farthest from the origin).</p>
+
+<p>The tree's root node represents the entire domain, (0,0,0) through (Cmax,Cmax,Cmax). Each lower level in the tree is generated by subdividing one node's cube into eight smaller cubes of equal size. This corresponds to bisecting the parent cube with planes passing through the midpoints of each edge.</p>
+
+<p>The basic algorithm operates in three phases: Classification, Reduction, and Assignment. Classification builds a color description tree for the image. Reduction collapses the tree until the number it represents, at most, the number of colors desired in the output image. Assignment defines the output image's color map and sets each pixel's color by restorage_class in the reduced tree. Our goal is to minimize the numerical discrepancies between the original colors and quantized colors (quantization error).</p>
+
+<p>Classification begins by initializing a color description tree of sufficient depth to represent each possible input color in a leaf. However, it is impractical to generate a fully-formed color description tree in the storage_class phase for realistic values of Cmax. If colors components in the input image are quantized to k-bit precision, so that Cmax= 2k-1, the tree would need k levels below the root node to allow representing each possible input color in a leaf. This becomes prohibitive because the tree's total number of nodes is 1 + sum(i=1, k, 8k).</p>
+
+<p>A complete tree would require 19,173,961 nodes for k = 8, Cmax = 255.</p>
+<dt>avoid building a fully populated tree, QUANTIZE</dt>
+<p>(1) Initializes data structures for nodes only as they are needed; (2) Chooses a maximum depth for the tree as a function of the desired number of colors in the output image (currently log2(colormap size)).</p>
+
+<p>For each pixel in the input image, storage_class scans downward from the root of the color description tree. At each level of the tree it identifies the single node which represents a cube in RGB space containing the pixel's color. It updates the following data for each such node:</p>
+
+<pre class="text">
+ n1: Number of pixels whose color is contained in the RGB cube which
+ this node represents;
+</pre>
+
+<p>n2: Number of pixels whose color is not represented in a node at lower depth in the tree; initially, n2 = 0 for all nodes except leaves of the tree.</p>
+
+<p>Sr, Sg, Sb: Sums of the red, green, and blue component values for all pixels not classified at a lower depth. The combination of these sums and n2 will ultimately characterize the mean color of a set of pixels represented by this node.</p>
+
+<p>E: the distance squared in RGB space between each pixel contained within a node and the nodes' center. This represents the quantization error for a node.</p>
+
+<p>Reduction repeatedly prunes the tree until the number of nodes with n2 > 0 is less than or equal to the maximum number of colors allowed in the output image. On any given iteration over the tree, it selects those nodes whose E count is minimal for pruning and merges their color statistics upward. It uses a pruning threshold, Ep, to govern node selection as follows:</p>
+
+<dd>
+</dd>
+
+<dd> Ep = 0 while number of nodes with (n2 > 0) > required maximum number of colors prune all nodes such that E <= Ep Set Ep to minimum E in remaining nodes </dd>
+
+<dd> This has the effect of minimizing any quantization error when merging two nodes together. </dd>
+
+<dd> When a node to be pruned has offspring, the pruning procedure invokes itself recursively in order to prune the tree from the leaves upward. n2, Sr, Sg, and Sb in a node being pruned are always added to the corresponding data in that node's parent. This retains the pruned node's color characteristics for later averaging. </dd>
+
+<dd> For each node, n2 pixels exist for which that node represents the smallest volume in RGB space containing those pixel's colors. When n2 > 0 the node will uniquely define a color in the output image. At the beginning of reduction, n2 = 0 for all nodes except a the leaves of the tree which represent colors present in the input image. </dd>
+
+<dd> The other pixel count, n1, indicates the total number of colors within the cubic volume which the node represents. This includes n1 - n2 pixels whose colors should be defined by nodes at a lower level in the tree. </dd>
+
+<dd> Assignment generates the output image from the pruned tree. The output </dd>
+<dl class="dl-horizontal">
+<dt>parts</dt>
+<dd>(1) A color map, which is an array of color descriptions (RGB triples) for each color present in the output image; (2) A pixel array, which represents each pixel as an index into the color map array. </dd>
+
+<dd> First, the assignment phase makes one pass over the pruned color description tree to establish the image's color map. For each node with n2 > 0, it divides Sr, Sg, and Sb by n2 . This produces the mean color of all pixels that classify no lower than this node. Each of these colors becomes an entry in the color map. </dd>
+
+<dd> Finally, the assignment phase reclassifies each pixel in the pruned tree to identify the deepest node containing the pixel's color. The pixel's value in the pixel array becomes the index of this node's mean color in the color map. </dd>
+
+<dd> This method is based on a similar algorithm written by Paul Raveling. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="AcquireQuantizeInfo">AcquireQuantizeInfo</a></h2>
+
+<p>AcquireQuantizeInfo() allocates the QuantizeInfo structure.</p>
+
+<p>The format of the AcquireQuantizeInfo method is:</p>
+
+<pre class="text">
+QuantizeInfo *AcquireQuantizeInfo(const ImageInfo *image_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="CloneQuantizeInfo">CloneQuantizeInfo</a></h2>
+
+<p>CloneQuantizeInfo() makes a duplicate of the given quantize info structure, or if quantize info is NULL, a new one.</p>
+
+<p>The format of the CloneQuantizeInfo method is:</p>
+
+<pre class="text">
+QuantizeInfo *CloneQuantizeInfo(const QuantizeInfo *quantize_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>clone_info</dt>
+<dd>Method CloneQuantizeInfo returns a duplicate of the given quantize info, or if image info is NULL a new one. </dd>
+
+<dd> </dd>
+<dt>quantize_info</dt>
+<dd>a structure of type info. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="CompressImageColormap">CompressImageColormap</a></h2>
+
+<p>CompressImageColormap() compresses an image colormap by removing any duplicate or unused color entries.</p>
+
+<p>The format of the CompressImageColormap method is:</p>
+
+<pre class="text">
+MagickBooleanType CompressImageColormap(Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="DestroyQuantizeInfo">DestroyQuantizeInfo</a></h2>
+
+<p>DestroyQuantizeInfo() deallocates memory associated with an QuantizeInfo structure.</p>
+
+<p>The format of the DestroyQuantizeInfo method is:</p>
+
+<pre class="text">
+QuantizeInfo *DestroyQuantizeInfo(QuantizeInfo *quantize_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>quantize_info</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="GetImageQuantizeError">GetImageQuantizeError</a></h2>
+
+<p>GetImageQuantizeError() measures the difference between the original and quantized images. This difference is the total quantization error. The error is computed by summing over all pixels in an image the distance squared in RGB space between each reference pixel value and its quantized value. These values are computed:</p>
+
+<pre class="text">
+ o mean_error_per_pixel: This value is the mean error for any single
+pixel in the image.
+</pre>
+
+<dt>normalized_mean_square_error</dt>
+<p>This value is the normalized mean quantization error for any single pixel in the image. This distance measure is normalized to a range between 0 and 1. It is independent of the range of red, green, and blue values in the image.</p>
+
+<dt>normalized_maximum_square_error</dt>
+<p>Thsi value is the normalized maximum quantization error for any single pixel in the image. This distance measure is normalized to a range between 0 and 1. It is independent of the range of red, green, and blue values in your image.</p>
+
+<p>The format of the GetImageQuantizeError method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageQuantizeError(Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="GetQuantizeInfo">GetQuantizeInfo</a></h2>
+
+<p>GetQuantizeInfo() initializes the QuantizeInfo structure.</p>
+
+<p>The format of the GetQuantizeInfo method is:</p>
+
+<pre class="text">
+GetQuantizeInfo(QuantizeInfo *quantize_info)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>quantize_info</dt>
+<dd>Specifies a pointer to a QuantizeInfo structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="PosterizeImage">PosterizeImage</a></h2>
+
+<p>PosterizeImage() reduces the image to a limited number of colors for a "poster" effect.</p>
+
+<p>The format of the PosterizeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType PosterizeImage(Image *image,const size_t levels,
+ const DitherMethod dither_method,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>Specifies a pointer to an Image structure. </dd>
+
+<dd> </dd>
+<dt>levels</dt>
+<dd>Number of color levels allowed in each channel. Very low values (2, 3, or 4) have the most visible effect. </dd>
+
+<dd> </dd>
+<dt>dither_method</dt>
+<dd>choose from UndefinedDitherMethod, NoDitherMethod, RiemersmaDitherMethod, FloydSteinbergDitherMethod. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="QuantizeImage">QuantizeImage</a></h2>
+
+<p>QuantizeImage() analyzes the colors within a reference image and chooses a fixed number of colors to represent the image. The goal of the algorithm is to minimize the color difference between the input and output image while minimizing the processing time.</p>
+
+<p>The format of the QuantizeImage method is:</p>
+
+<pre class="text">
+MagickBooleanType QuantizeImage(const QuantizeInfo *quantize_info,
+ Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>quantize_info</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="QuantizeImages">QuantizeImages</a></h2>
+
+<p>QuantizeImages() analyzes the colors within a set of reference images and chooses a fixed number of colors to represent the set. The goal of the algorithm is to minimize the color difference between the input and output images while minimizing the processing time.</p>
+
+<p>The format of the QuantizeImages method is:</p>
+
+<pre class="text">
+MagickBooleanType QuantizeImages(const QuantizeInfo *quantize_info,
+ Image *images,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>quantize_info</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure. </dd>
+
+<dd> </dd>
+<dt>images</dt>
+<dd>Specifies a pointer to a list of Image structures. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="RemapImage">RemapImage</a></h2>
+
+<p>RemapImage() replaces the colors of an image with the closest of the colors from the reference image.</p>
+
+<p>The format of the RemapImage method is:</p>
+
+<pre class="text">
+MagickBooleanType RemapImage(const QuantizeInfo *quantize_info,
+ Image *image,const Image *remap_image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>quantize_info</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>remap_image</dt>
+<dd>the reference image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="RemapImages">RemapImages</a></h2>
+
+<p>RemapImages() replaces the colors of a sequence of images with the closest color from a reference image.</p>
+
+<p>The format of the RemapImage method is:</p>
+
+<pre class="text">
+MagickBooleanType RemapImages(const QuantizeInfo *quantize_info,
+ Image *images,Image *remap_image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>quantize_info</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure. </dd>
+
+<dd> </dd>
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>remap_image</dt>
+<dd>the reference image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/quantize_8c.html" id="SetGrayscaleImage">SetGrayscaleImage</a></h2>
+
+<p>SetGrayscaleImage() converts an image to a PseudoClass grayscale image.</p>
+
+<p>The format of the SetGrayscaleImage method is:</p>
+
+<pre class="text">
+MagickBooleanType SetGrayscaleImage(Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>The image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="registry.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="DefineImageRegistry">DefineImageRegistry</a></h2>
+
+<p>DefineImageRegistry() associates a key/value pair with the image registry.</p>
+
+<p>The format of the DefineImageRegistry method is:</p>
+
+<pre class="text">
+MagickBooleanType DefineImageRegistry(const RegistryType type,
+ const char *option,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type. </dd>
+
+<dd> </dd>
+<dt>option</dt>
+<dd>the option. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>the exception. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="DeleteImageRegistry">DeleteImageRegistry</a></h2>
+
+<p>DeleteImageRegistry() deletes a key from the image registry.</p>
+
+<p>The format of the DeleteImageRegistry method is:</p>
+
+<pre class="text">
+MagickBooleanType DeleteImageRegistry(const char *key)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>key</dt>
+<dd>the registry. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="GetImageRegistry">GetImageRegistry</a></h2>
+
+<p>GetImageRegistry() returns a value associated with an image registry key.</p>
+
+<p>The format of the GetImageRegistry method is:</p>
+
+<pre class="text">
+void *GetImageRegistry(const RegistryType type,const char *key,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type. </dd>
+
+<dd> </dd>
+<dt>key</dt>
+<dd>the key. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>the exception. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="GetNextImageRegistry">GetNextImageRegistry</a></h2>
+
+<p>GetNextImageRegistry() gets the next image registry value.</p>
+
+<p>The format of the GetNextImageRegistry method is:</p>
+
+<pre class="text">
+char *GetNextImageRegistry(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="RegistryComponentTerminus">RegistryComponentTerminus</a></h2>
+
+<p>RegistryComponentTerminus() destroys the registry component.</p>
+
+<p>The format of the DestroyDefines method is:</p>
+
+<pre class="text">
+void RegistryComponentTerminus(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="RemoveImageRegistry">RemoveImageRegistry</a></h2>
+
+<p>RemoveImageRegistry() removes a key from the image registry and returns its value.</p>
+
+<p>The format of the RemoveImageRegistry method is:</p>
+
+<pre class="text">
+void *RemoveImageRegistry(const char *key)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>key</dt>
+<dd>the registry. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="ResetImageRegistryIterator">ResetImageRegistryIterator</a></h2>
+
+<p>ResetImageRegistryIterator() resets the registry iterator. Use it in conjunction with GetNextImageRegistry() to iterate over all the values in the image registry.</p>
+
+<p>The format of the ResetImageRegistryIterator method is:</p>
+
+<pre class="text">
+ResetImageRegistryIterator(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/registry_8c.html" id="SetImageRegistry">SetImageRegistry</a></h2>
+
+<p>SetImageRegistry() associates a value with an image registry key.</p>
+
+<p>The format of the SetImageRegistry method is:</p>
+
+<pre class="text">
+MagickBooleanType SetImageRegistry(const RegistryType type,
+ const char *key,const void *value,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type. </dd>
+
+<dd> </dd>
+<dt>key</dt>
+<dd>the key. </dd>
+
+<dd> </dd>
+<dt>value</dt>
+<dd>the value. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>the exception. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="resize.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="AdaptiveResizeImage">AdaptiveResizeImage</a></h2>
+
+<p>AdaptiveResizeImage() adaptively resize image with pixel resampling.</p>
+
+<p>This is shortcut function for a fast interpolative resize using mesh interpolation. It works well for small resizes of less than +/- 50 of the original image size. For larger resizing on images a full filtered and slower resize function should be used instead.</p>
+
+<p>The format of the AdaptiveResizeImage method is:</p>
+
+<pre class="text">
+Image *AdaptiveResizeImage(const Image *image,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the resized image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the resized image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="InterpolativeResizeImage">InterpolativeResizeImage</a></h2>
+
+<p>InterpolativeResizeImage() resizes an image using the specified interpolation method.</p>
+
+<p>The format of the InterpolativeResizeImage method is:</p>
+
+<pre class="text">
+Image *InterpolativeResizeImage(const Image *image,const size_t columns,
+ const size_t rows,const PixelInterpolateMethod method,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the resized image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the resized image. </dd>
+
+<dd> </dd>
+<dt>method</dt>
+<dd>the pixel interpolation method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="LiquidRescaleImage">LiquidRescaleImage</a></h2>
+
+<p>LiquidRescaleImage() rescales image with seam carving.</p>
+
+<p>The format of the LiquidRescaleImage method is:</p>
+
+<pre class="text">
+Image *LiquidRescaleImage(const Image *image,const size_t columns,
+ const size_t rows,const double delta_x,const double rigidity,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the rescaled image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the rescaled image. </dd>
+
+<dd> </dd>
+<dt>delta_x</dt>
+<dd>maximum seam transversal step (0 means straight seams). </dd>
+
+<dd> </dd>
+<dt>rigidity</dt>
+<dd>introduce a bias for non-straight seams (typically 0). </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="MagnifyImage">MagnifyImage</a></h2>
+
+<p>MagnifyImage() doubles the size of the image with a pixel art scaling algorithm.</p>
+
+<p>The format of the MagnifyImage method is:</p>
+
+<pre class="text">
+Image *MagnifyImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="MinifyImage">MinifyImage</a></h2>
+
+<p>MinifyImage() is a convenience method that scales an image proportionally to half its size.</p>
+
+<p>The format of the MinifyImage method is:</p>
+
+<pre class="text">
+Image *MinifyImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="ResampleImage">ResampleImage</a></h2>
+
+<p>ResampleImage() resize image in terms of its pixel size, so that when displayed at the given resolution it will be the same size in terms of real world units as the original image at the original resolution.</p>
+
+<p>The format of the ResampleImage method is:</p>
+
+<pre class="text">
+Image *ResampleImage(Image *image,const double x_resolution,
+ const double y_resolution,const FilterTypes filter,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image to be resized to fit the given resolution. </dd>
+
+<dd> </dd>
+<dt>x_resolution</dt>
+<dd>the new image x resolution. </dd>
+
+<dd> </dd>
+<dt>y_resolution</dt>
+<dd>the new image y resolution. </dd>
+
+<dd> </dd>
+<dt>filter</dt>
+<dd>Image filter to use. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="ResizeImage">ResizeImage</a></h2>
+
+<p>ResizeImage() scales an image to the desired dimensions, using the given filter (see AcquireFilterInfo()).</p>
+
+<p>If an undefined filter is given the filter defaults to Mitchell for a colormapped image, a image with a matte channel, or if the image is enlarged. Otherwise the filter defaults to a Lanczos.</p>
+
+<p>ResizeImage() was inspired by Paul Heckbert's "zoom" program.</p>
+
+<p>The format of the ResizeImage method is:</p>
+
+<pre class="text">
+Image *ResizeImage(Image *image,const size_t columns,const size_t rows,
+ const FilterTypes filter,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the scaled image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the scaled image. </dd>
+
+<dd> </dd>
+<dt>filter</dt>
+<dd>Image filter to use. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="SampleImage">SampleImage</a></h2>
+
+<p>SampleImage() scales an image to the desired dimensions with pixel sampling. Unlike other scaling methods, this method does not introduce any additional color into the scaled image.</p>
+
+<p>The format of the SampleImage method is:</p>
+
+<pre class="text">
+Image *SampleImage(const Image *image,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the sampled image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the sampled image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="ScaleImage">ScaleImage</a></h2>
+
+<p>ScaleImage() changes the size of an image to the given dimensions.</p>
+
+<p>The format of the ScaleImage method is:</p>
+
+<pre class="text">
+Image *ScaleImage(const Image *image,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the scaled image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the scaled image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resize_8c.html" id="ThumbnailImage">ThumbnailImage</a></h2>
+
+<p>ThumbnailImage() changes the size of an image to the given dimensions and removes any associated profiles. The goal is to produce small low cost thumbnail images suited for display on the Web.</p>
+
+<p>The format of the ThumbnailImage method is:</p>
+
+<pre class="text">
+Image *ThumbnailImage(const Image *image,const size_t columns,
+ const size_t rows,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>columns</dt>
+<dd>the number of columns in the scaled image. </dd>
+
+<dd> </dd>
+<dt>rows</dt>
+<dd>the number of rows in the scaled image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="resource.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="AcquireMagickResource">AcquireMagickResource</a></h2>
+
+<p>AcquireMagickResource() acquires resources of the specified type. MagickFalse is returned if the specified resource is exhausted otherwise MagickTrue.</p>
+
+<p>The format of the AcquireMagickResource() method is:</p>
+
+<pre class="text">
+MagickBooleanType AcquireMagickResource(const ResourceType type,
+ const MagickSizeType size)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type of resource. </dd>
+
+<dd> </dd>
+<dt>size</dt>
+<dd>the number of bytes needed from for this resource. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="AcquireUniqueFileResource">AcquireUniqueFileResource</a></h2>
+
+<p>AcquireUniqueFileResource() returns a unique file name, and returns a file descriptor for the file open for reading and writing.</p>
+
+<p>The format of the AcquireUniqueFileResource() method is:</p>
+
+<pre class="text">
+int AcquireUniqueFileResource(char *path)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt> path</dt>
+<dd> Specifies a pointer to an array of characters. The unique path name is returned in this array. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="GetMagickResource">GetMagickResource</a></h2>
+
+<p>GetMagickResource() returns the specified resource.</p>
+
+<p>The format of the GetMagickResource() method is:</p>
+
+<pre class="text">
+MagickSizeType GetMagickResource(const ResourceType type)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type of resource. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="GetMagickResourceLimit">GetMagickResourceLimit</a></h2>
+
+<p>GetMagickResourceLimit() returns the specified resource limit.</p>
+
+<p>The format of the GetMagickResourceLimit() method is:</p>
+
+<pre class="text">
+MagickSizeType GetMagickResourceLimit(const ResourceType type)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type of resource. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="ListMagickResourceInfo">ListMagickResourceInfo</a></h2>
+
+<p>ListMagickResourceInfo() lists the resource info to a file.</p>
+
+<p>The format of the ListMagickResourceInfo method is:</p>
+
+<pre class="text">
+MagickBooleanType ListMagickResourceInfo(FILE *file,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>file</dt>
+<p>An pointer to a FILE.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="RelinquishMagickResource">RelinquishMagickResource</a></h2>
+
+<p>RelinquishMagickResource() relinquishes resources of the specified type.</p>
+
+<p>The format of the RelinquishMagickResource() method is:</p>
+
+<pre class="text">
+void RelinquishMagickResource(const ResourceType type,
+ const MagickSizeType size)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type of resource. </dd>
+
+<dd> </dd>
+<dt>size</dt>
+<dd>the size of the resource. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="RelinquishUniqueFileResource">RelinquishUniqueFileResource</a></h2>
+
+<p>RelinquishUniqueFileResource() relinquishes a unique file resource.</p>
+
+<p>The format of the RelinquishUniqueFileResource() method is:</p>
+
+<pre class="text">
+MagickBooleanType RelinquishUniqueFileResource(const char *path)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>name</dt>
+<dd>the name of the temporary resource. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/resource_8c.html" id="SetMagickResourceLimit">SetMagickResourceLimit</a></h2>
+
+<p>SetMagickResourceLimit() sets the limit for a particular resource.</p>
+
+<p>The format of the SetMagickResourceLimit() method is:</p>
+
+<pre class="text">
+MagickBooleanType SetMagickResourceLimit(const ResourceType type,
+ const MagickSizeType limit)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>type</dt>
+<dd>the type of resource. </dd>
+
+<dd> </dd>
+<dt>limit</dt>
+<dd>the maximum limit for the resource. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="segment.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/segment_8c.html" id="SegmentImage">SegmentImage</a></h2>
+
+<p>SegmentImage() segment an image by analyzing the histograms of the color components and identifying units that are homogeneous with the fuzzy C-means technique.</p>
+
+<p>The format of the SegmentImage method is:</p>
+
+<pre class="text">
+MagickBooleanType SegmentImage(Image *image,
+ const ColorspaceType colorspace,const MagickBooleanType verbose,
+ const double cluster_threshold,const double smooth_threshold,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>colorspace</dt>
+<p>Indicate the colorspace.</p>
+
+<dt>verbose</dt>
+<p>Set to MagickTrue to print detailed information about the identified classes.</p>
+
+<dt>cluster_threshold</dt>
+<p>This represents the minimum number of pixels contained in a hexahedra before it can be considered valid (expressed as a percentage).</p>
+
+<dt>smooth_threshold</dt>
+<p>the smoothing threshold eliminates noise in the second derivative of the histogram. As the value is increased, you can expect a smoother second derivative.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="shear.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/shear_8c.html" id="The_XShearImage">The XShearImage</a></h2>
+
+<p>The XShearImage() and YShearImage() methods are based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth, Graphics Interface '86 (Vancouver). ShearRotateImage() is adapted from a similar method based on the Paeth paper written by Michael Halle of the Spatial Imaging Group, MIT Media Lab.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/shear_8c.html" id="DeskewImage">DeskewImage</a></h2>
+
+<p>DeskewImage() removes skew from the image. Skew is an artifact that occurs in scanned images because of the camera being misaligned, imperfections in the scanning or surface, or simply because the paper was not placed completely flat when scanned.</p>
+
+<p>The result will be auto-croped if the artifact "deskew:auto-crop" is defined, while the amount the image is to be deskewed, in degrees is also saved as the artifact "deskew:angle".</p>
+
+<p>If the artifact "deskew:auto-crop" is given the image will be automatically cropped of the excess background. The value is the border width of all pixels around the edge that will be used to determine an average border color for the automatic trim.</p>
+
+<p>The format of the DeskewImage method is:</p>
+
+<pre class="text">
+Image *DeskewImage(const Image *image,const double threshold,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>threshold</dt>
+<dd>separate background from foreground. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/shear_8c.html" id="IntegralRotateImage">IntegralRotateImage</a></h2>
+
+<p>IntegralRotateImage() rotates the image an integral of 90 degrees. It allocates the memory necessary for the new Image structure and returns a pointer to the rotated image.</p>
+
+<p>The format of the IntegralRotateImage method is:</p>
+
+<pre class="text">
+Image *IntegralRotateImage(const Image *image,size_t rotations,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>rotations</dt>
+<p>Specifies the number of 90 degree rotations.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/shear_8c.html" id="ShearImage">ShearImage</a></h2>
+
+<p>ShearImage() creates a new image that is a shear_image copy of an existing one. 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_shear is measured relative to the Y axis, and similarly, for Y direction shears y_shear is measured relative to the X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image.. ShearImage() allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>ShearImage() is based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth.</p>
+
+<p>The format of the ShearImage method is:</p>
+
+<pre class="text">
+Image *ShearImage(const Image *image,const double x_shear,
+ const double y_shear,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>x_shear, y_shear</dt>
+<p>Specifies the number of degrees to shear the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/shear_8c.html" id="ShearRotateImage">ShearRotateImage</a></h2>
+
+<p>ShearRotateImage() creates a new image that is a rotated copy of an existing one. Positive angles rotate counter-clockwise (right-hand rule), while negative angles rotate clockwise. Rotated images are usually larger than the originals and have 'empty' triangular corners. X axis. Empty triangles left over from shearing the image are filled with the background color defined by member 'background_color' of the image. ShearRotateImage allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>ShearRotateImage() is based on the paper "A Fast Algorithm for General Raster Rotatation" by Alan W. Paeth. ShearRotateImage is adapted from a similar method based on the Paeth paper written by Michael Halle of the Spatial Imaging Group, MIT Media Lab.</p>
+
+<p>The format of the ShearRotateImage method is:</p>
+
+<pre class="text">
+Image *ShearRotateImage(const Image *image,const double degrees,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows.</p>
+
+<dt>image</dt>
+<p>the image.</p>
+
+<dt>degrees</dt>
+<p>Specifies the number of degrees to rotate the image.</p>
+
+<dt>exception</dt>
+<p>return any errors or warnings in this structure.</p>
+
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="signature.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/signature_8c.html" id="SignatureImage">SignatureImage</a></h2>
+
+<p>SignatureImage() computes a message digest from an image pixel stream with an implementation of the NIST SHA-256 Message Digest algorithm. This signature uniquely identifies the image and is convenient for determining if an image has been modified or whether two images are identical.</p>
+
+<p>The format of the SignatureImage method is:</p>
+
+<pre class="text">
+MagickBooleanType SignatureImage(Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="statistic.html#"></a></p>
+<p class="text-center"><a href="statistic.html#EvaluateImage">EvaluateImage</a> • <a href="statistic.html#FunctionImage">FunctionImage</a> • <a href="statistic.html#GetImageEntropy">GetImageEntropy</a> • <a href="statistic.html#GetImageExtrema">GetImageExtrema</a> • <a href="statistic.html#GetImageKurtosis">GetImageKurtosis</a> • <a href="statistic.html#GetImageMean">GetImageMean</a> • <a href="statistic.html#GetImageMoments">GetImageMoments</a> • <a href="statistic.html#GetImagePerceptualHash">GetImagePerceptualHash</a> • <a href="statistic.html#GetImageRange">GetImageRange</a> • <a href="statistic.html#GetImageStatistics">GetImageStatistics</a> • <a href="statistic.html#PolynomialImage">PolynomialImage</a> • <a href="statistic.html#StatisticImage">StatisticImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="EvaluateImage">EvaluateImage</a></h2>
+
+<p>EvaluateImage() applies a value to the image with an arithmetic, relational, or logical operator to an image. Use these operations to lighten or darken an image, to increase or decrease contrast in an image, or to produce the "negative" of an image.</p>
+
+<p>The format of the EvaluateImage method is:</p>
+
+<pre class="text">
+MagickBooleanType EvaluateImage(Image *image,
+ const MagickEvaluateOperator op,const double value,
+ ExceptionInfo *exception)
+MagickBooleanType EvaluateImages(Image *images,
+ const MagickEvaluateOperator op,const double value,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>op</dt>
+<dd>A channel op. </dd>
+
+<dd> </dd>
+<dt>value</dt>
+<dd>A value value. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="FunctionImage">FunctionImage</a></h2>
+
+<p>FunctionImage() applies a value to the image with an arithmetic, relational, or logical operator to an image. Use these operations to lighten or darken an image, to increase or decrease contrast in an image, or to produce the "negative" of an image.</p>
+
+<p>The format of the FunctionImage method is:</p>
+
+<pre class="text">
+MagickBooleanType FunctionImage(Image *image,
+ const MagickFunction function,const ssize_t number_parameters,
+ const double *parameters,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>function</dt>
+<dd>A channel function. </dd>
+
+<dd> </dd>
+<dt>parameters</dt>
+<dd>one or more parameters. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageEntropy">GetImageEntropy</a></h2>
+
+<p>GetImageEntropy() returns the entropy of one or more image channels.</p>
+
+<p>The format of the GetImageEntropy method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageEntropy(const Image *image,double *entropy,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>entropy</dt>
+<dd>the average entropy of the selected channels. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageExtrema">GetImageExtrema</a></h2>
+
+<p>GetImageExtrema() returns the extrema of one or more image channels.</p>
+
+<p>The format of the GetImageExtrema method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageExtrema(const Image *image,size_t *minima,
+ size_t *maxima,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>minima</dt>
+<dd>the minimum value in the channel. </dd>
+
+<dd> </dd>
+<dt>maxima</dt>
+<dd>the maximum value in the channel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageKurtosis">GetImageKurtosis</a></h2>
+
+<p>GetImageKurtosis() returns the kurtosis and skewness of one or more image channels.</p>
+
+<p>The format of the GetImageKurtosis method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageKurtosis(const Image *image,double *kurtosis,
+ double *skewness,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>kurtosis</dt>
+<dd>the kurtosis of the channel. </dd>
+
+<dd> </dd>
+<dt>skewness</dt>
+<dd>the skewness of the channel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageMean">GetImageMean</a></h2>
+
+<p>GetImageMean() returns the mean and standard deviation of one or more image channels.</p>
+
+<p>The format of the GetImageMean method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageMean(const Image *image,double *mean,
+ double *standard_deviation,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>mean</dt>
+<dd>the average value in the channel. </dd>
+
+<dd> </dd>
+<dt>standard_deviation</dt>
+<dd>the standard deviation of the channel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageMoments">GetImageMoments</a></h2>
+
+<p>GetImageMoments() returns the normalized moments of one or more image channels.</p>
+
+<p>The format of the GetImageMoments method is:</p>
+
+<pre class="text">
+ChannelMoments *GetImageMoments(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImagePerceptualHash">GetImagePerceptualHash</a></h2>
+
+<p>GetImagePerceptualHash() returns the perceptual hash of one or more image channels.</p>
+
+<p>The format of the GetImagePerceptualHash method is:</p>
+
+<pre class="text">
+ChannelPerceptualHash *GetImagePerceptualHash(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageRange">GetImageRange</a></h2>
+
+<p>GetImageRange() returns the range of one or more image channels.</p>
+
+<p>The format of the GetImageRange method is:</p>
+
+<pre class="text">
+MagickBooleanType GetImageRange(const Image *image,double *minima,
+ double *maxima,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>minima</dt>
+<dd>the minimum value in the channel. </dd>
+
+<dd> </dd>
+<dt>maxima</dt>
+<dd>the maximum value in the channel. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="GetImageStatistics">GetImageStatistics</a></h2>
+
+<p>GetImageStatistics() returns statistics for each channel in the image. The statistics include the channel depth, its minima, maxima, mean, standard deviation, kurtosis and skewness. You can access the red channel mean, for example, like this:</p>
+
+<pre class="text">
+channel_statistics=GetImageStatistics(image,exception);
+red_mean=channel_statistics[RedPixelChannel].mean;
+</pre>
+
+<p>Use MagickRelinquishMemory() to free the statistics buffer.</p>
+
+<p>The format of the GetImageStatistics method is:</p>
+
+<pre class="text">
+ChannelStatistics *GetImageStatistics(const Image *image,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="PolynomialImage">PolynomialImage</a></h2>
+
+<p>PolynomialImage() returns a new image where each pixel is the sum of the pixels in the image sequence after applying its corresponding terms (coefficient and degree pairs).</p>
+
+<p>The format of the PolynomialImage method is:</p>
+
+<pre class="text">
+Image *PolynomialImage(const Image *images,const size_t number_terms,
+ const double *terms,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>images</dt>
+<dd>the image sequence. </dd>
+
+<dd> </dd>
+<dt>number_terms</dt>
+<dd>the number of terms in the list. The actual list length is 2 x number_terms + 1 (the constant). </dd>
+
+<dd> </dd>
+<dt>terms</dt>
+<dd>the list of polynomial coefficients and degree pairs and a constant. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/statistic_8c.html" id="StatisticImage">StatisticImage</a></h2>
+
+<p>StatisticImage() makes each pixel the min / max / median / mode / etc. of the neighborhood of the specified width and height.</p>
+
+<p>The format of the StatisticImage method is:</p>
+
+<pre class="text">
+Image *StatisticImage(const Image *image,const StatisticType type,
+ const size_t width,const size_t height,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>type</dt>
+<dd>the statistic type (median, mode, etc.). </dd>
+
+<dd> </dd>
+<dt>width</dt>
+<dd>the width of the pixel neighborhood. </dd>
+
+<dd> </dd>
+<dt>height</dt>
+<dd>the height of the pixel neighborhood. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="stream.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/stream_8c.html" id="ReadStream">ReadStream</a></h2>
+
+<p>ReadStream() makes the image pixels available to a user supplied callback method immediately upon reading a scanline with the ReadImage() method.</p>
+
+<p>The format of the ReadStream() method is:</p>
+
+<pre class="text">
+Image *ReadStream(const ImageInfo *image_info,StreamHandler stream,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>stream</dt>
+<dd>a callback method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/stream_8c.html" id="WriteStream">WriteStream</a></h2>
+
+<p>WriteStream() makes the image pixels available to a user supplied callback method immediately upon writing pixel data with the WriteImage() method.</p>
+
+<p>The format of the WriteStream() method is:</p>
+
+<pre class="text">
+MagickBooleanType WriteStream(const ImageInfo *image_info,Image *,
+ StreamHandler stream,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image_info</dt>
+<dd>the image info. </dd>
+
+<dd> </dd>
+<dt>stream</dt>
+<dd>A callback method. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
</div>
<div class="container">
<div class="magick-header">
-<p class="text-center"><a href="transform.html#"></a></p>
+<p class="text-center"><a href="transform.html#AutoOrientImage">AutoOrientImage</a> • <a href="transform.html#ChopImage">ChopImage</a> • <a href="transform.html#CropImage">CropImage</a> • <a href="transform.html#CropImageToTiles">CropImageToTiles</a> • <a href="transform.html#ExcerptImage">ExcerptImage</a> • <a href="transform.html#ExtentImage">ExtentImage</a> • <a href="transform.html#FlipImage">FlipImage</a> • <a href="transform.html#FlopImage">FlopImage</a> • <a href="transform.html#RollImage">RollImage</a> • <a href="transform.html#ShaveImage">ShaveImage</a> • <a href="transform.html#SpliceImage">SpliceImage</a> • <a href="transform.html#TransformImage">TransformImage</a> • <a href="transform.html#TransformImages">TransformImages</a> • <a href="transform.html#TransposeImage">TransposeImage</a> • <a href="transform.html#TransverseImage">TransverseImage</a> • <a href="transform.html#TrimImage">TrimImage</a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="AutoOrientImage">AutoOrientImage</a></h2>
+
+<p>AutoOrientImage() adjusts an image so that its orientation is suitable for viewing (i.e. top-left orientation).</p>
+
+<p>The format of the AutoOrientImage method is:</p>
+
+<pre class="text">
+Image *AutoOrientImage(const Image *image,
+ const OrientationType orientation,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>The image. </dd>
+
+<dd> </dd>
+<dt>orientation</dt>
+<dd>Current image orientation. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>Return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="ChopImage">ChopImage</a></h2>
+
+<p>ChopImage() removes a region of an image and collapses the image to occupy the removed portion.</p>
+
+<p>The format of the ChopImage method is:</p>
+
+<pre class="text">
+Image *ChopImage(const Image *image,const RectangleInfo *chop_info)
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>chop_info</dt>
+<dd>Define the region of the image to chop. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="CropImage">CropImage</a></h2>
+
+<p>CropImage() extracts a region of the image starting at the offset defined by geometry. Region must be fully defined, and no special handling of geometry flags is performed.</p>
+
+<p>The format of the CropImage method is:</p>
+
+<pre class="text">
+Image *CropImage(const Image *image,const RectangleInfo *geometry,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>geometry</dt>
+<dd>Define the region of the image to crop with members x, y, width, and height. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="CropImageToTiles">CropImageToTiles</a></h2>
+
+<p>CropImageToTiles() crops a single image, into a possible list of tiles. This may include a single sub-region of the image. This basically applies all the normal geometry flags for Crop.</p>
+
+<p>Image *CropImageToTiles(const Image *image, const RectangleInfo *crop_geometry, ExceptionInfo *exception)</p>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image The transformed image is returned as this parameter. </dd>
+
+<dd> </dd>
+<dt>crop_geometry</dt>
+<dd>A crop geometry string. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="ExcerptImage">ExcerptImage</a></h2>
+
+<p>ExcerptImage() returns a excerpt of the image as defined by the geometry.</p>
+
+<p>The format of the ExcerptImage method is:</p>
+
+<pre class="text">
+Image *ExcerptImage(const Image *image,const RectangleInfo *geometry,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>geometry</dt>
+<dd>Define the region of the image to extend with members x, y, width, and height. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="ExtentImage">ExtentImage</a></h2>
+
+<p>ExtentImage() extends the image as defined by the geometry, gravity, and image background color. Set the (x,y) offset of the geometry to move the original image relative to the extended image.</p>
+
+<p>The format of the ExtentImage method is:</p>
+
+<pre class="text">
+Image *ExtentImage(const Image *image,const RectangleInfo *geometry,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>geometry</dt>
+<dd>Define the region of the image to extend with members x, y, width, and height. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="FlipImage">FlipImage</a></h2>
+
+<p>FlipImage() creates a vertical mirror image by reflecting the pixels around the central x-axis.</p>
+
+<p>The format of the FlipImage method is:</p>
+
+<pre class="text">
+Image *FlipImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="FlopImage">FlopImage</a></h2>
+
+<p>FlopImage() creates a horizontal mirror image by reflecting the pixels around the central y-axis.</p>
+
+<p>The format of the FlopImage method is:</p>
+
+<pre class="text">
+Image *FlopImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="RollImage">RollImage</a></h2>
+
+<p>RollImage() offsets an image as defined by x_offset and y_offset.</p>
+
+<p>The format of the RollImage method is:</p>
+
+<pre class="text">
+Image *RollImage(const Image *image,const ssize_t x_offset,
+ const ssize_t y_offset,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>x_offset</dt>
+<dd>the number of columns to roll in the horizontal direction. </dd>
+
+<dd> </dd>
+<dt>y_offset</dt>
+<dd>the number of rows to roll in the vertical direction. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="ShaveImage">ShaveImage</a></h2>
+
+<p>ShaveImage() shaves pixels from the image edges. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>The format of the ShaveImage method is:</p>
+
+<pre class="text">
+Image *ShaveImage(const Image *image,const RectangleInfo *shave_info,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>shave_image</dt>
+<dd>Method ShaveImage returns a pointer to the shaved image. A null image is returned if there is a memory shortage or if the image width or height is zero. </dd>
+
+<dd> </dd>
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>shave_info</dt>
+<dd>Specifies a pointer to a RectangleInfo which defines the region of the image to crop. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="SpliceImage">SpliceImage</a></h2>
+
+<p>SpliceImage() splices a solid color into the image as defined by the geometry.</p>
+
+<p>The format of the SpliceImage method is:</p>
+
+<pre class="text">
+Image *SpliceImage(const Image *image,const RectangleInfo *geometry,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>geometry</dt>
+<dd>Define the region of the image to splice with members x, y, width, and height. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="TransformImage">TransformImage</a></h2>
+
+<p>TransformImage() is a convenience method that behaves like ResizeImage() or CropImage() but accepts scaling and/or cropping information as a region geometry specification. If the operation fails, the original image handle is left as is.</p>
+
+<p>This should only be used for single images.</p>
+
+<p>This function destroys what it assumes to be a single image list. If the input image is part of a larger list, all other images in that list will be simply 'lost', not destroyed.</p>
+
+<p>Also if the crop generates a list of images only the first image is resized. And finally if the crop succeeds and the resize failed, you will get a cropped image, as well as a 'false' or 'failed' report.</p>
+
+<p>This function and should probably be deprecated in favor of direct calls to CropImageToTiles() or ResizeImage(), as appropriate.</p>
+
+<p>The format of the TransformImage method is:</p>
+
+<pre class="text">
+MagickBooleanType TransformImage(Image **image,const char *crop_geometry,
+ const char *image_geometry,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image The transformed image is returned as this parameter. </dd>
+
+<dd> </dd>
+<dt>crop_geometry</dt>
+<dd>A crop geometry string. This geometry defines a subregion of the image to crop. </dd>
+
+<dd> </dd>
+<dt>image_geometry</dt>
+<dd>An image geometry string. This geometry defines the final size of the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="TransformImages">TransformImages</a></h2>
+
+<p>TransformImages() calls TransformImage() on each image of a sequence.</p>
+
+<p>The format of the TransformImage method is:</p>
+
+<pre class="text">
+MagickBooleanType TransformImages(Image **image,
+ const char *crop_geometry,const char *image_geometry,
+ ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image The transformed image is returned as this parameter. </dd>
+
+<dd> </dd>
+<dt>crop_geometry</dt>
+<dd>A crop geometry string. This geometry defines a subregion of the image to crop. </dd>
+
+<dd> </dd>
+<dt>image_geometry</dt>
+<dd>An image geometry string. This geometry defines the final size of the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="TransposeImage">TransposeImage</a></h2>
+
+<p>TransposeImage() creates a horizontal mirror image by reflecting the pixels around the central y-axis while rotating them by 90 degrees.</p>
+
+<p>The format of the TransposeImage method is:</p>
+
+<pre class="text">
+Image *TransposeImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="TransverseImage">TransverseImage</a></h2>
+
+<p>TransverseImage() creates a vertical mirror image by reflecting the pixels around the central x-axis while rotating them by 270 degrees.</p>
+
+<p>The format of the TransverseImage method is:</p>
+
+<pre class="text">
+Image *TransverseImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/transform_8c.html" id="TrimImage">TrimImage</a></h2>
+
+<p>TrimImage() trims pixels from the image edges. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
+
+<p>The format of the TrimImage method is:</p>
+
+<pre class="text">
+Image *TrimImage(const Image *image,ExceptionInfo *exception)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>image</dt>
+<dd>the image. </dd>
+
+<dd> </dd>
+<dt>exception</dt>
+<dd>return any errors or warnings in this structure. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<div class="magick-header">
<p class="text-center"><a href="version.html#"></a></p>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickCopyright">GetMagickCopyright</a></h2>
+
+<p>GetMagickCopyright() returns the ImageMagick API copyright as a string.</p>
+
+<p>The format of the GetMagickCopyright method is:</p>
+
+<pre class="text">
+const char *GetMagickCopyright(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickDelegates">GetMagickDelegates</a></h2>
+
+<p>GetMagickDelegates() returns the ImageMagick delegate libraries.</p>
+
+<p>The format of the GetMagickDelegates method is:</p>
+
+<pre class="text">
+const char *GetMagickDelegates(void)
+</pre>
+
+<p>No parameters are required.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickFeatures">GetMagickFeatures</a></h2>
+
+<p>GetMagickFeatures() returns the ImageMagick features.</p>
+
+<p>The format of the GetMagickFeatures method is:</p>
+
+<pre class="text">
+const char *GetMagickFeatures(void)
+</pre>
+
+<p>No parameters are required.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickHomeURL">GetMagickHomeURL</a></h2>
+
+<p>GetMagickHomeURL() returns the ImageMagick home URL.</p>
+
+<p>The format of the GetMagickHomeURL method is:</p>
+
+<pre class="text">
+char *GetMagickHomeURL(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickLicense">GetMagickLicense</a></h2>
+
+<p>GetMagickLicense() returns the ImageMagick API license as a string.</p>
+
+<p>The format of the GetMagickLicense method is:</p>
+
+<pre class="text">
+const char *GetMagickLicense(void)
+</pre>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickPackageName">GetMagickPackageName</a></h2>
+
+<p>GetMagickPackageName() returns the ImageMagick package name.</p>
+
+<p>The format of the GetMagickName method is:</p>
+
+<pre class="text">
+const char *GetMagickName(void)
+</pre>
+
+<p>No parameters are required.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickQuantumDepth">GetMagickQuantumDepth</a></h2>
+
+<p>GetMagickQuantumDepth() returns the ImageMagick quantum depth.</p>
+
+<p>The format of the GetMagickQuantumDepth method is:</p>
+
+<pre class="text">
+const char *GetMagickQuantumDepth(size_t *depth)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>depth</dt>
+<dd>the quantum depth is returned as a number. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickQuantumRange">GetMagickQuantumRange</a></h2>
+
+<p>GetMagickQuantumRange() returns the ImageMagick quantum range.</p>
+
+<p>The format of the GetMagickQuantumRange method is:</p>
+
+<pre class="text">
+const char *GetMagickQuantumRange(size_t *range)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>range</dt>
+<dd>the quantum range is returned as a number. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickReleaseDate">GetMagickReleaseDate</a></h2>
+
+<p>GetMagickReleaseDate() returns the ImageMagick release date.</p>
+
+<p>The format of the GetMagickReleaseDate method is:</p>
+
+<pre class="text">
+const char *GetMagickReleaseDate(void)
+</pre>
+
+<p>No parameters are required.</p>
+
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickSignature">GetMagickSignature</a></h2>
+
+<p>GetMagickSignature() returns a signature that uniquely encodes the MagickCore libary version, quantum depth, HDRI status, OS word size, and endianness.</p>
+
+<p>The format of the GetMagickSignature method is:</p>
+
+<pre class="text">
+unsigned int GetMagickSignature(const StringInfo *nonce)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>nonce</dt>
+<dd>arbitrary data. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="GetMagickVersion">GetMagickVersion</a></h2>
+
+<p>GetMagickVersion() returns the ImageMagick API version as a string and as a number.</p>
+
+<p>The format of the GetMagickVersion method is:</p>
+
+<pre class="text">
+const char *GetMagickVersion(size_t *version)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>version</dt>
+<dd>the ImageMagick version is returned as a number. </dd>
+
+<dd> </dd>
+</dl>
+<h2><a href="http://nextgen.imagemagick.org/api/MagickCore/version_8c.html" id="ListMagickVersion">ListMagickVersion</a></h2>
+
+<p>ListMagickVersion() identifies the ImageMagick version by printing its attributes to the file. Attributes include the copyright, features, and delegates.</p>
+
+<p>The format of the ListMagickVersion method is:</p>
+
+<pre class="text">
+void ListMagickVersion(FILE *file)
+</pre>
+
+<p>A description of each parameter follows:</p>
+
+<dd>
+</dd>
+
+<dd> </dd>
+<dl class="dl-horizontal">
+<dt>file</dt>
+<dd>the file, typically stdout. </dd>
+
+<dd> </dd>
+</dl>
</div>
<footer class="magick-footer">
<div class="magick-nav-item pull-left">
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
</div>
</div>
<div class="container">
-<div class="magick-header"><dl><dt>2015-06-03 6.9.1-5 Cristy <quetzlzacatenango@image...></dt>
- </dl><li> Use correct scale when interpretting alpha (e.g. rgba(0,0,0,1)).</li>
- <li> DrawGetVectorGraphics() now returns proper XML (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27751).</li>
- <li> Support writing EXR files with different color types (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=27759).</li>
- <li> Prefer PKG_CHECK_MODULES() when searching for delegate libraries.</li>
-<dt>2015-06-01 6.9.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.1-4, SVN revision 18697.</li>
-<dt>2015-06-01 6.9.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Support 'restrict' keyword under Windows.</li>
-<dt>2015-05-25 6.9.1-4 Dirk Lemstra <dirk@lem.....org></dt>
- <li> Added support for reading a user supplied layer mask in PSD files.</li>
- <li> Added support for reading photoshop layers in TIFF files.</li>
-<dt>2015-05-24 6.9.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.1-3, SVN revision 18623.</li>
-<dt>2015-05-03 6.9.1-3 Dirk Lemstra <dirk@lem.....org></dt>
- <li> Fixed transparency issue with 16-bit tga files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27469).</li>
- <li> Fixed writing label and comment in tiff images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25516).</li>
- <li> Jpeg images no longer have pixels per inch as a default value for density units when the density is not set (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27589).</li>
- <li> Added support for setting the font color with -fill to the pango coder.</li>
-<dt>2015-05-03 6.9.1-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bug with "-define png:format=x" in png.c, introduced in version 6.8.9-0, that caused the define to be ignored.</li>
- <li> Replaced some dead code in ReadJNGImage with an assert().</li>
- <li> Avoid palette-building when writing a grayscale PNG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27580).</li>
-<dt>2015-04-20 6.9.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -define compose:clamp=false option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26946).</li>
- <li> Don't extend any user supplied image buffer in SeekBlob() (bug report from a.chernij@corp...).</li>
- <li> Improved reproducible builds (reference https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=783933).</li>
- <li> Draw a rectangle of width & height of 1 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24874).</li>
-<dt>2015-04-19 6.9.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.1-2, SVN revision 18429.</li>
-<dt>2015-04-09 6.9.1-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Avoid using a NULL alpha_image or color_image in the JNG decoder.</li>
-<dt>2015-04-07 6.9.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix JPEG-2000 transparency on write (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27304).</li>
- <li> Identify now identifies PSD (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26948).</li>
- <li> Speed up writing to TGA (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27369).</li>
-<dt>2015-04-06 6.9.1-2 Dirk Lemstra <dirk@lem.....org></dt>
- <li> Reduce draw epsilon to increase mathematical stability.</li>
- <li> Fixed UTF8 issue when determining the current working directory on Windows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27295).</li>
-<dt>2015-04-04 6.9.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.1-1, SVN revision 18308.</li>
-<dt>2015-03-21 6.9.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Skip empty frames when comparing layers (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27234).</li>
-<dt>2015-03-21 6.9.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.1-0, SVN revision 18245.</li>
-<dt>2015-03-17 6.9.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Grayscale DPX image files are no longer skewed (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27209).</li>
-<dt>2015-03-16 6.9.1-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fix integer overflow when scaling a 1-bit sample to Q64 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27195).</li>
-<dt>2015-03-01 6.9.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-10, SVN revision 18299.</li>
-<dt>2015-03-03 6.9.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Account for differences in image size when comparing two images (bug report from Dirk).</li>
- <li> Set an upper ceiling compression with -quality and jpeg:extent (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=27071).</li>
-<dt>2015-03-01 6.9.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-9, SVN revision 18179.</li>
-<dt>2015-02-22 6.9.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Writing histograms / mpeg working again (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27089).</li>
- <li> The -linear-stretch option worked for Q16 but not Q32 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27112).</li>
-<dt>2015-02-22 6.9.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Bogus release, withdrawn.</li>
-<dt>2015-02-22 6.9.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-7, SVN revision 18067.</li>
-<dt>2015-02-15 6.9.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Line strokes appeared too thin (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26927).</li>
- <li> Keep text in caption area (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22504).</li>
-<dt>2015-02-14 6.9.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-6, SVN revision 18010.</li>
-<dt>2015-02-12 6.9.0-6 Dirk Lemstra <dirk@lem.....org></dt>
- <li> Fixed command line execution in Windows for delegates that move files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=27027).</li>
-<dt>2015-02-10 6.9.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> A transient bug for the write MSL element (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27022).</li>
-<dt>2015-02-08 6.9.0-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Remove uninitialized, unused "p++" from coders/png.c, MNG reader.</li>
- <li> Initialize "length" in coders/png.c, WriteJNGImage().</li>
- <li> Fix signed/unsigned mismatch in coders/png.c, MNG reader.</li>
-<dt>2015-02-08 6.9.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-5, SVN revision 17946.</li>
-<dt>2015-01-30 6.9.0-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> In coders/gif.c, quiet two warnings.</li>
-<dt>2015-01-24 6.9.0-5 Dirk Lemstra <dirk@lem.....org></dt>
- <li> Fixed iccColorProfile() in Magick++ (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=26910).</li>
- <li> Fixed infinite loop in HDR reader (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26929).</li>
-<dt>2015-01-23 6.9.0-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Check lengths of certain MNG chunks before reading them.</li>
- <li> In the PNG codec, check status wherever a function returns it.</li>
-<dt>2015-01-18 6.9.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove possible resource memory leak in a multi-threaded program (bug report and patch from David Chapman <d...@acm.org>.</li>
- <li> Small optimization to pixel cache.</li>
- <li> More image sanity checks.</li>
- <li> Support writing base64-encoded images (e.g<dt> convert logo: inline:jpeg:logo.txt).</dt>
- </li><li> Repair small TIFF leak when pinging (patch provided by Andrey Cherniy).</li>
-<dt>2015-01-16 6.9.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-4, SVN revision 17697.</li>
-<dt>2015-01-07 6.9.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Additional coder sanity checks (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26842, http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26682).</li>
-<dt>2015-01-05 6.9.0-4 Dirk Lemstra <dirk@lem.....org></dt>
- <li> Report Ghostscript version when -verbose is used and when an exception is raised.</li>
- <li> Fixed invalid path check in MagickCoreGenesis under Windows and disabled ProvideDllMain by default (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&p=118875).</li>
-<dt>2015-01-01 6.9.0-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-3, SVN revision 17537.</li>
-<dt>2015-01-01 6.9.0-3 Cristy <quetzlzacatenango@image...></dt>
- <li> ImageMagick builds when HDRI is enabled (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26803).</li>
-<dt>2014-12-31 6.9.0-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't read beyond the end of a tEXt keyword when checking for Raw profile.</li>
-<dt>2014-12-27 6.9.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-2, SVN revision 17468.</li>
-<dt>2014-12-14 6.9.0-1 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for reading EXR files to the Windows distribution.</li>
- <li> Fixed enabling alpha in 32-bit BMP files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26662).</li>
- <li> Added support for writing 16-bit TGA files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=26693).</li>
- <li> Improved performance of dds:cluster-fit when OpenMP is enabled.</li>
- <li> Added support for distributed pixel cache to the Windows distribution.</li>
-<dt>2014-12-04 6.9.0-1 Alexey Dolgavin <dolgavin.alexey@gmail...></dt>
- <li> Fix ImageMagick crashes while read EXIF from TIFF.</li>
-<dt>2014-11-20 6.9.0-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't handle a "previous" image in the PNG or JNG decoder.</li>
- <li> Don't override gamma with 1.0 when reading a grayscale PNG image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26576).</li>
- <li> Update progress monitor for every PNG row instead of every pass (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=26589).</li>
- <li> Reject input PNG with dimensions larger than specified with -limit width and -limit height.</li>
-<dt>2014-11-20 6.9.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix double free / invalid read when converting jpg to pdb (thanks to Hanno).</li>
- <li> Maximum XWD image size is 64Kx64K (thanks to Hanno).</li>
- <li> Maximum DPX number of elements is 8 (thanks to Hanno).</li>
- <li> Transient problem with SVG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26587).</li>
- <li> Numerous buffer overflow fixes (thanks to Gynvael Coldwind and Mateusz Jurczyk of the Google Security Team).</li>
- <li> Additional PNM sanity checks (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26682).</li>
- <li> The SetImageBias() bias value is no longer ignored (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25732).</li>
- <li> Area crop now returns the expected number of tiles (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26701).</li>
- <li> Respect TGA ColorMapIndex field (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26738).</li>
- <li> Clang does not support __alloc_size__, fix fabs() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26739).</li>
- <li> Support width and height resource limits.</li>
- <li> Don't read TIFF profiles when pinging (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=26670).</li>
-<dt>2014-11-16 6.9.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.9.0-0, SVN revision 17067.</li>
-<dt>2014-11-03 6.9.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Check for zero-sized rendered SVG image (bug report from Vladimir Davydov).</li>
-<dt>2014-11-01 6.8.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-10, SVN revision 16910.</li>
-<dt>2014-10-29 6.8.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> EXIF directory offsets must be greater than 0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26456).</li>
- <li> Accept morphology kernels from files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=26466).</li>
- <li> Don't optimize JPEG compression by default (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26482).</li>
-<dt>2014-10-26 6.8.9-10 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for reading jpeg compressed YCCK tiff files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24412).</li>
- <li> Fixed reading DICOM files with big endian transfer syntax (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26448).</li>
-<dt>2014-10-25 6.8.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-9, SVN revision 16819.</li>
-<dt>2014-10-03 6.8.9-9 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added sixel coder created by Hayaki Saito (@kefir_).</li>
- <li> Fixed buffer overflow in PCX and DCM coder (bug report from Hanno Böck).</li>
- <li> Added support for reading/writing the tIME chunk in the PNG coder.</li>
- <li> Added eps:fit-page option to the PS coder to set -dEPSFitPage.</li>
- <li> Improved reporting tiff:alpha and allowed setting tiff:alpha to unspecified.</li>
-<dt>2014-09-30 6.8.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Support xyY colorspace (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=26324).</li>
- <li> Reduce noise while preserving edges with the -kuwahara option.</li>
- <li> Off-by-one count when parsing an 8BIM profile.</li>
- <li> Locale.c won't build if uselocale found but strtod_l isn't (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26362).</li>
- <li> OpenCL no longer benchmarks are run on every initialization (patch submitted by Jan Steffens).</li>
- <li> Don't clone a 0x0 image (bug report from Hanno Böck).</li>
-<dt>2014-09-21 6.8.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-8, SVN revision 16502.</li>
-<dt>2014-09-16 6.8.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> JPEG library version >= 80 is thread safe (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=25495).</li>
-<dt>2014-08-31 6.8.9-8 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for some legacy dds formats (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=26184).</li>
-<dt>2014-08-16 6.8.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-7, SVN revision 16330.</li>
-<dt>2014-08-14 6.8.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix off by one buglet when extracting profiles 8BIM (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26095).</li>
-<dt>2014-07-31 6.8.9-7 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed bug when reading 1 bit PSD. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=26015).</li>
-<dt>2014-07-25 6.8.9-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Relocate initialization of "image_colors" in the PNG encoder, to avoid a possible use of uninitialized variable.</li>
-<dt>2014-07-25 6.8.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-6, SVN revision 16211.</li>
-<dt>2014-07-24 6.8.9-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Use IsOptionMember() instead of LocaleNCompare() in coders/png.c to parse the list of excluded and included PNG chunks.</li>
-<dt>2014-07-19 6.8.9-6 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed fill-rule in SVG clip path (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=25882).</li>
-<dt>2014-07-14 6.8.9-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Removed some dead code (testing image->matte) in PNG64 encoder.</li>
-<dt>2014-07-07 6.8.9-6 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for R5G6B5, RGB5A1 and RGBA4 dds files.</li>
-<dt>2014-07-01 6.8.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Write LAB pixels as percentages in the TXT image format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25830).</li>
- <li> Throw exception when image morphology differs when comparing (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25927).</li>
- <li> Remove mogrify backup file (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25683).</li>
- <li> Read WEBP images from STDIN (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25886).</li>
-<dt>2014-07-01 6.8.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-5, SVN revision 16123.</li>
-<dt>2014-06-28 6.8.9-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Do not let libpng16 check ICC/sRGB profiles in non-debug runs; we do it ourselves anyway. Avoids emitting "known incorrect profile" warnings. For strict profile checking and warning, use "-debug coder".</li>
-<dt>2014-06-27 6.8.9-5 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Disabled OpenCL acceleration when image has a 'mask' or 'clip-mask'.</li>
-<dt>2014-06-25 6.8.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Use -define profile:skip=icc, for example, to skip color profiles on read.</li>
-<dt>2014-06-23 6.8.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-4, SVN revision 16057.</li>
-<dt>2014-06-15 6.8.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Support RMS argument for -evaluate-sequence and -statistic options.</li>
- <li> Fix lseek define for a successful compile under 64-bit MinGW.</li>
- <li> Pipe image to display program no longer reports an exception (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23532).</li>
- <li> Check that profile is non-NULL in coders/tiff.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25770).</li>
-<dt>2014-06-08 6.8.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-3, SVN revision 15975.</li>
-<dt>2014-06-07 6.8.9-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Quiet warning about unused variable "skip_to_iend" in coders/png.c.</li>
-<dt>2014-06-07 6.8.9-3 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed creation of SVG from 8bim clip path. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=25594).</li>
-<dt>2014-06-02 6.8.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> The -version option returns 0 status (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25667).</li>
- <li> The inline coder can now read from standard input (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25641).</li>
- <li> Add '=' character to the sanitize whitelist.</li>
-<dt>2014-05-30 6.8.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-2, SVN revision 15932.</li>
-<dt>2014-05-18 6.8.9-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed some bugs in the PNG codec discovered by coverity analysis.</li>
-<dt>2014-05-14 6.8.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> The -fx equality operator returns a proper boolean result now (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25580).</li>
- <li> Permit spaces in the gradient color specification (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25614).</li>
- <li> Fix IdentifyImage() crash when image->magick member is null (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25615).</li>
- <li> The -format M and Y channels are no longer reversed (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25633).</li>
- <li> Remove Makefile race condition where two targets attempt to install magick-baseconfig.h (reference http://git.buildroot.net/buildroot/commit/?id=7395ee9d3b88e45798143e05a28d6d4b51409130)</li>
- <li> Fix memory leak in BlobToStringInfo() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25639).</li>
- <li> In certain cases, -adaptive-sharpen failed to sharpen (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23211</li>
-<dt>2014-05-12 6.8.9-2 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Bump major Magick++ library version.</li>
- <li> Added support for writing RLE compressed TGA files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12335).</li>
- <li> Improved performance of parsing the xmp profile (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25612).</li>
- <li> Fixed detecting transparency in PSD files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25634).</li>
-<dt>2014-05-09 6.8.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-1, SVN revision 15697.</li>
-<dt>2014-04-22 6.8.9-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bug with the PNG00 subformat when the original format was PNG32.</li>
- <li> The "-strip" option now only removes profiles and comments from PNG output. Previously the background, density, and other metadata were also discarded.</li>
-<dt>2014-04-22 6.8.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support new -hough-lines option.</li>
- <li> Support new -mean-shift option.</li>
- <li> identify -units without argument no longer faults (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25542).</li>
- <li> Require OpenJP2 version 2.1.0 (opj_stream_set_user_data() method signature change between 2.0.0 and 2.1.0).</li>
-<dt>2014-04-20 6.8.9-1 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added image moments, canny edge and hough line to Magick++.</li>
- <li> The 8bim profile will be updated when the icc/iptc/xmp profile is changed.</li>
- <li> Fix for stack overflow in DestroyXMLTree in Windows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25457).</li>
- <li> Added new coder for VIPS image format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=25445).</li>
- <li> Moved detection of type to a separate method in Magick++. The type() method no longer modifies the type of the image. Use determineType() instead.</li>
- <li> Improved error messages when a coder uses Ghostscript.</li>
-<dt>2014-04-11 6.8.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.9-0, SVN revision 15441.</li>
-<dt>2014-04-03 6.8.9-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bug with -strip failing to exclude PNG chunks (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25353).</li>
-<dt>2014-03-30 6.8.9-0 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added new coder to take a screen shot of a monitor in Windows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=23&t=25191).</li>
-<dt>2014-03-24 6.8.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't transform sRGB compatible colorspaces to sRGB, doing so inadvertently promotes colormapped images to DirectClass.</li>
- <li> Use temporary path rather then current working directory (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25313).</li>
- <li> Support -canny edge detection option.</li>
- <li> Use MAGICKCORE_LIBOPENJP2_DELEGATE instead of MAGICKCORE_JP2_DELEGATE (reference www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25376).</li>
-<dt>2014-03-28 6.8.8-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-9, SVN revision 15239.</li>
-<dt>2014-03-23 6.8.8-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Although they are internal methods, deprecate InitializeModuleList(), LoadMimeLists(), and RelinquishCommandQueue() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25263).</li>
-<dt>2014-03-20 6.8.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-9, SVN revision 15192.</li>
-<dt>2014-03-16 6.8.8-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Do not block threads in the png codec when PNG_SETJMP_SUPPORTED is not defined (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=23&t=25218).</li>
-<dt>2014-03-15 6.8.8-9 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added tiff:ignore-tags to ignore specific tags.</li>
- <li> Added orderedDither, selectiveBlur, separate, sepiaTone, sketch, smushImages, tint, uniqueColors and vignette to Magick++.</li>
-<dt>2014-03-11 6.8.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The -define jpeg:extent option overrides the image quality (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25200). </li>
-<dt>2014-03-09 6.8.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-8, SVN revision 15097.</li>
-<dt>2014-03-04 6.8.8-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Reset colorspace to Grayscale when reading a gray PNG image with gamma > 0.75 instead of when gamma==1.0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25136).</li>
-<dt>2014-02-22 6.8.8-8 Dirk Lemstra <dirk@snakeware...></dt>
- <li> The PSD reader creates a merged image if the image does not contain one.</li>
- <li> Added option pdf:fit-page to scale a pdf to the specified size (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=25044).</li>
- <li> The ResolutionInfo in the 8BIM profile will be updated when an image is written.</li>
- <li> Fixed UTF8 issues and added support for reading files with long path names for the Windows distribution.</li>
-<dt>2014-02-21 6.8.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Convert linear RGB to sRGB before writing the Targa image format.</li>
- <li> Make sure we use the secure C library functions when compiling ImageMagick on Windows.</li>
- <li> Tweak color reduction optimization to return a full color palette (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=25098).</li>
- <li> Patch configure.ac to support FlashPix under Debian (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25140).</li>
- <li> OpenCL support writes to $HOME/.config/ImageMagick, if the path does not exist, two calls to mkdir() are required (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25080).</li>
- <li> Replace MAGICKCORE_JP2_DELEGATE with MAGICKCORE_LIBOPENJP2_DELEGATE in magick/static.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25153).</li>
- <li> Eliminate thread race condition (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25168).</li>
-<dt>2014-02-18 6.8.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-7, SVN revision 14908.</li>
-<dt>2014-02-16 6.8.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Prevent possible buffer overflow in messaging system.</li>
-<dt>2014-02-16 6.8.8-7 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Improved detection of JPEG 2000 code streams and .j2c support (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24942).</li>
- <li> Added morphology to Magick++.</li>
-<dt>2014-02-13 6.8.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-6, SVN revision 14868.</li>
-<dt>2014-02-13 6.8.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> identify -define identify:locate=maximum locates the position of the maximum value (stopped working in 6.8.8-5).</li>
-<dt>2014-02-03 6.8.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-5, SVN revision 14838.</li>
-<dt>2014-01-31 6.8.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix case where an image moment might have a mass of 0 or a Hu moment might be 0.</li>
- <li> Enhance the TXT coder to read RGB percent values, e.g. 10.008% (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24934).</li>
-<dt>2014-01-30 6.8.8-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed new "-define png:swap-bytes" option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24818).</li>
-<dt>2014-01-29 6.8.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-4, SVN revision 14676.</li>
-<dt>2014-01-29 6.8.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove comma at end of enumerator list, magick/compare.h.</li>
-<dt>2014-01-28 6.8.8-4 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added transpose and transverse to Magick++. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24884).</li>
-<dt>2014-01-25 6.8.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-3, SVN revision 14651.</li>
-<dt>2014-01-18 6.8.8-3 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added ResourceLimits class and text direction/gravity to Magick++.</li>
- <li> Added support for defining dimensions with icon:auto-resize (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=24796).</li>
-<dt>2014-01-16 6.8.8-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added "-define png:swap-bytes" option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24818).</li>
- <li> Added image->duration to image.h, calculate duration in gif.c, and report duration in identify.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23276).</li>
-<dt>2014-01-15 6.8.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> The -type truecolor option for a grayscale image returns RGB JPEG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24814).</li>
- <li> Support JSON coder (.e.g. convert image.jpg image.json).</li>
-<dt>2014-01-10 6.8.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-2, SVN revision 14347.</li>
-<dt>2014-01-09 6.8.8-2 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added option 'icon:auto-resize' to automatically store multiple sizes in an ico image (requires 256x256 input image).</li>
- <li> Added text kerning/spacing to Magick++. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=23&t=24716).</li>
-<dt>2013-12-30 6.8.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> The -evaluate-sequence sum returns a proper alpha channel now (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24704).</li>
- <li> Support OpenJPEG for JPEG-2000 support.</li>
- <li> Support IsMagickWandInstantiated() method (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=6&t=24724).</li>
- <li> LevelColorsImageChannel() returns proper status (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24751).</li>
- <li> Generate a proper SVG clipping path (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24752).</li>
- <li> Return image moments with the identify -moments -verbose options.</li>
- <li> Perceptual hash metric for compare utility: -metric PHASH (algorithm by Fred Wienhaus).</li>
-<dt>2013-12-30 6.8.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-1, SVN revision 14087.</li>
-<dt>2013-12-27 6.8.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support points argument for draw MSL element.</li>
- <li> Fix misplaced closing parenthesis for strncmp() call in magick/xml-tree.c.</li>
- <li> The -page option now correctly sets the image page offset (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24701).</li>
-<dt>2013-12-26 6.8.8-1 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for reading zip compressed PSD files. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24676).</li>
-<dt>2013-12-25 6.8.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.8-0, SVN revision 14027.</li>
-<dt>2013-12-23 6.8.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Blurring with transparency no longer returns a halo (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24665).</li>
- <li> Eliminate ICC profile memory leak for JP2 coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24679).</li>
-<dt>2012-12-21 6.8.8-0 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Made librsvg the default svg library for the windows distribution.</li>
-<dt>2013-12-10 6.8.7-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-10, SVN revision 13965.</li>
-<dt>2013-12-10 6.8.7-10 SiuChi Chan <...></dt>
- <li> Fix crash when using -resize with GPU acceleration (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24603).</li>
-<dt>2013-12-08 6.8.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-9, SVN revision 13950.</li>
-<dt>2013-12-05 6.8.7-9 SiuChi Chan <...></dt>
- <li> Silence warning related to GPU memory issues.</li>
- <li> Check if OpenCL is disabled in checkOpenCLEnvironment() method.</li>
- <li> Turn off OpenCL path for Intel OpenCL to avoid crash when not enough memory.</li>
- <li> Fixed a bug for OpenCL convolution.</li>
- <li> Reduce compiler warnings.</li>
-<dt>2013-12-03 6.8.7-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bug in coders/png.c that caused -define png:color-type=0 to fail (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=24568).</li>
-<dt>2013-11-30 6.8.7-9 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed bug in automatic selection of OpenCL device (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24542).</li>
- <li> Fixed transparency for 32 bits BMP.</li>
-<dt>2013-11-28 6.8.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The -type bilevel option sometimes returned an all white image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24444).</li>
- <li> Check blue channel threshold for -solarize option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24473).</li>
-<dt>2013-11-27 6.8.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-8, SVN revision 13850.</li>
-<dt>2013-11-27 6.8.7-8 SiuChi Chan <...></dt>
- <li> Add an OpenCL-accelerated analog of AddNoiseImage().</li>
-<dt>2013-11-23 6.8.7-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-7, SVN revision 13827.</li>
-<dt>2013-11-23 6.8.7-7 SiuChi Chan <...></dt>
- <li> Simplified interface to initialize the OpenCL environment.</li>
- <li> Automatic OpenCL device selection algorithm.</li>
- <li> Support ModulateImage() acceleration.</li>
- <li> Reduce the memory requirement for accelerated blur and unsharp mask.</li>
-<dt>2013-11-16 6.8.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-6, SVN revision 13767.</li>
-<dt>2013-11-14 6.8.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix possible memory corruption when writing PSD images (bug report from Justin Grant).</li>
- <li> Constrain color reduction acceleration to positive integers (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=24459).</li>
- <li> fx:maxima.a now returns the alpha value rather than opacity (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24461).</li>
-<dt>2013-11-08 6.8.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-5, SVN revision 13682.</li>
-<dt>2013-11-03 6.8.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> The jpeg:extent option no longer returns double-free exception (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24366).</li>
- <li> Turn off arch-specific optimisations (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24353).</li>
- <li> The -type bilevel option no longer returns black image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24394).</li>
-<dt>2013-11-03 6.8.7-5 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for pangocairo to the windows distribution.</li>
- <li> Added /OpenCL option to configure.exe to enable OpenCL.</li>
-<dt>2013-10-31 6.8.7-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed cut-and-paste error in version.c that caused the "png" delegate to be listed twice by the "convert -version" command.</li>
-<dt>2013-10-30 6.8.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-4, SVN revision 13616.</li>
-<dt>2013-10-26 6.8.7-4 Siu Chi Chan <...@amd.com></dt>
- <li> Major improvements to the OpenCL infrastructure.</li>
- <li> New OpenCL accelerated algorithms (function image, blur, radial blur, unsharp mask, resize, contrast, equalize, despeckle).</li>
- <li> Added a new checkbox to enable OpenCL in the configure program.</li>
-<dt>2013-10-24 6.8.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Color reduction acceleration from Yoya (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24324).</li>
- <li> -intensity rec709luma -colorspace gray returns gamma 1.0/2.2 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24330).</li>
- <li> Handle 16-bit JPEG-comrpessed TIFF images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24331).</li>
- <li> An image -compose ModulusAdd negate-image returns the original (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24337).</li>
- <li> Support %U escape character for resolution units (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=24140).</li>
-<dt>2013-10-23 6.8.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-3, SVN revision 13557.</li>
-<dt>2013-10-23 6.8.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> The -roll option is now working when the +x coordinate is +0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24314).</li>
-<dt>2013-10-22 6.8.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-2, SVN revision 13534.</li>
-<dt>2013-10-20 6.8.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Define cmsUInt32Number if LCMS version is < 2000.</li>
- <li> Set xc:gray() intensity to Rec709Luma (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24303).</li>
-<dt>2013-10-20 6.8.7-2 Dirk Lemstra <dirk@snakeware...></dt>
- <li> GetImageDepth() no longer returns incorrect depth when HDRI enabled.</li>
-<dt>2013-10-19 6.8.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-1, SVN revision 13486.</li>
-<dt>2013-10-10 6.8.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the -complex option, perform complex mathematics on an image sequence.</li>
- <li> Sync pixel cache for -set colorspace cmyk option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24173).</li>
-<dt>2013-09-27 6.8.7-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed problem with PNG8 reduction in coders/png.c (special case where exactly 256 colors plus one transparent color are present).</li>
- <li> Set image->intensity = Rec709LuminancePixelIntensityMethod before setting the colorspace to Gray while reading a gray PNG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24205). This ensures that image->gamma will be set to 1.0 (linear).</li>
-<dt>2013-09-26 6.8.7-1 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed incorrect size of DICOM image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24135).</li>
- <li> Fixed rounding in YUV coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24148).</li>
- <li> Fixed colorspace issue when combining images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24173).</li>
- <li> Replaced libjpeg with libjpeg-turbo in the windows distribution.</li>
- <li> Added support for liquid rescale to the windows distribution.</li>
- <li> Set image type after syncing the pixel cache.</li>
-<dt>2013-09-25 6.8.7-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.7-0, SVN revision 13290.</li>
-<dt>2013-09-23 6.8.7-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed comments about the -quality value in PNG coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=24134).</li>
-<dt>2013-09-19 6.8.7-0 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed issue with colormap when reading Viff image.</li>
- <li> Added support for opening https files under windows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24121).</li>
- <li> Fixed incorrect format when reading EPT image from a blob (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24129).</li>
-<dt>2013-09-18 6.8.6-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-10, SVN revision 13240.</li>
-<dt>2013-09-07 6.8.6-10 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for writing DDS files.</li>
-<dt>2013-08-29 6.8.6-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Call SVG / MSL xmlCleanupParser() / xmlInitParser() once (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23991).</li>
- <li> Support LEGO Mindstorms EV3 Robot Graphics File format (contributed by bdwheele@ind.../</li>
- <li> Since glib-2.35.0 g_type_init() was removed (reference https://bugs.gentoo.org/show_bug.cgi?id=481042).</li>
- <li> New identify define to output the location of the minimum, maximum, or mean pixel of the image (e.g. identify -define identify:locate=maximum -define identify:limit=7 rose).</li>
- <li> Column columns / rows no longer inverted for RGF image format (patch from Brian Wheeler <bdwheele@india...>.</li>
- <li> 16bit PSD images might have a 65536 colormap (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24102).</li>
- <li> Ascii map is now declare as AsciiMap (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24106).</li>
- <li> Return label for identify -format "%l" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=24105).</li>
- <li> Add option to perform Fourier normalization in either the forward or inverse transform (e.g -define fourier:normalize=inverse). The default remains as it was in the forward transform (i.e. -define fourier:normalize=forward)</li>
-<dt>2013-08-26 6.8.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-9, SVN revision 13087.</li>
-<dt>2013-08-16 6.8.6-9 SiuChi Chan <...></dt>
- <li> Accelerate numerous image filters with OpenCL under AMD, Intel, and NVidia. Adapted from MulticoreWare OpenCL contribution.</li>
-<dt>2013-08-10 6.8.6-9 Dirk Lemstra <dirk@snakeware..></dt>
- <li> Added the following command line options to configure.exe: /x64, set 64 bit build /mtd, set project type to: multi threaded dll /sts, set project type to: single threaded static /mts, set project type to: multi threaded static /mtsd, set project type to: multi threaded static dll /noWizard, skip the wizard and generate the project/solution files</li>
- <li> Fixed infinite loop with jpeg:extent (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23314).</li>
- <li> Fixed performance issue when converting jpeg to png (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23922).</li>
-<dt>2013-08-10 6.8.6.9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added "-define bmp:format=bmp2|bmp3|bmp4" option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23875).</li>
-<dt>2013-08-07 6.8.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Free disk resource if cache resources are exhausted (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23877).</li>
- <li> Return proper EXIF:ISOSpeedRating property value for TIFF images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23913).</li>
- <li> Escape MIFF properties with null values (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23931).</li>
- <li> Allow negative pixel values in TXT image format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23923).</li>
- <li> The -fx option no longer crashes for certain expressions (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23932).</li>
- <li> Add support for the -compare option (e.g. convert image.png reference.png -metric RMSE -compare -format "%[distortion]" info:).</li>
- <li> The internal SVG renderer is now invariant for the "fill" and "opacity" keywords.</li>
-<dt>2013-08-06 6.8.6-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-8, SVN revision 12918.</li>
-<dt>2013-08-04 6.8.6-8 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added support for WebP to the Windows distribution (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23856).</li>
-<dt>2013-07-31 6.8.6-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Properly handle interlaced GIF images with less than 8 rows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23812).</li>
- <li> Ensure image colorspace is sRGB when writing WebP format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23841).</li>
- <li> Avoid deadlock with logging subsystem (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=23849).</li>
-<dt>2013-07-25 6.8.6-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-7, SVN revision 12752.</li>
-<dt>2013-07-24 6.8.6-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Missing case for HCLpColorspace (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23811).</li>
-<dt>2013-07-21 6.8.6.7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Do not write "jpeg:" properties in a PNG output file (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23794).</li>
-<dt>2013-07-17 6.8.6-7 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fix memory leak in CloneImageArtifacts and CloneImageProfiles.</li>
- <li> Minor fix for the clipMask property in Magick++.</li>
-<dt>2013-07-16 6.8.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-6, SVN revision 12718.</li>
-<dt>2013-07-16 6.8.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> JPEG ICC color profile requires null after ICC tag (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23756).</li>
- <li> Don't sync channels for the -unsharp option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23740).</li>
- <li> Magick++ version so bump (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23752).</li>
-<dt>2013-07-15 6.8.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-5, SVN revision 12684.</li>
-<dt>2013-07-12 6.8.6-5 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Fixed calculation of pixel area count limit flag ('@').</li>
- <li> Added option to enable OpenMP to configure.exe and improved creation of x64 project file</li>
-<dt>2013-07-10 6.8.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Compare exits with a non-zero exit code when no error (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23722).</li>
- <li> Correct calculation of quantization error (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=23734).</li>
- <li> Correct quantize tree walking mistake for RiemersmaDither (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=23735).</li>
-<dt>2013-07-10 6.8.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-4, SVN revision 12661.</li>
-<dt>2013-07-09 6.8.6-4 Dirk Lemstra <dirk@snakeware...></dt>
- <li> Added combineImages, evaluateImages, mergeImageLayers, optimizeImageLayers optimizePlusImageLayers and separateImages to STL.h (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=23699).</li>
- <li> Added support for the fill area flag ('^') and the pixel area count limit flag ('@') to the Geometry class of Magick++ (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=23704).</li>
- <li> Enabled automatic linking for static Magick++ in Visual Studio (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=23558).</li>
-<dt>2013-07-01 6.8.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Thumb property need Height, not height (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23661).</li>
- <li> White pixels previously were written as black for the CIP format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23677).</li>
- <li> Rec709Luma is sRGB compatible (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23693).</li>
- <li> Colorspace RGB is linear, gamma is 1.0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23708).</li>
-<dt>2013-07-01 6.8.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-3, SVN revision 12579.</li>
-<dt>2013-06-26 6.8.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve HCL to RGB roundtrip (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22384).</li>
- <li> Prefer external log configuration file to built-in (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23640).</li>
- <li> Do not log in the IsLinkedListEmpty() method to prevent overflow (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23640).</li>
- <li> Fix bug loading TGA image with 32-bit palette (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17889).</li>
- <li> Color profiles are no longer corrupted for the JPEG format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23651).</li>
- <li> Repair problem with -emboss / -equalize problem (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23643).</li>
-<dt>2013-06-24 6.8.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-2, SVN revision 12561.</li>
-<dt>2013-06-21 6.8.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory corruption in the MorphologyApply() method.</li>
-<dt>2013-06-20 6.8.6.2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Quiet two warnings about uninitialized variables in coders/png.c</li>
-<dt>2013-06-20 6.8.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-1, SVN revision 12509.</li>
-<dt>2013-06-16 6.8.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't decompand RGB for the -modulate option.</li>
- <li> Improve LCHab and LCHuv roundtrip to / from sRGB (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23596).</li>
-<dt>2013-06-16 6.8.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.6-0, SVN revision 12475.</li>
-<dt>2013-06-10 6.8.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Clone image->intensity in CloneImageProperties() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23569).</li>
- <li> Split test suite into smaller tests (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23577).</li>
- <li> Undercolor rectangle was off by one pixel (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23574).</li>
- <li> Don't msync() for a read-only memory-mapped mode (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23531).</li>
- <li> BlurChannelImage() no longer faults for certain CMYK images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23581).</li>
- <li> Reduce memory requirements for large BMP images.</li>
-<dt>2013-06-05 6.8.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-10, SVN revision 12419.</li>
-<dt>2013-06-02 6.8.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve caption formatting (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23522).</li>
-<dt>2013-06-01 6.8.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-9, SVN revision 12401.</li>
-<dt>2013-05-30 6.8.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Caption no longer clips long words (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23504).</li>
- <li> The lightness intensity is (min(R',G',B')+max(R',G',B'))/2.0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23517).</li>
-<dt>2013-05-25 6.8.5-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-8, SVN revision 12362.</li>
-<dt>2013-05-23 6.8.5-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Stopped a "-fsanitize-address" warning in the JNG coder.</li>
-<dt>2013-05-20 6.8.5-8 Cristy <quetzlzacatenango@image...></dt>
- <li> The -white-threshold option is symetrical with -black-threshold (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23441);</li>
- <li> Fix multi-line PNM comments (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23442).</li>
- <li> The -format option should not automatically append a newline since the user can specify a newline in the formatting expression.</li>
- <li> The -level option is no longer returning a darkened image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23479).</li>
- <li> Identify SVG image as "SVG" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27654).</li>
-<dt>2013-05-20 6.8.5-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-7, SVN revision 12310.</li>
-<dt>2013-05-14 6.8.5-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Recognize PNG iCCP chunks that contain the sRGB profile and replace them with the PNG sRGB chunk. Use "-define png:preserve-iCCP" to get the previous behavior, of simply copying the iCCP chunk.</li>
-<dt>2013-05-11 6.8.5-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Sometimes an sRGB image is masquerading as grayscale (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23370).</li>
- <li> Labels no longer overflow (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22964).</li>
- <li> If more then one exception, return the highest security exception.</li>
- <li> A grayscale image returns a color JPEG for -type TrueColor (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23421).</li>
- <li> Read PAM comment (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23442).</li>
-<dt>2013-05-10 6.8.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-6, SVN revision 12257.</li>
-<dt>2013-05-09 6.8.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> The stream utility no longer faults when exporting float pixels (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23394).</li>
-<dt>2013-05-08 6.8.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-5, SVN revision 12227.</li>
-<dt>2013-05-07 6.8.5-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
- <li> Change the sample JPEG quantization table xml to something that works really well with 2x2 Chroma subsampling around quality 75.</li>
-<dt>2013-05-06 6.8.5-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Eliminate whitespace from image properties that hold PNG chunk data.</li>
-<dt>2013-05-05 6.8.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> The -poly option treats the opacity channel as alpha (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23346).</li>
- <li> The -threshold 50% option returns a 50-50 black and white image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23354).</li>
- <li> Let user override the TIFF rows per strip (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=23307).</li>
- <li> Fix transient bug in the -separate option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23335).</li>
-<dt>2013-05-01 6.8.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-4, SVN revision 12089.</li>
-<dt>2013-05-01 6.8.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Add DeleteImageArtifact() for jpeg:extent artifact (thanks to Jimmy Xie @ Microsoft).</li>
- <li> Track morphology changes per thread to avoid a critical section.</li>
-<dt>2013-04-28 6.8.5-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-3, SVN revision 12025.</li>
-<dt>2013-04-29 6.8.5-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Add DeleteImageArtifact() for jpeg:extent artifact (thanks to Jimmy Xie @ Microsoft).</li>
- <li> Add support for JXR / WDP image format.</li>
-<dt>2013-04-28 6.8.5-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-2, SVN revision 12013.</li>
-<dt>2013-04-28 6.8.5-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Use GetImageOption() for webp options (e.g. webp:lossless).</li>
-<dt>2013-04-27 6.8.5-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-1, SVN revision 12000.</li>
-<dt>2013-04-26 6.8.5-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Recognize xc:gray50 is non-linear.</li>
- <li> Loop over read() until requested bytes are consumed (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=23268).</li>
- <li> Don't use gamma lookup map when HDRI is enabled.</li>
-<dt>2013-04-24 6.8.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.5-0, SVN revision 11979.</li>
-<dt>2013-04-16 6.8.5-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Handle benign errors as warnings in the PNG coder.</li>
-<dt>2013-04-16 6.8.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't modify channel values for -separate (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23193).</li>
- <li> The -adaptive-sharpen option is now sharpening properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23211).</li>
- <li> Sometimes an image says it's grayscale when it's not (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23217).</li>
- <li> Use malloc() to allocate X image data (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23221).</li>
- <li> If there are more components than quantization tables, the last table is replicated.</li>
- <li> Removed the ICC profile from the logo: image definition in coders/magick.c; libpng16 detected that it was a broken sRGB profile.</li>
- <li> Negatives raised to a non-integer power returns NaN's (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23234).</li>
-<dt>2013-04-15 6.8.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-10, SVN revision 11851.</li>
-<dt>2013-04-11 6.8.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Ensure -define jpeg:extent is restricted to at most 7 iterations (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23179).</li>
- <li> Move X11 font support from annotate.c source module to xwindow.c.</li>
-<dt>2013-04-10 6.8.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-9, SVN revision 11818.</li>
-<dt>2013-04-10 6.8.4-9 Bastien Roucaries <roucaries.basti...></dt>
- <li> Respect --program-suffix configure script option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23143).</li>
- <li> Update to the newest AX_CHECK_PTHREAD macro from autoconf-archive.</li>
-<dt>2013-04-10 6.8.4-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Save the calculated angle for "deskew" as the artifact "deskew:angle"</li>
-<dt>2013-04-08 6.8.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Pass JP2 format type to decoder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23038).</li>
- <li> Previously tinting a grayscale image returned dark results.</li>
- <li> The -page option only affects new images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23172).</li>
- <li> Revert 'Move binaries to lib subdirectory and link are created from binary package' patch. We're getting too many bug reports.</li>
-<dt>2013-04-07 6.8.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-8, SVN revision 11743.</li>
-<dt>2013-04-06 6.8.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Include intensity type in the MIFF metadata.</li>
-<dt>2013-04-06 6.8.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-7, SVN revision 11720.</li>
-<dt>2013-04-05 6.8.4-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix -sample sampling point to midpoints of sampling areas</li>
- <li> Add a "sample:offset=" define to allow users to adjust this sampling point position in terms of percentage (default = 50x50)</li>
-<dt>2013-04-02 6.8.4-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't write a PNG gAMA or cHRM chunk when writing the iCCP or sRGB chunk.</li>
-<dt>2013-04-02 6.8.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Return MagickWand for the library name for Wand.pc.</li>
- <li> The LCH colorspace makes the round-trip now.</li>
- <li> Revert the default upsampling algortithm for JPEG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23100).</li>
- <li> Prevent fault when temporary directory is not-writable (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23117).</li>
-<dt>2013-04-01 6.8.4-7 Bastien Roucaries <roucaries.basti...></dt>
- <li> Prepare X11 support as a plugin.</li>
- <li> Fix compilation under HPUX of perlmagick</li>
-<dt>2013-04-01 6.8.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-6, SVN revision 11640.</li>
-<dt>2013-04-01 6.8.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> The -clut option return a luma grayscale instead of the expected luminance.</li>
- <li> Add moduledir variable to MagickCore.pc to support the MagickFilter and MagickCore kits.</li>
- <li> Caption fits the sized area (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23085).</li>
-<dt>2013-03-31 6.8.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-5, SVN revision 11619.</li>
-<dt>2013-03-30 6.8.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix transient bug when writing grayscale MIFF images.</li>
- <li> Adding noise to a gray image returns a gray image as expected.</li>
- <li> Image interlace no longer overwritten by proper cloning for GIF format.</li>
- <li> Extract the clipping path from an image file with clip:myimage.</li>
-<dt>2013-03-29 6.8.4-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-4, SVN revision 11591.</li>
-<dt>2013-03-29 6.8.4-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Update unit test signatures for Q8.</li>
- <li> Resolve send() / recv() socket problems under MinGW.</li>
-<dt>2013-03-28 6.8.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-3, SVN revision 11581.</li>
-<dt>2013-03-28 6.8.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Revert patch to ContrastStretchImage() to match results from 6.8.3-3.</li>
-<dt>2013-03-27 6.8.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-2, SVN revision 11558.</li>
-<dt>2013-03-27 6.8.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Use MorphologyApply() rather than MorphologyImage() for -sharpen / -blur.</li>
-<dt>2013-03-27 6.8.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-1, SVN revision 11552.</li>
-<dt>2013-03-26 6.8.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Sync 'intensity' option with current image.</li>
- <li> Normalize sharpen kernel to match that of 6.8.3-3.</li>
-<dt>2013-03-26 6.8.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.4-0, SVN revision 11531.</li>
-<dt>2013-03-20 6.8.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not write zero-length TIFF tags (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22957).</li>
- <li> Math library should be private for *.pc.in configuration files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22986).</li>
- <li> Do not split words for caption (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=17123).</li>
- <li> Modify the configure script check for the webp delegate library (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=23025).</li>
- <li> The -blur, -guassian-blur, and -sharpen are now convenience methods for -morphology convolve.</li>
- <li> Fix infinite loop for 'display -window' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23028).</li>
- <li> Revert -auto-level patch to match the results of ImageMagick 6.8.3-4.</li>
- <li> Revert g_type_init() patch in svg.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=23035).</li>
-<dt>2013-03-18 6.8.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-10, SVN revision 11413.</li>
-<dt>2013-03-15 6.8.3-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added IM, libpng, and zlib version info to debug output.</li>
-<dt>2013-03-10 6.8.3-10 Bastien Roucaries <roucaries.basti...></dt>
- <li> Move PerlMagick arch independant part to 'default' folder.</li>
- <li> Move binaries to lib subdirectory and link are created from binary package.</li>
-<dt>2013-03-10 6.8.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> The TXT image format can now generate output compatible with the -sparse-color option (e.g. convert image.png sparse-color:image.txt).</li>
- <li> Support -intensity option: method to generate an intensity value from a pixel.</li>
- <li> Add -similarity-threshold option to the compare utility, the minimum distortion for a (sub)image match.</li>
- <li> Avoid seq-fault in AcquireQuantumInfo() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22973).</li>
- <li> Comment resource initializers in magick/resource.c.</li>
-<dt>2013-03-10 6.8.3-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-9, SVN revision 11294.</li>
-<dt>2013-03-09 6.8.3-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Add a space after the LastPage option in coders/ps.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22940).</li>
-<dt>2013-03-08 6.8.3-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-8, SVN revision 11283.</li>
-<dt>2013-03-05 6.8.3-8 Cristy <quetzlzacatenango@image...></dt>
- <li> GIF comments are no longer displaced by 1 for animated GIFs (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22901).</li>
- <li> A blur kernel with a zero sigma is unity.</li>
-<dt>2013-03-03 6.8.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-7, SVN revision 11249.</li>
-<dt>2013-03-02 6.8.3-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Do not replace gAMA found in input with 1/2.2</li>
- <li> Avoid a libpng16 warning about storing unknown chunks.</li>
-<dt>2013-03-01 6.8.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve performance when rendering a caption.</li>
- <li> The compare 'map' image should not be transparent.</li>
- <li> Use only major version for decorating include path.</li>
-<dt>2013-02-28 6.8.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-6, SVN revision 11210.</li>
-<dt>2013-02-25 6.8.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Support built-in 1x1 and 2x1 threshold maps (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22861).</li>
- <li> Check for webp version (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22867).</li>
-<dt>2013-02-25 6.8.3-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Relocated png_set_bKGD(), etc., after png_set_IHDR() because they might depend on members of info_ptr that are set by png_set_IHDR().</li>
-<dt>2013-02-25 6.8.3-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-5, SVN revision 11170.</li>
-<dt>2013-02-23 6.8.3-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Read the WebP extended file format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22809).</li>
- <li> Add arch annotation to include path to distinquish ImageMagick versions 6 & 7.</li>
-<dt>2013-02-22 6.8.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-4, SVN revision 11127.</li>
-<dt>2013-02-22 6.8.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Reduce default memory resource limit under Windows.</li>
-<dt>2013-02-19 6.8.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-3, SVN revision 11105.</li>
-<dt>2013-02-19 6.8.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Set WEBP lossless / lossy property properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22809).</li>
-<dt>2013-02-18 6.8.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-2, SVN revision 11087.</li>
-<dt>2013-02-17 6.8.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Semaphore is now unlocked when an X11 annotation exception is thrown.</li>
- <li> WEBP coder enhancement and memory leak patch (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22809).</li>
-<dt>2013-02-16 6.8.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-1, SVN revision 11060.</li>
-<dt>2013-02-16 6.8.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Disable FORTIFY_SOURCE to fix a bug in LVVM / OpenMP support.</li>
-<dt>2013-02-15 6.8.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.3-0, SVN revision 11045.</li>
-<dt>2013-02-14 6.8.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Webp requires alpha, not opacity (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22793).</li>
-<dt>2013-02-12 6.8.3-0 Bastien Roucaries <roucaries.basti...></dt>
- <li> Allow PerlMagick to be multi-quantum (e.g. Image::Magick::Q16).</li>
-<dt>2013-02-11 6.8.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-10, SVN revision 11004.</li>
-<dt>2013-02-11 6.8.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> The XPM regression tests passes now.</li>
-<dt>2013-02-09 6.8.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-9, SVN revision 10995.</li>
-<dt>2013-02-09 6.8.2-9 Bastien Roucaries <roucaries.basti...></dt>
- <li> Export versioning to automake in order to use it for library prefix.</li>
- <li> So bump was incomplete due to no changing map file.</li>
- <li> Change abi name by adding major version to lib name (will simplify next imagemagick major version release work) and reset release version to 1 (due to changing abi name).</li>
-<dt>2013-02-09 6.8.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The DOT coders now compiles with GraphViz 2.30 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22767).</li>
-<dt>2013-02-09 6.8.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-8, SVN revision 10986.</li>
-<dt>2013-02-09 6.8.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> MagickStatisticImage() method signature was corrected, SO bump required.</li>
-<dt>2013-02-08 6.8.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-7, SVN revision 10965.</li>
-<dt>2013-02-08 6.8.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Ensure MagickCore compiles with a C++ compiler.</li>
-<dt>2013-02-07 6.8.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-6, SVN revision 10961.</li>
-<dt>2013-02-07 6.8.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't destroy an image that's already destroyed (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22747).</li>
- <li> Montage is now invariant to the font when no label image label exists.</li>
-<dt>2013-02-06 6.8.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-5, SVN revision 10952.</li>
-<dt>2013-02-05 6.8.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> FITS now properly renders the 16 bit signed integer format.</li>
-<dt>2013-02-04 6.8.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-4, SVN revision 10909.</li>
-<dt>2013-02-02 6.8.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not subsample raw CMYK JPEG images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22731).</li>
-<dt>2013-02-02 6.8.2-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-3, SVN revision 10894.</li>
-<dt>2013-02-01 6.8.2-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Respect endian for FITS image format.</li>
- <li> Remove artifact when drawing a circle (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22724).</li>
-<dt>2013-02-01 6.8.2-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Deleted some code added to the PNG decoder in SVN revision 10825; it was failing to handle transparency in paletted images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22720).</li>
- <li> Compare alpha to "QuantumRange-OpaqueOpacity" not just "OpaqueOpacity" when detecting transparency in the PNG encoder.</li>
-<dt>2013-02-01 6.8.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-2, SVN revision 10883.</li>
-<dt>2013-01-30 6.8.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Properly initialize new throttle resource limit.</li>
-<dt>2013-01-29 6.8.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-1, SVN revision 10859.</li>
-<dt>2013-01-28 6.8.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix 'format not a string literal' problem (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22656).</li>
-<dt>2013-01-28 6.8.2-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.2-0, SVN revision 10831.</li>
-<dt>2013-01-21 6.8.2-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Impose a 32k limit on the number of text chunks that will be read.</li>
- <li> Implemented PNG00, PNG48 and PNG64 PNG subformats.</li>
- <li> Avoid reading back PNG pixel rows while reading a transparent PNG ( by using a local "alpha" value instead of GetPixelOpacity()).</li>
-<dt>2013-01-21 6.8.2-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Avoid a rare thread lock for timeout event (e.g. MAGICK_TIME_LIMIT=30).</li>
- <li> Support a distributed pixel cache.</li>
- <li> Fix numerical stability problem for convolution.</li>
- <li> Increase segment stack size for -draw option.</li>
-<dt>2013-01-18 6.8.1-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-10, SVN revision 10667.</li>
-<dt>2013-01-08 6.8.1-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Add the same noise value to each channel of a grayscale image (+noise).</li>
- <li> Fix recursive descent within XGetWindowImage() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22550).</li>
- <li> Multi-plane MatLab images now render properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22586).</li>
-<dt>2013-01-06 6.8.1-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed LBR01 (left-bit-replication) macro in coders/png.c; problem reported by the clang compiler.</li>
- <li> Chromaticity values were read in the wrong order in the cHRM chunk when it accompanied the sRGB chunk. Libpng applications built with libpng16 and later will detect this and issue a warning (PNG files previously written with the cHRM chunk are OK). Removed the troublesome redundant png_set_cHRM() and png_set_sRGB() calls.</li>
- <li> Look for libpng17 and libpng16 while configuring PNG support.</li>
-<dt>2013-01-06 6.8.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-9, SVN revision 10518.</li>
-<dt>2013-01-06 6.8.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Type correction in blob code.</li>
-<dt>2013-01-02 6.8.1-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-8, SVN revision 10481.</li>
-<dt>2013-01-02 6.8.1-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Check for a density of zero when rendering with Pango (reference http://www.imagemagick.org/discourse-server/viewforum.html?f=3).</li>
-<dt>2013-01-01 6.8.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-7, SVN revision 10468.</li>
-<dt>2013-01-01 6.8.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> magick-baseconfig.h is architecture dependant; make headers quantum depth neutral (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22509).</li>
-<dt>2013-01-01 6.8.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-6, SVN revision 10461.</li>
-<dt>2012-12-31 6.8.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Repair numerical stability issue with gradients (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22507).</li>
-<dt>2012-12-30 6.8.1-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-5, SVN revision 10428.</li>
-<dt>2012-12-29 6.8.1-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Correction to scientific notation for the -evaluate log option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22496).</li>
-<dt>2012-12-29 6.8.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-4, SVN revision 10420.</li>
-<dt>2012-12-28 6.8.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Support scientific notation for the -evaluate log option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22496).</li>
-<dt>2012-12-25 6.8.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-3, SVN revision 10394.</li>
-<dt>2012-12-25 6.8.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove pow() dependency from public header.</li>
-<dt>2012-12-24 6.8.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-2, SVN revision 10385.</li>
-<dt>2012-12-23 6.8.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Magickcore headers recently used pow() in the inline functions inside public headers. Thus in order to avoid library depends problem, put -lm in library depends (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22483).</li>
- <li> Negative exponentiation bug fix (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22484).</li>
-<dt>2012-12-23 6.8.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-1, SVN revision 10350.</li>
-<dt>2012-12-23 6.8.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> More large image performance tuning.</li>
-<dt>2012-12-20 6.8.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.1-0, SVN revision 10327.</li>
-<dt>2012-12-16 6.8.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Return non-zero exit status if two images differ for the compare utility.</li>
- <li> Large image performance tuning.</li>
-<dt>2012-12-15 6.8.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-10, SVN revision 10236.</li>
-<dt>2012-12-13 6.8.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve exception reporting when AcquireAuthenticCacheView() fails.</li>
-<dt>2012-12-13 6.8.0-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Minor tweeks and commenting of Virtual Pixel shortcuts in resampling filters.</li>
- <li> Added -define "shepards:power" to control the power setting (def=2) for Shepards Method in -distort and -sparse-color http://www.imagemagick.org/discourse-server/viewtopic.html?t=22416</li>
-<dt>2012-12-13 6.8.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-9, SVN revision 10182.</li>
-<dt>2012-12-10 6.8.0-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Prepended "Acquire" and "Relinquish" to debugging log messages in magick/resource.c that only showed the filename.</li>
- <li> Added temporary file-count diagnostics to tests/validate.c (this required exporting GetPathTemplate() from magick/resource.c</li>
- <li> Eliminate file leak when writing the JNG image format.</li>
-<dt>2012-12-09 6.8.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Further support for associating quantum depth with ABI (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22352).</li>
- <li> Check for negative square root when resampling (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22398).</li>
-<dt>2012-12-07 6.8.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-8, SVN revision 10118.</li>
-<dt>2012-11-28 6.8.0-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed problem with writing grayscale PNG, bug introduced in version 6.8.0-0 or 6.8.0-1 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22355).</li>
-<dt>2012-11-28 6.8.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Allow temporary-path policy to override temporary path environment variables (e.g. MAGICK_TMPDIR).</li>
- <li> Implement symbol versioning (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22352).</li>
- <li> ABI is incompatible if quantum depth change. Add abi indication to library name, thanks to Bastien Roucaries (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22352).</li>
- <li> The stream utility no longer returns a black image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22046).</li>
-<dt>2012-11-26 6.8.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-7, SVN revision 10029.</li>
-<dt>2012-11-25 6.8.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Width value is optional for label coder (e.g. -size x40 label:Magick).</li>
-<dt>2012-11-20 6.8.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-6, SVN revision 10024.</li>
-<dt>2012-11-21 6.8.0-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed an old bug in chromaticity decoding in coders/bmp.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22294).</li>
- <li> Fixed bug in coders/bmp.c that failed to read a paletted image properly (fix by J. Summers, reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22316).</li>
-<dt>2012-11-21 6.8.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed bug in coders/bmp.c that failed to read transparency properly (fix by J. Summers, reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22312).</li>
-<dt>2012-11-20 6.8.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-5, SVN revision 10001.</li>
-<dt>2012-11-15 6.8.0-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added % escape prefixes %[artifact:..] and %[option:..] Including glob search, EG: -print "__Options__\n%[option:*]" (backport from IMv7 changes)</li>
-<dt>2012-11-10 6.8.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Revert HCL saturation strategy patch, it improperly clips white to black.</li>
- <li> Default to -dEPSCrop for Ghostscript unless eps:use-crop=false (reference https://bugzilla.redhat.com/show_bug.cgi?id=832690#c2).</li>
- <li> Add support for -poly, build a polynomial from the image sequence and the corresponding terms (coefficients and degree pairs).</li>
- <li> Support the OLE Macintosh image format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=22257).</li>
-<dt>2012-11-08 6.8.0-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Implemented faster decoding of interlaced PNG images.</li>
-<dt>2012-11-03 6.8.0-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Skip PNG palette-building when it is not needed.</li>
- <li> Let libpng expand sub-8-bit pixels while reading a PNG file.</li>
-<dt>2012-11-01 6.8.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-4, SVN revision 9832.</li>
-<dt>2012-10-31 6.8.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> PFM images are grayscale, not sRGB (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22178).</li>
- <li> Keep YCbCR JPEG compressed TIFF images in the YCbCr colorspace (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22148).</li>
-<dt>2012-10-27 6.7.9-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't write sRGB chunk if image->gamma isn't close to (1/2.2), i.e., (0.45 <= gamma <= 0.46) (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22139).</li>
-<dt>2012-10-25 6.8.0-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-3, SVN revision 9783.</li>
-<dt>2012-10-21 6.8.0-3 Cristy <quetzlzacatenango@image...></dt>
- <li> TIFF positional information must be positive (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22106).</li>
- <li> Set the compression quality for the Webp image format.</li>
-<dt>2012-10-21 6.8.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-2, SVN revision 9738.</li>
-<dt>2012-10-20 6.8.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Wait for more bytes if the number of returned bytes is less than requested in ReadBlob().</li>
- <li> Prefer fullname property for font, if it exists, otherwise family + style.</li>
-<dt>2012-10-17 6.8.0-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added LanczosRadius filter, that blurs an EWA Lanczos to a integer support size. Equivalent to Lanczos in tensor resize case.</li>
-<dt>2012-10-16 6.8.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-1, SVN revision 9632.</li>
-<dt>2012-10-12 6.8.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix color management for the -solarize option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22059).</li>
- <li> Some colormap unit tests failed for a quantum depth of 32 (problem report from Glenn Randers-Pehrson).</li>
-<dt>2012-10-12 6.8.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.8.0-0, SVN revision 9594.</li>
-<dt>2012-10-07 6.8.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Check -fx expression early to prevent fault.</li>
- <li> Performance boost for iOS / Android requires a SO major version increment.</li>
- <li> Corrupt PNG image could cause a memory leak (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22024).</li>
-<dt>2012-10-06 6.7.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-10, SVN revision 9514.</li>
-<dt>2012-10-01 6.7.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> SVG specs says "1pt" equals "1.25px" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21967).</li>
- <li> Support TIFF proprietary tag 34118.</li>
- <li> The define option is no longer "lazy" interpretation (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=22007).</li>
-<dt>2012-10-01 6.7.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-9, SVN revision 9473.</li>
-<dt>2012-09-27 6.7.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory leak in JPEG decoder when reading a corrupt image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21948).</li>
- <li> Add exif:thumbnail namespace to distiguish orientation tag (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21938).</li>
- <li> Respect DPX data offsets (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21960).</li>
-<dt>2012-09-26 6.7.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-8, SVN revision 9437.</li>
-<dt>2012-09-24 6.7.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Off-by-one error in DrawPolygonPrimitive().</li>
- <li> Fix memory leak in WebP decoder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21943).</li>
- <li> Certain caption phrases were cut off (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21550).</li>
-<dt>2012-09-22 6.7.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-7, SVN revision 9410.</li>
-<dt>2012-09-20 6.7.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> jpeg:sampling-factor might be an image property or an option (reference<dt>http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21884).</dt>
- </li><li><dt>2012-09-15 6.7.9-6 Cristy <quetzlzacatenango@image...></dt>
- </li><li> New version 6.7.9-6, SVN revision 9375.</li>
-<dt>2012-09-14 6.7.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't compand the YCC colorspace, its already companded.</li>
-<dt>2012-09-12 6.7.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-5, SVN revision 9358.</li>
-<dt>2012-09-12 6.7.9-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
- <li> Merge static inline Sigmoidal functions from IM7 to IM6.</li>
-<dt>2012-09-12 6.7.8-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> All untapered windowing filters Welch and Cosine changed to use a 3 lobe support (like Lanczos). These were not part of the original 'zoom' program.</li>
-<dt>2012-09-11 6.7.9-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
- <li> sigmoidal-contrast: prevent out of range argument.</li>
-<dt>2012-09-09 6.7.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> The number of default OpenMP threads is 1 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=23&t=21838).</li>
- <li> Only first image of raw grayscale image was set to GRAY (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21428).</li>
- <li> Change sigmoidal-contrast define to inline method to conform with ANSI-C requirements.</li>
-<dt>2012-09-10 6.7.9-5 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
- <li> enhance.c improvements:</li>
- <li> Add tanh/atanh clone of legacy sigmoidal map (faster & more accurate);</li>
- <li> Add final ClampToQuantum in sigmoidal colormap loop;</li>
- <li> Remove OpenMP for threads that do not loop over rows;</li>
- <li> Immediate no-op exit from sigmoidal-contrast if contrast<MagickEpsilon.</li>
-<dt>2012-09-08 6.7.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-4, SVN revision 9282.</li>
-<dt>2012-09-05 6.7.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Identify image files with embedded '%d' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21798).</li>
- <li> Don't include TIFF header for compress.c source module http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21800).</li>
-<dt>2012-09-01 6.7.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-3, SVN revision 9202.</li>
-<dt>2012-08-28 6.7.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -channel sync option for -equalize (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21746).</li>
- <li> Don't remove color profile when setting the image colorspace (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21747).</li>
- <li> Recognize ICO format in URL (e.g. http://www.google.com/favicon.ico).</li>
- <li> Don't define HAVE_BOOLEAN for JPEG under MinGW (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=14071).</li>
-<dt>2012-08-26 6.7.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-2, SVN revision 9120.</li>
-<dt>2012-08-25 6.7.9-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bug in Q32 builds that erroneously read grayscale 16-bit PNGs as PseudoColor.</li>
-<dt>2012-08-24 6.7.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -channel option for -solarize (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21738).</li>
-<dt>2012-08-23 6.7.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-1, SVN revision 9095.</li>
-<dt>2012-08-22 6.7.9-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The gAMA chunk with gamma==1.0 was ignored while deciding whether to set the image colorspace to GRAY when reading grayscale PNG images.</li>
-<dt>2012-08-16 6.7.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Adjust scaling for Luv colorspace conversion (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21664).</li>
- <li> Copy alpha channel of the -median option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21694).</li>
- <li> Don't add matte channel for -coalesce if input images don't have one.</li>
- <li> Prevent memory leak in ImageToBlob() if image write fails.</li>
- <li> In rare cases, label would not auto-size properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21716).</li>
- <li> Identify command now reports the image colorspace for non-verbose results.</li>
- <li> Account for stroke width when rendering a caption (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=21721).</li>
- <li> Don't colorize alpha channel if it is not active (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21547</li>
-<dt>2012-08-15 6.7.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.9-0, SVN revision 8970.</li>
-<dt>2012-08-14 6.7.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> RGB -> HCL, return correct hue when g < b < r (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21646).</li>
- <li> Prefer inkscape for best SVG compliance.</li>
- <li> HCL -> RGB conversion enhancement (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21663).</li>
- <li> Utilize inkscape if it is in your execution path otherwise RSVG. If neither is available, revert to the internal SVG renderer.</li>
- <li> Initialize image->x_resolution and y_resolution to 0 in image.c (previously they were initialized to DefaultResolution, which is 72.0).</li>
-<dt>2012-08-12 6.7.8-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-10, SVN revision 8915.</li>
-<dt>2012-08-10 6.7.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Respect the image mask for option -selective-blur (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21631).</li>
- <li> Fix multiple issues with BMPv5 colorimetry (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21640).</li>
-<dt>2012-08-10 6.7.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-9, SVN revision 8902.</li>
-<dt>2012-08-07 6.7.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Selective blur stopped working after version 6.7.4-10 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21604).</li>
- <li> Color reduction now handles transparent pixel properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18463).</li>
- <li> ClipImagePath() now returns a valid SVG XML for Windows x64 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21617).</li>
-<dt>2012-08-05 6.7.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-8, SVN revision 8845.</li>
-<dt>2012-08-03 6.7.8-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added 2d named convolution kernel Binomial (for Fred Wienhaus)</li>
-<dt>2012-08-01 6.7.8-8 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
- <li> Clean up sigmoidal-contrast.</li>
-<dt>2012-07-31 6.7.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Use ConcatenateString() for multi-block GIF comments.</li>
- <li> Caption no longer chops off text (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21558).</li>
- <li> Support LUV colorspace.</li>
- <li> Support HCL colorspace.</li>
- <li> Don't transform the composite image colorspace, set it instead.</li>
- <li> Interpret -border 5% as 5% of width and 5% of height (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21537).</li>
- <li> Don't normalize zero-sum kernels (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21584).</li>
- <li> Transform grayscale to linear RGB if fill color is non-gray (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21586).</li>
-<dt>2012-07-30 6.7.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-7, SVN revision 8766.</li>
-<dt>2012-07-28 6.7.8-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Update certain typecasts for libpng < and >= 1.4.0 to allow memory allocation > 4GB and prevent a DOS.</li>
-<dt>2012-07-28 6.7.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Set DICOM grayscale images to the gray colorspace.</li>
- <li> Missing grestore from ps3.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20445).</li>
- <li> Use GetMagickResourceLimit(ThreadResource) to set the # threads (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21543).</li>
-<dt>2012-07-22 6.7.8-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Only report sRGB, iCCP, gAMA, cHRM chunks in "identify" output when these chunks were actually present in input, and not when they were inserted by the PNG decoder.</li>
-<dt>2012-07-22 6.7.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-6, SVN revision 8720.</li>
-<dt>2012-07-21 6.7.8-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Make sure "intent" is initialized in the PNG decoder.</li>
-<dt>2012-07-21 6.7.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-5, SVN revision 8717.</li>
-<dt>2012-07-20 6.7.8-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Corrected an error in the logic introduced in 6.7.8-3 to always write a color PNG when image->colorspace is sRGB.</li>
-<dt>2012-07-19 6.7.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Inverse YUV colorspace now produces pure red as expected.</li>
- <li> Support halted streams: cat image.pnm | convert 'pnm:fd:0[0]' 'pnm:fd:0[0]' x:.</li>
-<dt>2012-07-18 6.7.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-4, SVN revision 8697.</li>
-<dt>2012-07-17 6.7.8-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Write ICON subimage as PNG32, only when its dimensions are 256x256 and image->compression is UndefinedCompression or ZipCompression.</li>
-<dt>2012-07-16 6.7.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> sRGB color gradients should be in a non-linear colorspace.</li>
- <li> Fix -fx to interpret scientific notation properly.</li>
- <li> The draw epsilon was too sensitive.</li>
-<dt>2012-07-15 6.7.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-3, SVN revision 8675.</li>
-<dt>2012-07-14 6.7.8-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Always write a color PNG when image->colorspace is sRGB.</li>
-<dt>2012-07-08 6.7.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Attenuate random noise (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21387).</li>
- <li> Return linear grayscale for gradient:white-black.</li>
- <li> Promote linear grayscale to linear RGB when compositing.</li>
- <li> gradient:white-black is sRGB whereas gradient:'icc-color(rgb,255,255,255)- icc-color(rgb,0,0,0)' is linear RGB whereas gradient:'gray(255)-gray(0)' is linear grayscale.</li>
- <li> Revert sigmoidal contrast define (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=22&t=21415).</li>
-<dt>2012-07-08 6.7.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-2, SVN revision 8621.</li>
-<dt>2012-07-02 6.7.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Set the colorspace to linear gray when reading intensity values (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21362).</li>
- <li> Don't overrun pixel buffer on inverse fourier for odd image widths.</li>
- <li> Change LAB encoding to permit blurring, resize, etc. (signed A and B channel values now stored using a 50% bias)</li>
- Additional.. This removes a non-linear discontinuity from stored LAB space values. As a result you can now Blur, Compose, Resize and Distort in LAB colorspace, without problems that previously existed.
-<dt>2012-07-04 6.7.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-1, SVN revision 8595.</li>
-<dt>2012-07-02 6.7.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> A single argument -stereo option now works as documented (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21348).</li>
- <li> The -separate option returns channels as linear grayscale.</li>
- <li> Remove the sRGB color profile when converting to grayscale (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21355).</li>
-<dt>2012-06-29 6.7.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.8-0, SVN revision 8554.</li>
-<dt>2012-06-28 6.8.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Increase epsilon value, smallest difference between two points (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=15870).</li>
-<dt>2012-06-28 6.7.7-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-10, SVN revision 8534.</li>
-<dt>2012-06-26 6.7.7-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't attempt to use Z_RLE compression strategy with old zlib (prior to zlib-1.2.0) that does not support it.</li>
- <li> Increase PLTE chunk length to accommodate background color in indexed PNG (reference www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=21288).</li>
- <li> Added png:PLTE.number_colors to verbose output.</li>
-<dt>2012-06-25 6.7.7-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Permit linear RGB for PNM and TIFF image formats.</li>
- <li> Fix conflicting types for 'GenerateDifferentialNoise' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21286).</li>
- <li> Fix cast to pointer from integer of different size (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21286).</li>
- <li> Fix broken MSL profile tag (reference http://www.imagemagick.org/discourse-server/viewforum.html?f=9).</li>
- <li> Better recognition of a CMYK PDF.</li>
-<dt>2012-06-24 6.7.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-9, SVN revision 8460.</li>
-<dt>2012-06-23 6.7.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Some options were incorrectly promoting linear gray to sRGB.</li>
-<dt>2012-06-22 6.7.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-8, SVN revision 8432.</li>
-<dt>2012-06-15 6.7.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Support the -features option in convert / mogrify.</li>
- <li> Add support for the %[type] property.</li>
-<dt>2012-06-15 6.7.7-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Geometry arguments accept multiple sign character for offsets EG: "-10-10", "-+10-+10", or "+-10+-10" generate negative offsets while "+10+10", "++10++10", or "--10--10" generate positive offsets, that is, you can not only optionally have a sign in offset variable substitutions, but can negate that substitution if you so desire.</li>
-<dt>2012-06-12 6.7.7-8 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
- <li> Refactor Catmull-Rom and Spline "interpolation" using state-of-the-art unpublished formulas.</li>
- <li> Fix incorrect transparency handling of "interpolative" cubic B-spline smoothing.</li>
-<dt>2012-06-09 6.7.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Initialize alpha channel when floodfill fill color is not opaque.</li>
- <li> XYZ and Lab colorspace conversion tweaked (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21161).</li>
-<dt>2012-06-08 6.7.7-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-7, SVN revision 8219.</li>
-<dt>2012-06-06 6.7.7-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Disabled the new libpng-1.5.10 test for invalid palette index when reading a PNG or MNG (for speed), or when writing a MNG (because a zero-length PLTE is valid in a MNG when the global PLTE is used).</li>
- <li> Display the PNG colortype as a string in "identify -verbose" output.</li>
-<dt>2012-06-06 6.7.7-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Small refactor of Average Interpolators (save some multiplies)</li>
- <li> Added 'Spline' as a filter type as an alias to 'Cubic'. This brings both Catrom and Spline -filter and -interpolate methods in line. Cubic should only be used when defining a general cubic using expert settings or when listed in "filter:verbose" debugging output.</li>
-<dt>2012-06-05 6.7.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-6, SVN revision 8164.</li>
-<dt>2012-06-05 6.7.7-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Renamed 'Bicubic' interpolation the more precise definition 'Catrom' Old name kept (but hidden) for backward compatibility in bit CLI and API interfaces.</li>
-<dt>2012-06-01 6.7.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> The -set colorspace option sets the colorspace, it does not transform it.</li>
- <li> Assume grayscale images in the GIF format are linear.</li>
- <li> Add Nicolas Robidoux's bicubic interpolation method (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21118). This replaces the old 'bicubic' which was very extreme 'cardinal' cubic.</li>
- <li> Add DuPont & XFIG copyright to NOTICE.</li>
- <li> sRGB.icc has an unfriendly license, remove it.</li>
- <li> MinGW does not define KEY_WOW64_32KEY (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=21155).</li>
- <li> -evaluate log properly handles negative pixel values.</li>
- <li> The display program displays the ImageMagick logo on EOF.</li>
-<dt>2012-05-31 6.7.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-5, SVN revision 8099.</li>
-<dt>2012-05-31 6.7.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Set terminal character for GIF comment.</li>
-<dt>2012-05-30 6.7.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-4, SVN revision 8096.</li>
-<dt>2012-05-30 6.7.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> 'convert 1-bit.tif -rotate 90 ...' returns a 1-bit TIFF image as expected.</li>
-<dt>2012-05-29 6.7.7-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Ignore APNG chunks even when libpng is built with the "APNG patch".</li>
-<dt>2012-05-29 6.7.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-3, SVN revision 8089.</li>
-<dt>2012-05-28 6.7.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix bug with stroke-dasharray (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21090).</li>
- <li> In rare cases, caption would not word-wrap properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21106).</li>
- <li> Don't set alpha pixels in SetImageVirtualPixelMethod() unless image area is well defined (i.e. != 0) (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=21110).</li>
-<dt>2012-05-27 6.7.7-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Trialing the addition of new interpolation methods Average16 average of 16 pixels around sampling point Average9 9 pixels around nearest pixel Average4 Average of 4 pixels around sampling point Background Background color (for resampling error checking) Blend Blend of closest 1, 2 or 4 pixel neighbors NOTE: 'Average' is now equivalent to 'Average4', previous to this version it was equivalent to 'Average16'. The 'Background' method is for showing 'resample errors' be it accidental, or on purpose. See IM Examples, Cylindrical Filters.</li>
- <li> added -interpolative-resize added around this version</li>
-<dt>2012-05-26 6.7.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-2, SVN revision 8066.</li>
-<dt>2012-05-26 6.7.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> MagickDelay() is in microseconds, not milliseconds.</li>
-<dt>2012-05-25 6.7.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-1, SVN revision 8059.</li>
-<dt>2012-05-20 6.7.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> In rare cases, caption would not word-wrap properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21044).</li>
- <li> Set the JPEG image colorspace after the columns / rows are set (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21059).</li>
- <li> Potential gray images are in either the gray or RGB colorspaces.</li>
- <li> Restore MagickSetImageEndian() method (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=20425&p=81525).</li>
- <li> Respect resolution when rendering SVG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21076).</li>
-<dt>2012-05-20 6.7.7-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Delegates now 'spawn' faster (replaced 2 second sleep!) (for "show:")</li>
-<dt>2012-05-17 6.7.7-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.7-0, SVN revision 7980.</li>
-<dt>2012-05-17 6.7.7-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Group4-compressed TIFF / PDF image formats stopped working (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=21039).</li>
- <li> Auto convert images in the grayscale colorspace to sRGB (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=21031).</li>
-<dt>2012-05-16 6.7.6-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-10, SVN revision 7952.</li>
-<dt>2012-05-14 6.7.6-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Reset color info in grayscale PNG images to gamma=1.0, undefined rendering_intent and chromaticity only when reading images that don't have a gAMA, sRGB, or cHRM chunk.</li>
-<dt>2012-05-14 6.7.6-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added a low level "Cosine" Windowing Filter -- Request by Nicholas Robidox</li>
- <li> Fixed Kaiser Window Filter (was producing all zeros!)</li>
- <li> Kaiser Window Function now uses the working value "filter:kaiser-beta" (formerly "filter:alpha" in previous versions)</li>
- <li> Setting the expert option "filter:kaiser-alpha" will override this, (after being multiplied by PI).</li>
- <li> Added resampling 'weight' sanity check in EWA resampling.</li>
- <li> Set default for histogram:unique-colors to be 'true' when undefined Returning it to previous behaviour.</li>
- <li> Refactor of InterpretImageProperties() (percent escape substitutions)</li>
- <li> Add "gamma" as a -set and % escape to access image gamma meta-data</li>
-<dt>2012-05-05 6.7.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-9, SVN revision 7812.</li>
-<dt>2012-05-05 6.7.6-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Allow braced single letter escapes, EG "%[x]" as equivalent to "%x"</li>
-<dt>2012-05-04 6.7.6-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't write an invalid PNG sRGB chunk when rendering intent is undefined.</li>
-<dt>2012-05-01 6.7.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> EXR images are in the linear RGB colorspace with a gamma of 1.0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=20895).</li>
- <li> Correct annotation offset for right-to-left labels (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20884).</li>
- <li> The -level 100x0% now produces the equivalent of -negate (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20889).</li>
- <li> Virtual pixel transparent no longer cause fatal exception (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=20903).</li>
- <li> Promote gray image to sRGB when color is injected.</li>
-<dt>2012-04-29 6.7.6-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-8, SVN revision 7705.</li>
-<dt>2012-04-25 6.7.6-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Gaussian Filter Fixed. For some strange reason it was half the width it should be with an effective sigma of 0.25 (not 0.5). This was the real reason "variable blur" was not blurring enough.</li>
-<dt>2012-04-24 6.7.6-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Colorspace round-trip unit tests now work for Q32.</li>
-<dt>2012-04-23 6.7.6-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added the RobidouxSharp filter (originally defined Dec 2011)</li>
- <li> Fixed Variable Blur - bad blur area calculation Also Gaussian is sampling properly. Substitute the faster Cubic for now.</li>
- <li> Convert no longer will do an implicit write to a single space image.</li>
-<dt>2012-04-21 6.7.6-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-7, SVN revision 7587.</li>
-<dt>2012-04-21 6.7.6-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Error when doing an implicit (final) write to a single space filename. This is typically a failed line continuation and is very common. Using an explicit "-write" will let you do this.</li>
-<dt>2012-04-20 6.7.6-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Allow +-X+-Y as geometry arguments.</li>
-<dt>2012-04-17 6.7.6-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Distinquish grayscale as sRGB not linear RGB.</li>
-<dt>2012-04-16 6.7.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-6, SVN revision 7536.</li>
-<dt>2012-04-11 6.7.6-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Always unlock the semaphore before returning from the png codec, either by a "return" or png_error(); changed all Magick*Exception() calls after setjmp() to png_error() to ensure proper cleanup (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16883).</li>
-<dt>2012-04-10 6.7.6-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed log known alpha*kernel normalization bug in morphology convolve.</li>
- Convolve kernel weights have been separated from alpha blend handling. Un-normalized kernels applied to images with active alpha will no longer be auto-normalized due to the effect of alpha blending. The bug causes images using the default channel setting and having an alpha channel to automatically 'normalize' the results of a convolve during the handling of alpha blending. This probably would cause severe effects when a zero-summing kernel is being used on an image containing an active (though likely fully-opaque) alpha channel, as division by near zero weights would cause extreme color values in results. This bug is not normally seen as convolution, which is normally applied only to fully-opaque images. And using a zero-summing kernel on an image with alpha also results in a transparent image! This is why it was not fixed up until now.
-<dt>2012-04-08 6.7.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Pixel allocation for Pango is stride*rows not stride*columns.</li>
- <li> Set the image resolution for Postscript files with an embedded Photoshop profile.</li>
- <li> Ensure proper round trips to / from sRGB (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20751).</li>
-<dt>2012-04-07 6.7.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-5, SVN revision 7483.</li>
-<dt>2012-04-06 6.7.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Avoid fault in SetCacheAlphaChannel() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20681).</li>
- <li> Don't assume EXIF orientation tag is 2 bytes.</li>
-<dt>2012-04-04 6.7.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-4, SVN revision 7356.</li>
-<dt>2012-04-01 6.7.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Properly set the XCF alpha channel values (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20642).</li>
- <li> Support 'orientation' property (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=20650).</li>
- <li> The default RGB colorspace transform is now linear (reference http://www.imagemagick.org/discourse-server/viewtopic.html?p=82839#p82839).</li>
- <li> Prevent EXIF integer overflow (CVE-2012-1610).</li>
-<dt>2012-03-30 6.7.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-3, SVN revision 7290.</li>
-<dt>2012-03-29 6.7.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't copy invalid memory when reading TIFF EXIF IFD (CERT-FI case 634116, CVE-2012-1798).</li>
- <li> Bail if we receive excessive JPEG warnings (CERT-FI case 634117, CVE-2012-0260).</li>
- <li> Properly initialize EXIF buffers to prevent JPEG EXIF tag crash (CERT-FI case 634118, CVE-2012-0259).</li>
-<dt>2012-03-28 6.7.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-2, SVN revision 7245.</li>
-<dt>2012-03-26 6.7.6-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added "Nearest" as a synonym for "Nearest-Neighbor" interpolate setting</li>
-<dt>2012-03-21 6.7.6-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> coders/png.c: stored "file_gamma" for later use by identify.</li>
-<dt>2012-03-19 6.7.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add full support for Pango markup.</li>
- <li> Pango namespace is 'pango:', not 'caption:'.</li>
- <li> Correct for EXR images with broken display windows.</li>
-<dt>2012-03-18 6.7.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-1, SVN revision 7145.</li>
-<dt>2012-03-16 6.7.6-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Reduce the scope of quantum_info in the PNG decoder to avoid a possible memory leak (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20522).</li>
-<dt>2012-03-13 6.7.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Use uint32 pointer for ReadStripMethod in coders/tiff.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20526).</li>
- <li> Ghostscript 32/64 bit detection patch (contributed by axeld@pinc-...).</li>
- <li> Honor center gravity for caption: with Pango support (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20517).</li>
- <li> Add support for pango: coder to render captions with Pango.</li>
-<dt>2012-03-10 6.7.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.6-0, SVN revision 7090.</li>
-<dt>2012-03-06 6.7.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Importing from the X11 root windows no longer leaks memory (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20470).</li>
- <li> Check to see if delegate file exists before copying.</li>
-<dt>2012-03-05 6.7.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-10, SVN revision 7056.</li>
-<dt>2012-03-05 6.7.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix too many arguments to AnnotateImage() (copy/paste bug).</li>
-<dt>2012-03-02 6.7.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-9, SVN revision 7046.</li>
-<dt>2012-02-29 6.7.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Caption no longer includes the prefix "caption:" in the rendered text.</li>
- <li> Auto scale pointsize for -size 100x100 caption:</li>
-<dt>2012-03-02 6.7.5-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-8, SVN revision 7027.</li>
-<dt>2012-03-02 6.7.5-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> non-verbose identify now reports DirectClass for transparent PNG images to agree with the report by identify -verbose. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20448 and http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=15482).</li>
-<dt>2012-02-29 6.7.5-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Support infinite caption lengths.</li>
- <li> Permit custom JPEG quantization tables (e.g. -define jpeg:q-table=quantization-table.xml).</li>
- <li> Missing grestore from ps2.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20445).</li>
-<dt>2012-02-29 6.7.5-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added Image list options (like "-delete" and "-swap") to "montage".</li>
-<dt>2012-02-25 6.7.5-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-7, SVN revision 6965.</li>
-<dt>2012-02-23 6.7.5-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the EMFPlus delegate program.</li>
-<dt>2012-02-22 6.7.5-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Re-added the Iterative Distance function in morphology (as opposed to the faster more direct 2-pass Distance Function that replaced it) so it can be used in the special situation of Constrained Distance Morphology. http://www.imagemagick.org/discourse-server/viewtopic.html??f=2&t=18032</li>
-<dt>2012-02-13 6.7.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-6, SVN revision 6851.</li>
-<dt>2012-02-13 6.7.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Only set PDF & PS page size when explicitly requested (e.g. -page).</li>
-<dt>2012-02-12 6.7.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-5, SVN revision 6840.</li>
-<dt>2012-02-12 6.7.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Only use the canvas size of the very first frame of a GIF image sequence.</li>
-<dt>2012-02-11 6.7.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-4, SVN revision 6824.</li>
-<dt>2012-02-08 6.7.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Set image alpha channel for -virtual-pixel background and transparent.</li>
- <li> Get tiff:fill-order as an image artifact, not an image option.</li>
-<dt>2012-02-06 6.7.5-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-3, SVN revision 6732.</li>
-<dt>2012-02-06 6.7.5-3 Cristy <quetzlzacatenango@image...></dt>
- <li> TIFF no longer writes the incorrect fill order.</li>
-<dt>2012-02-05 6.7.5-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-2, SVN revision 6718.</li>
-<dt>2012-02-03 6.7.5-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add SyncImagePixelCache() to ensure cache morphology is consistent.</li>
- <li> Patch so two -colorspace options return correct results for round-trip.</li>
-<dt>2012-02-02 6.7.5-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-1, SVN revision 6684.</li>
-<dt>2012-01-30 6.7.5-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support the -alpha remove option (use it to remove transparency from PDF, convert -density 200 apple.pdf -alpha remove x:).</li>
- <li> Use union instead of casting gzFile and BZFILE.</li>
- <li> Don't treat PSD user channel as alpha (patch from Dominic Benson).</li>
- <li> Prevent overflow when casting short int to size_t when parsing a maliciously crafted image with an IFD whose all IOP tags' value offsets point to the beginning of the IFD itself [CVE-2012-0247].</li>
- <li> Prevent DES when parsing a maliciously crafted image with an IFD whose all IOP tags' value offsets point to the beginning of the IFD itself [CVE-2012-0248].</li>
- <li> Caption with Pango support no longer return a blank canvas.</li>
- <li> Correct sRGB colorspace conversion equations.</li>
-<dt>2012-01-30 6.7.5-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fix bug in png coder (spurious warning, reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=20257).</li>
-<dt>2012-01-28 6.7.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.5-0, SVN revision 6606.</li>
-<dt>2012-01-25 6.7.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Zlib-1.2.5.2 requires gzFile cast (bug report from John Bowler).</li>
-<dt>2012-01-25 6.7.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-10, SVN revision 6592.</li>
-<dt>2012-01-25 6.7.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Update PerlMagick TIFF regression signatures to match endian order.</li>
-<dt>2012-01-24 6.7.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-9, SVN revision 6589.</li>
-<dt>2012-01-24 6.7.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix rare file link in the pixel cache.</li>
-<dt>2012-01-20 6.7.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-8, SVN revision 6551.</li>
-<dt>2012-01-19 6.7.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Although MagickRealType is a double, use double for KernelInfo values in the rare event of problems with C++ name mangling.</li>
- <li> Get strokes with patterns (e.g. -stroke xc:red) working again.</li>
- <li> Revert KernelInfo values from MagickRealType to double.</li>
-<dt>2012-01-17 6.7.4-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't write ancillary chunks (except for tRNS and gAMA) in PNG-encoded ICO files.</li>
-<dt>2012-01-14 6.7.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-7, SVN revision 6471.</li>
-<dt>2012-01-13 6.7.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Default to a lighter hinting algorithm for non-monochrome font rendering.</li>
-<dt>2012-01-12 6.7.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-6, SVN revision 6434.</li>
-<dt>2012-01-12 6.7.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Eliminate preprocessor exception for the HDRI build.</li>
-<dt>2012-01-10 6.7.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-5, SVN revision 6422.</li>
-<dt>2012-01-02 6.7.4-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed -black-threshold and -white-threshold so they work properly with the -channels option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20096).</li>
-<dt>2012-01-02 6.7.4-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Removed PNG_USE_CLONE cruft from the PNG encoder (see 2011-11-19 entry)</li>
- <li> Promote image depths 9-15 to 16 to avoid crashing in the PNG encoder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20098).</li>
-<dt>2012-01-01 6.7.4-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-4, SVN revision 6318.</li>
-<dt>2011-12-30 6.7.4-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fix problems with JNG encoder "quality" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20076).</li>
-<dt>2011-12-30 6.7.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-3, SVN revision 6310.</li>
-<dt>2011-12-28 6.7.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory leak in JP2 coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20071).</li>
- <li> Use maximum bounds when rendering PDF (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20078).</li>
-<dt>2011-12-25 6.7.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-2, SVN revision 6254.</li>
-<dt>2011-12-24 6.7.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Export new Windows binaries.</li>
-<dt>2011-12-21 6.7.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-1, SVN revision 6236.</li>
-<dt>2011-12-12 6.7.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Sped up -noise option when radius is 0.</li>
- <li> Read concatentated arcs correctly in a SVG path (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19992).</li>
- <li> PDF's now convert properly with -define pdf:use-cropbox=true (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=20033).</li>
-<dt>2011-12-09 6.7.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.4-0, SVN revision 6162.</li>
-<dt>2010-12-06 6.7.4-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Eliminated use of FARDATA in coders/png.c; it won't be supported in libpng-1.6.0 and is not needed now.</li>
-<dt>2011-11-29 6.7.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add GetQuantumFormat() method to return the quantum format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=19961).</li>
- <li> Allow unspecified width/height in geometries with the aspect flag (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19964).</li>
- <li> MagickGetImageDepth() no longer returns the depth setting but instead computes the depth of the image.</li>
-<dt>2011-12-02 6.7.4-0 Anthony <quetzlzacatenango@image...></dt>
- <li> Fixed Equal-Area Cropping (size and minimum of delta increments)</li>
-<dt>2011-12-01 6.7.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-10, SVN revision 6106.</li>
-<dt>2011-11-29 6.7.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Delay reading TIFF EXIF properties to prevent premature exit.</li>
- <li> Remove duplicates from the configuration file search path under Windows.</li>
- <li> Use viewbox offset when setting affine transform translation (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19943).</li>
- <li> Ensure equally sized tiles for -crop 11x2@ (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18322).</li>
- <li> Recognize SI prefixes for jpeg:extent (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19944).</li>
-<dt>2011-11-27 6.7.3-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-9, SVN revision 6092</li>
-<dt>2011-11-27 6.7.3-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Upgrade libtool / ltdl to version 2.4.7.</li>
-<dt>2011-11-25 6.7.3-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-8, SVN revision 6084</li>
-<dt>2011-11-20 6.7.3-8 Cristy <quetzlzacatenango@image...></dt>
- <li> The exif:ExposureBiasValue property is a signed value.</li>
- <li> Prevent buffer underflow for 1-bit PSD images.</li>
- <li> Don't include alpha channel when computing range unless image->matte is set.</li>
- <li> Set FILETYPE_REDUCEDIMAGE tag on pyramidal TIFF images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19892).</li>
- <li> Correct image geometry for Postscript for hi-res bounding box (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19807).</li>
-<dt>2011-11-19 6.7.3-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bug with scaling Q16 background to PNG sub-8-bit bKGD and again disabled PNG_USE_CLONE in coders/png.c.</li>
-<dt>2011-11-18 6.7.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-7, SVN revision 6024</li>
-<dt>2011-11-18 6.7.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Ensure embedded XML resource file is null terminated (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19856).</li>
-<dt>2011-11-17 6.7.3-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added a -define filter:alpha to contol the 'alpha value' of the Kaiser Windowing filter. Default value is 6.5</li>
-<dt>2010-11-15 6.7.3-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Reverted the change of 6.6.6-7 that creates an image clone for use by the PNG encoder. This was not useful and was somewhat wasteful.</li>
- <li> After finding out that writing the bKGD chunk in sub-8-bit PNG fails, enabled PNG_USE_CLONE (to create an image clone again)</li>
-<dt>2011-11-14 6.7.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-6, SVN revision 5972.</li>
-<dt>2011-11-11 6.7.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Prefer the hires bounding box for Postscript rendering (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19807).</li>
- <li> Default configure.xml destination folder to /usr/lib/ImageMagick-ver/config.</li>
-<dt>2011-11-09 6.7.3-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-5, SVN revision 5936</li>
-<dt>2011-11-07 6.7.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Add ShearRotateImage() method. RotateImage() now uses distorts rather than shears.</li>
- <li> MagickCoreGenesis() path must be accessible to use (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19795).</li>
-<dt>2011-11-06 6.7.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-4, SVN revision 5876</li>
-<dt>2011-11-02 6.7.3-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Ensure that the GIF encoder writes a large enough logical screen (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19734).</li>
-<dt>2011-11-02 6.7.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-3, SVN revision 5825</li>
-<dt>2011-11-02 6.7.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix small memory leak in the TIFF coder.</li>
- <li> Support -debug accelerate option.</li>
- <li> Support -includearch-dir and -sharearch-dir configure option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19720).</li>
- <li> Use Pango to improve the caption coder.</li>
-<dt>2011-11-01 6.7.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-2, SVN revision 5718</li>
-<dt>2011-11-01 6.7.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Support Ghostscript under 64-bit Windows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19659).</li>
- <li> Correct affine translation for certain SVG files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19664).</li>
- <li> -evaluate-sequence multiply no longer hangs ereference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19549).</li>
-<dt>2011-10-15 6.7.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-1.</li>
-<dt>2011-10-15 6.7.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Read TIFF EXIF profile before reading the image data.</li>
- <li> Fix "test: no: unexpected operator" in the configure script (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19615).</li>
- <li> Off by one error when writing the JPEG XMP profile (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19616).</li>
- <li> Revert GetPathComponent() patch.</li>
-<dt>2011-10-09 6.7.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.3-0.</li>
-<dt>2011-10-09 6.7.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Generate output for caption:"[!]" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=19589.</li>
-<dt>2011-10-05 6.7.3-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Add "png:format" property with possible values png8, png24, and png32, for use when prepending the format type to the filename is not convenient or is not possible, e.g., when embedding the PNG in a PNG-encoded ICO.</li>
-<dt>2011-10-04 6.7.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-10.</li>
-<dt>2011-10-04 6.7.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove most of the LLVM compiler warnings.</li>
- <li> Fix bug in -evaluate-sequence multiply (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19549).</li>
- <li> Upgrade to sRGB V4 ICC profile (reference http://www.color.org/srgbprofiles.xalter).</li>
- <li> Distinguish embedded PNG vs BMP within the MicroSoft ICON image format.</li>
-<dt>2011-09-30 6.7.2-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Recognize the sRGB version 4 ICC profile and write PNG sRGB chunk instead.</li>
- <li> Use crc32 instead of "sRGB" string to recognize certain sRGB profiles.</li>
-<dt>2011-09-26 6.7.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-9.</li>
-<dt>2011-09-26 6.7.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix race condition on image rotate @ 90 degrees.</li>
-<dt>2011-09-25 6.7.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-8.</li>
-<dt>2011-09-20 6.7.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Prevent infinite loop when font is too large for specified width (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19502).</li>
- <li> Fix LFS cross-compile detection (patch from Mike Frysinger).</li>
- <li> Add open_utf8(), fopen_utf8(), access_utf8(), etc. utility methods.</li>
-<dt>2011-09-15 6.7.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Convert empty .htm / .html file no longer removes source file.</li>
- <li> -crop 11x2@ now returns 22 images as expected.</li>
- <li> Enable reading the EXIF profile in a TIFF image under Windows.</li>
- <li> Support drawing text with bitmap font.</li>
-<dt>2011-09-13 6.7.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-6.</li>
-<dt>2011-09-12 6.7.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Expand pixel range for 12 bit DCM images stored in 16-bit words.</li>
- <li> Gray images not displayed properly when saved as MIFF with sRGB colorspace.</li>
- <li> OpenCL's clCreateContextFromType() no longer returns a system default.</li>
- <li> Use -enable-zero-configuration for zero configuration ImageMagick (previously -enable-embeddable).</li>
-<dt>2011-09-10 6.7.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-5.</li>
-<dt>2011-09-10 6.7.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> SO bump.</li>
-<dt>2011-09-09 6.7.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-4.</li>
-<dt>2011-09-05 6.7.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix cut-n-paste error when reading JPEG profiles.</li>
-<dt>2011-09-07 6.7.2-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-3.</li>
-<dt>2011-09-05 6.7.2-3 Cristy <quetzlzacatenango@image...></dt>
- <li> A small memory overwrite when reading TIFF with 1-bit alpha (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19417).</li>
- <li> Remove a 2 byte memory leak when checking for environment variables.</li>
-<dt>2011-09-05 6.7.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-2.</li>
-<dt>2011-09-03 6.7.2-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Recognize the sRGB ICC profile and write the PNG sRGB profile instead of a full iCCP chunk.</li>
-<dt>2011-08-31 6.7.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Write grayscale MIFF as a single gray pixel component, not RGB (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=19403).</li>
- <li> Bail gracefully for corrupt JPEG images.</li>
- <li> Bail gracefully for negative montage geometries (references https://bugzilla.redhat.com/show_bug.cgi?id=735599).</li>
- <li> Account for DCm bits allocated 16 and significant bits 12 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19420).</li>
- <li> Fix bug when appending JPEG image profiles (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19429).</li>
-<dt>2011-08-29 6.7.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.2-1.</li>
-<dt>2011-08-29 6.7.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> The AllChannels defined changed to 0x7ffffff to avoid integer overflow.</li>
-<dt>2011-08-26 6.7.2-0 Cristy <quetzlzacatenango@image...></dt>
- <li> HDR format 32-bit_rle_xyze implies the XYZ colorspace.</li>
-<dt>2011-08-22 6.7.1-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Revert FormatImageAttributeList(), FormatImagePropertyList() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19339).</li>
-<dt>2011-08-21 6.7.1-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Revised configure.ac (and configure) to look for -lpng15, -lpng14, -lpng12, and -lpng in that order instead of just -lpng. This should help find a consistent library and headers when users upgrade their libpng delegate from one version to another, incompatible version.</li>
-<dt>2011-08-20 6.7.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-9.</li>
-<dt>2011-08-20 6.7.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory leak in text annotation (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=19331).</li>
-<dt>2011-08-18 6.7.1-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The "-strip" option was excluding the PNG tRNS chunk (see 6.6.6-7, below); revised the -strip option so it behaves as if "-define PNG:include-chunk=none,trns,gama" had appeared on the commandline.</li>
- <li> When writing a PNG8 and more than one transparent color is present, merge them into the image->background_color (Reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=19329), finishing the implementation started in version 6.6.8-7.</li>
-<dt>2011-08-18 6.7.1-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-8.</li>
-<dt>2011-08-18 6.7.1-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Caption now wraps properly for Chinese text (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19249).</li>
-<dt>2011-08-18 6.7.1-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG encoder would sometimes fail to respect the -define PNG:color-type option when the incoming image was PseudoClass (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=19262).</li>
-<dt>2011-08-15 6.7.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-7.</li>
-<dt>2011-08-15 6.7.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Properly handled continued JPEG embedded profiles.</li>
-<dt>2011-08-12 6.7.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Yet another attempt to read Japanese filenames under Windows.</li>
-<dt>2011-08-10 6.7.1-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-5.</li>
-<dt>2011-08-10 6.7.1-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Revert -colorspace sRGB option patch (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19256).</li>
- <li> Revert -type PaletteMatte option patch (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19263</li>
-<dt>2011-08-09 6.7.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-4.</li>
-<dt>2011-08-09 6.7.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Revert MultiByteToWideChar() for Windows patch.</li>
-<dt>2011-08-05 6.7.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-3.</li>
-<dt>2011-08-05 6.7.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Use MultiByteToWideChar() for Windows filenames (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=19242).</li>
-<dt>2011-08-03 6.7.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-2.</li>
-<dt>2011-08-02 6.7.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Windows does not support acosh(), asinh(), or atanh().</li>
- <li> Accept filenames with time stamps and a sub-image specification (e.g. test-18:37.jpg[0]).</li>
-<dt>2011-08-01 6.7.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.1-1.</li>
-<dt>2011-08-01 6.7.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support MSL 'set gravity' element.</li>
- <li> Don't report HSB colors as RGB colornames (e.g. hsb(0%,0%,100%)).</li>
- <li> Support -fx acosh(), asinh(), and atanh().</li>
-<dt>2011-07-21 6.7.1-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Removed a case that prevented rotations of rectangle kernels.</li>
-<dt>2011-07-01 6.7.1-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Use zlib default compression strategy instead of Z_RLE and Z_FIXED strategies when linking with zlib versions (prior to 1.2.0 and 1.2.2.2, respectively) that don't support them.</li>
- <li> Exit test loop sooner in coders/png.c when a non-gray pixel is found.</li>
-<dt>2011-06-30 6.7.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-10.</li>
-<dt>2011-06-30 6.7.0-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added "-define PNG:compression-level|strategy|filter=value" options to the PNG encoder. If these options are used, they take precedence over the -quality option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?&f=1&p=73548).</li>
-<dt>2011-06-29 6.7.0-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Handle "-quality 97" properly in the png encoder, i.e., use intrapixel filtering when writing a MNG file and no filtering when writing a PNG file.</li>
- <li> Added support for Z_RLE strategy in the png compressor, using -quality 98 or 99.</li>
-<dt>2011-06-28 6.7.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Properly allocate points when render text with large font size (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18997).</li>
-<dt>2011-06-25 6.7.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-9.</li>
-<dt>2011-06-18 6.7.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Defend against corrupt PSD resource blocks.</li>
-<dt>2011-06-15 6.7.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-8.</li>
-<dt>2011-06-14 6.7.0-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added Initial implementation of Cylinder to/from Plane 3D Distorts Includes derivative (scaled lookup), and anti-aliased horizon (validity) Currently can NOT handle extractions from full 360 cylinder panoramas.</li>
-<dt>2011-06-13 6.7.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-7.</li>
-<dt>2011-06-09 6.7.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed "conversion from unsigned __int64 to double not implemented" so IM can compile under VisualStudio 6.</li>
-<dt>2011-06-08 6.7.0-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG encoder would sometimes make black pixels transparent when some other gray level was supposed to be the transparent color (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18900). This occurred only with 1, 2, 4-bit grayscale images with Q16 or Q32 builds.</li>
-<dt>2011-06-08 6.7.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-6.</li>
-<dt>2011-06-08 6.7.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix transient error for composite 'Over' operator.</li>
-<dt>2011-06-07 6.7.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-5.</li>
-<dt>2011-06-07 6.7.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix one-off bug in option parser (reference http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=609177).</li>
- <li> Transient bug with composite 'Over' in magick/composite-private.h.</li>
-<dt>2011-06-06 6.7.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-4.</li>
-<dt>2011-06-03 6.7.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -direction right-to-left for the label: and caption: coders.</li>
- <li> Blue / green reversed for JPEG-compressed TIFF images.</li>
-<dt>2011-06-03 6.7.0-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-3.</li>
-<dt>2011-06-02 6.7.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Use memmove() instead of memcpy() in StripString().</li>
-<dt>2011-05-27 6.7.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-2.</li>
-<dt>2011-05-26 6.7.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> ImageMagick now compiles on Hurd (reference http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=628020).</li>
- <li> Use vfprintf rather than fprintf in FormatLocaleFileList().</li>
-<dt>2011-05-26 6.7.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-1.</li>
-<dt>2011-05-25 6.7.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Not all Linux'es define locale_t (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18819).</li>
-<dt>2011-05-22 6.7.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.7.0-0.</li>
-<dt>2011-05-21 6.7.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Avoid fault on corrupt JPEG images.</li>
- <li> Avoid fault on certain DJVU images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18807).</li>
- <li> Fix -fx to interpret scientific notation properly.</li>
-<dt>2011-05-20 6.6.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-10.</li>
-<dt>2011-05-20 6.6.9-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG encoder now respects the -depth setting, including 1, 2, 4. Previously settings other than 8 and 16 were ignored (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18412).</li>
-<dt>2011-05-16 6.6.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't use comma as a separator for stroked text (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18742).</li>
- <li> Use C locale when generating or interpreting SVG.</li>
- <li> Fix "unterminated macro" for Q32 build of coders/png.c.</li>
-<dt>2011-05-15 6.6.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-9.</li>
-<dt>2011-05-14 6.6.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The -scale option now considers the alpha channel when scaling.</li>
- <li> Fix transient bug for HSL to RGB and back.</li>
-<dt>2011-05-12 6.6.9-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed PNG8 reduction to work with an image that reduces to 256 colors plus transparency, by merging the two darkest red colors.</li>
-<dt>2011-05-04 6.6.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-8.</li>
-<dt>2011-05-02 6.6.9-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed some cut-and-paste errors in new png.c code that caused PNG8 reductions to fail.</li>
-<dt>2011-05-02 6.6.9-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Add various Option Flags, and fix option skip counts for plus forms of simple operators where plus form is the same as minus form. For example the incorrect counts produces a weird error, and possible future segmentation fault in a command like convert rose: +border show:</li>
-<dt>2011-04-30 6.6.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-7.</li>
-<dt>2011-04-30 6.6.9-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix FX default for interpolation to Bilinear.</li>
-<dt>2011-04-27 6.6.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix pixel interpolation for -draw 'image Over' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18612).</li>
-<dt>2011-04-26 6.6.9-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Write the proper bKGD chunk value in grayscale PNG images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18624).</li>
-<dt>2011-04-25 6.6.9-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added Inverse method for Sparse Color Interpolation</li>
-<dt>2011-04-24 6.6.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-6.</li>
-<dt>2011-04-21 6.6.9-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Make filter:blur define a multiplicative adjustment of filter settings rather than a complete override of those settings.</li>
- <li> Add Flags to CommandOptions parse table, removing the need for ImageListOptions parsing table. This is the start of development to produce a "convert" replacement that can read options from both command line and from files or pipelines, in "Do it Immediately" handling.</li>
- <li> Crop Bug Fix. Prevent infinite loop with "+repage -crop 0x40"</li>
-<dt>2011-04-18 6.6.9-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added "date" to the things that can appear on the -define PNG:exclude-chunk list. This excludes the IM-generated Date:modify and Date:create properties from PNG output text chunks without excluding the rest of the text chunks.</li>
- <li> Added "-define PNG:preserve-colormap" option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18564).</li>
- <li> Simplified LosslessReduceDepthOK() function in coders/png.c</li>
-<dt>2011-04-18 6.6.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for writing RGB FITS images as separate planes.</li>
-<dt>2011-04-16 6.6.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Support the HDR 32-bit_rle_xyze format.</li>
- <li> Fixed infinite loop for TARGA images with a V2 develop area.</li>
- <li> Add signal handler for SIGBUS.</li>
-<dt>2011-04-15 6.6.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-5.</li>
-<dt>2011-04-15 6.6.9-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added "#define PNG_PTR_NORETURN" because this macro does not work on all platforms with libpng15, with failure to load png_longjmp() (ref http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18518).</li>
-<dt>2011-04-14 6.6.9-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Layers Composition Bug Fix, animations attributes of first image not transferred in a single destination, multi-source image composition.</li>
-<dt>2011-04-09 6.6.9-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Add a special 'Voronoi' Morphology Distance method that will fill in holes using the nearest non-transparent edge pixel. It is experimental, and hidden from normal morphology usage, as it may be interfaced with a future hole-filling color 'Diffusion' method.</li>
-<dt>2011-04-08 6.6.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> MIFF keywords sometimes includes spaces.</li>
-<dt>2011-04-07 6.6.9-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Major BUG FIX - wrong sign breaks most morphology methods in IM v6.6.9-4</li>
- <li> Fixed -region handling of transparency. Original images without transparency will use 'Over' while images with transparency will preserve transparency using 'Copy'. Before this only 'Over' was used due to the testing of the wrong image.</li>
- <li> Added Compose methods DarkenIntensity and LightenIntensity</li>
-<dt>2011-04-06 6.6.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-4.</li>
-<dt>2011-04-03 6.6.9-4 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Add Octagon shape and Octagonal distance kernels for Morphology</li>
- <li> Fix minor Morphology kernel compose bug (cleanup after Src/Dst swap)</li>
- <li> Fix segmentation fault after error in a morphology 'named' kernel</li>
- <li> Added a range of kernels used for specialised thinning purposes as defined in a research paper by Dan S. Bloomberg.</li>
- <li> Added Dan Bloomberg best thinning skeleton, "Skeleton:3"</li>
- <li> Removed origin pixel from many Hit-and-Miss kernels allowing kernels to not only be used for thinning, but also thickening.</li>
- <li> Renamed "ThinDiagonals" kernel to just "Diagonals"</li>
- <li> Distance uses a fast two pass algorithm, and no longer needs 'iteration'</li>
-<dt>2011-04-02 6.6.9-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Make the PNG encoder use depth==8 when incoming image->depth < 8 (the encoder later reduces the depth if it can), to avoid writing an incorrect image.</li>
- <li> Remove any bogus colormap received by the PNG encoder with an image that is not PseudoClass (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18475).</li>
-<dt>2011-04-02 6.6.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Added -statistic Gradient</li>
-<dt>2011-04-01 6.6.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-3.</li>
-<dt>2011-04-01 6.6.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Set the caption height correctly for missing row geometry (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18447).</li>
-<dt>2011-03-31 6.6.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-2.</li>
-<dt>2011-03-30 6.6.9-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Revised the png decoder to store the PNG IHDR and other known PNG chunk data as properties, for later retrieval and reporting by "identify", so users can easily and reliably discover the color-type, bit-depth, etc that were in the input PNG datastream.</li>
- <li> The PNG decoder sometimes set images with more than 256 different gray-alpha pixels to storage_class=PseudoClass with an incorrect colormap.</li>
-<dt>2011-03-30 6.6.9-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Add a "Resize" distortion method (distort equivalent of -resize).</li>
- <li> Special CLI handling so -distort Resize takes a "geometry" argument.</li>
-<dt>2011-03-29 6.6.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Expand PCL compressed pixel buffer to prevent delta compressed overrun.</li>
-<dt>2011-03-29 6.6.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-1.</li>
-<dt>2011-03-29 6.6.9-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix AdaptiveResizeImage() to use 'Mesh' Interpolation, and fix its coordinate handling, as originally defined.</li>
-<dt>2011-03-29 6.6.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -statistic standard-deviation option.</li>
- <li> Patch for coders/dcm.c so it compiled with HDRI enabled.</li>
-<dt>2011-03-28 6.6.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.9-0.</li>
-<dt>2011-03-28 6.6.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Optimize bilinear interpolation.</li>
- <li> Remove version from etc folder and instead use /etc/ImageMagick.</li>
-<dt>2011-03-28 6.6.9-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Separated complex cropping function from TransformImage() as a new function CropImageToTiles(). This new function returns either the new cropped image, or a list of tiles, according to geometry, without replacing the source image. The Source image may be part of a larger list of images, without the function 'losing' the other images of the list.</li>
-<dt>2011-03-27 6.6.8-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-10.</li>
-<dt>2011-03-27 6.6.8-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Modified image handling in MogrifyImages() and MogrifyImage() which improves overall handling, and allows correct %p, %n and the %[fx:..] 't' and 'n' escape usage to work correctly.</li>
- <li> Added -duplicate as a multi-image sequence operator</li>
-<dt>2011-03-26 6.6.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-9.</li>
-<dt>2011-03-25 6.6.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Add InterpolateMagickPixelPacket() method.</li>
- <li> Add support for the %[opaque] property.</li>
-<dt>2011-03-25 6.6.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-8.</li>
-<dt>2011-03-25 6.6.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory access bug in CloneString() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=18382).</li>
- <li> Avoid infinite loop when no space is available in MagickFormatCaption().</li>
-<dt>2011-03-25 6.6.8-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Removed the fix for %p and %n escapes, as it was not working right</li>
-<dt>2011-03-24 6.6.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-7.</li>
-<dt>2011-03-24 6.6.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for 16-bit DCM short ints (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18371).</li>
-<dt>2011-03-23 6.6.8-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Another fix for -sparse-color and unused color channels</li>
- <li> Finalize the -duplicate option created by Cristy</li>
- <li> Fix of segmentation fault for second image in %[fx:..] during info: (Bug in AcquireFxInfo(), as given start image is not first image)</li>
-<dt>2011-03-21 6.6.8-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Revised the PNG8 encoder to use 50% threshold instead of 0% when reducing transparency to binary. Collapse all resulting fully transparent colors into one (the background color), to reduce the compressed filesize.</li>
- <li> First try the 4-4-4-1 and 3-3-3-1 palettes instead of 3-3-2-1, to preserve colors (especially gray) better, when reducing to PNG8.</li>
- <li> Force the PNG encoder to return image->matte==MagickTrue when the format is RGBA or GA or if the tRNS chunk is present, even when the image is fully opaque (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18349).</li>
-<dt>2011-03-21 6.6.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-6.</li>
-<dt>2011-03-21 6.6.8-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Re-enabled reduction of grayscale images (color-type 0) to 2 or 4 bits when appropriate (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18098).</li>
- <li> The "-define PNG:color-type=4" option did not always force the PNG encoder to write an all-opaque alpha channel (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18349).</li>
-<dt>2011-03-14 6.6.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed memory leak for PDF and Bitmap PSD RLE support (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18317).</li>
- <li> Support the -statistic option: replace each pixel with corresponding statistic from the neighborhood.</li>
- <li> Add support for -duplicate option.</li>
- <li> Move configuration files from /usr/share and /usr/lib to /etc and /var.</li>
- <li> Do not cache the results of fx: otherwise -format '%[fx:rand()] %[fx:rand()]' returns the same random numbers.</li>
-<dt>2011-03-18 6.6.8-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Replaced Minus and Divide Composition methods with Dst and Src equivalents. Now users can decide how these non-commutative mathematical operators are applied to the images being composited.</li>
- <li> Fix the percent escape values for %p, %n and %[fx:t], %[fx:n] to respectively mean the current images index and the total number of images within the current image sequence.</li>
-<dt>2011-03-17 6.6.8-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Backed out the patch for Variable Blur Composition that was added 2011-02-13 v6.6.7-7, until I can re-think the problem. The existing fix was failing to do circular blurs correctly.</li>
-<dt>2011-03-14 6.6.8-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed a rounding/truncation error while writing the pHYs chunk in the png encoder.</li>
- <li> Don't write text-encoded profile when "-define PNG:exclude-chunk=text,ztxt" is present (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17086 and http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18225).</li>
-<dt>2011-03-14 6.6.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the WebP image format.</li>
-<dt>2011-03-14 6.6.8-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Ensured that -sparse-color preserves unused channels when channel limited. Before this unused channels would be reset to black.</li>
-<dt>2011-03-11 6.6.8-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't try to store a bKGD chunk in a PNG8 when there are already 256 colors in the palette and the background colors is not in that palette (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18199);</li>
- <li> The "-define PNG:exclude-chunk=bKGD" option was also excluding the text chunks. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18253).</li>
-<dt>2011-03-10 6.6.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Fx is a mathematical function. Do not treat transparency as black.</li>
- <li> No image scene suffix for filenames that include a single bracket (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18267).</li>
-<dt>2011-03-10 6.6.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-3.</li>
-<dt>2011-03-10 6.6.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Boost causes an ambiguity with ssize_t when building PythonMagick. Add patch from Arfrever@gento... to fix the build exception.</li>
-<dt>2011-03-09 6.6.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Support the Radiance HDR image format.</li>
- <li> Update the offset in the black channel when sharpening to avoid incorrect results.</li>
- <li> Do not use GenericReadMethod for TIFF images with 64-bits per sample.</li>
-<dt>2011-03-06 6.6.8-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Throw error message when the requested color-type or bit-depth cannot be written by the PNG encoder (error was being thrown into the wrong image structure). (Reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18162).</li>
- <li> Don't write a PNG text chunk with "density" keyword that overrides the PNG pHYs chunk, if the pHYs chunk was not excluded (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18253).</li>
- <li> Ignore any PNG text chunk with a "density" keyword found by the PNG decoder, if the PNG datastream also contains a pHYs chunk.</li>
-<dt>2011-03-06 6.6.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-1.</li>
-<dt>2011-03-05 6.6.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support PSD files with one layer and one composite layer.</li>
- <li> We must cast a Quantum type when bit shifting and HDRI is enabled.</li>
-<dt>2011-03-05 6.6.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.8-0.</li>
-<dt>2011-02-27 6.6.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the -mode option.</li>
-<dt>2011-02-27 6.6.8-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fix scaling of new color-reduction method in the PNG encoder (16-bit images were scaled down to 0 or 1, or nearly black).</li>
- <li> Delay opening the PNG output blob until the PNG encoder is ready to write the IHDR chunk, to avoid writing zero-length PNG files when errors are found while building the palette. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18162).</li>
-<dt>2011-02-25 6.6.7-10 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.7-10.</li>
-<dt>2011-02-23 6.6.7-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Avoid seg fault in AppendImages() when one image is in the RGB colorspace but the other is in the CMYK colorspace.</li>
- <li> Get rid of 'respect_parenthesis defined but not used' warnings (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=18173).</li>
-<dt>2011-02-22 6.6.7-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Write sub-8-bit grayscale PNG images as palette-indexed PNG images. This usually makes smaller files anyhow.</li>
- <li> Eliminated a number of redundant tests for gray images in the PNG encoder.</li>
- <li> Removed now-unused IsMonochromeImage() function from coders/png.c</li>
- <li> Scan the colormap instead of all of the pixels, when possible, to determine whether the image received by the PNG encoder is grayscale or black-and-white.</li>
- <li> Avoid reading from the colormap in coders/png.c when it is NULL (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18162).</li>
- <li> Add a check whether the PNG "cheap transparency" criteria are met. That is, there is a single transparent color, no semitransparent colors, and no opaque color that has the same RGB components as the transparent color. If those aren't met, a color that is transparent in one pixel and opaque in another would always be rendered as transparent, so we must write a PNG colortype that has an alpha channel (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18167).</li>
-<dt>2011-02-22 6.6.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.7-9.</li>
-<dt>2011-02-22 6.6.7-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Disabled reduction of grayscale images (color-type 0) to less than 8 bits when writing because this sometimes produced incorrect output (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18098).</li>
-<dt>2011-02-21 6.6.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Check image has properties before accessing the splay tree (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18136).</li>
-<dt>2011-02-15 6.6.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> New version 6.6.7-8.</li>
-<dt>2011-02-14 6.6.7-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG encoder should ignore bogus q->opacity values when image->matte is MagickFalse (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18067).</li>
-<dt>2011-02-14 6.6.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Use implicit image format when explicit format is bogus (e.g. 02.13.11-18:43:58.png now writes as PNG).</li>
- <li> Fix problem with 4GB file seeks on a 32-bit OS.</li>
-<dt>2011-02-13 6.6.7-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed Variable blur to handle small (< 1.0 sigma) blurs generated by the blur map being used, rather than just 'cutoff' suddenly.</li>
-<dt>2011-02-08 6.6.7-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Support 16-bit per pixel YUV image files.</li>
- <li> Fix off-by-one error in PosterizeImage().</li>
- <li> Posterize now distributes color uniformly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17623).</li>
- <li> Add -smush option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=17953).</li>
- <li> Repair memory leak in the display program.</li>
-<dt>2011-02-07 6.6.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix bug in carg() define when HAVE_COMPLEX is not defined (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=18030).</li>
-<dt>2011-02-06 6.6.7-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Default sigma for Gauusian resize filter is now 1/2 for both orthogonal resize and cylindrical EWA distortions.</li>
-<dt>2011-02-02 6.6.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Check if the font is null in RenderFreetype() to prevent fault (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17890).</li>
- <li> Eliminate fault when reading WMF image files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=17971).</li>
- <li> Support multi-page transparent Postscript and PDF image files.</li>
- <li> The compare fuzz metric now returns the same correct value for 'xc:white xc:blue -alpha off' and 'xc:white xc:blue -alpha on'.</li>
-<dt>2011-01-29 6.6.7-4 Paul Heckbert <ph@cs.cm...></dt>
- <li> Move coders/tiff.c conditional compile to define TIFF exception / semaphore / key when TIFF delegate is disabled.</li>
-<dt>2011-01-29 6.6.7-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Renamed variables, macros, and functions defined/declared in coders/png.c that were in the libpng namespace (beginning with "png_" or "PNG_").</li>
-<dt>2011-01-25 6.6.7-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Removed a call to GetNumberColors() from the PNG encoder that was only there for debugging purposes and was consuming a huge amount of CPU time. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=17799).</li>
- <li> Sometimes black was still written as transparent, when the PNG encoder received an image with image->matte==true but no transparent pixels were present. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17913);</li>
-<dt>2011-01-24 6.6.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove memory leak from ThrowFileException() macro (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17908).</li>
- <li> Multiple blue error count by 'count' in ClassifyImageColors()</li>
- <li> Add support for the AAI image format.</li>
-<dt>2011-01-22 6.6.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Accept quoted file paths in indirect file references (e.g. @myFiles.txt).</li>
-<dt>2011-01-19 6.6.7-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Changed the PNG encoder's "transparent_color" from a UShortPixelPacket to LongPixelPacket and made the default (65537,65537,65537), which can never occur in the PNG image data. Previously the default was (0,0,0) and black pixels would be rendered as as transparent when no tRNS chunk was present in the input, which has caused problems with some test cases since version 6.6.6-10.</li>
- <li> Improved the PNG_BUILD_PALETTE section to count opaque, transparent, and semitransparent pixels separately. Previously it wasn't always possible to determine if there was a single fully-transparent color, to decide whether to write an RGBA or Gray-Alpha image or an RGB or Gray image with a tRNS chunk.</li>
-<dt>2011-01-15 6.6.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not reset image next / previous when detach argument is false for CloneImage().</li>
- <li> Inline cropping no longer fails for inline raw images (e.g. -size 640x480 -depth 8 'gray:logo[100x100+200+200]').</li>
-<dt>2011-01-14 6.6.7-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't let the PNG encoder try to sort the colormap when there are more than 256 colors in the image. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17834).</li>
-<dt>2011-01-10 6.6.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Accept escaped % in output filename (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17810).</li>
-<dt>2011-01-08 6.6.7-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Quieted some inconsequential warnings in the PNG codec due to a change in the type of the PNG iCCP profile from png_charp to png_bytep in libpng-1.5.0.</li>
-<dt>2011-01-03 6.6.7-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Handle negative heights for ICO images.</li>
-<dt>2011-01-02 6.6.7-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Recent changes sometimes caused the PNG encoder to select colortype=2 (Truecolor) instead of 0 (Grayscale) for grayscale images. This made the filesize larger than necessary and caused some of the PerlMagick tests to fail.</li>
-<dt>2011-01-01 6.6.6-10 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG decoder now checks whether the image actually has any transparency when the input file contains an alpha channel or a tRNS chunk. (Reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17748)</li>
-<dt>2010-12-26 6.6.6-8 Cristy <quetzlzacatenango@image...></dt>
- <li> -posterize fails with more than 40 levels (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17741).</li>
- <li> Add support for the MacPaint image format.</li>
- <li> Eliminate spurious 'invalid colormap index' exception for 16-bit SGI images (bug report by steven.sittser@fligh...).</li>
- <li> Fix user data length for the CIN image format.</li>
-<dt>2010-12-21 6.6.6-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Use a clone instead of the main image in coders/png.c, so the image can still be used later on without being affected by changes made by the PNG encoder.</li>
- <li> Added PNG:exclude-chunk and PNG:include-chunk defines.</li>
- <li> Revised the -strip option so it behaves as though "-define PNG:include-chunk=none,gama" had appeared on the commandline.</li>
- <li> Avoid writing PNG ancillary chunks in the PNG/MNG/JNG encoder while generating the alpha channel for a JNG image.</li>
-<dt>2010-12-21 6.6.6-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Removed the forced interpolation setting in AcquireResampleFilterThreadSet It prevented user defined interpolation settings for -clut, and possibly other usage.</li>
-<dt>2010-12-17 6.6.6-6 Chris Madison <madisonblu@gmail...></dt>
- <li> Add LZMA compression support to ImageMagick.</li>
- <li> Eliminate seg-fault in MvgPrintf().</li>
-<dt>2010-12-17 6.6.6-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Eliminated a redundant quantization step in the PNG encoder.</li>
- <li> Untangled a confusing but apparently harmless improper loop nesting in the PNG encoder.</li>
- <li> Eliminated redundant "IsGray()" tests from the PNG encoder.</li>
-<dt>2010-12-14 6.6.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> -format "%[fx:u.p{5,5}]" no longer reports parse exception (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17678).</li>
-<dt>2010-12-10 6.6.6-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Make the PNG encoder always rebuild the palette, to avoid losing transparency when it is out of sync with the pixel data (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17655).</li>
- <li> Eliminated CompressColormapTransFirst() since the palette is already compressed and sorted by opacity now when it's recreated.</li>
-<dt>2010-12-10 6.6.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Account for virtual canvas for the -flip / -flop options (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=17626).</li>
- <li> Also for -transpose and transverse options</li>
- <li> Support -metric fuzz option.</li>
-<dt>2010-12-09 6.6.6-4 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Replace IsMagickColorSimilar() which provides the Fuzz Factor threshold function. Note function does not calculate 'distance' in total but short-circuits when threshold is reached for faster processing.</li>
- <li> Ordered Dithered handling of Alpha channel was incorrect - fixing Bug was introduced v6.6.5-6</li>
-<dt>2010-12-03 6.6.6-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed two more cases where the PNG encoder lost transparency (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17516).</li>
-<dt>2010-12-01 6.6.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Affine multiplication reversed when translating (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17570).</li>
-<dt>2010-11-26 6.6.6-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Revised the "c7x7b" and "c7x7w" ordered-dither maps to be complementary to each other.</li>
-<dt>2010-11-27 6.6.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for -evaluate-sequence median.</li>
-<dt>2010-11-26 6.6.6-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed two more cases where the PNG encoder lost transparency (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17516).</li>
-<dt>2010-11-23 6.6.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> The policy.xml sets not-to-exceed resource values (e.g. policy memory limit 1GB, -limit 2GB exceeds policy maximum so memory limit is 1GB).</li>
- <li> Support NCC (normalized cross correlation) compare metric.</li>
-<dt>2010-11-21 6.6.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix PNG coder compile error when HDRI is enabled.</li>
-<dt>2010-11-17 6.6.5-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Many of the problems with the PNG encoder have been fixed (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16490).</li>
- <li> The "-type Optimize" option is now deprecated. If present, it is treated by the PNG encoder the same as if the type were undefined. Optimization is now always performed. No other formats used the "type Optimize" option.</li>
- <li> Merged redundant code into LosslessReduceDepth() function in the PNG codec.</li>
-<dt>2010-11-14 6.6.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The splice option no longer throws spurious "pixels are not authentic" exceptions.</li>
- <li> Thread the -adaptive-resize option.</li>
- <li> Set XBM coder height to height not width.</li>
-<dt>2010-11-14 6.6.5-9 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Lanczos2Sharp blur tweaked. New blur = 0.9549963639785485.</li>
-<dt>2010-11-13 6.6.5-9 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> LanczosSharp blur tweaked to minimize worst case deviation from "perfect preservation of images which only vary horizontally (or vertically)" under no-op. New blur = 0.9812505644269356.</li>
-<dt>2010-11-08 6.6.5-8 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Missing logical operator in tiff.c.</li>
-<dt>2010-11-08 6.6.5-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Only save TIFF image with 1-bit depth if there is no alpha channel.</li>
- <li> Abandon PSD composite if layer is available.</li>
- <li> %[fx:mean] is the mean of the default channels (all but opacity) (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=17432).</li>
-<dt>2010-10-29 6.6.5-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Added 5x5, 6x6, and 7x7 ordered-dither level maps.</li>
-<dt>2010-10-30 6.6.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not read configure files in the current directory for the "installed" version of ImageMagick.</li>
- <li> Allow numeric characters in the XPM basename (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17385).</li>
-<dt>2010-10-29 6.6.5-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Revised PNG palette optimization</li>
- <li> Added some debug logging in coders/png.c.</li>
-<dt>2010-10-28 6.6.5-3 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> More precise blur values for Lanczos2Sharp and LanczosSharp.</li>
- <li> Added location of first Mitchell crossing (=8/7) to the filters data structure.</li>
-<dt>2010-10-28 6.6.5-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added Lanczos2D* filters now named Lanczos2*</li>
- <li> Reorganization of AcquireFilter() to make it work better</li>
-<dt>2010-10-25 6.6.5-1 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Clearer EWA filters (LanczosSharp etc) comments.</li>
-<dt>2010-10-25 6.6.5-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added LanczosSharp (3-lobe Lanczos with sharpening)</li>
- <li> Filter sharpening factors are also always applied regardless of usage.</li>
-<dt>2010-10-24 6.6.5-1 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> CubicBC filter formulas simplified by constant folding. In particular, P1 coefficient (always zero) removed from coeff.</li>
-<dt>2010-10-22 6.6.5-1 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Revert the Robidoux filter to a Keys cubic with C=(108 sqrt 2-29)/398 (as already specified in the documentation).</li>
-<dt>2010-10-14 6.6.5-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Ignore PS bounding box offsets if -page is set.</li>
- <li> Use #pragma omp master for dumping single threaded debugging information (single caused a fault).</li>
- <li> Add support for -evaluate exp.</li>
-<dt>2010-10-12 6.6.5-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added "filter:sigma" expert setting defining the 'sigma' for the Gaussian filter only. This is similar in action to 'blur' but only for Gaussians, and does not modify the filters support, allowing you to set a very small sigma, without the function 'missing' all pixels. (This will allow future adjustment of Gaussians for variable blur mapping)</li>
-<dt>2010-10-10 6.6.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Patch for DrawableRotation() and DrawableTranslation() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17246).</li>
- <li> The webp format requires the webpconv delegate program (experimental).</li>
-<dt>2010-10-05 6.6.5-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Replaced "Robidoux" with Cubic 'Keys' filter that is near equivalent to the previous sharped "Lanczos2D" filter. (C=0.31089212245300069) This also is very similar to a Mitchell filter but specifically designed for EWA use and is the new default filter for Distorting Images.</li>
- <li> Original sharpened Lanczos2D filter now called "Lanczos2Dsharp"</li>
-<dt>2010-10-08 6.6.4-10 Jerry Gay <jerry.gay@gmail..></dt>
- <li> Autodetect file type support in Makefile.PL to prevent test failures</li>
-<dt>2010-10-05 6.6.4-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added new filter 'Lanczos2D' a 2-lobe Lanczos as defined by Andreas Gustafsson in his thesis "Interactive Image Warping" (page 24) http://www.gson.org/thesis/warping-thesis.pdf</li>
- <li> Added filter "Robidoux" which is a slightly sharpened version of the "Lanczos2D" filter (blur=0.958033808) specifically designed to be less 'blurry' for horizontal and vertical lines in no-op distortions.</li>
-<dt>2010-10-05 6.6.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for "pattern:vertical2" and "pattern:horizontal2".</li>
- <li> Add support for "pattern:vertical3" and "pattern:horizontal3".</li>
- <li> Properly handle PSD layers with negative offsets.</li>
-<dt>2010-10-03 6.6.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory assertion with --enable-embeddable (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17201).</li>
- <li> Don't permit access to pixels when pinging an image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17194).</li>
-<dt>2010-10-02 6.6.4-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added sqrt(2) blurring default for Gaussian Filter if used as a Cylindrical EWA filter. This resulted removing the last aliasing issue that was present in tests for Gaussian EWA resampling. Of course it is still a very blurry filter for default use in EWA.</li>
- <li> Adjusted Variable Mapping Blur Composition so user arguments actual relate properly to the sigma of the blur for a maximum mapping value.</li>
- <li> Fix horizon anti-aliasing for output-scaled perspective distortions.</li>
- <li> 'Bessel' filter is now officially and more accurately named 'Jinc' however 'Bessel' while not visible as a filter option can still be used as an internal alias for 'Jinc'.</li>
-<dt>2010-09-28 6.6.4-8 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Chantal Racette double checked the bounding parallelogram computation in resample.c (and I tightened the comments).</li>
-<dt>2010-09-28 6.6.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Temporary files not always deleted (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=15960).</li>
-<dt>2010-09-28 6.6.4-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Bug fix for -filter point distorts (occasional generating black pixels)</li>
-<dt>2010-09-27 6.6.4-8 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Simplified the ClampUpAxes code, the use of its outputs, its comments, and credited Craig DeForest for the "clamp singular values" idea.</li>
- <li> No reason to have "insane" precision Sinc in resize.c: Use the 1.2e-12 max. abs. relative error version for Q64 as well as Q32.</li>
-<dt>2010-09-27 6.6.4-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Replace the blurry "High Quality EWA" technique with a 'Clamped EWA' for Distort Resampling. This makes -distort a whole lot nicer and allows for the use of better cylindrical filters.</li>
-<dt>2010-09-26 6.6.4-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix Point filter for ResizeImage() caused by support limiting the Box weighting function.</li>
-<dt>2010-09-26 6.6.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't allow resize filter weights to go to zero (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=17132).</li>
-<dt>2010-09-24 6.6.4-6 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Now that MagickPIL is a MagickRealType, some casts are unneeded.</li>
-<dt>2010-09-21 6.6.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not break words if caption size is absolute (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=17123).</li>
- <li> Don't define HAVE_THREADS for --without-threads configure script option.</li>
-<dt>2010-09-20 6.6.4-5 Nicolas Robidoux <nicolas.robidoux@gmai...></dt>
- <li> Modified "magick/resize.c" so that MagickPIL is a MagickRealType number. Some computations were needlessly done in long double precision because PIL forced an automatic upcast wherever it appeared. Changed its name to MagickREALTYPEPI. <- This was later reverted back to MagickPIL.</li>
- <li> Modified "magick/resize.c" so that Bohman uses one trig call + one sqrt call instead of two trig calls.</li>
-<dt>2010-09-20 6.6.4-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> modified "magick/resample.c" to allow use of either EWA or HQEWA (default)</li>
- <li> Removed LanczosFast from supported filters (SincFast*SincFast is faster)</li>
-<dt>2010-09-19 6.6.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> If IPTC profile is not embedded in an 8bim resource, declare it IPTC rather than 8BIM.</li>
- <li> Support %[version] and %[copyright].</li>
- <li> Improve performance of the pixel cache.</li>
-<dt>2010-09-18 6.6.4-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Automatically set the quantum depth to 16 for HDRI.</li>
-<dt>2010-09-16 6.6.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> IPTC profile not always wrapped properly inside an 8BIM profile.</li>
- <li> TIFF tile geometry must be divisible by 16.</li>
-<dt>2010-09-15 6.6.4-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Rename of SincPolynomial to SincFast for easier user understanding</li>
- <li> Ditto for LanczosChebyshev to LanzcosFast</li>
-<dt>2010-09-14 6.6.4-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Switch default resize filters to using the faster SincPolynomial filter by default internally. However 'Sinc' will still use the Trigonometric function, and can be used to assign the trig version of Sinc() to filters using the filter expert options.</li>
- <li> The default filter for 'distort' was found to be a very blurry inaccurate filter function. It was removed and replaced with a correct Gaussian filter (as used by resize)</li>
- <li> Added a switch so that "-interpolate filter" will force the use of a cylindrical filter for ALL pixels in distorted images. That is you can use that switch to use a cylindrical filter even for images that are being enlarged by the distortion. However EWA is still currently using a fixed 2.0 sampling radius. This switch complements the use of "-filter point" which turns off EWA filters in favor of interpolation for all pixels in a distorted image. BOTH switches should not be used together.</li>
- <li> A bug in the support radius of the EWA resampling function was found, now that correctly defined resize filters are being used. Suddenly Normal Gaussian distortions are not so blurry, and tests with distortions of the 'Rings' image show extremely good and clear results, with only minimal blurring. The filter 'blur' expert option can be used to adjust this further.</li>
- The above represents a major improvement forward in the quality of the image distortion operator. But near-unity distortions (no scaling) are still overly blurry.
-<dt>2010-09-13 6.6.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't negate the geometry offset for the -extent option.</li>
-<dt>2010-09-09 6.6.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> The RGBO format is now listed as a supported format.</li>
-<dt>2010-09-07 6.6.4-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added the Nicolas Robidoux and Chantal Racette Lanczos resize filter function as "LanczosChebyshev" as faster alternative to Lanczos.</li>
- <li> Re-code Nicolas Robidoux and Chantal Racette Polynomial Approximation of the Sinc Trigonometric resize filter, as a proper filter to allow direct comparison and speed testing of the filter.</li>
- <li> Expanded the "-set option:filter:verbose 1" output, so as to also include the actual functions and other values that were used to create the filter.</li>
-<dt>2010-09-02 6.6.4-0 el_supremo <digipete@shaw...></dt>
- <li> Repair a few incorrect LocaleNCompare() calls (ttf.c, ps.c).</li>
-<dt>2010-08-31 6.6.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Path no longer closed if join style is round (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16943).</li>
- <li> Add case for BGRQuantum to GetQuantumExtent().</li>
- <li> Support no compression on PCX write.</li>
-<dt>2010-08-23 6.6.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed bug in the raw BGRA coders (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16880).</li>
- <li> Fix off-by-one error in the PSD coders.</li>
- <li> Nicolas Robidoux with the assistance of Chantal Racette contribute an approximation of the sinc function over the interval [-3,3].</li>
- <li> Eliminate a small memory leak in LevelizeImageChannel() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16951).</li>
- <li> Recognize -fx logtwo (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16958).</li>
-<dt>2010-08-15 6.6.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Throw exception if image size differs for the compare program but the -subimage-search option is not specified.</li>
-<dt>2010-08-13 6.6.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> The AdobeRgb.tif TIFF image no longer faults under Windows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16838).</li>
- <li> Add -subimage-search option to the compare utility.</li>
-<dt>2010-08-12 6.6.3-5 Cristy <quetzlzacatenango@image...></dt>
- <li> The -fx 2e+6/1e+5 argument no longer returns the wrong results (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16833).</li>
-<dt>2010-08-10 6.6.3-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Emit a warning if the PNG encoder can't satisfy the color type and bit depth requested with a "-define" directive.</li>
-<dt>2010-08-07 6.6.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> The orient option sometimes improperly set "undefined" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16795).</li>
- <li> Only list orientation options for the -list orientation option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16801).</li>
- <li> Return proper standard deviation for combined channels (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16786).</li>
- <li> Handle transparency properly for the PSD image format.</li>
-<dt>2010-08-05 6.6.3-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Properly map PNG intent to image->rendering_intent</li>
-<dt>2010-08-01 6.6.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Eliminate bogus "invalid colormap index" when pinging ICO images.</li>
- <li> Support -set density / units.</li>
-<dt>2010-07-31 6.6.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Only use the first alpha channel in PSD image.</li>
- <li> Only use XPM complying colors for XPM images (e.g. green is rgb(0,255,0)).</li>
-<dt>2010-07-27 6.6.3-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Eliminate useless message about assuming zero delay when writing a single-frame MNG, and changed it from Error to Warning when writing a multiple-frame MNG.</li>
-<dt>2010-07-25 6.6.3-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't "ping" a PNG image if it is embedded in a MNG. Otherwise the reader tries to read MNG chunks from the interior of the embedded PNG, resulting in an erroneous "corrupted image" message.</li>
-<dt>2010-07-09 6.6.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory leak in for corrupt BMP images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16600).</li>
- <li> Repair several issues when writing to stdout (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16620).</li>
- <li> A GIF image with the .bgr extension is still a GIF (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16662).</li>
-<dt>2010-07-07 6.6.3-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG decoder failed to handle the tRNS chunk properly for grayscale images where the PNG bit_depth was not the same as the quantum depth, and the transparent color was not black.</li>
-<dt>2010-07-01 6.6.3-0 Chris Madison <madisonblu@gmail...></dt>
- <li> Pinging the DJVU image format no longer faults.</li>
- <li> Check for time-limit-exceeded in only one thread.</li>
- <li> Reading filenames from a file (e.g. @filenames) no longer includes the utility name (side effect of StringToArgv() method).</li>
-<dt>2010-06-28 6.6.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Support the tiff:fill-order define.</li>
- <li> Filters are case sensitive (e.g. reduce-Colors).</li>
- <li> Restore mogrify's -path option.</li>
- <li> The -list module option lists image coders and image filters.</li>
-<dt>2010-06-27 6.6.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Add the ImageView API.</li>
- <li> Fix DJVU coder to read one page (e.g. 'image.djvu[2]').</li>
- <li> Support -define png:bit-depth=1 -define png:color-type=3 for PNG format.</li>
-<dt>2010-06-22 6.6.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Skip byte when DDS bitcount is 32 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16487).</li>
- <li> Montage now uses final background setting (e.g. montage -background none ... -background lightblue show:).</li>
- <li> Do not annotate directory paths in ListFiles().</li>
- <li> Reset the image matte for png:color-type=2.</li>
-<dt>2010-06-17 6.6.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Support new label:pointsize property.</li>
- <li> Miscellany->Slide Show, in the display program, now cycles through the image sequence.</li>
- <li> Recognize certain hex color values (e.g. #b9e1cc00) for the -fx argument.</li>
- <li> Reduce memory requirements when dithering on the iPhone.</li>
- <li> Command line operators no longer affected by settings that appear after them (e.g. -splice 10x0+0+0 -gravity center).</li>
- <li> Compute the proper DPX user data field size.</li>
-<dt>2010-06-15 6.6.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix some nits to keep the clang compiler happy.</li>
-<dt>2010-06-14 6.6.2-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix transprancy handling for Morphology Convolve</li>
- <li> Adjustments of Hit And Miss and Edge Detection kernel definitions</li>
- <li> Added 'ThinDiagonals' Thinning Kernel + two sub-types</li>
- <li> Handling for Convolution of 1-D vertical kernels. However this was removed (using #if-#endif) as I found it slower in tests!</li>
-<dt>2010-06-12 6.6.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> mogrify -format properly handles compressed image filename (e.g. -format jpg logo.png.bz2).</li>
- <li> Respect +dither option when saving to the GIF image format.</li>
-<dt>2010-06-08 6.6.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> End of string sentinel is \n not \r.</li>
-<dt>2010-06-06 6.6.2-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Don't decode pixels in coders/png.c when image->ping is set.</li>
-<dt>2010-06-06 6.6.2-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Reset image filename when reading inline images.</li>
- <li> Don't clamp floating point values for HDRI-enabled ImageMagick.</li>
-<dt>2010-05-25 6.6.2-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Replaced '^' morphology kernel rotation with two variants '>' and '<'</li>
- <li> 'Skeleton' variant to thin down images as symmetrically as possible.</li>
- <li> Spelling correction: Manhatten -> Manhattan</li>
-<dt>2010-06-01 6.6.2-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Properly scale color components of the PNG bKGD chunk.</li>
- <li> Prevent MNG divide by zero in calculation of frame_timeout. Set both frame_delay and frame_timeout to infinite when ticks_per_second is zero, as required by the MNG spec.</li>
-<dt>2010-05-31 6.6.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add x:silent option to prevent beeps when reading the X image format.</li>
- <li> Recognize TTF for GetMagicInfo().</li>
- <li> Ensure the +set option deletes the image artifact.</li>
-<dt>2010-05-28 6.6.2-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Prevent coders/png.c from attempting to write an empty tRNS chunk.</li>
-<dt>2010-05-25 6.6.2-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix for Square Array Rotates (off center origin rotate)</li>
- <li> Added HitAndMiss kernel Ridges2 to find 2 pixel thick ridges</li>
- <li> Added FreiChen:0,{angle} FreiChen:{angle} and FreiChen:-1 variations to complete this kernels definition</li>
-<dt>2010-05-24 6.6.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Respect density when rendering SVG images.</li>
- <li> Set AVI handler to the MPEG coder.</li>
- <li> Compute the proper DPX user data field size.</li>
- <li> Do not interpret a format specifier when enclosed in brackets (e.g. rose_tile_%[filename:tile].gif.</li>
- <li> Use 64-bit types when compiling with the 64-bit Visual C++ compiler under Windows.</li>
- <li> Prevent MNG divide by zero in calculation of frame_delay (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16320).</li>
-<dt>2010-05-23 6.6.2-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Third Re-write of MorphologyApply() to better handle compound methods.</li>
- <li> Implemented -set option:morphology:compose for merging results of multiple kernels. "None" means re-iterate results with next kernel. While "Undefined" means to use the internal default for a method. Thinning, Thickening, HitAndMiss, Convolve, Correlate defaults to "None" while HitAndMiss defaults to "Lighten" (union of all kernel results). Other morphology methods defaults still to be decided.</li>
- <li> Added HitAndMiss Kernel: Ridges (find ridges and pixel width lines)</li>
- <li> Rotation Expansion of single kernels '^' and '@' flags in arguments EG: -set option:showkernel 1 -morphology Convolve 'Blur:0x2^'</li>
- <li> ExpandKernelInfo() (rotation expand) now groks symmetrical kernels. So the above will only produce a list of 2 kernels, not 4 kernels</li>
-<dt>2010-05-18 6.6.2-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Separation of internal function MorphologyApply() from MorphologyImageChannel() to calls to convolve without user settings.</li>
- <li> Rewrite of MorphologyApply() to output better 'verbose' messages</li>
- <li> Better handling of Gaussian tyle filters (bug fixes)</li>
- <li> Bug fix and optimization of kernel size calculations in "gem.c"</li>
- <li> Allow '^' or '@' flags in 'user defined' kernel size arguments to expand kernel into a rotated list. EG: -set option:showkernel 1 -morphology Thinning '3@: 0,1,0 0,1,0 0,0,0'</li>
- <li> Allow a scaled unity kernel to be added to kernel (EdgeDet->Sharpen) EG: -set option:convolve:scale [kernel_scale][^!],[unity_scale][%]</li>
- <li> Addition of "Laplacian of Gaussian" (LOG), also known as Mexican Hat EG: -morphology convolve LOG:0x1</li>
- <li> Added FreiChen, Kirsch Convolution kernels</li>
- <li> Added Discrete 'Laplacian of Gaussian' kernels (Laplacian type 15 and 19)</li>
- <li> Added Edges HitAndMiss Kernel</li>
-<dt>2010-05-17 6.6.2-0 Cristy <quetzlzacatenango@image...></dt>
- <li> PSD images require a proper layer to support an alpha channel.</li>
- <li> Enable PFM endian support.</li>
- <li> Add context to -border for montage. Inside the parenthesis it adds a border to the image otherwise it sets the border for the layout manager.</li>
- <li> 24-bit BMP images are not colormapped even if header colors != 0.</li>
- <li> Set DPX user data like this: -set profile dpx:userdata.txt.</li>
- <li> Make sure Lab => RGB => Lab survives the round trip.</li>
-<dt>2010-05-15 6.6.1-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Use ScaleCharToQuantum() in coders/src.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16229).</li>
- <li> Don't clamp HDRI EXR pixels.</li>
-<dt>2010-05-14 6.6.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Increase the estimated # points for the path drawing primitive.</li>
- <li> Remove any prior resolution block from PSD before writing the new block.</li>
-<dt>2010-05-14 6.6.1-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Addition of more Morphological/Convolution Kernels. DOG (Difference of Gaussians) and DOB (Difference of Blurs), EG: -morphology convolve DOG:0x1,3 -morphology convolve DOB:0x1,3,90</li>
- <li> Added Prewitt, Roberts, Compass Convolution Kernels</li>
- <li> Ring Symbol Kernel (subtraction of Disk from a Disk)</li>
-<dt>2010-05-13 6.6.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The pixel buffer was underallocated for some image formats when streaming.</li>
-<dt>2010-05-12 6.6.1-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Implementation of Pattern Matching Morphology methods HitAndMiss, Thicken, Thinning</li>
- <li> Reporting of Kernel Strings that fail to parse (though not why)</li>
- <li> Parsing of Multiple Kernel Strings, generating a list of kernels</li>
- <li> Union of results from Multiple Kernels for HitAndMiss method</li>
- <li> Interated Multiple Kernels for all other morphology methods</li>
- <li> Added many new kernels for HitAndMiss and Convolution Sobel, Laplacian, Cross, Peaks, Corners, LineEnds, LineJunctions, ConvexHull (for Thicken), Skeleton (for Thinning)</li>
-<dt>2010-05-08 6.6.1-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Use proper background.index when writing indexed PNG, if the background color is in the palette.</li>
-<dt>2010-05-08 6.6.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix improper 'invalid colormap index' PNG bug.</li>
- <li> Fix PerlMagick compile exception.</li>
-<dt>2010-05-07 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added % and ! modification flags to morphology distance kernel scaling factor, for easier usage.</li>
- <li> Bug fix for compose math channel handling and morphology diff usage</li>
-<dt>2010-05-06 6.6.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not claim gray colorspace if gray image includes a non-gray pixel.</li>
- <li> Initialize BMP alpha channel to opaque for RGB images.</li>
- <li> Fixed under allocation for round rectangles.</li>
- <li> The -list option returns a 0 status as expected.</li>
-<dt>2010-05-06 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Made use of new no-'sync' channel enabled mathematical compose methods for the difference morphology methods. These should now work correctly for specific channels, and more importantly for alpha shaped morphology.</li>
-<dt>2010-05-05 6.6.1-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed bugs with losing the opacity channel while writing some PNG images. (bug reported by Anthony T.)</li>
-<dt>2010-05-05 6.6.1-6 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Simplified and corrected rowbytes calculation in coders/png.c and added more logging.</li>
-<dt>2010-05-05 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Rename of "Add" and "Subtract" compositions to "ModulusAdd" and "ModulusSubtract" for more clarity of there functions. Old names will continue to work as expected.</li>
- <li> Fix "Minus", "ModulusAdd", and "ModulusSubtract" to follow normal SVG 'Over' blending specifications, (see next for override) Note that this does NOT include the "Plus" composition method which has SVG definition for it to use a 'Plus' blending rather than 'Over' blending.</li>
- <li> By default mathematical compositions work as per SVG definition. That is the results are synchronized with 'Over' alpha-blending (except "Plus" which uses 'plus' alpha-blending).</li>
- <li> By removing the default 'sync' flag from the -channel setting however Break this inter-channel synchronization and do the mathematical operations only on the individual channels as specified by the -channel setting. That is do 'channel' math rather than 'SVG' composition.</li>
- <li> With this change you can then use mathematical composition methods on individual channels or even with the alpha channel of images.</li>
-<dt>2010-04-28 6.6.1-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Special case handling in Barrel distortion (pixel at image center)</li>
- <li> Calculation of image for Barrel distortion (pixel vs image coords)</li>
- <li> Argument input (handling optional 'd' argument) for Barrel distortion</li>
-<dt>2010-04-24 6.6.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not declare timestruct under MinGW.</li>
- <li> Respect -compose option for the montage utility (bug report by Anthony).</li>
- <li> A 256 column gradient produces a 256 color GIF image (bug report by Anthony).</li>
- <li> Register / unregister CALS format in static.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=16103).</li>
- <li> Add SetImageColor() method.</li>
-<dt>2010-04-17 6.6.1-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Only write one ICC profile to PSD image.</li>
- <li> Sync image colormap for PNG tRNS chunks.</li>
- <li> The -direction option now works with the -annotate and -draw options.</li>
- <li> For the histogram: format, if you have no need for the unique color list, use <kbd>-define histogram:unique-colors=false</kbd> to forego this expensive operation.</li>
- <li> Match on literal after backslash in glob expression (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16068).</li>
- <li> Enable JPEG-compression for grayscale TIFF images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16064).</li>
- <li> Don't write empty tile if tile geometry matches the image width (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16064).</li>
- <li> Support -regard-warnings in the mogrify utility.</li>
- <li> Output the correct units for the identify utility (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=16075).</li>
-<dt>2010-04-15 6.6.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not set the resample virtual pixel method when undefined.</li>
- <li> Support writing grayscale PSD images.</li>
- <li> Revert Lab-to-XYZ colorspace transform patch.</li>
- <li> Clamp HDRI values for LevelImageChannel() method.</li>
-<dt>2010-04-12 6.6.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> For HSL to RGB, if color temperature is less than 0, set RGB to lightness.</li>
- <li> Do not flip BMP image with negative height when pinging.</li>
-<dt>2010-04-08 6.6.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve support for device link profiles.</li>
-<dt>2010-04-06 6.6.1-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed bug in -auto-level for special case when only one value is present in some channel of the image. In this case no 'stretch is performed, just as -normalize does.</li>
-<dt>2010-04-05 6.6.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> WMF support under Windows does not produce the same results as under Linux.</li>
-<dt>2010-03-31 6.6.1-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed bug in equal-size tile cropping, when image has a page offset.</li>
-<dt>2010-03-31 6.6.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> The -recolor 4x4 matrix is now interpreted properly (previously it summed rather than attenuating the alpha channel).</li>
- <li> Support writing 1-bit PSD images.</li>
- <li> Support LCMS 2.0.</li>
- <li> Improved WMF support under Windows.</li>
-<dt>2010-03-30 6.6.1-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The new coders/png.c was failing to read a 1-bit paletted image properly.</li>
- <li> Finished eliminating the deprecated direct references to members of the png_info structure. ImageMagick can now be built with libpng-1.5.</li>
-<dt>2010-03-21 6.6.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Respect the -density option when rendering a Postscript or PDF image.</li>
- <li> Distort barrel no longer complains when 3 arguments are given (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=15883).</li>
- <li> Support -direction left-to-right option for rendering text</li>
-<dt>2010-03-24 6.6.0-9 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> coders/png.c: Eliminated support of libpng versions older than 1.0.12.</li>
- <li> Relocated the new, misplaced png_get_rowbytes() call.</li>
- <li> Updated setjmp/longjmp/jmpbuf usage to work with libpng-1.5.</li>
-<dt>2010-03-21 6.6.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Windows does not support complex.h (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=15808).</li>
- <li> Add support for monochrome PSD images.</li>
- <li> VignetteImage() no longer crashes when x and y arguments are both greater than half the width (x) and height (y) of the image.</li>
-<dt>2010-03-20 6.6.0-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Eliminated some of the deprecated direct references to members of the png_info structure. This must be finished before we can build with libpng-1.5.</li>
-<dt>2010-03-18 6.6.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> The animate program no longer loops twice when -loop 1 is specified.</li>
- <li> The caption format would sometimes hang when the text was not UTF-8.</li>
- <li> Don't gamma correct log to linear color conversion unless the -gamma is specified (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=15799).</li>
-<dt>2010-03-17 6.6.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Detect CMYKProcessColor AI tag.</li>
- <li> Delete image from command line cache for -write option.</li>
-<dt>2010-03-13 6.6.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the Adobe Large Document format.</li>
- <li> Recognize -remap option for the mogrify utility.</li>
- <li> The default Helvetica font is not always available, check for Century Schoolbook too (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=15780).</li>
-<dt>2010-03-11 6.6.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Permit user to get virtual pixels with a region width of 0.</li>
- <li> Reformulate the jinc() function so that the main peak is of amplitude of 1.</li>
- <li> Resampling filter must respect the image virtual pixel method.</li>
-<dt>2010-03-07 6.6.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> The -evaluate-sequence option behaves like -evaluate except it operates on a sequence of images.</li>
-<dt>2010-03-05 6.6.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the -maximum and -minimum options.</li>
-<dt>2010-02-27 6.6.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Check to see if ICON image width /height exceeds that of the image canvas.</li>
- <li> Set the DPX descriptor to Luma only if the image type is not TrueColor.</li>
- <li> Add support for -fx airy(), j0(), j1(), jinc(), and sinc() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=15685). Anthony, review these for correctness.</li>
- <li> Don't embed an XMP profile in an EPS image for now.</li>
-<dt>2010-02-21 6.6.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Insufficient image data in EPT is a warning rather than an error.</li>
- <li> Respect -type TrueColor when writing gray DPX images.</li>
- <li> Fix problem reading 10-bit grayscale DPX images when scanline length is not a multiple of 3.</li>
- <li> BMP has an alpha channel, it was treated as an opacity channel.</li>
-<dt>2010-02-20 6.5.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Write 10-bit grayscale DPX images properly.</li>
-<dt>2010-02-18 6.5.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Detect PDF ICCBased colorspace.</li>
-<dt>2010-02-18 6.5.9-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Finalized -set option:convolve:scale kernel normalize/scale option</li>
-<dt>2010-02-16 6.5.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> TransformImage() resets the image blob when called in the PICT decoder; use SetImageExtent() instead.</li>
-<dt>2010-02-14 6.5.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Support PSD RLE compression.</li>
-<dt>2010-02-13 6.5.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> The jpeg:extent define sometimes exceeded the specified limit.</li>
-<dt>2010-02-09 6.5.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Resolve "too many open files" (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=15546).</li>
-<dt>2010-02-08 6.5.9-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added Correlate method which does a Convolve without reflecting the kernel.</li>
-<dt>2010-02-07 6.5.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Initialize grayscale colormap for PSD images.</li>
-<dt>2010-02-07 6.5.9-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Final testing and fixing of basic morphology operators</li>
- <li> Addition Third-level Subtractive Morphology Methods: EdgeIn, EdgeOut, Edge, TopHat, BottomHat</li>
- <li> Ensuring original kernels passed to morphology are cloned before being modified for use by specific methods (EG: convolve scale/normalize)</li>
-<dt>2010-02-03 6.5.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> display -immutable to display transparent image without a checkboard.</li>
-<dt>2010-01-27 6.5.9-1 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Make -define png:color-type less persnickity about what it will accept.</li>
-<dt>2010-01-24 6.5.9-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> added use of -precision in 'showkernel' output of -morphology</li>
- <li> correct use of a 'reflected kernel' for 'Convolve' 'Dilate' and 'Distance' Morphology primitives. This does not have a performance hit, though is only truely applicable when the kernel is asymmetric. Note that 'Erode' does not use a 'reflected' kernel, so that 'Open' and 'Close' operations work properly. This 'reflected usage is defined by online morphology lecture notes (Google for "EECE Binary Morphology")</li>
- <li> Added convolve kernel scaling setting "-set option:convolve:scale N" If undefined morphology convolve does not do any scaling or normalization of the convolution kernel. A value of 0.0 causes normalization for both zero and non-zero (added weights) kernel types.</li>
-<dt>2010-01-15 6.5.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Speed up reading the PSD image format.</li>
- <li> Add the -precision option. Use it to set the maximum number of significant digits to be printed.</li>
- <li> Add -features option to the identify program to display channel features.</li>
- <li> Add -unique option to the identify program to display channel features.</li>
-<dt>2010-01-01 6.5.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for compact floating point (i.e. -depth 16 -define quantum:format=floating-point).</li>
- <li> Transparent images no longer flicker on certain system when using the display program.</li>
- <li> Permit interactive resizing with the display program.</li>
- <li> Support heterogeneous distributed processing, see http://www.imagemagick.org/www/architecture.html#distributed.</li>
- <li> Fix semaphore assertion when reading a corrupt image with Magick++.</li>
- <li> Add support for -brightness-contrast option.</li>
-<dt>2010-01-05 6.5.9-0 Stephan Menzel <stephan.menzel@gmail...></dt>
- <li> Add support for the BGRA raw image format.</li>
-<dt>2010-01-04 6.5.9-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added Kernel Generator to generate kernels from user strings, which allows the generation in many built in kernels for both Convolution and other Morphological methods. New Kernels currently include.. Convolution: Gaussian, Blur, Comet Morphological: Rectangle, Square, Diamond, Disk, Plus Distance: Chebyshev, Manhatten, Knight, Euclidean And both old and new (rectangular) user defined kernel specifications including the use of 'nan' to represent elements which are not part of the kernel definition. List built-in kernel types use "-list kernel"</li>
- <li> Added -morphology {method}[:{iteration}] {kernel_string} Initial methods includes no only the basic morphology methods: Dilate, Erode, Open, Close; and a pixel color preserving 'Intensity' version, but also the special methods: Convolve, and Distance. Of course the appropriate kernel should be provided for each specific method.</li>
-<dt>2010-01-01 6.5.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add OpenCL-enabled filter (e.g. convert image.png -process "convolve '-1, -1, -1, -1, 9, -1, -1, -1, -1'" image.jpg).</li>
- <li> Added StringTo...() processing functions</li>
-<dt>2009-12-27 6.5.8-9 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added MxN tile cropping with overlapping and space handling. See IM Examples, Cutting and Bordering, Cropping roughly Equal</li>
-<dt>2009-12-23 6.5.8-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> angle bug fix in variable blur composition with vertical ellipses</li>
- <li> Added ability to have variable angles for ellipses in variable blur composition. See IM Examples, Composition, Variable Blur for details</li>
-<dt>2009-12-20 6.5.8-8 Cristy <quetzlzacatenango@image...></dt>
- <li> JPEG does not grok the HSL colorspace.</li>
-<dt>2009-12-18 6.5.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Off by 1 error when allocating the dash-pattern array in PerlMagick.</li>
- <li> The -gaussian-blur over blurred the opacity channel (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=15218).</li>
-<dt>2009-12-13 6.5.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Declare InverseFourierTransformImage in Magick++/Include.h.</li>
-<dt>2009-12-09 6.5.8-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> The PNG8 encoder would fail to write a 1-color image, due to a bogus MagickFail return from CompressColormapTransFirst().</li>
-<dt>2009-12-05 6.5.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> SVG images are no longer double sized with the -density option.</li>
-<dt>2009-12-04 6.5.8-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Changed the one instance of PNG_COLOR_TYPE_RGBA to PNG_COLOR_TYPE_RGB_ALPHA in coders/png.c</li>
-<dt>2009-12-03 6.5.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> It's interword-spacing, not interword_spacing (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=1515).</li>
- <li> All JP2 depths (e.g. 4, 10, 12, 16) are now supported properly.</li>
-<dt>2009-11-28 6.5.8-2 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Changed the one remaining ping_info->trans to ping_info->trans_values in coders/png.c</li>
-<dt>2009-11-26 6.5.8-1 Chris Madison <madisonblu@gmail...></dt>
- <li> Eliminate bogus 'skip to sync byte' exception for PCD image format.</li>
- <li> -threshold option: threshold to white if the computed intensity of the color channels exceeds the threshold.</li>
- <li> Add -define jpeg:extent option to restrict the maximum JPEG image file size.</li>
-<dt>2009-11-26 6.5.8-1 Dr. Ingo Bremer <bremer@wias-...></dt>
- <li> Escape single quote in when writing the UIL format.</li>
-<dt>2009-11-25 6.5.8-1 Jee Teck <jee.teck@cteca...></dt>
- <li> The mogrify program +opaque option now recognizes its required argument.</li>
-<dt>2009-11-19 6.5.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add magick/morphlogy.{c,h} source templates.</li>
- <li> Sync image option when reading MPR images.</li>
- <li> Optimize ping for SVG images.</li>
- <li> SetLogFormat() no longer causes crash (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=15091).</li>
- <li> Do not call MagickCoreTerminus() when memory allocation fails inside the locale component.</li>
-<dt>2009-11-18 6.5.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Read / write 32-bit SUN raster images with a odd width.</li>
- <li> Cairo format returns pixels with the alpha premultiplied (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=15081).</li>
-<dt>2009-11-12 6.5.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Thumb::URI file URI now has the correct number of forward slashes.</li>
-<dt>2009-11-09 6.5.7-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Suppress libpng pedantic warnings and warn about using old libpng-1.4.0 beta versions.</li>
-<dt>2009-11-09 6.5.7-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Bump library age.</li>
- <li> Restore -tile-offset functionality (bug report from Anthony).</li>
-<dt>2009-11-06 6.5.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Animate command line options are no longer ignored.</li>
-<dt>2009-11-04 6.5.7-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Bug Fix for Polynomial distortion. which is now working.</li>
-<dt>2009-11-01 6.5.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Use -define delegate:bimodal=true to activate any bimodal delegates.</li>
- <li> Make sure MagickWand semaphore is acquired before locking it.</li>
-<dt>2009-10-28 6.5.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Convert SVG clipping path points from unsigned to long.</li>
-<dt>2009-10-26 6.5.7-2 Chris Madison <madisonblu@gmail...></dt>
- <li> Only call InstantiateXComponent() if X11 support is included.</li>
- <li> Correct hue computation for the HSB colorspace.</li>
-<dt>2009-10-23 6.5.7-1 Samuel Thibault <samuel.thibault@ens-l...></dt>
- <li> Braille coder fix for DirectClass images</li>
-<dt>2009-10-19 6.5.7-1 Wang Dataton <wang@datat...></dt>
- <li> Use fdopen() rather than MagickOpenStream() in coders/pict.c.</li>
-<dt>2009-10-18 6.5.7-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Alpha blending is not required for ScaleImage().</li>
- <li> Gaussian noise operator is not longer discontinuous.</li>
-<dt>2009-10-14 6.5.7-0 Pino Toscano <pino@kde...></dt>
- <li> ImageMagick fails to build in GNU/HURD due to absence of PATH_MAX.</li>
-<dt>2009-10-14 6.5.7-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Black channel is now set properly when resizing CMYKA images.</li>
-<dt>2009-10-10 6.5.7-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Bug Fixes for degenerate 'affine' cases of BilinearForward distortion.</li>
-<dt>2009-10-06 6.5.6-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Declare the MagickCore method SpliceImage() in Magick++/Include.h.</li>
- QueueCacheViewAuthenticPixels() for the CopyComposite optimization.<dt>2009-10-04 6.5.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Use GetCacheViewAuthenticPixels() rather than</li>
- <li> QueueCacheViewAuthenticPixels() for the CopyComposite optimization.</li>
-<dt>2009-10-03 6.5.6-8 Nick Wellnhofer <wellnhofer@aevum...></dt>
- <li> Add missing libraries to the LIBADD entries in coders/Makefile.am, filters/Makefile.am and wand/Makefile.am.</li>
- <li> Use LIBS rather than LDFLAGS in configure.ac for the Freetype delegate library.</li>
-<dt>2009-10-01 6.5.6-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't use group4 compression if the image is truecolor.</li>
- <li> If image is gray, write grayscale DPX images.</li>
- <li> We no longer lose a scanline when reading multi-frame raw images (Y, R, C, etc.).</li>
- <li> Properly update the EXIF orientation tag.</li>
-<dt>2009-09-25 6.5.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Permit percentage of hue for HSL (e.g. hsl(12%,...)).</li>
-<dt>2009-09-25 6.5.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -clamp option.</li>
- <li> Patch for IsMagickColorEqual() for HDRI.</li>
- <li> Permit non-percentage HSL colors (e.g. hsl(12.6316,134.58339,219.00012)).</li>
-<dt>2009-09-25 6.5.6-5 Elf <elf@ephem...></dt>
- <li> Patch to fix configure's framework's undefinedness (only if the gslib tests are run).</li>
-<dt>2009-09-22 6.5.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't compile Huffman2DEncodeImage() unless the TIFF delegate library is enabled.</li>
- <li> Hue in hsl() format is 0-360 and does not use %.</li>
-<dt>2009-09-21 6.5.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Deprecate LevelImageColors(), replace with LevelColorsImage().</li>
-<dt>2009-09-17 6.5.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Optimize copy composite operator.</li>
-<dt>2009-09-15 6.5.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Use -define jpeg:size to scale a JPEG image to the specified size.</li>
-<dt>2009-09-13 6.5.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix ICON alpha mask scanline pad.</li>
-<dt>2009-09-11 6.5.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Return the global maximum threads to avoid the rare cache view assertions.</li>
- <li> Throw an end-of-file exception for truncated raw gray images.</li>
-<dt>2009-09-10 6.5.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not include last line of text in the interline spacing computation.</li>
-<dt>2009-09-07 6.5.5-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Check that quantum_info is defined before destroying it in the PNG coder.</li>
- <li> Add -interline-spacing option to convert.</li>
-<dt>2009-09-03 6.5.5-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Support multi-page transparent Postscript and PDF.</li>
-<dt>2009-09-01 6.5.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> A union is required when converting a thread ID to an unsigned long.</li>
-<dt>2009-08-28 6.5.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for TIFF 3.9.1.</li>
-<dt>2009-08-27 6.5.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Validate with the netscape: reference image.</li>
-<dt>2009-08-26 6.5.5-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory leak for threaded PerlMagick scripts.</li>
-<dt>2009-08-24 6.5.5-2 Cristy <quetzlzacatenango@image...></dt>
- <li> SVG compile error when if MAGICKCORE_CAIRO_DELEGATE is not defined.</li>
-<dt>2009-08-23 6.5.5-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Bug Fix for transparency handling in Composite Variable Blur</li>
- <li> Addition of -auto-level and -auto-gamma image enhancements (under trial not yet final)</li>
- <li> Addition of a special -channel flag 'sync' which means that the specified channels are to be modified together by the same amount. The flag is enabled by default. This replaces the current 'channels not modified' type handling thought IM.</li>
- <li> Modified -channel parsing to continue looking for words, after handling any shorthand channel options. For example: -channel RGB,sync</li>
-<dt>2009-08-10 6.5.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> identify -format %c logo.png returns the image comment as expected.</li>
- <li> Clone ImageInfo members scene and number_scenes (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=14437).</li>
- <li> Fix memory leak with the -remote option of the animate program (bug report from Anthony).</li>
- <li> If a grayscale TIFF image has a colormap write it as a colormapped image.</li>
- <li> MVG partial opacity not set properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=6&t=14442).</li>
- <li> Black channel was not blurring properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=14473).</li>
-<dt>2009-08-06 6.5.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> The display program honors -loop.</li>
- <li> (ab) of Lab colorspace was not offset correctly.</li>
- <li> Scale mag/phase and real/imaginary the same for HDRI and non-HDRI builds.</li>
- <li> SVG permits multiple arc paths with an omitted 'A' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=6&t=14377).</li>
- <li> The 'skewY' MVG attribute produced incorrect angles (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=6&t=14144).</li>
-<dt>2009-08-02 6.5.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Optimize GammaImage() method.</li>
-<dt>2009-08-02 6.5.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> OpenMP-enable GetSimilarityMetric().</li>
-<dt>2009-07-30 6.5.4-7 Bernhard Rosenkraenzer <bero@arkli...></dt>
- <li> Structure trans_values was renamed to trans_color and trans was renamed to trans_alpha in PNG version 1.4.</li>
-<dt>2009-07-29 6.5.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Replace color blending in DrawGradientImage() to use Composite Blend. this makes Gradients handle transparency correctly!</li>
-<dt>2009-07-28 6.5.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> The -thumbnail option no longer removes color profiles (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=14312).</li>
- <li> Do not scale real / imaginary FFT / IFT.</li>
- <li> Check for localtime() NULL return.</li>
- <li> import --help requires an X server (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=14323).</li>
- <li> Fails to load MS Windows icons with compressed PNG elements (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=14324).</li>
-<dt>2009-07-25 6.5.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Support the new JPEG version 7 delegate library.</li>
-<dt>2009-07-24 6.5.4-6 Alexander E. Patrakov <patrakov@gmail...></dt>
- <li> Incorrect use of setjmp in coders/png.c.</li>
-<dt>2009-07-23 6.5.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> We broke -scene when we fixed the -dispose option. Try again.</li>
-<dt>2009-07-21 6.5.4-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Update autoconf support files.</li>
- <li> More than one -dispose setting overwrote previous settings (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=14252).</li>
- <li> Don't use JPEG's color reduction algorithm for less than 8 colors.</li>
-<dt>2009-07-13 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Final testing and bug fixes for all mathematical compose methods Including non-overlapping regions bugs found in in operators Divide, ColorDodge, VividLight. And the handling of transparency to follow standard 'Over' Blending in Divide. Only math methods not looked at are the addition methods Plus, Add, Minus, and Subtract, which do not follow normal 'Over' alpha blending behaviour, for the purposes of mask handling.</li>
-<dt>2009-07-12 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Addition of user definable 'Mathematics' compose method -compose Mathematics -set option:compose:args A,B,C,D -composite Will implement the formula f(Sc,Dc) = A*Sc*Dc + B*Sc + C*Dc + D this lets you implement most smooth polynomial compose methods. (requested by Fred WienHaus)</li>
-<dt>2009-07-11 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Finished the recoding of Composite methods to allow easier debugging and faster access.</li>
- <li> Added PegtopLight compose method as an alternative simpler Softlight alternative. See notes and comparison to SoftLight in... http://www.pegtop.net/delphi/articles/blendmodes/softlight.htm</li>
- <li> From the notes on Photoshop blend modes at http://www.simplefilter.de/en/basics/mixmods.html Added extra composition modes: VividLight, PinLight, LinearBurn, LinearDodge NOTE: 'LinearBurn' the same as 'Plus' but with the normal 'Over' blending.</li>
-<dt>2009-07-10 6.5.4-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Re-coding of Composite methods HardLight, SoftLight, Overlay, LinearLight, ColorBurn, ColorDodge, Multiply, Screen to make it more readable, easier to debug, and directly comparable to SVG specifications.</li>
- <li> Specifications changed for SoftLight, ColorBurn, ColorDodge Though only SoftLight changed to significantly.</li>
- <li> However implementation errors were found for ColorBurn, LinearLight</li>
-<dt>2009-07-01 6.5.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Add -blue-shift option.</li>
- <li> Add compression flag for each channel of a PSD layer.</li>
- <li> Implement experimental forward and inverse Fourier transforms (contributed by Sean Burke and Fred Weinhaus). The -fft / -ifft option is not ready for prime time just yet.</li>
- <li> Support -cdl (color decision list) option.</li>
- <li> Don't process directories as filenames when using wildcard paths (i.e. logo[1]/png).</li>
-<dt>2009-07-01 6.5.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Can't bit shift a float.</li>
-<dt>2009-06-25 6.5.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Off by one error for multi-frame raw grayscale images.</li>
- <li> Can't stat() a Zip or Bzip opaque structure.</li>
- <li> DPX user bits are no longer truncated.</li>
- <li> Return image colorspace for -format [%colorspace] option.</li>
- <li> ThumbnailImage(): don't subsample if image is already thumbnail size.</li>
-<dt>2009-06-23 6.5.4-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Automatic determination of B from C and C from B for a 'Keys Filter' when using the B,C Cubic Filter Expert options was broken. See http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=14037</li>
-<dt>2009-06-19 6.5.4-0 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added -compose 'Blur', variable blur mapping to CompositeImages Arguments X_scale x Y_scale + angle of the blurring ellipse.</li>
- <li> Added "-blur" special compose option to "composite"</li>
- <li> Cleanup of "composite" compose argument handling</li>
-<dt>2009-06-18 6.5.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Clone pixel cache when cloning image to prevent RMagick semaphore lock.</li>
- <li> Set compare similarity image to NULL to prevent double free.</li>
-<dt>2009-06-16 6.5.3-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Set camera formats to require a seekable stream.</li>
- <li> Do not let display program image window exceed the screen size.</li>
-<dt>2009-06-14 6.5.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve FITS keyword parser.</li>
-<dt>2009-06-14 6.5.3-7 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Cleanup of compose 'displace' of old useless code that is not used.</li>
- <li> Implement a compose 'distort' mapping method, This is basically exactly like 'displace' but relative to a fixed point which may be user supplied as +X+Y</li>
- <li> Default scaling to width/2 and height/2 of overlay (100% scale) with a distortion 'center' to the middle of the overlay image</li>
- <li> If a '%' flag given scale displacement relative to image size</li>
- <li> If a '!' flag given make scale and center relative to 'background' image instead of the overlay map.</li>
- <li> If no 'height' scale given, use the X scale.</li>
-<dt>2009-06-13 6.5.3-6 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed bug for compose methods, Hue, Saturate, Luminize</li>
-<dt>2009-06-11 6.5.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Report the correct transparent pixel values in the display program magnify windows.</li>
- <li> Do not advance when finalizing image settings in the mogrify program.</li>
-<dt>2009-06-11 6.5.3-5 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed "convert" to merge the third 'mask' image into the 'source' image for correct handling of 2 dimensional -compose "displace".</li>
- <li> Fixed PerlMagick Composite() for the same thing.</li>
- <li> Modified compose "Displace" so displacement image's alpha channel can be used to mask the transparency of the overlay area.</li>
-<dt>2009-06-07 6.5.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Added the HALD image Color LUT, and a no-op HALD: image generator. See Introduction at http://www.quelsolaar.com/technology/clut.html</li>
-<dt>2009-06-07 6.5.3-4 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Changed CompositeImageChannel() so that extra compose arguments are now passed in the ImageArtifact "compose:args". This can be assigned to images using -set "option:compose:args" 'args' where args are defined using 'geometry' style or 'comma separated numbers'.</li>
- <li> Declared the special flag needed for Composite Tiling as the ImageArtifact "compose:outside-overlay".</li>
- <li> Documentation update for CompositeImageChannel() in Core Library to reflect these changes.</li>
- <li> Documentation update for DistortImage() in Core Library with the extra ImageArtifact controls it can use.</li>
- <li> Bug correction in normalization of GetOptimalKernelWidth2D() of gem.c</li>
-<dt>2009-06-06 6.5.3-3 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Documentation update for CompositeImageChannel() in Core Library. This adds the information on how extra compose arguments needed for specific compose methods are actually passed to the library function. Compose methods such as Blend, Dissolve and Displace.</li>
-<dt>2009-06-01 6.5.3-3 Priya Hariharan <priya.hariharan@globa...></dt>
- <li> The target profile in ProfileImage() is no longer accessed after it is freed.</li>
-<dt>2009-06-01 6.5.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Bug fix for -page.</li>
-<dt>2009-05-31 6.5.3-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Minor change to -function Arctan to make first argument match slope</li>
-<dt>2009-05-29 6.5.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not treat -page as a global option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13864).</li>
-<dt>2009-05-28 6.5.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Create thread set for pseudo-random number generator.</li>
-<dt>2009-05-25 6.5.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not change opacity value for the -alpha background option.</li>
- <li> Rebuild automake / autoconf scripts.</li>
-<dt>2009-05-23 6.5.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Check for XMakeImage() integer overflow vulnerability (Secunia Advisory SA35216).</li>
-<dt>2009-05-23 6.5.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Permit reading a specific frame of a multi-page TIFF with blobs.</li>
-<dt>2009-05-22 6.5.2-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Added new -function methods Arcsin and Arctan</li>
-<dt>2009-05-19 6.5.2-8 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Fixed a regression with PNG8: format.</li>
-<dt>2009-05-19 6.5.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> The -geometry option was improperly applied twice.</li>
-<dt>2009-05-18 6.5.2-6 Richard Oehlinger <richard.oehlinger@celum...></dt>
- <li> Set image colorspace to YCbCrColorspace if JPEG color space is JCS_YCbCr.</li>
-<dt>2009-05-14 6.5.2-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Updated help output and command-line options documentation to bring the -alpha options up to date with what's actually in the code.</li>
-<dt>2009-05-13 6.5.2-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Change "depreciated" to "deprecated" in several files.</li>
-<dt>2009-05-10 6.5.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Change OpenMP schedule from dynamic to static for RenderFreeType().</li>
- <li> Recognize unicode strings when computing caption word wrapping.</li>
- <li> New -alpha background option to set fully-transparent pixels to the background color.</li>
-<dt>2009-05-08 6.5.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Combined layer of transparent PSD image was not being read properly.</li>
-<dt>2009-05-06 6.5.2-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Progress on "-define png:bit-depth=value" and "-define png:color-type=value" It is now able to write an opaque black-and-white image in any of the 15 valid combinations of PNG color-type and bit-depth.</li>
- <li> Fixed a regression with writing sub-8-bit grayscale PNGs.</li>
-<dt>2009-05-06 6.5.2-2 Chris Madison <madisonblu@gmail...></dt>
- <li> Create 8-bit TIFF images if -depth is set to 8 and HDRI-enable ImageMagick.</li>
-<dt>2009-05-04 6.5.2-1 Chris Madison <madisonblu@gmail...></dt>
- <li> Accept file lists on the command line (e.g. echo "rose: rose.png" | convert @- ...).</li>
- <li> Duplicate line in tiff.c breaking read of zip compressed tif (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13688).</li>
- <li> Support policies to permit or deny any coder, delegate, filter, or file path (see policy.xml).</li>
-<dt>2009-05-02 6.5.2-0 Chris Madison <madisonblu@gmail...></dt>
- <li> The mogrify -crop option returns multiple images if an x/y offset is not specified (e.g. -crop 100x100).</li>
- <li> Generate a proper file path for -path @filelist.txt (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=13671).</li>
-<dt>2009-05-01 6.5.2-0 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Accept "-define png:bit-depth=value" and "-define png:color-type=value" options. This is work-in-progress with the objective of being able to precisely specify the type of PNG file to be written. The previously-used internal attribute "png:bit-depth" that was used to communicate between the PNG writer and the JNG writer is changed to "png:bit-depth-written". This feature needs testing. It is important to note that this feature cannot be used to force the PNG to use a bit-depth or color-type that does not losslessly represent the image. You can, however, cause the writer to use a larger depth or to use the RGB colorspace when grayscale or indexed would have been sufficient.</li>
-<dt>2009-05-01 6.5.1-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fixed the Rmin usage in Depolar and Polar distortions</li>
- <li> The 6th argument (Ato) for Polar/Depolar is now optional and defaults to Afrom + 360 degrees (or a fill circle from the given start angle)</li>
-<dt>2009-04-30 6.5.1-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not return a black image for -channel RGBA -gaussian (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13669).</li>
-<dt>2009-04-28 6.5.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix 'conflicting types for Huffman2DEncodeImage' compile exception.</li>
-<dt>2009-04-25 6.5.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Generate BMP 32-bit ARGB format for images with transparency (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13633).</li>
-<dt>2009-04-24 6.5.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Grok 'image.psd[0]' and 'image.mpg[0]' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=13609).</li>
- <li> Normalize similarity based on reconstruction not the original (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13626).</li>
- <li> Support multiple JPEG images encapsulated within DICOM.</li>
-<dt>2009-04-23 6.5.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Msys does not understand NAME_MAX.</li>
-<dt>2009-04-22 6.5.1-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Check for valid linked list before assigning next / previous pointers.</li>
-<dt>2009-04-21 6.5.1-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Check error return from CompressColormapTransFirst() in coders/png.c</li>
-<dt>2009-04-21 6.5.1-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Refrain from modifying image struct members (color, depth, matte) while writing PNG datastreams.</li>
-<dt>2009-04-21 6.5.1-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Sometimes the PNG8: format would produce 1-, 2-, or 4-bit PNG datastreams. Now it always produces 8-bit datastreams as users probably expect.</li>
-<dt>2009-04-21 6.5.1-4 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Suppressed "shadowed declaration" warnings in coders/jpeg.c and coders/png.c that are triggered by "-Wshadow" gcc compiler flag.</li>
-<dt>2009-04-17 6.5.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> The display program now returns a 0 exit code on success (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13579).</li>
-<dt>2009-04-14 6.5.1-3 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Folded some long lines and made other cosmetic changes.in coders/png.c</li>
-<dt>2009-04-13 6.5.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> MVG autodetection failing (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=13542).</li>
-<dt>2009-04-11 6.5.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Image not properly placed when displaying to the X server root (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13532).</li>
- <li> fmax() is not support on some platforms (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13533).</li>
-<dt>2009-04-11 6.5.1-2 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Rename existing "Bilinear" distortion as "BilinearReverse"</li>
- <li> Added forward mapped bilinear distort as "BilinearForward"</li>
- <li> The "Bilinear" distort is temporarily obsoleted but will eventually be added as a "BilinearReverse" and "BilinearForward" combination mapping though a unit square.</li>
- <li> Sparse Gradient internally uses "BilinearReverse" for its "Bilinear" gradient function as that method is the direct use of such equations.</li>
-<dt>2009-04-01 6.5.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Default to min-is-white Photometric for fax / group4 compression (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13468).</li>
- <li> Respect image resolution when setting PDF MediaBox (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=13350).</li>
- <li> Add SimilarityImage() to return how similar one image is to another.</li>
-<dt>2009-03-28 6.5.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Graceful exit in djvu coder when EOF is thrown.</li>
- <li> Support -unsharp option for the montage program.</li>
-<dt>2009-03-28 6.5.0-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Reduce deskew blurring: use AffineTransformImage() rather than RotateImage().</li>
- <li> Unexpected end-of-file @ xwd.c/ReadXWDImage/252 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13430).</li>
-<dt>2009-03-26 6.5.0-10 Markus Dahms <markus.dahms@progr...></dt>
- <li> Support for -density & -units options in PSD writer.</li>
-<dt>2009-03-26 6.5.0-10 Samuel Thibault <samuel.thibault@ens-l...></dt>
- <li> Fix bug in the braille coder which makes it always segfault.</li>
-<dt>2009-03-25 6.5.0-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Enhance the compare program to locate a template image within a larger image.</li>
- <li> Eliminate assertion when generating a PDF thumbnail.</li>
-<dt>2009-03-25 6.5.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix assertion in IntegralRotateImage (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13410).</li>
-<dt>2009-03-24 6.5.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Referenced counted blob incremented incorrectly in CloneImage() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13410).</li>
-<dt>2009-03-23 6.5.0-6 Chris Madison <madisonblu@gmail...></dt>
- <li> Assertion failure reading PSD image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13397).</li>
-<dt>2009-03-21 6.5.0-5 Chris Madison <madisonblu@gmail...></dt>
- <li> Change -selective-blur to use gaussian kernel.</li>
-<dt>2009-03-21 6.5.0-4 ERB <entropy@xebec...></dt>
- <li> Missing locks in blob - race condition (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13385).</li>
-<dt>2009-03-19 6.5.0-3 Chris Madison <madisonblu@gmail...></dt>
- <li> Use default SVG resolution unless resolution is explicitly set (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13373).</li>
- <li> Add support for -selective-blur option.</li>
-<dt>2009-03-19 6.5.0-3 ragesteel <iimagemagic-org-iapied0o@gt2.r...></dt>
- <li> ImageToBlob() no longer faults if Jasper compression is wrong (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13372).</li>
-<dt>2009-03-19 6.5.0-3 ERB <entropy@xebec...></dt>
- <li> Check the 8BIM profile resource block length (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13368).</li>
- <li> Unlocked read in DeleteNodeByValueFromSplayTree (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13370).</li>
-<dt>2009-03-18 6.5.0-2 ERB <entropy@xebec...></dt>
- <li> Eliminate race condition when acquiring a wand (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13357).</li>
- <li> Use of "localtime" in FormatMagickTime not thread-safe (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13358).</li>
-<dt>2009-03-18 6.5.0-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix the image compose operator at OverCompositeOP for shadows (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=13330).</li>
-<dt>2009-03-14 6.5.0-1 Paul Smedley <paul@smedl...></dt>
- <li> Patches to get ImageMagick working under OS2.</li>
-<dt>2009-03-10 6.5.0-1 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Expansion of Virtual-Pixel (Cache) handling, to include corrected Mirror, plus addition of CheckerTile, HorizontalTileEdge and VerticalTileEdge</li>
-<dt>2009-03-10 6.5.0-0 John Cupitt <jcupitt@gmail...>,</dt>
- <li> Glenn Randers-Pehrson <glennrp@image...></li>
- <li> DICOM reader not handling signed pixels properly.</li>
-<dt>2009-03-09 6.4.9-10 Alexander E. Patrakov <patrakov@gmail...></dt>
- <li> Don't call GetValueFromSplayTree() if image properties is NULL.</li>
-<dt>2009-03-09 6.4.9-10 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix minor size issue with bestfit +distort operation.</li>
- <li> Enable listing of -distort Polynomial</li>
- <li> Minor tweeks and center fixes for Polar/Depolar</li>
-<dt>2009-03-01 6.4.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Convert returns MagickFalse for the -version option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=13230).</li>
- <li> Don't set pixel opacity unless the image alpha channel is active (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13189).</li>
-<dt>2009-02-27 6.4.9-8 Anthony Thyssen <A.Thyssen@griffith...></dt>
- <li> Fix old -clut bug for re-coloring gray images using transparent and semi-transparent colors.</li>
-<dt>2009-02-22 6.4.9-7 Rick Mabry <rick.mabry@anony...></dt>
- <li> Changes have been made to scores of the files that generate the documentation. The most noticeable cosmetic changes are to the command-line examples and command-line snippets, which now have a new look: dark blue boxes with white/yellow text to indicate sample input/output. Inclusion of current version and release dates in appropriate places are now automatically generated. Also, many changes have been made to begin to bring the pages into strict W3C compliance with respect to both HTML and CSS.</li>
-<dt>2009-02-21 6.4.9-7 Chris Madison <madisonblu@gmail...></dt>
- <li> The identify program reads the image pixels when the -format option is asking for image statistics.</li>
- <li> Much improved ImageMagick validation suite (exercise with 'make check').</li>
-<dt>2009-02-18 6.4.9-5 Jon <jon@brick...></dt>
- <li> Processing the arg list -tile is replaced by -sans0 which is 1 char longer and which overwrites the allocated area.</li>
-<dt>2009-02-16 6.4.9-5 Chris Madison <madisonblu@gmail...></dt>
- <li> Add section to license to alert users to third-party licenses in the NOTICE file.</li>
-<dt>2009-02-11 6.4.9-3 Anthony <A.Thyssen@griffith...></dt>
- <li> Replaced geometry string parsing using ParseGravityGeometry() in "composite" with more direct use of GravityAdjustGeometry();</li>
-<dt>2009-02-10 6.4.9-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Support file descriptors (e.g. convert image.jpg fd:3 ...).</li>
- <li> The stream utility no longer go into an infinite loop (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=13102).</li>
-<dt>2009-02-04 6.4.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> JPEG to PDF was not always reversible (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13020).</li>
-<dt>2009-01-30 6.4.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Stroking when annotating failed for stroke widths > 2 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=13009).</li>
-<dt>2009-01-24 6.4.8-10 Cristy <quetzlzacatenango@image...></dt>
- <li> TransformImageColorspace() returns GRAYColorspace when set (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12990).</li>
- <li> Don;t assume CMYK unless document process colors include Cyan, Magenta, or Yellow.</li>
-<dt>2009-01-23 6.4.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Increase random angle range for +polaroid from -7..7 to -15..15 degrees.</li>
-<dt>2009-01-22 6.4.8-8 Anthony <A.Thyssen@griffith...></dt>
- <li> Fixed a -evaluate AddModulus 'patch' for correct 'negative' handling</li>
-<dt>2009-01-20 6.4.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Removed previous patches for -shear directions.</li>
-<dt>2009-01-20 6.4.8-8 Thomas Stegemann <Thomas.Stegemann@mater...></dt>
- <li> SVG with resolutions other than 72.0 dpi, text is no longer transformed twice.</li>
-<dt>2009-01-20 6.4.8-8 Anthony <A.Thyssen@griffith...></dt>
- <li> Renamed -evaluate methods 'sin' and 'cos' to math C math library names</li>
- <li> Added "-function polynomial a,b,c,...." Eg: a*x^2 + b*x + c</li>
- <li> Added "-function sinusoid freq,phase,amplitude,bias (all optional)</li>
-<dt>2009-01-18 6.4.8-7 Anthony <A.Thyssen@griffith...></dt>
- <li> Removed "annotate" patches, which causes no end of problems. Original coding worked perfectly fine. Annotate isn't part of SVG!</li>
-<dt>2009-01-18 6.4.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Respect mouse wheel movements for display program (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=12938).</li>
- <li> Grab button in Display Open menu now works consistently (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12942).</li>
- <li> Patch for problem with opacity in MVG (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12946).</li>
-<dt>2009-01-14 6.4.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't accept discontinuous shear angles for the -annotate option. -- REMOVED</li>
-<dt>2009-01-14 6.4.8-6 Mark Freeman <mark.freeman@porci...></dt>
- <li> Apply patch so ImageMagick compiles with Visual Studio 6.</li>
-<dt>2009-01-12 6.4.8-5 Alexander E. Patrakov <patrakov@gmail...></dt>
- <li> Fix small memory leak on truncated PNG images.</li>
- <li> Do not allocate pixels when pinging a PNG image.</li>
-<dt>2009-01-11 6.4.8-6 Chris Madison <madisonblu@gmail...></dt>
- <li> Set the stroke opacity for "opacity" SVG element (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10594).</li>
-<dt>2009-01-10 6.4.8-5 Matthew Litwin <mlitwin@sonic...></dt>
- <li> Convert to windows .ico format no longer inverts alpha channel.</li>
-<dt>2009-01-10 6.4.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Interpret geometry correctly for negative angles (-shear 30x-10).</li>
-<dt>2009-01-08 6.4.8-4 Eberhard Mattes <eberhard.mattes@web.d...></dt>
- <li> Fix GetMagickToken() to accept locales that use "," as radix character.</li>
-<dt>2009-01-08 6.4.8-4 Anthony <A.Thyssen@griffith...></dt>
- <li> Add (and Fix) -evaluate methods Sine, Cosine, AddModulus</li>
-<dt>2009-01-05 6.4.8-4 Rick Mabry <rick.mabry@anony...></dt>
- <li> Check for negative offsets (bevel widths) for the -frame option.</li>
-<dt>2009-01-04 6.4.8-4 Alexander E. Patrakov <patrakov@gmail...></dt>
- <li> Patch for a memory leak and a logical bug in coders/gif.c.</li>
- <li> CopyMagickString() now returns the minimum of the source string length or the length parameter.</li>
- <li> Properly set alpha channel in PNGs with palette and tRNS.</li>
-<dt>2009-01-01 6.4.8-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Support %[] embedded filename tag (e.g. convert rose: -set area "%wx%h" 'rose-%[area].png').</li>
- <li> Do not set the fill element when 'opacity' is set (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10594).</li>
- <li> Restore support for decoding the DVI format.</li>
- <li> Add perl and math lib reference to PerlMagick Makefile (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12840).</li>
- <li> Fix crash on invalid JPEG XML profile.</li>
- <li> Export libtool symbols in MagickCore.sym and MagickWand.sym.</li>
- <li> Support sine and cosine as arguments to the -evaluate option.</li>
-<dt>2008-12-31 6.4.8-4 Amartyo Banerjee" <amartyo@gmail...></dt>
- <li> Calculate the kurtosis and skewness of image channels (reference http://amartyosscrapbook.blogspot.com/2008/12/formulas-used-to-calculate-kurtosis-and.html).</li>
-<dt>2008-12-28 6.4.8-4 Rick Mabry <rick.mabry@anony...></dt>
- <li> Patch magick/display.c and PerlMagick/ContrastStretchImage() to return the same results as the -contrast-stretch option.</li>
- <li> ContrastStretchImageChannel() no longer interpreted as Contast() by MogrifyRegion() in PerlMagick.</li>
-<dt>2008-12-28 6.4.8-3 Rick Mabry <rick.mabry@anony...></dt>
- <li> Reverse argument and option in Throw*InvalidArgumentException() macro for proper exception message.</li>
- <li> Recognize negative geometries for -shear and -annotate (.e.g. 45x-30).</li>
- <li> Fix Y shear angle for -shear option.</li>
-<dt>2008-12-26 6.4.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Use GetImageArtifact() to retrieve -attenuate option value for +noise.</li>
- <li> Support reading FITS test files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12799).</li>
- <li> Replace input.ttf with the public domain Tuffy.ttf font.</li>
- <li> MagickNewImage() no longer faults when parameters are incorrect (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12817).</li>
- <li> Allocate strings returned by XGetResourceInstance() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12818).</li>
- <li> The -append gravity is relative to the container (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=12821).</li>
-<dt>2008-12-19 6.4.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Reference cache rather than acquiring when cloning an image.</li>
-<dt>2008-12-19 6.4.8-0 Cashish Kulkarni <ashkulz@redif...></dt>
- <li> Cross-compilation failure using MinGW on Linux for ImageMagick trunk</li>
-<dt>2008-12-19 6.4.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add -interword-spacing option to convert.</li>
- <li> Initialize the black channel when testing the CMY colorspace (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12685).</li>
- <li> remove calls to exit() in MagickWand (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=12772).</li>
- <li> Validate -affine arguments.</li>
- <li> Accept -attenuate as an option for convert.</li>
- <li> Properly create RGBA image if colormapped image has transparency.</li>
- <li> Support X11 geometry like this: +-4+-4; weird but X11 supports it.</li>
-<dt>2008-12-17 6.4.7-10 Chris Madison <madisonblu@gmail...></dt>
- <li> Fix off-by-one problem with -shear.</li>
- <li> Clone pixel cache method when cloning an image.</li>
-<dt>2008-12-16 6.4.7-9 Anthony <A.Thyssen@griffith...></dt>
- <li> Make "-layers Coalesce" work as it should.</li>
-<dt>2008-12-16 6.4.7-9 Sam Fisher <fisher@image...?</dt>
- <li> Support > 2GB TIFF under Windows.</li>
-<dt>2008-12-12 6.4.7-8 mootools <help@mooto...></dt>
- <li> FormatMagickTime() checks to ensure the provided time is valid.</li>
-<dt>2008-12-12 6.4.7-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Add -kerning option to convert.</li>
- <li> Remove halo effect for the -scale option.</li>
-<dt>2008-12-11 6.4.7-7 Alan Wright <alanwright.atex@google...></dt>
- <li> Fix a 1 byte overrun in Postscript coder.</li>
-<dt>2008-12-10 6.4.7-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix small memory leak in ExpandFilenames().</li>
-<dt>2008-12-09 6.4.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix small memory leak in LoadLocaleList().</li>
- <li> Fix small memory leak in GetProfilesFromResourceBlock().</li>
- <li> Don't forget to scale grayscale values when quanum min-is-white is set.</li>
-<dt>2008-12-08 6.4.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Include delegate libraries in MagickCore-config script.</li>
-<dt>2008-12-07 6.4.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix off-by-one error for -chop 0x50%.</li>
- <li> Performance improvement bilinear interpolation.</li>
-<dt>2008-12-06 6.4.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Support absolute paths in the include directive within a configuration file.</li>
-<dt>2008-12-05 6.4.7-1 Chris Madison <madisonblu@gmail...></dt>
- <li> Assume Log colorspace if DPX transfer is LogarithmicColorimetric.</li>
- <li> Another attempt at properly extracting the IPTC profile from a 8BIM resource block.</li>
-<dt>2008-12-04 6.4.7-1 Anthony <A.Thyssen@griffith...></dt>
- <li> AppendImage() re-written to respect gravity properly! Routine simplified to a single loop for both styles of append</li>
-<dt>2008-12-03 6.4.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> AppendImage() respects gravity.</li>
- <li> Protect against circular image list when cropping.</li>
- <li> The index variable must be long rather than unsigned long for the DCM coder.</li>
-<dt>2008-12-02 6.4.6-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Use ScaleQuantumToMap() to prevent fault in SetGrayscaleImage() when quantum depth is 32.</li>
-<dt>2008-12-01 6.4.6-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Global replaced accidentally renamed MagickGetImagePixelColor().</li>
-<dt>2008-11-29 6.4.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed transient bug in the -white-threshold option.</li>
- <li> -extent x256+100+100 no longer returns an exception (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=7&t=12583).</li>
-<dt>2008-11-27 6.4.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> TIFF pad is relative to bits-per-sample (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=12563).</li>
-<dt>2008-11-27 6.4.6-5 Koshiji Masayuki <kosiji.masayuki@da.mi...></dt>
- <li> Support GBR raw image files.</li>
-<dt>2008-11-26 6.4.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> DPX 10 bit YUV 4:2:2 are now processed properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=12443).</li>
- <li> Default PDF compression to that of the image unless overwritten by the -compress option.</li>
-<dt>2008-11-25 6.4.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Numerous pixel cache improvements including embedded support for OpenMP in a transparent manner.</li>
-<dt>2008-11-20 6.4.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Transient bug in encipher / decipher operation (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12540).</li>
-<dt>2008-11-14 6.4.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> MPC image files working again.</li>
- <li> coders/wmf.c/lite_font_stringwidth() returns string width (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12528).</li>
-<dt>2008-11-10 6.4.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix temporary file leak.</li>
-<dt>2008-11-18 6.4.5-9 Koshiji Masayuki <kosiji.masayuki@da.mi...></dt>
- <li> Fix bug for RGBO image @ line, plane and partition interlace.</li>
-<dt>2008-11-18 6.4.5-9 Chris Madison <madisonblu@gmail...></dt>
- <li> Deprecate pixel methods: AcquireImagePixels(), GetImagePixels(), etc.</li>
- <li> New pixel methods: GetVirtualPixels(), GetAuthenticPixels(), etc.</li>
-<dt>2008-11-15 6.4.5-7 Alexander E. Patrakov <patrakov@gmail...></dt>
- <li> GPS and multivalued EXIF properties support</li>
-<dt>2008-11-14 6.4.5-6 Manish Aggarwal <manish@circu...></dt>
- <li> Add TransparentPaintImageChroma() to MagickCore and transparentChroma() to Magick++.</li>
-<dt>2008-11-10 6.4.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Correct DPX frame position property label (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12440).</li>
- <li> Textures are no longer painted as the background color.</li>
- <li> Update both fields of an EXIF resolution.</li>
- <li> Support query-font-metrics MSL tag.</li>
-<dt>2008-11-01 6.4.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Do not set image colorspace for the MSL modulate tag.</li>
-<dt>2008-11-01 6.4.5-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Off by one error when computing affine in DrawAffineImage() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12391.</li>
-<dt>2008-10-30 6.4.5-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed local adaptive thresholding when using an offset (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12371.</li>
- <li> Set SetImagePixels() rather than SyncImagePixelCache() to update the pixel cache morphology.</li>
-<dt>2008-10-26 6.4.5-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Set explicit image format for BlobToImage() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=12340).</li>
- <li> p_thread_t is an aggregate under MinGW.</li>
-<dt>2008-10-20 6.4.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> pthread_t can be aggregate so stop treating it like its atomic.</li>
- <li> default the WPG image size to 1 top avoid "no pixels defined in cache" exceptions.</li>
-<dt>2008-10-17 6.4.4-8 Anthony <A.Thyssen@griffith...></dt>
- <li> slight modification of the added "radial-gradient:" image generator so the radius goes to an edge rather than the corner, allowing more user control based on image size.</li>
- <li> fix -raise N to mean -raise NxN</li>
-<dt>2008-10-15 6.4.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for inline images.</li>
-<dt>2008-10-10 6.4.4-7 Cristy <quetzlzacatenango@image...></dt>
- <li> MinGW supports both Posix threads and Windows critical sections.</li>
-<dt>2008-10-06 6.4.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> pthread_self() can be an aggregate value.</li>
- <li> Scale pixel quantum to match PNG tRNS range (i.e. 0-255).</li>
-<dt>2008-10-06 6.4.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Set sentinel byte for MVG coder.</li>
- <li> fx:standard_deviation returns standard deviation now instead of mean.</li>
-<dt>2008-10-01 6.4.4-1 Florent Monnier <monnier.florent@gmail...></dt>
- <li> Support radial gradients in DrawGradientImage().</li>
-<dt>2008-09-26 6.4.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix memory leak when XMP profile is corrupt.</li>
- <li> Support filename references (e.g. convert image-%d.jpg[1-5] ...).</li>
-<dt>2008-09-25 6.4.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Use -remap rather than -affinity.</li>
- <li> Don't unregister a module for an image coder signature exception.</li>
- <li> Don't assume a monochrome image is colormapped.</li>
-<dt>2008-09-25 6.4.4-0 Anthony <A.Thyssen@griffith...></dt>
- <li> Attempt to fix three image "composite -displace" while also allowing use of separate X, Y grayscale displacement maps, or a merged X=red Y=green (later transparency mask will also be added) as discussed in IM Examples, 'distortion maps', but for -displace.</li>
-<dt>2008-09-24 6.4.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix pixel cache race condition.</li>
-<dt>2008-09-23 6.4.3-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed an OTB coder bug (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12119).</li>
-<dt>2008-09-23 6.4.3-8 Peter Fales <psfales@alcat...></dt>
- <li> Add NULL terminator to options list to in MontageImageCommand().</li>
-<dt>2008-09-23 6.4.3-8 Anthony <A.Thyssen@griffith...></dt>
- <li> Added -layers TrimBounds which will adjust the offsets and canvas bounds to fit the current sequence of layered/animated images. The images themselves are not modified only the 'page' meta-data. As a side-effect all offsets will become positive, with a minimal canvas width/height.</li>
-<dt>2008-09-22 6.4.3-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Define _FILE_OFFSET_BITS from MAGICKCORE_FILE_OFFSET_BITS.</li>
-<dt>2008-09-10 6.4.3-7 Anthony <A.Thyssen@griffith...></dt>
- <li> String Memory leak from InterpretImageProperties() in "annotate" for Command line handling in mogrify.c</li>
- <li> Allow percent escapes in both -sparse-color and -distort argument strings.</li>
- <li> Fix -alpha to allow Set, Copy, and Extract from command line</li>
- <li> Fix -alpha Set so it only clears the alpha when it was previously off</li>
- <li> Changed 'AllChannels' to be just the 'real' channels (including K).</li>
- <li> Special handling if +level-colors is given one color, and no separator.</li>
- <li> Fix 'matte' flag in DisposeImages() (for -layer dispose)</li>
-<dt>2008-09-01 6.4.3-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix -interpolate / -compose settings.</li>
- <li> No need to specify -endian for native floating point format.</li>
- <li> Remove small memory leak when cloning image properties (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11981).</li>
- <li> The scan delegate requires a device name, not a symbolic link.</li>
- <li> Report alpha instead of opacity for the TXT image format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12002).</li>
- <li> Add channel support to -motion-blur.</li>
- <li> Set the SVG affine matrix *before* we compute the scale (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12030).</li>
- <li> Rely on 'omp critical' in the rare case where OpenMP is enabled but ImageMagick distribution is built without thread support.</li>
- <li> Return the correct number of unique colors for colormapped image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12055).</li>
- <li> SVG depends on MagickWand for parallel make (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=12099).</li>
-<dt>2008-09-02 6.4.3-7</dt>
- <li> Addition of 'BarrelInverse' Distortion</li>
-<dt>2008-08-27 6.4.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Extract / embed namespace for JPEG XMP profiles (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11832).</li>
- <li> Deprecate -map and replace with -affinity which supports dither methods.</li>
- <li> Set image depth when -depth is fired.</li>
- <li> Fix small memory leak in TIFF coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11968).</li>
-<dt>2008-08-24 6.4.3-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Parallelize the colorspace transforms.</li>
- <li> Honor gravity for -extent option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11944).</li>
-<dt>2008-08-22 6.4.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed a memory leak in the TransparentPaintImage() method.</li>
-<dt>2008-08-20 6.4.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Treat -compose as a setting.</li>
- <li> Check for depth == 0 in GetQuantumScale() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11921).</li>
- <li> Fix CIN coder scanline length (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11922).</li>
-<dt>2008-08-20 6.4.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Add $(MAGICKWAND_LIBS) dependency to the PerlMagick Makefile (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11908).</li>
- <li> Fix configure script to configure the JBIG delegate library (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11907).</li>
- <li> Error in indexed PNG output if number of colors <= 16 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11905).</li>
-<dt>2008-08-18 6.4.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Always reinterpret %[fx:] properties.</li>
- <li> Composite based on the composite image compose operator.</li>
-<dt>2008-08-14 6.4.2-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Add --coder-path and --filter-path options to MagickCore-config to support the Magick Coder and Image Filter kits.</li>
-<dt>2008-08-17 6.4.2-9 Anthony <anthony@griffith...></dt>
- <li> -sparse-color option completed with initial set of methods.</li>
- <li> -distort Barrel arguments expanded.</li>
-<dt>2008-08-14 6.4.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The -draw option no longer returns an error when for # like .6 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11879).</li>
-<dt>2008-08-14 6.4.2-9 Cristy <quetzlzacatenango@image...></dt>
- <li> New dithering selection option, -dither Floyd-Steinberg or -dither Riemersma.</li>
-<dt>2008-08-10 6.4.2-8 Anthony <anthony@griffith...></dt>
- <li> Added new distort "Polar" and "DePolar" due to Forum Discussions</li>
-<dt>2008-08-07 6.4.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Change MPEG delegate from mpeg2decode/mpeg2encode to ffmpeg (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11827).</li>
- <li> Extract embedded XMP and EXIF profiles froma Photoshop resource block.</li>
- <li> Support -compose option in the compare program.</li>
-<dt>2008-08-04 6.4.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Support -fx scientific-notation (e.g. '2.0*3.81469e-06').</li>
- <li> Substitute DistortImage() with 'AffineProjectionDistortion' for the older DrawAffineImage() in AffineTransformImage().</li>
- <li> Apply Sam Hocevar's patch to replace Hilbert-Peano curve dithering with Floyd Steinberg.</li>
- <li> Added -virtual-pixel method VerticalTile as a complement to HorizontalTile</li>
-<dt>2008-08-02 6.4.2-6 Anthony <anthony@griffith...></dt>
- <li> Added -virtual-pixel method HorizontalTile suitable for generating 360 degree Arcs and Polar Distorts.</li>
-<dt>2008-07-31 6.4.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Patch -fx to properly recognize maxima and minima.</li>
- <li> Add channel specifier to -fx depth, mean, maxima, minima, and standard_deviation (e.g. depth.r).</li>
- <li> Properly append .magick to the USERPROFILES path (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11806).</li>
-<dt>2008-07-30 6.4.2-6 Anthony <anthony@griffith...></dt>
- <li> Added a "-set option:distort:scale" which scales the output 'view' by the amount given. This is directly useful for doing 'super-sampled' distorts, just set this, the scale the result back to a normal size.</li>
-<dt>2008-07-27 6.4.2-5 Anthony <anthony@griffith...></dt>
- <li> Rewrite on coefficient handling for DistortImages so allow for generation by other operators (SparseColor), and addition of verbose output of equivalent -fx functions for DistortImages to report of the internal coefficients that was calculated, and who they are used.</li>
- <li> Initial implementation of SparseColor for interpolated gradients from sparsely separated points of color (or possibly other forms of arguments)</li>
- <li> New distortion Barrel as defined by Helmut Dersch options A,B,C,D on his web page http://www.all-in-one.ee/~dersch/barrel/barrel.html And as developed by Fred WeinHaus in his PinBarrel script</li>
-<dt>2008-07-20 6.4.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Certain corrupt GIF images no longer hang (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11723).</li>
- <li> Read more than one image (if they exist) from DJVU image files.</li>
- <li> Don't set image depth in histogram coder (references http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11752).</li>
-<dt>2008-07-17 6.4.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed cache nexus threading problem to avoid spurious assertions when calling the DistortImage() method.</li>
-<dt>2008-07-17 6.4.2-4 Anthony <anthony@griffith...></dt>
- <li> New distortion Shepards which provide semi-localized distorts of control points within an image, as first developed for IM by Frew Weinhaus in his ShapeMorph script. http://www.fmwconcepts.com/imagemagick/shapemorph/ It's almost like taffy pulling!</li>
-<dt>2008-07-12 6.4.2-2 Anthony <anthony@griffith...></dt>
- <li> Separate coefficient calculation from DistortImages (future development)</li>
- <li> Perspective and Bilinear Distortions fallback to Affine when less than 4 point pairs are provided.</li>
- <li> Affine Distortion now handles 2 point pairs (SRT of a single line) and a simple translation if only a single point pair is provided.</li>
- <li> Added 'verbose' output of some of the distortion equations generated</li>
- <li> Initial addition of polynomal distortion (incomplete - not working yet)</li>
-<dt>2008-06-29 6.4.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add log2 and round as -fx operators.</li>
- <li> Add log and round as -evaluate operator.</li>
- <li> Add -deskew option to straighten an image.</li>
-<dt>2008-06-22 6.4.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Use the source image interpolation method when drawing an affine image.</li>
-<dt>2008-06-24 6.4.2-1 Anthony <anthony@griffith...></dt>
- <li> Added new operator +/-level-colors which will 'level' images based on colors to use for the black and white points. This lets to adjust the image in terms of mapping the given colors from/to black and white respectively.</li>
-<dt>2008-06-23 6.4.2-0 Christian Lackas <christian@lacka...></dt>
- <li> Fix a problem with calling mpeg2encode with parameters (%o/%i) in wrong order.</li>
-<dt>2008-06-22 6.4.2-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Refactor additional ImageMagick algorithms for OpenMP support.</li>
-<dt>2008-06-25 6.4.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Add pow as an -evaluate operation, using normalized values</li>
-<dt>2008-06-18 6.4.1-9 Anthony <anthony@griffith...></dt>
- <li> Added a LevelizeImageChannels() which is similar to LevelImageChannels() Function maps black and white values to the given level values. Rather than mapping the given level values to black and white. Bacically a 'reverse-level' function, with different input args.</li>
- <li> Set +level or a '!' flag in -level or LevelImage() to call the new 'reverse-level' function LevelizeImageChannels().</li>
- <li> More work on IsMagickColorSimilar() to fix relationship between transparent-black and opaque-black, which was matched as 'similar'. Also attempts to fix 'K' channel handling for CMYK colorspace. More work on this to come.</li>
-<dt>2008-06-25 6.4.1-9 Cristy <quetzlzacatenango@image...></dt>
- <li> The TXT format correctly reports alpha channel (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11478).</li>
- <li> MONOTCHROME1 Dicom images are not longer inverted (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11492).</li>
-<dt>2008-06-13 6.4.1-8 Anthony <anthony@griffith...></dt>
- <li> Fixed IsMagickColorSimilar() as used by -opaque and -transparent so as to understand that the Hue Channel is cyclic by nature</li>
-<dt>2008-06-08 6.4.1-8 Cristy <quetzlzacatenango@image...></dt>
- <li> The -sketch option is working again (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11454).</li>
-<dt>2008-06-08 6.4.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> More algorithms refactored to support a threaded cache view.</li>
- <li> EPS2 output only 1/3 of image when using LZW or rle compress (reference http://www.imagemagick.org/discourse-server/viewforum.html?f=3).</li>
- <li> ISO C++ 1998 does not support 'long long' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11405).</li>
- <li> Patch GetMagickMemoryHandlers() to return the properly return the memory handler addresses.</li>
- <li> Generate histogram comment if # unique colors exceed 1024 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11434).</li>
-<dt>2008-06-03 6.4.1-6 Marton Bokor <marton.bokor@gfthu....></dt>
- <li> Reading EMF files containing non-ascii characters no longer fails for UTF8 encoded paths on Windows XP.</li>
-<dt>2008-06-03 6.4.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> The -colorspace option is an operator, not a setting.</li>
-<dt>2008-05-31 6.4.1-5 rsnel <rik@snel....></dt>
- <li> gif.c misreads Gifs in which LZW codes are split across three datablocks.</li>
-<dt>2008-05-31 6.4.1-4 Matthew Clark <mclark@gorge...></dt>
- <li> Patches to the JPEG and DCM coders to fix a few problems reading certain DCM image types.</li>
-<dt>2008-05-15 6.4.1-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Interpreting the -set option is no longer delayed.</li>
- <li> Add AcquireCacheViews() and DestroyCachewViews() to the API.</li>
- <li> Call DrawAffineImage() instead of CompositeImage() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11288).</li>
- <li> Throw exception for TIFF compression not support (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11289).</li>
- <li> The +opaque option now recognizes its required argument (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11298).</li>
- <li> The -background and -virtual-pixel settings are now applied correctly across parenthesis.</li>
- <li> Only reset the exception signature if the relinquish memory is MagickTrue.</li>
- <li> Correct recolor equation for computing opacity (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11346).</li>
- <li> Set midpoint when scaling JP2 images.</li>
- <li> Semaphores must be passed by reference when destroyed for reliable thread locks.</li>
- <li> Updated Matlab coder (thanks to Jaroslav Fojtik).</li>
-<dt>2008-05-13 6.4.1-3 Cristy <quetzlzacatenango@image...></dt>
- <li> MagickGetResource(): resources are MagickSizeType not unsigned long.</li>
-<dt>2008-05-11 6.4.1-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Import: properly handle a hierarchy of subwindows under X11.</li>
- <li> Refactor quantum pixel processor to improve ease of use and speed.</li>
-<dt>2008-05-09 6.4.1-2 Leonardo de Paula Rosa Piga <lpiga@terra...></dt>
- <li> OpenMP patch for sepia-tone effect.</li>
-<dt>2008-05-08 6.4.1-2 Bruno Cardoso Lopes <bruno.cardoso@gmail...></dt>
- <li> OpenMP patch for NormalizeImage() & TintImage()</li>
-<dt>2008-05-06 6.4.1-2 <cristiannomartins@gmail...></dt>
- <li> OpenMP patch for GetImageChannelDepth().</li>
- <li> Set depth to 32 when saving MIFF HDRI image files.</li>
-<dt>2008-05-05 6.4.1-2 <joao.vita@gmail...></dt>
- <li> OpenMP patch for OilPaintImage Function</li>
-<dt>2008-05-05 6.4.1-2 Sean Patrick Burke <seanburk@gmail...></dt>
- <li> Update IPLab coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=11200).</li>
-<dt>2008-05-02 6.4.1-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Return correct result for -fx luminence.</li>
- <li> Restore missing break so that PGM images remain PGM.</li>
- <li> Speed up the processing of ASCII PNM files.</li>
- <li> Return the correct number of MNG images for PingImage().</li>
-<dt>2008-05-01 6.4.1-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove C++ style comments from source.</li>
- <li> Center motion blur kernel.</li>
- <li> Reenable dithering for -monochrome option.</li>
-<dt>2008-04-24 6.4.0-11 Cristy <quetzlzacatenango@image...></dt>
- <li> For color reduction, use maximum tree depth if image has 1024 or less unique colors.</li>
- <li> Use a uniform convolution filter for motion blur (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11122).</li>
- <li> Add 'mean' and 'std' symbols to the Fx expression parser.</li>
-<dt>2008-04-20 6.4.0-10 Chris Madison <madisonblu@hotma...></dt>
- <li> Updated to the latest autoconf/automake/libtool scripts.</li>
- <li> Default to HSL colorspace when modulating (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=11073).</li>
- <li> The -regard-warnings option properly returns a program status of 1 if and only if a warning or error exception is thrown.</li>
- <li> Report 'no clip path defined' exception for -clip-path option (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11098).</li>
-<dt>2008-04-16 6.4.0-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Distinquish between pre and post processing of image list options.</li>
- <li> Return MagickTrue if InvokeDynamicImageFilter() does not generate an exception (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=11065).</li>
-<dt>2008-04-16 6.4.0-7 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Instead of masking the PNG tRNS values when reducing from 16-bit, set image->matte to MagickFalse and emit a warning. This will produce behavior similar to that of libpng-1.2.27 (and libpng-1.2.19 and earlier).</li>
-<dt>2008-04-12 6.4.0-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix fault for animate -window root image.gif.</li>
- <li> Use GetImagePixels() rather than SetImagePixels() when making multiple passes and setting image pixels (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=11022).</li>
-<dt>2008-04-10 6.4.0-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Compile error in coders/avi.c when JPEG delegate library is unavailable.</li>
-<dt>2008-04-09 6.4.0-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Mask the PNG tRNS values when reducing from 16-bit, in accordance with the PNG specification, instead of scaling them.</li>
-<dt>2008-04-09 6.4.0-5 Glenn Randers-Pehrson <glennrp@image...></dt>
- <li> Revised png.c to avoid saving unknown chunk types that will never be used later. This prevents the vulnerability described in CVE-2008-1382, with respect to all unknown chunks except vpAg. To handle an invalid, zero-length vpAg chunk properly will require libpng-1.2.27 or later.</li>
-<dt>2008-04-04 6.4.0-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Use mplayer delegate if ImageMagick does not grok AVI op code.</li>
- <li> Use proper rounding for the -fx intensity expression.</li>
-<dt>2008-03-26 6.4.0-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix +swap option so it no longer throws an assertion.</li>
- <li> Return correct min/max for grayscale JPEG images (e.g. -format %[min]).</li>
-<dt>2008-03-26 6.4.0-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Rewrote patch so that writing pyramid TIFF images no longer fails if a tile size is specified (e.g. ptif:image.tif[128x128]).</li>
- <li> Malformed use of caption no longer consumes memory (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10914).</li>
- <li> Don't run Ghostscript twice (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10922).</li>
-<dt>2008-03-21 6.4.0-0 Cristy <quetzlzacatenango@image...></dt>
- <li> SpreadImage() no longer introduces noise into the resulting image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10892).</li>
- <li> Properly handle min-is-white TIFF gray scale images.</li>
- <li> Use CompositeImage() instead of DrawAffineImage() if the affine expansion factor is 1.0.</li>
-<dt>2008-03-20 6.3.9-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Writing pyramid TIFF images no longer fails if a tile size is specified (e.g. ptif:image.tif[128x128]).</li>
- <li> Reset page geometry when interactively cropping an image with the display program.</li>
-<dt>2008-03-18 6.3.9-9 Cristy <quetzlzacatenango@image...></dt>
- <li> With a single swap argument should swap the image with the *last* image.</li>
-<dt>2008-03-16 6.3.9-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Make sure we don't sync a blob after it has been closed.</li>
-<dt>2008-03-14 6.3.9-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Patch mpeg:encode delegate to properly produce an MPEG image sequence.</li>
-<dt>2008-03-11 6.3.9-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Support both GTK and CAIRO interfaces to RSVG (reference ttp://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=10802).</li>
- <li> Display colormapped PNG images with alpha properly (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10819).</li>
-<dt>2008-03-09 6.3.9-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Define inline to _magickcore_inline (to satisfy HP's aCC compiler).</li>
-<dt>2008-03-08 6.3.9-4 Cristy <quetzlzacatenango@image...></dt>
- <li> The rsvg delegate library depends on cairo-svg.</li>
- <li> Account for min-is-white 8-bit gray TIFF images.</li>
-<dt>2008-02-29 6.3.9-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for the Postable Document Archive Format.</li>
- <li> Add support for Braille images.</li>
- <li> Add support for DDS images (contributed by Bianca van Schaik).</li>
- <li> Add GetImageAlphaChannel() method.</li>
- <li> PSD clipping paths are once again recognized.</li>
-<dt>2008-02-24 6.3.9-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Return the actual image format for HTTP: or FTP: format (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=10715).</li>
- <li> Fix so image.quantize(true) returns error as expected (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=10735).</li>
-<dt>2008-02-20 6.3.9-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed a small memory leak (8 bytes) in TransformImages().</li>
- <li> Render to Cairo surface rather than a GDK buffer when rendering SVG.</li>
- <li> Identify now reports both actual and reported image depths (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=10716).</li>
-<dt>2008-02-17 6.3.8-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Speed up converting large PDF/PS images when only selecting a few pages (e.g. pdffile.pdf[195-199]).</li>
- <li> Deprecate HSLTransform() and TransformHSL().</li>
-<dt>2008-02-16 6.3.8-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix Magick++-config script to reflect the MagickWand / MagickCore dependencies.</li>
-<dt>2008-02-14 6.3.8-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Promote colormapped to truecolor images when enciphering.</li>
-<dt>2008-02-08 6.3.8-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Add EncipherImage() / DecipherImage() methods.</li>
- <li> Add -encipher / -decipher options to the command-line utilities.</li>
-<dt>2008-02-03 6.3.8-5 Cristy <quetzlzacatenango@image...></dt>
- <li> New Unix/Linux refactoring (should be transparent since changes are reflected in Magick-config and ImageMagick.pc pkg-config files): /usr/local/include => /usr/local/include/ImageMagick libMagick => libMagickCore libWand => libMagickWand Magick-config (deprecated) => MagickCore-config Wand-config (deprecated) => MagickWand-config Add Magick++-config, MagickCore.pc, MagickWand.pc, Magick++.pc</li>
-<dt>2008-01-28 6.3.8-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Liquid rescale limits the final size to twice the original size (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=10536).</li>
- <li> Read EXIF data in TIFF images; writing is pending until we can figure out how to use the libtiff delegate library to write EXIF data.</li>
-<dt>2008-01-24 6.3.8-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for liquid rescaling (e.g. -liquid-rescale).</li>
- <li> Support a ^ meta character in an image geometry (.e.g convert 640x480.png -resize 240^ returns a 320x240 result).</li>
-<dt>2008-01-20 6.3.8-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix transient bug where "identify -format '%w;%[exif:Model]'" failed to return camera model number.</li>
-<dt>2008-01-14 6.3.8-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Monochome EPS3 images are no longer corrupt (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10422).</li>
- <li> Eliminate memory corruption with broken PICT image (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10447).</li>
- <li> Return a Grayscale colorspace for grayscale DPX image (previously returned Log colorspace).</li>
- <li> Fix -g option for PCL6 support (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10462).</li>
-<dt>2008-01-08 6.3.7-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Only read ICON alpha mask if BPP is <= 16.</li>
- <li> Add support for +opaque and +transparent (requested by Anthony).</li>
- <li> Throw an exception *before* we call wmf_api_destroy() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10420).</li>
-<dt>2008-01-01 6.3.7-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Use explicit format specifier to render transparent Adobe Illustrator files (i.e. convert ai:image.ai image.png).</li>
- <li> Set RSVG base URI (patch provided by tsdineen).</li>
-<dt>2007-12-20 6.3.7-7 Cristy <quetzlzacatenango@image...></dt>
- <li> `Magick-config --version` returns Q16 instead of Q@MAGICKCORE_QUANTUM_DEPTH@.</li>
- <li> Permit commas in numbers in certain locales (e.g. german +100,000).</li>
-<dt>2007-12-13 6.3.7-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Added an exception reason to BlobToImage() in the event an image has no magic number and neither the image magick or filename is set.</li>
- <li> Do not pass PhotoYCC data thru gamma-corrected lookup-table.</li>
- <li> Fix bug in GetEXIFProperty() (reference https://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10300).</li>
-<dt>2007-12-12 6.3.7-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Adding comments to your image is now possible with the display program.</li>
-<dt>2007-12-09 6.3.7-3 Anthony <anthony@griffith...></dt>
- <li> Adjusted -clut multiplyer for correct handling of "-interpolation Integer" in color lookup.</li>
-<dt>2007-12-01 6.3.7-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix 'insufficient image data' for DCM format (reference https://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10227).</li>
- <li> Force a colormapped image if Palm bits-per-pixel < 16.</li>
- <li> Fix multiple problems with Palm Data Base reader (patch from 1tms@gmx.d...).</li>
- <li> Do not exit after first image with the display --immutable option.</li>
- <li> Update autoconf/automake/libtool configuration files.</li>
- <li> Add support for resource limit units (e.g. -limit memory 16mb).</li>
- <li> Return original image if gaussian blur sigma is 0.0.</li>
- <li> Colormapped multi-image PDF's are no longer corrupt (reference https://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10258).</li>
-<dt>2007-11-27 6.3.7-2 Anthony <anthony@griffith...></dt>
- <li> Finalisation of new resize filters, "Lagrange" self-windowing filter now adjusts automatically with different support window size.</li>
- <li> Added "Bohman" (another 2'rd order cosine function) and "Bartlett" (triangluar) resize windowing filters.</li>
- <li> Adjusted -clut to use a grayscale image (with no alpha) to select colors from the Lookup Table image.</li>
-<dt>2007-11-26 6.3.7-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Not all DCM tags were being saved as image attributes (patch provided by jcupitt@gmail...).</li>
- <li> Normalize pixel values when quantum format is floating-point.</li>
- <li> Initialize the pixel sum to zero when averaging image pixels.</li>
-<dt>2007-11-23 6.3.7-1 Anthony <anthony@griffith...></dt>
- <li> Bug fix in height calculation for -layers merge operation</li>
-<dt>2007-11-02 6.3.7-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for SCT grayscale images.</li>
- <li> Fixed transparency bug for the ICO image format.</li>
- <li> Fixed small memory leak in the caption and label coders.</li>
- <li> Fixed -threshold option to return all white for -threshold 0 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10126).</li>
-<dt>2007-11-06 6.3.6-10 Chris Madison <madisonblu@hotma...></dt>
- <li> Corrected CGM delegate command in config/delegate.xml.</li>
-<dt>2007-11-05 6.3.6-9 Chris Madison <madisonblu@hotma...></dt>
- <li> Reclassified X server open error from fatal to non-fatal.</li>
- <li> New SetImageAlphaChannel() method to activate, deactivate, reset, or set the image alpha channel.</li>
- <li> Patch for Scanalytics IPLab image format for non 8-bit images (contributed by Sean Burke).</li>
-<dt>2007-11-04 6.3.6-8 Chris Madison <madisonblu@hotma...></dt>
- <li> Remove ctrl-M characters on in various source files.</li>
- <li> Fix signature for Magick++ averageImages() regression tests for HDRI.</li>
- <li> Only invoke PerlMagick x11 regression test if DISPLAY variable is set.</li>
-<dt>2007-11-03 6.3.6-7 Chris Madison <madisonblu@hotma...></dt>
- <li> MAGICK_ERX_SRCS should be MAGICK_EXR_SRCS in coders/Makefile.am.</li>
-<dt>2007-11-02 6.3.6-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Upgrade to FPX version libfpx-1.2.0.14 (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10041).</li>
- <li> Modules are searched first in the directories specified by the environment variables, and then -- if the desired module is not found -- in the compiled-in path. (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=10039).</li>
-<dt>2007-11-01 6.3.6-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Update FPX regression test reference images.</li>
- <li> Fixed Magick++ compile error for Sun Studio 10 compiler.</li>
-<dt>2007-10-25 6.3.6-4 Cristy <quetzlzacatenango@image...></dt>
- <li> The -equalize option now respects the -channel option.</li>
-<dt>2007-10-23 6.3.6-4 Anthony <anthony@griffith...></dt>
- <li> Additional Filters: Welsh, Parzen, Lagrangian</li>
- <li> Addition of Cubic filter B,C controls</li>
- <li> 'verbose' filter plotting output using -define "filter:verbose"</li>
-<dt>2007-10-20 6.3.6-3 Anthony <anthony@griffith...></dt>
- <li> Further expansion and handling of filters with expert options. -filter selects from a table of standard filter settings, while expert options allow complete selection of filter, windowing, support and blurring options. Includes automatic switch from Sinc to Bessel for operators using 2-dimensional cylindrical filter, rather than two pass 1-dimensional orthogonal filters.</li>
-<dt>2007-10-14 6.3.6-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Obsolete -support (set filter blur factor)</li>
- <li> Expansion to add -set/define filter options</li>
-<dt>2007-10-12 6.3.6-2 Anthony <anthony@griffith...></dt>
- <li> Least Squares coordinate handling added for -distort methods Affine, Perspective, Bilinear. This allows for more than the minimal number of coordinates to be used to 'fit' a distortion function to an image. This addition will allow the use of image registration to generate panorama overviews and better geographical coordinate correction.</li>
- <li> Consolidated the similar methods FlattenImage() and MosaicImage() into a new layers function MergeImageLayers() method, adding 'flatten' and 'mosaic' layer methods.</li>
- <li> Addition of another similar layers method 'merge' which 'unlocks' the normal flatten/mosaic layer merger from the origin, The resulting image will have a virtual canvas of minimal size with an offset. Also images with negative offsets will not be clipped by the 'merge' form of the command. This was created for better layering of distorted images, such as panorama overlays.</li>
- <li> Bug fix in handling transparency for EWA resampling.</li>
- <li> Access to Resize Filter Functions from resize.c (for resample.c) with possible future filter sources... Acquire/Destory/Call ResizeFilter()</li>
- <li> All resize filters added to resampling, but filter handling is incomplete.</li>
-<dt>2007-10-05 6.3.6-2 Cristy <quetzlzacatenango@image...></dt>
- <li> The box filter no longer produces a black grid when resizing an image under Mac OS X.</li>
- <li> Respect cropbox for PDF with a subimage specification (e.g. image.pdf[1-3]).</li>
- <li> Detect proper PDF bounding box when offsets are negative.</li>
-<dt>2007-10-02 6.3.6-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Speed up the Fx interpreter.</li>
- <li> Use ULL not ui64 for MinGW 64-bit constants.</li>
- <li> Call SyncCacheView() instead of SyncImagePixels() in WaveImage().</li>
- <li> Close all references to a pixel cache on disk before removing the temporary file as required under Windows.</li>
-<dt>2007-09-29 6.3.6-0 Anthony <anthony@griffith...></dt>
- <li> Added Scaling 'derivitives' to -distort Arc, so image arcing is now sharp and clear as you approach the center of the distort.</li>
- <li> Added " -set option:distort:viewport 'geometry' " special option that can be used to override the output image size and offset.</li>
- <li> Fixed experimental use of -filter and -support in Resampling (more later).</li>
- <li> Changed order for coordinate arguments in -distort (for later leastsq multiple coordinate distortion function fitting)</li>
-<dt>2007-09-22 6.3.6-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Check the API version and quantum depth before loading a coder module or image filter (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9780).</li>
- <li> Add exception to the image filter signature.</li>
- <li> Get the execution path under Mac OS X.</li>
- <li> TIFFTAG_STRIPBYTECOUNTS requires a uint32 pointer (magick/compress.c).</li>
- <li> Fixed memory leak in CloneString() (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9763).</li>
- <li> Set S_IRUSR | S_IWUSR | S_IRGRP mode when writing a file in CopyDelegateFile().</li>
-<dt>2007-09-18 6.3.5-9 Anthony <anthony@griffith...></dt>
- <li> Bug fix for +distort in Perspective, also effected PerspectiveProjection</li>
-<dt>2007-09-17 6.3.5-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Replace all InterpolatePixelColor() calls to use the ResamplePixelColor() method instead.</li>
- <li> Map the display program pan icon window for each oversized image.</li>
- <li> The ufraw delegate does not like quotes around the output filename.</li>
- <li> Adjust the sensitivity of a few PerlMagick tests to pass the validation on a 64-bit FreeBSD system.</li>
- <li> The -level option now works properly for colormapped images.</li>
- <li> Allow Extrapolated blending of images using -blend http://netpbm.sourceforge.net/doc/extendedopacity.html</li>
-<dt>2007-09-12 6.3.5-9 Anthony <anthony@griffith...></dt>
- <li> Major Addition, Area Resampling Functions, (scaled interpolation) for pixel lookup in Distortion functions. This improves the look in areas of minification enormously, especially in situations of infinite tiling and horizon views. All virtual pixel methods have been handled to minimise computation time involved with area resampling. To use the new function distortions need to be able to determine scaling vectors (distortion function derivitives) for correct working. All -distort methods, except Arc, uses scaled area resampling.</li>
- <li> Improvements to perspective distort method, to include the correct differentiation between the 'ground' on which the image lies, and the 'sky', the color of which can be set using the -mattecolor setting (as the distortion invalid pixel color). Background color is retains for surrounding ground areas. The horizon is also correct anti-aliased and transparent colors are also allowed, allowing you to add backdrops of gradients and patterns.</li>
-<dt>2007-09-04 6.3.5-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Read/Write Scanalytics IPLab image format (contributed by Sean Burke).</li>
- <li> Patched ReadBlobString() to fix a off-by-one vulnerability (alert from iDefense).</li>
- <li> Patched ReadDIBImage() to fix a sign extension vulnerability (alert from iDefense).</li>
- <li> Patched AllocateImageColormap() to fix an integer overflow vulnerability (alert from iDefense).</li>
- <li> Patched ReadDCMImage() to fix an integer overflow vulnerability (alert from iDefense).</li>
- <li> Patched ReadDIBImage() to fix an integer overflow vulnerability (alert from iDefense).</li>
- <li> Patched ReadXBMImage() to fix an integer overflow vulnerability (alert from iDefense).</li>
- <li> Patched ReadDCMImage() to fix an denial of service vulnerability (alert from iDefense).</li>
- <li> Patched ReadXCFImage() to fix an denial of service vulnerability (alert from iDefense).</li>
- <li> If image size changes, don't trust DPX orientation attributes.</li>
-<dt>2007-09-04 6.3.5-9 Gozer404</dt>
- <li> Add French to the messaging system (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=9601).</li>
- <li> Add -fopenmp to MAGICK_PCFLAGS (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9608).</li>
-<dt>2007-08-14 6.3.5-7 Cristy <quetzlzacatenango@image...></dt>
- <li> Add -alpha {activate,deactivate,reset} option to activate, deactivate, or reset the alpha channel.</li>
- <li> Render proper image labels for VID coder.</li>
- <li> Resolved a conflict for the -list option. Use -list font to list ImageMagick fonts and -list type to list image types.</li>
- <li> Catch any errors returned by pthread_mutex_init() (problem report from devman@gmx-t...).</li>
- <li> TransformHSL() returns a proper hue component.</li>
- <li> Added -clut option and the ClutImage() method.</li>
- <li> Fix glyph memory leak in AnnotateImage (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9523).</li>
- <li> Rename analyze.c to Analyze.c (reference ttp://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9538).</li>
-<dt>2007-08-07 6.3.5-6 Anthony <anthony@griffith...></dt>
- <li> Enabled use of +distort to auto resize destination image to 'bestfit' the distorted input image. This also enabled the use of virtual canvas offsets in source and destination images for most distortion methods.</li>
-<dt>2007-08-05 6.3.5-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove atexit in Magick++ code to avoid possible client crash (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9270).</li>
-<dt>2007-08-01 6.3.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Read/Write Scanalytics IPLab image format (contributed by Sean Burke).</li>
-<dt>2007-07-30 6.3.5-5 Anthony <anthony@griffith...></dt>
- <li> Added -distort arc. This update also allows the destination image size and offset to be set according to the specific distortion being applied.</li>
-<dt>2007-07-29 6.3.5-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Set the -polaroid border color with the -bordercolor option.</li>
-<dt>2007-07-25 6.3.5-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Remove extranous break statement so -type option properly sets the image_info->type member (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9261).</li>
-<dt>2007-07-21 6.3.5-4 Anthony <anthony@griffith...></dt>
- <li> Allow the use of optional arguments in -distort SRT</li>
-<dt>2007-06-29 6.3.5-0 Anthony <anthony@griffith...></dt>
- <li> Initial addition of three Affine Distortions to -distort with the affine mapping defined by the use of; an Affine Matrix, Coordinates of Triangles, or separate Scale-Rotate-Translate actions.</li>
-<dt>2007-06-18 6.3.5-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix X11 font ascender.</li>
- <li> Add -distort option.</li>
- <li> Add random noise option (e.g. +noise random).</li>
- <li> Many internal algorithms are now threaded to take advantage of speed-ups offered by the new dual and quad-core processor technologies. and quad-core processor technology.</li>
- <li> Tiff images in the LAB colorspace are no longer identified as RGB (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9015).</li>
- <li> Update image color_profile and iptc_profile members in the JPEG coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9063);</li>
-<dt>2007-06-13 6.3.4-10 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix composite mask bug (reference http://www.imagemagick.org/Usage/bugs/composite_mask/).</li>
- <li> Speed up GetPixelOpacity() method (patch from seth@price...).</li>
- <li> Set icon image width/height before allocating the image colormap.</li>
- <li> Remove Photoshop string segment from JPEG profile (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=9006).</li>
-<dt>2007-06-11 6.3.4-9 Cristy <quetzlzacatenango@image...></dt>
- <li> Converting a jpg to pdf is creating an empty pdf object (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=8954).</li>
- <li> Respect the '-set type:hinting off option' (bug report from Richard Jones).</li>
- <li> WritePSDImage vulnerable to exploitable heap corruption (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=8967).</li>
-<dt>2007-06-09 6.3.4-8 Cristy <quetzlzacatenango@image...></dt>
- <li> SetMagickRegistry() post-increment the value 'id' (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=8944).</li>
-<dt>2007-06-02 6.3.4-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Read/write 10 & 12-bit packed DPX images.</li>
- <li> Reduce stack requirements for messaging system.</li>
- <li> Small memory leak for raw profiles in the PNG coder.</li>
-<dt>2007-06-01 6.3.4-5 Glenn <glennrp@image...></dt>
- <li> Added GIF, JPEG, and PNG interlace types. For backward compatibility, you can continue to use "-interlace Plane" to request these.</li>
-<dt>2007-04-30 6.3.4-0 Anthony <anthony@griffith...></dt>
- <li> Fixed minor bug in the 'curl' for Polaroid of very non-square images.</li>
-<dt>2007-06-01 6.3.4-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Set min-is-white for Group4-compressed PDF.</li>
- <li> Add PaintFloodfillImage() method.</li>
-<dt>2007-05-30 6.3.4-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Add MEPP metric to compare program. Returns the mean error per pixel along with the normalize mean and maximum error.</li>
- <li> Attach an XMP profile to an image (e.g. convert input.tif -profile xmp:metadata.xmp output.tif).</li>
-<dt>2007-05-22 6.3.4-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed mogrify conversions with -format and -path (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=1&t=9127).</li>
-<dt>2007-05-15 6.3.4-2 Cristy <quetzlzacatenango@image...></dt>
- <li> SVG style element was not always parsed properly.</li>
- <li> Do not dither when the number of unique colors is already less than the maximum.</li>
- <li> Return normalized PAE metric (compare utility).</li>
-<dt>2007-05-03 6.3.4-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Add support for PFM images.</li>
- <li> Check for corrupt EXIF image profiles.</li>
- <li> Writing JPEG YCbCr TIFF images no longer faults (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=8896).</li>
-<dt>2007-04-30 6.3.4-0 Anthony <anthony@griffith...></dt>
- <li> Fixed minor bug for crop missed images and 'background' GIF disposal.</li>
-<dt>2007-04-28 6.3.4-0 Glenn <glennrp@image...></dt>
- <li> Added profile support to the GIF decoder/encoder. They are stored as GIF Application Extensions. Known extensions include existing ICCRGB1 (for ICC profiles) and new MGKIPTC0 and MGK8BIM0 (for IPTC and 8BIM profiles). Unknown extensions found in GIF files are read as gifappNNN.</li>
-<dt>2007-04-28 6.3.4-0 Anthony <anthony@griffith...></dt>
- <li> Invert Opacity change for user defined ordered dither threshold maps, so that 'off' map is transparent, and 'on' is opaque.</li>
-<dt>2007-04-24 6.3.4-0 Anthony <anthony@griffith...></dt>
- <li> Added an initial Coalesce Images, and a final +map local colortable optimization to the -layers Optimize method, for a simple to use GIF optimization operation. (more work to come)</li>
-<dt>2007-04-22 6.3.4-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Properly set the virtual canvas of a multi-frame GIF image sequence.</li>
- <li> Add AcquireOneVirtualPixel() method.</li>
- <li> Set Log colorspace properly when writing DPX images.</li>
- <li> Add -tile-offset option.</li>
- <li> Add support for the EXR image format.</li>
- <li> Improve support for DPX images.</li>
- <li> Add --enable-hdri option to the configure script.</li>
- <li> Add support for high dynamic-range images (HDRI).</li>
-<dt>2007-04-20 6.3.3-9 Peter Hull <peterhull90@gmail...></dt>
- <li> Improve support for writing multiple image icons.</li>
-<dt>2007-04-18 6.3.3-9 Anthony <anthony@griffith...></dt>
- <li> Separated -layers Optimize from -layers OptimizeFrame to allow the former expansion into a general (multiple method) optimizer of GIF animations</li>
- <li> merged -layers OptimizeTransparency into -layers Optimize method</li>
-<dt>2007-04-12 6.3.3-8 Chris Madison <madisonblu@hotma...></dt>
- <li> Fix fault whem comparing a colormapped image with a non-colormapped one.</li>
- <li> Fix race condition when spawning delegate programs.</li>
- <li> TIFF JPEG now respects the -quality compression setting.</li>
- <li> The -fx option now properly groks the logical and operator.</li>
- <li> DPX tilestamp property should be timestamp.</li>
-<dt>2007-04-13 6.3.3-7 Anthony <anthony@griffith...></dt>
- <li> Added GravityAdjustGeometry() to "geometry.c" to adjust geometry settings according to given gravity and canvas area it applies to. This is for code simplification throughout MagickCore.</li>
-<dt>2007-04-09 6.3.3-6 Anthony <anthony@griffith...></dt>
- <li> Fixed CoalesceImages() to reset virtual canvas info on second and later frames. Other animation handlers may also need to reset virtual canvas sizes to match the first frame, as well.</li>
-<dt>2007-04-06 6.3.3-6 Anthony <anthony@griffith...></dt>
- <li> Addition of a CompositeImages() "layer.c" function to compose two separate image lists together (with a virtual canvas offset) in three different ways, depending on the size of the lists.</li>
- <li> A 'hack' for command line use (the two lists separates by the special "NULL" image, which is junked) has also been added. Specifically... "-layers Composite".</li>
-<dt>2007-04-04 6.3.3-6 Anthony <anthony@griffith...></dt>
- <li> Add -layers RemoveDups method to remove duplicate sequential images in coalesced animations.</li>
- <li> Add -layers RemoveZero method to remove images with a zero time delay (with no action and a warning is all images have zero time delay)</li>
-<dt>2007-04-01 6.3.3-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Permit generic profiles (e.g. -profile name:profile).</li>
-<dt>2007-03-31 6.3.3-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed DCM and XWD buffer overflow vulnerabilities (reference http://labs.idefense.com/intelligence/vulnerabilities/display.html?id=496).</li>
-<dt>2007-03-28 6.3.3-4 Anthony <anthony@griffith...></dt>
- <li> Code duplication, simplification, and possible logic faults in "list.c".</li>
- <li> Added new Composition method, 'ChangeMask' to return pixels that have changed or will cause a color change in overlays</li>
- <li> Used 'ChangeMask' to implement the "-layers" method "OptimizeTransparency" to improve the compressibility of frame optimized GIF animations. See IM Examples... http://www.imagemagick.org/Usage/anim_opt/#opt_trans</li>
-<dt>2007-03-19 6.3.3-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Fixed two memory leaks in wand/magick-image.c and magick/stream.c and made some minor changes to the GIF coder to make reading and pinging images faster (patch provided by mstemm@cloud...).</li>
-<dt>2007-03-19 6.3.3-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Patch RotateImage() to properly rotate CMYK images.</li>
- <li> Patch the XWD coder to prevent heap overflow vulnerability (vulnerability report from idefense.com [IDEF2108] [IDEF2221] [IDEF2226]).</li>
-<dt>2007-03-19 6.3.3-3 Anthony <Anthony@griffith...></dt>
- <li> Fixed bug for GIF Optimization for images without a matte channel.</li>
- <li> Improved image handling for "-layers" method "Dispose".</li>
-<dt>2007-03-11 6.3.3-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Improve configure script to better support Ghostscript under Mac OSX ( reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=8557).</li>
- <li> Force a virtual pixel method of Tile for GetFillColor() and GetStrokeColor().</li>
- <li> Add -reverse option to reverse the image list.</li>
-<dt>2007-03-08 6.3.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Support versions 2.1.0 and above (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=8620).</li>
- <li> Support SVG rotation about a point (e.g. rotate(45 75 75)).</li>
- <li> Fix fault in DCM coder (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=8618).</li>
- <li> Check for a NULL parser in SVGReference in coders/svg.c (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=8609).</li>
- <li> Add --disable-deprecated configure script option.</li>
- <li> Composite mask now works properly with transparent images.</li>
-<dt>2007-03-04 Daniel Kobras <kobras@debia...></dt>
- <li> Fixed additional data-driven faults (reference http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=412945).</li>
- <li> Allocate proper scanline length to prevent a PCX overflow.</li>
-<dt>2007-03-03 6.3.3-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Patch ImageMagick to permit referenced labels: -set option:mylabel "color = %[pixel:u[0].p{12,26}]" label:'%[mylabel]'</li>
-<dt>2007-02-24 6.3.3-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Escape indirect labels and comments (e.g. -label @file).</li>
- <li> Added -format %C to return the image compression type.</li>
- <li> Do not report channel statistics if -ping -format is specified with the identify program.</li>
- <li> Add ResetImagePage() to reset the image page canvas and position.</li>
- <li> Upgrade to LCMS 1.16</li>
- <li> Configure Ghostscript for library or framework (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=2&t=8557).</li>
- <li> Add -taint option to convert/mogrify to mark image as ineligible for</li>
- <li> Fixed various data-driven faults (reference http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=412945). The corrupt JP2 image faults but its failing in the JP2 jas_image_decode() method, not MagickCore. The corrupt XWD image faults but its failing in the X11 XGetPixel() method, not MagickCore.</li>
-<dt>2007-02-20 6.3.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Use -define quantum:polarity=min-is-black or -define quantum:polarity=min-is-white to toggle the photometric interpretation for a bilevel TIFF image.</li>
-<dt>2007-02-17 6.3.2-8 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't interpret embedded format characters when reading comments/labels from a file.</li>
- <li> Reading an image from stdin stopped working.</li>
-<dt>2007-02-17 6.3.2-7 Cristy <quetzlzacatenango@image...></dt>
- <li> PerlMagick Label() no longer faults.</li>
- <li> Fix double-free when using the display/animate -geometry option.</li>
- <li> Add GetStringInfoLength() and GetStringInfoDatum(); deprecate profile->length and profile->datum.</li>
-<dt>2007-02-16 6.3.2-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix file leak in InjectImageBlob().</li>
- <li> Do not reinterpret image properties (e.g. -comment %%w).</li>
-<dt>2007-02-14 6.3.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Don't over-allocate file buffers.</li>
-<dt>2007-02-12 6.3.2-5 Cristy <quetzlzacatenango@image...></dt>
- <li> Format strings in the POSIX locale.</li>
- <li> Make font metrics invariant to the strokewidth.</li>
-<dt>2007-02-10 6.3.2-4 Albert Chin <china@thewr...></dt>
- <li> Patch to fix configure.ac typo.</li>
-<dt>2007-02-08 6.3.2-4 Cristy <quetzlzacatenango@image...></dt>
- <li> Permit ImageMagick to run as a service under Windows.</li>
- <li> Remove duplicate EXIF properties.</li>
- <li> Support strokewidth option for the caption format.</li>
- <li> Don't use Ghostscript for rendering fonts if Freetype is available.</li>
-<dt>2007-02-02 6.3.2-3 Cristy <quetzlzacatenango@image...></dt>
- <li> Added thumbnail format to write EXIF thumbnails.</li>
- <li> Move ReadByteImage() out of Min() macro of ReadPALMImage().</li>
- <li> Move EXIF properties to the EXIF namespace (e.g. exif:XResolution).</li>
-<dt>2007-01-26 6.3.2-2 Cristy <quetzlzacatenango@image...></dt>
- <li> Add interpolate and background options to PerlMagick's AffineTransform().</li>
- <li> Revert to Postscript rendering if Freetype delegate library is not available.</li>
-<dt>2007-01-20 6.3.2-1 Cristy <quetzlzacatenango@image...></dt>
- <li> Accept Fx expressions from a file with -fx @filename.</li>
- <li> Enhance -fill and -stroke to accept image filenames as patterns.</li>
-<dt>2007-01-16 6.3.2-0 Cristy <quetzlzacatenango@image...></dt>
- <li> Save grayscale images as JPEG-compressed grayscale when writing in the TIFF format.</li>
- <li> Update EXIF resolution fields when image density changes.</li>
-<dt>2007-01-07 6.3.1-7 Cristy <quetzlzacatenango@image...></dt>
- <li> The -polaroid option now respects -gravity.</li>
- <li> Deprecate Get/SetImageAttribute(). Recommend Get/SetImageProperty() instead.</li>
- <li> Any form of "-crop" with a percentage, implies an offset for the crop.</li>
- <li> Fixed percent option for -border (e.g. -border 10%x0%).</li>
- <li> Add -path option to the mogrify program to specify where to write the images.</li>
-<dt>2007-01-06 6.3.1-6 Cristy <quetzlzacatenango@image...></dt>
- <li> Fix the -auto-orient to work with an image sequence (reference http://www.imagemagick.org/discourse-server/viewtopic.html?t=8100).</li>
- <li> Add -polaroid option to simulate a Polaroid picture.</li>
- <li> Eliminate double-free bug in GradientImage().</li>
- <li> Set AppendImage() matte channel only when image has matte attribute set.</li>
- <li> The -crop with negative offsets do not modify the virtual canvas.</li>
- <li> Caption: Given both the width and height ("-size") of the area to fill, adjust the fonts "-pointsize" until the text just filles the whole space without overflowing.</li>
- <li> Generate proper Windows icon image files (patch provided by Robert M. Jansen).</li></div> <footer class="magick-footer">
+<div class="magick-header"><dl><dt>2012-04-27 7.0.0-0 Anthony thyssen <A.Thyssen@griffith...></dt>
+ </dl><li> Allow the use of set and escapes when no images in memory (unless you attempt to access per-image meta-data) Currently does not include %[fx:...] and %[pixel:...]</li>
+<dt>2012-10-05 7.0.0-0 Anthony thyssen <A.Thyssen@griffith...></dt>
+ <li> Rather than replicate 'options' into 'artifacts' make a link from image to image_info and lookup a global option if no artifact is defined.</li>
+<dt>2012-09-11 7.0.0-0 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
+ <li> sigmoidal-contrast:</li>
+ <li> Remove unnecessary initial ClampToQuantum.</li>
+<dt>2012-09-10 7.0.0-0 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
+ <li> sigmoidal-contrast:</li>
+ <li> Direct computation, without LUT;</li>
+ <li> Fix re-declaration of i (at the top, and inside a conditional).</li>
+<dt>2012-09-04 7.0.0-0 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
+ <li> Add tanh/atanh clone of legacy sigmoidal map (faster & more accurate).</li>
+<dt>2012-08-08 7.0.0-0 Nicolas Robidoux <nicolas.robidoux@gmail...></dt>
+ <li> Add final ClampToQuantum in sigmoidal colormap loop.</li>
+ <li> Remove OpenMP calls from colormap update loops.</li>
+<dt>2011-08-01 7.0.0-0 Cristy <quetzlzacatenango@image...></dt>
+ <li> New version 7.0.0-0.</li>
+</div> <footer class="magick-footer">
<div class="magick-nav-item pull-left">
<a href="support.html">Donate</a>
</div>
- <p><a href="sitemap.html">Sitemap</a> âÂ\80¢
- <a href="links.html">Related</a> âÂ\80¢
- <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Image Studio</a> âÂ\80¢
+ <p><a href="sitemap.html">Sitemap</a> â\80¢
+ <a href="links.html">Related</a> â\80¢
+ <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Image Studio</a> â\80¢
<a href="http://jqmagick.imagemagick.org/">JqMagick</a>
</p>
- <p><a href="changelog.html#">Back to top</a> âÂ\80¢
- <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x89AB63D48277377A">Public Key</a> âÂ\80¢
+ <p><a href="changelog.html#">Back to top</a> â\80¢
+ <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x89AB63D48277377A">Public Key</a> â\80¢
<a href="http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
- <p><small>© 1999-2015 ImageMagick Studio LLC</small></p>
+ <p><small>© 1999-2015 ImageMagick Studio LLC</small></p>
</footer>
</div><!-- /.container -->
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<h2 class="magick-header"><a id="news"></a>News</h2>
-<p>The design of ImageMagick is an evolutionary process, with the design and implementation efforts serving to influence and guide further progress in the other. With <a href="http://www.imagemagick.org/ImageMagick-7.0.0">ImageMagick version 7</a>, we aim to improve the design based on lessons learned from the version 6 implementation. See the <a href="porting.html">porting</a> guide to track the progress of the version 7 development effort.</p>
+<p>The design of ImageMagick is an evolutionary process, with the design and implementation efforts serving to influence and guide further progress in the other. With <a href="../index.html">ImageMagick version 7</a>, we aim to improve the design based on lessons learned from the version 6 implementation. See the <a href="porting.html">porting</a> guide to track the progress of the version 7 development effort.</p>
<h2 class="magick-header"><a id="community"></a>Community</h2>
<p>To join the ImageMagick community, try the <a href="http://www.imagemagick.org/discourse-server/">discourse server</a>. You can review questions or comments (with informed responses) posed by ImageMagick users or ask your own questions.</p>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
</div>
<div class="sep"></div>
<div class="menu">
- <a title="Search" href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
+ <a title="Search" href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
</div>
<div class="sep"></div>
<div class="menu">
</div>
<div class="footer">
<span id="footer-west">© 1999-2015 ImageMagick Studio LLC</span>
- <span id="footer-east"> <a href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
+ <span id="footer-east"> <a href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
</div>
<div style="clear: both; margin: 0; width: 100%; "></div>
</body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
</div>
<div class="sep"></div>
<div class="menu">
- <a title="Search" href="http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
+ <a title="Search" href="http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
</div>
<div class="sep"></div>
<div class="menu">
</div>
<div class="footer">
<span id="footer-west">© 1999-2011 ImageMagick Studio LLC</span>
- <span id="footer-east"> <a href="http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
+ <span id="footer-east"> <a href="http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
</div>
<div style="clear: both; margin: 0; width: 100%; "></div>
<script type="text/javascript">
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>
<a class="magick-nav-item " href="command-line-options.html">Options</a>
<a class="magick-nav-item " href="resources.html">Resources</a>
<a class="magick-nav-item " href="api.html">Develop</a>
- <a class="magick-nav-item " href="http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
+ <a class="magick-nav-item " href="http://www.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/script/search.php">Search</a>
<a class="magick-nav-item pull-right" href="http://www.imagemagick.org/discourse-server/">Community</a>
</nav>
</div>
</p>
<p><a href="t-shirt.html#">Back to top</a> •
<a href="http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x89AB63D48277377A">Public Key</a> •
- <a href="http://www.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
+ <a href="http://www.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/www/http://nextgen.imagemagick.org/script/contact.php">Contact Us</a></p>
<p><small>© 1999-2015 ImageMagick Studio LLC</small></p>
</footer>
</div><!-- /.container -->
<link rel="icon" href="../images/wand.png">
<link rel="shortcut icon" href="../images/wand.ico" type="images/x-icon">
<link rel="stylesheet" href="css/bootstrap.min.css">
- <link rel="stylesheet" href="css/magick.css">
+ <link rel="stylesheet" href="../css/magick.css">
</head>
<body>