summaryrefslogtreecommitdiff
path: root/www/api
diff options
context:
space:
mode:
authorbackto.kim <backto.kim@samsung.com>2021-12-06 13:15:35 +0900
committerbackto.kim <backto.kim@samsung.com>2021-12-06 13:20:13 +0900
commitcdc6b7097f011782b30d005f812fb288fd367f34 (patch)
tree8d30d3c93ddcb33e00dd45281620c278598f18e1 /www/api
parent332002e6f4d7ce48ea4eeb55b59d84c64ad79f0b (diff)
downloadGraphicsMagick-cdc6b7097f011782b30d005f812fb288fd367f34.tar.gz
GraphicsMagick-cdc6b7097f011782b30d005f812fb288fd367f34.tar.bz2
GraphicsMagick-cdc6b7097f011782b30d005f812fb288fd367f34.zip
Imported Upstream version 1.3.36upstream/1.3.36
Change-Id: I0a995e609889f9b2d75340bcda6a6294ac41803a
Diffstat (limited to 'www/api')
-rw-r--r--www/api/Makefile.am2
-rw-r--r--www/api/animate.html33
-rw-r--r--www/api/animate.html.orig109
-rw-r--r--www/api/annotate.html33
-rw-r--r--www/api/annotate.html.orig116
-rw-r--r--www/api/api.html35
-rw-r--r--www/api/api.html.orig286
-rw-r--r--www/api/api.rst10
-rw-r--r--www/api/api_hyperlinks.rst3
-rw-r--r--www/api/attribute.html29
-rw-r--r--www/api/average.html29
-rw-r--r--www/api/average.html.orig75
-rw-r--r--www/api/blob.html33
-rw-r--r--www/api/blob.html.orig695
-rw-r--r--www/api/cdl.html29
-rw-r--r--www/api/cdl.html.orig87
-rw-r--r--www/api/channel.html29
-rw-r--r--www/api/channel.html.orig234
-rw-r--r--www/api/color.html31
-rw-r--r--www/api/color.html.orig136
-rw-r--r--www/api/colormap.html29
-rw-r--r--www/api/colormap.html.orig138
-rw-r--r--www/api/compare.html29
-rw-r--r--www/api/compare.html.orig300
-rw-r--r--www/api/composite.html29
-rw-r--r--www/api/composite.html.orig93
-rw-r--r--www/api/confirm_access.html29
-rw-r--r--www/api/confirm_access.html.orig110
-rw-r--r--www/api/constitute.html33
-rw-r--r--www/api/constitute.html.orig356
-rw-r--r--www/api/decorate.html31
-rw-r--r--www/api/decorate.html.orig141
-rw-r--r--www/api/deprecate.html29
-rw-r--r--www/api/deprecate.html.orig338
-rw-r--r--www/api/describe.html29
-rw-r--r--www/api/display.html29
-rw-r--r--www/api/display.html.orig119
-rw-r--r--www/api/draw.html31
-rw-r--r--www/api/draw.html.orig3223
-rw-r--r--www/api/effect.html33
-rw-r--r--www/api/effect.html.orig920
-rw-r--r--www/api/enhance.html29
-rw-r--r--www/api/enhance.html.orig278
-rw-r--r--www/api/error.html33
-rw-r--r--www/api/error.html.orig423
-rw-r--r--www/api/export.html33
-rw-r--r--www/api/export.html.orig184
-rw-r--r--www/api/fx.html29
-rw-r--r--www/api/fx.html.orig410
-rw-r--r--www/api/hclut.html29
-rw-r--r--www/api/hclut.html.orig88
-rw-r--r--www/api/image.html41
-rw-r--r--www/api/import.html33
-rw-r--r--www/api/import.html.orig184
-rw-r--r--www/api/list.html33
-rw-r--r--www/api/list.html.orig548
-rw-r--r--www/api/log.html368
-rw-r--r--www/api/magick.html31
-rw-r--r--www/api/memory.html33
-rw-r--r--www/api/memory.html.orig275
-rw-r--r--www/api/monitor.html29
-rw-r--r--www/api/monitor.html.orig152
-rw-r--r--www/api/montage.html29
-rw-r--r--www/api/montage.html.orig150
-rw-r--r--www/api/operator.html29
-rw-r--r--www/api/operator.html.orig161
-rw-r--r--www/api/paint.html33
-rw-r--r--www/api/paint.html.orig201
-rw-r--r--www/api/pixel_cache.html33
-rw-r--r--www/api/pixel_iterator.html29
-rw-r--r--www/api/pixel_iterator.html.orig600
-rw-r--r--www/api/plasma.html29
-rw-r--r--www/api/plasma.html.orig78
-rw-r--r--www/api/profile.html29
-rw-r--r--www/api/profile.html.orig320
-rw-r--r--www/api/quantize.html29
-rw-r--r--www/api/quantize.html.orig354
-rw-r--r--www/api/registry.html29
-rw-r--r--www/api/registry.html.orig163
-rw-r--r--www/api/render.html35
-rw-r--r--www/api/resize.html47
-rw-r--r--www/api/resize.html.orig238
-rw-r--r--www/api/resource.html29
-rw-r--r--www/api/segment.html33
-rw-r--r--www/api/segment.html.orig99
-rw-r--r--www/api/shear.html29
-rw-r--r--www/api/shear.html.orig193
-rw-r--r--www/api/signature.html29
-rw-r--r--www/api/signature.html.orig169
-rw-r--r--www/api/statistics.html37
-rw-r--r--www/api/statistics.html.orig79
-rw-r--r--www/api/texture.html29
-rw-r--r--www/api/texture.html.orig106
-rw-r--r--www/api/transform.html36
-rw-r--r--www/api/types.html324
-rw-r--r--www/api/types.html.orig2844
-rw-r--r--www/api/types.rst118
-rw-r--r--www/api/widget.html29
-rw-r--r--www/api/widget.html.orig504
99 files changed, 17922 insertions, 747 deletions
diff --git a/www/api/Makefile.am b/www/api/Makefile.am
index a9d7f9a..641ef82 100644
--- a/www/api/Makefile.am
+++ b/www/api/Makefile.am
@@ -39,6 +39,7 @@ WWWAPI_HTML_TARGETS = \
$(WWWAPIDIR)/image.html \
$(WWWAPIDIR)/import.html \
$(WWWAPIDIR)/list.html \
+ $(WWWAPIDIR)/log.html \
$(WWWAPIDIR)/magick.html \
$(WWWAPIDIR)/memory.html \
$(WWWAPIDIR)/monitor.html \
@@ -92,6 +93,7 @@ WWWWAPI_FILES = \
www/api/image.html \
www/api/import.html \
www/api/list.html \
+ www/api/log.html \
www/api/magick.html \
www/api/memory.html \
www/api/monitor.html \
diff --git a/www/api/animate.html b/www/api/animate.html
index 9142a2b..1a4bb66 100644
--- a/www/api/animate.html
+++ b/www/api/animate.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>animate</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="animate">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="interactively-animate-an-image-sequence">Interactively animate an image sequence</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#magickxanimatebackgroundimage" id="id3">MagickXAnimateBackgroundImage</a></li>
<li><a class="reference internal" href="#magickxanimateimages" id="id4">MagickXAnimateImages</a></li>
@@ -105,5 +105,10 @@ XOpenDisplay.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/animate.html.orig b/www/api/animate.html.orig
new file mode 100644
index 0000000..61d32b4
--- /dev/null
+++ b/www/api/animate.html.orig
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>animate</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="animate">
+<h1 class="title">animate</h1>
+<h2 class="subtitle" id="interactively-animate-an-image-sequence">Interactively animate an image sequence</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#magickxanimatebackgroundimage" id="id3">MagickXAnimateBackgroundImage</a></li>
+<li><a class="reference internal" href="#magickxanimateimages" id="id4">MagickXAnimateImages</a></li>
+</ul>
+</div>
+<div class="section" id="magickxanimatebackgroundimage">
+<h1><a class="toc-backref" href="#id3">MagickXAnimateBackgroundImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXAnimateBackgroundImage( Display *display, <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>MagickXAnimateBackgroundImage() animates an image sequence in the background of
+a window.</p>
+<p>The format of the MagickXAnimateBackgroundImage method is:</p>
+<pre class="literal-block">
+void MagickXAnimateBackgroundImage( Display *display, <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>resource_info:</dt>
+<dd>Specifies a pointer to a X11 MagickXResourceInfo structure.</dd>
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickxanimateimages">
+<h1><a class="toc-backref" href="#id4">MagickXAnimateImages</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MagickXAnimateImages( Display *display, <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ char ** argv, const int argc, <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>MagickXAnimateImages() displays an image via X11.</p>
+<p>The format of the MagickXAnimateImages method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MagickXAnimateImages( Display *display, <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ char ** argv, const int argc, <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>resource_info:</dt>
+<dd>Specifies a pointer to a X11 MagickXResourceInfo structure.</dd>
+<dt>argv:</dt>
+<dd>Specifies the application's argument list.</dd>
+<dt>argc:</dt>
+<dd>Specifies the number of arguments.</dd>
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/annotate.html b/www/api/annotate.html
index d68e67a..30eb674 100644
--- a/www/api/annotate.html
+++ b/www/api/annotate.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>annotate</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="annotate">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="annotate-an-image-with-text">Annotate an image with text</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#annotateimage" id="id3">AnnotateImage</a></li>
<li><a class="reference internal" href="#gettypemetrics" id="id4">GetTypeMetrics</a></li>
@@ -112,5 +112,10 @@ unsigned int GetTypeMetrics( <a class="reference external" href="../api/types.ht
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/annotate.html.orig b/www/api/annotate.html.orig
new file mode 100644
index 0000000..bcd728c
--- /dev/null
+++ b/www/api/annotate.html.orig
@@ -0,0 +1,116 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>annotate</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="annotate">
+<h1 class="title">annotate</h1>
+<h2 class="subtitle" id="annotate-an-image-with-text">Annotate an image with text</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#annotateimage" id="id3">AnnotateImage</a></li>
+<li><a class="reference internal" href="#gettypemetrics" id="id4">GetTypeMetrics</a></li>
+</ul>
+</div>
+<div class="section" id="annotateimage">
+<h1><a class="toc-backref" href="#id3">AnnotateImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail AnnotateImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>AnnotateImage() annotates an image with DrawInfo 'text' based on other
+parameters from DrawInfo such as 'affine', 'align', 'decorate', and
+'gravity'.</p>
+<p>Originally this function additionally transformed 'text' using
+TranslateText() but it no longer does so as of GraphicsMagick 1.3.32.</p>
+<p>The format of the AnnotateImage method is:</p>
+<pre class="literal-block">
+MagickPassFail AnnotateImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method AnnotateImage returns MagickPass if the image is annotated
+otherwise MagickFail.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>draw_info:</dt>
+<dd>The draw info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="gettypemetrics">
+<h1><a class="toc-backref" href="#id4">GetTypeMetrics</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int GetTypeMetrics( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info,
+ <a class="reference external" href="../api/types.html#typemetric">TypeMetric</a> *metrics );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>GetTypeMetrics() returns the following information for the specified font
+and text:</p>
+<p>o character width
+o character height
+o ascent
+o descent
+o text width
+o text height
+o maximum horizontal advance
+o underline position
+o underline thickness</p>
+<p>The format of the GetTypeMetrics method is:</p>
+<pre class="literal-block">
+unsigned int GetTypeMetrics( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info,
+ <a class="reference external" href="../api/types.html#typemetric">TypeMetric</a> *metrics );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>draw_info:</dt>
+<dd>The draw info.</dd>
+<dt>metrics:</dt>
+<dd>Return the font metrics in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/api.html b/www/api/api.html
index 0e7a8e3..c5817b8 100644
--- a/www/api/api.html
+++ b/www/api/api.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>GraphicsMagick Core C API</title>
<link rel="stylesheet" href="../docutils-articles.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="graphicsmagick-core-c-api">
@@ -77,6 +77,7 @@ and normalize</li>
<li><a class="reference external" href="image.html">Image</a>: Miscellaneous image methods</li>
<li><a class="reference external" href="import.html">Import</a> : Import image pixels from common representations</li>
<li><a class="reference external" href="list.html">List</a>: Manage image lists</li>
+<li><a class="reference external" href="log.html">Log</a>: Event logging support</li>
<li><a class="reference external" href="magick.html">Magick</a>: Image format support interfaces</li>
<li><a class="reference external" href="memory.html">Memory</a>: Memory allocation methods</li>
<li><a class="reference external" href="monitor.html">Monitor</a>: Progress monitor callbacks</li>
@@ -89,6 +90,7 @@ and normalize</li>
<li><a class="reference external" href="profile.html">Profile</a>: Attached profile access</li>
<li><a class="reference external" href="quantize.html">Quantize</a>: Reduce image colors or assign image colors from colormap</li>
<li><a class="reference external" href="registry.html">Registry</a>: Store and retrieve images in memory by ID</li>
+<li><a class="reference external" href="render.html">Render</a>: Render vector graphics</li>
<li><a class="reference external" href="resize.html">Resize</a>: Resize an Image</li>
<li><a class="reference external" href="resource.html">Resource</a>: Set and get resource limits</li>
<li><a class="reference external" href="segment.html">Segment</a>: Coalese similar image colors</li>
@@ -279,8 +281,11 @@ out.miff'.</p>
<p>The GraphicsMagick-config script reproduces the options which were used to
compile the GraphicsMagick utilities. Using compatible options ensures that
your program will compile and run.</p>
-<hr class="docutils" />
-<p>Copyright © GraphicsMagick Group 2002 - 2020</p>
+</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
</div>
</body>
</html>
diff --git a/www/api/api.html.orig b/www/api/api.html.orig
new file mode 100644
index 0000000..215e40c
--- /dev/null
+++ b/www/api/api.html.orig
@@ -0,0 +1,286 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>GraphicsMagick Core C API</title>
+<link rel="stylesheet" href="../docutils-articles.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="graphicsmagick-core-c-api">
+<h1 class="title">GraphicsMagick Core C API</h1>
+
+<!-- -*- mode: rst -*- -->
+<!-- This text is in reStucturedText format, so it may look a bit odd. -->
+<!-- See http://docutils.sourceforge.net/rst.html for details. -->
+<p>The GraphicsMagick core C library constitutes the implementation of
+GraphicsMagick and provides the lowest-level C language programming
+interface for GraphicsMagick. The core C API provides many functions
+to read, manipulate, write, or display an image. To invoke the
+functions, write your program in C (or C++) language while making
+calls to the core library functions and link with libGraphicsMagick.a,
+libGraphicsMagick.so, or GraphicsMagick.dll depending on your system.</p>
+<p>The API is divided into a number of categories. While reading this
+documentation, please reference the <a class="reference external" href="types.html">types</a> documentation as required:</p>
+<blockquote>
+<ul class="simple">
+<li><a class="reference external" href="animate.html">Animate</a>: Interactively animate an image sequence</li>
+<li><a class="reference external" href="annotate.html">Annotate</a>: Annotate an image with text</li>
+<li><a class="reference external" href="attribute.html">Attribute</a>: Access key, value image attributes</li>
+<li><a class="reference external" href="average.html">Average</a>: Average several images together</li>
+<li><a class="reference external" href="cdl.html">ASC CDL</a> : Apply ASC CDL to image</li>
+<li><a class="reference external" href="blob.html">Blob</a>: Read and write images to memory</li>
+<li><a class="reference external" href="channel.html">Channel</a>: Import and export image channels as well as compute channel depth</li>
+<li><a class="reference external" href="color.html">Color</a>: Methods to deal with image colors</li>
+<li><a class="reference external" href="colormap.html">Colormap</a>: Methods to deal with image colormaps</li>
+<li><a class="reference external" href="compare.html">Compare</a>: Compare images</li>
+<li><a class="reference external" href="composite.html">Composite</a>: Composite images</li>
+<li><a class="reference external" href="confirm_access.html">Confirm Access</a> : Confirm access to files and URLs.</li>
+<li><a class="reference external" href="constitute.html">Constitute</a>: Read, write, import, and export images</li>
+<li><a class="reference external" href="decorate.html">Decorate</a>: Add fancy borders to images</li>
+<li><a class="reference external" href="describe.html">Describe</a>: Describe an image</li>
+<li><a class="reference external" href="display.html">Display</a>: Interactively display and edit an image</li>
+<li><a class="reference external" href="draw.html">Draw</a>: Convenient methods to draw vectors and text</li>
+<li><a class="reference external" href="effect.html">Effect</a>:Threshold (various), blur, despeckle, edge, emboss, enhance,
+gaussian blur ...</li>
+<li><a class="reference external" href="enhance.html">Enhance</a>: Contrast, equalize, gamma, level, level channel, modulate, negate,
+and normalize</li>
+<li><a class="reference external" href="error.html">Error</a>: Error reporting methods</li>
+<li><a class="reference external" href="export.html">Export</a> : Export image pixels to common representations</li>
+<li><a class="reference external" href="fx.html">FX</a>: Special effects methods</li>
+<li><a class="reference external" href="hclut.html">Hald CLUT</a> : Apply Hald CLUT to image</li>
+<li><a class="reference external" href="image.html">Image</a>: Miscellaneous image methods</li>
+<li><a class="reference external" href="import.html">Import</a> : Import image pixels from common representations</li>
+<li><a class="reference external" href="list.html">List</a>: Manage image lists</li>
+<li><a class="reference external" href="magick.html">Magick</a>: Image format support interfaces</li>
+<li><a class="reference external" href="memory.html">Memory</a>: Memory allocation methods</li>
+<li><a class="reference external" href="monitor.html">Monitor</a>: Progress monitor callbacks</li>
+<li><a class="reference external" href="montage.html">Montage</a>: Create a montage of image thumbnails</li>
+<li><a class="reference external" href="operator.html">Operator</a>: Methods to apply mathematic or boolean operators to pixels</li>
+<li><a class="reference external" href="paint.html">Paint</a>: Fill pixel regions</li>
+<li><a class="reference external" href="pixel_cache.html">Pixel Cache</a>: Low-level access to image pixels</li>
+<li><a class="reference external" href="pixel_iterator.html">Pixel Iterator</a>: Pixel iterator design pattern support functions</li>
+<li><a class="reference external" href="plasma.html">Plasma</a>: Plasma fractal image generator</li>
+<li><a class="reference external" href="profile.html">Profile</a>: Attached profile access</li>
+<li><a class="reference external" href="quantize.html">Quantize</a>: Reduce image colors or assign image colors from colormap</li>
+<li><a class="reference external" href="registry.html">Registry</a>: Store and retrieve images in memory by ID</li>
+<li><a class="reference external" href="resize.html">Resize</a>: Resize an Image</li>
+<li><a class="reference external" href="resource.html">Resource</a>: Set and get resource limits</li>
+<li><a class="reference external" href="segment.html">Segment</a>: Coalese similar image colors</li>
+<li><a class="reference external" href="shear.html">Shear</a>: Rotate image, shear image, or apply a 2D affine transformation</li>
+<li><a class="reference external" href="signature.html">Signature</a>: Compute an image signature (checksum)</li>
+<li><a class="reference external" href="statistics.html">Statistics</a>: Compute image statistics</li>
+<li><a class="reference external" href="texture.html">Texture</a>: Create a tiled texture image or tile an image with a texture.</li>
+<li><a class="reference external" href="transform.html">Transform</a>: Chop, coalesce, deconstruct, flatten, flip, flop, mosiac, roll,
+or shave image</li>
+</ul>
+</blockquote>
+<p>Here are a few sample programs to get you started.</p>
+<p>This example program (convert.c) simply converts from one file name to
+another (and will automatically change formats based on file
+extension):</p>
+<pre class="literal-block">
+#include &lt;stdio.h&gt;
+#include &lt;stdlib.h&gt;
+#include &lt;string.h&gt;
+#include &lt;time.h&gt;
+#include &lt;sys/types.h&gt;
+#include &lt;magick/api.h&gt;
+
+int main ( int argc, char **argv )
+{
+ Image
+ *image = (Image *) NULL;
+
+ char
+ infile[MaxTextExtent],
+ outfile[MaxTextExtent];
+
+ int
+ arg = 1,
+ exit_status = 0;
+
+ ImageInfo
+ *imageInfo;
+
+ ExceptionInfo
+ exception;
+
+ InitializeMagick(NULL);
+ imageInfo=CloneImageInfo(0);
+ GetExceptionInfo(&amp;exception);
+
+ if (argc != 3)
+ {
+ (void) fprintf ( stderr, &quot;Usage: %s infile outfile\n&quot;, argv[0] );
+ (void) fflush(stderr);
+ exit_status = 1;
+ goto program_exit;
+ }
+
+ (void) strncpy(infile, argv[arg], MaxTextExtent-1 );
+ arg++;
+ (void) strncpy(outfile, argv[arg], MaxTextExtent-1 );
+
+ (void) strcpy(imageInfo-&gt;filename, infile);
+ image = ReadImage(imageInfo, &amp;exception);
+ if (image == (Image *) NULL)
+ {
+ CatchException(&amp;exception);
+ exit_status = 1;
+ goto program_exit;
+ }
+
+ (void) strcpy(image-&gt;filename, outfile);
+ if (!WriteImage (imageInfo,image))
+ {
+ CatchException(&amp;image-&gt;exception);
+ exit_status = 1;
+ goto program_exit;
+ }
+
+ program_exit:
+
+ if (image != (Image *) NULL)
+ DestroyImage(image);
+
+ if (imageInfo != (ImageInfo *) NULL)
+ DestroyImageInfo(imageInfo);
+ DestroyMagick();
+
+ return exit_status;
+}
+</pre>
+<p>This example program (demo.c) which reads multiple input files
+(possibly animation files) specified on the command line, resizes the
+image frames to 106x80, and writes the resulting animation to disk:</p>
+<pre class="literal-block">
+#include &lt;stdio.h&gt;
+#include &lt;string.h&gt;
+#include &lt;time.h&gt;
+#include &lt;sys/types.h&gt;
+#include &lt;magick/api.h&gt;
+
+int main(int argc,char **argv)
+{
+ ExceptionInfo
+ exception;
+
+ Image
+ *image,
+ *images,
+ *resize_image,
+ *thumbnails;
+
+ ImageInfo
+ *image_info;
+
+ int
+ i;
+
+ /*
+ Initialize the image info structure and read the list of files
+ provided by the user as a image sequence
+ */
+ InitializeMagick(*argv);
+ GetExceptionInfo(&amp;exception);
+ image_info=CloneImageInfo((ImageInfo *) NULL);
+ images=NewImageList();
+ for (i=1; i&lt; argc-1; i++)
+ {
+ (void) strcpy(image_info-&gt;filename,argv[i]);
+ printf(&quot;Reading %s ...&quot;, image_info-&gt;filename);
+ image=ReadImage(image_info,&amp;exception);
+ printf(&quot; %lu frames\n&quot;, GetImageListLength(image));
+ if (exception.severity != UndefinedException)
+ CatchException(&amp;exception);
+ if (image)
+ (void) AppendImageToList(&amp;images,image);
+ }
+
+ if (!images)
+ {
+ printf(&quot;Failed to read any images!\n&quot;);
+ exit(1);
+ }
+ /*
+ Create a thumbnail image sequence
+ */
+ thumbnails=NewImageList();
+ while ((image=RemoveFirstImageFromList(&amp;images)) != (Image *) NULL)
+ {
+ resize_image=ResizeImage(image,106,80,LanczosFilter,1.0,&amp;exception);
+ DestroyImage(image);
+ if (resize_image == (Image *) NULL)
+ {
+ CatchException(&amp;exception);
+ continue;
+ }
+ (void) AppendImageToList(&amp;thumbnails,resize_image);
+ }
+ /*
+ Write the thumbnail image sequence to file
+ */
+ if (thumbnails)
+ {
+ (void) strcpy(thumbnails-&gt;filename,argv[argc-1]);
+ image_info-&gt;adjoin=MagickTrue;
+ printf(&quot;Writing %s ... %lu frames\n&quot;, thumbnails-&gt;filename,
+ GetImageListLength(thumbnails));
+ WriteImage(image_info,thumbnails);
+ }
+
+ /*
+ Release resources
+ */
+ DestroyImageList(thumbnails);
+ DestroyImageInfo(image_info);
+ DestroyExceptionInfo(&amp;exception);
+ DestroyMagick();
+ return(0);
+}
+</pre>
+<p>To compile on Unix, the command would look something like this:</p>
+<pre class="literal-block">
+gcc -o demo demo.c -O `GraphicsMagick-config --cppflags --ldflags --libs`
+</pre>
+<p>As a usage example, with the input files in1.gif, in2.png, and in3.jpg, create
+the animation file out.miff:</p>
+<pre class="literal-block">
+demo in1.gif in2.png in3.jpg out.miff
+</pre>
+<p>The resulting animation may be played on an X11 display using 'gm animate
+out.miff'.</p>
+<p>The GraphicsMagick-config script reproduces the options which were used to
+compile the GraphicsMagick utilities. Using compatible options ensures that
+your program will compile and run.</p>
+<hr class="docutils" />
+<p>Copyright © GraphicsMagick Group 2002 - 2020</p>
+</div>
+</body>
+</html>
diff --git a/www/api/api.rst b/www/api/api.rst
index 694e1ad..dd33fb6 100644
--- a/www/api/api.rst
+++ b/www/api/api.rst
@@ -32,6 +32,7 @@ GraphicsMagick Core C API
.. _Image : image.html
.. _Import : import.html
.. _List : list.html
+.. _Log : log.html
.. _Magick : magick.html
.. _Memory : memory.html
.. _Monitor : monitor.html
@@ -44,6 +45,7 @@ GraphicsMagick Core C API
.. _Profile : profile.html
.. _Quantize : quantize.html
.. _Registry : registry.html
+.. _Render : render.html
.. _Resize : resize.html
.. _Resource : resource.html
.. _Segment : segment.html
@@ -93,6 +95,7 @@ documentation, please reference the types_ documentation as required:
* Image_: Miscellaneous image methods
* Import_ : Import image pixels from common representations
* List_: Manage image lists
+ * Log_: Event logging support
* Magick_: Image format support interfaces
* Memory_: Memory allocation methods
* Monitor_: Progress monitor callbacks
@@ -105,6 +108,7 @@ documentation, please reference the types_ documentation as required:
* Profile_: Attached profile access
* Quantize_: Reduce image colors or assign image colors from colormap
* Registry_: Store and retrieve images in memory by ID
+ * Render_: Render vector graphics
* Resize_: Resize an Image
* Resource_: Set and get resource limits
* Segment_: Coalese similar image colors
@@ -296,9 +300,3 @@ out.miff'.
The GraphicsMagick-config script reproduces the options which were used to
compile the GraphicsMagick utilities. Using compatible options ensures that
your program will compile and run.
-
--------------------------------------------------------------------------------
-
-.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGN
-
-Copyright |copy| GraphicsMagick Group 2002 - 2020
diff --git a/www/api/api_hyperlinks.rst b/www/api/api_hyperlinks.rst
index 2c6aada..fc2579e 100644
--- a/www/api/api_hyperlinks.rst
+++ b/www/api/api_hyperlinks.rst
@@ -26,6 +26,9 @@
.. _IndexPacket: ../api/types.html#indexpacket
.. _InterlaceType: ../api/types.html#interlacetype
.. _LayerType: ../api/types.html#layertype
+.. _LogEventType: ../api/types.html#logeventtype
+.. _LogMethod: ../api/types.html#logmethod
+.. _LogOutputType: ../api/types.html#logoutputtype
.. _MagickInfo: ../api/types.html#magickinfo
.. _MonitorHandler: ../api/types.html#monitorhandler
.. _MontageInfo: ../api/types.html#montageinfo
diff --git a/www/api/attribute.html b/www/api/attribute.html
index 92bec54..fdfa4a8 100644
--- a/www/api/attribute.html
+++ b/www/api/attribute.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="attribute">
@@ -190,5 +190,10 @@ attribute to replace or add to the list.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/average.html b/www/api/average.html
index a83a480..c5429c4 100644
--- a/www/api/average.html
+++ b/www/api/average.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="average">
@@ -71,5 +71,10 @@ exception describes the reason for the failure.</p>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/average.html.orig b/www/api/average.html.orig
new file mode 100644
index 0000000..07ac17f
--- /dev/null
+++ b/www/api/average.html.orig
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>average</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="average">
+<h1 class="title">average</h1>
+<h2 class="subtitle" id="image-averaging-functions">Image averaging functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#averageimages" id="id1">AverageImages</a></li>
+</ul>
+</div>
+<div class="section" id="averageimages">
+<h1><a class="toc-backref" href="#id1">AverageImages</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AverageImages( <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>The Average() method takes a set of images and averages them together.
+Each image in the set must have the same width and height. Average()
+returns a single image with each corresponding pixel component of
+each image averaged. On failure, a NULL image is returned and
+exception describes the reason for the failure.</p>
+<p>The format of the AverageImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AverageImages( <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image sequence.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/blob.html b/www/api/blob.html
index e9e75d7..f3cf4f7 100644
--- a/www/api/blob.html
+++ b/www/api/blob.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>blob</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="blob">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="read-or-write-formatted-images-in-memory-blobs">Read or write formatted images in memory (BLOBs)</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#attachblob" id="id45">AttachBlob</a></li>
<li><a class="reference internal" href="#blobisseekable" id="id46">BlobIsSeekable</a></li>
@@ -691,5 +691,10 @@ the blob is temporary.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/blob.html.orig b/www/api/blob.html.orig
new file mode 100644
index 0000000..b2c70d7
--- /dev/null
+++ b/www/api/blob.html.orig
@@ -0,0 +1,695 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>blob</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="blob">
+<h1 class="title">blob</h1>
+<h2 class="subtitle" id="read-or-write-formatted-images-in-memory-blobs">Read or write formatted images in memory (BLOBs)</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#attachblob" id="id45">AttachBlob</a></li>
+<li><a class="reference internal" href="#blobisseekable" id="id46">BlobIsSeekable</a></li>
+<li><a class="reference internal" href="#blobreservesize" id="id47">BlobReserveSize</a></li>
+<li><a class="reference internal" href="#blobtofile" id="id48">BlobToFile</a></li>
+<li><a class="reference internal" href="#blobtoimage" id="id49">BlobToImage</a></li>
+<li><a class="reference internal" href="#cloneblobinfo" id="id50">CloneBlobInfo</a></li>
+<li><a class="reference internal" href="#destroyblob" id="id51">DestroyBlob</a></li>
+<li><a class="reference internal" href="#destroyblobinfo" id="id52">DestroyBlobInfo</a></li>
+<li><a class="reference internal" href="#detachblob" id="id53">DetachBlob</a></li>
+<li><a class="reference internal" href="#filetoblob" id="id54">FileToBlob</a></li>
+<li><a class="reference internal" href="#getblobfilehandle" id="id55">GetBlobFileHandle</a></li>
+<li><a class="reference internal" href="#getblobinfo" id="id56">GetBlobInfo</a></li>
+<li><a class="reference internal" href="#getblobstatus" id="id57">GetBlobStatus</a></li>
+<li><a class="reference internal" href="#getblobfirsterrno" id="id58">GetBlobFirstErrno</a></li>
+<li><a class="reference internal" href="#getblobstreamdata" id="id59">GetBlobStreamData</a></li>
+<li><a class="reference internal" href="#getblobtemporary" id="id60">GetBlobTemporary</a></li>
+<li><a class="reference internal" href="#getconfigureblob" id="id61">GetConfigureBlob</a></li>
+<li><a class="reference internal" href="#imagetoblob" id="id62">ImageToBlob</a></li>
+<li><a class="reference internal" href="#imagetofile" id="id63">ImageToFile</a></li>
+<li><a class="reference internal" href="#pingblob" id="id64">PingBlob</a></li>
+<li><a class="reference internal" href="#referenceblob" id="id65">ReferenceBlob</a></li>
+<li><a class="reference internal" href="#setblobclosable" id="id66">SetBlobClosable</a></li>
+<li><a class="reference internal" href="#setblobtemporary" id="id67">SetBlobTemporary</a></li>
+</ul>
+</div>
+<div class="section" id="attachblob">
+<h1><a class="toc-backref" href="#id45">AttachBlob</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void AttachBlob( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info, const void *blob, const size_t length );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>AttachBlob() attaches a blob to the BlobInfo structure.</p>
+<p>The format of the AttachBlob method is:</p>
+<pre class="literal-block">
+void AttachBlob( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info, const void *blob, const size_t length );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>blob_info:</dt>
+<dd>Specifies a pointer to a BlobInfo structure.</dd>
+<dt>blob:</dt>
+<dd>The address of a character stream in one of the image formats
+understood by GraphicsMagick.</dd>
+<dt>length:</dt>
+<dd>This size_t integer reflects the length in bytes of the blob.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blobisseekable">
+<h1><a class="toc-backref" href="#id46">BlobIsSeekable</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickBool BlobIsSeekable( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>BlobIsSeekable() returns MagickTrue if the blob supports seeks
+(SeekBlob() is functional).</p>
+<p>The format of the BlobIsSeekable method is:</p>
+<pre class="literal-block">
+MagickBool BlobIsSeekable( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Image to query</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blobreservesize">
+<h1><a class="toc-backref" href="#id47">BlobReserveSize</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail BlobReserveSize( <a class="reference external" href="../api/types.html#image">Image</a> *image, magick_off_t size );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>BlobReserveSize() sets the output size of the blob or file. This is used
+as a means to minimize memory or filesystem fragmentation if the final
+output size is known in advance. While it is possible that file
+fragmentation is reduced, it is also possible that file write
+performance is reduced by changing a write operation to a read, modify,
+write operation.</p>
+<p>The format of the BlobReserveSize method is:</p>
+<pre class="literal-block">
+MagickPassFail BlobReserveSize( <a class="reference external" href="../api/types.html#image">Image</a> *image, magick_off_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Image to update</dd>
+<dt>size:</dt>
+<dd>New output size.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blobtofile">
+<h1><a class="toc-backref" href="#id48">BlobToFile</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail BlobToFile( const char *filename, const void *blob, const size_t length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>BlobToFile() writes a blob to a file. It returns MagickFail if an error
+occurs otherwise MagickPass.</p>
+<p>The format of the BlobToFile method is:</p>
+<pre class="literal-block">
+MagickPassFail BlobToFile( const char *filename, const void *blob, const size_t length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>BlobToFile returns MagickPass on success; otherwise, it
+returns MagickFail if an error occurs.</dd>
+<dt>filename:</dt>
+<dd>Write the blob to this file.</dd>
+<dt>blob:</dt>
+<dd>The address of a blob.</dd>
+<dt>length:</dt>
+<dd>This length in bytes of the blob.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blobtoimage">
+<h1><a class="toc-backref" href="#id49">BlobToImage</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BlobToImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, const void *blob,
+ const size_t length, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BlobToImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, const void *blob,
+ const size_t length, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>blob:</dt>
+<dd>The address of a character stream in one of the image formats
+understood by GraphicsMagick.</dd>
+<dt>length:</dt>
+<dd>This size_t integer reflects the length in bytes of the blob.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="cloneblobinfo">
+<h1><a class="toc-backref" href="#id50">CloneBlobInfo</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *CloneBlobInfo( const <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>CloneBlobInfo() makes a duplicate of the given blob info structure, or if
+blob info is NULL, a new one.</p>
+<p>The format of the CloneBlobInfo method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *CloneBlobInfo( const <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>clone_info:</dt>
+<dd>Method CloneBlobInfo returns a duplicate of the given
+blob info, or if blob info is NULL a new one.</dd>
+<dt>quantize_info:</dt>
+<dd>a structure of type info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="destroyblob">
+<h1><a class="toc-backref" href="#id51">DestroyBlob</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DestroyBlob( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>DestroyBlob() deallocates memory associated with a blob. The blob is
+a reference counted object so the object is only destroyed once its
+reference count decreases to zero.</p>
+<p>The format of the DestroyBlob method is:</p>
+<pre class="literal-block">
+void DestroyBlob( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="destroyblobinfo">
+<h1><a class="toc-backref" href="#id52">DestroyBlobInfo</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DestroyBlobInfo( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>DestroyBlobInfo() deallocates memory associated with an BlobInfo structure.
+The blob is a reference counted object so the object is only destroyed once
+its reference count decreases to zero. Use of DestroyBlob is preferred over
+this function since it assures that the blob is closed prior to destruction.</p>
+<p>This function is no longer used within GraphicsMagick.</p>
+<p>The format of the DestroyBlobInfo method is:</p>
+<pre class="literal-block">
+void DestroyBlobInfo( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>blob:</dt>
+<dd>Specifies a pointer to a BlobInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="detachblob">
+<h1><a class="toc-backref" href="#id53">DetachBlob</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DetachBlob( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>DetachBlob() detaches a blob from the BlobInfo structure.</p>
+<p>The format of the DetachBlob method is:</p>
+<pre class="literal-block">
+void DetachBlob( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>blob_info:</dt>
+<dd>Specifies a pointer to a BlobInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="filetoblob">
+<h1><a class="toc-backref" href="#id54">FileToBlob</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *FileToBlob( const char *filename, size_t *length, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>FileToBlob() returns the contents of a file in a buffer allocated via
+MagickMalloc() (which is equivalent to the system malloc() by default).
+The character '0' is appended to the buffer in case the buffer will be
+accessed as a string. The length of the buffer (not including the extra
+terminating '0' character) is returned via the 'length' parameter.
+If an error occurs, a NULL pointer is returned. The returned buffer
+must be freed by the user in a matter compatible with MagickMalloc()
+(e.g. via MagickFree()).</p>
+<p>The format of the FileToBlob method is:</p>
+<pre class="literal-block">
+void *FileToBlob( const char *filename, size_t *length, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>blob:</dt>
+<dd>FileToBlob() returns the contents of a file as a blob. If
+an error occurs NULL is returned.</dd>
+<dt>filename:</dt>
+<dd>The filename.</dd>
+<dt>length:</dt>
+<dd>This pointer to a size_t integer sets the initial length of the
+blob. On return, it reflects the actual length of the blob.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getblobfilehandle">
+<h1><a class="toc-backref" href="#id55">GetBlobFileHandle</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+FILE *GetBlobFileHandle( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>GetBlobFileHandle() returns the stdio file handle associated with the
+image blob. If there is no associated file handle, then a null pointer
+is returned.</p>
+<p>The format of the GetBlobFileHandle method is:</p>
+<pre class="literal-block">
+FILE *GetBlobFileHandle( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Image to query</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getblobinfo">
+<h1><a class="toc-backref" href="#id56">GetBlobInfo</a></h1>
+<div class="section" id="id21">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void GetBlobInfo( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+</div>
+<div class="section" id="id22">
+<h2>Description</h2>
+<p>GetBlobInfo() initializes the BlobInfo structure.</p>
+<p>The format of the GetBlobInfo method is:</p>
+<pre class="literal-block">
+void GetBlobInfo( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>blob_info:</dt>
+<dd>Specifies a pointer to a BlobInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getblobstatus">
+<h1><a class="toc-backref" href="#id57">GetBlobStatus</a></h1>
+<div class="section" id="id23">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int GetBlobStatus( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id24">
+<h2>Description</h2>
+<p>GetBlobStatus() returns the blob error status. For GraphicsMagick
+1.3.26 and earlier, this was only set by CloseBlob() but now it is
+set immediately upon error.</p>
+<p>The format of the GetBlobStatus method is:</p>
+<pre class="literal-block">
+int GetBlobStatus( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getblobfirsterrno">
+<h1><a class="toc-backref" href="#id58">GetBlobFirstErrno</a></h1>
+<div class="section" id="id25">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int GetBlobFirstErrno( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id26">
+<h2>Description</h2>
+<p>GetBlobFirstErrno() returns the errno present (if any) when the blob
+first encountered as error, as indicated by GetBlobStatus(). The
+the purpose of this function is to help improve the quality of error
+reporting.</p>
+<p>The format of the GetBlobFirstErrno method is:</p>
+<pre class="literal-block">
+int GetBlobFirstErrno( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getblobstreamdata">
+<h1><a class="toc-backref" href="#id59">GetBlobStreamData</a></h1>
+<div class="section" id="id27">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned char *GetBlobStreamData( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id28">
+<h2>Description</h2>
+<p>GetBlobStreamData() returns the stream data for the image. The data is only
+available if the data is stored on the heap, or is memory mapped.
+Otherwise a NULL value is returned.</p>
+<p>The format of the GetBlobStreamData method is:</p>
+<pre class="literal-block">
+unsigned char *GetBlobStreamData( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getblobtemporary">
+<h1><a class="toc-backref" href="#id60">GetBlobTemporary</a></h1>
+<div class="section" id="id29">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickBool GetBlobTemporary( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id30">
+<h2>Description</h2>
+<p>GetBlobTemporary() returns MagickTrue if the file associated with the blob
+is a temporary file and should be removed when the associated image is
+destroyed.</p>
+<p>The format of the GetBlobTemporary method is:</p>
+<pre class="literal-block">
+MagickBool GetBlobTemporary( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Image to query</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getconfigureblob">
+<h1><a class="toc-backref" href="#id61">GetConfigureBlob</a></h1>
+<div class="section" id="id31">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *GetConfigureBlob( const char *filename, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id32">
+<h2>Description</h2>
+<p>GetConfigureBlob() returns the specified configure file as a blob.</p>
+<p>The format of the GetConfigureBlob method is:</p>
+<pre class="literal-block">
+void *GetConfigureBlob( const char *filename, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>filename:</dt>
+<dd>The configure file name.</dd>
+<dt>path:</dt>
+<dd>return the full path information of the configure file.</dd>
+<dt>length:</dt>
+<dd>This pointer to a size_t integer sets the initial length of the
+blob. On return, it reflects the actual length of the blob.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="imagetoblob">
+<h1><a class="toc-backref" href="#id62">ImageToBlob</a></h1>
+<div class="section" id="id33">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *ImageToBlob( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image, size_t *length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id34">
+<h2>Description</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 function is the equivalent of WriteImage(), but writes the
+formatted &quot;file&quot; to a memory buffer rather than to an actual file.</p>
+<p>The format of the ImageToBlob method is:</p>
+<pre class="literal-block">
+void *ImageToBlob( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image, size_t *length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>length:</dt>
+<dd>This pointer to a size_t integer sets the initial length of the
+blob. On return, it reflects the actual length of the blob.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="imagetofile">
+<h1><a class="toc-backref" href="#id63">ImageToFile</a></h1>
+<div class="section" id="id35">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ImageToFile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *filename,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id36">
+<h2>Description</h2>
+<p>ImageToFile() copies the input image from an open blob stream to a file.
+It returns False if an error occurs otherwise True. This function is used
+to handle coders which are unable to stream the data in using Blob I/O.
+Instead of streaming the data in, the data is streammed to a temporary
+file, and the coder accesses the temorary file directly.</p>
+<p>The format of the ImageToFile method is:</p>
+<pre class="literal-block">
+MagickPassFail ImageToFile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *filename,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>ImageToFile returns MagickPass on success; otherwise, it
+returns MagickFail if an error occurs.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>filename:</dt>
+<dd>Write the image to this file.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pingblob">
+<h1><a class="toc-backref" href="#id64">PingBlob</a></h1>
+<div class="section" id="id37">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *PingBlob( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, const void *blob, const size_t length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id38">
+<h2>Description</h2>
+<p>PingBlob() returns all the attributes of an image or image sequence except
+for the pixels. It is much faster and consumes far less memory than
+BlobToImage(). On failure, a NULL image is returned and exception
+describes the reason for the failure.</p>
+<p>The format of the PingBlob method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *PingBlob( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, const void *blob, const size_t length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>blob:</dt>
+<dd>The address of a character stream in one of the image formats
+understood by GraphicsMagick.</dd>
+<dt>length:</dt>
+<dd>This size_t integer reflects the length in bytes of the blob.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="referenceblob">
+<h1><a class="toc-backref" href="#id65">ReferenceBlob</a></h1>
+<div class="section" id="id39">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> ReferenceBlob( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+</div>
+<div class="section" id="id40">
+<h2>Description</h2>
+<p>ReferenceBlob() increments the reference count associated with the pixel
+blob, returning a pointer to the blob.</p>
+<p>The format of the ReferenceBlob method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> ReferenceBlob( <a class="reference external" href="../api/types.html#blobinfo">BlobInfo</a> *blob_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>blob_info:</dt>
+<dd>The blob_info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setblobclosable">
+<h1><a class="toc-backref" href="#id66">SetBlobClosable</a></h1>
+<div class="section" id="id41">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetBlobClosable( <a class="reference external" href="../api/types.html#image">Image</a> *image, MagickBool closeable );
+</pre>
+</div>
+<div class="section" id="id42">
+<h2>Description</h2>
+<p>SetBlobClosable() enables closing the blob if MagickTrue is passed, and
+exempts the blob from being closed if False is passed. Blobs are closable
+by default (default MagickTrue).</p>
+<p>The format of the SetBlobClosable method is:</p>
+<pre class="literal-block">
+void SetBlobClosable( <a class="reference external" href="../api/types.html#image">Image</a> *image, MagickBool closeable );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Image to update</dd>
+<dt>closeable:</dt>
+<dd>Set to FALSE in order to disable closing the blob.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setblobtemporary">
+<h1><a class="toc-backref" href="#id67">SetBlobTemporary</a></h1>
+<div class="section" id="id43">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetBlobTemporary( <a class="reference external" href="../api/types.html#image">Image</a> *image, MagickBool isTemporary );
+</pre>
+</div>
+<div class="section" id="id44">
+<h2>Description</h2>
+<p>SetBlobTemporary() sets a boolean flag (default False) to specify if
+the file associated with the blob is a temporary file and should be
+removed when the associated image is destroyed.</p>
+<p>The format of the SetBlobTemporary method is:</p>
+<pre class="literal-block">
+void SetBlobTemporary( <a class="reference external" href="../api/types.html#image">Image</a> *image, MagickBool isTemporary );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Image to update</dd>
+<dt>isTemporary:</dt>
+<dd>Set to True to indicate that the file associated with
+the blob is temporary.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/cdl.html b/www/api/cdl.html
index 271d26e..b416d14 100644
--- a/www/api/cdl.html
+++ b/www/api/cdl.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="cdl">
@@ -83,5 +83,10 @@ red green and blue channels, plus saturation.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/cdl.html.orig b/www/api/cdl.html.orig
new file mode 100644
index 0000000..c46cb92
--- /dev/null
+++ b/www/api/cdl.html.orig
@@ -0,0 +1,87 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>cdl</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="cdl">
+<h1 class="title">cdl</h1>
+<h2 class="subtitle" id="apply-asc-cdl-transform-to-image">Apply ASC CDL transform to image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#cdlimage" id="id1">CdlImage</a></li>
+</ul>
+</div>
+<div class="section" id="cdlimage">
+<h1><a class="toc-backref" href="#id1">CdlImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail CdlImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *cdl );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>The CdlImage() method applies (&quot;bakes in&quot;) the ASC-CDL which is a format
+for the exchange of basic primary color grading information between
+equipment and software from different manufacturers. The format defines
+the math for three functions: slope, offset and power. Each function uses
+a number for the red, green, and blue color channels for a total of nine
+numbers comprising a single color decision. A tenth number for chrominance
+(saturation) has been proposed but is not yet standardized.</p>
+<p>The cdl argument string is comma delimited and is in the form (but
+without invervening spaces or line breaks):</p>
+<p>redslope, redoffset, redpower :
+greenslope, greenoffset, greenpower :
+blueslope, blueoffset, bluepower :
+saturation</p>
+<p>with the unity (no change) specification being:</p>
+<p>&quot;1.0,0.0,1.0:1.0,0.0,1.0:1.0,0.0,1.0:0.0&quot;</p>
+<p>See <a class="reference external" href="http://en.wikipedia.org/wiki/ASC_CDL">http://en.wikipedia.org/wiki/ASC_CDL</a> for more information.</p>
+<p>The format of the CdlImage method is:</p>
+<pre class="literal-block">
+MagickPassFail CdlImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *cdl );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>cdl:</dt>
+<dd>Define the coefficients for slope offset and power in the
+red green and blue channels, plus saturation.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/channel.html b/www/api/channel.html
index 0346938..c16cc92 100644
--- a/www/api/channel.html
+++ b/www/api/channel.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="channel">
@@ -230,5 +230,10 @@ MagickPassFail SetImageChannelDepth( <a class="reference external" href="../api/
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/channel.html.orig b/www/api/channel.html.orig
new file mode 100644
index 0000000..d7e170f
--- /dev/null
+++ b/www/api/channel.html.orig
@@ -0,0 +1,234 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>channel</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="channel">
+<h1 class="title">channel</h1>
+<h2 class="subtitle" id="image-channel-functions">Image channel functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#channelimage" id="id11">ChannelImage</a></li>
+<li><a class="reference internal" href="#exportimagechannel" id="id12">ExportImageChannel</a></li>
+<li><a class="reference internal" href="#getimagechanneldepth" id="id13">GetImageChannelDepth</a></li>
+<li><a class="reference internal" href="#importimagechannel" id="id14">ImportImageChannel</a></li>
+<li><a class="reference internal" href="#importimagechannelsmasked" id="id15">ImportImageChannelsMasked</a></li>
+<li><a class="reference internal" href="#setimagechanneldepth" id="id16">SetImageChannelDepth</a></li>
+</ul>
+</div>
+<div class="section" id="channelimage">
+<h1><a class="toc-backref" href="#id11">ChannelImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int ChannelImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Transform an image so that the resulting image is a grayscale image
+based on a specified image channel. The resulting image is returned in
+the RGB colorspace. This function does not force or assume an input
+image colorspace so it may be used to extract channels from images in
+colorspaces other than RGB or CMYK. For example, if the image is currently
+transformed to the HWB colorspace, the 'B' channel may be extracted by
+specifying RedChannel as the ChannelType argument.</p>
+<p>The format of the ChannelImage method is:</p>
+<pre class="literal-block">
+unsigned int ChannelImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>Identify which channel to extract: Red, Cyan, Green, Magenta,
+Blue, Yellow, or Opacity.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="exportimagechannel">
+<h1><a class="toc-backref" href="#id12">ExportImageChannel</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ExportImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>ExportImageChannel() exports a specified image channel as a new image.</p>
+<p>The format of the ExportImageChannel method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ExportImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The source image.</dd>
+<dt>channel:</dt>
+<dd>The image channel to export</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagechanneldepth">
+<h1><a class="toc-backref" href="#id13">GetImageChannelDepth</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned long GetImageChannelDepth( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>GetImageChannelDepth() returns the minimum bit depth required to store
+the specified image channel without actual loss of color resolution.
+Pixel components are stored in a Quantum, which is 8, 16, or 32 bits
+depending on the QuantumDepth value set when the software is compiled.
+GetImageChannelDepth() returns the smallest modulus storage size which
+supports the scale of the pixel within the range (i.e. no information is
+lost). As an example, the value one is returned for a bilevel channel
+since only one bit of resolution is required to represent a bilevel channel.</p>
+<p>The format of the GetImageChannelDepth method is:</p>
+<pre class="literal-block">
+unsigned long GetImageChannelDepth( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>Channel to test.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="importimagechannel">
+<h1><a class="toc-backref" href="#id14">ImportImageChannel</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ImportImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *source_image, <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>ImportImageChannel() imports an image into the specified image channel.</p>
+<p>The format of the ImportImageChannel method is:</p>
+<pre class="literal-block">
+MagickPassFail ImportImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *source_image, <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel );
+</pre>
+<dl class="docutils">
+<dt>source_image:</dt>
+<dd>The image to use as the replacement image channel.</dd>
+<dt>update_image:</dt>
+<dd>The image to import the channel into.</dd>
+<dt>channel:</dt>
+<dd>The image channel to import</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="importimagechannelsmasked">
+<h1><a class="toc-backref" href="#id15">ImportImageChannelsMasked</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ImportImageChannelsMasked( const <a class="reference external" href="../api/types.html#image">Image</a> *source_image,
+ <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channels );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>ImportImageChannelsMasked() imports all the channels from a source
+image to an update image, except for the channels specified.</p>
+<p>The format of the ImportImageChannelsMasked method is:</p>
+<pre class="literal-block">
+MagickPassFail ImportImageChannelsMasked( const <a class="reference external" href="../api/types.html#image">Image</a> *source_image,
+ <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channels );
+</pre>
+<dl class="docutils">
+<dt>source_image:</dt>
+<dd>The image from which to extract the replacement channels.</dd>
+<dt>update_image:</dt>
+<dd>The image to import the channels into.</dd>
+<dt>channel:</dt>
+<dd>The image channel to import</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setimagechanneldepth">
+<h1><a class="toc-backref" href="#id16">SetImageChannelDepth</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail SetImageChannelDepth( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const unsigned int depth );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>SetImageChannelDepth() translates the pixel quantums in the specified
+channel so that if they are later divided to fit within the specified bit
+depth, that no additional information is lost (i.e. no remainder resulting
+from the division). Note that any subsequent image processing is likely
+to increase the effective depth of the image channels. A non-zero
+value is returned if the operation is successful. Check the exception
+member of image to determine the cause for any failure.</p>
+<p>The format of the SetImageChannelDepth method is:</p>
+<pre class="literal-block">
+MagickPassFail SetImageChannelDepth( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const unsigned int depth );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image to update.</dd>
+<dt>channel:</dt>
+<dd>Channel to modify.</dd>
+<dt>depth:</dt>
+<dd>Desired channel depth (range 1 to QuantumDepth)</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/color.html b/www/api/color.html
index e63b918..3e8aca4 100644
--- a/www/api/color.html
+++ b/www/api/color.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="color">
@@ -59,7 +59,7 @@ HistogramColorPacket *GetColorHistogram( const <a class="reference external" hre
which specify the number of times each unique color occurs in the image.
The referenced colors parameter is updated with the number of unique colors
in the image. The returned array should be deallocated by the user once it
-is no longer ndded.</p>
+is no longer needed.</p>
<p>The format of the GetColorHistogram method is:</p>
<pre class="literal-block">
HistogramColorPacket *GetColorHistogram( const <a class="reference external" href="../api/types.html#image">Image</a> *, unsigned long *colors,
@@ -132,5 +132,10 @@ PseudoClass or has 256 color or less.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/color.html.orig b/www/api/color.html.orig
new file mode 100644
index 0000000..5ff43e7
--- /dev/null
+++ b/www/api/color.html.orig
@@ -0,0 +1,136 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>color</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="color">
+<h1 class="title">color</h1>
+<h2 class="subtitle" id="color-related-functions">Color related functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#getcolorhistogram" id="id5">GetColorHistogram</a></li>
+<li><a class="reference internal" href="#getnumbercolors" id="id6">GetNumberColors</a></li>
+<li><a class="reference internal" href="#ispaletteimage" id="id7">IsPaletteImage</a></li>
+</ul>
+</div>
+<div class="section" id="getcolorhistogram">
+<h1><a class="toc-backref" href="#id5">GetColorHistogram</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+HistogramColorPacket *GetColorHistogram( const <a class="reference external" href="../api/types.html#image">Image</a> *, unsigned long *colors,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *);
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Method GetColorHistogram returns an array of HistogramColorPacket structures
+which specify the number of times each unique color occurs in the image.
+The referenced colors parameter is updated with the number of unique colors
+in the image. The returned array should be deallocated by the user once it
+is no longer ndded.</p>
+<p>The format of the GetColorHistogram method is:</p>
+<pre class="literal-block">
+HistogramColorPacket *GetColorHistogram( const <a class="reference external" href="../api/types.html#image">Image</a> *, unsigned long *colors,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *);
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>colors:</dt>
+<dd>The referenced value is updated with the with the number of
+unique colors.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getnumbercolors">
+<h1><a class="toc-backref" href="#id6">GetNumberColors</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned long GetNumberColors( const <a class="reference external" href="../api/types.html#image">Image</a> *image, FILE *file,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>Method GetNumberColors returns the number of unique colors in an image.</p>
+<p>The format of the GetNumberColors method is:</p>
+<pre class="literal-block">
+unsigned long GetNumberColors( const <a class="reference external" href="../api/types.html#image">Image</a> *image, FILE *file,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>file:</dt>
+<dd>Write a histogram of the color distribution to this file handle.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="ispaletteimage">
+<h1><a class="toc-backref" href="#id7">IsPaletteImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickBool IsPaletteImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>Method IsPaletteImage returns True if the image is PseudoClass and has 256
+unique colors or less.</p>
+<p>The format of the IsPaletteImage method is:</p>
+<pre class="literal-block">
+MagickBool IsPaletteImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows.</p>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method IsPaletteImage returns True is the image is
+PseudoClass or has 256 color or less.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/colormap.html b/www/api/colormap.html
index 10c17c8..b652c72 100644
--- a/www/api/colormap.html
+++ b/www/api/colormap.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="colormap">
@@ -134,5 +134,10 @@ MagickPassFail ReplaceImageColormap( <a class="reference external" href="../api/
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/colormap.html.orig b/www/api/colormap.html.orig
new file mode 100644
index 0000000..2b8d061
--- /dev/null
+++ b/www/api/colormap.html.orig
@@ -0,0 +1,138 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>colormap</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="colormap">
+<h1 class="title">colormap</h1>
+<h2 class="subtitle" id="colormap-related-functions">Colormap related functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#allocateimagecolormap" id="id5">AllocateImageColormap</a></li>
+<li><a class="reference internal" href="#cyclecolormapimage" id="id6">CycleColormapImage</a></li>
+<li><a class="reference internal" href="#replaceimagecolormap" id="id7">ReplaceImageColormap</a></li>
+</ul>
+</div>
+<div class="section" id="allocateimagecolormap">
+<h1><a class="toc-backref" href="#id5">AllocateImageColormap</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail AllocateImageColormap( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long colors );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>AllocateImageColormap() allocates an image colormap and initializes
+it to a linear gray colorspace with increasing intensity. If the image
+already has a colormap, it is replaced. AllocateImageColormap() returns
+MagickPass if successful, otherwise MagickFail if there is not enough memory.</p>
+<p>The format of the AllocateImageColormap method is:</p>
+<pre class="literal-block">
+MagickPassFail AllocateImageColormap( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long colors );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>colors:</dt>
+<dd>The number of colors in the image colormap.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="cyclecolormapimage">
+<h1><a class="toc-backref" href="#id6">CycleColormapImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail CycleColormapImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const int amount );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</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>The format of the CycleColormapImage method is:</p>
+<pre class="literal-block">
+MagickPassFail CycleColormapImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const int amount );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>amount:</dt>
+<dd>Offset the colormap this much.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="replaceimagecolormap">
+<h1><a class="toc-backref" href="#id7">ReplaceImageColormap</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ReplaceImageColormap( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *colormap,
+ const unsigned int colors );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>ReplaceImageColormap() replaces an existing image colormap with a new
+image colormap. The new image colormap is expected to contain all of the
+colors from the existing colormap. The existing colormap indexes are
+adjusted to conform with positions in the new colormap. If the new
+colormap contains duplicate entries, then the associated colormap index
+will point to the first entry found in the colormap and other matching
+entries will not be used. MagickPass is returned if the operation is
+successful, otherwise MagickFail is returned, and image-&gt;exception is
+updated with the cause of the failure.</p>
+<p>This function is useful in case colormap entries need to match across
+multiple images or otherwise occupy specific locations.</p>
+<p>The format of the ReplaceImageColormap method is:</p>
+<pre class="literal-block">
+MagickPassFail ReplaceImageColormap( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *colormap,
+ const unsigned int colors );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>image in which to replace colormap.</dd>
+<dt>colormap:</dt>
+<dd>new colormap.</dd>
+<dt>colors:</dt>
+<dd>number of colors in new colormap.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/compare.html b/www/api/compare.html
index 92b205d..decf7c8 100644
--- a/www/api/compare.html
+++ b/www/api/compare.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="compare">
@@ -296,5 +296,10 @@ void InitializeDifferenceStatistics( DifferenceStatistics *options,
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/compare.html.orig b/www/api/compare.html.orig
new file mode 100644
index 0000000..b9a4209
--- /dev/null
+++ b/www/api/compare.html.orig
@@ -0,0 +1,300 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>compare</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="compare">
+<h1 class="title">compare</h1>
+<h2 class="subtitle" id="compare-images">Compare images</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#differenceimage" id="id13">DifferenceImage</a></li>
+<li><a class="reference internal" href="#getimagechanneldifference" id="id14">GetImageChannelDifference</a></li>
+<li><a class="reference internal" href="#getimagechanneldistortion" id="id15">GetImageChannelDistortion</a></li>
+<li><a class="reference internal" href="#getimagedistortion" id="id16">GetImageDistortion</a></li>
+<li><a class="reference internal" href="#isimagesequal" id="id17">IsImagesEqual</a></li>
+<li><a class="reference internal" href="#initializedifferenceimageoptions" id="id18">InitializeDifferenceImageOptions</a></li>
+<li><a class="reference internal" href="#initializedifferencestatistics" id="id19">InitializeDifferenceStatistics</a></li>
+</ul>
+</div>
+<div class="section" id="differenceimage">
+<h1><a class="toc-backref" href="#id13">DifferenceImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *DifferenceImage( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image, const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image,
+ const DifferenceImageOptions *difference_options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>DifferenceImage() returns an annotated difference image based on the
+the difference between a reference image and a compare image.</p>
+<p>The format of the DifferenceImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *DifferenceImage( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image, const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image,
+ const DifferenceImageOptions *difference_options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>reference_image:</dt>
+<dd>the reference image.</dd>
+<dt>compare_image:</dt>
+<dd>the comparison image.</dd>
+<dt>difference_options:</dt>
+<dd>options to use when differencing.</dd>
+<dt>channel:</dt>
+<dd>the channel(s) to compare.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagechanneldifference">
+<h1><a class="toc-backref" href="#id14">GetImageChannelDifference</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail GetImageChannelDifference( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image,
+ const MetricType metric,
+ DifferenceStatistics *statistics,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>GetImageChannelDifference() updates a user provided statistics structure
+with per-channel, and totalized, difference statistics corresponding
+to a specified comparison metric.</p>
+<p>The format of the GetImageChannelDifference method is:</p>
+<pre class="literal-block">
+MagickPassFail GetImageChannelDifference( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image,
+ const MetricType metric,
+ DifferenceStatistics *statistics,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>reference_image:</dt>
+<dd>the reference image.</dd>
+<dt>compare_image:</dt>
+<dd>the comparison image.</dd>
+<dt>metric:</dt>
+<dd>metric to use when differencing.</dd>
+<dt>statistics:</dt>
+<dd>the statistics structure to populate.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagechanneldistortion">
+<h1><a class="toc-backref" href="#id15">GetImageChannelDistortion</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail GetImageChannelDistortion( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image,
+ const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const MetricType metric, double *distortion,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>GetImageChannelDistortion() updates a distortion parameter with the
+distortion (error) computed according to the specified comparison metric.
+The value returned is only for the channel specified.</p>
+<p>The format of the GetImageChannelDistortion method is:</p>
+<pre class="literal-block">
+MagickPassFail GetImageChannelDistortion( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image,
+ const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const MetricType metric, double *distortion,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>reference_image:</dt>
+<dd>the reference image.</dd>
+<dt>compare_image:</dt>
+<dd>the comparison image.</dd>
+<dt>channel:</dt>
+<dd>the channel to obtain error data for.</dd>
+<dt>metric:</dt>
+<dd>metric to use when differencing.</dd>
+<dt>distortion:</dt>
+<dd>updated with the computed distortion.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagedistortion">
+<h1><a class="toc-backref" href="#id16">GetImageDistortion</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail GetImageDistortion( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image, const MetricType metric,
+ double *distortion, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>GetImageDistortion() updates a distortion parameter with the distortion
+(error) computed according to the specified comparison metric. The value
+returned reflects all enabled channels.</p>
+<p>The format of the GetImageDistortion method is:</p>
+<pre class="literal-block">
+MagickPassFail GetImageDistortion( const <a class="reference external" href="../api/types.html#image">Image</a> *reference_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *compare_image, const MetricType metric,
+ double *distortion, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>reference_image:</dt>
+<dd>the reference image.</dd>
+<dt>compare_image:</dt>
+<dd>the comparison image.</dd>
+<dt>channel:</dt>
+<dd>the channel to obtain error data for.</dd>
+<dt>metric:</dt>
+<dd>metric to use when differencing.</dd>
+<dt>distortion:</dt>
+<dd>updated with the computed distortion.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="isimagesequal">
+<h1><a class="toc-backref" href="#id17">IsImagesEqual</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickBool IsImagesEqual( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *reference );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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 reference image. The error
+measure is assigned to these image members:</p>
+<p>o mean_error_per_pixel: The mean error for any single pixel in
+the image.</p>
+<p>o normalized_mean_error: 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>
+<p>o normalized_maximum_error: 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-&gt;normalized_mean_error, suggests the images are very similiar in
+spatial layout and color.</p>
+<p>The format of the IsImagesEqual method is:</p>
+<pre class="literal-block">
+MagickBool IsImagesEqual( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *reference );
+</pre>
+<p>A description of each parameter follows.</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>reference:</dt>
+<dd>The reference image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="initializedifferenceimageoptions">
+<h1><a class="toc-backref" href="#id18">InitializeDifferenceImageOptions</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void InitializeDifferenceImageOptions( DifferenceImageOptions *options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>InitializeDifferenceImageOptions() assigns default options to a user-provided
+DifferenceImageOptions structure. This function should always be used
+to initialize the DifferenceImageOptions structure prior to making any
+changes to it.</p>
+<p>The format of the InitializeDifferenceImageOptions method is:</p>
+<pre class="literal-block">
+void InitializeDifferenceImageOptions( DifferenceImageOptions *options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>options:</dt>
+<dd>pointer to DifferenceImageOptions structure to initialize.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="initializedifferencestatistics">
+<h1><a class="toc-backref" href="#id19">InitializeDifferenceStatistics</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void InitializeDifferenceStatistics( DifferenceStatistics *options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>InitializeDifferenceStatistics() assigns default options to a user-provided
+DifferenceStatistics structure.</p>
+<p>The format of the InitializeDifferenceStatistics method is:</p>
+<pre class="literal-block">
+void InitializeDifferenceStatistics( DifferenceStatistics *options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>options:</dt>
+<dd>pointer to DifferenceStatistics structure to initialize.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/composite.html b/www/api/composite.html
index d578399..c51f7d7 100644
--- a/www/api/composite.html
+++ b/www/api/composite.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="composite">
@@ -89,5 +89,10 @@ ThresholdCompositeOp, XorCompositeOp, HardLightCompositeOp.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/composite.html.orig b/www/api/composite.html.orig
new file mode 100644
index 0000000..fc85811
--- /dev/null
+++ b/www/api/composite.html.orig
@@ -0,0 +1,93 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>composite</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="composite">
+<h1 class="title">composite</h1>
+<h2 class="subtitle" id="merge-image-pixels-using-a-specified-algorithm">Merge image pixels using a specified algorithm</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#compositeimage" id="id1">CompositeImage</a></li>
+</ul>
+</div>
+<div class="section" id="compositeimage">
+<h1><a class="toc-backref" href="#id1">CompositeImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail CompositeImage( <a class="reference external" href="../api/types.html#image">Image</a> *canvas_image, const <a class="reference external" href="../api/types.html#compositeoperator">CompositeOperator</a> compose,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *composite_image, const long x_offset,
+ const long y_offset );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>CompositeImage() composites the second image (composite_image) onto the
+first (canvas_image) at the specified offsets.</p>
+<p>The format of the CompositeImage method is:</p>
+<pre class="literal-block">
+MagickPassFail CompositeImage( <a class="reference external" href="../api/types.html#image">Image</a> *canvas_image, const <a class="reference external" href="../api/types.html#compositeoperator">CompositeOperator</a> compose,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *composite_image, const long x_offset,
+ const long y_offset );
+</pre>
+<dl class="docutils">
+<dt>canvas_image:</dt>
+<dd>The image to be updated.</dd>
+<dt>compose:</dt>
+<dd>This operator affects how the composite is applied to
+the image. Choose from one of these operators: AddCompositeOp,
+AtopCompositeOp, BumpmapCompositeOp, ClearCompositeOp,
+ColorizeCompositeOp, CopyBlackCompositeOp, CopyBlueCompositeOp,
+CopyCompositeOp, CopyCyanCompositeOp,CopyGreenCompositeOp,
+CopyMagentaCompositeOp, CopyOpacityCompositeOp, CopyRedCompositeOp,
+CopyYellowCompositeOp, DarkenCompositeOp, DifferenceCompositeOp,
+DisplaceCompositeOp, DissolveCompositeOp, DivideCompositeOp,
+HueCompositeOp, InCompositeOp, LightenCompositeOp, LuminizeCompositeOp,
+MinusCompositeOp, ModulateCompositeOp, MultiplyCompositeOp,
+NoCompositeOp, OutCompositeOp, OverlayCompositeOp, PlusCompositeOp,
+SaturateCompositeOp, ScreenCompositeOp, SubtractCompositeOp,
+ThresholdCompositeOp, XorCompositeOp, HardLightCompositeOp.</dd>
+<dt>composite_image:</dt>
+<dd>The composite image.</dd>
+<dt>x_offset:</dt>
+<dd>The column offset of the composited image.</dd>
+<dt>y_offset:</dt>
+<dd>The row offset of the composited image.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/confirm_access.html b/www/api/confirm_access.html
index b561cad..52e6c40 100644
--- a/www/api/confirm_access.html
+++ b/www/api/confirm_access.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="confirm-access">
@@ -106,5 +106,10 @@ ConfirmAccessHandler MagickSetConfirmAccessHandler( ConfirmAccessHandler handler
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/confirm_access.html.orig b/www/api/confirm_access.html.orig
new file mode 100644
index 0000000..418c873
--- /dev/null
+++ b/www/api/confirm_access.html.orig
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>confirm_access</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="confirm-access">
+<h1 class="title">confirm_access</h1>
+<h2 class="subtitle" id="access-confirmation-functions">Access confirmation functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#magickconfirmaccess" id="id3">MagickConfirmAccess</a></li>
+<li><a class="reference internal" href="#magicksetconfirmaccesshandler" id="id4">MagickSetConfirmAccessHandler</a></li>
+</ul>
+</div>
+<div class="section" id="magickconfirmaccess">
+<h1><a class="toc-backref" href="#id3">MagickConfirmAccess</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail MagickConfirmAccess( const ConfirmAccessMode mode, const char *path,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>MagickConfirmAccess() calls the access confirmation handler method with
+parameters which describe the requested access mode and path/URL, as well
+as an ExceptionInfo structure to update with any error information. A
+user-provided callback (set by MagickSetConfirmAccessHandler()) is
+invoked. If the callback returns MagickFail, then this function also
+returns MagickFail, which is intended to determine if the operation may
+continue. The callback is expected to report the reason access is denied
+by filling out the ExceptionInfo structure. If the callback fails to do
+so, then a generic &quot;access denied&quot; error is reported.</p>
+<p>The format of the MagickConfirmAccess method is:</p>
+<pre class="literal-block">
+MagickPassFail MagickConfirmAccess( const ConfirmAccessMode mode, const char *path,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>mode:</dt>
+<dd>The type of access to be performed.</dd>
+<dt>path:</dt>
+<dd>The local path or URL requested to be accessed.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magicksetconfirmaccesshandler">
+<h1><a class="toc-backref" href="#id4">MagickSetConfirmAccessHandler</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+ConfirmAccessHandler MagickSetConfirmAccessHandler( ConfirmAccessHandler handler );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>MagickSetConfirmAccessHandler() sets the access confirmation handler to
+the specified method and returns the previous access confirmation handler.
+This access confirmation handler is used to &quot;approve&quot; access to files and
+URLs. If the handler returns MagickFalse, then access is denied. This
+mechanism may be used to enforce security policies and/or may be used to
+monitor file and URL accesses.</p>
+<p>The format of the MagickSetConfirmAccessHandler method is:</p>
+<pre class="literal-block">
+ConfirmAccessHandler MagickSetConfirmAccessHandler( ConfirmAccessHandler handler );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>handler:</dt>
+<dd>Specifies a pointer to a method to handle access confirmation.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/constitute.html b/www/api/constitute.html
index 8d61562..595ae32 100644
--- a/www/api/constitute.html
+++ b/www/api/constitute.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>constitute</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="constitute">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="read-or-write-an-image">Read or write an image</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#constituteimage" id="id15">ConstituteImage</a></li>
<li><a class="reference internal" href="#dispatchimage" id="id16">DispatchImage</a></li>
@@ -352,5 +352,10 @@ unsigned int WriteImagesFile( const <a class="reference external" href="../api/t
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/constitute.html.orig b/www/api/constitute.html.orig
new file mode 100644
index 0000000..02a5c1e
--- /dev/null
+++ b/www/api/constitute.html.orig
@@ -0,0 +1,356 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>constitute</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="constitute">
+<h1 class="title">constitute</h1>
+<h2 class="subtitle" id="read-or-write-an-image">Read or write an image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#constituteimage" id="id15">ConstituteImage</a></li>
+<li><a class="reference internal" href="#dispatchimage" id="id16">DispatchImage</a></li>
+<li><a class="reference internal" href="#pingimage" id="id17">PingImage</a></li>
+<li><a class="reference internal" href="#readimage" id="id18">ReadImage</a></li>
+<li><a class="reference internal" href="#readinlineimage" id="id19">ReadInlineImage</a></li>
+<li><a class="reference internal" href="#writeimage" id="id20">WriteImage</a></li>
+<li><a class="reference internal" href="#writeimages" id="id21">WriteImages</a></li>
+<li><a class="reference internal" href="#writeimagesfile" id="id22">WriteImagesFile</a></li>
+</ul>
+</div>
+<div class="section" id="constituteimage">
+<h1><a class="toc-backref" href="#id15">ConstituteImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ConstituteImage( const unsigned long width, const unsigned long height,
+ const char *map, const <a class="reference external" href="../api/types.html#storagetype">StorageType</a> type, const void *pixels,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>ConstituteImage() returns an Image corresponding to an image stored
+in a raw memory array format. The pixel data must be in scanline order
+top-to-bottom. The data can be unsigned char, unsigned short int, unsigned
+int, unsigned long, float, or double. Float and double require the pixels
+to be normalized to the range [0..1], otherwise the range is [0..MaxVal]
+where MaxVal is the maximum possible value for that type.</p>
+<p>Note that for most 32-bit architectures the size of an unsigned long is
+the same as unsigned int, but for 64-bit architectures observing the LP64
+standard, an unsigned long is 64 bits, while an unsigned int remains 32
+bits. This should be considered when deciding if the data should be
+described as &quot;Integer&quot; or &quot;Long&quot;.</p>
+<p>For example, to create a 640x480 image from unsigned red-green-blue
+character data, use</p>
+<p>image=ConstituteImage(640,480,&quot;RGB&quot;,CharPixel,pixels,&amp;exception);</p>
+<p>The format of the Constitute method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ConstituteImage( const unsigned long width, const unsigned long height,
+ const char *map, const <a class="reference external" href="../api/types.html#storagetype">StorageType</a> type, const void *pixels,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>width:</dt>
+<dd>width in pixels of the image.</dd>
+<dt>height:</dt>
+<dd>height in pixels of the image.</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 (same as Transparency), O = Opacity, T = Transparency,
+C = cyan, Y = yellow, M = magenta, K = black, or I = intensity
+(for grayscale). Specify &quot;P&quot; = pad, to skip over a quantum which is
+intentionally ignored. Creation of an alpha channel for CMYK images
+is currently not supported.</dd>
+<dt>type:</dt>
+<dd>Define the data type of the pixels. Float and double types are
+expected to be normalized [0..1] otherwise [0..MaxRGB]. Choose from
+these types: CharPixel, ShortPixel, IntegerPixel, LongPixel, FloatPixel,
+or DoublePixel.</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>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="dispatchimage">
+<h1><a class="toc-backref" href="#id16">DispatchImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail DispatchImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const long x_offset, const long y_offset,
+ const unsigned long columns, const unsigned long rows,
+ const char *map, const <a class="reference external" href="../api/types.html#storagetype">StorageType</a> type, void *pixels,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>DispatchImage() extracts pixel data from an Image into a raw memory array.
+The pixel data is written in scanline order top-to-bottom using an
+arbitrary quantum order specified by 'map', and with quantum size
+specified by 'type'.</p>
+<p>The output array data may be unsigned char, unsigned short int, unsigned
+int, unsigned long, float, or double. Float and double require the pixels
+to be normalized to the range [0..1], otherwise the range is [0..MaxVal]
+where MaxVal is the maximum possible value for that type.</p>
+<p>The method returns MagickPass on success or MagickFail if an error is
+encountered.</p>
+<p>Suppose we want want to extract the first scanline of a 640x480 image as
+character data in red-green-blue order:</p>
+<p>DispatchImage(image,0,0,640,1,&quot;RGB&quot;,0,pixels,exception);</p>
+<p>The format of the DispatchImage method is:</p>
+<pre class="literal-block">
+MagickPassFail DispatchImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const long x_offset, const long y_offset,
+ const unsigned long columns, const unsigned long rows,
+ const char *map, const <a class="reference external" href="../api/types.html#storagetype">StorageType</a> type, void *pixels,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>x_offset, y_offset, columns, rows:</dt>
+<dd>These values define the perimeter
+of a region of pixels you want to extract.</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 (same as Transparency), O = Opacity, T = Transparency,
+C = cyan, Y = yellow, M = magenta, K = black, I = intensity (for
+grayscale). Specify &quot;P&quot; = pad, to output a pad quantum. Pad quantums
+are zero-value.</dd>
+<dt>type:</dt>
+<dd>Define the data type of the pixels. Float and double types are
+expected to be normalized [0..1] otherwise [0..MaxRGB]. Choose from
+these types: CharPixel, ShortPixel, IntegerPixel, LongPixel, FloatPixel,
+or DoublePixel.</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>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pingimage">
+<h1><a class="toc-backref" href="#id17">PingImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *PingImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>PingImage() returns all the attributes 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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *PingImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>Ping the image defined by the file or filename members of
+this structure.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="readimage">
+<h1><a class="toc-backref" href="#id18">ReadImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ReadImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ReadImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>Read the image defined by the file or filename members of
+this structure.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="readinlineimage">
+<h1><a class="toc-backref" href="#id19">ReadInlineImage</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ReadInlineImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, const char *content,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>ReadInlineImage() reads a Base64-encoded inline image or image sequence.
+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 ReadInlineImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ReadInlineImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, const char *content,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>content:</dt>
+<dd>The image encoded in Base64.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="writeimage">
+<h1><a class="toc-backref" href="#id20">WriteImage</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail WriteImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>Use WriteImage() to write an image or an image sequence to a file or
+filehandle. If writing to a file on disk, the name is defined by the
+filename member of the image structure. WriteImage() returns
+MagickFailure 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="literal-block">
+MagickPassFail WriteImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="writeimages">
+<h1><a class="toc-backref" href="#id21">WriteImages</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail WriteImages( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image,
+ const char *filename, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>WriteImages() writes an image sequence into one or more files. While
+WriteImage() will also write an image sequence, it is limited to writing
+the sequence into a single file using a format which supports multiple
+frames. WriteImages() does not have that limitation since it will
+generate 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.
+&quot;image%02d.miff&quot;) so that the frames may be written.</p>
+<p>The format of the WriteImages method is:</p>
+<pre class="literal-block">
+MagickPassFail WriteImages( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image,
+ const char *filename, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>filename:</dt>
+<dd>The image filename.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="writeimagesfile">
+<h1><a class="toc-backref" href="#id22">WriteImagesFile</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int WriteImagesFile( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image, FILE *file,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>WriteImagesFile() writes an image or image sequence to a stdio
+FILE handle. This may be used to append an encoded image to an already
+existing appended image sequence if the file seek position is at the end
+of an existing file.</p>
+<p>The format of the WriteImagesFile method is:</p>
+<pre class="literal-block">
+unsigned int WriteImagesFile( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image, FILE *file,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>file:</dt>
+<dd>The open (and positioned) file handle.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/decorate.html b/www/api/decorate.html
index 948ce68..1d648b2 100644
--- a/www/api/decorate.html
+++ b/www/api/decorate.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>decorate</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="decorate">
@@ -137,5 +137,10 @@ otherwise it has a lowered effect.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/decorate.html.orig b/www/api/decorate.html.orig
new file mode 100644
index 0000000..c048b54
--- /dev/null
+++ b/www/api/decorate.html.orig
@@ -0,0 +1,141 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>decorate</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="decorate">
+<h1 class="title">decorate</h1>
+<h2 class="subtitle" id="add-decorative-frames-and-borders">Add decorative frames and borders</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#borderimage" id="id5">BorderImage</a></li>
+<li><a class="reference internal" href="#frameimage" id="id6">FrameImage</a></li>
+<li><a class="reference internal" href="#raiseimage" id="id7">RaiseImage</a></li>
+</ul>
+</div>
+<div class="section" id="borderimage">
+<h1><a class="toc-backref" href="#id5">BorderImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BorderImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#rectangleinfo">RectangleInfo</a> *border_info,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BorderImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#rectangleinfo">RectangleInfo</a> *border_info,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>border_info:</dt>
+<dd>Define the width and height of the border.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="frameimage">
+<h1><a class="toc-backref" href="#id6">FrameImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *FrameImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#frameinfo">FrameInfo</a> *frame_info,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *FrameImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#frameinfo">FrameInfo</a> *frame_info,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>frame_info:</dt>
+<dd>Define the width and height of the frame and its bevels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="raiseimage">
+<h1><a class="toc-backref" href="#id7">RaiseImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int RaiseImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#rectangleinfo">RectangleInfo</a> *raise_info,
+ const int raise_flag );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</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="literal-block">
+unsigned int RaiseImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#rectangleinfo">RectangleInfo</a> *raise_info,
+ const int raise_flag );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>raise_info:</dt>
+<dd>Define the width and height of the raise area.</dd>
+<dt>raise_flag:</dt>
+<dd>A value other than zero creates a 3-D raise effect,
+otherwise it has a lowered effect.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/deprecate.html b/www/api/deprecate.html
index 25db018..adb357b 100644
--- a/www/api/deprecate.html
+++ b/www/api/deprecate.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="deprecate">
@@ -334,5 +334,10 @@ MagickPassFail SyncCacheView( <a class="reference external" href="../api/types.h
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/deprecate.html.orig b/www/api/deprecate.html.orig
new file mode 100644
index 0000000..56a7b2a
--- /dev/null
+++ b/www/api/deprecate.html.orig
@@ -0,0 +1,338 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>deprecate</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="deprecate">
+<h1 class="title">deprecate</h1>
+<h2 class="subtitle" id="methods-which-should-no-longer-be-used">Methods which should no longer be used</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#acquirecacheview" id="id19">AcquireCacheView</a></li>
+<li><a class="reference internal" href="#acquirememory" id="id20">AcquireMemory</a></li>
+<li><a class="reference internal" href="#clonememory" id="id21">CloneMemory</a></li>
+<li><a class="reference internal" href="#getcacheview" id="id22">GetCacheView</a></li>
+<li><a class="reference internal" href="#liberatememory" id="id23">LiberateMemory</a></li>
+<li><a class="reference internal" href="#popimagepixels" id="id24">PopImagePixels</a></li>
+<li><a class="reference internal" href="#pushimagepixels" id="id25">PushImagePixels</a></li>
+<li><a class="reference internal" href="#reacquirememory" id="id26">ReacquireMemory</a></li>
+<li><a class="reference internal" href="#setcacheview" id="id27">SetCacheView</a></li>
+<li><a class="reference internal" href="#synccacheview" id="id28">SyncCacheView</a></li>
+</ul>
+</div>
+<div class="section" id="acquirecacheview">
+<h1><a class="toc-backref" href="#id19">AcquireCacheView</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *AcquireCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const long x, const long y,
+ const unsigned long columns, const unsigned long rows,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Method AcquireCacheView gets pixels from the in-memory or disk pixel cache
+as defined by the geometry parameters for read-only access. A pointer to
+the pixels is returned if the pixels are transferred, otherwise NULL is
+returned.</p>
+<p>The format of the AcquireCacheView method is:</p>
+<pre class="literal-block">
+const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *AcquireCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const long x, const long y,
+ const unsigned long columns, const unsigned long rows,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>pixels:</dt>
+<dd>Method AcquireCacheView returns a null pointer if an error
+occurs, otherwise a pointer to the view pixels.</dd>
+<dt>view:</dt>
+<dd>The address of a structure of type ViewInfo.</dd>
+<dt>x,y,columns,rows:</dt>
+<dd>These values define the perimeter of a region of
+pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="acquirememory">
+<h1><a class="toc-backref" href="#id20">AcquireMemory</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *AcquireMemory( const size_t size );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>AcquireMemory() returns a pointer to a block of memory of at least size
+bytes suitably aligned for any use. NULL is returned if insufficient
+memory is available or the requested size is zero.</p>
+<p>The format of the AcquireMemory method is:</p>
+<pre class="literal-block">
+void *AcquireMemory( const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>size:</dt>
+<dd>The size of the memory in bytes to allocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="clonememory">
+<h1><a class="toc-backref" href="#id21">CloneMemory</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *CloneMemory( void *destination, const void *source, const size_t size );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>CloneMemory() 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 CloneMemory method is:</p>
+<pre class="literal-block">
+void *CloneMemory( void *destination, const void *source, const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>size:</dt>
+<dd>The size of the memory in bytes to allocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getcacheview">
+<h1><a class="toc-backref" href="#id22">GetCacheView</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *GetCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const long x, const long y,
+ const unsigned long columns, const unsigned long rows );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>GetCacheView() gets writeable 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 GetCacheView method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *GetCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const long x, const long y,
+ const unsigned long columns, const unsigned long rows );
+</pre>
+<dl class="docutils">
+<dt>pixels:</dt>
+<dd>Method GetCacheView returns a null pointer if an error
+occurs, otherwise a pointer to the view pixels.</dd>
+<dt>view:</dt>
+<dd>The address of a structure of type ViewInfo.</dd>
+<dt>x,y,columns,rows:</dt>
+<dd>These values define the perimeter of a region of
+pixels.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="liberatememory">
+<h1><a class="toc-backref" href="#id23">LiberateMemory</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void LiberateMemory( void ** memory );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>LiberateMemory() frees memory that has already been allocated, and
+NULLs the pointer to it.</p>
+<p>The format of the LiberateMemory method is:</p>
+<pre class="literal-block">
+void LiberateMemory( void ** memory );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>memory:</dt>
+<dd>A pointer to a block of memory to free for reuse.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="popimagepixels">
+<h1><a class="toc-backref" href="#id24">PopImagePixels</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int PopImagePixels( const <a class="reference external" href="../api/types.html#image">Image</a> *, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum,
+ unsigned char *destination );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>PopImagePixels() transfers one or more pixel components from the image pixel
+cache to a user supplied buffer. True is returned if the pixels are
+successfully transferred, otherwise False.</p>
+<p>The format of the PopImagePixels method is:</p>
+<pre class="literal-block">
+unsigned int PopImagePixels( const <a class="reference external" href="../api/types.html#image">Image</a> *, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum,
+ unsigned char *destination );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method PopImagePixels returns True if the pixels are
+successfully transferred, otherwise False.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>quantum:</dt>
+<dd>Declare which pixel components to transfer (RGB, RGBA, etc).</dd>
+<dt>destination:</dt>
+<dd>The components are transferred to this buffer.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pushimagepixels">
+<h1><a class="toc-backref" href="#id25">PushImagePixels</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int PushImagePixels( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ const unsigned char *source );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>PushImagePixels() transfers one or more pixel components from a user
+supplied buffer into the image pixel cache of an image. It returns True if
+the pixels are successfully transferred, otherwise False.</p>
+<p>The format of the PushImagePixels method is:</p>
+<pre class="literal-block">
+unsigned int PushImagePixels( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ const unsigned char *source );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method PushImagePixels returns True if the pixels are
+successfully transferred, otherwise False.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>quantum_type:</dt>
+<dd>Declare which pixel components to transfer (red, green,
+blue, opacity, RGB, or RGBA).</dd>
+<dt>source:</dt>
+<dd>The pixel components are transferred from this buffer.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="reacquirememory">
+<h1><a class="toc-backref" href="#id26">ReacquireMemory</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void ReacquireMemory( void ** memory, const size_t size );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>ReacquireMemory() 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 ReacquireMemory method is:</p>
+<pre class="literal-block">
+void ReacquireMemory( void ** memory, const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>memory:</dt>
+<dd>A pointer to a memory allocation. On return the pointer
+may change but the contents of the original allocation will not.</dd>
+<dt>size:</dt>
+<dd>The new size of the allocated memory.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setcacheview">
+<h1><a class="toc-backref" href="#id27">SetCacheView</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *SetCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const long x, const long y,
+ const unsigned long columns, const unsigned long rows );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>SetCacheView() 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 SetCacheView method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *SetCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const long x, const long y,
+ const unsigned long columns, const unsigned long rows );
+</pre>
+<dl class="docutils">
+<dt>view:</dt>
+<dd>The address of a structure of type ViewInfo.</dd>
+<dt>x,y,columns,rows:</dt>
+<dd>These values define the perimeter of a region of
+pixels.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="synccacheview">
+<h1><a class="toc-backref" href="#id28">SyncCacheView</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail SyncCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>SyncCacheView() saves the view pixels to the in-memory or disk cache.
+The method returns MagickPass if the pixel region is synced, otherwise
+MagickFail.</p>
+<p>The format of the SyncCacheView method is:</p>
+<pre class="literal-block">
+MagickPassFail SyncCacheView( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>view:</dt>
+<dd>The address of a structure of type ViewInfo.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/describe.html b/www/api/describe.html
index 6d8a774..7d4c8fa 100644
--- a/www/api/describe.html
+++ b/www/api/describe.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="describe">
@@ -72,5 +72,10 @@ colors in the image.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/display.html b/www/api/display.html
index 01ab772..061e383 100644
--- a/www/api/display.html
+++ b/www/api/display.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="display">
@@ -115,5 +115,10 @@ returned from ReadImage.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/display.html.orig b/www/api/display.html.orig
new file mode 100644
index 0000000..f229e8f
--- /dev/null
+++ b/www/api/display.html.orig
@@ -0,0 +1,119 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>display</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="display">
+<h1 class="title">display</h1>
+<h2 class="subtitle" id="interactively-display-and-edit-an-image">Interactively display and edit an image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#magickxdisplaybackgroundimage" id="id3">MagickXDisplayBackgroundImage</a></li>
+<li><a class="reference internal" href="#magickxdisplayimage" id="id4">MagickXDisplayImage</a></li>
+</ul>
+</div>
+<div class="section" id="magickxdisplaybackgroundimage">
+<h1><a class="toc-backref" href="#id3">MagickXDisplayBackgroundImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int MagickXDisplayBackgroundImage( Display *display,
+ <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>MagickXDisplayBackgroundImage() displays an image in the background of a window.</p>
+<p>The format of the MagickXDisplayBackgroundImage method is:</p>
+<pre class="literal-block">
+unsigned int MagickXDisplayBackgroundImage( Display *display,
+ <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>resource_info:</dt>
+<dd>Specifies a pointer to a X11 MagickXResourceInfo structure.</dd>
+<dt>image:</dt>
+<dd>Specifies a pointer to an Image structure; returned from
+ReadImage.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickxdisplayimage">
+<h1><a class="toc-backref" href="#id4">MagickXDisplayImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MagickXDisplayImage( Display *display, <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ char ** argv, int argc, <a class="reference external" href="../api/types.html#image">Image</a> ** image,
+ unsigned long *state );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>MagickXDisplayImage() displays an image via X11. A new image is created and
+returned if the user interactively transforms the displayed image.</p>
+<p>The format of the MagickXDisplayImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MagickXDisplayImage( Display *display, <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ char ** argv, int argc, <a class="reference external" href="../api/types.html#image">Image</a> ** image,
+ unsigned long *state );
+</pre>
+<dl class="docutils">
+<dt>nexus:</dt>
+<dd>Method MagickXDisplayImage returns an image when the
+user chooses 'Open Image' from the command menu or picks a tile
+from the image directory. Otherwise a null image is returned.</dd>
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>resource_info:</dt>
+<dd>Specifies a pointer to a X11 MagickXResourceInfo structure.</dd>
+<dt>argv:</dt>
+<dd>Specifies the application's argument list.</dd>
+<dt>argc:</dt>
+<dd>Specifies the number of arguments.</dd>
+<dt>image:</dt>
+<dd>Specifies an address to an address of an Image structure;
+returned from ReadImage.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/draw.html b/www/api/draw.html
index 6eaffc7..3bc739e 100644
--- a/www/api/draw.html
+++ b/www/api/draw.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>draw</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="draw">
@@ -3219,5 +3219,10 @@ void DrawSetViewbox( <a class="reference external" href="../api/types.html#drawc
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/draw.html.orig b/www/api/draw.html.orig
new file mode 100644
index 0000000..a8caca5
--- /dev/null
+++ b/www/api/draw.html.orig
@@ -0,0 +1,3223 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>draw</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="draw">
+<h1 class="title">draw</h1>
+<h2 class="subtitle" id="user-friendly-methods-to-draw-on-an-image">User-friendly methods to draw on an image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#drawannotation" id="id225">DrawAnnotation</a></li>
+<li><a class="reference internal" href="#drawaffine" id="id226">DrawAffine</a></li>
+<li><a class="reference internal" href="#drawallocatecontext" id="id227">DrawAllocateContext</a></li>
+<li><a class="reference internal" href="#drawarc" id="id228">DrawArc</a></li>
+<li><a class="reference internal" href="#drawbezier" id="id229">DrawBezier</a></li>
+<li><a class="reference internal" href="#drawcircle" id="id230">DrawCircle</a></li>
+<li><a class="reference internal" href="#drawgetclippath" id="id231">DrawGetClipPath</a></li>
+<li><a class="reference internal" href="#drawsetclippath" id="id232">DrawSetClipPath</a></li>
+<li><a class="reference internal" href="#drawgetcliprule" id="id233">DrawGetClipRule</a></li>
+<li><a class="reference internal" href="#drawsetcliprule" id="id234">DrawSetClipRule</a></li>
+<li><a class="reference internal" href="#drawgetclipunits" id="id235">DrawGetClipUnits</a></li>
+<li><a class="reference internal" href="#drawsetclipunits" id="id236">DrawSetClipUnits</a></li>
+<li><a class="reference internal" href="#drawcolor" id="id237">DrawColor</a></li>
+<li><a class="reference internal" href="#drawcomment" id="id238">DrawComment</a></li>
+<li><a class="reference internal" href="#drawdestroycontext" id="id239">DrawDestroyContext</a></li>
+<li><a class="reference internal" href="#drawellipse" id="id240">DrawEllipse</a></li>
+<li><a class="reference internal" href="#drawgetfillcolor" id="id241">DrawGetFillColor</a></li>
+<li><a class="reference internal" href="#drawsetfillcolor" id="id242">DrawSetFillColor</a></li>
+<li><a class="reference internal" href="#drawsetfillcolorstring" id="id243">DrawSetFillColorString</a></li>
+<li><a class="reference internal" href="#drawsetfillpatternurl" id="id244">DrawSetFillPatternURL</a></li>
+<li><a class="reference internal" href="#drawgetfillopacity" id="id245">DrawGetFillOpacity</a></li>
+<li><a class="reference internal" href="#drawsetfillopacity" id="id246">DrawSetFillOpacity</a></li>
+<li><a class="reference internal" href="#drawgetfillrule" id="id247">DrawGetFillRule</a></li>
+<li><a class="reference internal" href="#drawsetfillrule" id="id248">DrawSetFillRule</a></li>
+<li><a class="reference internal" href="#drawgetfont" id="id249">DrawGetFont</a></li>
+<li><a class="reference internal" href="#drawsetfont" id="id250">DrawSetFont</a></li>
+<li><a class="reference internal" href="#drawgetfontfamily" id="id251">DrawGetFontFamily</a></li>
+<li><a class="reference internal" href="#drawsetfontfamily" id="id252">DrawSetFontFamily</a></li>
+<li><a class="reference internal" href="#drawgetfontsize" id="id253">DrawGetFontSize</a></li>
+<li><a class="reference internal" href="#drawsetfontsize" id="id254">DrawSetFontSize</a></li>
+<li><a class="reference internal" href="#drawgetfontstretch" id="id255">DrawGetFontStretch</a></li>
+<li><a class="reference internal" href="#drawsetfontstretch" id="id256">DrawSetFontStretch</a></li>
+<li><a class="reference internal" href="#drawgetfontstyle" id="id257">DrawGetFontStyle</a></li>
+<li><a class="reference internal" href="#drawsetfontstyle" id="id258">DrawSetFontStyle</a></li>
+<li><a class="reference internal" href="#drawgetfontweight" id="id259">DrawGetFontWeight</a></li>
+<li><a class="reference internal" href="#drawsetfontweight" id="id260">DrawSetFontWeight</a></li>
+<li><a class="reference internal" href="#drawgetgravity" id="id261">DrawGetGravity</a></li>
+<li><a class="reference internal" href="#drawsetgravity" id="id262">DrawSetGravity</a></li>
+<li><a class="reference internal" href="#drawcomposite" id="id263">DrawComposite</a></li>
+<li><a class="reference internal" href="#drawline" id="id264">DrawLine</a></li>
+<li><a class="reference internal" href="#drawmatte" id="id265">DrawMatte</a></li>
+<li><a class="reference internal" href="#drawpathclose" id="id266">DrawPathClose</a></li>
+<li><a class="reference internal" href="#drawpathcurvetoabsolute" id="id267">DrawPathCurveToAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathcurvetorelative" id="id268">DrawPathCurveToRelative</a></li>
+<li><a class="reference internal" href="#drawpathcurvetoquadraticbezierabsolute" id="id269">DrawPathCurveToQuadraticBezierAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathcurvetoquadraticbezierrelative" id="id270">DrawPathCurveToQuadraticBezierRelative</a></li>
+<li><a class="reference internal" href="#drawpathcurvetoquadraticbeziersmoothabsolute" id="id271">DrawPathCurveToQuadraticBezierSmoothAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathcurvetoquadraticbeziersmoothrelative" id="id272">DrawPathCurveToQuadraticBezierSmoothRelative</a></li>
+<li><a class="reference internal" href="#drawpathcurvetosmoothabsolute" id="id273">DrawPathCurveToSmoothAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathcurvetosmoothrelative" id="id274">DrawPathCurveToSmoothRelative</a></li>
+<li><a class="reference internal" href="#drawpathellipticarcabsolute" id="id275">DrawPathEllipticArcAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathellipticarcrelative" id="id276">DrawPathEllipticArcRelative</a></li>
+<li><a class="reference internal" href="#drawpathfinish" id="id277">DrawPathFinish</a></li>
+<li><a class="reference internal" href="#drawpathlinetoabsolute" id="id278">DrawPathLineToAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathlinetorelative" id="id279">DrawPathLineToRelative</a></li>
+<li><a class="reference internal" href="#drawpathlinetohorizontalabsolute" id="id280">DrawPathLineToHorizontalAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathlinetohorizontalrelative" id="id281">DrawPathLineToHorizontalRelative</a></li>
+<li><a class="reference internal" href="#drawpathlinetoverticalabsolute" id="id282">DrawPathLineToVerticalAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathlinetoverticalrelative" id="id283">DrawPathLineToVerticalRelative</a></li>
+<li><a class="reference internal" href="#drawpathmovetoabsolute" id="id284">DrawPathMoveToAbsolute</a></li>
+<li><a class="reference internal" href="#drawpathmovetorelative" id="id285">DrawPathMoveToRelative</a></li>
+<li><a class="reference internal" href="#drawpathstart" id="id286">DrawPathStart</a></li>
+<li><a class="reference internal" href="#drawpeekgraphiccontext" id="id287">DrawPeekGraphicContext</a></li>
+<li><a class="reference internal" href="#drawpoint" id="id288">DrawPoint</a></li>
+<li><a class="reference internal" href="#drawpolygon" id="id289">DrawPolygon</a></li>
+<li><a class="reference internal" href="#drawpolyline" id="id290">DrawPolyline</a></li>
+<li><a class="reference internal" href="#drawpopclippath" id="id291">DrawPopClipPath</a></li>
+<li><a class="reference internal" href="#drawpopdefs" id="id292">DrawPopDefs</a></li>
+<li><a class="reference internal" href="#drawpopgraphiccontext" id="id293">DrawPopGraphicContext</a></li>
+<li><a class="reference internal" href="#drawpoppattern" id="id294">DrawPopPattern</a></li>
+<li><a class="reference internal" href="#drawpushclippath" id="id295">DrawPushClipPath</a></li>
+<li><a class="reference internal" href="#drawpushdefs" id="id296">DrawPushDefs</a></li>
+<li><a class="reference internal" href="#drawpushgraphiccontext" id="id297">DrawPushGraphicContext</a></li>
+<li><a class="reference internal" href="#drawpushpattern" id="id298">DrawPushPattern</a></li>
+<li><a class="reference internal" href="#drawrectangle" id="id299">DrawRectangle</a></li>
+<li><a class="reference internal" href="#drawrender" id="id300">DrawRender</a></li>
+<li><a class="reference internal" href="#drawrotate" id="id301">DrawRotate</a></li>
+<li><a class="reference internal" href="#drawroundrectangle" id="id302">DrawRoundRectangle</a></li>
+<li><a class="reference internal" href="#drawscale" id="id303">DrawScale</a></li>
+<li><a class="reference internal" href="#drawskewx" id="id304">DrawSkewX</a></li>
+<li><a class="reference internal" href="#drawskewy" id="id305">DrawSkewY</a></li>
+<li><a class="reference internal" href="#drawsetstopcolor" id="id306">DrawSetStopColor</a></li>
+<li><a class="reference internal" href="#drawgetstrokecolor" id="id307">DrawGetStrokeColor</a></li>
+<li><a class="reference internal" href="#drawsetstrokecolor" id="id308">DrawSetStrokeColor</a></li>
+<li><a class="reference internal" href="#drawsetstrokecolorstring" id="id309">DrawSetStrokeColorString</a></li>
+<li><a class="reference internal" href="#drawsetstrokepatternurl" id="id310">DrawSetStrokePatternURL</a></li>
+<li><a class="reference internal" href="#drawgetstrokeantialias" id="id311">DrawGetStrokeAntialias</a></li>
+<li><a class="reference internal" href="#drawsetstrokeantialias" id="id312">DrawSetStrokeAntialias</a></li>
+<li><a class="reference internal" href="#drawgetstrokedasharray" id="id313">DrawGetStrokeDashArray</a></li>
+<li><a class="reference internal" href="#drawsetstrokedasharray" id="id314">DrawSetStrokeDashArray</a></li>
+<li><a class="reference internal" href="#drawgetstrokedashoffset" id="id315">DrawGetStrokeDashOffset</a></li>
+<li><a class="reference internal" href="#drawsetstrokedashoffset" id="id316">DrawSetStrokeDashOffset</a></li>
+<li><a class="reference internal" href="#drawgetstrokelinecap" id="id317">DrawGetStrokeLineCap</a></li>
+<li><a class="reference internal" href="#drawsetstrokelinecap" id="id318">DrawSetStrokeLineCap</a></li>
+<li><a class="reference internal" href="#drawgetstrokelinejoin" id="id319">DrawGetStrokeLineJoin</a></li>
+<li><a class="reference internal" href="#drawsetstrokelinejoin" id="id320">DrawSetStrokeLineJoin</a></li>
+<li><a class="reference internal" href="#drawgetstrokemiterlimit" id="id321">DrawGetStrokeMiterLimit</a></li>
+<li><a class="reference internal" href="#drawsetstrokemiterlimit" id="id322">DrawSetStrokeMiterLimit</a></li>
+<li><a class="reference internal" href="#drawgetstrokeopacity" id="id323">DrawGetStrokeOpacity</a></li>
+<li><a class="reference internal" href="#drawsetstrokeopacity" id="id324">DrawSetStrokeOpacity</a></li>
+<li><a class="reference internal" href="#drawgetstrokewidth" id="id325">DrawGetStrokeWidth</a></li>
+<li><a class="reference internal" href="#drawsetstrokewidth" id="id326">DrawSetStrokeWidth</a></li>
+<li><a class="reference internal" href="#drawgettextantialias" id="id327">DrawGetTextAntialias</a></li>
+<li><a class="reference internal" href="#drawsettextantialias" id="id328">DrawSetTextAntialias</a></li>
+<li><a class="reference internal" href="#drawgettextdecoration" id="id329">DrawGetTextDecoration</a></li>
+<li><a class="reference internal" href="#drawsettextdecoration" id="id330">DrawSetTextDecoration</a></li>
+<li><a class="reference internal" href="#drawgettextencoding" id="id331">DrawGetTextEncoding</a></li>
+<li><a class="reference internal" href="#drawsettextencoding" id="id332">DrawSetTextEncoding</a></li>
+<li><a class="reference internal" href="#drawgettextundercolor" id="id333">DrawGetTextUnderColor</a></li>
+<li><a class="reference internal" href="#drawsettextundercolor" id="id334">DrawSetTextUnderColor</a></li>
+<li><a class="reference internal" href="#drawsettextundercolorstring" id="id335">DrawSetTextUnderColorString</a></li>
+<li><a class="reference internal" href="#drawtranslate" id="id336">DrawTranslate</a></li>
+<li><a class="reference internal" href="#drawsetviewbox" id="id337">DrawSetViewbox</a></li>
+</ul>
+</div>
+<div class="section" id="drawannotation">
+<h1><a class="toc-backref" href="#id225">DrawAnnotation</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawAnnotation( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y,
+ const unsigned char *text );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>DrawAnnotation() draws text on the image.</p>
+<p>The format of the DrawAnnotation method is:</p>
+<pre class="literal-block">
+void DrawAnnotation( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y,
+ const unsigned char *text );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>x ordinate to left of text</dd>
+<dt>y:</dt>
+<dd>y ordinate to text baseline</dd>
+<dt>text:</dt>
+<dd>text to draw</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawaffine">
+<h1><a class="toc-backref" href="#id226">DrawAffine</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawAffine( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#affinematrix">AffineMatrix</a> *affine );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</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="literal-block">
+void DrawAffine( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#affinematrix">AffineMatrix</a> *affine );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>Drawing context</dd>
+<dt>affine:</dt>
+<dd>Affine matrix parameters</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawallocatecontext">
+<h1><a class="toc-backref" href="#id227">DrawAllocateContext</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> DrawAllocateContext( const <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>DrawAllocateContext() allocates an initial drawing context which is an
+opaque handle required by the remaining drawing methods.</p>
+<p>The format of the DrawAllocateContext method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> DrawAllocateContext( const <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<dl class="docutils">
+<dt>draw_info:</dt>
+<dd>Initial drawing defaults. Set to NULL to use
+GraphicsMagick defaults.</dd>
+<dt>image:</dt>
+<dd>The image to draw on.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawarc">
+<h1><a class="toc-backref" href="#id228">DrawArc</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawArc( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double sx, const double sy, const double ex,
+ const double ey, const double sd, const double ed );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</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="literal-block">
+void DrawArc( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double sx, const double sy, const double ex,
+ const double ey, const double sd, const double ed );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>sx:</dt>
+<dd>starting x ordinate of bounding rectangle</dd>
+<dt>sy:</dt>
+<dd>starting y ordinate of bounding rectangle</dd>
+<dt>ex:</dt>
+<dd>ending x ordinate of bounding rectangle</dd>
+<dt>ey:</dt>
+<dd>ending y ordinate of bounding rectangle</dd>
+<dt>sd:</dt>
+<dd>starting degrees of rotation</dd>
+<dt>ed:</dt>
+<dd>ending degrees of rotation</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawbezier">
+<h1><a class="toc-backref" href="#id229">DrawBezier</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawBezier( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_coords,
+ const <a class="reference external" href="../api/types.html#pointinfo">PointInfo</a> *coordinates );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+void DrawBezier( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_coords,
+ const <a class="reference external" href="../api/types.html#pointinfo">PointInfo</a> *coordinates );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>num_coords:</dt>
+<dd>number of coordinates</dd>
+<dt>coordinates:</dt>
+<dd>coordinates</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawcircle">
+<h1><a class="toc-backref" href="#id230">DrawCircle</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawCircle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double ox, const double oy, const double px,
+ const double py );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>DrawCircle() draws a circle on the image.</p>
+<p>The format of the DrawCircle method is:</p>
+<pre class="literal-block">
+void DrawCircle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double ox, const double oy, const double px,
+ const double py );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>ox:</dt>
+<dd>origin x ordinate</dd>
+<dt>oy:</dt>
+<dd>origin y ordinate</dd>
+<dt>px:</dt>
+<dd>perimeter x ordinate</dd>
+<dt>py:</dt>
+<dd>perimeter y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetclippath">
+<h1><a class="toc-backref" href="#id231">DrawGetClipPath</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+char *DrawGetClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</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="literal-block">
+char *DrawGetClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetclippath">
+<h1><a class="toc-backref" href="#id232">DrawSetClipPath</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *clip_path );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>DrawSetClipPath() associates a named clipping path with the image. Only
+the areas drawn on by the clipping path will be modified as long as it
+remains in effect.</p>
+<p>The format of the DrawSetClipPath method is:</p>
+<pre class="literal-block">
+void DrawSetClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *clip_path );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>clip_path:</dt>
+<dd>name of clipping path to associate with image</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetcliprule">
+<h1><a class="toc-backref" href="#id233">DrawGetClipRule</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#fillrule">FillRule</a> DrawGetClipRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#fillrule">FillRule</a> DrawGetClipRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetcliprule">
+<h1><a class="toc-backref" href="#id234">DrawSetClipRule</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetClipRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#fillrule">FillRule</a> fill_rule );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</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="literal-block">
+void DrawSetClipRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#fillrule">FillRule</a> fill_rule );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>fill_rule:</dt>
+<dd>fill rule (EvenOddRule or NonZeroRule)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetclipunits">
+<h1><a class="toc-backref" href="#id235">DrawGetClipUnits</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#clippathunits">ClipPathUnits</a> DrawGetClipUnits( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>DrawGetClipUnits() returns the interpretation of clip path units.</p>
+<p>The format of the DrawGetClipUnits method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#clippathunits">ClipPathUnits</a> DrawGetClipUnits( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetclipunits">
+<h1><a class="toc-backref" href="#id236">DrawSetClipUnits</a></h1>
+<div class="section" id="id21">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetClipUnits( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#clippathunits">ClipPathUnits</a> clip_units );
+</pre>
+</div>
+<div class="section" id="id22">
+<h2>Description</h2>
+<p>DrawSetClipUnits() sets the interpretation of clip path units.</p>
+<p>The format of the DrawSetClipUnits method is:</p>
+<pre class="literal-block">
+void DrawSetClipUnits( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#clippathunits">ClipPathUnits</a> clip_units );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>clip_units:</dt>
+<dd>units to use (UserSpace, UserSpaceOnUse, or ObjectBoundingBox)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawcolor">
+<h1><a class="toc-backref" href="#id237">DrawColor</a></h1>
+<div class="section" id="id23">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y,
+ const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> paintMethod );
+</pre>
+</div>
+<div class="section" id="id24">
+<h2>Description</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>
+<p>PointMethod: Recolors the target pixel
+ReplaceMethod: Recolor any pixel that matches the target pixel.
+FloodfillMethod: Recolors target pixels and matching neighbors.
+FillToBorderMethod: Recolor target pixels and neighbors not matching border color.
+ResetMethod: Recolor all pixels.</p>
+<p>The format of the DrawColor method is:</p>
+<pre class="literal-block">
+void DrawColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y,
+ const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> paintMethod );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>x ordinate</dd>
+<dt>y:</dt>
+<dd>y ordinate</dd>
+<dt>paintMethod:</dt>
+<dd>paint method</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawcomment">
+<h1><a class="toc-backref" href="#id238">DrawComment</a></h1>
+<div class="section" id="id25">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawComment( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *comment );
+</pre>
+</div>
+<div class="section" id="id26">
+<h2>Description</h2>
+<p>DrawComment() adds a comment to a vector output stream.</p>
+<p>The format of the DrawComment method is:</p>
+<pre class="literal-block">
+void DrawComment( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *comment );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>comment:</dt>
+<dd>comment text</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawdestroycontext">
+<h1><a class="toc-backref" href="#id239">DrawDestroyContext</a></h1>
+<div class="section" id="id27">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawDestroyContext( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id28">
+<h2>Description</h2>
+<p>DrawDestroyContext() frees all resources associated with the drawing
+context. Once the drawing context has been freed, it should not be used
+any further unless it re-allocated.</p>
+<p>The format of the DrawDestroyContext method is:</p>
+<pre class="literal-block">
+void DrawDestroyContext( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context to destroy</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawellipse">
+<h1><a class="toc-backref" href="#id240">DrawEllipse</a></h1>
+<div class="section" id="id29">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawEllipse( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double ox, const double oy, const double rx,
+ const double ry, const double start, const double end );
+</pre>
+</div>
+<div class="section" id="id30">
+<h2>Description</h2>
+<p>DrawEllipse() draws an ellipse on the image.</p>
+<p>The format of the DrawEllipse method is:</p>
+<pre class="literal-block">
+void DrawEllipse( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double ox, const double oy, const double rx,
+ const double ry, const double start, const double end );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>ox:</dt>
+<dd>origin x ordinate</dd>
+<dt>oy:</dt>
+<dd>origin y ordinate</dd>
+<dt>rx:</dt>
+<dd>radius in x</dd>
+<dt>ry:</dt>
+<dd>radius in y</dd>
+<dt>start:</dt>
+<dd>starting rotation in degrees</dd>
+<dt>end:</dt>
+<dd>ending rotation in degrees</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfillcolor">
+<h1><a class="toc-backref" href="#id241">DrawGetFillColor</a></h1>
+<div class="section" id="id31">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> DrawGetFillColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id32">
+<h2>Description</h2>
+<p>DrawGetFillColor() returns the fill color used for drawing filled objects.</p>
+<p>The format of the DrawGetFillColor method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> DrawGetFillColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfillcolor">
+<h1><a class="toc-backref" href="#id242">DrawSetFillColor</a></h1>
+<div class="section" id="id33">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFillColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *fill_color );
+</pre>
+</div>
+<div class="section" id="id34">
+<h2>Description</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="literal-block">
+void DrawSetFillColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *fill_color );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>fill_color:</dt>
+<dd>fill color</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfillcolorstring">
+<h1><a class="toc-backref" href="#id243">DrawSetFillColorString</a></h1>
+<div class="section" id="id35">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFillColorString( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *fill_color );
+</pre>
+</div>
+<div class="section" id="id36">
+<h2>Description</h2>
+<p>DrawSetFillColorString() sets the fill color to be used for drawing filled
+objects.</p>
+<p>The format of the DrawSetFillColorString method is:</p>
+<pre class="literal-block">
+void DrawSetFillColorString( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *fill_color );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>fill_color:</dt>
+<dd>fill color</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfillpatternurl">
+<h1><a class="toc-backref" href="#id244">DrawSetFillPatternURL</a></h1>
+<div class="section" id="id37">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFillPatternURL( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *fill_url );
+</pre>
+</div>
+<div class="section" id="id38">
+<h2>Description</h2>
+<p>DrawSetFillPatternURL() sets the URL to use as a fill pattern for filling
+objects. Only local URLs (&quot;#identifier&quot;) 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="literal-block">
+void DrawSetFillPatternURL( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *fill_url );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>fill_url:</dt>
+<dd>URL to use to obtain fill pattern.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfillopacity">
+<h1><a class="toc-backref" href="#id245">DrawGetFillOpacity</a></h1>
+<div class="section" id="id39">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+double DrawGetFillOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id40">
+<h2>Description</h2>
+<p>DrawGetFillOpacity() returns the opacity 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="literal-block">
+double DrawGetFillOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfillopacity">
+<h1><a class="toc-backref" href="#id246">DrawSetFillOpacity</a></h1>
+<div class="section" id="id41">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFillOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double fill_opacity );
+</pre>
+</div>
+<div class="section" id="id42">
+<h2>Description</h2>
+<p>DrawSetFillOpacity() sets the opacity 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="literal-block">
+void DrawSetFillOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double fill_opacity );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>fill_opacity:</dt>
+<dd>fill opacity</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfillrule">
+<h1><a class="toc-backref" href="#id247">DrawGetFillRule</a></h1>
+<div class="section" id="id43">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#fillrule">FillRule</a> DrawGetFillRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id44">
+<h2>Description</h2>
+<p>DrawGetFillRule() returns the fill rule used while drawing polygons.</p>
+<p>The format of the DrawGetFillRule method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#fillrule">FillRule</a> DrawGetFillRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfillrule">
+<h1><a class="toc-backref" href="#id248">DrawSetFillRule</a></h1>
+<div class="section" id="id45">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFillRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#fillrule">FillRule</a> fill_rule );
+</pre>
+</div>
+<div class="section" id="id46">
+<h2>Description</h2>
+<p>DrawSetFillRule() sets the fill rule to use while drawing polygons.</p>
+<p>The format of the DrawSetFillRule method is:</p>
+<pre class="literal-block">
+void DrawSetFillRule( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#fillrule">FillRule</a> fill_rule );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>fill_rule:</dt>
+<dd>fill rule (EvenOddRule or NonZeroRule)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfont">
+<h1><a class="toc-backref" href="#id249">DrawGetFont</a></h1>
+<div class="section" id="id47">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+char *DrawGetFont( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id48">
+<h2>Description</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="literal-block">
+char *DrawGetFont( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfont">
+<h1><a class="toc-backref" href="#id250">DrawSetFont</a></h1>
+<div class="section" id="id49">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFont( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *font_name );
+</pre>
+</div>
+<div class="section" id="id50">
+<h2>Description</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="literal-block">
+void DrawSetFont( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *font_name );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>font_name:</dt>
+<dd>font name</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfontfamily">
+<h1><a class="toc-backref" href="#id251">DrawGetFontFamily</a></h1>
+<div class="section" id="id51">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+char *DrawGetFontFamily( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id52">
+<h2>Description</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="literal-block">
+char *DrawGetFontFamily( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfontfamily">
+<h1><a class="toc-backref" href="#id252">DrawSetFontFamily</a></h1>
+<div class="section" id="id53">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFontFamily( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *font_family );
+</pre>
+</div>
+<div class="section" id="id54">
+<h2>Description</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="literal-block">
+void DrawSetFontFamily( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *font_family );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>font_family:</dt>
+<dd>font family</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfontsize">
+<h1><a class="toc-backref" href="#id253">DrawGetFontSize</a></h1>
+<div class="section" id="id55">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+double DrawGetFontSize( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id56">
+<h2>Description</h2>
+<p>DrawGetFontSize() returns the font pointsize used when annotating with text.</p>
+<p>The format of the DrawGetFontSize method is:</p>
+<pre class="literal-block">
+double DrawGetFontSize( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfontsize">
+<h1><a class="toc-backref" href="#id254">DrawSetFontSize</a></h1>
+<div class="section" id="id57">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFontSize( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double pointsize );
+</pre>
+</div>
+<div class="section" id="id58">
+<h2>Description</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="literal-block">
+void DrawSetFontSize( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double pointsize );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>pointsize:</dt>
+<dd>text pointsize</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfontstretch">
+<h1><a class="toc-backref" href="#id255">DrawGetFontStretch</a></h1>
+<div class="section" id="id59">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#stretchtype">StretchType</a> DrawGetFontStretch( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id60">
+<h2>Description</h2>
+<p>DrawGetFontStretch() returns the font stretch used when annotating with text.</p>
+<p>The format of the DrawGetFontStretch method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#stretchtype">StretchType</a> DrawGetFontStretch( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfontstretch">
+<h1><a class="toc-backref" href="#id256">DrawSetFontStretch</a></h1>
+<div class="section" id="id61">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFontStretch( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#stretchtype">StretchType</a> font_stretch );
+</pre>
+</div>
+<div class="section" id="id62">
+<h2>Description</h2>
+<p>DrawSetFontStretch() sets the font stretch to use when annotating with text.
+The AnyStretch enumeration acts as a wild-card &quot;don't care&quot; option.</p>
+<p>The format of the DrawSetFontStretch method is:</p>
+<pre class="literal-block">
+void DrawSetFontStretch( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#stretchtype">StretchType</a> font_stretch );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>font_stretch:</dt>
+<dd>font stretch (NormalStretch, UltraCondensedStretch,
+CondensedStretch, SemiCondensedStretch,
+SemiExpandedStretch, ExpandedStretch,
+ExtraExpandedStretch, UltraExpandedStretch, AnyStretch)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfontstyle">
+<h1><a class="toc-backref" href="#id257">DrawGetFontStyle</a></h1>
+<div class="section" id="id63">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#styletype">StyleType</a> DrawGetFontStyle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id64">
+<h2>Description</h2>
+<p>DrawGetFontStyle() returns the font style used when annotating with text.</p>
+<p>The format of the DrawGetFontStyle method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#styletype">StyleType</a> DrawGetFontStyle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfontstyle">
+<h1><a class="toc-backref" href="#id258">DrawSetFontStyle</a></h1>
+<div class="section" id="id65">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFontStyle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#styletype">StyleType</a> style );
+</pre>
+</div>
+<div class="section" id="id66">
+<h2>Description</h2>
+<p>DrawSetFontStyle() sets the font style to use when annotating with text.
+The AnyStyle enumeration acts as a wild-card &quot;don't care&quot; option.</p>
+<p>The format of the DrawSetFontStyle method is:</p>
+<pre class="literal-block">
+void DrawSetFontStyle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#styletype">StyleType</a> style );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>style:</dt>
+<dd>font style (NormalStyle, ItalicStyle, ObliqueStyle, AnyStyle)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetfontweight">
+<h1><a class="toc-backref" href="#id259">DrawGetFontWeight</a></h1>
+<div class="section" id="id67">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned long DrawGetFontWeight( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id68">
+<h2>Description</h2>
+<p>DrawGetFontWeight() returns the font weight used when annotating with text.</p>
+<p>The format of the DrawGetFontWeight method is:</p>
+<pre class="literal-block">
+unsigned long DrawGetFontWeight( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetfontweight">
+<h1><a class="toc-backref" href="#id260">DrawSetFontWeight</a></h1>
+<div class="section" id="id69">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetFontWeight( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long font_weight );
+</pre>
+</div>
+<div class="section" id="id70">
+<h2>Description</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="literal-block">
+void DrawSetFontWeight( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long font_weight );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>font_weight:</dt>
+<dd>font weight (valid range 100-900)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetgravity">
+<h1><a class="toc-backref" href="#id261">DrawGetGravity</a></h1>
+<div class="section" id="id71">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#gravitytype">GravityType</a> DrawGetGravity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id72">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#gravitytype">GravityType</a> DrawGetGravity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetgravity">
+<h1><a class="toc-backref" href="#id262">DrawSetGravity</a></h1>
+<div class="section" id="id73">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetGravity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#gravitytype">GravityType</a> gravity );
+</pre>
+</div>
+<div class="section" id="id74">
+<h2>Description</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="literal-block">
+void DrawSetGravity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#gravitytype">GravityType</a> gravity );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>gravity:</dt>
+<dd>positioning gravity (NorthWestGravity, NorthGravity,
+NorthEastGravity, WestGravity, CenterGravity,
+EastGravity, SouthWestGravity, SouthGravity,
+SouthEastGravity)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawcomposite">
+<h1><a class="toc-backref" href="#id263">DrawComposite</a></h1>
+<div class="section" id="id75">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawComposite( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#compositeoperator">CompositeOperator</a> composite_operator,
+ const double x, const double y, const double width, const double height,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id76">
+<h2>Description</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="literal-block">
+void DrawComposite( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#compositeoperator">CompositeOperator</a> composite_operator,
+ const double x, const double y, const double width, const double height,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>composite_operator:</dt>
+<dd>composition operator</dd>
+<dt>x:</dt>
+<dd>x ordinate of top left corner</dd>
+<dt>y:</dt>
+<dd>y ordinate of top left corner</dd>
+<dt>width:</dt>
+<dd>Width to resize image to prior to compositing. Specify zero to
+use existing width.</dd>
+<dt>height:</dt>
+<dd>Height to resize image to prior to compositing. Specify zero
+to use existing height.</dd>
+<dt>image:</dt>
+<dd>Image to composite</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawline">
+<h1><a class="toc-backref" href="#id264">DrawLine</a></h1>
+<div class="section" id="id77">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawLine( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double sx, const double sy, const double ex,
+ const double ey );
+</pre>
+</div>
+<div class="section" id="id78">
+<h2>Description</h2>
+<p>DrawLine() draws a line on the image using the current stroke color,
+stroke opacity, and stroke width.</p>
+<p>The format of the DrawLine method is:</p>
+<pre class="literal-block">
+void DrawLine( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double sx, const double sy, const double ex,
+ const double ey );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>sx:</dt>
+<dd>starting x ordinate</dd>
+<dt>sy:</dt>
+<dd>starting y ordinate</dd>
+<dt>ex:</dt>
+<dd>ending x ordinate</dd>
+<dt>ey:</dt>
+<dd>ending y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawmatte">
+<h1><a class="toc-backref" href="#id265">DrawMatte</a></h1>
+<div class="section" id="id79">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawMatte( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y,
+ const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> paint_method );
+</pre>
+</div>
+<div class="section" id="id80">
+<h2>Description</h2>
+<p>DrawMatte() paints on the image's opacity channel in order to set effected
+pixels to transparent. The available paint methods are:</p>
+<p>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.</p>
+<p>The format of the DrawMatte method is:</p>
+<pre class="literal-block">
+void DrawMatte( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y,
+ const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> paint_method );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>x ordinate</dd>
+<dt>y:</dt>
+<dd>y ordinate</dd>
+</dl>
+<p>o paint_method:</p>
+</div>
+</div>
+<div class="section" id="drawpathclose">
+<h1><a class="toc-backref" href="#id266">DrawPathClose</a></h1>
+<div class="section" id="id81">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathClose( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id82">
+<h2>Description</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="literal-block">
+void DrawPathClose( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetoabsolute">
+<h1><a class="toc-backref" href="#id267">DrawPathCurveToAbsolute</a></h1>
+<div class="section" id="id83">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1, const double y1,
+ const double x2, const double y2, const double x,
+ const double y );
+</pre>
+</div>
+<div class="section" id="id84">
+<h2>Description</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="literal-block">
+void DrawPathCurveToAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1, const double y1,
+ const double x2, const double y2, const double x,
+ const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x1:</dt>
+<dd>x ordinate of control point for curve beginning</dd>
+<dt>y1:</dt>
+<dd>y ordinate of control point for curve beginning</dd>
+<dt>x2:</dt>
+<dd>x ordinate of control point for curve ending</dd>
+<dt>y2:</dt>
+<dd>y ordinate of control point for curve ending</dd>
+<dt>x:</dt>
+<dd>x ordinate of the end of the curve</dd>
+<dt>y:</dt>
+<dd>y ordinate of the end of the curve</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetorelative">
+<h1><a class="toc-backref" href="#id268">DrawPathCurveToRelative</a></h1>
+<div class="section" id="id85">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1, const double y1,
+ const double x2, const double y2, const double x,
+ const double y );
+</pre>
+</div>
+<div class="section" id="id86">
+<h2>Description</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="literal-block">
+void DrawPathCurveToRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1, const double y1,
+ const double x2, const double y2, const double x,
+ const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x1:</dt>
+<dd>x ordinate of control point for curve beginning</dd>
+<dt>y1:</dt>
+<dd>y ordinate of control point for curve beginning</dd>
+<dt>x2:</dt>
+<dd>x ordinate of control point for curve ending</dd>
+<dt>y2:</dt>
+<dd>y ordinate of control point for curve ending</dd>
+<dt>x:</dt>
+<dd>x ordinate of the end of the curve</dd>
+<dt>y:</dt>
+<dd>y ordinate of the end of the curve</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetoquadraticbezierabsolute">
+<h1><a class="toc-backref" href="#id269">DrawPathCurveToQuadraticBezierAbsolute</a></h1>
+<div class="section" id="id87">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToQuadraticBezierAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1,
+ const double y1, const double x,
+ const double y );
+</pre>
+</div>
+<div class="section" id="id88">
+<h2>Description</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="literal-block">
+void DrawPathCurveToQuadraticBezierAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1,
+ const double y1, const double x,
+ const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x1:</dt>
+<dd>x ordinate of the control point</dd>
+<dt>y1:</dt>
+<dd>y ordinate of the control point</dd>
+<dt>x:</dt>
+<dd>x ordinate of final point</dd>
+<dt>y:</dt>
+<dd>y ordinate of final point</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetoquadraticbezierrelative">
+<h1><a class="toc-backref" href="#id270">DrawPathCurveToQuadraticBezierRelative</a></h1>
+<div class="section" id="id89">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToQuadraticBezierRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1,
+ const double y1, const double x,
+ const double y );
+</pre>
+</div>
+<div class="section" id="id90">
+<h2>Description</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="literal-block">
+void DrawPathCurveToQuadraticBezierRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1,
+ const double y1, const double x,
+ const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x1:</dt>
+<dd>x ordinate of the control point</dd>
+<dt>y1:</dt>
+<dd>y ordinate of the control point</dd>
+<dt>x:</dt>
+<dd>x ordinate of final point</dd>
+<dt>y:</dt>
+<dd>y ordinate of final point</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetoquadraticbeziersmoothabsolute">
+<h1><a class="toc-backref" href="#id271">DrawPathCurveToQuadraticBezierSmoothAbsolute</a></h1>
+<div class="section" id="id91">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToQuadraticBezierSmoothAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x,
+ const double y );
+</pre>
+</div>
+<div class="section" id="id92">
+<h2>Description</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,
+DrawPathCurveToQuadraticBezierSmoothAbsolut 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="literal-block">
+void DrawPathCurveToQuadraticBezierSmoothAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x,
+ const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>x ordinate of final point</dd>
+<dt>y:</dt>
+<dd>y ordinate of final point</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetoquadraticbeziersmoothrelative">
+<h1><a class="toc-backref" href="#id272">DrawPathCurveToQuadraticBezierSmoothRelative</a></h1>
+<div class="section" id="id93">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToQuadraticBezierSmoothRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x,
+ const double y );
+</pre>
+</div>
+<div class="section" id="id94">
+<h2>Description</h2>
+<p>DrawPathCurveToQuadraticBezierSmoothAbsolute() 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,
+DrawPathCurveToQuadraticBezierSmoothAbsolut 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="literal-block">
+void DrawPathCurveToQuadraticBezierSmoothRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x,
+ const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>x ordinate of final point</dd>
+<dt>y:</dt>
+<dd>y ordinate of final point</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetosmoothabsolute">
+<h1><a class="toc-backref" href="#id273">DrawPathCurveToSmoothAbsolute</a></h1>
+<div class="section" id="id95">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToSmoothAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x2, const double y2,
+ const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id96">
+<h2>Description</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="literal-block">
+void DrawPathCurveToSmoothAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x2, const double y2,
+ const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x2:</dt>
+<dd>x ordinate of second control point</dd>
+<dt>y2:</dt>
+<dd>y ordinate of second control point</dd>
+<dt>x:</dt>
+<dd>x ordinate of termination point</dd>
+<dt>y:</dt>
+<dd>y ordinate of termination point</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathcurvetosmoothrelative">
+<h1><a class="toc-backref" href="#id274">DrawPathCurveToSmoothRelative</a></h1>
+<div class="section" id="id97">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathCurveToSmoothRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x2, const double y2,
+ const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id98">
+<h2>Description</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="literal-block">
+void DrawPathCurveToSmoothRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x2, const double y2,
+ const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x2:</dt>
+<dd>x ordinate of second control point</dd>
+<dt>y2:</dt>
+<dd>y ordinate of second control point</dd>
+<dt>x:</dt>
+<dd>x ordinate of termination point</dd>
+<dt>y:</dt>
+<dd>y ordinate of termination point</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathellipticarcabsolute">
+<h1><a class="toc-backref" href="#id275">DrawPathEllipticArcAbsolute</a></h1>
+<div class="section" id="id99">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathEllipticArcAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double rx, const double ry,
+ const double x_axis_rotation,
+ unsigned int large_arc_flag, unsigned int sweep_flag,
+ const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id100">
+<h2>Description</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 automatically 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="literal-block">
+void DrawPathEllipticArcAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double rx, const double ry,
+ const double x_axis_rotation,
+ unsigned int large_arc_flag, unsigned int sweep_flag,
+ const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>rx:</dt>
+<dd>x radius</dd>
+<dt>ry:</dt>
+<dd>y radius</dd>
+<dt>x_axis_rotation:</dt>
+<dd>indicates how the ellipse as a whole is rotated
+relative to the current coordinate system</dd>
+<dt>large_arc_flag:</dt>
+<dd>If non-zero (true) then draw the larger of the
+available arcs</dd>
+<dt>sweep_flag:</dt>
+<dd>If non-zero (true) then draw the arc matching a
+clock-wise rotation</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathellipticarcrelative">
+<h1><a class="toc-backref" href="#id276">DrawPathEllipticArcRelative</a></h1>
+<div class="section" id="id101">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathEllipticArcRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double rx, const double ry,
+ const double x_axis_rotation,
+ unsigned int large_arc_flag, unsigned int sweep_flag,
+ const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id102">
+<h2>Description</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 automatically 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="literal-block">
+void DrawPathEllipticArcRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double rx, const double ry,
+ const double x_axis_rotation,
+ unsigned int large_arc_flag, unsigned int sweep_flag,
+ const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>rx:</dt>
+<dd>x radius</dd>
+<dt>ry:</dt>
+<dd>y radius</dd>
+<dt>x_axis_rotation:</dt>
+<dd>indicates how the ellipse as a whole is rotated
+relative to the current coordinate system</dd>
+<dt>large_arc_flag:</dt>
+<dd>If non-zero (true) then draw the larger of the
+available arcs</dd>
+<dt>sweep_flag:</dt>
+<dd>If non-zero (true) then draw the arc matching a
+clock-wise rotation</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathfinish">
+<h1><a class="toc-backref" href="#id277">DrawPathFinish</a></h1>
+<div class="section" id="id103">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathFinish( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id104">
+<h2>Description</h2>
+<p>DrawPathFinish() terminates the current path.</p>
+<p>The format of the DrawPathFinish method is:</p>
+<pre class="literal-block">
+void DrawPathFinish( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathlinetoabsolute">
+<h1><a class="toc-backref" href="#id278">DrawPathLineToAbsolute</a></h1>
+<div class="section" id="id105">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathLineToAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id106">
+<h2>Description</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="literal-block">
+void DrawPathLineToAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x ordinate</dd>
+<dt>y:</dt>
+<dd>target y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathlinetorelative">
+<h1><a class="toc-backref" href="#id279">DrawPathLineToRelative</a></h1>
+<div class="section" id="id107">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathLineToRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id108">
+<h2>Description</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="literal-block">
+void DrawPathLineToRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x ordinate</dd>
+<dt>y:</dt>
+<dd>target y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathlinetohorizontalabsolute">
+<h1><a class="toc-backref" href="#id280">DrawPathLineToHorizontalAbsolute</a></h1>
+<div class="section" id="id109">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathLineToHorizontalAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x );
+</pre>
+</div>
+<div class="section" id="id110">
+<h2>Description</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="literal-block">
+void DrawPathLineToHorizontalAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathlinetohorizontalrelative">
+<h1><a class="toc-backref" href="#id281">DrawPathLineToHorizontalRelative</a></h1>
+<div class="section" id="id111">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathLineToHorizontalRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x );
+</pre>
+</div>
+<div class="section" id="id112">
+<h2>Description</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="literal-block">
+void DrawPathLineToHorizontalRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathlinetoverticalabsolute">
+<h1><a class="toc-backref" href="#id282">DrawPathLineToVerticalAbsolute</a></h1>
+<div class="section" id="id113">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathLineToVerticalAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double y );
+</pre>
+</div>
+<div class="section" id="id114">
+<h2>Description</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="literal-block">
+void DrawPathLineToVerticalAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>y:</dt>
+<dd>target y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathlinetoverticalrelative">
+<h1><a class="toc-backref" href="#id283">DrawPathLineToVerticalRelative</a></h1>
+<div class="section" id="id115">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathLineToVerticalRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double y );
+</pre>
+</div>
+<div class="section" id="id116">
+<h2>Description</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="literal-block">
+void DrawPathLineToVerticalRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>y:</dt>
+<dd>target y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathmovetoabsolute">
+<h1><a class="toc-backref" href="#id284">DrawPathMoveToAbsolute</a></h1>
+<div class="section" id="id117">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathMoveToAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id118">
+<h2>Description</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="literal-block">
+void DrawPathMoveToAbsolute( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x ordinate</dd>
+<dt>y:</dt>
+<dd>target y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathmovetorelative">
+<h1><a class="toc-backref" href="#id285">DrawPathMoveToRelative</a></h1>
+<div class="section" id="id119">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathMoveToRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id120">
+<h2>Description</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="literal-block">
+void DrawPathMoveToRelative( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x ordinate</dd>
+<dt>y:</dt>
+<dd>target y ordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpathstart">
+<h1><a class="toc-backref" href="#id286">DrawPathStart</a></h1>
+<div class="section" id="id121">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPathStart( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id122">
+<h2>Description</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="literal-block">
+void DrawPathStart( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpeekgraphiccontext">
+<h1><a class="toc-backref" href="#id287">DrawPeekGraphicContext</a></h1>
+<div class="section" id="id123">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *DrawPeekGraphicContext( const <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id124">
+<h2>Description</h2>
+<p>DrawPeekGraphicContext() returns a copy of the the DrawInfo structure at
+the head of the drawing context stack. The user is responsible for
+deallocating the returned object using DestroyDrawInfo.</p>
+<p>The format of the DrawPeekGraphicContext method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *DrawPeekGraphicContext( const <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpoint">
+<h1><a class="toc-backref" href="#id288">DrawPoint</a></h1>
+<div class="section" id="id125">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPoint( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id126">
+<h2>Description</h2>
+<p>DrawPoint() draws a point using the current stroke color and stroke
+thickness at the specified coordinates.</p>
+<p>The format of the DrawPoint method is:</p>
+<pre class="literal-block">
+void DrawPoint( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>target x coordinate</dd>
+<dt>y:</dt>
+<dd>target y coordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpolygon">
+<h1><a class="toc-backref" href="#id289">DrawPolygon</a></h1>
+<div class="section" id="id127">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPolygon( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_coords,
+ const <a class="reference external" href="../api/types.html#pointinfo">PointInfo</a> *coordinates );
+</pre>
+</div>
+<div class="section" id="id128">
+<h2>Description</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="literal-block">
+void DrawPolygon( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_coords,
+ const <a class="reference external" href="../api/types.html#pointinfo">PointInfo</a> *coordinates );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>num_coords:</dt>
+<dd>number of coordinates</dd>
+<dt>coordinates:</dt>
+<dd>coordinate array</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpolyline">
+<h1><a class="toc-backref" href="#id290">DrawPolyline</a></h1>
+<div class="section" id="id129">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPolyline( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_coords,
+ const <a class="reference external" href="../api/types.html#pointinfo">PointInfo</a> *coordinates );
+</pre>
+</div>
+<div class="section" id="id130">
+<h2>Description</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="literal-block">
+void DrawPolyline( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_coords,
+ const <a class="reference external" href="../api/types.html#pointinfo">PointInfo</a> *coordinates );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>num_coords:</dt>
+<dd>number of coordinates</dd>
+<dt>coordinates:</dt>
+<dd>coordinate array</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpopclippath">
+<h1><a class="toc-backref" href="#id291">DrawPopClipPath</a></h1>
+<div class="section" id="id131">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPopClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id132">
+<h2>Description</h2>
+<p>DrawPopClipPath() terminates a clip path definition.</p>
+<p>The format of the DrawPopClipPath method is:</p>
+<pre class="literal-block">
+void DrawPopClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpopdefs">
+<h1><a class="toc-backref" href="#id292">DrawPopDefs</a></h1>
+<div class="section" id="id133">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPopDefs( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id134">
+<h2>Description</h2>
+<p>DrawPopDefs() terminates a definition list</p>
+<p>The format of the DrawPopDefs method is:</p>
+<pre class="literal-block">
+void DrawPopDefs( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpopgraphiccontext">
+<h1><a class="toc-backref" href="#id293">DrawPopGraphicContext</a></h1>
+<div class="section" id="id135">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPopGraphicContext( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id136">
+<h2>Description</h2>
+<p>DrawPopGraphicContext() destroys the current context returning to the
+previously pushed context. Multiple contexts may exist. It is an error
+to attempt to pop more contexts than have been pushed, and it is proper
+form to pop all contexts which have been pushed.</p>
+<p>The format of the DrawPopGraphicContext method is:</p>
+<pre class="literal-block">
+void DrawPopGraphicContext( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpoppattern">
+<h1><a class="toc-backref" href="#id294">DrawPopPattern</a></h1>
+<div class="section" id="id137">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPopPattern( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id138">
+<h2>Description</h2>
+<p>DrawPopPattern() terminates a pattern definition.</p>
+<p>The format of the DrawPopPattern method is:</p>
+<pre class="literal-block">
+void DrawPopPattern( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpushclippath">
+<h1><a class="toc-backref" href="#id295">DrawPushClipPath</a></h1>
+<div class="section" id="id139">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPushClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *clip_path_id );
+</pre>
+</div>
+<div class="section" id="id140">
+<h2>Description</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="literal-block">
+void DrawPushClipPath( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *clip_path_id );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>clip_path_id:</dt>
+<dd>string identifier to associate with the clip path for
+later use.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpushdefs">
+<h1><a class="toc-backref" href="#id296">DrawPushDefs</a></h1>
+<div class="section" id="id141">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPushDefs( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id142">
+<h2>Description</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="literal-block">
+void DrawPushDefs( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpushgraphiccontext">
+<h1><a class="toc-backref" href="#id297">DrawPushGraphicContext</a></h1>
+<div class="section" id="id143">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPushGraphicContext( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id144">
+<h2>Description</h2>
+<p>DrawPushGraphicContext() clones the current drawing context to create a
+new drawing context. The original drawing context(s) may be returned to
+by invoking DrawPopGraphicContext(). The contexts are stored on a context
+stack. For every Pop there must have already been an equivalent Push.</p>
+<p>The format of the DrawPushGraphicContext method is:</p>
+<pre class="literal-block">
+void DrawPushGraphicContext( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawpushpattern">
+<h1><a class="toc-backref" href="#id298">DrawPushPattern</a></h1>
+<div class="section" id="id145">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawPushPattern( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *pattern_id, const double x,
+ const double y, const double width, const double height );
+</pre>
+</div>
+<div class="section" id="id146">
+<h2>Description</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="literal-block">
+void DrawPushPattern( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *pattern_id, const double x,
+ const double y, const double width, const double height );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>pattern_id:</dt>
+<dd>pattern identification for later reference</dd>
+<dt>x:</dt>
+<dd>x ordinate of top left corner</dd>
+<dt>y:</dt>
+<dd>y ordinate of top left corner</dd>
+<dt>width:</dt>
+<dd>width of pattern space</dd>
+<dt>height:</dt>
+<dd>height of pattern space</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawrectangle">
+<h1><a class="toc-backref" href="#id299">DrawRectangle</a></h1>
+<div class="section" id="id147">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawRectangle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1, const double y1, const double x2,
+ const double y2 );
+</pre>
+</div>
+<div class="section" id="id148">
+<h2>Description</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="literal-block">
+void DrawRectangle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x1, const double y1, const double x2,
+ const double y2 );
+</pre>
+<dl class="docutils">
+<dt>x1:</dt>
+<dd>x ordinate of first coordinate</dd>
+<dt>y1:</dt>
+<dd>y ordinate of first coordinate</dd>
+<dt>x2:</dt>
+<dd>x ordinate of second coordinate</dd>
+<dt>y2:</dt>
+<dd>y ordinate of second coordinate</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawrender">
+<h1><a class="toc-backref" href="#id300">DrawRender</a></h1>
+<div class="section" id="id149">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int DrawRender( const <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id150">
+<h2>Description</h2>
+<p>DrawRender() renders all preceding drawing commands onto the image.</p>
+<p>The format of the DrawRender method is:</p>
+<pre class="literal-block">
+int DrawRender( const <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawrotate">
+<h1><a class="toc-backref" href="#id301">DrawRotate</a></h1>
+<div class="section" id="id151">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawRotate( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double degrees );
+</pre>
+</div>
+<div class="section" id="id152">
+<h2>Description</h2>
+<p>DrawRotate() applies the specified rotation to the current coordinate
+space.</p>
+<p>The format of the DrawRotate method is:</p>
+<pre class="literal-block">
+void DrawRotate( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double degrees );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>degrees:</dt>
+<dd>degrees of rotation</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawroundrectangle">
+<h1><a class="toc-backref" href="#id302">DrawRoundRectangle</a></h1>
+<div class="section" id="id153">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawRoundRectangle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, double x1, double y1, double x2, double y2,
+ double rx, double ry );
+</pre>
+</div>
+<div class="section" id="id154">
+<h2>Description</h2>
+<p>DrawRoundRectangle() draws a rounted rectangle given two coordinates,
+x &amp; 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="literal-block">
+void DrawRoundRectangle( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, double x1, double y1, double x2, double y2,
+ double rx, double ry );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x1:</dt>
+<dd>x ordinate of first coordinate</dd>
+<dt>y1:</dt>
+<dd>y ordinate of first coordinate</dd>
+<dt>x2:</dt>
+<dd>x ordinate of second coordinate</dd>
+<dt>y2:</dt>
+<dd>y ordinate of second coordinate</dd>
+<dt>rx:</dt>
+<dd>radius of corner in horizontal direction</dd>
+<dt>ry:</dt>
+<dd>radius of corner in vertical direction</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawscale">
+<h1><a class="toc-backref" href="#id303">DrawScale</a></h1>
+<div class="section" id="id155">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawScale( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id156">
+<h2>Description</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="literal-block">
+void DrawScale( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>horizontal scale factor</dd>
+<dt>y:</dt>
+<dd>vertical scale factor</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawskewx">
+<h1><a class="toc-backref" href="#id304">DrawSkewX</a></h1>
+<div class="section" id="id157">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSkewX( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double degrees );
+</pre>
+</div>
+<div class="section" id="id158">
+<h2>Description</h2>
+<p>DrawSkewX() skews the current coordinate system in the horizontal
+direction.</p>
+<p>The format of the DrawSkewX method is:</p>
+<pre class="literal-block">
+void DrawSkewX( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double degrees );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>degrees:</dt>
+<dd>number of degrees to skew the coordinates</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawskewy">
+<h1><a class="toc-backref" href="#id305">DrawSkewY</a></h1>
+<div class="section" id="id159">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSkewY( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double degrees );
+</pre>
+</div>
+<div class="section" id="id160">
+<h2>Description</h2>
+<p>DrawSkewY() skews the current coordinate system in the vertical
+direction.</p>
+<p>The format of the DrawSkewY method is:</p>
+<pre class="literal-block">
+void DrawSkewY( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double degrees );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>degrees:</dt>
+<dd>number of degrees to skew the coordinates</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstopcolor">
+<h1><a class="toc-backref" href="#id306">DrawSetStopColor</a></h1>
+<div class="section" id="id161">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStopColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *stop_color,
+ const double offset );
+</pre>
+</div>
+<div class="section" id="id162">
+<h2>Description</h2>
+<p>DrawSetStopColor() sets the stop color and offset for gradients</p>
+<p>The format of the DrawSetStopColor method is:</p>
+<pre class="literal-block">
+void DrawSetStopColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *stop_color,
+ const double offset );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+<p>o stop_color:</p>
+<p>o offset:</p>
+</div>
+</div>
+<div class="section" id="drawgetstrokecolor">
+<h1><a class="toc-backref" href="#id307">DrawGetStrokeColor</a></h1>
+<div class="section" id="id163">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> DrawGetStrokeColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id164">
+<h2>Description</h2>
+<p>DrawGetStrokeColor() returns the color used for stroking object outlines.</p>
+<p>The format of the DrawGetStrokeColor method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> DrawGetStrokeColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokecolor">
+<h1><a class="toc-backref" href="#id308">DrawSetStrokeColor</a></h1>
+<div class="section" id="id165">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *stroke_color );
+</pre>
+</div>
+<div class="section" id="id166">
+<h2>Description</h2>
+<p>DrawSetStrokeColor() sets the color used for stroking object outlines.</p>
+<p>The format of the DrawSetStrokeColor method is:</p>
+<pre class="literal-block">
+void DrawSetStrokeColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *stroke_color );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>stroke_color:</dt>
+<dd>stroke color</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokecolorstring">
+<h1><a class="toc-backref" href="#id309">DrawSetStrokeColorString</a></h1>
+<div class="section" id="id167">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeColorString( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *stroke_color );
+</pre>
+</div>
+<div class="section" id="id168">
+<h2>Description</h2>
+<p>DrawSetStrokeColorString() sets the color used for stroking object outlines.</p>
+<p>The format of the DrawSetStrokeColorString method is:</p>
+<pre class="literal-block">
+void DrawSetStrokeColorString( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *stroke_color );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>stroke_color:</dt>
+<dd>stroke color</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokepatternurl">
+<h1><a class="toc-backref" href="#id310">DrawSetStrokePatternURL</a></h1>
+<div class="section" id="id169">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokePatternURL( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *stroke_url );
+</pre>
+</div>
+<div class="section" id="id170">
+<h2>Description</h2>
+<p>DrawSetStrokePatternURL() sets the pattern used for stroking object outlines.</p>
+<p>The format of the DrawSetStrokePatternURL method is:</p>
+<pre class="literal-block">
+void DrawSetStrokePatternURL( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *stroke_url );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>stroke_url:</dt>
+<dd>URL specifying pattern ID (e.g. &quot;#pattern_id&quot;)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokeantialias">
+<h1><a class="toc-backref" href="#id311">DrawGetStrokeAntialias</a></h1>
+<div class="section" id="id171">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int DrawGetStrokeAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id172">
+<h2>Description</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="literal-block">
+unsigned int DrawGetStrokeAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokeantialias">
+<h1><a class="toc-backref" href="#id312">DrawSetStrokeAntialias</a></h1>
+<div class="section" id="id173">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned int stroke_antialias );
+</pre>
+</div>
+<div class="section" id="id174">
+<h2>Description</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="literal-block">
+void DrawSetStrokeAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned int stroke_antialias );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>stroke_antialias:</dt>
+<dd>set to false (zero) to disable antialiasing</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokedasharray">
+<h1><a class="toc-backref" href="#id313">DrawGetStrokeDashArray</a></h1>
+<div class="section" id="id175">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+double *DrawGetStrokeDashArray( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, unsigned long *num_elems );
+</pre>
+</div>
+<div class="section" id="id176">
+<h2>Description</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="literal-block">
+double *DrawGetStrokeDashArray( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, unsigned long *num_elems );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>num_elems:</dt>
+<dd>address to place number of elements in dash array</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokedasharray">
+<h1><a class="toc-backref" href="#id314">DrawSetStrokeDashArray</a></h1>
+<div class="section" id="id177">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeDashArray( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_elems,
+ const double *dasharray );
+</pre>
+</div>
+<div class="section" id="id178">
+<h2>Description</h2>
+<p>DrawSetStrokeDashArray() specifies the pattern of dashes and gaps used to
+stroke paths. The strokeDashArray 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
+num_elems 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="literal-block">
+void DrawSetStrokeDashArray( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long num_elems,
+ const double *dasharray );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>num_elems:</dt>
+<dd>number of elements in dash array</dd>
+<dt>dasharray:</dt>
+<dd>dash array values</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokedashoffset">
+<h1><a class="toc-backref" href="#id315">DrawGetStrokeDashOffset</a></h1>
+<div class="section" id="id179">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+double DrawGetStrokeDashOffset( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id180">
+<h2>Description</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="literal-block">
+double DrawGetStrokeDashOffset( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokedashoffset">
+<h1><a class="toc-backref" href="#id316">DrawSetStrokeDashOffset</a></h1>
+<div class="section" id="id181">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeDashOffset( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double dash_offset );
+</pre>
+</div>
+<div class="section" id="id182">
+<h2>Description</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="literal-block">
+void DrawSetStrokeDashOffset( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double dash_offset );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>dash_offset:</dt>
+<dd>dash offset</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokelinecap">
+<h1><a class="toc-backref" href="#id317">DrawGetStrokeLineCap</a></h1>
+<div class="section" id="id183">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+LineCap DrawGetStrokeLineCap( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id184">
+<h2>Description</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="literal-block">
+LineCap DrawGetStrokeLineCap( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokelinecap">
+<h1><a class="toc-backref" href="#id318">DrawSetStrokeLineCap</a></h1>
+<div class="section" id="id185">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeLineCap( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const LineCap linecap );
+</pre>
+</div>
+<div class="section" id="id186">
+<h2>Description</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="literal-block">
+void DrawSetStrokeLineCap( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const LineCap linecap );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>linecap:</dt>
+<dd>linecap style</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokelinejoin">
+<h1><a class="toc-backref" href="#id319">DrawGetStrokeLineJoin</a></h1>
+<div class="section" id="id187">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+LineJoin DrawGetStrokeLineJoin( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id188">
+<h2>Description</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="literal-block">
+LineJoin DrawGetStrokeLineJoin( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokelinejoin">
+<h1><a class="toc-backref" href="#id320">DrawSetStrokeLineJoin</a></h1>
+<div class="section" id="id189">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeLineJoin( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const LineJoin linejoin );
+</pre>
+</div>
+<div class="section" id="id190">
+<h2>Description</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="literal-block">
+void DrawSetStrokeLineJoin( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const LineJoin linejoin );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>linejoin:</dt>
+<dd>line join style</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokemiterlimit">
+<h1><a class="toc-backref" href="#id321">DrawGetStrokeMiterLimit</a></h1>
+<div class="section" id="id191">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned long DrawGetStrokeMiterLimit( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id192">
+<h2>Description</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="literal-block">
+unsigned long DrawGetStrokeMiterLimit( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokemiterlimit">
+<h1><a class="toc-backref" href="#id322">DrawSetStrokeMiterLimit</a></h1>
+<div class="section" id="id193">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeMiterLimit( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long miterlimit );
+</pre>
+</div>
+<div class="section" id="id194">
+<h2>Description</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="literal-block">
+void DrawSetStrokeMiterLimit( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned long miterlimit );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>miterlimit:</dt>
+<dd>miter limit</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokeopacity">
+<h1><a class="toc-backref" href="#id323">DrawGetStrokeOpacity</a></h1>
+<div class="section" id="id195">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+double DrawGetStrokeOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id196">
+<h2>Description</h2>
+<p>DrawGetStrokeOpacity() returns the opacity of stroked object outlines.</p>
+<p>The format of the DrawGetStrokeOpacity method is:</p>
+<pre class="literal-block">
+double DrawGetStrokeOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokeopacity">
+<h1><a class="toc-backref" href="#id324">DrawSetStrokeOpacity</a></h1>
+<div class="section" id="id197">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double stroke_opacity );
+</pre>
+</div>
+<div class="section" id="id198">
+<h2>Description</h2>
+<p>DrawSetStrokeOpacity() specifies the opacity of stroked object outlines.</p>
+<p>The format of the DrawSetStrokeOpacity method is:</p>
+<pre class="literal-block">
+void DrawSetStrokeOpacity( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double stroke_opacity );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>stroke_opacity:</dt>
+<dd>stroke opacity. The value 1.0 is opaque.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgetstrokewidth">
+<h1><a class="toc-backref" href="#id325">DrawGetStrokeWidth</a></h1>
+<div class="section" id="id199">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+double DrawGetStrokeWidth( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id200">
+<h2>Description</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="literal-block">
+double DrawGetStrokeWidth( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetstrokewidth">
+<h1><a class="toc-backref" href="#id326">DrawSetStrokeWidth</a></h1>
+<div class="section" id="id201">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetStrokeWidth( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double stroke_width );
+</pre>
+</div>
+<div class="section" id="id202">
+<h2>Description</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="literal-block">
+void DrawSetStrokeWidth( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double stroke_width );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>stroke_width:</dt>
+<dd>stroke width</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgettextantialias">
+<h1><a class="toc-backref" href="#id327">DrawGetTextAntialias</a></h1>
+<div class="section" id="id203">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int DrawGetTextAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id204">
+<h2>Description</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="literal-block">
+unsigned int DrawGetTextAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsettextantialias">
+<h1><a class="toc-backref" href="#id328">DrawSetTextAntialias</a></h1>
+<div class="section" id="id205">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetTextAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned int text_antialias );
+</pre>
+</div>
+<div class="section" id="id206">
+<h2>Description</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="literal-block">
+void DrawSetTextAntialias( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const unsigned int text_antialias );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>text_antialias:</dt>
+<dd>antialias boolean. Set to false (0) to disable
+antialiasing.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgettextdecoration">
+<h1><a class="toc-backref" href="#id329">DrawGetTextDecoration</a></h1>
+<div class="section" id="id207">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#decorationtype">DecorationType</a> DrawGetTextDecoration( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id208">
+<h2>Description</h2>
+<p>DrawGetTextDecoration() returns the decoration applied when annotating with
+text.</p>
+<p>The format of the DrawGetTextDecoration method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#decorationtype">DecorationType</a> DrawGetTextDecoration( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsettextdecoration">
+<h1><a class="toc-backref" href="#id330">DrawSetTextDecoration</a></h1>
+<div class="section" id="id209">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetTextDecoration( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#decorationtype">DecorationType</a> decoration );
+</pre>
+</div>
+<div class="section" id="id210">
+<h2>Description</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="literal-block">
+void DrawSetTextDecoration( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#decorationtype">DecorationType</a> decoration );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>decoration:</dt>
+<dd>text decoration. One of NoDecoration, UnderlineDecoration,
+OverlineDecoration, or LineThroughDecoration</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgettextencoding">
+<h1><a class="toc-backref" href="#id331">DrawGetTextEncoding</a></h1>
+<div class="section" id="id211">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+char *DrawGetTextEncoding( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id212">
+<h2>Description</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="literal-block">
+char *DrawGetTextEncoding( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsettextencoding">
+<h1><a class="toc-backref" href="#id332">DrawSetTextEncoding</a></h1>
+<div class="section" id="id213">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetTextEncoding( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *encoding );
+</pre>
+</div>
+<div class="section" id="id214">
+<h2>Description</h2>
+<p>DrawSetTextEncoding() specifies specifies the code set to use for
+text annotations. The only character encoding which may be specified
+at this time is &quot;UTF-8&quot; 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="literal-block">
+void DrawSetTextEncoding( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *encoding );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>encoding:</dt>
+<dd>character string specifying text encoding</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawgettextundercolor">
+<h1><a class="toc-backref" href="#id333">DrawGetTextUnderColor</a></h1>
+<div class="section" id="id215">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> DrawGetTextUnderColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+</div>
+<div class="section" id="id216">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> DrawGetTextUnderColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsettextundercolor">
+<h1><a class="toc-backref" href="#id334">DrawSetTextUnderColor</a></h1>
+<div class="section" id="id217">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetTextUnderColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *under_color );
+</pre>
+</div>
+<div class="section" id="id218">
+<h2>Description</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="literal-block">
+void DrawSetTextUnderColor( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> *under_color );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>under_color:</dt>
+<dd>text under color</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsettextundercolorstring">
+<h1><a class="toc-backref" href="#id335">DrawSetTextUnderColorString</a></h1>
+<div class="section" id="id219">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetTextUnderColorString( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *under_color );
+</pre>
+</div>
+<div class="section" id="id220">
+<h2>Description</h2>
+<p>DrawSetTextUnderColorString() specifies the color of a background rectangle
+to place under text annotations.</p>
+<p>The format of the DrawSetTextUnderColorString method is:</p>
+<pre class="literal-block">
+void DrawSetTextUnderColorString( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const char *under_color );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>under_color:</dt>
+<dd>text under color</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawtranslate">
+<h1><a class="toc-backref" href="#id336">DrawTranslate</a></h1>
+<div class="section" id="id221">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawTranslate( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+</div>
+<div class="section" id="id222">
+<h2>Description</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="literal-block">
+void DrawTranslate( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, const double x, const double y );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x:</dt>
+<dd>new x ordinate for coordinate system origin</dd>
+<dt>y:</dt>
+<dd>new y ordinate for coordinate system origin</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="drawsetviewbox">
+<h1><a class="toc-backref" href="#id337">DrawSetViewbox</a></h1>
+<div class="section" id="id223">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DrawSetViewbox( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, unsigned long x1, unsigned long y1,
+ unsigned long x2, unsigned long y2 );
+</pre>
+</div>
+<div class="section" id="id224">
+<h2>Description</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="literal-block">
+void DrawSetViewbox( <a class="reference external" href="../api/types.html#drawcontext">DrawContext</a> context, unsigned long x1, unsigned long y1,
+ unsigned long x2, unsigned long y2 );
+</pre>
+<dl class="docutils">
+<dt>context:</dt>
+<dd>drawing context</dd>
+<dt>x1:</dt>
+<dd>left x ordinate</dd>
+<dt>y1:</dt>
+<dd>top y ordinate</dd>
+<dt>x2:</dt>
+<dd>right x ordinate</dd>
+<dt>y2:</dt>
+<dd>bottom y ordinate</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/effect.html b/www/api/effect.html
index 8e925ae..17a724f 100644
--- a/www/api/effect.html
+++ b/www/api/effect.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>effect</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="effect">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="image-effects-methods">Image effects methods</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#adaptivethresholdimage" id="id51">AdaptiveThresholdImage</a></li>
<li><a class="reference internal" href="#addnoiseimage" id="id52">AddNoiseImage</a></li>
@@ -916,5 +916,10 @@ a percentage of MaxRGB.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/effect.html.orig b/www/api/effect.html.orig
new file mode 100644
index 0000000..6d3c634
--- /dev/null
+++ b/www/api/effect.html.orig
@@ -0,0 +1,920 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>effect</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="effect">
+<h1 class="title">effect</h1>
+<h2 class="subtitle" id="image-effects-methods">Image effects methods</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#adaptivethresholdimage" id="id51">AdaptiveThresholdImage</a></li>
+<li><a class="reference internal" href="#addnoiseimage" id="id52">AddNoiseImage</a></li>
+<li><a class="reference internal" href="#addnoiseimagechannel" id="id53">AddNoiseImageChannel</a></li>
+<li><a class="reference internal" href="#blackthresholdimage" id="id54">BlackThresholdImage</a></li>
+<li><a class="reference internal" href="#blurimage" id="id55">BlurImage</a></li>
+<li><a class="reference internal" href="#blurimagechannel" id="id56">BlurImageChannel</a></li>
+<li><a class="reference internal" href="#channelthresholdimage" id="id57">ChannelThresholdImage</a></li>
+<li><a class="reference internal" href="#convolveimage" id="id58">ConvolveImage</a></li>
+<li><a class="reference internal" href="#despeckleimage" id="id59">DespeckleImage</a></li>
+<li><a class="reference internal" href="#edgeimage" id="id60">EdgeImage</a></li>
+<li><a class="reference internal" href="#embossimage" id="id61">EmbossImage</a></li>
+<li><a class="reference internal" href="#enhanceimage" id="id62">EnhanceImage</a></li>
+<li><a class="reference internal" href="#gaussianblurimage" id="id63">GaussianBlurImage</a></li>
+<li><a class="reference internal" href="#gaussianblurimagechannel" id="id64">GaussianBlurImageChannel</a></li>
+<li><a class="reference internal" href="#medianfilterimage" id="id65">MedianFilterImage</a></li>
+<li><a class="reference internal" href="#motionblurimage" id="id66">MotionBlurImage</a></li>
+<li><a class="reference internal" href="#randomchannelthresholdimage" id="id67">RandomChannelThresholdImage</a></li>
+<li><a class="reference internal" href="#reducenoiseimage" id="id68">ReduceNoiseImage</a></li>
+<li><a class="reference internal" href="#shadeimage" id="id69">ShadeImage</a></li>
+<li><a class="reference internal" href="#sharpenimage" id="id70">SharpenImage</a></li>
+<li><a class="reference internal" href="#sharpenimagechannel" id="id71">SharpenImageChannel</a></li>
+<li><a class="reference internal" href="#spreadimage" id="id72">SpreadImage</a></li>
+<li><a class="reference internal" href="#thresholdimage" id="id73">ThresholdImage</a></li>
+<li><a class="reference internal" href="#unsharpmaskimage" id="id74">UnsharpMaskImage</a></li>
+<li><a class="reference internal" href="#unsharpmaskimagechannel" id="id75">UnsharpMaskImageChannel</a></li>
+<li><a class="reference internal" href="#whitethresholdimage" id="id76">WhiteThresholdImage</a></li>
+</ul>
+</div>
+<div class="section" id="adaptivethresholdimage">
+<h1><a class="toc-backref" href="#id51">AdaptiveThresholdImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AdaptiveThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long width,
+ const unsigned long height, const unsigned long unsigned long,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>AdaptiveThresholdImage() selects an individual threshold for each pixel
+based on the range of intensity values in its local neighborhood. This
+allows for thresholding of an image whose global intensity histogram
+doesn't contain distinctive peaks.</p>
+<p>The format of the AdaptiveThresholdImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AdaptiveThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long width,
+ const unsigned long height, const unsigned long unsigned long,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>width:</dt>
+<dd>The width of the local neighborhood.</dd>
+<dt>height:</dt>
+<dd>The height of the local neighborhood.</dd>
+<dt>offset:</dt>
+<dd>The mean offset.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="addnoiseimage">
+<h1><a class="toc-backref" href="#id52">AddNoiseImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AddNoiseImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#noisetype">NoiseType</a> noise_type,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>AddNoiseImage() adds random noise to the image.</p>
+<p>The format of the AddNoiseImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AddNoiseImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#noisetype">NoiseType</a> noise_type,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>noise_type:</dt>
+<dd>The type of noise: Uniform, Gaussian, Multiplicative,
+Impulse, Laplacian, Poisson, or Random.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="addnoiseimagechannel">
+<h1><a class="toc-backref" href="#id53">AddNoiseImageChannel</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AddNoiseImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const <a class="reference external" href="../api/types.html#noisetype">NoiseType</a> noise_type, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>AddNoiseImageChannel() adds random noise to one image channel.</p>
+<p>The format of the AddNoiseImageChannel method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AddNoiseImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const <a class="reference external" href="../api/types.html#noisetype">NoiseType</a> noise_type, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>The image channel to apply noise to.</dd>
+<dt>noise_type:</dt>
+<dd>The type of noise: Uniform, Gaussian, Multiplicative,
+Impulse, Laplacian, Poisson, or Random.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blackthresholdimage">
+<h1><a class="toc-backref" href="#id54">BlackThresholdImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail BlackThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *thresholds );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>BlackThresholdImage() adjusts the levels of image channels such that
+values below a specified threshold are set to the minimum value (black)
+while the remaining pixels are unchanged.</p>
+<p>The format of the BlackThresholdImage method is:</p>
+<pre class="literal-block">
+MagickPassFail BlackThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *thresholds );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>thresholds:</dt>
+<dd>Channel thresholds which are specified as a comma delimited
+list containing the thresholds for red, green, blue, and opacity. If
+the list contains a percent symbol (%) then all values are treated as
+a percentage of MaxRGB.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blurimage">
+<h1><a class="toc-backref" href="#id55">BlurImage</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BlurImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BlurImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="blurimagechannel">
+<h1><a class="toc-backref" href="#id56">BlurImageChannel</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BlurImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>BlurImageChannel() blurs the specified image channel. We convolve the
+image channel 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 BlurImageChannel() selects a suitable
+radius for you.</p>
+<p>The format of the BlurImageChannel method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *BlurImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>channel:</dt>
+<dd>The channel to blur.</dd>
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="channelthresholdimage">
+<h1><a class="toc-backref" href="#id57">ChannelThresholdImage</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ChannelThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *threshold );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>ChannelThresholdImage() changes the value of individual pixels based on
+the level of each pixel channel. The result sets the affected channels
+to the minimum or maximum channel value. A negative threshold value
+disables thresholding for that channel. Append a percent symbol to
+have threshold values automatically scaled from a percentage to MaxRGB.</p>
+<p>Invoked by the '-threshold' option.</p>
+<p>The format of the ChannelThresholdImage method is:</p>
+<pre class="literal-block">
+MagickPassFail ChannelThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *threshold );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>threshold:</dt>
+<dd>define the threshold values, &lt;red&gt;{&lt;green&gt;,&lt;blue&gt;,&lt;opacity&gt;}{%}.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="convolveimage">
+<h1><a class="toc-backref" href="#id58">ConvolveImage</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ConvolveImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int order,
+ const double *kernel, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>ConvolveImage() applies a custom convolution kernel to the image.</p>
+<p>The format of the ConvolveImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ConvolveImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int order,
+ const double *kernel, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>order:</dt>
+<dd>The number of columns and rows in the filter kernel.</dd>
+<dt>kernel:</dt>
+<dd>An array of double representing the convolution kernel.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="despeckleimage">
+<h1><a class="toc-backref" href="#id59">DespeckleImage</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *DespeckleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>Despeckle() reduces the speckle noise in an image while preserving the
+edges of the original image.</p>
+<p>The format of the DespeckleImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *DespeckleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="edgeimage">
+<h1><a class="toc-backref" href="#id60">EdgeImage</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *EdgeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>EdgeImage() finds edges in an image. Radius defines the radius of the
+convolution filter. Use a radius of 0 and Edge() selects a suitable
+radius for you.</p>
+<p>The format of the EdgeImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *EdgeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>the radius of the pixel neighborhood.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="embossimage">
+<h1><a class="toc-backref" href="#id61">EmbossImage</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *EmbossImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *EmbossImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>the radius of the pixel neighborhood.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="enhanceimage">
+<h1><a class="toc-backref" href="#id62">EnhanceImage</a></h1>
+<div class="section" id="id21">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *EnhanceImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id22">
+<h2>Description</h2>
+<p>EnhanceImage() applies a digital filter to the image color channels that
+improves the quality of a noisy image. The opacity channel is preserved
+but is otherwise ignored.</p>
+<p>The format of the EnhanceImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *EnhanceImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="gaussianblurimage">
+<h1><a class="toc-backref" href="#id63">GaussianBlurImage</a></h1>
+<div class="section" id="id23">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GaussianBlurImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id24">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GaussianBlurImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>blur_image:</dt>
+<dd>Method GaussianBlurImage returns a pointer to the image
+after it is blur. A null image is returned if there is a memory
+shortage.</dd>
+<dt>image:</dt>
+<dd>Image to blur.</dd>
+<dt>radius:</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>the standard deviation of the Gaussian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="gaussianblurimagechannel">
+<h1><a class="toc-backref" href="#id64">GaussianBlurImageChannel</a></h1>
+<div class="section" id="id25">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GaussianBlurImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id26">
+<h2>Description</h2>
+<p>GaussianBlurImageChannel() blurs an image channel. 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 GaussianBlurImageChannel method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GaussianBlurImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>blur_image:</dt>
+<dd>Method GaussianBlurImage returns a pointer to the image
+after it is blur. A null image is returned if there is a memory
+shortage.</dd>
+<dt>image:</dt>
+<dd>Image to blur.</dd>
+<dt>channel:</dt>
+<dd>Channel to blur in image.</dd>
+<dt>radius:</dt>
+<dd>the radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>the standard deviation of the Gaussian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="medianfilterimage">
+<h1><a class="toc-backref" href="#id65">MedianFilterImage</a></h1>
+<div class="section" id="id27">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MedianFilterImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id28">
+<h2>Description</h2>
+<p>MedianFilterImage() applies a digital filter that improves the quality
+of a noisy image. Each pixel is replaced by the median in a set of
+neighboring pixels as defined by radius.</p>
+<p>The algorithm was contributed by Mike Edmonds and implements an insertion
+sort for selecting median color-channel values. For more on this algorithm
+see &quot;Skip Lists: A probabilistic Alternative to Balanced Trees&quot; by William
+Pugh in the June 1990 of Communications of the ACM.</p>
+<p>The format of the MedianFilterImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MedianFilterImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>The radius of the pixel neighborhood.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="motionblurimage">
+<h1><a class="toc-backref" href="#id66">MotionBlurImage</a></h1>
+<div class="section" id="id29">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MotionBlurImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ const double angle, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id30">
+<h2>Description</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 (direction object appears
+to be coming from).</p>
+<p>Andrew Protano contributed this effect.</p>
+<p>The format of the MotionBlurImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MotionBlurImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ const double angle, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting
+the center pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>angle:</dt>
+<dd>Apply the effect along this angle.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="randomchannelthresholdimage">
+<h1><a class="toc-backref" href="#id67">RandomChannelThresholdImage</a></h1>
+<div class="section" id="id31">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int RandomChannelThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *channel,
+ const char *thresholds,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id32">
+<h2>Description</h2>
+<p>RandomChannelThresholdImage() changes the value of individual pixels based
+on the intensity of each pixel compared to a random threshold. The result
+is a low-contrast, two color image.</p>
+<p>The format of the RandomChannelThresholdImage method is:</p>
+<pre class="literal-block">
+unsigned int RandomChannelThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *channel,
+ const char *thresholds,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>The channel or channels to be thresholded.</dd>
+<dt>thresholds:</dt>
+<dd>a geometry string containing LOWxHIGH thresholds.
+If the string contains 2x2, 3x3, 4x4, 5x5, 6x6, or 7x7, then
+an ordered dither of order 2, 3, 4, 5, 6, or 7 will be performed
+instead.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="reducenoiseimage">
+<h1><a class="toc-backref" href="#id68">ReduceNoiseImage</a></h1>
+<div class="section" id="id33">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ReduceNoiseImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id34">
+<h2>Description</h2>
+<p>ReduceNoiseImage() smooths the contours of an image while still preserving
+edge information. The algorithm works by replacing each pixel with its
+neighbor closest in value. A neighbor is defined by radius. Use a radius
+of 0 and ReduceNoise() selects a suitable radius for you.</p>
+<p>The format of the ReduceNoiseImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ReduceNoiseImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>The radius of the pixel neighborhood.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="shadeimage">
+<h1><a class="toc-backref" href="#id69">ShadeImage</a></h1>
+<div class="section" id="id35">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ShadeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int gray, double azimuth,
+ double elevation, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id36">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ShadeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int gray, double azimuth,
+ double elevation, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>gray:</dt>
+<dd>A value other than zero shades the intensity of each pixel.</dd>
+<dt>azimuth, elevation:</dt>
+<dd>Define the light source direction.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="sharpenimage">
+<h1><a class="toc-backref" href="#id70">SharpenImage</a></h1>
+<div class="section" id="id37">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SharpenImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id38">
+<h2>Description</h2>
+<p>SharpenImage() sharpens an 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>The format of the SharpenImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SharpenImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Laplacian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="sharpenimagechannel">
+<h1><a class="toc-backref" href="#id71">SharpenImageChannel</a></h1>
+<div class="section" id="id39">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SharpenImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id40">
+<h2>Description</h2>
+<p>SharpenImageChannel() sharpens an image channel. We convolve the image
+channel 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 SharpenImageChannel() selects a suitable
+radius for you.</p>
+<p>The format of the SharpenImageChannel method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SharpenImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>The channel to sharpen.</dd>
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Laplacian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="spreadimage">
+<h1><a class="toc-backref" href="#id72">SpreadImage</a></h1>
+<div class="section" id="id41">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SpreadImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id42">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SpreadImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>Choose a random pixel in a neighborhood of this extent.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="thresholdimage">
+<h1><a class="toc-backref" href="#id73">ThresholdImage</a></h1>
+<div class="section" id="id43">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const double threshold );
+</pre>
+</div>
+<div class="section" id="id44">
+<h2>Description</h2>
+<p>ThresholdImage() changes the value of individual pixels based on
+the intensity of each pixel compared to a specified threshold. Values
+greater than the threshold are set to the maximum quantum value, and
+values equal to or below the threshold are set to the minimum quantum
+value. The result is a high-contrast, two color image.</p>
+<p>The format of the ThresholdImage method is:</p>
+<pre class="literal-block">
+MagickPassFail ThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const double threshold );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>threshold:</dt>
+<dd>Define the threshold value</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="unsharpmaskimage">
+<h1><a class="toc-backref" href="#id74">UnsharpMaskImage</a></h1>
+<div class="section" id="id45">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *UnsharpMaskImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ const double amount, const double threshold,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id46">
+<h2>Description</h2>
+<p>UnsharpMaskImage() sharpens an 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 UnsharpMaskImage() selects a suitable radius for you.</p>
+<p>The format of the UnsharpMaskImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *UnsharpMaskImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ const double amount, const double threshold,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>amount:</dt>
+<dd>The percentage of the difference between the original and the
+blur image that is added back into the original.</dd>
+<dt>threshold:</dt>
+<dd>The threshold in pixels needed to apply the diffence amount.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="unsharpmaskimagechannel">
+<h1><a class="toc-backref" href="#id75">UnsharpMaskImageChannel</a></h1>
+<div class="section" id="id47">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *UnsharpMaskImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma, const double amount,
+ const double threshold, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id48">
+<h2>Description</h2>
+<p>UnsharpMaskImageChannel() sharpens an image channel. We convolve the
+image channel 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 UnsharpMaskImageChannel method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *UnsharpMaskImageChannel( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double radius, const double sigma, const double amount,
+ const double threshold, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>The channel to sharpen.</dd>
+<dt>radius:</dt>
+<dd>The radius of the Gaussian, in pixels, not counting the center
+pixel.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>amount:</dt>
+<dd>The percentage of the difference between the original and the
+blur image that is added back into the original.</dd>
+<dt>threshold:</dt>
+<dd>The threshold in pixels needed to apply the diffence amount.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="whitethresholdimage">
+<h1><a class="toc-backref" href="#id76">WhiteThresholdImage</a></h1>
+<div class="section" id="id49">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail WhiteThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *thresholds );
+</pre>
+</div>
+<div class="section" id="id50">
+<h2>Description</h2>
+<p>WhiteThresholdImage() adjusts the levels of image channels such that
+values above a specified threshold are set to the maximum value (white)
+while the remaining pixels are unchanged.</p>
+<p>The format of the WhiteThresholdImage method is:</p>
+<pre class="literal-block">
+MagickPassFail WhiteThresholdImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *thresholds );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>thresholds:</dt>
+<dd>Channel thresholds which are specified as a comma delimited
+list containing the thresholds for red, green, blue, and opacity. If
+the list contains a percent symbol (%) then all values are treated as
+a percentage of MaxRGB.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/enhance.html b/www/api/enhance.html
index 3654626..d4d4996 100644
--- a/www/api/enhance.html
+++ b/www/api/enhance.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="enhance">
@@ -274,5 +274,10 @@ unsigned int NormalizeImage( <a class="reference external" href="../api/types.ht
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/enhance.html.orig b/www/api/enhance.html.orig
new file mode 100644
index 0000000..4229325
--- /dev/null
+++ b/www/api/enhance.html.orig
@@ -0,0 +1,278 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>enhance</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="enhance">
+<h1 class="title">enhance</h1>
+<h2 class="subtitle" id="methods-to-enhance-or-adjust-an-image">Methods to enhance or adjust an image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#contrastimage" id="id15">ContrastImage</a></li>
+<li><a class="reference internal" href="#equalizeimage" id="id16">EqualizeImage</a></li>
+<li><a class="reference internal" href="#gammaimage" id="id17">GammaImage</a></li>
+<li><a class="reference internal" href="#levelimage" id="id18">LevelImage</a></li>
+<li><a class="reference internal" href="#levelimagechannel" id="id19">LevelImageChannel</a></li>
+<li><a class="reference internal" href="#modulateimage" id="id20">ModulateImage</a></li>
+<li><a class="reference internal" href="#negateimage" id="id21">NegateImage</a></li>
+<li><a class="reference internal" href="#normalizeimage" id="id22">NormalizeImage</a></li>
+</ul>
+</div>
+<div class="section" id="contrastimage">
+<h1><a class="toc-backref" href="#id15">ContrastImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int ContrastImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int sharpen );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>ContrastImage() enhances the intensity differences between the lighter and
+darker elements of the image. Set sharpen to a value other than 0 to
+increase the image contrast otherwise the contrast is reduced.</p>
+<p>The format of the ContrastImage method is:</p>
+<pre class="literal-block">
+unsigned int ContrastImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int sharpen );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>sharpen:</dt>
+<dd>Increase or decrease image contrast.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="equalizeimage">
+<h1><a class="toc-backref" href="#id16">EqualizeImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int EqualizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>EqualizeImage() applies a histogram equalization to the image.</p>
+<p>The format of the EqualizeImage method is:</p>
+<pre class="literal-block">
+unsigned int EqualizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="gammaimage">
+<h1><a class="toc-backref" href="#id17">GammaImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail GammaImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *level );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>Use GammaImage() to gamma-correct an image. 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 (e.g. &quot;1.0,2.2,0.45&quot;),
+or adjust all three with a single gamma parameter. Values typically range
+from 0.45 to 2.6.</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="literal-block">
+MagickPassFail GammaImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *level );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>level:</dt>
+<dd>Define the level of gamma correction.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="levelimage">
+<h1><a class="toc-backref" href="#id18">LevelImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int LevelImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *level );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>LevelImage() adjusts the levels of an image by scaling the colors falling
+between specified white and black points to the full available quantum
+range. The parameters provided represent the black, mid (gamma), and white
+points. The black point specifies the darkest color in the image. Colors
+darker than the black point are set to zero. Mid point specifies a gamma
+correction to apply to the image. White point specifies the lightest color
+in the image. Colors brighter than the white point are set to the maximum
+quantum value.</p>
+<p>The format of the LevelImage method is:</p>
+<pre class="literal-block">
+unsigned int LevelImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *level );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>levels:</dt>
+<dd>Specify the levels as a string of the form &quot;black/mid/white&quot;
+(e.g. &quot;10,1.0,65000) where black and white have the range of 0-MaxRGB,
+and mid has the range 0-10.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="levelimagechannel">
+<h1><a class="toc-backref" href="#id19">LevelImageChannel</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail LevelImageChannel( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double black_point, const double mid_point,
+ const double white_point );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>LevelImageChannel() adjusts the levels of one or more channels by
+scaling the colors falling between specified white and black points to
+the full available quantum range. The parameters provided represent the
+black, mid (gamma), and white points. The black point specifies the
+darkest color in the image. Colors darker than the black point are set to
+zero. Mid point specifies a gamma correction to apply to the image.
+White point specifies the lightest color in the image. Colors brighter
+than the white point are set to the maximum quantum value.</p>
+<p>The format of the LevelImage method is:</p>
+<pre class="literal-block">
+MagickPassFail LevelImageChannel( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ const double black_point, const double mid_point,
+ const double white_point );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>Identify which channel to level: Red, Cyan, Green, Magenta,
+Blue, Yellow, Opacity, or All.</dd>
+<dt>black_point, mid_point, white_point:</dt>
+<dd>Specify the levels where the black
+and white points have the range of 0-MaxRGB, and mid has the range 0-10.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="modulateimage">
+<h1><a class="toc-backref" href="#id20">ModulateImage</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int ModulateImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *modulate );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</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).</p>
+<p>The format of the ModulateImage method is:</p>
+<pre class="literal-block">
+unsigned int ModulateImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *modulate );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>modulate:</dt>
+<dd>Define the percent change in brightness, saturation, and
+hue.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="negateimage">
+<h1><a class="toc-backref" href="#id21">NegateImage</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int NegateImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int grayscale );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>Method 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="literal-block">
+unsigned int NegateImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int grayscale );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="normalizeimage">
+<h1><a class="toc-backref" href="#id22">NormalizeImage</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int NormalizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>The NormalizeImage() method enhances the contrast of a color image by
+adjusting the pixels color to span the entire range of colors available.</p>
+<p>The format of the NormalizeImage method is:</p>
+<pre class="literal-block">
+unsigned int NormalizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/error.html b/www/api/error.html
index 630ef50..42f7c63 100644
--- a/www/api/error.html
+++ b/www/api/error.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>error</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="error">
@@ -210,7 +210,7 @@ void MagickFatalError( const <a class="reference external" href="../api/types.ht
<h2>Description</h2>
<p>MagickFatalError() calls the fatal error handler methods with an error
reason. The fatal error handler is not expected to return!</p>
-<p>The format of the MagickError method is:</p>
+<p>The format of the MagickFatalError method is:</p>
<pre class="literal-block">
void MagickFatalError( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> error, const char *reason,
const char *description );
@@ -419,5 +419,10 @@ void ThrowLoggedException( <a class="reference external" href="../api/types.html
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/error.html.orig b/www/api/error.html.orig
new file mode 100644
index 0000000..c2b8a08
--- /dev/null
+++ b/www/api/error.html.orig
@@ -0,0 +1,423 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>error</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="error">
+<h1 class="title">error</h1>
+<h2 class="subtitle" id="error-reporting-methods">Error reporting methods</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#catchexception" id="id27">CatchException</a></li>
+<li><a class="reference internal" href="#copyexception" id="id28">CopyException</a></li>
+<li><a class="reference internal" href="#destroyexceptioninfo" id="id29">DestroyExceptionInfo</a></li>
+<li><a class="reference internal" href="#getexceptioninfo" id="id30">GetExceptionInfo</a></li>
+<li><a class="reference internal" href="#getlocaleexceptionmessage" id="id31">GetLocaleExceptionMessage</a></li>
+<li><a class="reference internal" href="#magickerror" id="id32">MagickError</a></li>
+<li><a class="reference internal" href="#magickfatalerror" id="id33">MagickFatalError</a></li>
+<li><a class="reference internal" href="#magickwarning" id="id34">MagickWarning</a></li>
+<li><a class="reference internal" href="#seterrorhandler" id="id35">SetErrorHandler</a></li>
+<li><a class="reference internal" href="#setexceptioninfo" id="id36">SetExceptionInfo</a></li>
+<li><a class="reference internal" href="#setfatalerrorhandler" id="id37">SetFatalErrorHandler</a></li>
+<li><a class="reference internal" href="#setwarninghandler" id="id38">SetWarningHandler</a></li>
+<li><a class="reference internal" href="#throwexception" id="id39">ThrowException</a></li>
+<li><a class="reference internal" href="#throwloggedexception" id="id40">ThrowLoggedException</a></li>
+</ul>
+</div>
+<div class="section" id="catchexception">
+<h1><a class="toc-backref" href="#id27">CatchException</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+CatchException( const <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</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="literal-block">
+CatchException( const <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>The exception info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="copyexception">
+<h1><a class="toc-backref" href="#id28">CopyException</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void CopyException( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *copy, const <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *original );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>CopyException() copies exception data from one ExceptionInfo structure
+to another.</p>
+<p>The format of the CopyException method is:</p>
+<pre class="literal-block">
+void CopyException( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *copy, const <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *original );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>copy:</dt>
+<dd>The exception to copy to.</dd>
+<dt>original:</dt>
+<dd>The exception to copy from.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="destroyexceptioninfo">
+<h1><a class="toc-backref" href="#id29">DestroyExceptionInfo</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DestroyExceptionInfo( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>DestroyExceptionInfo() deallocates memory associated with exception.</p>
+<p>The format of the DestroyExceptionInfo method is:</p>
+<pre class="literal-block">
+void DestroyExceptionInfo( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>The exception info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getexceptioninfo">
+<h1><a class="toc-backref" href="#id30">GetExceptionInfo</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+GetExceptionInfo( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>GetExceptionInfo() initializes an exception to default values.</p>
+<p>The format of the GetExceptionInfo method is:</p>
+<pre class="literal-block">
+GetExceptionInfo( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>The exception info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getlocaleexceptionmessage">
+<h1><a class="toc-backref" href="#id31">GetLocaleExceptionMessage</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+const char *GetLocaleExceptionMessage( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity, const char *tag );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+const char *GetLocaleExceptionMessage( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity, const char *tag );
+</pre>
+<dl class="docutils">
+<dt>severity:</dt>
+<dd>the severity of the exception.</dd>
+<dt>tag:</dt>
+<dd>the message tag.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickerror">
+<h1><a class="toc-backref" href="#id32">MagickError</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickError( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> error, const char *reason, const char *description );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>Method MagickError calls the error handler methods with an error reason.</p>
+<p>The format of the MagickError method is:</p>
+<pre class="literal-block">
+void MagickError( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> error, const char *reason, const char *description );
+</pre>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>Specifies the numeric error category.</dd>
+<dt>reason:</dt>
+<dd>Specifies the reason to display before terminating the
+program.</dd>
+<dt>description:</dt>
+<dd>Specifies any description to the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickfatalerror">
+<h1><a class="toc-backref" href="#id33">MagickFatalError</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickFatalError( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> error, const char *reason,
+ const char *description );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>MagickFatalError() calls the fatal error handler methods with an error
+reason. The fatal error handler is not expected to return!</p>
+<p>The format of the MagickError method is:</p>
+<pre class="literal-block">
+void MagickFatalError( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> error, const char *reason,
+ const char *description );
+</pre>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>Specifies the numeric error category.</dd>
+<dt>reason:</dt>
+<dd>Specifies the reason to display before terminating the
+program.</dd>
+<dt>description:</dt>
+<dd>Specifies any description to the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickwarning">
+<h1><a class="toc-backref" href="#id34">MagickWarning</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickWarning( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> warning, const char *reason,
+ const char *description );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>Method MagickWarning calls the warning handler methods with a warning
+reason.</p>
+<p>The format of the MagickWarning method is:</p>
+<pre class="literal-block">
+void MagickWarning( const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> warning, const char *reason,
+ const char *description );
+</pre>
+<dl class="docutils">
+<dt>warning:</dt>
+<dd>The warning severity.</dd>
+<dt>reason:</dt>
+<dd>Define the reason for the warning.</dd>
+<dt>description:</dt>
+<dd>Describe the warning.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="seterrorhandler">
+<h1><a class="toc-backref" href="#id35">SetErrorHandler</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> SetErrorHandler( <a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> handler );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>SetErrorHandler() sets the error handler to the specified method
+and returns the previous error handler.</p>
+<p>The format of the SetErrorHandler method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> SetErrorHandler( <a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> handler );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>handler:</dt>
+<dd>The method to handle errors.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setexceptioninfo">
+<h1><a class="toc-backref" href="#id36">SetExceptionInfo</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+SetExceptionInfo( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>SetExceptionInfo() set the exception severity.</p>
+<p>The format of the SetExceptionInfo method is:</p>
+<pre class="literal-block">
+SetExceptionInfo( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>The exception info.</dd>
+<dt>severity:</dt>
+<dd>The exception severity.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setfatalerrorhandler">
+<h1><a class="toc-backref" href="#id37">SetFatalErrorHandler</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+FatalErrorHandler SetFatalErrorHandler( FatalErrorHandler handler );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>SetFatalErrorHandler() sets the fatal error handler to the specified method
+and returns the previous fatal error handler.</p>
+<p>The format of the SetFatalErrorHandler method is:</p>
+<pre class="literal-block">
+FatalErrorHandler SetFatalErrorHandler( FatalErrorHandler handler );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>handler:</dt>
+<dd>The method to handle errors.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setwarninghandler">
+<h1><a class="toc-backref" href="#id38">SetWarningHandler</a></h1>
+<div class="section" id="id21">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> SetWarningHandler( <a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> handler );
+</pre>
+</div>
+<div class="section" id="id22">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> SetWarningHandler( <a class="reference external" href="../api/types.html#errorhandler">ErrorHandler</a> handler );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>handler:</dt>
+<dd>The method to handle warnings.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="throwexception">
+<h1><a class="toc-backref" href="#id39">ThrowException</a></h1>
+<div class="section" id="id23">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void ThrowException( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity,
+ const char *reason, const char *description );
+</pre>
+</div>
+<div class="section" id="id24">
+<h2>Description</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="literal-block">
+void ThrowException( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity,
+ const char *reason, const char *description );
+</pre>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>The exception.</dd>
+<dt>severity:</dt>
+<dd>The severity of the exception.</dd>
+<dt>reason:</dt>
+<dd>The reason of the exception.</dd>
+<dt>description:</dt>
+<dd>The exception description.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="throwloggedexception">
+<h1><a class="toc-backref" href="#id40">ThrowLoggedException</a></h1>
+<div class="section" id="id25">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void ThrowLoggedException( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity,
+ const char *reason, const char *description, const char *module,
+ const char *function, const unsigned long line ;
+</pre>
+</div>
+<div class="section" id="id26">
+<h2>Description</h2>
+<p>ThrowLoggedException() throws an exception with the specified severity code,
+reason, optional description, source filename, function name, and line
+number. If logging is enabled, the exception is also logged.</p>
+<p>If the exception already contains an ErrorException (or greater) or the
+existing exception is more severe, then it is ignored.</p>
+<p>The format of the ThrowLoggedException method is:</p>
+<pre class="literal-block">
+void ThrowLoggedException( <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, const <a class="reference external" href="../api/types.html#exceptiontype">ExceptionType</a> severity,
+ const char *reason, const char *description, const char *module,
+ const char *function, const unsigned long line ;
+</pre>
+<dl class="docutils">
+<dt>exception:</dt>
+<dd>The exception.</dd>
+<dt>severity:</dt>
+<dd>The severity of the exception.</dd>
+<dt>reason:</dt>
+<dd>The reason of the exception.</dd>
+<dt>description:</dt>
+<dd>The exception description.</dd>
+<dt>filename:</dt>
+<dd>The source module filename.</dd>
+<dt>function:</dt>
+<dd>The function name.</dd>
+<dt>line:</dt>
+<dd>The line number of the source module.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/export.html b/www/api/export.html
index 9bfa8f1..4019ad1 100644
--- a/www/api/export.html
+++ b/www/api/export.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>export</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="export">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="export-image-pixels-into-common-representations">Export image pixels into common representations</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#exportimagepixelarea" id="id5">ExportImagePixelArea</a></li>
<li><a class="reference internal" href="#exportviewpixelarea" id="id6">ExportViewPixelArea</a></li>
@@ -180,5 +180,10 @@ void ExportPixelAreaOptionsInit( ExportPixelAreaOptions *options );
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/export.html.orig b/www/api/export.html.orig
new file mode 100644
index 0000000..386b4f0
--- /dev/null
+++ b/www/api/export.html.orig
@@ -0,0 +1,184 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>export</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="export">
+<h1 class="title">export</h1>
+<h2 class="subtitle" id="export-image-pixels-into-common-representations">Export image pixels into common representations</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#exportimagepixelarea" id="id5">ExportImagePixelArea</a></li>
+<li><a class="reference internal" href="#exportviewpixelarea" id="id6">ExportViewPixelArea</a></li>
+<li><a class="reference internal" href="#exportpixelareaoptionsinit" id="id7">ExportPixelAreaOptionsInit</a></li>
+</ul>
+</div>
+<div class="section" id="exportimagepixelarea">
+<h1><a class="toc-backref" href="#id5">ExportImagePixelArea</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ExportImagePixelArea( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ unsigned int quantum_size, unsigned char *destination,
+ const ExportPixelAreaOptions *options,
+ ExportPixelAreaInfo *export_info );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>ExportImagePixelArea() transfers one or more pixel components from the
+default image pixel cache view to a user supplied buffer. By default,
+values are written in network (big-endian) byte/bit order. By setting
+the 'endian' member of ExportPixelAreaOptions, 16, 32 and 64-bit values
+may be output as little (LSBEndian), big (MSBEndian), or host native
+(NativeEndian) endian values. This function is quite powerful in that
+besides common native CPU type sizes, it can support any integer bit
+depth from 1 to 32 (e.g. 13), 64-bits as well as 32 and 64-bit float.</p>
+<p>MagickPass is returned if the pixels are successfully transferred,
+otherwise MagickFail.</p>
+<p>The format of the ExportImagePixelArea method is:</p>
+<pre class="literal-block">
+MagickPassFail ExportImagePixelArea( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ unsigned int quantum_size, unsigned char *destination,
+ const ExportPixelAreaOptions *options,
+ ExportPixelAreaInfo *export_info );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Returns MagickPass if the pixels are successfully transferred,
+otherwise MagickFail.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>quantum_type:</dt>
+<dd>Declare which pixel components to transfer (AlphaQuantum,
+BlackQuantum, BlueQuantum, CMYKAQuantum, CMYKQuantum, CyanQuantum,
+GrayAlphaQuantum, GrayQuantum, GreenQuantum, IndexAlphaQuantum,
+IndexQuantum, MagentaQuantum, RGBAQuantum, RGBQuantum,
+RedQuantum, YellowQuantum)</dd>
+<dt>quantum_size:</dt>
+<dd>Bits per quantum sample (range 1-32, and 64).</dd>
+<dt>destination:</dt>
+<dd>The components are transferred to this buffer. The user
+is responsible for ensuring that the destination buffer is large
+enough.</dd>
+<dt>options:</dt>
+<dd>Additional options specific to quantum_type (may be NULL).</dd>
+<dt>export_info :</dt>
+<dd>Populated with information regarding the pixels
+exported (may be NULL)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="exportviewpixelarea">
+<h1><a class="toc-backref" href="#id6">ExportViewPixelArea</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ExportViewPixelArea( const <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ unsigned int quantum_size, unsigned char *destination,
+ const ExportPixelAreaOptions *options,
+ ExportPixelAreaInfo *export_info );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>ExportViewPixelArea() transfers one or more pixel components from the
+specified image pixel cache view to a user supplied buffer. By default,
+values are written in network (big-endian) byte/bit order. By setting the
+'endian' member of ExportPixelAreaOptions, 16, 32 and 64-bit values may be
+output as little (LSBEndian), big (MSBEndian), or host native
+(NativeEndian) endian values. This function is quite powerful in that
+besides common native CPU type sizes, it can support any integer bit depth
+from 1 to 32 (e.g. 13), 64-bits as well as 32 and 64-bit float.</p>
+<p>MagickPass is returned if the pixels are successfully transferred,
+otherwise MagickFail.</p>
+<p>The format of the ExportViewPixelArea method is:</p>
+<pre class="literal-block">
+MagickPassFail ExportViewPixelArea( const <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ unsigned int quantum_size, unsigned char *destination,
+ const ExportPixelAreaOptions *options,
+ ExportPixelAreaInfo *export_info );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Returns MagickPass if the pixels are successfully transferred,
+otherwise MagickFail.</dd>
+<dt>view:</dt>
+<dd>The image pixel cache view.</dd>
+<dt>quantum_type:</dt>
+<dd>Declare which pixel components to transfer (AlphaQuantum,
+BlackQuantum, BlueQuantum, CMYKAQuantum, CMYKQuantum, CyanQuantum,
+GrayAlphaQuantum, GrayQuantum, GreenQuantum, IndexAlphaQuantum,
+IndexQuantum, MagentaQuantum, RGBAQuantum, RGBQuantum,
+RedQuantum, YellowQuantum)</dd>
+<dt>quantum_size:</dt>
+<dd>Bits per quantum sample (range 1-32, and 64).</dd>
+<dt>destination:</dt>
+<dd>The components are transferred to this buffer. The user
+is responsible for ensuring that the destination buffer is large
+enough.</dd>
+<dt>options:</dt>
+<dd>Additional options specific to quantum_type (may be NULL).</dd>
+<dt>export_info :</dt>
+<dd>Populated with information regarding the pixels
+exported (may be NULL)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="exportpixelareaoptionsinit">
+<h1><a class="toc-backref" href="#id7">ExportPixelAreaOptionsInit</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void ExportPixelAreaOptionsInit( ExportPixelAreaOptions *options );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>ExportPixelAreaOptionsInit() initializes the options structure which is
+optionally passed to ExportPixelArea()</p>
+<p>The format of the ExportPixelAreaOptionsInit method is:</p>
+<pre class="literal-block">
+void ExportPixelAreaOptionsInit( ExportPixelAreaOptions *options );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>options:</dt>
+<dd>Options structure to initialize.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/fx.html b/www/api/fx.html
index 292f788..93973f2 100644
--- a/www/api/fx.html
+++ b/www/api/fx.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="fx">
@@ -406,5 +406,10 @@ sine wave.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/fx.html.orig b/www/api/fx.html.orig
new file mode 100644
index 0000000..bee0aba
--- /dev/null
+++ b/www/api/fx.html.orig
@@ -0,0 +1,410 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>fx</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="fx">
+<h1 class="title">fx</h1>
+<h2 class="subtitle" id="image-special-effects-methods">Image special effects methods</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#charcoalimage" id="id21">CharcoalImage</a></li>
+<li><a class="reference internal" href="#colorizeimage" id="id22">ColorizeImage</a></li>
+<li><a class="reference internal" href="#colormatriximage" id="id23">ColorMatrixImage</a></li>
+<li><a class="reference internal" href="#implodeimage" id="id24">ImplodeImage</a></li>
+<li><a class="reference internal" href="#morphimages" id="id25">MorphImages</a></li>
+<li><a class="reference internal" href="#oilpaintimage" id="id26">OilPaintImage</a></li>
+<li><a class="reference internal" href="#solarizeimage" id="id27">SolarizeImage</a></li>
+<li><a class="reference internal" href="#steganoimage" id="id28">SteganoImage</a></li>
+<li><a class="reference internal" href="#stereoimage" id="id29">StereoImage</a></li>
+<li><a class="reference internal" href="#swirlimage" id="id30">SwirlImage</a></li>
+<li><a class="reference internal" href="#waveimage" id="id31">WaveImage</a></li>
+</ul>
+</div>
+<div class="section" id="charcoalimage">
+<h1><a class="toc-backref" href="#id21">CharcoalImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *CharcoalImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Method 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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *CharcoalImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius, const double sigma,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>charcoal_image:</dt>
+<dd>Method CharcoalImage returns a pointer to the image
+after it is embossed. A null image is returned if there is a memory
+shortage.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>the radius of the pixel neighborhood.</dd>
+<dt>sigma:</dt>
+<dd>The standard deviation of the Gaussian, in pixels.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="colorizeimage">
+<h1><a class="toc-backref" href="#id22">ColorizeImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ColorizeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *opacity,
+ const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ColorizeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *opacity,
+ const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>opacity:</dt>
+<dd>A character string indicating the level of opacity as a
+percentage.</dd>
+<dt>target:</dt>
+<dd>A color value.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="colormatriximage">
+<h1><a class="toc-backref" href="#id23">ColorMatrixImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ColorMatrixImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int order,
+ const double *color_matrix );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>ColorMatrixImage() applies a color matrix to the image channels. The
+user supplied matrix may be of order 1 to 5 (1x1 through 5x5) and is
+used to update the default identity matrix:</p>
+<p>1 0 0 0 0
+0 1 0 0 0
+0 0 1 0 0
+0 0 0 1 0
+0 0 0 0 1</p>
+<p>where the first four columns represent the ratio of the color (red,
+green, blue) and opacity components incorporated in the output summation.
+The first four rows represent the summations for red, green, blue, and
+opacity. The last row is a dummy row and is not used. The last column
+represents a constant value (expressed as a ratio of MaxRGB) to be
+added to the row summation. The following is a summary of how the
+matrix is applied:</p>
+<p>r' = r*m[0,0] + g*m[1,0] + b*m[2,0] + o*m[3,0] + MaxRGB*m[4,0]
+g' = r*m[0,1] + g*m[1,1] + b*m[2,1] + o*m[3,1] + MaxRGB*m[4,1]
+b' = r*m[0,2] + g*m[1,2] + b*m[2,2] + o*m[3,2] + MaxRGB*m[4,2]
+o' = r*m[0,3] + g*m[1,3] + b*m[2,3] + o*m[3,3] + MaxRGB*m[4,3]</p>
+<p>The format of the ColorMatrixImage method is:</p>
+<pre class="literal-block">
+MagickPassFail ColorMatrixImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned int order,
+ const double *color_matrix );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>order:</dt>
+<dd>The number of columns and rows in the filter kernel.</dd>
+<dt>matrix:</dt>
+<dd>An array of double representing the matrix</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="implodeimage">
+<h1><a class="toc-backref" href="#id24">ImplodeImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ImplodeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double amount,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>Method ImplodeImage creates a new image that is a copy of an existing
+one with the image pixels &quot;implode&quot; 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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ImplodeImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double amount,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<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>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>amount:</dt>
+<dd>Define the extent of the implosion.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="morphimages">
+<h1><a class="toc-backref" href="#id25">MorphImages</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MorphImages( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long number_frames,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MorphImages( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long number_frames,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</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>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="oilpaintimage">
+<h1><a class="toc-backref" href="#id26">OilPaintImage</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *OilPaintImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *OilPaintImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double radius,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>radius:</dt>
+<dd>The radius of the circular neighborhood.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="solarizeimage">
+<h1><a class="toc-backref" href="#id27">SolarizeImage</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int SolarizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const double threshold );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</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 MaxRGB and is a
+measure of the extent of the solarization. False is returned if an error
+is encountered.</p>
+<p>The format of the SolarizeImage method is:</p>
+<pre class="literal-block">
+unsigned int SolarizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const double threshold );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>threshold:</dt>
+<dd>Define the extent of the solarization.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="steganoimage">
+<h1><a class="toc-backref" href="#id28">SteganoImage</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SteganoImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#image">Image</a> *watermark,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>Use SteganoImage() to hide 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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SteganoImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#image">Image</a> *watermark,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>watermark:</dt>
+<dd>The watermark image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="stereoimage">
+<h1><a class="toc-backref" href="#id29">StereoImage</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *StereoImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *offset_image,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>StereoImage() 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 StereoImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *StereoImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *offset_image,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>stereo_image:</dt>
+<dd>Method StereoImage returns a pointer to the stereo
+image. A null image is returned if there is a memory shortage.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>offset_image:</dt>
+<dd>Another image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="swirlimage">
+<h1><a class="toc-backref" href="#id30">SwirlImage</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SwirlImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, double degrees, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SwirlImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, double degrees, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>degrees:</dt>
+<dd>Define the tightness of the swirling effect.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="waveimage">
+<h1><a class="toc-backref" href="#id31">WaveImage</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *WaveImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double amplitude, const double wave_length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>The WaveImage() filter creates a &quot;ripple&quot; 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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *WaveImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double amplitude, const double wave_length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>amplitude, frequency:</dt>
+<dd>Define the amplitude and wave_length of the
+sine wave.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/hclut.html b/www/api/hclut.html
index 1cc9ae9..9dc6b1a 100644
--- a/www/api/hclut.html
+++ b/www/api/hclut.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="hclut">
@@ -84,5 +84,10 @@ MagickPassFail HaldClutImage( <a class="reference external" href="../api/types.h
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/hclut.html.orig b/www/api/hclut.html.orig
new file mode 100644
index 0000000..54ad0dd
--- /dev/null
+++ b/www/api/hclut.html.orig
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>hclut</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="hclut">
+<h1 class="title">hclut</h1>
+<h2 class="subtitle" id="apply-hald-clut-to-image">Apply Hald CLUT to image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#haldclutimage" id="id1">HaldClutImage</a></li>
+</ul>
+</div>
+<div class="section" id="haldclutimage">
+<h1><a class="toc-backref" href="#id1">HaldClutImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail HaldClutImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *clut );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>The HaldClutImage() method apply a color lookup table (Hald CLUT) to the
+image. The fundamental principle of the Hald CLUT algorithm is that
+application of an identity CLUT causes no change to the input image,
+but an identity CLUT image which has had its colors transformed in
+some way (e.g. in Adobe Photoshop) may be used to implement an identical
+transform on any other image.</p>
+<p>The minimum CLUT level is 2, and the maximum depends on available memory
+(largest successfully tested is 24). A CLUT image is required to have equal
+width and height. A CLUT of level 8 is an image of dimension 512x512, a CLUT
+of level 16 is an image of dimension 4096x4096. Interpolation is used so
+extremely large CLUT images are not required.</p>
+<p>GraphicsMagick provides an 'identity' coder which may be used to generate
+identity HLUTs. For example, reading from &quot;identity:8&quot; creates an identity
+CLUT of order 8.</p>
+<p>The Hald CLUT algorithm has been developed by Eskil Steenberg as described
+at <a class="reference external" href="http://www.quelsolaar.com/technology/clut.html">http://www.quelsolaar.com/technology/clut.html</a>, and was adapted for
+GraphicsMagick by Clément Follet with support from Cédric Lejeune of
+Workflowers.</p>
+<p>The format of the HaldClutImage method is:</p>
+<pre class="literal-block">
+MagickPassFail HaldClutImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *clut );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>clut:</dt>
+<dd>The color lookup table image</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/image.html b/www/api/image.html
index e9ad14f..857d0c6 100644
--- a/www/api/image.html
+++ b/www/api/image.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>image</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="image">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="miscellaneous-image-methods">Miscellaneous image methods</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#accessdefinition" id="id70">AccessDefinition</a></li>
<li><a class="reference internal" href="#adddefinition" id="id71">AddDefinition</a></li>
@@ -179,7 +179,8 @@ length string as value for a key.</dd>
<div class="section" id="id7">
<h2>Description</h2>
<p>AllocateImage() returns a pointer to an image structure initialized to
-default values.</p>
+default values. Currently a failure in this function results in a fatal
+error, resulting in program exit.</p>
<p>The format of the AllocateImage method is:</p>
<pre class="literal-block">
<a class="reference external" href="../api/types.html#image">Image</a> *AllocateImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info );
@@ -206,6 +207,8 @@ void AllocateNextImage( const <a class="reference external" href="../api/types.h
<p>Use AllocateNextImage() to initialize 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>It is expected that the image next pointer is null, since otherwise
+there is likely to be a memory leak. In the future this may be enforced.</p>
<p>The format of the AllocateNextImage method is:</p>
<pre class="literal-block">
void AllocateNextImage( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
@@ -437,6 +440,9 @@ void DestroyImage( <a class="reference external" href="../api/types.html#image">
<p>DestroyImage() dereferences an image, deallocating memory associated with
the image if the reference count becomes zero. There is no effect if the
image pointer is null.</p>
+<p>In the interest of avoiding dangling pointers or memory leaks, the image
+previous and next pointers should be null when this function is called,
+and no other image should refer to it. In the future this may be enforced.</p>
<p>The format of the DestroyImage method is:</p>
<pre class="literal-block">
void DestroyImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
@@ -1065,5 +1071,10 @@ MagickPassFail StripImage( <a class="reference external" href="../api/types.html
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/import.html b/www/api/import.html
index d697e0c..707181c 100644
--- a/www/api/import.html
+++ b/www/api/import.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>import</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="import">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="import-image-pixels-from-common-representations">Import image pixels from common representations</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#importimagepixelarea" id="id5">ImportImagePixelArea</a></li>
<li><a class="reference internal" href="#importviewpixelarea" id="id6">ImportViewPixelArea</a></li>
@@ -180,5 +180,10 @@ void ImportPixelAreaOptionsInit( ImportPixelAreaOptions *options );
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/import.html.orig b/www/api/import.html.orig
new file mode 100644
index 0000000..efaf8f7
--- /dev/null
+++ b/www/api/import.html.orig
@@ -0,0 +1,184 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>import</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="import">
+<h1 class="title">import</h1>
+<h2 class="subtitle" id="import-image-pixels-from-common-representations">Import image pixels from common representations</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#importimagepixelarea" id="id5">ImportImagePixelArea</a></li>
+<li><a class="reference internal" href="#importviewpixelarea" id="id6">ImportViewPixelArea</a></li>
+<li><a class="reference internal" href="#importpixelareaoptionsinit" id="id7">ImportPixelAreaOptionsInit</a></li>
+</ul>
+</div>
+<div class="section" id="importimagepixelarea">
+<h1><a class="toc-backref" href="#id5">ImportImagePixelArea</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ImportImagePixelArea( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ const unsigned int quantum_size,
+ const unsigned char *source,
+ const ImportPixelAreaOptions *options,
+ ImportPixelAreaInfo *import_info );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>ImportImagePixelArea() transfers one or more pixel components from a user
+supplied buffer into the default image pixel cache view. By default,
+values are read in network (big-endian) byte/bit order. By setting the
+'endian' member of ExportPixelAreaOptions, 16, 32 and 64-bit values may
+be output as little (LSBEndian), big (MSBEndian), or host native
+(NativeEndian) endian values. This function is quite powerful in that
+besides common native CPU type sizes, it can support any integer bit
+depth from 1 to 32 (e.g. 13), 64-bits, as well as 32 and 64-bit float.</p>
+<p>MagickPass is returned if the pixels are successfully transferred,
+otherwise MagickFail.</p>
+<p>The format of the ImportImagePixelArea method is:</p>
+<pre class="literal-block">
+MagickPassFail ImportImagePixelArea( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ const unsigned int quantum_size,
+ const unsigned char *source,
+ const ImportPixelAreaOptions *options,
+ ImportPixelAreaInfo *import_info );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method PushImagePixels returns MagickPass if the pixels are
+successfully transferred, otherwise MagickFail.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>quantum_type:</dt>
+<dd>Declare which pixel components to transfer (AlphaQuantum,
+BlackQuantum, BlueQuantum, CMYKAQuantum, CMYKQuantum, CyanQuantum,
+GrayAlphaQuantum, GrayQuantum, GreenQuantum, IndexAlphaQuantum,
+IndexQuantum, MagentaQuantum, RGBAQuantum, RGBQuantum,
+RedQuantum, YellowQuantum)</dd>
+<dt>quantum_size:</dt>
+<dd>Bits per quantum sample (range 1-32, and 64).</dd>
+<dt>source:</dt>
+<dd>The pixel components are transferred from this buffer.</dd>
+<dt>options:</dt>
+<dd>Additional options specific to quantum_type (may be NULL).</dd>
+<dt>import_info :</dt>
+<dd>Populated with information regarding the pixels
+imported (may be NULL)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="importviewpixelarea">
+<h1><a class="toc-backref" href="#id6">ImportViewPixelArea</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail ImportViewPixelArea( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ const unsigned int quantum_size,
+ const unsigned char *source,
+ const ImportPixelAreaOptions *options,
+ ImportPixelAreaInfo *import_info );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>ImportViewPixelArea() transfers one or more pixel components from a user
+supplied buffer into the specified image pixel cache view of an image. By
+default, values are read in network (big-endian) byte/bit order. By
+setting the 'endian' member of ExportPixelAreaOptions, 16, 32 and 64-bit
+values may be output as little (LSBEndian), big (MSBEndian), or host
+native (NativeEndian) endian values. This function is quite powerful in
+that besides common native CPU type sizes, it can support any integer bit
+depth from 1 to 32 (e.g. 13), 64-bits, as well as 32 and 64-bit float.</p>
+<p>MagickPass is returned if the pixels are successfully transferred,
+otherwise MagickFail.</p>
+<p>The format of the ImportViewPixelArea method is:</p>
+<pre class="literal-block">
+MagickPassFail ImportViewPixelArea( <a class="reference external" href="../api/types.html#viewinfo">ViewInfo</a> *view, const <a class="reference external" href="../api/types.html#quantumtype">QuantumType</a> quantum_type,
+ const unsigned int quantum_size,
+ const unsigned char *source,
+ const ImportPixelAreaOptions *options,
+ ImportPixelAreaInfo *import_info );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method PushImagePixels returns MagickPass if the pixels are
+successfully transferred, otherwise MagickFail.</dd>
+<dt>view:</dt>
+<dd>The pixel view to import pixels into.</dd>
+<dt>quantum_type:</dt>
+<dd>Declare which pixel components to transfer (AlphaQuantum,
+BlackQuantum, BlueQuantum, CMYKAQuantum, CMYKQuantum, CyanQuantum,
+GrayAlphaQuantum, GrayQuantum, GreenQuantum, IndexAlphaQuantum,
+IndexQuantum, MagentaQuantum, RGBAQuantum, RGBQuantum,
+RedQuantum, YellowQuantum)</dd>
+<dt>quantum_size:</dt>
+<dd>Bits per quantum sample (range 1-32, and 64).</dd>
+<dt>source:</dt>
+<dd>The pixel components are transferred from this buffer.</dd>
+<dt>options:</dt>
+<dd>Additional options specific to quantum_type (may be NULL).</dd>
+<dt>import_info :</dt>
+<dd>Populated with information regarding the pixels
+imported (may be NULL)</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="importpixelareaoptionsinit">
+<h1><a class="toc-backref" href="#id7">ImportPixelAreaOptionsInit</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void ImportPixelAreaOptionsInit( ImportPixelAreaOptions *options );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>ImportPixelAreaOptionsInit() initializes the options structure which is
+optionally passed to ImportPixelArea()</p>
+<p>The format of the ImportPixelAreaOptionsInit method is:</p>
+<pre class="literal-block">
+void ImportPixelAreaOptionsInit( ImportPixelAreaOptions *options );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>options:</dt>
+<dd>Options structure to initialize.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/list.html b/www/api/list.html
index 67f7643..a879a4a 100644
--- a/www/api/list.html
+++ b/www/api/list.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>list</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="list">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="image-list-support">Image list support</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#appendimagetolist" id="id41">AppendImageToList</a></li>
<li><a class="reference internal" href="#cloneimagelist" id="id42">CloneImageList</a></li>
@@ -544,5 +544,10 @@ SpliceImageIntoList( <a class="reference external" href="../api/types.html#image
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/list.html.orig b/www/api/list.html.orig
new file mode 100644
index 0000000..993abe4
--- /dev/null
+++ b/www/api/list.html.orig
@@ -0,0 +1,548 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>list</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="list">
+<h1 class="title">list</h1>
+<h2 class="subtitle" id="image-list-support">Image list support</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#appendimagetolist" id="id41">AppendImageToList</a></li>
+<li><a class="reference internal" href="#cloneimagelist" id="id42">CloneImageList</a></li>
+<li><a class="reference internal" href="#deleteimagefromlist" id="id43">DeleteImageFromList</a></li>
+<li><a class="reference internal" href="#destroyimagelist" id="id44">DestroyImageList</a></li>
+<li><a class="reference internal" href="#getfirstimageinlist" id="id45">GetFirstImageInList</a></li>
+<li><a class="reference internal" href="#getimagefromlist" id="id46">GetImageFromList</a></li>
+<li><a class="reference internal" href="#getimageindexinlist" id="id47">GetImageIndexInList</a></li>
+<li><a class="reference internal" href="#getimagelistlength" id="id48">GetImageListLength</a></li>
+<li><a class="reference internal" href="#getlastimageinlist" id="id49">GetLastImageInList</a></li>
+<li><a class="reference internal" href="#getnextimageinlist" id="id50">GetNextImageInList</a></li>
+<li><a class="reference internal" href="#getpreviousimageinlist" id="id51">GetPreviousImageInList</a></li>
+<li><a class="reference internal" href="#imagelisttoarray" id="id52">ImageListToArray</a></li>
+<li><a class="reference internal" href="#insertimageinlist" id="id53">InsertImageInList</a></li>
+<li><a class="reference internal" href="#newimagelist" id="id54">NewImageList</a></li>
+<li><a class="reference internal" href="#prependimagetolist" id="id55">PrependImageToList</a></li>
+<li><a class="reference internal" href="#removefirstimagefromlist" id="id56">RemoveFirstImageFromList</a></li>
+<li><a class="reference internal" href="#removelastimagefromlist" id="id57">RemoveLastImageFromList</a></li>
+<li><a class="reference internal" href="#replaceimageinlist" id="id58">ReplaceImageInList</a></li>
+<li><a class="reference internal" href="#reverseimagelist" id="id59">ReverseImageList</a></li>
+<li><a class="reference internal" href="#spliceimageintolist" id="id60">SpliceImageIntoList</a></li>
+<li><a class="reference internal" href="#splitimagelist" id="id61">SplitImageList</a></li>
+</ul>
+</div>
+<div class="section" id="appendimagetolist">
+<h1><a class="toc-backref" href="#id41">AppendImageToList</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+AppendImageToList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>AppendImageToList() appends an image to the end of the list.</p>
+<p>The format of the AppendImageToList method is:</p>
+<pre class="literal-block">
+AppendImageToList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="cloneimagelist">
+<h1><a class="toc-backref" href="#id42">CloneImageList</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *CloneImageList( const <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>CloneImageList() returns a duplicate of the image list.</p>
+<p>The format of the CloneImageList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *CloneImageList( const <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="deleteimagefromlist">
+<h1><a class="toc-backref" href="#id43">DeleteImageFromList</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+DeleteImageFromList( <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>DeleteImageFromList() deletes an image from the list.</p>
+<p>The format of the DeleteImageFromList method is:</p>
+<pre class="literal-block">
+DeleteImageFromList( <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="destroyimagelist">
+<h1><a class="toc-backref" href="#id44">DestroyImageList</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DestroyImageList( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>DestroyImageList() destroys an image list. There is no effect if the
+image pointer is null.</p>
+<p>The format of the DestroyImageList method is:</p>
+<pre class="literal-block">
+void DestroyImageList( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image sequence.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getfirstimageinlist">
+<h1><a class="toc-backref" href="#id45">GetFirstImageInList</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetFirstImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetFirstImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagefromlist">
+<h1><a class="toc-backref" href="#id46">GetImageFromList</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetImageFromList( const <a class="reference external" href="../api/types.html#image">Image</a> *images, const long offset );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>GetImageFromList() returns an image at the specified offset from the list.</p>
+<p>The format of the GetImageFromList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetImageFromList( const <a class="reference external" href="../api/types.html#image">Image</a> *images, const long offset );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>offset:</dt>
+<dd>The position within the list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimageindexinlist">
+<h1><a class="toc-backref" href="#id47">GetImageIndexInList</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+long GetImageIndexInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</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="literal-block">
+long GetImageIndexInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagelistlength">
+<h1><a class="toc-backref" href="#id48">GetImageListLength</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned long GetImageListLength( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</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="literal-block">
+unsigned long GetImageListLength( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getlastimageinlist">
+<h1><a class="toc-backref" href="#id49">GetLastImageInList</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetLastImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetLastImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getnextimageinlist">
+<h1><a class="toc-backref" href="#id50">GetNextImageInList</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetNextImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>GetNextImageInList() returns the next image in the list.</p>
+<p>The format of the GetNextImageInList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetNextImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getpreviousimageinlist">
+<h1><a class="toc-backref" href="#id51">GetPreviousImageInList</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetPreviousImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>GetPreviousImageInList() returns the previous image in the list.</p>
+<p>The format of the GetPreviousImageInList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetPreviousImageInList( const <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="imagelisttoarray">
+<h1><a class="toc-backref" href="#id52">ImageListToArray</a></h1>
+<div class="section" id="id21">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> ** ImageListToArray( const <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id22">
+<h2>Description</h2>
+<p>ImageListToArray() is a convenience method that converts an image list to
+a sequential array. For example,</p>
+<p>group = ImageListToArray(images, exception);
+for (i = 0; i &lt; n; i++)
+puts(group[i]-&gt;filename);</p>
+<p>The format of the ImageListToArray method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> ** ImageListToArray( const <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image list.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="insertimageinlist">
+<h1><a class="toc-backref" href="#id53">InsertImageInList</a></h1>
+<div class="section" id="id23">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+InsertImageInList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id24">
+<h2>Description</h2>
+<p>InsertImageInList() inserts an image in the list.</p>
+<p>The format of the InsertImageInList method is:</p>
+<pre class="literal-block">
+InsertImageInList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="newimagelist">
+<h1><a class="toc-backref" href="#id54">NewImageList</a></h1>
+<div class="section" id="id25">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *NewImageList( void );
+</pre>
+</div>
+<div class="section" id="id26">
+<h2>Description</h2>
+<p>NewImageList() creates an empty image list.</p>
+<p>The format of the NewImageList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *NewImageList( void );
+</pre>
+</div>
+</div>
+<div class="section" id="prependimagetolist">
+<h1><a class="toc-backref" href="#id55">PrependImageToList</a></h1>
+<div class="section" id="id27">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+PrependImageToList( <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id28">
+<h2>Description</h2>
+<p>PrependImageToList() prepends the image to the beginning of the list.</p>
+<p>The format of the PrependImageToList method is:</p>
+<pre class="literal-block">
+PrependImageToList( <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="removefirstimagefromlist">
+<h1><a class="toc-backref" href="#id56">RemoveFirstImageFromList</a></h1>
+<div class="section" id="id29">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *RemoveFirstImageFromList( <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+</div>
+<div class="section" id="id30">
+<h2>Description</h2>
+<p>RemoveFirstImageFromList() removes an image from the beginning of the list.</p>
+<p>The format of the RemoveFirstImageFromList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *RemoveFirstImageFromList( <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="removelastimagefromlist">
+<h1><a class="toc-backref" href="#id57">RemoveLastImageFromList</a></h1>
+<div class="section" id="id31">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *RemoveLastImageFromList( <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+</div>
+<div class="section" id="id32">
+<h2>Description</h2>
+<p>RemoveLastImageFromList() removes the last image from the list.</p>
+<p>The format of the RemoveLastImageFromList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *RemoveLastImageFromList( <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="replaceimageinlist">
+<h1><a class="toc-backref" href="#id58">ReplaceImageInList</a></h1>
+<div class="section" id="id33">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+ReplaceImageInList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id34">
+<h2>Description</h2>
+<p>ReplaceImageInList() replaces an image in the list.</p>
+<p>The format of the ReplaceImageInList method is:</p>
+<pre class="literal-block">
+ReplaceImageInList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="reverseimagelist">
+<h1><a class="toc-backref" href="#id59">ReverseImageList</a></h1>
+<div class="section" id="id35">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+ReverseImageList( const <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+</div>
+<div class="section" id="id36">
+<h2>Description</h2>
+<p>ReverseImageList() reverses the image list.</p>
+<p>The format of the ReverseImageList method is:</p>
+<pre class="literal-block">
+ReverseImageList( const <a class="reference external" href="../api/types.html#image">Image</a> ** images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="spliceimageintolist">
+<h1><a class="toc-backref" href="#id60">SpliceImageIntoList</a></h1>
+<div class="section" id="id37">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+SpliceImageIntoList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, const unsigned long length, <a class="reference external" href="../api/types.html#image">Image</a> *splice );
+</pre>
+</div>
+<div class="section" id="id38">
+<h2>Description</h2>
+<p>SpliceImageIntoList() removes 'length' images from the list and replaces
+them with the specified splice.</p>
+<p>The format of the SpliceImageIntoList method is:</p>
+<pre class="literal-block">
+SpliceImageIntoList( <a class="reference external" href="../api/types.html#image">Image</a> ** images, const unsigned long length, <a class="reference external" href="../api/types.html#image">Image</a> *splice );
+</pre>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+<dt>length:</dt>
+<dd>The length of the image list to remove.</dd>
+<dt>splice:</dt>
+<dd>Replace the removed image list with this list.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="splitimagelist">
+<h1><a class="toc-backref" href="#id61">SplitImageList</a></h1>
+<div class="section" id="id39">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SplitImageList( <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id40">
+<h2>Description</h2>
+<p>SplitImageList() splits an image into two lists.</p>
+<p>The format of the SplitImageList method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SplitImageList( <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>The image list.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/log.html b/www/api/log.html
new file mode 100644
index 0000000..409623a
--- /dev/null
+++ b/www/api/log.html
@@ -0,0 +1,368 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
+<title>log</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="log">
+<h1 class="title">log</h1>
+<h2 class="subtitle" id="event-logging-support">Event logging support</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#iseventlogging" id="id21">IsEventLogging</a></li>
+<li><a class="reference internal" href="#logmagickevent" id="id22">LogMagickEvent</a></li>
+<li><a class="reference internal" href="#setlogdefaulteventtype" id="id23">SetLogDefaultEventType</a></li>
+<li><a class="reference internal" href="#setlogdefaultgenerations" id="id24">SetLogDefaultGenerations</a></li>
+<li><a class="reference internal" href="#setlogdefaultlimit" id="id25">SetLogDefaultLimit</a></li>
+<li><a class="reference internal" href="#setlogdefaultlogmethod" id="id26">SetLogDefaultLogMethod</a></li>
+<li><a class="reference internal" href="#setlogdefaultoutputtype" id="id27">SetLogDefaultOutputType</a></li>
+<li><a class="reference internal" href="#setlogdefaultfilename" id="id28">SetLogDefaultFileName</a></li>
+<li><a class="reference internal" href="#setlogeventmask" id="id29">SetLogEventMask</a></li>
+<li><a class="reference internal" href="#setlogformat" id="id30">SetLogFormat</a></li>
+<li><a class="reference internal" href="#setlogmethod" id="id31">SetLogMethod</a></li>
+</ul>
+</div>
+<div class="section" id="iseventlogging">
+<h1><a class="toc-backref" href="#id21">IsEventLogging</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickBool IsEventLogging( void );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>IsEventLogging() returns MagickTrue if logging of events is enabled otherwise
+MagickFalse. This can be used to enable logging code which is otherwise
+not needed.</p>
+<p>The format of the IsEventLogging method is:</p>
+<pre class="literal-block">
+MagickBool IsEventLogging( void );
+</pre>
+</div>
+</div>
+<div class="section" id="logmagickevent">
+<h1><a class="toc-backref" href="#id22">LogMagickEvent</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail LogMagickEvent( const <a class="reference external" href="../api/types.html#logeventtype">LogEventType</a> type, const char *module,
+ const char *function, const unsigned long line,
+ const char *format, ... );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>LogMagickEvent() logs an event as determined by the current logging
+configuration. If an error occurs, MagickFail is returned otherwise
+MagickPass.</p>
+<p>The format of the LogMagickEvent method is:</p>
+<pre class="literal-block">
+MagickPassFail LogMagickEvent( const <a class="reference external" href="../api/types.html#logeventtype">LogEventType</a> type, const char *module,
+ const char *function, const unsigned long line,
+ const char *format, ... );
+</pre>
+<dl class="docutils">
+<dt>type:</dt>
+<dd>The event type.</dd>
+<dt>filename:</dt>
+<dd>The source module filename.</dd>
+<dt>function:</dt>
+<dd>The function name.</dd>
+<dt>line:</dt>
+<dd>The line number of the source module.</dd>
+<dt>format:</dt>
+<dd>The output format.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogdefaulteventtype">
+<h1><a class="toc-backref" href="#id23">SetLogDefaultEventType</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogDefaultEventType( const char *events );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>SetLogDefaultEventType() accepts a comma-delimited list (Annotate, Blob,
+Cache, Coder, Configure, Deprecate, Error, Exception, FatalError,
+Information, Locale, Option, Render, Resource, TemporaryFile, Transform,
+User, Warning, or X11) that determines the default set of events to log.
+All other events are ignored. By default, no logging is enabled.</p>
+<p>This function should be called prior to InitializeMagick() since it
+provides defaults used by InitializeMagick() while the logging system
+is initialized. The events may be modified later after
+InitializeMagick() has been called using the SetLogEventMask() function.</p>
+<p>The format of SetLogDefaultEventType method is:</p>
+<pre class="literal-block">
+void SetLogDefaultEventType( const char *events );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>events:</dt>
+<dd>Comma-separated list of events to report.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogdefaultgenerations">
+<h1><a class="toc-backref" href="#id24">SetLogDefaultGenerations</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogDefaultGenerations( const unsigned long generations );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>SetLogDefaultGenerations() specifies the maximum number of log files
+to maintain before circulating back to overwrite the first name.</p>
+<p>This function should be called prior to InitializeMagick() since it
+provides defaults used by InitializeMagick() while the logging system
+is initialized.</p>
+<p>The format of SetLogDefaultGenerations method is:</p>
+<pre class="literal-block">
+void SetLogDefaultGenerations( const unsigned long generations );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>generations:</dt>
+<dd>Number of log files to maintain before circulating back to
+the first name.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogdefaultlimit">
+<h1><a class="toc-backref" href="#id25">SetLogDefaultLimit</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogDefaultLimit( const unsigned long limit );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>SetLogDefaultLimit() specifies the maximum number of logging events which
+may occur before creating a new log file.</p>
+<p>This function should be called prior to InitializeMagick() since it
+provides defaults used by InitializeMagick() while the logging system
+is initialized.</p>
+<p>The format of SetLogDefaultLimit method is:</p>
+<pre class="literal-block">
+void SetLogDefaultLimit( const unsigned long limit );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>limit:</dt>
+<dd>Maximum number of logging events before creating a new log file.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogdefaultlogmethod">
+<h1><a class="toc-backref" href="#id26">SetLogDefaultLogMethod</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogDefaultLogMethod( const <a class="reference external" href="../api/types.html#logmethod">LogMethod</a> method );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>SetLogDefaultLogMethod() provides a call-back function to be invoked
+for each log event when the logging method type is MethodOutput.
+This call-back function is supported when MethodOutput is enabled
+in the log output type. MethodOutput is automatically enabled if
+a call-back function is provided, and disabled if the call-back
+function is NULL.</p>
+<p>This function should be called prior to InitializeMagick() since it
+provides defaults used by InitializeMagick() while the logging system
+is initialized.</p>
+<p>The format of SetLogDefaultLogMethod method is:</p>
+<pre class="literal-block">
+void SetLogDefaultLogMethod( const <a class="reference external" href="../api/types.html#logmethod">LogMethod</a> method );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>method:</dt>
+<dd>Call-back function to be invoked for each log event.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogdefaultoutputtype">
+<h1><a class="toc-backref" href="#id27">SetLogDefaultOutputType</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogDefaultOutputType( const <a class="reference external" href="../api/types.html#logoutputtype">LogOutputType</a> output_type );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>SetLogDefaultOutputType() sets the logging output destination.</p>
+<p>This function should be called prior to InitializeMagick() since it
+provides defaults used by InitializeMagick() while the logging system
+is initialized.</p>
+<p>The format of SetLogDefaultOutputType method is:</p>
+<pre class="literal-block">
+void SetLogDefaultOutputType( const <a class="reference external" href="../api/types.html#logoutputtype">LogOutputType</a> output_type );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>output_type:</dt>
+<dd>The logging output destination. One of the enumerated
+values of LogOutputType.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogdefaultfilename">
+<h1><a class="toc-backref" href="#id28">SetLogDefaultFileName</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogDefaultFileName( const char *filename );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>SetLogDefaultFileName() provides the file name, or file path, to be
+written to for each log event. Place a %d in the file name in order to
+support multiple log generations. This setting is only used when the
+log output type uses an output file.</p>
+<p>This function should be called prior to InitializeMagick() since it
+provides defaults used by InitializeMagick() while the logging system
+is initialized.</p>
+<p>The format of SetLogDefaultFileName method is:</p>
+<pre class="literal-block">
+void SetLogDefaultFileName( const char *filename );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>filename:</dt>
+<dd>File name, or file path to write log output to.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogeventmask">
+<h1><a class="toc-backref" href="#id29">SetLogEventMask</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned long SetLogEventMask( const char *events );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>SetLogEventMask() accepts a comma-delimited list (Annotate, Blob, Cache,
+Coder, Configure, Deprecate, Error, Exception, FatalError, Information,
+Locale, Option, Render, Resource, TemporaryFile, Transform, User,
+Warning, or X11) that determines which events to log. All other events
+are ignored. By default, no logging is enabled. This method returns
+the updated log event mask.</p>
+<p>The format of the SetLogEventMask method is:</p>
+<pre class="literal-block">
+unsigned long SetLogEventMask( const char *events );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>events:</dt>
+<dd>log these events.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogformat">
+<h1><a class="toc-backref" href="#id30">SetLogFormat</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogFormat( const char *format );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>SetLogFormat() sets the format for the &quot;human readable&quot; log record.
+The format specification supports these special format characters:</p>
+<p>%d domain,
+%e event,
+%f function,
+%l line,
+%m module,
+%p process ID,
+%r real CPU time,
+%t wall clock time,
+%u user CPU time,
+%% percent sign,
+n newline,
+r carriage return</p>
+<p>The format of the LogMagickFormat method is:</p>
+<pre class="literal-block">
+void SetLogFormat( const char *format );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>format:</dt>
+<dd>The log record format.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setlogmethod">
+<h1><a class="toc-backref" href="#id31">SetLogMethod</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void SetLogMethod( <a class="reference external" href="../api/types.html#logmethod">LogMethod</a> method );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>SetLogMethod() sets the method to be called when logging.</p>
+<p>The format of the SetLogMethod method is:</p>
+<pre class="literal-block">
+void SetLogMethod( <a class="reference external" href="../api/types.html#logmethod">LogMethod</a> method );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>method:</dt>
+<dd>pointer to a method of type LogMethod that will be called when LogMagickEvent
+is called. Pass a null pointer to remove a registered method.</dd>
+</dl>
+</div>
+</div>
+</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
+</body>
+</html>
diff --git a/www/api/magick.html b/www/api/magick.html
index ef4fbb3..8eee5cc 100644
--- a/www/api/magick.html
+++ b/www/api/magick.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
<title>magick</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="magick">
@@ -474,5 +474,10 @@ looking for.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/memory.html b/www/api/memory.html
index b5dc095..472c232 100644
--- a/www/api/memory.html
+++ b/www/api/memory.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>memory</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="memory">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="memory-allocation-deallocation-functions">Memory allocation/deallocation functions</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#magickallocfunctions" id="id15">MagickAllocFunctions</a></li>
<li><a class="reference internal" href="#magickmalloc" id="id16">MagickMalloc</a></li>
@@ -271,5 +271,10 @@ void MagickFreeAligned( void *memory );
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/memory.html.orig b/www/api/memory.html.orig
new file mode 100644
index 0000000..c5e53cb
--- /dev/null
+++ b/www/api/memory.html.orig
@@ -0,0 +1,275 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>memory</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="memory">
+<h1 class="title">memory</h1>
+<h2 class="subtitle" id="memory-allocation-deallocation-functions">Memory allocation/deallocation functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#magickallocfunctions" id="id15">MagickAllocFunctions</a></li>
+<li><a class="reference internal" href="#magickmalloc" id="id16">MagickMalloc</a></li>
+<li><a class="reference internal" href="#magickmallocaligned" id="id17">MagickMallocAligned</a></li>
+<li><a class="reference internal" href="#magickmalloccleared" id="id18">MagickMallocCleared</a></li>
+<li><a class="reference internal" href="#magickclonememory" id="id19">MagickCloneMemory</a></li>
+<li><a class="reference internal" href="#magickrealloc" id="id20">MagickRealloc</a></li>
+<li><a class="reference internal" href="#magickfree" id="id21">MagickFree</a></li>
+<li><a class="reference internal" href="#magickfreealigned" id="id22">MagickFreeAligned</a></li>
+</ul>
+</div>
+<div class="section" id="magickallocfunctions">
+<h1><a class="toc-backref" href="#id15">MagickAllocFunctions</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickAllocFunctions( MagickFreeFunc free_func, MagickMallocFunc malloc_func,
+ MagickReallocFunc realloc_func );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>MagickAllocFunctions() provides a way for the user to supply a preferred
+free(), malloc(), and realloc() functions. Otherwise the default system
+versions are used. If an alternative allocator is to be used, this
+function should be invoked prior to invoking InitializeMagick().</p>
+<p>The format of the MagickAllocFunctions method is:</p>
+<pre class="literal-block">
+void MagickAllocFunctions( MagickFreeFunc free_func, MagickMallocFunc malloc_func,
+ MagickReallocFunc realloc_func );
+</pre>
+<dl class="docutils">
+<dt>free_func:</dt>
+<dd>Function to free memory.</dd>
+<dt>malloc_func:</dt>
+<dd>Function to allocate memory.</dd>
+<dt>realloc_func:</dt>
+<dd>Function to reallocate memory.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickmalloc">
+<h1><a class="toc-backref" href="#id16">MagickMalloc</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *MagickMalloc( const size_t size );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>MagickMalloc() returns a pointer to a block of memory of at least size
+bytes suitably aligned for any use. NULL is returned if insufficient
+memory is available or the requested size is zero.</p>
+<p>The format of the MagickMalloc method is:</p>
+<pre class="literal-block">
+void *MagickMalloc( const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>size:</dt>
+<dd>The size of the memory in bytes to allocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickmallocaligned">
+<h1><a class="toc-backref" href="#id17">MagickMallocAligned</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *MagickMallocAligned( size_t alignment, const size_t size );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>MagickMallocAligned() allocates memory and returns a pointer to a
+block of memory capable of storing at least size bytes with the
+allocation's base address being an even multiple of alignment.
+The size of the buffer allocation is rounded up as required in
+order to consume a block of memory starting at least at the requested
+alignment and ending at at least the requested alignment.</p>
+<p>The requested alignment should be a power of 2 at least as large as
+sizeof a void pointer.</p>
+<p>NULL is returned if insufficient memory is available, the requested
+size is zero, or integer overflow was detected.</p>
+<p>This function is intended for allocating special-purpose buffers
+which benefit from specific alignment.</p>
+<p>The allocated memory should only be freed using MagickFreeAligned()
+and may not be reallocated.</p>
+<p>The format of the MagickMallocAligned method is:</p>
+<pre class="literal-block">
+void *MagickMallocAligned( size_t alignment, const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>alignment:</dt>
+<dd>The alignment of the base and size of the allocated
+memory.</dd>
+<dt>size:</dt>
+<dd>The size of the memory in bytes to allocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickmalloccleared">
+<h1><a class="toc-backref" href="#id18">MagickMallocCleared</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *MagickMallocCleared( const size_t size );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>MagickMallocCleared() returns a pointer to a block of memory of at least
+size bytes suitably aligned for any use. NULL is returned if insufficient
+memory is available or the requested size is zero. This version differs
+from MagickMalloc in that the allocated bytes are cleared to zero.</p>
+<p>The format of the MagickMallocCleared method is:</p>
+<pre class="literal-block">
+void *MagickMallocCleared( const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>size:</dt>
+<dd>The size of the memory in bytes to allocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickclonememory">
+<h1><a class="toc-backref" href="#id19">MagickCloneMemory</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *MagickCloneMemory( void *destination, const void *source, const size_t size );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>MagickCloneMemory() 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 MagickCloneMemory method is:</p>
+<pre class="literal-block">
+void *MagickCloneMemory( void *destination, const void *source, const size_t size );
+</pre>
+<dl class="docutils">
+<dt>size:</dt>
+<dd>The size of the memory in bytes to allocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickrealloc">
+<h1><a class="toc-backref" href="#id20">MagickRealloc</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void *MagickRealloc( void *memory, const size_t size );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>MagickRealloc() 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. If size is zero, then the memory is
+freed and a NULL value is returned. If the memory allocation fails, then
+the existing memory is freed, and a NULL value is returned.</p>
+<p>Note that the behavior of this function is similar to BSD reallocf(3),
+see <a class="reference external" href="https://www.freebsd.org/cgi/man.cgi?query=reallocf">https://www.freebsd.org/cgi/man.cgi?query=reallocf</a></p>
+<p>The format of the MagickRealloc method is:</p>
+<pre class="literal-block">
+void *MagickRealloc( void *memory, const size_t size );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>memory:</dt>
+<dd>A pointer to a memory allocation.</dd>
+<dt>size:</dt>
+<dd>The new size of the allocated memory.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickfree">
+<h1><a class="toc-backref" href="#id21">MagickFree</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickFree( void *memory );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>MagickFree() frees memory that has already been allocated by
+MagickMalloc() or other other other allocators directly compatible
+with the currently defined memory allocator (which defaults to the
+system malloc()). For convenience, a NULL argument is ignored.</p>
+<p>The format of the MagickFree method is:</p>
+<pre class="literal-block">
+void MagickFree( void *memory );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>memory:</dt>
+<dd>A pointer to a block of memory to free for reuse.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickfreealigned">
+<h1><a class="toc-backref" href="#id22">MagickFreeAligned</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickFreeAligned( void *memory );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>MagickFreeAligned() frees aligned memory that has previously been
+allocated via MagickMallocAligned(). For convenience, a NULL argument is
+ignored.</p>
+<p>This function exists in case the pointer allocated by
+MagickMallocAligned() can not be used directly with MagickFree().</p>
+<p>The format of the MagickFreeAligned method is:</p>
+<pre class="literal-block">
+void MagickFreeAligned( void *memory );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>memory:</dt>
+<dd>A pointer to a block of memory to free for reuse.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/monitor.html b/www/api/monitor.html
index 93a9f23..ccd36ad 100644
--- a/www/api/monitor.html
+++ b/www/api/monitor.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="monitor">
@@ -148,5 +148,10 @@ and returns the previous monitor handler.</p>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/monitor.html.orig b/www/api/monitor.html.orig
new file mode 100644
index 0000000..984de83
--- /dev/null
+++ b/www/api/monitor.html.orig
@@ -0,0 +1,152 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>monitor</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="monitor">
+<h1 class="title">monitor</h1>
+<h2 class="subtitle" id="progress-monitor-support">Progress monitor support</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#magickmonitor" id="id5">MagickMonitor</a></li>
+<li><a class="reference internal" href="#magickmonitorformatted" id="id6">MagickMonitorFormatted</a></li>
+<li><a class="reference internal" href="#setmonitorhandler" id="id7">SetMonitorHandler</a></li>
+</ul>
+</div>
+<div class="section" id="magickmonitor">
+<h1><a class="toc-backref" href="#id5">MagickMonitor</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail MagickMonitor( const char *text, const magick_int64_t quantum,
+ const magick_uint64_t span, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>MagickMonitor() calls the monitor handler method with a text string that
+describes the task and a measure of completion. The method returns True
+on success otherwise False if an error is encountered, e.g. if there was a
+user interrupt.</p>
+<p>This function is deprecated. Please use MagickMonitorFormatted() instead.</p>
+<p>The format of the MagickMonitor method is:</p>
+<pre class="literal-block">
+MagickPassFail MagickMonitor( const char *text, const magick_int64_t quantum,
+ const magick_uint64_t span, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>text:</dt>
+<dd>Description of the task being performed.</dd>
+<dt>quantum:</dt>
+<dd>The position relative to the span parameter which represents
+how much progress has been made toward completing a task.</dd>
+<dt>span:</dt>
+<dd>The span relative to completing a task.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="magickmonitorformatted">
+<h1><a class="toc-backref" href="#id6">MagickMonitorFormatted</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail MagickMonitorFormatted( const magick_int64_t quantum,
+ const magick_uint64_t span,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, const char *format,
+ ... );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>MagickMonitorFormatted() calls the monitor handler method with a
+printf type format specification and variable argument list. Also
+passed are quantum and span values which provide a measure of
+completion. The method returns MagickPass on success otherwise
+MagickFail if an error is encountered, e.g. if there was a user
+interrupt. If MagickFail is returned, the calling code is expected
+to terminate whatever is being monitored as soon as possible.</p>
+<p>Most callers of this function will use the QuantumTick() macro to
+decide when it should be called. The QuantumTick() macro is designed
+to deliver no more than 100 events in a span (representing 1-100%)
+and to distribute events as evenly as possible over the span so that
+events are reported for every 1% of progress when possible.</p>
+<p>The format of the MagickMonitorFormatted method is:</p>
+<pre class="literal-block">
+MagickPassFail MagickMonitorFormatted( const magick_int64_t quantum,
+ const magick_uint64_t span,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception, const char *format,
+ ... );
+</pre>
+<dl class="docutils">
+<dt>quantum:</dt>
+<dd>The position relative to the span parameter which represents
+how much progress has been made toward completing a task.</dd>
+<dt>span:</dt>
+<dd>The span relative to completing a task.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+<dt>format:</dt>
+<dd>A string describing the format to use to write the remaining
+arguments.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setmonitorhandler">
+<h1><a class="toc-backref" href="#id7">SetMonitorHandler</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#monitorhandler">MonitorHandler</a> SetMonitorHandler( <a class="reference external" href="../api/types.html#monitorhandler">MonitorHandler</a> handler );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>SetMonitorHandler() sets the monitor handler to the specified method
+and returns the previous monitor handler.</p>
+<p>The format of the SetMonitorHandler method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#monitorhandler">MonitorHandler</a> SetMonitorHandler( <a class="reference external" href="../api/types.html#monitorhandler">MonitorHandler</a> handler );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>handler:</dt>
+<dd>Specifies a pointer to a method to handle monitors.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/montage.html b/www/api/montage.html
index d912d07..36c61f3 100644
--- a/www/api/montage.html
+++ b/www/api/montage.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="montage">
@@ -146,5 +146,10 @@ thumbnails across an image canvas.</p>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/montage.html.orig b/www/api/montage.html.orig
new file mode 100644
index 0000000..5ba6e8f
--- /dev/null
+++ b/www/api/montage.html.orig
@@ -0,0 +1,150 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>montage</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="montage">
+<h1 class="title">montage</h1>
+<h2 class="subtitle" id="create-a-thumbnail-image-mosaic">Create a thumbnail image mosaic</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#clonemontageinfo" id="id7">CloneMontageInfo</a></li>
+<li><a class="reference internal" href="#destroymontageinfo" id="id8">DestroyMontageInfo</a></li>
+<li><a class="reference internal" href="#getmontageinfo" id="id9">GetMontageInfo</a></li>
+<li><a class="reference internal" href="#montageimages" id="id10">MontageImages</a></li>
+</ul>
+</div>
+<div class="section" id="clonemontageinfo">
+<h1><a class="toc-backref" href="#id7">CloneMontageInfo</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *CloneMontageInfo( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info,
+ const <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *CloneMontageInfo( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info,
+ const <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>The image info.</dd>
+<dt>montage_info:</dt>
+<dd>The montage info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="destroymontageinfo">
+<h1><a class="toc-backref" href="#id8">DestroyMontageInfo</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DestroyMontageInfo( <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>DestroyMontageInfo() deallocates memory associated with montage_info.</p>
+<p>The format of the DestroyMontageInfo method is:</p>
+<pre class="literal-block">
+void DestroyMontageInfo( <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>montage_info:</dt>
+<dd>Specifies a pointer to an MontageInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getmontageinfo">
+<h1><a class="toc-backref" href="#id9">GetMontageInfo</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void GetMontageInfo( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>GetMontageInfo() initializes montage_info to default values.</p>
+<p>The format of the GetMontageInfo method is:</p>
+<pre class="literal-block">
+void GetMontageInfo( const <a class="reference external" href="../api/types.html#imageinfo">ImageInfo</a> *image_info, <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info );
+</pre>
+<dl class="docutils">
+<dt>image_info:</dt>
+<dd>a structure of type ImageInfo.</dd>
+<dt>montage_info:</dt>
+<dd>Specifies a pointer to a MontageInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="montageimages">
+<h1><a class="toc-backref" href="#id10">MontageImages</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MontageImages( const <a class="reference external" href="../api/types.html#image">Image</a> *images, const <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>Montageimages() is a layout manager that lets you tile one or more
+thumbnails across an image canvas.</p>
+<p>The format of the MontageImages method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MontageImages( const <a class="reference external" href="../api/types.html#image">Image</a> *images, const <a class="reference external" href="../api/types.html#montageinfo">MontageInfo</a> *montage_info,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>images:</dt>
+<dd>Specifies a pointer to an array of Image structures.</dd>
+<dt>montage_info:</dt>
+<dd>Specifies a pointer to a MontageInfo structure.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/operator.html b/www/api/operator.html
index 7dca3c4..d330bcb 100644
--- a/www/api/operator.html
+++ b/www/api/operator.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="operator">
@@ -157,5 +157,10 @@ XorQuantumOp).</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/operator.html.orig b/www/api/operator.html.orig
new file mode 100644
index 0000000..9212b54
--- /dev/null
+++ b/www/api/operator.html.orig
@@ -0,0 +1,161 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>operator</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="operator">
+<h1 class="title">operator</h1>
+<h2 class="subtitle" id="methods-to-apply-mathematic-or-boolean-operators-to-pixels">Methods to apply mathematic or boolean operators to pixels.</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#quantumoperatorimage" id="id3">QuantumOperatorImage</a></li>
+<li><a class="reference internal" href="#quantumoperatorregionimage" id="id4">QuantumOperatorRegionImage</a></li>
+</ul>
+</div>
+<div class="section" id="quantumoperatorimage">
+<h1><a class="toc-backref" href="#id3">QuantumOperatorImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail QuantumOperatorImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ QuantumOperator operator, double rvalue );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>QuantumOperatorImage() performs the requested arithmetic,
+bitwise-logical, or value operation on the selected channels of
+the entire image. The AllChannels channel option operates on all
+color channels whereas the GrayChannel channel option treats the
+color channels as a grayscale intensity.</p>
+<p>These operations are on the DirectClass pixels of the image and do not
+update pixel indexes or colormap.</p>
+<p>The format of the QuantumOperatorImage method is:</p>
+<pre class="literal-block">
+MagickPassFail QuantumOperatorImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ QuantumOperator operator, double rvalue );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>Channel to operate on (RedChannel, CyanChannel,
+GreenChannel, MagentaChannel, BlueChannel, YellowChannel,
+OpacityChannel, BlackChannel, MatteChannel, AllChannels,
+GrayChannel). The AllChannels type only updates color
+channels. The GrayChannel type treats the color channels
+as if they represent an intensity.</dd>
+<dt>quantum_operator:</dt>
+<dd>Operator to use (AddQuantumOp, AndQuantumOp,
+AssignQuantumOp, DepthQuantumOp, DivideQuantumOp, GammaQuantumOp,
+LShiftQuantumOp, MultiplyQuantumOp, NegateQuantumOp,
+NoiseGaussianQuantumOp, NoiseImpulseQuantumOp,
+NoiseLaplacianQuantumOp, NoiseMultiplicativeQuantumOp,
+NoisePoissonQuantumOp, NoiseRandomQuantumOp, NoiseUniformQuantumOp,
+OrQuantumOp, RShiftQuantumOp, SubtractQuantumOp,
+ThresholdBlackQuantumOp, ThresholdQuantumOp, ThresholdWhiteQuantumOp,
+ThresholdBlackNegateQuantumOp, ThresholdWhiteNegateQuantumOp,
+XorQuantumOp).</dd>
+<dt>rvalue:</dt>
+<dd>Operator argument.</dd>
+<dt>exception:</dt>
+<dd>Updated with error description.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="quantumoperatorregionimage">
+<h1><a class="toc-backref" href="#id4">QuantumOperatorRegionImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail QuantumOperatorRegionImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, long x, long y,
+ unsigned long columns, unsigned long rows,
+ <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ QuantumOperator quantum_operator, double rvalue );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>QuantumOperatorRegionImage() performs the requested arithmetic,
+bitwise-logical, or value operation on the selected channels of
+the image over the specified region. The AllChannels channel option
+operates on all color channels whereas the GrayChannel channel option
+treats the color channels as a grayscale intensity.</p>
+<p>These operations are on the DirectClass pixels of the image and do not
+update pixel indexes or colormap.</p>
+<p>The format of the QuantumOperatorRegionImage method is:</p>
+<pre class="literal-block">
+MagickPassFail QuantumOperatorRegionImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, long x, long y,
+ unsigned long columns, unsigned long rows,
+ <a class="reference external" href="../api/types.html#channeltype">ChannelType</a> channel,
+ QuantumOperator quantum_operator, double rvalue );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>channel:</dt>
+<dd>Channel to operate on (RedChannel, CyanChannel,
+GreenChannel, MagentaChannel, BlueChannel, YellowChannel,
+OpacityChannel, BlackChannel, MatteChannel, AllChannels,
+GrayChannel). The AllChannels type only updates color
+channels. The GrayChannel type treats the color channels
+as if they represent an intensity.</dd>
+<dt>x:</dt>
+<dd>Ordinate of left row of region.</dd>
+<dt>y:</dt>
+<dd>Orginate of top column of region.</dd>
+<dt>columns:</dt>
+<dd>Width of region.</dd>
+<dt>rows:</dt>
+<dd>Height of region.</dd>
+<dt>quantum_operator:</dt>
+<dd>Operator to use (AddQuantumOp,AndQuantumOp,
+AssignQuantumOp, DepthQuantumOp, DivideQuantumOp, GammaQuantumOp,
+LShiftQuantumOp, MultiplyQuantumOp, NegateQuantumOp,
+NoiseGaussianQuantumOp, NoiseImpulseQuantumOp,
+NoiseLaplacianQuantumOp, NoiseMultiplicativeQuantumOp,
+NoisePoissonQuantumOp, NoiseRandomQuantumOp, NoiseUniformQuantumOp,
+OrQuantumOp, RShiftQuantumOp, SubtractQuantumOp,
+ThresholdBlackQuantumOp, ThresholdQuantumOp, ThresholdWhiteQuantumOp,
+XorQuantumOp).</dd>
+<dt>rvalue:</dt>
+<dd>Operator argument.</dd>
+<dt>exception:</dt>
+<dd>Updated with error description.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/paint.html b/www/api/paint.html
index 7a16765..b8dd4dc 100644
--- a/www/api/paint.html
+++ b/www/api/paint.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>paint</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="paint">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="methods-to-fill-image-pixel-regions">Methods to fill image pixel regions</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#colorfloodfillimage" id="id7">ColorFloodfillImage</a></li>
<li><a class="reference internal" href="#mattefloodfillimage" id="id8">MatteFloodfillImage</a></li>
@@ -197,5 +197,10 @@ unsigned int TransparentImage( <a class="reference external" href="../api/types.
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/paint.html.orig b/www/api/paint.html.orig
new file mode 100644
index 0000000..acc0101
--- /dev/null
+++ b/www/api/paint.html.orig
@@ -0,0 +1,201 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>paint</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="paint">
+<h1 class="title">paint</h1>
+<h2 class="subtitle" id="methods-to-fill-image-pixel-regions">Methods to fill image pixel regions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#colorfloodfillimage" id="id7">ColorFloodfillImage</a></li>
+<li><a class="reference internal" href="#mattefloodfillimage" id="id8">MatteFloodfillImage</a></li>
+<li><a class="reference internal" href="#opaqueimage" id="id9">OpaqueImage</a></li>
+<li><a class="reference internal" href="#transparentimage" id="id10">TransparentImage</a></li>
+</ul>
+</div>
+<div class="section" id="colorfloodfillimage">
+<h1><a class="toc-backref" href="#id7">ColorFloodfillImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int ColorFloodfillImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info,
+ const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target, const long x_offset,
+ const long y_offset, const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> method );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>ColorFloodfill() 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 ColorFloodfillImage method is:</p>
+<pre class="literal-block">
+unsigned int ColorFloodfillImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info,
+ const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target, const long x_offset,
+ const long y_offset, const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> method );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>draw_info:</dt>
+<dd>The draw info.</dd>
+<dt>target:</dt>
+<dd>The RGB value of the target color.</dd>
+<dt>x,y:</dt>
+<dd>The starting location of the operation.</dd>
+<dt>method:</dt>
+<dd>Choose either FloodfillMethod or FillToBorderMethod.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="mattefloodfillimage">
+<h1><a class="toc-backref" href="#id8">MatteFloodfillImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int MatteFloodfillImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target,
+ const unsigned int opacity, const long x_offset,
+ const long y_offset, const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> method );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>MatteFloodfill() changes the transparency value of any pixel that matches
+target and is an immediate neighbor. If the method FillToBorderMethod
+is specified, the transparency 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 transparency exactly.
+However, in many cases two transparency values may differ by a
+small amount. The fuzz member of image defines how much tolerance is
+acceptable to consider two transparency values as the same. For example,
+set fuzz to 10 and the opacity values of 100 and 102 respectively are
+now interpreted as the same value for the purposes of the floodfill.</p>
+<p>The format of the MatteFloodfillImage method is:</p>
+<pre class="literal-block">
+unsigned int MatteFloodfillImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target,
+ const unsigned int opacity, const long x_offset,
+ const long y_offset, const <a class="reference external" href="../api/types.html#paintmethod">PaintMethod</a> method );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>target:</dt>
+<dd>The RGB value of the target color.</dd>
+<dt>opacity:</dt>
+<dd>The level of transparency: 0 is fully opaque and MaxRGB is
+fully transparent.</dd>
+<dt>x,y:</dt>
+<dd>The starting location of the operation.</dd>
+<dt>method:</dt>
+<dd>Choose either FloodfillMethod or FillToBorderMethod.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="opaqueimage">
+<h1><a class="toc-backref" href="#id9">OpaqueImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int OpaqueImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target,
+ const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> fill );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>OpaqueImage() changes any pixel that matches color with the color
+defined by fill.</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 OpaqueImage method is:</p>
+<pre class="literal-block">
+unsigned int OpaqueImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target,
+ const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> fill );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>target:</dt>
+<dd>The RGB value of the target color.</dd>
+<dt>fill:</dt>
+<dd>The replacement color.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="transparentimage">
+<h1><a class="toc-backref" href="#id10">TransparentImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int TransparentImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target,
+ const unsigned int opacity );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>TransparentImage() 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 TransparentImage method is:</p>
+<pre class="literal-block">
+unsigned int TransparentImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#pixelpacket">PixelPacket</a> target,
+ const unsigned int opacity );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>target:</dt>
+<dd>The RGB value of the target color.</dd>
+<dt>opacity:</dt>
+<dd>The replacement opacity value.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/pixel_cache.html b/www/api/pixel_cache.html
index fc53979..7824f38 100644
--- a/www/api/pixel_cache.html
+++ b/www/api/pixel_cache.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>pixel_cache</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="pixel-cache">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="image-pixel-cache-working-pixels">Image pixel cache (working pixels).</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#accesscacheviewpixels" id="id63">AccessCacheViewPixels</a></li>
<li><a class="reference internal" href="#accessimmutableindexes" id="id64">AccessImmutableIndexes</a></li>
@@ -1041,5 +1041,10 @@ transferred to the in-memory or disk cache otherwise MagickFail.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/pixel_iterator.html b/www/api/pixel_iterator.html
index 00014cd..7cdbfdb 100644
--- a/www/api/pixel_iterator.html
+++ b/www/api/pixel_iterator.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="pixel-iterator">
@@ -596,5 +596,10 @@ a region of source pixels and initializes a region of destination pixels.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/pixel_iterator.html.orig b/www/api/pixel_iterator.html.orig
new file mode 100644
index 0000000..3b1c7dc
--- /dev/null
+++ b/www/api/pixel_iterator.html.orig
@@ -0,0 +1,600 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>pixel_iterator</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="pixel-iterator">
+<h1 class="title">pixel_iterator</h1>
+<h2 class="subtitle" id="pixel-iterator-pattern-support-functions">Pixel iterator pattern support functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#initializepixeliteratoroptions" id="id17">InitializePixelIteratorOptions</a></li>
+<li><a class="reference internal" href="#pixeliteratemonoread" id="id18">PixelIterateMonoRead</a></li>
+<li><a class="reference internal" href="#pixeliteratemonoset" id="id19">PixelIterateMonoSet</a></li>
+<li><a class="reference internal" href="#pixeliteratemonomodify" id="id20">PixelIterateMonoModify</a></li>
+<li><a class="reference internal" href="#pixeliteratedualread" id="id21">PixelIterateDualRead</a></li>
+<li><a class="reference internal" href="#pixeliteratedualmodify" id="id22">PixelIterateDualModify</a></li>
+<li><a class="reference internal" href="#pixeliteratedualnew" id="id23">PixelIterateDualNew</a></li>
+<li><a class="reference internal" href="#pixeliteratetriplemodify" id="id24">PixelIterateTripleModify</a></li>
+<li><a class="reference internal" href="#pixeliteratetriplenew" id="id25">PixelIterateTripleNew</a></li>
+</ul>
+</div>
+<div class="section" id="initializepixeliteratoroptions">
+<h1><a class="toc-backref" href="#id17">InitializePixelIteratorOptions</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void InitializePixelIteratorOptions( PixelIteratorOptions *options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>InitializePixelIteratorOptions() assigns default options to a user-provided
+PixelIteratorOptions structure. This function should always be used
+to initialize the PixelIteratorOptions structure prior to making any
+changes to it.</p>
+<p>The format of the InitializePixelIteratorOptions method is:</p>
+<pre class="literal-block">
+void InitializePixelIteratorOptions( PixelIteratorOptions *options,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>options:</dt>
+<dd>pointer to PixelIteratorOptions structure to initialize.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratemonoread">
+<h1><a class="toc-backref" href="#id18">PixelIterateMonoRead</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateMonoRead( PixelIteratorMonoReadCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const long x, const long y,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>PixelIterateMonoRead() iterates through a region of an image and invokes a
+user-provided callback function (of type PixelRowIteratorMonoReadCallback)
+for a row of pixels. This is useful to support simple operations such as
+statistics computation.</p>
+<p>The format of the PixelIterateMonoRead method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateMonoRead( PixelIteratorMonoReadCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const long x, const long y,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which is passed the
+address of pixels from the image.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>x:</dt>
+<dd>The horizontal ordinate of the top left corner of the region.</dd>
+<dt>y:</dt>
+<dd>The vertical ordinate of the top left corner of the region.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>image:</dt>
+<dd>The address of the Image.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratemonoset">
+<h1><a class="toc-backref" href="#id19">PixelIterateMonoSet</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateMonoSet( PixelIteratorMonoModifyback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const long x, const long y,
+ const unsigned long columns, const unsigned long rows,
+ <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>PixelIterateMonoSet() iterates through a region of an image and invokes
+a user-provided callback function (of type PixelIteratorMonoModifyCallback)
+to initialize a region of pixels from scratch. The difference from
+PixelIterateMonoModify() is that the output pixels are not initialized
+from the underlying store so it is more efficient when outputting a new
+image or when the existing pixels are intentionally discarded. This is
+useful for operations such as setting the pixel color.</p>
+<p>The format of the PixelIterateMonoSet method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateMonoSet( PixelIteratorMonoModifyback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const long x, const long y,
+ const unsigned long columns, const unsigned long rows,
+ <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which is passed the
+address of pixels to be initialized in the image.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>x:</dt>
+<dd>The horizontal ordinate of the top left corner of the region.</dd>
+<dt>y:</dt>
+<dd>The vertical ordinate of the top left corner of the region.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>image:</dt>
+<dd>The address of the Image.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratemonomodify">
+<h1><a class="toc-backref" href="#id20">PixelIterateMonoModify</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateMonoModify( PixelIteratorMonoModifyCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const long x,
+ const long y, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#image">Image</a> *image,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>PixelIterateMonoModify() iterates through a region of an image and invokes
+a user-provided callback function (of type PixelIteratorMonoModifyCallback)
+to modify a region of pixels. This is useful to support simple operations
+such as level shifting, colorspace translation, or thresholding.</p>
+<p>The format of the PixelIterateMonoModify method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateMonoModify( PixelIteratorMonoModifyCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const long x,
+ const long y, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#image">Image</a> *image,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which is passed the
+address of pixels from the image.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>x:</dt>
+<dd>The horizontal ordinate of the top left corner of the region.</dd>
+<dt>y:</dt>
+<dd>The vertical ordinate of the top left corner of the region.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>image:</dt>
+<dd>The address of the Image.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratedualread">
+<h1><a class="toc-backref" href="#id21">PixelIterateDualRead</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateDualRead( PixelIteratorDualReadCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const unsigned long columns,
+ const unsigned long rows, const <a class="reference external" href="../api/types.html#image">Image</a> *first_image,
+ const long first_x, const long first_y,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *second_image, const long second_x,
+ const long second_y, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception ); ;
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>PixelIterateDualRead() iterates through pixel regions of two images and
+invokes a user-provided callback function (of type
+PixelIteratorDualReadCallback) for each row of pixels. This is useful to
+support operations such as image comparison.</p>
+<p>The format of the PixelIterateDualRead method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateDualRead( PixelIteratorDualReadCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const unsigned long columns,
+ const unsigned long rows, const <a class="reference external" href="../api/types.html#image">Image</a> *first_image,
+ const long first_x, const long first_y,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *second_image, const long second_x,
+ const long second_y, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception ); ;
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which is passed the
+address of pixels from each image.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>first_image:</dt>
+<dd>The address of the first Image.</dd>
+<dt>first_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the first region.</dd>
+<dt>first_y:</dt>
+<dd>The vertical ordinate of the top left corner of the first region.</dd>
+<dt>second_image:</dt>
+<dd>The address of the second Image.</dd>
+<dt>second_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the second region.</dd>
+<dt>second_y:</dt>
+<dd>The vertical ordinate of the top left corner of the second region.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratedualmodify">
+<h1><a class="toc-backref" href="#id22">PixelIterateDualModify</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateDualModify( PixelIteratorDualModifyCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source_image, const long source_x,
+ const long source_y, <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const long update_x, const long update_y,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>PixelIterateDualModify() iterates through pixel regions of two images and
+invokes a user-provided callback function (of type
+PixelIteratorDualModifyCallback) for each row of pixels. This is useful to
+support operations such as composition.</p>
+<p>The format of the PixelIterateDualModify method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateDualModify( PixelIteratorDualModifyCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source_image, const long source_x,
+ const long source_y, <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const long update_x, const long update_y,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which reads from
+a region of source pixels and updates a region of destination pixels.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>source_image:</dt>
+<dd>The address of the constant source Image.</dd>
+<dt>source_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the source region.</dd>
+<dt>source_y:</dt>
+<dd>The vertical ordinate of the top left corner of the source region.</dd>
+<dt>update_image:</dt>
+<dd>The address of the update Image.</dd>
+<dt>update_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the update region.</dd>
+<dt>update_y:</dt>
+<dd>The vertical ordinate of the top left corner of the update region.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratedualnew">
+<h1><a class="toc-backref" href="#id23">PixelIterateDualNew</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateDualNew( PixelIteratorDualNewCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const unsigned long columns,
+ const unsigned long rows, const <a class="reference external" href="../api/types.html#image">Image</a> *source_image,
+ const long source_x, const long source_y,
+ <a class="reference external" href="../api/types.html#image">Image</a> *new_image, const long new_x,
+ const long new_y, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>PixelIterateDualNew() iterates through pixel regions of two images and
+invokes a user-provided callback function (of type
+PixelIteratorDualNewCallback) for each row of pixels. This is used if a
+new output image is created based on an input image. The difference from
+PixelIterateDualModify() is that the output pixels are not initialized so
+it is more efficient when outputting a new image.</p>
+<p>The format of the PixelIterateDualNew method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateDualNew( PixelIteratorDualNewCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data, const unsigned long columns,
+ const unsigned long rows, const <a class="reference external" href="../api/types.html#image">Image</a> *source_image,
+ const long source_x, const long source_y,
+ <a class="reference external" href="../api/types.html#image">Image</a> *new_image, const long new_x,
+ const long new_y, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which reads from
+a region of source pixels and initializes a region of destination pixels.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>source_image:</dt>
+<dd>The address of the constant source Image.</dd>
+<dt>source_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the source region.</dd>
+<dt>source_y:</dt>
+<dd>The vertical ordinate of the top left corner of the source region.</dd>
+<dt>new_image:</dt>
+<dd>The address of the new Image.</dd>
+<dt>new_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the new region.</dd>
+<dt>new_y:</dt>
+<dd>The vertical ordinate of the top left corner of the new region.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratetriplemodify">
+<h1><a class="toc-backref" href="#id24">PixelIterateTripleModify</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateTripleModify( PixelIteratorTripleModifyCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source1_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source2_image, const long source_x,
+ const long source_y, <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const long update_x, const long update_y,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>PixelIterateTripleModify() iterates through pixel regions of three images
+and invokes a user-provided callback function (of type
+PixelIteratorTripleModifyCallback) for each row of pixels. The first two
+images are read-only, while the third image is read-write for update.
+Access of the first two images is done lock-step using the same coordinates.
+This is useful to support operations such as image differencing.</p>
+<p>The format of the PixelIterateTripleModify method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateTripleModify( PixelIteratorTripleModifyCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source1_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source2_image, const long source_x,
+ const long source_y, <a class="reference external" href="../api/types.html#image">Image</a> *update_image,
+ const long update_x, const long update_y,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which reads from
+a region of source pixels and updates a region of destination pixels.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>source1_image:</dt>
+<dd>The address of the constant source 1 Image.</dd>
+<dt>source2_image:</dt>
+<dd>The address of the constant source 2 Image.</dd>
+<dt>source_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the source regions.</dd>
+<dt>source_y:</dt>
+<dd>The vertical ordinate of the top left corner of the source regions.</dd>
+<dt>update_image:</dt>
+<dd>The address of the update Image.</dd>
+<dt>update_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the update region.</dd>
+<dt>update_y:</dt>
+<dd>The vertical ordinate of the top left corner of the update region.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="pixeliteratetriplenew">
+<h1><a class="toc-backref" href="#id25">PixelIterateTripleNew</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PixelIterateTripleNew( PixelIteratorTripleNewCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source1_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source2_image, const long source_x,
+ const long source_y, <a class="reference external" href="../api/types.html#image">Image</a> *new_image,
+ const long new_x, const long new_y,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>PixelIterateTripleNew() iterates through pixel regions of three images
+and invokes a user-provided callback function (of type
+PixelIteratorTripleNewCallback) for each row of pixels. The first two
+images are read-only, while the third image is read-write for update.
+Access of the first two images is done lock-step using the same coordinates.
+This is used if a new output image is created based on two input images.
+The difference from PixelIterateTripleModify() is that the output pixels
+are not initialized so it is more efficient when outputting a new image.</p>
+<p>The format of the PixelIterateTripleNew method is:</p>
+<pre class="literal-block">
+MagickPassFail PixelIterateTripleNew( PixelIteratorTripleNewCallback call_back,
+ const PixelIteratorOptions *options,
+ const char *description, void *mutable_data,
+ const void *immutable_data,
+ const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source1_image,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *source2_image, const long source_x,
+ const long source_y, <a class="reference external" href="../api/types.html#image">Image</a> *new_image,
+ const long new_x, const long new_y,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>call_back:</dt>
+<dd>A user-provided C callback function which reads from
+a region of source pixels and initializes a region of destination pixels.</dd>
+<dt>options:</dt>
+<dd>Pixel iterator execution options (may be NULL).</dd>
+<dt>description:</dt>
+<dd>textual description of operation being performed.</dd>
+<dt>mutable_data:</dt>
+<dd>User-provided mutable context data.</dd>
+<dt>immutable_data:</dt>
+<dd>User-provided immutable context data.</dd>
+<dt>columns:</dt>
+<dd>Width of pixel region</dd>
+<dt>rows:</dt>
+<dd>Height of pixel region</dd>
+<dt>source1_image:</dt>
+<dd>The address of the constant source 1 Image.</dd>
+<dt>source2_image:</dt>
+<dd>The address of the constant source 2 Image.</dd>
+<dt>source_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the source regions.</dd>
+<dt>source_y:</dt>
+<dd>The vertical ordinate of the top left corner of the source regions.</dd>
+<dt>new_image:</dt>
+<dd>The address of the new Image.</dd>
+<dt>new_x:</dt>
+<dd>The horizontal ordinate of the top left corner of the new region.</dd>
+<dt>new_y:</dt>
+<dd>The vertical ordinate of the top left corner of the new region.</dd>
+<dt>exception:</dt>
+<dd>If an error is reported, this argument is updated with the reason.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/plasma.html b/www/api/plasma.html
index 79a9d69..9c78b9a 100644
--- a/www/api/plasma.html
+++ b/www/api/plasma.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="plasma">
@@ -74,5 +74,10 @@ MagickPassFail PlasmaImage( <a class="reference external" href="../api/types.htm
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/plasma.html.orig b/www/api/plasma.html.orig
new file mode 100644
index 0000000..0f58031
--- /dev/null
+++ b/www/api/plasma.html.orig
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>plasma</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="plasma">
+<h1 class="title">plasma</h1>
+<h2 class="subtitle" id="create-a-plasma-fractal-image">Create a Plasma fractal image.</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#plasmaimage" id="id1">PlasmaImage</a></li>
+</ul>
+</div>
+<div class="section" id="plasmaimage">
+<h1><a class="toc-backref" href="#id1">PlasmaImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail PlasmaImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#segmentinfo">SegmentInfo</a> *segment,
+ unsigned long attenuate, unsigned long depth );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</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="literal-block">
+MagickPassFail PlasmaImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#segmentinfo">SegmentInfo</a> *segment,
+ unsigned long attenuate, unsigned long depth );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>segment:</dt>
+<dd>Define the region to apply plasma fractals values.</dd>
+<dt>attenuate:</dt>
+<dd>Define the plasma attenuation factor.</dd>
+<dt>depth:</dt>
+<dd>Limit the plasma recursion depth.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/profile.html b/www/api/profile.html
index 35d7c0f..c3889b8 100644
--- a/www/api/profile.html
+++ b/www/api/profile.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="profile">
@@ -316,5 +316,10 @@ profile.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/profile.html.orig b/www/api/profile.html.orig
new file mode 100644
index 0000000..2701cb5
--- /dev/null
+++ b/www/api/profile.html.orig
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>profile</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="profile">
+<h1 class="title">profile</h1>
+<h2 class="subtitle" id="manipulate-embedded-profiles">Manipulate embedded profiles</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#allocateimageprofileiterator" id="id15">AllocateImageProfileIterator</a></li>
+<li><a class="reference internal" href="#appendimageprofile" id="id16">AppendImageProfile</a></li>
+<li><a class="reference internal" href="#deallocateimageprofileiterator" id="id17">DeallocateImageProfileIterator</a></li>
+<li><a class="reference internal" href="#deleteimageprofile" id="id18">DeleteImageProfile</a></li>
+<li><a class="reference internal" href="#getimageprofile" id="id19">GetImageProfile</a></li>
+<li><a class="reference internal" href="#nextimageprofile" id="id20">NextImageProfile</a></li>
+<li><a class="reference internal" href="#profileimage" id="id21">ProfileImage</a></li>
+<li><a class="reference internal" href="#setimageprofile" id="id22">SetImageProfile</a></li>
+</ul>
+</div>
+<div class="section" id="allocateimageprofileiterator">
+<h1><a class="toc-backref" href="#id15">AllocateImageProfileIterator</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+ImageProfileIterator AllocateImageProfileIterator( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>AllocateImageProfileIterator allocates an iterator to traverse the
+image profile list. It is an error (i.e. will surely crash) to invoke
+DeleteImageProfile() on the profile that the iterator is currently
+referencing. However, it is safe to delete a profile that the iterator
+is not currently referencing. Inserting additional profiles does not
+invalidate the current iterator.</p>
+<p>The format of the AllocateImageProfileIterator method is:</p>
+<pre class="literal-block">
+ImageProfileIterator AllocateImageProfileIterator( const <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="appendimageprofile">
+<h1><a class="toc-backref" href="#id16">AppendImageProfile</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MaickPassFail AppendImageProfile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name,
+ const unsigned char *profile_chunk,
+ const size_t chunk_length );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>AppendImageProfile adds a named profile to the image. If a profile with the
+same name already exists, then the new profile data is appended to the
+existing profile. If a null profile address is supplied, then an existing
+profile is removed. The profile is copied into the image. Note that this
+function does not execute CMS color profiles. Any existing CMS color
+profile is simply added/updated. Use the ProfileImage() function in order
+to execute a CMS color profile.</p>
+<p>The format of the AppendImageProfile method is:</p>
+<pre class="literal-block">
+MaickPassFail AppendImageProfile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name,
+ const unsigned char *profile_chunk,
+ const size_t chunk_length );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>name:</dt>
+<dd>Profile name. Valid names are &quot;8BIM&quot;, &quot;ICM&quot;, &quot;IPTC&quot;, XMP, or any
+unique text string.</dd>
+<dt>profile_chunk:</dt>
+<dd>Address of profile chunk to add or append. Pass zero
+to remove an existing profile.</dd>
+<dt>length:</dt>
+<dd>The length of the profile chunk to add or append.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="deallocateimageprofileiterator">
+<h1><a class="toc-backref" href="#id17">DeallocateImageProfileIterator</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void DeallocateImageProfileIterator( ImageProfileIterator profile_iterator );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>DeallocateImageProfileIterator deallocates an image profile iterator.</p>
+<p>The format of the DeallocateImageProfileIterator method is:</p>
+<pre class="literal-block">
+void DeallocateImageProfileIterator( ImageProfileIterator profile_iterator );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>profile_iterator:</dt>
+<dd>Profile iterator to deallocate.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="deleteimageprofile">
+<h1><a class="toc-backref" href="#id18">DeleteImageProfile</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int DeleteImageProfile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>DeleteImageProfile removes a named profile from the image.</p>
+<p>The format of the DeleteImageProfile method is:</p>
+<pre class="literal-block">
+unsigned int DeleteImageProfile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>name:</dt>
+<dd>Profile name. Valid names are &quot;8BIM&quot;, &quot;ICM&quot;, &amp; &quot;IPTC&quot; or a
+generic profile name.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimageprofile">
+<h1><a class="toc-backref" href="#id19">GetImageProfile</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+const unsigned char *GetImageProfile( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name,
+ size_t *length );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>GetImageProfile returns a pointer to the named image profile if it is
+present. A null pointer is returned if the named profile is not present.</p>
+<p>Older versions of this function stored profiles named &quot;8BIM&quot; and &quot;IPTC&quot;
+in the same storage location. This is no longer the case. However,
+GetImageProfile() will try the alternate name if the specifically
+requested profile name is not available.</p>
+<p>The format of the GetImageProfile method is:</p>
+<pre class="literal-block">
+const unsigned char *GetImageProfile( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name,
+ size_t *length );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>name:</dt>
+<dd>Profile name. Valid names are &quot;8BIM&quot;, &quot;ICM&quot;, &quot;IPTC&quot;, &quot;XMP&quot; or any
+unique text string.</dd>
+<dt>length:</dt>
+<dd>Updated with profile length if profile is present. Set to NULL
+if length is not needed.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="nextimageprofile">
+<h1><a class="toc-backref" href="#id20">NextImageProfile</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail NextImageProfile( ImageProfileIterator profile_iterator, const char ** name,
+ const unsigned char ** profile, size_t *length );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>NextImageProfile iterates forward to the next image profile. The profile
+name is returned along with the profile data, and length. If there are
+no more entries in the list, then MagickFail is returned.</p>
+<p>The format of the AllocateImageProfileIterator method is:</p>
+<pre class="literal-block">
+MagickPassFail NextImageProfile( ImageProfileIterator profile_iterator, const char ** name,
+ const unsigned char ** profile, size_t *length );
+</pre>
+<dl class="docutils">
+<dt>profile_iterator:</dt>
+<dd>Profile iterator.</dd>
+<dt>name:</dt>
+<dd>Address of pointer to update with address of name.</dd>
+<dt>profile:</dt>
+<dd>Address of pointer to update with location of profile data.</dd>
+<dt>length:</dt>
+<dd>Address of parameter to update with profile length.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="profileimage">
+<h1><a class="toc-backref" href="#id21">ProfileImage</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int ProfileImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name, unsigned char *profile,
+ const size_t length, unsigned int clone );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>ProfileImage() adds, applies, or removes a ICM, IPTC, or generic profile
+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. Ownership of the profile is
+transferred to GraphicsMagick (it should not be altered or deallocated)
+unless the clone option is set to True.</p>
+<p>ICC ICM profiles are a special case and are handled as follows:</p>
+<p>If there is no ICM profile currently associated with the image, then
+the profile is simply associated with the image and the image pixels
+are not altered.</p>
+<p>If there is already a ICM profile associated with the image, then
+the colorspace transform described by the existing and new profiles
+is 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="literal-block">
+unsigned int ProfileImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name, unsigned char *profile,
+ const size_t length, unsigned int clone );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>name:</dt>
+<dd>Name of profile to add or remove: ICM, IPTC, or generic profile.</dd>
+<dt>profile:</dt>
+<dd>The profile. Can not be 'const' due to 'clone' option but
+is treated as 'const' if 'clone' is set to MagickTrue.</dd>
+<dt>length:</dt>
+<dd>The length of the profile.</dd>
+<dt>clone:</dt>
+<dd>If set True, then copy the profile rather than taking
+ownership of it.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setimageprofile">
+<h1><a class="toc-backref" href="#id22">SetImageProfile</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int SetImageProfile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name, const unsigned char *profile,
+ const size_t length );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>SetImageProfile adds a named profile to the image. If a profile with the
+same name already exists, then it is replaced. If a null profile address
+is supplied, then an existing profile is removed. The profile is copied
+into the image. Note that this function does not execute CMS color
+profiles. Any existing CMS color profile is simply replaced. Use the
+ProfileImage() function in order to execute a CMS color profile.</p>
+<p>Older versions of this function stored profiles named &quot;8BIM&quot; and &quot;IPTC&quot;
+in the same storage location. This is no longer the case. However,
+GetImageProfile() will try the alternate name if the specifically
+requested profile name is not available. Note that when trying to remove
+a profile, it may be necessary to remove both names in order for an
+&quot;IPTC&quot; profile to no longer be included in output file formats.</p>
+<p>The format of the SetImageProfile method is:</p>
+<pre class="literal-block">
+unsigned int SetImageProfile( <a class="reference external" href="../api/types.html#image">Image</a> *image, const char *name, const unsigned char *profile,
+ const size_t length );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>name:</dt>
+<dd>Profile name. Valid names are &quot;8BIM&quot;, &quot;ICM&quot;, &quot;IPTC&quot;, XMP, or any
+unique text string.</dd>
+<dt>profile:</dt>
+<dd>Address of profile to add. Pass zero to remove an existing
+profile.</dd>
+<dt>length:</dt>
+<dd>The length of the profile.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/quantize.html b/www/api/quantize.html
index ce03f4c..70dcffd 100644
--- a/www/api/quantize.html
+++ b/www/api/quantize.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="quantize">
@@ -350,5 +350,10 @@ unsigned int QuantizeImages( const <a class="reference external" href="../api/ty
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/quantize.html.orig b/www/api/quantize.html.orig
new file mode 100644
index 0000000..3af2262
--- /dev/null
+++ b/www/api/quantize.html.orig
@@ -0,0 +1,354 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>quantize</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="quantize">
+<h1 class="title">quantize</h1>
+<h2 class="subtitle" id="reduce-the-number-of-colors-in-an-image">Reduce the number of colors in an image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#clonequantizeinfo" id="id21">CloneQuantizeInfo</a></li>
+<li><a class="reference internal" href="#compressimagecolormap" id="id22">CompressImageColormap</a></li>
+<li><a class="reference internal" href="#destroyquantizeinfo" id="id23">DestroyQuantizeInfo</a></li>
+<li><a class="reference internal" href="#getimagequantizeerror" id="id24">GetImageQuantizeError</a></li>
+<li><a class="reference internal" href="#getquantizeinfo" id="id25">GetQuantizeInfo</a></li>
+<li><a class="reference internal" href="#grayscalepseudoclassimage" id="id26">GrayscalePseudoClassImage</a></li>
+<li><a class="reference internal" href="#mapimage" id="id27">MapImage</a></li>
+<li><a class="reference internal" href="#mapimages" id="id28">MapImages</a></li>
+<li><a class="reference internal" href="#orderedditherimage" id="id29">OrderedDitherImage</a></li>
+<li><a class="reference internal" href="#quantizeimage" id="id30">QuantizeImage</a></li>
+<li><a class="reference internal" href="#quantizeimages" id="id31">QuantizeImages</a></li>
+</ul>
+</div>
+<div class="section" id="clonequantizeinfo">
+<h1><a class="toc-backref" href="#id21">CloneQuantizeInfo</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *CloneQuantizeInfo( const <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *CloneQuantizeInfo( const <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<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>
+<dt>quantize_info:</dt>
+<dd>a structure of type info.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="compressimagecolormap">
+<h1><a class="toc-backref" href="#id22">CompressImageColormap</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void CompressImageColormap( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</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="literal-block">
+void CompressImageColormap( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="destroyquantizeinfo">
+<h1><a class="toc-backref" href="#id23">DestroyQuantizeInfo</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+DestroyQuantizeInfo( <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>DestroyQuantizeInfo() deallocates memory associated with an QuantizeInfo
+structure.</p>
+<p>The format of the DestroyQuantizeInfo method is:</p>
+<pre class="literal-block">
+DestroyQuantizeInfo( <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>quantize_info:</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagequantizeerror">
+<h1><a class="toc-backref" href="#id24">GetImageQuantizeError</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int GetImageQuantizeError( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</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>
+<p>o mean_error_per_pixel: This value is the mean error for any single
+pixel in the image.</p>
+<p>o normalized_mean_square_error: 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>
+<p>o normalized_maximum_square_error: This 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="literal-block">
+unsigned int GetImageQuantizeError( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows.</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Specifies a pointer to an Image structure; returned from
+ReadImage.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getquantizeinfo">
+<h1><a class="toc-backref" href="#id25">GetQuantizeInfo</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+GetQuantizeInfo( <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>GetQuantizeInfo() initializes the QuantizeInfo structure.</p>
+<p>The format of the GetQuantizeInfo method is:</p>
+<pre class="literal-block">
+GetQuantizeInfo( <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>quantize_info:</dt>
+<dd>Specifies a pointer to a QuantizeInfo structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="grayscalepseudoclassimage">
+<h1><a class="toc-backref" href="#id26">GrayscalePseudoClassImage</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void GrayscalePseudoClassImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>GrayscalePseudoClassImage converts an image to a PseudoClass
+grayscale representation with an (optionally) compressed and sorted
+colormap. Colormap is ordered by increasing intensity.</p>
+<p>The format of the GrayscalePseudoClassImage method is:</p>
+<pre class="literal-block">
+void GrayscalePseudoClassImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>optimize_colormap:</dt>
+<dd>If true, produce an optimimal (compact) colormap.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="mapimage">
+<h1><a class="toc-backref" href="#id27">MapImage</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int MapImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *map_image,
+ const unsigned int dither );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>MapImage() replaces the colors of an image with the closest color from a
+reference image.</p>
+<p>The format of the MapImage method is:</p>
+<pre class="literal-block">
+unsigned int MapImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *map_image,
+ const unsigned int dither );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Specifies a pointer to an Image structure.</dd>
+<dt>map_image:</dt>
+<dd>Specifies a pointer to an Image structure. Reduce
+image to a set of colors represented by this image.</dd>
+<dt>dither:</dt>
+<dd>Set this integer value to something other than zero to
+dither the quantized image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="mapimages">
+<h1><a class="toc-backref" href="#id28">MapImages</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int MapImages( <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#image">Image</a> *map_image, const unsigned int dither );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>MapImages() replaces the colors of a sequence of images with the closest
+color from a reference image. If the reference image does not contain a
+colormap, then a colormap will be created based on existing colors in the
+reference image. The order and number of colormap entries does not match
+the reference image. If the order and number of colormap entries needs to
+match the reference image, then the ReplaceImageColormap() function may be
+used after invoking MapImages() in order to apply the reference colormap.</p>
+<p>The format of the MapImage method is:</p>
+<pre class="literal-block">
+unsigned int MapImages( <a class="reference external" href="../api/types.html#image">Image</a> *images, <a class="reference external" href="../api/types.html#image">Image</a> *map_image, const unsigned int dither );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Specifies a pointer to a set of Image structures.</dd>
+<dt>map_image:</dt>
+<dd>Specifies a pointer to an Image structure. Reduce
+image to a set of colors represented by this image.</dd>
+<dt>dither:</dt>
+<dd>Set this integer value to something other than zero to
+dither the quantized image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="orderedditherimage">
+<h1><a class="toc-backref" href="#id29">OrderedDitherImage</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int OrderedDitherImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>OrderedDitherImage() uses the ordered dithering technique of reducing color
+images to monochrome using positional information to retain as much
+information as possible.</p>
+<p>The format of the OrderedDitherImage method is:</p>
+<pre class="literal-block">
+unsigned int OrderedDitherImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows.</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Specifies a pointer to an Image structure; returned from
+ReadImage.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="quantizeimage">
+<h1><a class="toc-backref" href="#id30">QuantizeImage</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int QuantizeImage( const <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</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="literal-block">
+unsigned int QuantizeImage( const <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info, <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<dl class="docutils">
+<dt>quantize_info:</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure.</dd>
+<dt>image:</dt>
+<dd>Specifies a pointer to an Image structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="quantizeimages">
+<h1><a class="toc-backref" href="#id31">QuantizeImages</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int QuantizeImages( const <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info, <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</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="literal-block">
+unsigned int QuantizeImages( const <a class="reference external" href="../api/types.html#quantizeinfo">QuantizeInfo</a> *quantize_info, <a class="reference external" href="../api/types.html#image">Image</a> *images );
+</pre>
+<dl class="docutils">
+<dt>quantize_info:</dt>
+<dd>Specifies a pointer to an QuantizeInfo structure.</dd>
+<dt>images:</dt>
+<dd>Specifies a pointer to a list of Image structures.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/registry.html b/www/api/registry.html
index b509fef..ce80b71 100644
--- a/www/api/registry.html
+++ b/www/api/registry.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="registry">
@@ -159,5 +159,10 @@ otherise the blob length in number of bytes.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/registry.html.orig b/www/api/registry.html.orig
new file mode 100644
index 0000000..4e75ade
--- /dev/null
+++ b/www/api/registry.html.orig
@@ -0,0 +1,163 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>registry</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="registry">
+<h1 class="title">registry</h1>
+<h2 class="subtitle" id="in-memory-image-registration-interface">In-memory image registration interface</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#deletemagickregistry" id="id7">DeleteMagickRegistry</a></li>
+<li><a class="reference internal" href="#getimagefrommagickregistry" id="id8">GetImageFromMagickRegistry</a></li>
+<li><a class="reference internal" href="#getmagickregistry" id="id9">GetMagickRegistry</a></li>
+<li><a class="reference internal" href="#setmagickregistry" id="id10">SetMagickRegistry</a></li>
+</ul>
+</div>
+<div class="section" id="deletemagickregistry">
+<h1><a class="toc-backref" href="#id7">DeleteMagickRegistry</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail DeleteMagickRegistry( const long id );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>DeleteMagickRegistry() deletes an entry in the registry as defined by the
+id. It returns MagickPass if the entry is deleted otherwise MagickFail if
+no entry is found in the registry that matches the id.</p>
+<p>The format of the DeleteMagickRegistry method is:</p>
+<pre class="literal-block">
+MagickPassFail DeleteMagickRegistry( const long id );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>id:</dt>
+<dd>The registry id.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getimagefrommagickregistry">
+<h1><a class="toc-backref" href="#id8">GetImageFromMagickRegistry</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetImageFromMagickRegistry( const char *name, long *id,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>GetImageFromMagickRegistry() gets an image from the registry as defined by
+its name. If the blob that matches the name is not found, NULL is returned.</p>
+<p>The format of the GetImageFromMagickRegistry method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *GetImageFromMagickRegistry( const char *name, long *id,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>name:</dt>
+<dd>The name of the image to retrieve from the registry.</dd>
+<dt>id:</dt>
+<dd>The registry id.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getmagickregistry">
+<h1><a class="toc-backref" href="#id9">GetMagickRegistry</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+const void *GetMagickRegistry( const long id, <a class="reference external" href="../api/types.html#registrytype">RegistryType</a> *type, size_t *length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>GetMagickRegistry() gets a blob from the registry as defined by the id. If
+the blob that matches the id is not found, NULL is returned.</p>
+<p>The format of the GetMagickRegistry method is:</p>
+<pre class="literal-block">
+const void *GetMagickRegistry( const long id, <a class="reference external" href="../api/types.html#registrytype">RegistryType</a> *type, size_t *length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>id:</dt>
+<dd>The registry id.</dd>
+<dt>type:</dt>
+<dd>The registry type.</dd>
+<dt>length:</dt>
+<dd>The blob length in number of bytes.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="setmagickregistry">
+<h1><a class="toc-backref" href="#id10">SetMagickRegistry</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+long SetMagickRegistry( const <a class="reference external" href="../api/types.html#registrytype">RegistryType</a> type, const void *blob, const size_t length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>SetMagickRegistry() sets a blob into the registry and returns a unique ID.
+If an error occurs, -1 is returned.</p>
+<p>The format of the SetMagickRegistry method is:</p>
+<pre class="literal-block">
+long SetMagickRegistry( const <a class="reference external" href="../api/types.html#registrytype">RegistryType</a> type, const void *blob, const size_t length,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>type:</dt>
+<dd>The registry type.</dd>
+<dt>blob:</dt>
+<dd>The address of a Binary Large OBject.</dd>
+<dt>length:</dt>
+<dd>For a registry type of ImageRegistryType use sizeof(Image)
+otherise the blob length in number of bytes.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/render.html b/www/api/render.html
index 976eaec..a8d45a5 100644
--- a/www/api/render.html
+++ b/www/api/render.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>render</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="render">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="low-level-methods-to-draw-on-an-image">Low-level methods to draw on an image</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#clonedrawinfo" id="id13">CloneDrawInfo</a></li>
<li><a class="reference internal" href="#destroydrawinfo" id="id14">DestroyDrawInfo</a></li>
@@ -84,7 +84,7 @@ void DestroyDrawInfo( <a class="reference external" href="../api/types.html#draw
<div class="section" id="id2">
<h2>Description</h2>
<p>DestroyDrawInfo() deallocates memory associated with an DrawInfo
-structure.</p>
+structure. Nothing is done if the pointer passed is NULL.</p>
<p>The format of the DestroyDrawInfo method is:</p>
<pre class="literal-block">
void DestroyDrawInfo( <a class="reference external" href="../api/types.html#drawinfo">DrawInfo</a> *draw_info );
@@ -251,5 +251,10 @@ MagickPassFail DrawPatternPath( <a class="reference external" href="../api/types
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/resize.html b/www/api/resize.html
index 8af998e..135b31b 100644
--- a/www/api/resize.html
+++ b/www/api/resize.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>resize</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="resize">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="resize-an-image">Resize an image</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#magnifyimage" id="id11">MagnifyImage</a></li>
<li><a class="reference internal" href="#minifyimage" id="id12">MinifyImage</a></li>
@@ -155,7 +155,8 @@ are windowed (brought down to zero) with the Blackman filter.</p>
<h2>Description</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>
+any additional color into the scaled image. SampleImage() is extremely
+fast and may be used where speed is most important.</p>
<p>The format of the SampleImage method is:</p>
<pre class="literal-block">
<a class="reference external" href="../api/types.html#image">Image</a> *SampleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
@@ -184,7 +185,10 @@ any additional color into the scaled image.</p>
</div>
<div class="section" id="id8">
<h2>Description</h2>
-<p>ScaleImage() changes the size of an image to the given dimensions.</p>
+<p>ScaleImage() changes the size of an image to the specified dimensions.
+This method is reasonably fast but it is not currently multi-threaded
+and does not support image filters. The quality of the resized image
+is sufficient for most purposes.</p>
<p>The format of the ScaleImage method is:</p>
<pre class="literal-block">
<a class="reference external" href="../api/types.html#image">Image</a> *ScaleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
@@ -214,8 +218,10 @@ any additional color into the scaled image.</p>
<div class="section" id="id10">
<h2>Description</h2>
<p>ThumbnailImage() changes the size of an image to the given dimensions.
-This method was designed by Bob Friesenhahn as a low cost thumbnail
-generator.</p>
+This method was designed as a low cost thumbnail generator.
+ThumbnailImage() is typically very fast but an attempt is made to improve
+quality by first using a simple sampling algorithm for part of the
+reduction, and then a filtering algorithm to produce the final image.</p>
<p>The format of the ThumbnailImage method is:</p>
<pre class="literal-block">
<a class="reference external" href="../api/types.html#image">Image</a> *ThumbnailImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
@@ -234,5 +240,10 @@ generator.</p>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/resize.html.orig b/www/api/resize.html.orig
new file mode 100644
index 0000000..78259f1
--- /dev/null
+++ b/www/api/resize.html.orig
@@ -0,0 +1,238 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>resize</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="resize">
+<h1 class="title">resize</h1>
+<h2 class="subtitle" id="resize-an-image">Resize an image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#magnifyimage" id="id11">MagnifyImage</a></li>
+<li><a class="reference internal" href="#minifyimage" id="id12">MinifyImage</a></li>
+<li><a class="reference internal" href="#resizeimage" id="id13">ResizeImage</a></li>
+<li><a class="reference internal" href="#sampleimage" id="id14">SampleImage</a></li>
+<li><a class="reference internal" href="#scaleimage" id="id15">ScaleImage</a></li>
+<li><a class="reference internal" href="#thumbnailimage" id="id16">ThumbnailImage</a></li>
+</ul>
+</div>
+<div class="section" id="magnifyimage">
+<h1><a class="toc-backref" href="#id11">MagnifyImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MagnifyImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>MagnifyImage() is a convenience method that scales an image proportionally
+to twice its size.</p>
+<p>The format of the MagnifyImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MagnifyImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="minifyimage">
+<h1><a class="toc-backref" href="#id12">MinifyImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MinifyImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *MinifyImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="resizeimage">
+<h1><a class="toc-backref" href="#id13">ResizeImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ResizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#filtertype">FilterTypes</a> filter, const double blur,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>ResizeImage() scales an image to the desired dimensions with one of these
+filters:</p>
+<p>Bessel Blackman Box
+Catrom Cubic Gaussian
+Hanning Hermite Lanczos
+Mitchell Point Quandratic
+Sinc Triangle</p>
+<p>Most of the filters are FIR (finite impulse response), however, Bessel,
+Gaussian, and Sinc are IIR (infinite impulse response). Bessel and Sinc
+are windowed (brought down to zero) with the Blackman filter.</p>
+<p>ResizeImage() was inspired by Paul Heckbert's zoom program.</p>
+<p>The format of the ResizeImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ResizeImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns, const unsigned long rows,
+ const <a class="reference external" href="../api/types.html#filtertype">FilterTypes</a> filter, const double blur,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>columns:</dt>
+<dd>The number of columns in the scaled image.</dd>
+<dt>rows:</dt>
+<dd>The number of rows in the scaled image.</dd>
+<dt>filter:</dt>
+<dd>Image filter to use.</dd>
+<dt>blur:</dt>
+<dd>The blur factor where &gt; 1 is blurry, &lt; 1 is sharp.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="sampleimage">
+<h1><a class="toc-backref" href="#id14">SampleImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SampleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *SampleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>columns:</dt>
+<dd>The number of columns in the sampled image.</dd>
+<dt>rows:</dt>
+<dd>The number of rows in the sampled image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="scaleimage">
+<h1><a class="toc-backref" href="#id15">ScaleImage</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ScaleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ScaleImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>columns:</dt>
+<dd>The number of columns in the scaled image.</dd>
+<dt>rows:</dt>
+<dd>The number of rows in the scaled image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="thumbnailimage">
+<h1><a class="toc-backref" href="#id16">ThumbnailImage</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ThumbnailImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>ThumbnailImage() changes the size of an image to the given dimensions.
+This method was designed by Bob Friesenhahn as a low cost thumbnail
+generator.</p>
+<p>The format of the ThumbnailImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ThumbnailImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const unsigned long columns,
+ const unsigned long rows, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>columns:</dt>
+<dd>The number of columns in the scaled image.</dd>
+<dt>rows:</dt>
+<dd>The number of rows in the scaled image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/resource.html b/www/api/resource.html
index ad5cff2..6d1c1bd 100644
--- a/www/api/resource.html
+++ b/www/api/resource.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="resource">
@@ -198,5 +198,10 @@ void SetMagickResourceLimit( const <a class="reference external" href="../api/ty
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/segment.html b/www/api/segment.html
index 3dba385..eab5fa7 100644
--- a/www/api/segment.html
+++ b/www/api/segment.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>segment</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="segment">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="segment-and-image-with-thresholding-using-the-fuzzy-c-means-method">Segment and image with thresholding using the fuzzy c-means method</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#segmentimage" id="id1">SegmentImage</a></li>
</ul>
@@ -95,5 +95,10 @@ causes small variations (could be noise) to be ignored.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/segment.html.orig b/www/api/segment.html.orig
new file mode 100644
index 0000000..4ca77ec
--- /dev/null
+++ b/www/api/segment.html.orig
@@ -0,0 +1,99 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>segment</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="segment">
+<h1 class="title">segment</h1>
+<h2 class="subtitle" id="segment-and-image-with-thresholding-using-the-fuzzy-c-means-method">Segment and image with thresholding using the fuzzy c-means method</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#segmentimage" id="id1">SegmentImage</a></li>
+</ul>
+</div>
+<div class="section" id="segmentimage">
+<h1><a class="toc-backref" href="#id1">SegmentImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail SegmentImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#colorspacetype">ColorspaceType</a> colorspace,
+ const unsigned int verbose, const double cluster_threshold,
+ const double smoothing_threshold );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Method 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>Specify cluster threshold as the number of pixels in each cluster must
+exceed the the cluster threshold to be considered valid. Smoothing
+threshold eliminates noise in the second derivative of the histogram.
+As the value is increased, you can expect a smoother second derivative.
+The default is 1.5.</p>
+<p>The format of the SegmentImage method is:</p>
+<pre class="literal-block">
+MagickPassFail SegmentImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#colorspacetype">ColorspaceType</a> colorspace,
+ const unsigned int verbose, const double cluster_threshold,
+ const double smoothing_threshold );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>Specifies a pointer to an Image structure; returned from
+ReadImage.</dd>
+<dt>colorspace:</dt>
+<dd>An unsigned integer value that indicates the colorspace.
+Empirical evidence suggests that distances in YUV or YIQ correspond to
+perceptual color differences more closely than do distances in RGB
+space. The image is then returned to RGB colorspace after color
+reduction.</dd>
+<dt>verbose:</dt>
+<dd>A value greater than zero prints detailed information about
+the identified classes.</dd>
+<dt>cluster_threshold:</dt>
+<dd>The minimum number of total pixels contained
+in a hexahedra before it can be considered valid (expressed as a
+percentage of total pixels). This is used to eliminate seldom
+used colors.</dd>
+<dt>smoothing_threshold:</dt>
+<dd>If the absolute value of a second derivative
+point is less than smoothing_threshold then that derivative point
+is ignored (i.e. set to 0) while evaluating zero crossings. This
+causes small variations (could be noise) to be ignored.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/shear.html b/www/api/shear.html
index ca329e9..1ef8fdd 100644
--- a/www/api/shear.html
+++ b/www/api/shear.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="shear">
@@ -189,5 +189,10 @@ ReadImage.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/shear.html.orig b/www/api/shear.html.orig
new file mode 100644
index 0000000..0bca62a
--- /dev/null
+++ b/www/api/shear.html.orig
@@ -0,0 +1,193 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>shear</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="shear">
+<h1 class="title">shear</h1>
+<h2 class="subtitle" id="rotate-image-shear-image-or-apply-a-2d-affine-transformation">Rotate image, shear image, or apply a 2D affine transformation</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#affinetransformimage" id="id7">AffineTransformImage</a></li>
+<li><a class="reference internal" href="#autoorientimage" id="id8">AutoOrientImage</a></li>
+<li><a class="reference internal" href="#rotateimage" id="id9">RotateImage</a></li>
+<li><a class="reference internal" href="#shearimage" id="id10">ShearImage</a></li>
+</ul>
+</div>
+<div class="section" id="affinetransformimage">
+<h1><a class="toc-backref" href="#id7">AffineTransformImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AffineTransformImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#affinematrix">AffineMatrix</a> *affine,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AffineTransformImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, <a class="reference external" href="../api/types.html#affinematrix">AffineMatrix</a> *affine,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>affine:</dt>
+<dd>The affine transform.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="autoorientimage">
+<h1><a class="toc-backref" href="#id8">AutoOrientImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AutoOrientImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const OrientationType current_orientation,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>AutoOrientImage() returns an image adjusted 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="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *AutoOrientImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const OrientationType current_orientation,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>current_orientation:</dt>
+<dd>Current image orientation (normally same as
+image-&gt;orientation).</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="rotateimage">
+<h1><a class="toc-backref" href="#id9">RotateImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *RotateImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double degrees,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>Method 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 color
+specified by the image background_color. RotateImage allocates the memory
+necessary for the new Image structure and returns a pointer to the new
+image.</p>
+<p>Method RotateImage is based on the paper &quot;A Fast Algorithm for General
+Raster Rotatation&quot; by Alan W. Paeth. RotateImage 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 RotateImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *RotateImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double degrees,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method RotateImage returns a pointer to the image after
+rotating. A null image is returned if there is a memory shortage.</dd>
+<dt>image:</dt>
+<dd>The image; returned from
+ReadImage.</dd>
+<dt>degrees:</dt>
+<dd>Specifies the number of degrees to rotate the image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="shearimage">
+<h1><a class="toc-backref" href="#id10">ShearImage</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ShearImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double x_shear, const double y_shear,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>Method 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 color defined by the pixel at location (0,0). ShearImage
+allocates the memory necessary for the new Image structure and returns
+a pointer to the new image.</p>
+<p>Method ShearImage is based on the paper &quot;A Fast Algorithm for General
+Raster Rotatation&quot; by Alan W. Paeth.</p>
+<p>The format of the ShearImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ShearImage( const <a class="reference external" href="../api/types.html#image">Image</a> *image, const double x_shear, const double y_shear,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method ShearImage returns a pointer to the image after
+rotating. A null image is returned if there is a memory shortage.</dd>
+<dt>image:</dt>
+<dd>The image; returned from
+ReadImage.</dd>
+<dt>x_shear, y_shear:</dt>
+<dd>Specifies the number of degrees to shear the image.</dd>
+<dt>exception:</dt>
+<dd>Return any errors or warnings in this structure.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/signature.html b/www/api/signature.html
index f573d2d..d73b3a3 100644
--- a/www/api/signature.html
+++ b/www/api/signature.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="signature">
@@ -165,5 +165,10 @@ UpdateSignature( <a class="reference external" href="../api/types.html#signature
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/signature.html.orig b/www/api/signature.html.orig
new file mode 100644
index 0000000..8fc7c40
--- /dev/null
+++ b/www/api/signature.html.orig
@@ -0,0 +1,169 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>signature</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="signature">
+<h1 class="title">signature</h1>
+<h2 class="subtitle" id="add-a-digital-signature-to-the-image">Add a digital signature to the image</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#finalizesignature" id="id9">FinalizeSignature</a></li>
+<li><a class="reference internal" href="#getsignatureinfo" id="id10">GetSignatureInfo</a></li>
+<li><a class="reference internal" href="#signatureimage" id="id11">SignatureImage</a></li>
+<li><a class="reference internal" href="#transformsignature" id="id12">TransformSignature</a></li>
+<li><a class="reference internal" href="#updatesignature" id="id13">UpdateSignature</a></li>
+</ul>
+</div>
+<div class="section" id="finalizesignature">
+<h1><a class="toc-backref" href="#id9">FinalizeSignature</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+FinalizeSignature( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Method FinalizeSignature finalizes the SHA message digest computation.</p>
+<p>The format of the FinalizeSignature method is:</p>
+<pre class="literal-block">
+FinalizeSignature( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>signature_info:</dt>
+<dd>The address of a structure of type SignatureInfo.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="getsignatureinfo">
+<h1><a class="toc-backref" href="#id10">GetSignatureInfo</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+GetSignatureInfo( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>Method GetSignatureInfo initializes the SHA message digest structure.</p>
+<p>The format of the GetSignatureInfo method is:</p>
+<pre class="literal-block">
+GetSignatureInfo( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>signature_info:</dt>
+<dd>The address of a structure of type SignatureInfo.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="signatureimage">
+<h1><a class="toc-backref" href="#id11">SignatureImage</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int SignatureImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</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="literal-block">
+unsigned int SignatureImage( <a class="reference external" href="../api/types.html#image">Image</a> *image );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="transformsignature">
+<h1><a class="toc-backref" href="#id12">TransformSignature</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+TransformSignature( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>TransformSignature() transforms the SHA message digest.</p>
+<p>The format of the TransformSignature method is:</p>
+<pre class="literal-block">
+TransformSignature( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>signature_info:</dt>
+<dd>The address of a structure of type SignatureInfo.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="updatesignature">
+<h1><a class="toc-backref" href="#id13">UpdateSignature</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+UpdateSignature( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info, const unsigned char *message,
+ const size_t length );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>UpdateSignature() updates the SHA message digest.</p>
+<p>The format of the UpdateSignature method is:</p>
+<pre class="literal-block">
+UpdateSignature( <a class="reference external" href="../api/types.html#signatureinfo">SignatureInfo</a> *signature_info, const unsigned char *message,
+ const size_t length );
+</pre>
+<dl class="docutils">
+<dt>signature_info:</dt>
+<dd>The address of a structure of type SignatureInfo.</dd>
+<dt>message:</dt>
+<dd>the message</dd>
+<dt>length:</dt>
+<dd>The length of the message.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/statistics.html b/www/api/statistics.html
index 9b41735..d40e59c 100644
--- a/www/api/statistics.html
+++ b/www/api/statistics.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="statistics">
@@ -47,8 +47,8 @@
<div class="section" id="synopsis">
<h2>Synopsis</h2>
<pre class="literal-block">
-MagickPassFail GetImageStatistics( const <a class="reference external" href="../api/types.html#image">Image</a> *image,
- ImageStatistics *statistics <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+MagickPassFail GetImageStatistics( const <a class="reference external" href="../api/types.html#image">Image</a> *image, ImageStatistics *statistics,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
</pre>
</div>
<div class="section" id="description">
@@ -61,8 +61,8 @@ the statistics in quantum units. Statistics for non-existent channels are
set to zero.</p>
<p>The format of the GetImageStatistics method is:</p>
<pre class="literal-block">
-MagickPassFail GetImageStatistics( const <a class="reference external" href="../api/types.html#image">Image</a> *image,
- ImageStatistics *statistics <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+MagickPassFail GetImageStatistics( const <a class="reference external" href="../api/types.html#image">Image</a> *image, ImageStatistics *statistics,
+ <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
</pre>
<dl class="docutils">
<dt>image:</dt>
@@ -75,5 +75,10 @@ MagickPassFail GetImageStatistics( const <a class="reference external" href="../
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/statistics.html.orig b/www/api/statistics.html.orig
new file mode 100644
index 0000000..d89ca35
--- /dev/null
+++ b/www/api/statistics.html.orig
@@ -0,0 +1,79 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>statistics</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="statistics">
+<h1 class="title">statistics</h1>
+<h2 class="subtitle" id="compute-image-statistics">Compute image statistics</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#getimagestatistics" id="id1">GetImageStatistics</a></li>
+</ul>
+</div>
+<div class="section" id="getimagestatistics">
+<h1><a class="toc-backref" href="#id1">GetImageStatistics</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail GetImageStatistics( const <a class="reference external" href="../api/types.html#image">Image</a> *image,
+ ImageStatistics *statistics <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>GetImageStatistics computes common statistics (currently maximum, minimum,
+mean and standard deviation) for the available image channels. The
+per-channel values are returned in an ImageStatistics structure. Statistics
+are normalized to the range 0.0 to 1.0. Multiply values by MaxRGB to obtain
+the statistics in quantum units. Statistics for non-existent channels are
+set to zero.</p>
+<p>The format of the GetImageStatistics method is:</p>
+<pre class="literal-block">
+MagickPassFail GetImageStatistics( const <a class="reference external" href="../api/types.html#image">Image</a> *image,
+ ImageStatistics *statistics <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>statistics:</dt>
+<dd>An ImageStatistics structure to update with statistics.</dd>
+<dt>exception:</dt>
+<dd>Any errors are reported here.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/texture.html b/www/api/texture.html
index 9640590..760111e 100644
--- a/www/api/texture.html
+++ b/www/api/texture.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="texture">
@@ -102,5 +102,10 @@ MagickPassFail TextureImage( <a class="reference external" href="../api/types.ht
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/texture.html.orig b/www/api/texture.html.orig
new file mode 100644
index 0000000..9202069
--- /dev/null
+++ b/www/api/texture.html.orig
@@ -0,0 +1,106 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>texture</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="texture">
+<h1 class="title">texture</h1>
+<h2 class="subtitle" id="image-texture-functions">Image texture functions</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#constitutetextureimage" id="id3">ConstituteTextureImage</a></li>
+<li><a class="reference internal" href="#textureimage" id="id4">TextureImage</a></li>
+</ul>
+</div>
+<div class="section" id="constitutetextureimage">
+<h1><a class="toc-backref" href="#id3">ConstituteTextureImage</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ConstituteTextureImage( unsigned long columns, unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *texture, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>ConstituteTextureImage() returns a new image canvas based on repeatedly
+tiling the texture image across and down the new image canvas. The
+returned image properties are similar to the texture image properties.</p>
+<p>The format of the TextureImage method is:</p>
+<pre class="literal-block">
+<a class="reference external" href="../api/types.html#image">Image</a> *ConstituteTextureImage( unsigned long columns, unsigned long rows,
+ const <a class="reference external" href="../api/types.html#image">Image</a> *texture, <a class="reference external" href="../api/types.html#exceptioninfo">ExceptionInfo</a> *exception );
+</pre>
+<dl class="docutils">
+<dt>columns:</dt>
+<dd>The number of columns in the new image.</dd>
+<dt>rows:</dt>
+<dd>The number of rows in the new image.</dd>
+<dt>texture:</dt>
+<dd>The texture image to layer on the background.</dd>
+<dt>exceptions:</dt>
+<dd>Any errors are reported here.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="textureimage">
+<h1><a class="toc-backref" href="#id4">TextureImage</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+MagickPassFail TextureImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *texture );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>TextureImage() repeatedly tiles the texture image across and down the image
+canvas. If the image canvas includes a matte channel, then the tile is
+alpha-composited &quot;under&quot; the image and the matte channel is removed.
+MagickFail is returned if an error is encountered.</p>
+<p>The format of the TextureImage method is:</p>
+<pre class="literal-block">
+MagickPassFail TextureImage( <a class="reference external" href="../api/types.html#image">Image</a> *image, const <a class="reference external" href="../api/types.html#image">Image</a> *texture );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>image:</dt>
+<dd>The image.</dd>
+<dt>texture:</dt>
+<dd>This image is the texture to layer on the background.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/transform.html b/www/api/transform.html
index bc9ed7b..bdc3b7b 100644
--- a/www/api/transform.html
+++ b/www/api/transform.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>transform</title>
<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="transform">
@@ -37,7 +37,7 @@
<h2 class="subtitle" id="crop-flip-flop-roll-coalesce-etc">Crop, flip, flop, roll, coalesce, etc.</h2>
<div class="contents topic" id="contents">
-<p class="topic-title first">Contents</p>
+<p class="topic-title">Contents</p>
<ul class="simple">
<li><a class="reference internal" href="#chopimage" id="id23">ChopImage</a></li>
<li><a class="reference internal" href="#coalesceimages" id="id24">CoalesceImages</a></li>
@@ -385,7 +385,8 @@ MagickPassFail TransformImage( <a class="reference external" href="../api/types.
</pre>
<dl class="docutils">
<dt>image:</dt>
-<dd>The image The transformed image is returned as this parameter.</dd>
+<dd>The image to transform. The resulting transformed image is
+returned via this parameter.</dd>
<dt>crop_geometry:</dt>
<dd>A crop geometry string. This geometry defines a
subregion of the image to crop.</dd>
@@ -396,5 +397,10 @@ final size of the image.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/types.html b/www/api/types.html
index ac7104b..432fb07 100644
--- a/www/api/types.html
+++ b/www/api/types.html
@@ -3,7 +3,7 @@
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="generator" content="Docutils 0.15.2: http://docutils.sourceforge.net/" />
+<meta name="generator" content="Docutils 0.16: http://docutils.sourceforge.net/" />
<title>GraphicsMagick Types</title>
<link rel="stylesheet" href="../docutils-articles.css" type="text/css" />
</head>
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="graphicsmagick-types">
@@ -63,39 +63,42 @@
<li><a class="reference internal" href="#filtertypes" id="id21">FilterTypes</a></li>
<li><a class="reference internal" href="#frameinfo" id="id22">FrameInfo</a></li>
<li><a class="reference internal" href="#gravitytype" id="id23">GravityType</a></li>
-<li><a class="reference internal" href="#image" id="id24">Image</a></li>
-<li><a class="reference internal" href="#imageinfo" id="id25">ImageInfo</a></li>
-<li><a class="reference internal" href="#imagetype" id="id26">ImageType</a></li>
-<li><a class="reference internal" href="#indexpacket" id="id27">IndexPacket</a></li>
-<li><a class="reference internal" href="#interlacetype" id="id28">InterlaceType</a></li>
-<li><a class="reference internal" href="#layertype" id="id29">LayerType</a></li>
-<li><a class="reference internal" href="#magickinfo" id="id30">MagickInfo</a></li>
-<li><a class="reference internal" href="#monitorhandler" id="id31">MonitorHandler</a></li>
-<li><a class="reference internal" href="#montageinfo" id="id32">MontageInfo</a></li>
-<li><a class="reference internal" href="#noisetype" id="id33">NoiseType</a></li>
-<li><a class="reference internal" href="#orientationtype" id="id34">OrientationType</a></li>
-<li><a class="reference internal" href="#paintmethod" id="id35">PaintMethod</a></li>
-<li><a class="reference internal" href="#pixelpacket" id="id36">PixelPacket</a></li>
-<li><a class="reference internal" href="#pointinfo" id="id37">PointInfo</a></li>
-<li><a class="reference internal" href="#profileinfo" id="id38">ProfileInfo</a></li>
-<li><a class="reference internal" href="#quantizeinfo" id="id39">QuantizeInfo</a></li>
-<li><a class="reference internal" href="#quantum" id="id40">Quantum</a></li>
-<li><a class="reference internal" href="#quantumtype" id="id41">QuantumType</a></li>
-<li><a class="reference internal" href="#rectangleinfo" id="id42">RectangleInfo</a></li>
-<li><a class="reference internal" href="#registrytype" id="id43">RegistryType</a></li>
-<li><a class="reference internal" href="#renderingintent" id="id44">RenderingIntent</a></li>
-<li><a class="reference internal" href="#resolutiontype" id="id45">ResolutionType</a></li>
-<li><a class="reference internal" href="#resourcetype" id="id46">ResourceType</a></li>
-<li><a class="reference internal" href="#segmentinfo" id="id47">SegmentInfo</a></li>
-<li><a class="reference internal" href="#signatureinfo" id="id48">SignatureInfo</a></li>
-<li><a class="reference internal" href="#storagetype" id="id49">StorageType</a></li>
-<li><a class="reference internal" href="#streamhandler" id="id50">StreamHandler</a></li>
-<li><a class="reference internal" href="#stretchtype" id="id51">StretchType</a></li>
-<li><a class="reference internal" href="#styletype" id="id52">StyleType</a></li>
-<li><a class="reference internal" href="#typemetric" id="id53">TypeMetric</a></li>
-<li><a class="reference internal" href="#viewinfo" id="id54">ViewInfo</a></li>
-<li><a class="reference internal" href="#virtualpixelmethod" id="id55">VirtualPixelMethod</a></li>
-<li><a class="reference internal" href="#magickxresourceinfo" id="id56">MagickXResourceInfo</a></li>
+<li><a class="reference internal" href="#logeventtype" id="id24">LogEventType</a></li>
+<li><a class="reference internal" href="#logmethod" id="id25">LogMethod</a></li>
+<li><a class="reference internal" href="#logoutputtype" id="id26">LogOutputType</a></li>
+<li><a class="reference internal" href="#image" id="id27">Image</a></li>
+<li><a class="reference internal" href="#imageinfo" id="id28">ImageInfo</a></li>
+<li><a class="reference internal" href="#imagetype" id="id29">ImageType</a></li>
+<li><a class="reference internal" href="#indexpacket" id="id30">IndexPacket</a></li>
+<li><a class="reference internal" href="#interlacetype" id="id31">InterlaceType</a></li>
+<li><a class="reference internal" href="#layertype" id="id32">LayerType</a></li>
+<li><a class="reference internal" href="#magickinfo" id="id33">MagickInfo</a></li>
+<li><a class="reference internal" href="#monitorhandler" id="id34">MonitorHandler</a></li>
+<li><a class="reference internal" href="#montageinfo" id="id35">MontageInfo</a></li>
+<li><a class="reference internal" href="#noisetype" id="id36">NoiseType</a></li>
+<li><a class="reference internal" href="#orientationtype" id="id37">OrientationType</a></li>
+<li><a class="reference internal" href="#paintmethod" id="id38">PaintMethod</a></li>
+<li><a class="reference internal" href="#pixelpacket" id="id39">PixelPacket</a></li>
+<li><a class="reference internal" href="#pointinfo" id="id40">PointInfo</a></li>
+<li><a class="reference internal" href="#profileinfo" id="id41">ProfileInfo</a></li>
+<li><a class="reference internal" href="#quantizeinfo" id="id42">QuantizeInfo</a></li>
+<li><a class="reference internal" href="#quantum" id="id43">Quantum</a></li>
+<li><a class="reference internal" href="#quantumtype" id="id44">QuantumType</a></li>
+<li><a class="reference internal" href="#rectangleinfo" id="id45">RectangleInfo</a></li>
+<li><a class="reference internal" href="#registrytype" id="id46">RegistryType</a></li>
+<li><a class="reference internal" href="#renderingintent" id="id47">RenderingIntent</a></li>
+<li><a class="reference internal" href="#resolutiontype" id="id48">ResolutionType</a></li>
+<li><a class="reference internal" href="#resourcetype" id="id49">ResourceType</a></li>
+<li><a class="reference internal" href="#segmentinfo" id="id50">SegmentInfo</a></li>
+<li><a class="reference internal" href="#signatureinfo" id="id51">SignatureInfo</a></li>
+<li><a class="reference internal" href="#storagetype" id="id52">StorageType</a></li>
+<li><a class="reference internal" href="#streamhandler" id="id53">StreamHandler</a></li>
+<li><a class="reference internal" href="#stretchtype" id="id54">StretchType</a></li>
+<li><a class="reference internal" href="#styletype" id="id55">StyleType</a></li>
+<li><a class="reference internal" href="#typemetric" id="id56">TypeMetric</a></li>
+<li><a class="reference internal" href="#viewinfo" id="id57">ViewInfo</a></li>
+<li><a class="reference internal" href="#virtualpixelmethod" id="id58">VirtualPixelMethod</a></li>
+<li><a class="reference internal" href="#magickxresourceinfo" id="id59">MagickXResourceInfo</a></li>
</ul>
</div>
<div class="section" id="affinematrix">
@@ -501,7 +504,7 @@ layer in composite image. The other layers are copied untouched.</td>
encoding an image. Be aware that most image types only support a sub-set
of the available compression types. If the compression type specified is
incompatable with the image, GraphicsMagick selects a compression type
-compatable with the image type.</p>
+compatable with the image type, which might be no compression at all.</p>
<table border="1" class="docutils">
<caption>CompressionType</caption>
<colgroup>
@@ -543,6 +546,24 @@ Huffman coding) as used by bzip2 utilities</td>
<tr><td>ZipCompression</td>
<td>Lempel-Ziv compression (LZ77) as used in PKZIP and GNU gzip.</td>
</tr>
+<tr><td>LZMACompression</td>
+<td>LZMA - Lempel-Ziv-Markov chain algorithm</td>
+</tr>
+<tr><td>JPEG2000Compression</td>
+<td>JPEG 2000 - ISO/IEC std 15444-1</td>
+</tr>
+<tr><td>JBIG1Compression</td>
+<td>JBIG v1 - ISO/IEC std 11544 / ITU-T rec T.82</td>
+</tr>
+<tr><td>JBIG2Compression</td>
+<td>JBIG v2 - ISO/IEC std 14492 / ITU-T rec T.88</td>
+</tr>
+<tr><td>ZSTDCompression</td>
+<td>Facebook's Zstandard/Zstd</td>
+</tr>
+<tr><td>WebPCompression</td>
+<td>Google's WebP</td>
+</tr>
</tbody>
</table>
</div>
@@ -1119,8 +1140,144 @@ position an object. A common default for gravity is NorthWestGravity.</p>
</tbody>
</table>
</div>
+<div class="section" id="logeventtype">
+<h1><a class="toc-backref" href="#id24">LogEventType</a></h1>
+<p>LogEventType specifies the log event type to match one or more log
+areas. Although defined as an enum type, the values are based on
+unsigned integer flags value with one mask bit set, more than one mask
+bit set, or all of the assigned mask bits set. Values are boolean
+ORed together to represent multiple event types.</p>
+<table border="1" class="docutils">
+<caption>LogEventType</caption>
+<colgroup>
+<col width="27%" />
+<col width="73%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedEventMask</td>
+<td>No events specified</td>
+</tr>
+<tr><td>NoEventsMask</td>
+<td>No events specified</td>
+</tr>
+<tr><td>ConfigureEventMask</td>
+<td>Configuration event (related to initialization or shutdown)</td>
+</tr>
+<tr><td>AnnotateEventMask</td>
+<td>Annotation event (text drawing)</td>
+</tr>
+<tr><td>RenderEventMask</td>
+<td>Rendering event (vector drawing)</td>
+</tr>
+<tr><td>TransformEventMask</td>
+<td>Image transformation event (e.g. cropping)</td>
+</tr>
+<tr><td>LocaleEventMask</td>
+<td>Locale event (internationalization)</td>
+</tr>
+<tr><td>CoderEventMask</td>
+<td>Coder event (file decode or encode)</td>
+</tr>
+<tr><td>X11EventMask</td>
+<td>X11 event (event related to use of X11)</td>
+</tr>
+<tr><td>CacheEventMask</td>
+<td>Pixel cache event (pixel storage in memory or on disk)</td>
+</tr>
+<tr><td>BlobEventMask</td>
+<td>Blob event (I/O to/from memory or a file)</td>
+</tr>
+<tr><td>DeprecateEventMask</td>
+<td>Deprecation event (use of a function which will be removed)</td>
+</tr>
+<tr><td>UserEventMask</td>
+<td>User event (event allowed for the user, not otherwise used)</td>
+</tr>
+<tr><td>ResourceEventMask</td>
+<td>Resource event (resource limit assignment, allocation/deallocation)</td>
+</tr>
+<tr><td>TemporaryFileEventMask</td>
+<td>Temporary file event (temporary file created or removed)</td>
+</tr>
+<tr><td>ExceptionEventMask</td>
+<td>Exception event (a warning or error was reported into ExceptionInfo)</td>
+</tr>
+<tr><td>OptionEventMask</td>
+<td>Option event (something related to a user provided option)</td>
+</tr>
+<tr><td>InformationEventMask</td>
+<td>Information event</td>
+</tr>
+<tr><td>WarningEventMask</td>
+<td>Warning event (a warning was reported into ExceptionInfo)</td>
+</tr>
+<tr><td>ErrorEventMask</td>
+<td>Error event (an error was reported into ExceptionInfo)</td>
+</tr>
+<tr><td>FatalErrorEventMask</td>
+<td>Fatal error event (a fatal error was reported into ExceptionInfo)</td>
+</tr>
+<tr><td>AllEventsMask</td>
+<td>All events (matches any/all events)</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="logmethod">
+<h1><a class="toc-backref" href="#id25">LogMethod</a></h1>
+<p>LogMethod is a call-back function type in the form:</p>
+<pre class="literal-block">
+typedef void (*LogMethod)(const ExceptionType type,const char *text)
+</pre>
+</div>
+<div class="section" id="logoutputtype">
+<h1><a class="toc-backref" href="#id26">LogOutputType</a></h1>
+<p>LogOutputType specifies how/where logging (&quot;tracing&quot;) output is to be directed.</p>
+<table border="1" class="docutils">
+<caption>LogOutputType</caption>
+<colgroup>
+<col width="27%" />
+<col width="73%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>DisabledOutput</td>
+<td>Reporting disabled</td>
+</tr>
+<tr><td>UndefinedOutput</td>
+<td>Reporting disabled</td>
+</tr>
+<tr><td>StdoutOutput</td>
+<td>Log to stdout in &quot;human readable&quot; format</td>
+</tr>
+<tr><td>StderrOutput</td>
+<td>Log to stderr in &quot;human readable&quot; format</td>
+</tr>
+<tr><td>XMLFileOutput</td>
+<td>Log to a file in an XML format</td>
+</tr>
+<tr><td>TXTFileOutput</td>
+<td>Log to a file in a text format</td>
+</tr>
+<tr><td>Win32DebugOutput</td>
+<td>Windows, Output events to the application/system debugger.</td>
+</tr>
+<tr><td>Win32EventlogOutput</td>
+<td>Windows, Output events to the Application event log.</td>
+</tr>
+<tr><td>MethodOutput</td>
+<td>Log by calling registered C-language callback function</td>
+</tr>
+</tbody>
+</table>
+</div>
<div class="section" id="image">
-<h1><a class="toc-backref" href="#id24">Image</a></h1>
+<h1><a class="toc-backref" href="#id27">Image</a></h1>
<p>The Image structure represents an GraphicsMagick image. It is initially
allocated by AllocateImage() and deallocated by DestroyImage(). The
functions ReadImage(), ReadImages(), BlobToImage() and CreateImage()
@@ -1415,7 +1572,7 @@ by GetNumberColors().</td>
</table>
</div>
<div class="section" id="imageinfo">
-<h1><a class="toc-backref" href="#id25">ImageInfo</a></h1>
+<h1><a class="toc-backref" href="#id28">ImageInfo</a></h1>
<p>The ImageInfo structure is used to supply option information to the
functions AllocateImage(), AnimateImages(), BlobToImage(),
CloneAnnotateInfo(), DisplayImages(), GetAnnotateInfo(), ImageToBlob(),
@@ -1636,7 +1793,7 @@ JBIG, or JPEG.</td>
</table>
</div>
<div class="section" id="imagetype">
-<h1><a class="toc-backref" href="#id26">ImageType</a></h1>
+<h1><a class="toc-backref" href="#id29">ImageType</a></h1>
<p>ImageType indicates the type classification of the image.</p>
<table border="1" class="docutils">
<caption>ImageType</caption>
@@ -1676,7 +1833,7 @@ JBIG, or JPEG.</td>
</table>
</div>
<div class="section" id="indexpacket">
-<h1><a class="toc-backref" href="#id27">IndexPacket</a></h1>
+<h1><a class="toc-backref" href="#id30">IndexPacket</a></h1>
<p>IndexPacket is the type used for a colormap index. An array of type
IndexPacket is used to represent an image in PseudoClass type. Currently
supported IndexPacket underlying types are 'unsigned char' and 'unsigned
@@ -1684,7 +1841,7 @@ short'. The type is selected at build time according to the QuantumDepth
setting.</p>
</div>
<div class="section" id="interlacetype">
-<h1><a class="toc-backref" href="#id28">InterlaceType</a></h1>
+<h1><a class="toc-backref" href="#id31">InterlaceType</a></h1>
<p>InterlaceType specifies the ordering of the red, green, and blue pixel
information in the image. Interlacing is usually used to make image
information available to the user faster by taking advantage of the space
@@ -1723,7 +1880,7 @@ individual files (e.g. image.R, image.G, and image.B)</td>
</table>
</div>
<div class="section" id="layertype">
-<h1><a class="toc-backref" href="#id29">LayerType</a></h1>
+<h1><a class="toc-backref" href="#id32">LayerType</a></h1>
<p>LayerType is used as an argument when doing color separations. Use
LayerType when extracting a layer from an image. MatteLayer is useful for
extracting the opacity values from an image.</p>
@@ -1756,7 +1913,7 @@ extracting the opacity values from an image.</p>
</table>
</div>
<div class="section" id="magickinfo">
-<h1><a class="toc-backref" href="#id30">MagickInfo</a></h1>
+<h1><a class="toc-backref" href="#id33">MagickInfo</a></h1>
<p>The MagickInfo structure is used by GraphicsMagick to register support
for an image format. The MagickInfo structure is allocated with default
parameters by calling SetMagickInfo(). Image formats are registered by
@@ -1929,7 +2086,7 @@ ImageInfo).</td>
</table>
</div>
<div class="section" id="monitorhandler">
-<h1><a class="toc-backref" href="#id31">MonitorHandler</a></h1>
+<h1><a class="toc-backref" href="#id34">MonitorHandler</a></h1>
<p>MonitorHandler is the function type to be used for the progress monitor
callback. Its definition is as follows:</p>
<pre class="literal-block">
@@ -1985,7 +2142,7 @@ the user.</td>
</table>
</div>
<div class="section" id="montageinfo">
-<h1><a class="toc-backref" href="#id32">MontageInfo</a></h1>
+<h1><a class="toc-backref" href="#id35">MontageInfo</a></h1>
<pre class="literal-block">
typedef struct _MontageInfo
{
@@ -2025,7 +2182,7 @@ typedef struct _MontageInfo
</pre>
</div>
<div class="section" id="noisetype">
-<h1><a class="toc-backref" href="#id33">NoiseType</a></h1>
+<h1><a class="toc-backref" href="#id36">NoiseType</a></h1>
<p>NoiseType is used as an argument to select the type of noise to be added
to the image.</p>
<table border="1" class="docutils">
@@ -2060,7 +2217,7 @@ to the image.</p>
</table>
</div>
<div class="section" id="orientationtype">
-<h1><a class="toc-backref" href="#id34">OrientationType</a></h1>
+<h1><a class="toc-backref" href="#id37">OrientationType</a></h1>
<p>OrientationType specifies the orientation of the image. Useful for when
the image is produced via a different ordinate system, the camera was
turned on its side, or the page was scanned sideways.</p>
@@ -2116,7 +2273,7 @@ turned on its side, or the page was scanned sideways.</p>
</table>
</div>
<div class="section" id="paintmethod">
-<h1><a class="toc-backref" href="#id35">PaintMethod</a></h1>
+<h1><a class="toc-backref" href="#id38">PaintMethod</a></h1>
<p>PaintMethod specifies how pixel colors are to be replaced in the image.
It is used to select the pixel-filling algorithm employed.</p>
<table border="1" class="docutils">
@@ -2150,7 +2307,7 @@ border color.</td>
</table>
</div>
<div class="section" id="pixelpacket">
-<h1><a class="toc-backref" href="#id36">PixelPacket</a></h1>
+<h1><a class="toc-backref" href="#id39">PixelPacket</a></h1>
<p>The PixelPacket structure is used to represent DirectClass color pixels
in GraphicsMagick. If the image is indicated as a PseudoClass image, its
DirectClass representation is only valid immediately after calling
@@ -2217,7 +2374,7 @@ RGBColorspace except for CMYKColorspace.</li>
</blockquote>
</div>
<div class="section" id="pointinfo">
-<h1><a class="toc-backref" href="#id37">PointInfo</a></h1>
+<h1><a class="toc-backref" href="#id40">PointInfo</a></h1>
<p>The PointInfo structure is used by the ChromaticityInfo structure to
specify chromaticity point values. This defines the boundaries and gammut
(range of included color) of the colorspace.</p>
@@ -2250,7 +2407,7 @@ specify chromaticity point values. This defines the boundaries and gammut
</table>
</div>
<div class="section" id="profileinfo">
-<h1><a class="toc-backref" href="#id38">ProfileInfo</a></h1>
+<h1><a class="toc-backref" href="#id41">ProfileInfo</a></h1>
<p>The ProfileInfo structure is used to represent ICC or IPCT profiles in
GraphicsMagick (stored as an opaque BLOB).</p>
<p>The members of the ProfileInfo structure are shown in the following table:</p>
@@ -2278,7 +2435,7 @@ GraphicsMagick (stored as an opaque BLOB).</p>
</table>
</div>
<div class="section" id="quantizeinfo">
-<h1><a class="toc-backref" href="#id39">QuantizeInfo</a></h1>
+<h1><a class="toc-backref" href="#id42">QuantizeInfo</a></h1>
<p>The QuantizeInfo structure is used to support passing parameters to
GraphicsMagick's color quantization (reduction) functions. Color
quantization is the process of analyzing one or more images, and
@@ -2371,13 +2528,13 @@ determined through experimentation.</td>
</table>
</div>
<div class="section" id="quantum">
-<h1><a class="toc-backref" href="#id40">Quantum</a></h1>
+<h1><a class="toc-backref" href="#id43">Quantum</a></h1>
<p>Quantum is the base type ('unsigned char', 'unsigned short', 'unsigned
int') used to store a pixel component (e.g. 'R' is one pixel component of
an RGB pixel).</p>
</div>
<div class="section" id="quantumtype">
-<h1><a class="toc-backref" href="#id41">QuantumType</a></h1>
+<h1><a class="toc-backref" href="#id44">QuantumType</a></h1>
<p>QuantumType is used to indicate the source or destination format of
entire pixels, or components of pixels (&quot;Quantums&quot;) while they are being
read, or written to, a pixel cache. The validity of these format
@@ -2476,7 +2633,7 @@ Image depth (eight or sixteen bits).</p>
</table>
</div>
<div class="section" id="rectangleinfo">
-<h1><a class="toc-backref" href="#id42">RectangleInfo</a></h1>
+<h1><a class="toc-backref" href="#id45">RectangleInfo</a></h1>
<p>The RectangleInfo structure is used to represent positioning information
in GraphicsMagick.</p>
<p>The members of the RectangleInfo structure are shown in the following
@@ -2513,7 +2670,7 @@ table:</p>
</table>
</div>
<div class="section" id="registrytype">
-<h1><a class="toc-backref" href="#id43">RegistryType</a></h1>
+<h1><a class="toc-backref" href="#id46">RegistryType</a></h1>
<pre class="literal-block">
typedef enum
{
@@ -2524,7 +2681,7 @@ typedef enum
</pre>
</div>
<div class="section" id="renderingintent">
-<h1><a class="toc-backref" href="#id44">RenderingIntent</a></h1>
+<h1><a class="toc-backref" href="#id47">RenderingIntent</a></h1>
<p>Rendering intent is a concept defined by ICC Spec ICC.1:1998-09, &quot;File
Format for Color Profiles&quot;. GraphicsMagick uses RenderingIntent in order
to support ICC Color Profiles.</p>
@@ -2566,7 +2723,7 @@ but colorimetric accuracy might not be preserved.</td>
</table>
</div>
<div class="section" id="resolutiontype">
-<h1><a class="toc-backref" href="#id45">ResolutionType</a></h1>
+<h1><a class="toc-backref" href="#id48">ResolutionType</a></h1>
<p>By default, GraphicsMagick defines resolutions in pixels per inch.
ResolutionType provides a means to adjust this.</p>
<table border="1" class="docutils">
@@ -2594,7 +2751,7 @@ centimeter (metric units).</td>
</table>
</div>
<div class="section" id="resourcetype">
-<h1><a class="toc-backref" href="#id46">ResourceType</a></h1>
+<h1><a class="toc-backref" href="#id49">ResourceType</a></h1>
<pre class="literal-block">
typedef enum
{
@@ -2607,7 +2764,7 @@ typedef enum
</pre>
</div>
<div class="section" id="segmentinfo">
-<h1><a class="toc-backref" href="#id47">SegmentInfo</a></h1>
+<h1><a class="toc-backref" href="#id50">SegmentInfo</a></h1>
<pre class="literal-block">
typedef struct _SegmentInfo
{
@@ -2620,7 +2777,7 @@ typedef struct _SegmentInfo
</pre>
</div>
<div class="section" id="signatureinfo">
-<h1><a class="toc-backref" href="#id48">SignatureInfo</a></h1>
+<h1><a class="toc-backref" href="#id51">SignatureInfo</a></h1>
<pre class="literal-block">
typedef struct _SignatureInfo
{
@@ -2638,7 +2795,7 @@ typedef struct _SignatureInfo
</pre>
</div>
<div class="section" id="storagetype">
-<h1><a class="toc-backref" href="#id49">StorageType</a></h1>
+<h1><a class="toc-backref" href="#id52">StorageType</a></h1>
<pre class="literal-block">
typedef enum
{
@@ -2652,14 +2809,14 @@ typedef enum
</pre>
</div>
<div class="section" id="streamhandler">
-<h1><a class="toc-backref" href="#id50">StreamHandler</a></h1>
+<h1><a class="toc-backref" href="#id53">StreamHandler</a></h1>
<pre class="literal-block">
typedef unsigned int
(*StreamHandler)(const Image *,const void *,const size_t);
</pre>
</div>
<div class="section" id="stretchtype">
-<h1><a class="toc-backref" href="#id51">StretchType</a></h1>
+<h1><a class="toc-backref" href="#id54">StretchType</a></h1>
<pre class="literal-block">
typedef enum
{
@@ -2677,7 +2834,7 @@ typedef enum
</pre>
</div>
<div class="section" id="styletype">
-<h1><a class="toc-backref" href="#id52">StyleType</a></h1>
+<h1><a class="toc-backref" href="#id55">StyleType</a></h1>
<pre class="literal-block">
typedef enum
{
@@ -2689,7 +2846,7 @@ typedef enum
</pre>
</div>
<div class="section" id="typemetric">
-<h1><a class="toc-backref" href="#id53">TypeMetric</a></h1>
+<h1><a class="toc-backref" href="#id56">TypeMetric</a></h1>
<pre class="literal-block">
typedef struct _TypeMetric
{
@@ -2713,7 +2870,7 @@ typedef struct _TypeMetric
</pre>
</div>
<div class="section" id="viewinfo">
-<h1><a class="toc-backref" href="#id54">ViewInfo</a></h1>
+<h1><a class="toc-backref" href="#id57">ViewInfo</a></h1>
<p>ViewInfo represents a handle to a pixel view, which represents a uniquely
selectable rectangular region of pixels. The only limit on the number of
views is the amount of available memory. Each Image contains a collection
@@ -2724,7 +2881,7 @@ typedef void *ViewInfo;
</pre>
</div>
<div class="section" id="virtualpixelmethod">
-<h1><a class="toc-backref" href="#id55">VirtualPixelMethod</a></h1>
+<h1><a class="toc-backref" href="#id58">VirtualPixelMethod</a></h1>
<pre class="literal-block">
typedef enum
{
@@ -2737,7 +2894,7 @@ typedef enum
</pre>
</div>
<div class="section" id="magickxresourceinfo">
-<h1><a class="toc-backref" href="#id56">MagickXResourceInfo</a></h1>
+<h1><a class="toc-backref" href="#id59">MagickXResourceInfo</a></h1>
<pre class="literal-block">
typedef struct _XResourceInfo
{
@@ -2836,9 +2993,12 @@ typedef struct _XResourceInfo
home_directory[MaxTextExtent];
} XResourceInfo;
</pre>
-<hr class="docutils" />
-<p>Copyright © GraphicsMagick Group 2002 - 2020</p>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/types.html.orig b/www/api/types.html.orig
new file mode 100644
index 0000000..6b63ac9
--- /dev/null
+++ b/www/api/types.html.orig
@@ -0,0 +1,2844 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>GraphicsMagick Types</title>
+<link rel="stylesheet" href="../docutils-articles.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="graphicsmagick-types">
+<h1 class="title">GraphicsMagick Types</h1>
+
+<!-- -*- mode: rst -*- -->
+<!-- This text is in reStucturedText format, so it may look a bit odd. -->
+<!-- See http://docutils.sourceforge.net/rst.html for details. -->
+<div class="contents local topic" id="contents">
+<ul class="simple">
+<li><a class="reference internal" href="#affinematrix" id="id1">AffineMatrix</a></li>
+<li><a class="reference internal" href="#blobinfo" id="id2">BlobInfo</a></li>
+<li><a class="reference internal" href="#cache" id="id3">Cache</a></li>
+<li><a class="reference internal" href="#channeltype" id="id4">ChannelType</a></li>
+<li><a class="reference internal" href="#chromaticityinfo" id="id5">ChromaticityInfo</a></li>
+<li><a class="reference internal" href="#classtype" id="id6">ClassType</a></li>
+<li><a class="reference internal" href="#clippathunits" id="id7">ClipPathUnits</a></li>
+<li><a class="reference internal" href="#colorpacket" id="id8">ColorPacket</a></li>
+<li><a class="reference internal" href="#colorspacetype" id="id9">ColorspaceType</a></li>
+<li><a class="reference internal" href="#compliancetype" id="id10">ComplianceType</a></li>
+<li><a class="reference internal" href="#compositeoperator" id="id11">CompositeOperator</a></li>
+<li><a class="reference internal" href="#compressiontype" id="id12">CompressionType</a></li>
+<li><a class="reference internal" href="#decorationtype" id="id13">DecorationType</a></li>
+<li><a class="reference internal" href="#drawcontext" id="id14">DrawContext</a></li>
+<li><a class="reference internal" href="#drawinfo" id="id15">DrawInfo</a></li>
+<li><a class="reference internal" href="#endiantype" id="id16">EndianType</a></li>
+<li><a class="reference internal" href="#errorhandler" id="id17">ErrorHandler</a></li>
+<li><a class="reference internal" href="#exceptioninfo" id="id18">ExceptionInfo</a></li>
+<li><a class="reference internal" href="#exceptiontype" id="id19">ExceptionType</a></li>
+<li><a class="reference internal" href="#fillrule" id="id20">FillRule</a></li>
+<li><a class="reference internal" href="#filtertypes" id="id21">FilterTypes</a></li>
+<li><a class="reference internal" href="#frameinfo" id="id22">FrameInfo</a></li>
+<li><a class="reference internal" href="#gravitytype" id="id23">GravityType</a></li>
+<li><a class="reference internal" href="#image" id="id24">Image</a></li>
+<li><a class="reference internal" href="#imageinfo" id="id25">ImageInfo</a></li>
+<li><a class="reference internal" href="#imagetype" id="id26">ImageType</a></li>
+<li><a class="reference internal" href="#indexpacket" id="id27">IndexPacket</a></li>
+<li><a class="reference internal" href="#interlacetype" id="id28">InterlaceType</a></li>
+<li><a class="reference internal" href="#layertype" id="id29">LayerType</a></li>
+<li><a class="reference internal" href="#magickinfo" id="id30">MagickInfo</a></li>
+<li><a class="reference internal" href="#monitorhandler" id="id31">MonitorHandler</a></li>
+<li><a class="reference internal" href="#montageinfo" id="id32">MontageInfo</a></li>
+<li><a class="reference internal" href="#noisetype" id="id33">NoiseType</a></li>
+<li><a class="reference internal" href="#orientationtype" id="id34">OrientationType</a></li>
+<li><a class="reference internal" href="#paintmethod" id="id35">PaintMethod</a></li>
+<li><a class="reference internal" href="#pixelpacket" id="id36">PixelPacket</a></li>
+<li><a class="reference internal" href="#pointinfo" id="id37">PointInfo</a></li>
+<li><a class="reference internal" href="#profileinfo" id="id38">ProfileInfo</a></li>
+<li><a class="reference internal" href="#quantizeinfo" id="id39">QuantizeInfo</a></li>
+<li><a class="reference internal" href="#quantum" id="id40">Quantum</a></li>
+<li><a class="reference internal" href="#quantumtype" id="id41">QuantumType</a></li>
+<li><a class="reference internal" href="#rectangleinfo" id="id42">RectangleInfo</a></li>
+<li><a class="reference internal" href="#registrytype" id="id43">RegistryType</a></li>
+<li><a class="reference internal" href="#renderingintent" id="id44">RenderingIntent</a></li>
+<li><a class="reference internal" href="#resolutiontype" id="id45">ResolutionType</a></li>
+<li><a class="reference internal" href="#resourcetype" id="id46">ResourceType</a></li>
+<li><a class="reference internal" href="#segmentinfo" id="id47">SegmentInfo</a></li>
+<li><a class="reference internal" href="#signatureinfo" id="id48">SignatureInfo</a></li>
+<li><a class="reference internal" href="#storagetype" id="id49">StorageType</a></li>
+<li><a class="reference internal" href="#streamhandler" id="id50">StreamHandler</a></li>
+<li><a class="reference internal" href="#stretchtype" id="id51">StretchType</a></li>
+<li><a class="reference internal" href="#styletype" id="id52">StyleType</a></li>
+<li><a class="reference internal" href="#typemetric" id="id53">TypeMetric</a></li>
+<li><a class="reference internal" href="#viewinfo" id="id54">ViewInfo</a></li>
+<li><a class="reference internal" href="#virtualpixelmethod" id="id55">VirtualPixelMethod</a></li>
+<li><a class="reference internal" href="#magickxresourceinfo" id="id56">MagickXResourceInfo</a></li>
+</ul>
+</div>
+<div class="section" id="affinematrix">
+<h1><a class="toc-backref" href="#id1">AffineMatrix</a></h1>
+<p>AffineMatrix defines a 2D affine matrix transform.</p>
+<pre class="literal-block">
+typedef struct _AffineMatrix
+{
+ double
+ sx,
+ rx,
+ ry,
+ sy,
+ tx,
+ ty;
+} AffineMatrix;
+</pre>
+</div>
+<div class="section" id="blobinfo">
+<h1><a class="toc-backref" href="#id2">BlobInfo</a></h1>
+<p>BlobInfo is an opaque pointer reference to the internal structure of an
+I/O blob handle.</p>
+</div>
+<div class="section" id="cache">
+<h1><a class="toc-backref" href="#id3">Cache</a></h1>
+<pre class="literal-block">
+typedef void
+ *Cache;
+</pre>
+</div>
+<div class="section" id="channeltype">
+<h1><a class="toc-backref" href="#id4">ChannelType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedChannel,
+ RedChannel, /* RGB Red channel */
+ CyanChannel, /* CMYK Cyan channel */
+ GreenChannel, /* RGB Green channel */
+ MagentaChannel, /* CMYK Magenta channel */
+ BlueChannel, /* RGB Blue channel */
+ YellowChannel, /* CMYK Yellow channel */
+ OpacityChannel, /* Opacity channel */
+ BlackChannel, /* CMYK Black (K) channel */
+ MatteChannel, /* Same as Opacity channel (deprecated) */
+ AllChannels, /* Color channels */
+ GrayChannel /* Color channels represent an intensity. */
+} ChannelType;
+</pre>
+</div>
+<div class="section" id="chromaticityinfo">
+<h1><a class="toc-backref" href="#id5">ChromaticityInfo</a></h1>
+<p>The ChromaticityInfo structure is used to represent chromaticity
+(colorspace primary coordinates in xy space) values for images in
+GraphicsMagick.</p>
+<p>The members of the ChromaticityInfo structure are shown in the following
+table:</p>
+<table border="1" class="docutils">
+<caption>ChromaticityInfo Structure Members</caption>
+<colgroup>
+<col width="20%" />
+<col width="12%" />
+<col width="68%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>red_primary</td>
+<td>PointInfo</td>
+<td>Chromaticity red primary point (e.g. x=0.64, y=0.33)</td>
+</tr>
+<tr><td>green_primary</td>
+<td>PointInfo</td>
+<td>Chromaticity green primary point (e.g. x=0.3, y=0.6)</td>
+</tr>
+<tr><td>blue_primary</td>
+<td>PointInfo</td>
+<td>Chromaticity blue primary point (e.g. x=0.15, y=0.06)</td>
+</tr>
+<tr><td>white_point</td>
+<td>PointInfo</td>
+<td>Chromaticity white point (e.g. x=0.3127, y=0.329)</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="classtype">
+<h1><a class="toc-backref" href="#id6">ClassType</a></h1>
+<p>ClassType enumeration specifies the image storage class.</p>
+<table border="1" class="docutils">
+<caption>ClassType</caption>
+<colgroup>
+<col width="17%" />
+<col width="83%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedClass</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>DirectClass</td>
+<td>Image is composed of pixels which represent literal color values.</td>
+</tr>
+<tr><td>PseudoClass</td>
+<td>Image is composed of pixels which specify an index in a color palette.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="clippathunits">
+<h1><a class="toc-backref" href="#id7">ClipPathUnits</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UserSpace,
+ UserSpaceOnUse,
+ ObjectBoundingBox
+} ClipPathUnits;
+</pre>
+</div>
+<div class="section" id="colorpacket">
+<h1><a class="toc-backref" href="#id8">ColorPacket</a></h1>
+<pre class="literal-block">
+typedef struct _ColorPacket
+{
+ PixelPacket
+ pixel;
+
+ unsigned short
+ index;
+
+ unsigned long
+ count;
+} ColorPacket;
+</pre>
+</div>
+<div class="section" id="colorspacetype">
+<h1><a class="toc-backref" href="#id9">ColorspaceType</a></h1>
+<p>The ColorspaceType enumeration is used to specify the colorspace that
+quantization (color reduction and mapping) is done under or to specify
+the colorspace when encoding an output image. Colorspaces are ways of
+describing colors to fit the requirements of a particular application
+(e.g. Television, offset printing, color monitors). Color reduction, by
+default, takes place in the RGBColorspace. Empirical evidence suggests
+that distances in color spaces such as YUVColorspace or YIQColorspace
+correspond to perceptual color differences more closely han do distances
+in RGB space. These color spaces may give better results when color
+reducing an image. Refer to quantize for more details.</p>
+<p>When encoding an output image, the colorspaces RGBColorspace,
+CMYKColorspace, and GRAYColorspace may be specified. The CMYKColorspace
+option is only applicable when writing TIFF, JPEG, and Adobe Photoshop
+bitmap (PSD) files.</p>
+<table border="1" class="docutils">
+<caption>ColorspaceType</caption>
+<colgroup>
+<col width="32%" />
+<col width="68%" />
+</colgroup>
+<thead valign="bottom">
+<tr><th class="head">Enumeration</th>
+<th class="head">Description</th>
+</tr>
+</thead>
+<tbody valign="top">
+<tr><td>UndefinedColorspace</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>RGBColorspace</td>
+<td>Red, Green, Blue colorspace.</td>
+</tr>
+<tr><td>GRAYColorspace</td>
+<td>Similar to Luma (Y) according to ITU-R 601</td>
+</tr>
+<tr><td>TransparentColorspace</td>
+<td>RGB which preserves the matte while quantizing colors.</td>
+</tr>
+<tr><td>OHTAColorspace</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>XYZColorspace</td>
+<td>CIE XYZ</td>
+</tr>
+<tr><td>YCCColorspace</td>
+<td>Kodak PhotoCD PhotoYCC</td>
+</tr>
+<tr><td>YIQColorspace</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>YPbPrColorspace</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>YUVColorspace</td>
+<td>YUV colorspace as used for computer video.</td>
+</tr>
+<tr><td>CMYKColorspace</td>
+<td>Cyan, Magenta, Yellow, Black colorspace.</td>
+</tr>
+<tr><td>sRGBColorspace</td>
+<td>Kodak PhotoCD sRGB</td>
+</tr>
+<tr><td>HSLColorspace</td>
+<td>Hue, saturation, luminosity</td>
+</tr>
+<tr><td>HWBColorspace</td>
+<td>Hue, whiteness, blackness</td>
+</tr>
+<tr><td>LABColorspace</td>
+<td>ITU LAB</td>
+</tr>
+<tr><td>CineonLogRGBColorspace</td>
+<td>RGB data with Cineon Log scaling, 2.048 density range</td>
+</tr>
+<tr><td>Rec601LumaColorspace</td>
+<td>Luma (Y) according to ITU-R 601</td>
+</tr>
+<tr><td>Rec601YCbCrColorspace</td>
+<td>YCbCr according to ITU-R 601</td>
+</tr>
+<tr><td>Rec709LumaColorspace</td>
+<td>Luma (Y) according to ITU-R 709</td>
+</tr>
+<tr><td>Rec709YCbCrColorspace</td>
+<td>YCbCr according to ITU-R 709</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="compliancetype">
+<h1><a class="toc-backref" href="#id10">ComplianceType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedCompliance = 0x0000,
+ NoCompliance = 0x0000,
+ SVGCompliance = 0x0001,
+ X11Compliance = 0x0002,
+ XPMCompliance = 0x0004,
+ AllCompliance = 0xffff
+} ComplianceType;
+</pre>
+</div>
+<div class="section" id="compositeoperator">
+<h1><a class="toc-backref" href="#id11">CompositeOperator</a></h1>
+<p>CompositeOperator is used to select the image composition algorithm used
+to compose a composite image with an image. By default, each of the
+composite image pixels are replaced by the corresponding image tile
+pixel. Specify CompositeOperator to select a different algorithm.</p>
+<p>The image compositor requires a matte, or alpha channel in the image for
+some operations. This extra channel usually defines a mask which
+represents a sort of a cookie-cutter for the image. This is the case when
+matte is 255 (full coverage) for pixels inside the shape, zero outside,
+and between zero and 255 on the boundary. For certain operations, if
+image does not have a matte channel, it is initialized with 0 for any
+pixel matching in color to pixel location (0,0), otherwise 255 (to work
+properly borderWidth must be 0).</p>
+<table border="1" class="docutils">
+<caption>CompositeOperator</caption>
+<colgroup>
+<col width="23%" />
+<col width="77%" />
+</colgroup>
+<thead valign="bottom">
+<tr><th class="head">Enumeration</th>
+<th class="head">Description</th>
+</tr>
+</thead>
+<tbody valign="top">
+<tr><td>UndefinedCompositeOp</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>OverCompositeOp</td>
+<td>The result is the union of the the two image shapes with the composite
+image obscuring image in the region of overlap.</td>
+</tr>
+<tr><td>InCompositeOp</td>
+<td>The result is a simply composite image cut by the shape of image. None of
+the image data of image is included in the result.</td>
+</tr>
+<tr><td>OutCompositeOp</td>
+<td>The resulting image is composite image with the shape of image cut out.</td>
+</tr>
+<tr><td>AtopCompositeOp</td>
+<td>The result is the same shape as image image, with composite image
+obscuring image there the image shapes overlap. Note that this differs
+from OverCompositeOp because the portion of composite image outside of
+image's shape does not appear in the result.</td>
+</tr>
+<tr><td>XorCompositeOp</td>
+<td>The result is the image data from both composite image and image that is
+outside the overlap region. The overlap region will be blank.</td>
+</tr>
+<tr><td>PlusCompositeOp</td>
+<td>The result is just the sum of the image data. Output values are cropped
+to 255 (no overflow). This operation is independent of the matte channels.</td>
+</tr>
+<tr><td>MinusCompositeOp</td>
+<td>The result of composite image - image, with overflow cropped to zero. The
+matte chanel is ignored (set to 255, full coverage).</td>
+</tr>
+<tr><td>AddCompositeOp</td>
+<td>The result of composite image + image, with overflow wrapping around (mod
+256).</td>
+</tr>
+<tr><td>SubtractCompositeOp</td>
+<td>The result of composite image - image, with underflow wrapping around (mod
+256). The add and subtract operators can be used to perform reversible
+transformations.</td>
+</tr>
+<tr><td>DifferenceCompositeOp</td>
+<td>The result of abs(composite image - image). This is useful for comparing
+two very similar images.</td>
+</tr>
+<tr><td>BumpmapCompositeOp</td>
+<td>The result image shaded by composite image.</td>
+</tr>
+<tr><td>CopyCompositeOp</td>
+<td>The resulting image is image replaced with composite image. Here the matte
+information is ignored.</td>
+</tr>
+<tr><td>CopyRedCompositeOp</td>
+<td>The resulting image is the red layer in image replaced with the red layer
+in composite image. The other layers are copied untouched.</td>
+</tr>
+<tr><td>CopyGreenCompositeOp</td>
+<td>The resulting image is the green layer in image replaced with the green
+layer in composite image. The other layers are copied untouched.</td>
+</tr>
+<tr><td>CopyBlueCompositeOp</td>
+<td>The resulting image is the blue layer in image replaced with the blue
+layer in composite image. The other layers are copied untouched.</td>
+</tr>
+<tr><td>CopyOpacityCompositeOp</td>
+<td>The resulting image is the matte layer in image replaced with the matte
+layer in composite image. The other layers are copied untouched.</td>
+</tr>
+<tr><td>ClearCompositeOp</td>
+<td>Pixels in the region are set to Transparent.</td>
+</tr>
+<tr><td>DissolveCompositeOp</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>DisplaceCompositeOp</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>ModulateCompositeOp</td>
+<td>Modulate brightness in HSL space.</td>
+</tr>
+<tr><td>ThresholdCompositeOp</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>NoCompositeOp</td>
+<td>Do nothing at all.</td>
+</tr>
+<tr><td>DarkenCompositeOp</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>LightenCompositeOp</td>
+<td>&nbsp;</td>
+</tr>
+<tr><td>HueCompositeOp</td>
+<td>Copy Hue channel (from HSL colorspace).</td>
+</tr>
+<tr><td>SaturateCompositeOp</td>
+<td>Copy Saturation channel (from HSL colorspace).</td>
+</tr>
+<tr><td>ColorizeCompositeOp</td>
+<td>Copy Hue and Saturation channels (from HSL colorspace).</td>
+</tr>
+<tr><td>LuminizeCompositeOp</td>
+<td>Copy Brightness channel (from HSL colorspace).</td>
+</tr>
+<tr><td>ScreenCompositeOp</td>
+<td>[Not yet implemented]</td>
+</tr>
+<tr><td>OverlayCompositeOp</td>
+<td>[Not yet implemented]</td>
+</tr>
+<tr><td>CopyCyanCompositeOp</td>
+<td>Copy the Cyan channel.</td>
+</tr>
+<tr><td>CopyMagentaCompositeOp</td>
+<td>Copy the Magenta channel.</td>
+</tr>
+<tr><td>CopyYellowCompositeOp</td>
+<td>Copy the Yellow channel.</td>
+</tr>
+<tr><td>CopyBlackCompositeOp</td>
+<td>Copy the Black channel.</td>
+</tr>
+<tr><td>DivideCompositeOp</td>
+<td>&nbsp;</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="compressiontype">
+<h1><a class="toc-backref" href="#id12">CompressionType</a></h1>
+<p>CompressionType is used to express the desired compression type when
+encoding an image. Be aware that most image types only support a sub-set
+of the available compression types. If the compression type specified is
+incompatable with the image, GraphicsMagick selects a compression type
+compatable with the image type.</p>
+<table border="1" class="docutils">
+<caption>CompressionType</caption>
+<colgroup>
+<col width="28%" />
+<col width="72%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedCompression</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>NoCompression</td>
+<td>No compression</td>
+</tr>
+<tr><td>BZipCompression</td>
+<td>BZip (Burrows-Wheeler block-sorting text compression algorithm and
+Huffman coding) as used by bzip2 utilities</td>
+</tr>
+<tr><td>FaxCompression</td>
+<td>CCITT Group 3 FAX compression</td>
+</tr>
+<tr><td>Group4Compression</td>
+<td>CCITT Group 4 FAX compression (used only for TIFF)</td>
+</tr>
+<tr><td>JPEGCompression</td>
+<td>JPEG compression</td>
+</tr>
+<tr><td>LosslessJPEGCompression</td>
+<td>Lossless JPEG compression</td>
+</tr>
+<tr><td>LZWCompression</td>
+<td>Lempel-Ziv-Welch (LZW) compression (caution, patented by Unisys)</td>
+</tr>
+<tr><td>RLECompression</td>
+<td>Run-Length encoded (RLE) compression</td>
+</tr>
+<tr><td>ZipCompression</td>
+<td>Lempel-Ziv compression (LZ77) as used in PKZIP and GNU gzip.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="decorationtype">
+<h1><a class="toc-backref" href="#id13">DecorationType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ NoDecoration,
+ UnderlineDecoration,
+ OverlineDecoration,
+ LineThroughDecoration
+} DecorationType;
+</pre>
+</div>
+<div class="section" id="drawcontext">
+<h1><a class="toc-backref" href="#id14">DrawContext</a></h1>
+<pre class="literal-block">
+typedef struct _DrawContext *DrawContext;
+</pre>
+</div>
+<div class="section" id="drawinfo">
+<h1><a class="toc-backref" href="#id15">DrawInfo</a></h1>
+<p>The DrawInfo structure is used to support annotating an image using
+drawing commands.</p>
+<table border="1" class="docutils">
+<caption>Methods Supporting DrawInfo</caption>
+<colgroup>
+<col width="23%" />
+<col width="77%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Method</td>
+<td>Description</td>
+</tr>
+<tr><td>GetDrawInfo()</td>
+<td>Allocate new structure with defaults set.</td>
+</tr>
+<tr><td>CloneDrawInfo()</td>
+<td>Copy existing structure, allocating new structure in the process.</td>
+</tr>
+<tr><td>DestroyDrawInfo()</td>
+<td>Deallocate structure, including any members.</td>
+</tr>
+<tr><td>DrawImage()</td>
+<td>Render primitives to image.</td>
+</tr>
+</tbody>
+</table>
+<p>The members of the DrawInfo structure are shown in the following table.
+The structure is initialized to reasonable defaults by first initializing
+the equivalent members of ImageInfo, and then initializing the entire
+structure using GetDrawInfo().</p>
+<table border="1" class="docutils">
+<caption>DrawInfo Structure Members Supporting DrawImage()</caption>
+<colgroup>
+<col width="16%" />
+<col width="14%" />
+<col width="69%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>affine</td>
+<td>AffineInfo</td>
+<td>Coordinate transformation (rotation, scaling, and translation).</td>
+</tr>
+<tr><td>border_color</td>
+<td>PixelPacket</td>
+<td>Border color</td>
+</tr>
+<tr><td>box</td>
+<td>PixelPacket</td>
+<td>Text solid background color.</td>
+</tr>
+<tr><td>decorate</td>
+<td>DecorationType</td>
+<td>Text decoration type.</td>
+</tr>
+<tr><td>density</td>
+<td>char *</td>
+<td>Text rendering density in DPI (effects scaling font according to
+pointsize). E.g. &quot;72x72&quot;</td>
+</tr>
+<tr><td>fill</td>
+<td>PixelPacket</td>
+<td>Object internal fill (within outline) color.</td>
+</tr>
+<tr><td>font</td>
+<td>char *</td>
+<td>Font to use when rendering text.</td>
+</tr>
+<tr><td>gravity</td>
+<td>GravityType</td>
+<td>Text placement preference (e.g. NorthWestGravity).</td>
+</tr>
+<tr><td>linewidth</td>
+<td>double</td>
+<td>Stroke (outline) drawing width in pixels.</td>
+</tr>
+<tr><td>pointsize</td>
+<td>double</td>
+<td>Font size (also see density).</td>
+</tr>
+<tr><td>primitive</td>
+<td>char *</td>
+<td>Space or new-line delimited list of text drawing primitives (e.g
+&quot;text 100,100 Cockatoo&quot;). See the table Drawing Primitives for the
+available drawing primitives.</td>
+</tr>
+<tr><td>stroke</td>
+<td>PixelPacket</td>
+<td>Object stroke (outline) color.</td>
+</tr>
+<tr><td>stroke_antialias</td>
+<td>unsigned int</td>
+<td>Set to True (non-zero) to obtain anti-aliased stroke rendering.</td>
+</tr>
+<tr><td>text_antialias</td>
+<td>unsigned int</td>
+<td>Set to True (non-zero) to obtain anti-aliased text rendering.</td>
+</tr>
+<tr><td>tile</td>
+<td>Image *</td>
+<td>Image texture to draw with. Use an image containing a single color
+(e.g. a 1x1 image) to draw in a solid color.</td>
+</tr>
+</tbody>
+</table>
+<p>Drawing Primitives</p>
+<p>The drawing primitives shown in the following table may be supplied as a
+space or new-line delimited list to the primitive member. Primitives
+which set drawing options effect the results from subsequent drawing
+operations. See the 'push graphic-context' and 'pop graphic-context'
+primitives for a way to control the propagation of drawing options.</p>
+<table border="1" class="docutils">
+<caption>Drawing Primitives</caption>
+<colgroup>
+<col width="16%" />
+<col width="28%" />
+<col width="56%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Primitive</td>
+<td>Arguments</td>
+<td>Purpose</td>
+</tr>
+<tr><td>affine</td>
+<td>sx,rx,ry,sy,tx,ty</td>
+<td>Apply coordinate transformations to support scaling
+(s), rotation (r), and translation (t). Angles are
+specified in radians. Equivalent to SVG matrix command
+which supplies a transformation matrix.</td>
+</tr>
+<tr><td>angle</td>
+<td>angle</td>
+<td>Specify object drawing angle.</td>
+</tr>
+<tr><td>arc</td>
+<td>startX,startY endX,endY
+startDegrees,endDegrees</td>
+<td>Draw an arc.</td>
+</tr>
+<tr><td>Bezier</td>
+<td>x1,y1, x2,y2, x3,y3, ...,
+xN,yN</td>
+<td>Draw a Bezier curve.</td>
+</tr>
+<tr><td>circle</td>
+<td>originX,originY
+perimX,perimY</td>
+<td>Draw a circle.</td>
+</tr>
+<tr><td>color</td>
+<td>x,y (point|replace|
+floodfill|filltoborder|
+reset)</td>
+<td>Set color in image according to specified colorization
+rule.</td>
+</tr>
+<tr><td>decorate</td>
+<td>(none|underline|overline|
+line-through)</td>
+<td>Specify text decoration.</td>
+</tr>
+<tr><td>ellipse</td>
+<td>originX,originY
+width,height
+arcStart,arcEnd</td>
+<td>Draw an ellipse.</td>
+</tr>
+<tr><td>fill</td>
+<td>colorspec</td>
+<td>Specifiy object filling color.</td>
+</tr>
+<tr><td>fill-opacity</td>
+<td>opacity</td>
+<td>Specify object fill opacity.</td>
+</tr>
+<tr><td>font</td>
+<td>fontname</td>
+<td>Specify text drawing font.</td>
+</tr>
+<tr><td>gravity</td>
+<td>(NorthWest,North,NorthEast,
+West,Center,East,
+SouthWest,South,SouthEast)</td>
+<td>Specify text positioning gravity.</td>
+</tr>
+<tr><td>image</td>
+<td>x,y width,height filename</td>
+<td>Composite image at position, scaled to specified width
+and height, and specified filename. If width or height
+is zero, scaling is not performed.</td>
+</tr>
+<tr><td>line</td>
+<td>startX,startY endX,endY</td>
+<td>Draw a line.</td>
+</tr>
+<tr><td>matte</td>
+<td>x,y (point|replace|
+floodfill|filltoborder|
+reset)</td>
+<td>Set matte in image according to specified colorization
+rule.</td>
+</tr>
+<tr><td>opacity</td>
+<td>fillOpacity strokeOpacity</td>
+<td>Specify drawing fill and stroke opacities.</td>
+</tr>
+<tr><td>path</td>
+<td>'SVG-compatible path
+arguments'</td>
+<td>Draw using SVG-compatible path drawing commands.</td>
+</tr>
+<tr><td>point</td>
+<td>x,y</td>
+<td>Set point to fill color.</td>
+</tr>
+<tr><td>pointsize</td>
+<td>pointsize</td>
+<td>Specify text drawing pointsize (scaled to density).</td>
+</tr>
+<tr><td>polygon</td>
+<td>x1,y1, x2,y2, x3,y3, ...,
+xN,yN</td>
+<td>Draw a polygon.</td>
+</tr>
+<tr><td>polyline</td>
+<td>x1,y1, x2,y2, x3,y3, ...,
+xN,yN</td>
+<td>Draw a polyline.</td>
+</tr>
+<tr><td>pop</td>
+<td>graphic-context</td>
+<td>Remove options set since previous &quot;push
+graphic-context&quot; command. Options revert to those in
+effect prior to pushing the graphic context.</td>
+</tr>
+<tr><td>push</td>
+<td>graphic-context</td>
+<td>Specify new graphic context.</td>
+</tr>
+<tr><td>rect</td>
+<td>upperLeftX,upperLeftY
+lowerRightX,lowerRightY</td>
+<td>Draw a rectangle.</td>
+</tr>
+<tr><td>rotate</td>
+<td>angle</td>
+<td>Specify coordiante space rotation. Subsequent objects
+are drawn with coordate space rotated by specified
+angle.</td>
+</tr>
+<tr><td>roundrectangle</td>
+<td>centerX,centerY
+width,hight
+cornerWidth,cornerHeight</td>
+<td>Draw a rectangle with rounded corners.</td>
+</tr>
+<tr><td>stroke</td>
+<td>colorspec</td>
+<td>Specify object stroke (outline) color.</td>
+</tr>
+<tr><td>stroke-antialias</td>
+<td>stroke_antialias (0 or 1)</td>
+<td>Specify if stroke should be antialiased or not.</td>
+</tr>
+<tr><td>stroke-dash</td>
+<td>value</td>
+<td>Specify pattern to be used when drawing stroke.</td>
+</tr>
+<tr><td>stroke-opacity</td>
+<td>opacity</td>
+<td>Specify opacity of stroke drawing color.</td>
+</tr>
+<tr><td>stroke-width</td>
+<td>linewidth</td>
+<td>Specify stroke (outline) width in pixels.</td>
+</tr>
+<tr><td>text</td>
+<td>x,y &quot;some text&quot;</td>
+<td>Draw text at position.</td>
+</tr>
+<tr><td>text-antialias</td>
+<td>text_antialias (0 or 1)</td>
+<td>Specify if rendered text is to be antialiased (blend
+edges).</td>
+</tr>
+<tr><td>scale</td>
+<td>x,y</td>
+<td>Specify scaling to be applied to coordintate space for
+subsequent drawing commands.</td>
+</tr>
+<tr><td>translate</td>
+<td>x,y</td>
+<td>Specify center of coordinate space to use for
+subsequent drawing commands.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="endiantype">
+<h1><a class="toc-backref" href="#id16">EndianType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedEndian,
+ LSBEndian, /* &quot;little&quot; endian */
+ MSBEndian, /* &quot;big&quot; endian */
+ NativeEndian /* native endian */
+} EndianType;
+</pre>
+</div>
+<div class="section" id="errorhandler">
+<h1><a class="toc-backref" href="#id17">ErrorHandler</a></h1>
+<pre class="literal-block">
+typedef void
+ (*ErrorHandler)(const ExceptionType,const char *,const char *);
+</pre>
+</div>
+<div class="section" id="exceptioninfo">
+<h1><a class="toc-backref" href="#id18">ExceptionInfo</a></h1>
+<pre class="literal-block">
+typedef struct _ExceptionInfo
+{
+ char
+ *reason,
+ *description;
+
+ ExceptionType
+ severity;
+
+ unsigned long
+ signature;
+} ExceptionInfo;
+</pre>
+</div>
+<div class="section" id="exceptiontype">
+<h1><a class="toc-backref" href="#id19">ExceptionType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedException,
+ WarningException = 300,
+ ResourceLimitWarning = 300,
+ TypeWarning = 305,
+ OptionWarning = 310,
+ DelegateWarning = 315,
+ MissingDelegateWarning = 320,
+ CorruptImageWarning = 325,
+ FileOpenWarning = 330,
+ BlobWarning = 335,
+ StreamWarning = 340,
+ CacheWarning = 345,
+ CoderWarning = 350,
+ ModuleWarning = 355,
+ DrawWarning = 360,
+ ImageWarning = 365,
+ XServerWarning = 380,
+ MonitorWarning = 385,
+ RegistryWarning = 390,
+ ConfigureWarning = 395,
+ ErrorException = 400,
+ ResourceLimitError = 400,
+ TypeError = 405,
+ OptionError = 410,
+ DelegateError = 415,
+ MissingDelegateError = 420,
+ CorruptImageError = 425,
+ FileOpenError = 430,
+ BlobError = 435,
+ StreamError = 440,
+ CacheError = 445,
+ CoderError = 450,
+ ModuleError = 455,
+ DrawError = 460,
+ ImageError = 465,
+ XServerError = 480,
+ MonitorError = 485,
+ RegistryError = 490,
+ ConfigureError = 495,
+ FatalErrorException = 700,
+ ResourceLimitFatalError = 700,
+ TypeFatalError = 705,
+ OptionFatalError = 710,
+ DelegateFatalError = 715,
+ MissingDelegateFatalError = 720,
+ CorruptImageFatalError = 725,
+ FileOpenFatalError = 730,
+ BlobFatalError = 735,
+ StreamFatalError = 740,
+ CacheFatalError = 745,
+ CoderFatalError = 750,
+ ModuleFatalError = 755,
+ DrawFatalError = 760,
+ ImageFatalError = 765,
+ XServerFatalError = 780,
+ MonitorFatalError = 785,
+ RegistryFatalError = 790,
+ ConfigureFatalError = 795
+} ExceptionType;
+</pre>
+</div>
+<div class="section" id="fillrule">
+<h1><a class="toc-backref" href="#id20">FillRule</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedRule,
+ EvenOddRule,
+ NonZeroRule
+} FillRule;
+</pre>
+</div>
+<div class="section" id="filtertypes">
+<h1><a class="toc-backref" href="#id21">FilterTypes</a></h1>
+<p>FilterTypes is used to adjust the filter algorithm used when resizing
+images. Different filters experience varying degrees of success with
+various images and can take significantly different amounts of processing
+time. GraphicsMagick uses the LanczosFilter by default since this filter
+has been shown to provide the best results for most images in a
+reasonable amount of time. Other filter types (e.g. TriangleFilter) may
+execute much faster but may show artifacts when the image is re-sized or
+around diagonal lines. The only way to be sure is to test the filter with
+sample images.</p>
+<table border="1" class="docutils">
+<caption>FilterTypes</caption>
+<colgroup>
+<col width="48%" />
+<col width="52%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedFilter</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>PointFilter</td>
+<td>Point Filter</td>
+</tr>
+<tr><td>BoxFilter</td>
+<td>Box Filter</td>
+</tr>
+<tr><td>TriangleFilter</td>
+<td>Triangle Filter</td>
+</tr>
+<tr><td>HermiteFilter</td>
+<td>Hermite Filter</td>
+</tr>
+<tr><td>HanningFilter</td>
+<td>Hanning Filter</td>
+</tr>
+<tr><td>HammingFilter</td>
+<td>Hamming Filter</td>
+</tr>
+<tr><td>BlackmanFilter</td>
+<td>Blackman Filter</td>
+</tr>
+<tr><td>GaussianFilter</td>
+<td>Gaussian Filter</td>
+</tr>
+<tr><td>QuadraticFilter</td>
+<td>Quadratic Filter</td>
+</tr>
+<tr><td>CubicFilter</td>
+<td>Cubic Filter</td>
+</tr>
+<tr><td>CatromFilter</td>
+<td>Catrom Filter</td>
+</tr>
+<tr><td>MitchellFilter</td>
+<td>Mitchell Filter</td>
+</tr>
+<tr><td>LanczosFilter</td>
+<td>Lanczos Filter</td>
+</tr>
+<tr><td>BesselFilter</td>
+<td>Bessel Filter</td>
+</tr>
+<tr><td>SincFilter</td>
+<td>Sinc Filter</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="frameinfo">
+<h1><a class="toc-backref" href="#id22">FrameInfo</a></h1>
+<pre class="literal-block">
+typedef struct _FrameInfo
+{
+ unsigned long
+ width,
+ height;
+
+ long
+ x,
+ y,
+ inner_bevel,
+ outer_bevel;
+} FrameInfo;
+</pre>
+</div>
+<div class="section" id="gravitytype">
+<h1><a class="toc-backref" href="#id23">GravityType</a></h1>
+<p>GravityType specifies positioning of an object (e.g. text, image) within
+a bounding region (e.g. an image). Gravity provides a convenient way to
+locate objects irrespective of the size of the bounding region, in other
+words, you don't need to provide absolute coordinates in order to
+position an object. A common default for gravity is NorthWestGravity.</p>
+<table border="1" class="docutils">
+<caption>GravityType</caption>
+<colgroup>
+<col width="27%" />
+<col width="73%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>ForgetGravity</td>
+<td>Don't use gravity.</td>
+</tr>
+<tr><td>NorthWestGravity</td>
+<td>Position object at top-left of region.</td>
+</tr>
+<tr><td>NorthGravity</td>
+<td>Postiion object at top-center of region</td>
+</tr>
+<tr><td>NorthEastGravity</td>
+<td>Position object at top-right of region</td>
+</tr>
+<tr><td>WestGravity</td>
+<td>Position object at left-center of region</td>
+</tr>
+<tr><td>CenterGravity</td>
+<td>Position object at center of region</td>
+</tr>
+<tr><td>EastGravity</td>
+<td>Position object at right-center of region</td>
+</tr>
+<tr><td>SouthWestGravity</td>
+<td>Position object at left-bottom of region</td>
+</tr>
+<tr><td>SouthGravity</td>
+<td>Position object at bottom-center of region</td>
+</tr>
+<tr><td>SouthEastGravity</td>
+<td>Position object at bottom-right of region</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="image">
+<h1><a class="toc-backref" href="#id24">Image</a></h1>
+<p>The Image structure represents an GraphicsMagick image. It is initially
+allocated by AllocateImage() and deallocated by DestroyImage(). The
+functions ReadImage(), ReadImages(), BlobToImage() and CreateImage()
+return a new image. Use CloneImage() to copy an image. An image consists
+of a structure containing image attributes as well as the image pixels.</p>
+<p>The image pixels are represented by the structure PixelPacket and are
+cached in-memory, or on disk, depending on the cache threshold setting.
+This cache is known as the &quot;pixel cache&quot;. Pixels in the cache may not be
+edited directly. They must first be made visible from the cache via a
+pixel view. A pixel view is a rectangular view of the pixels as defined
+by a starting coordinate, and a number of rows and columns. When
+considering the varying abilities of multiple platforms, the most
+reliably efficient pixel view is comprized of part, or all, of one image
+row.</p>
+<p>There are two means of accessing pixel views. When using the default
+view, the pixels are made visible and accessable by using the
+GetImagePixels() method which provides access to a specified region of
+the image. After the view has been updated, the pixels may be saved back
+to the cache in their original positions via SyncImagePixels(). In order
+to create an image with new contents, or to blindly overwrite existing
+contents, the method SetImagePixels() is used to reserve a pixel view
+corresponding to a region in the pixel cache. Once the pixel view has
+been updated, it may be written to the cache via SyncImagePixels(). The
+function GetIndexes() provides access to the image colormap, represented
+as an array of type IndexPacket.</p>
+<p>A more flexible interface to the image pixels is via the Cache View
+interface. This interface supports multiple pixel cache views (limited by
+the amount of available memory), each of which are identified by a handle
+(of type ViewInfo). Use OpenCacheView() to obtain a new cache view,
+CloseCacheView() to discard a cache view, GetCacheViewPixels() to access
+an existing pixel region, SetCacheView() to define a new pixel region,
+and SyncCacheViewPixels() to save the updated pixel region. The function
+GetCacheViewIndexes() provides access to the colormap indexes associated
+with the pixel view.</p>
+<p>When writing encoders and decoders for new image formats, it is
+convenient to have a high-level interface available which supports
+converting between external pixel representations and GraphicsMagick's
+own representation. Pixel components (red, green, blue, opacity, RGB, or
+RGBA) may be transferred from a user-supplied buffer into the default
+view by using ImportImagePixelArea(), or from an allocated view via
+ImportViewPixelArea(). Pixel components may be transferred from the
+default view into a user-supplied buffer by using ExportImagePixelArea(),
+or from an allocated view via ExportViewPixelArea(). Use of this
+high-level interface helps protect image coders from changes to
+GraphicsMagick's pixel representation and simplifies the implementation.</p>
+<p>The members of the Image structure are shown in the following table:</p>
+<table border="1" class="docutils">
+<caption>Image Structure Members</caption>
+<colgroup>
+<col width="31%" />
+<col width="18%" />
+<col width="51%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>background_color</td>
+<td>PixelPacket</td>
+<td>Image background color</td>
+</tr>
+<tr><td>blur</td>
+<td>double</td>
+<td>Blur factor to apply to the image when zooming</td>
+</tr>
+<tr><td>border_color</td>
+<td>PixelPacket</td>
+<td>Image border color</td>
+</tr>
+<tr><td>chromaticity</td>
+<td>ChromaticityInfo</td>
+<td>Red, green, blue, and white-point chromaticity
+values.</td>
+</tr>
+<tr><td>colormap</td>
+<td>PixelPacket *</td>
+<td>PseudoColor palette array.</td>
+</tr>
+<tr><td>colors</td>
+<td>unsigned int</td>
+<td>The desired number of colors. Used by
+QuantizeImage().</td>
+</tr>
+<tr><td>colorspace</td>
+<td>ColorspaceType</td>
+<td>Image pixel interpretation.If the colorspace is
+RGB the pixels are red, green, blue. If matte is
+true, then red, green, blue, and index. If it is
+CMYK, the pixels are cyan, yellow, magenta, black.
+Otherwise the colorspace is ignored.</td>
+</tr>
+<tr><td>columns</td>
+<td>unsigned int</td>
+<td>Image width</td>
+</tr>
+<tr><td>compression</td>
+<td>CompressionType</td>
+<td>Image compresion type. The default is the
+compression type of the specified image file.</td>
+</tr>
+<tr><td>delay</td>
+<td>unsigned int</td>
+<td>Time in 1/100ths of a second (0 to 65535) which
+must expire before displaying the next image in an
+animated sequence. This option is useful for
+regulating the animation of a sequence of GIF
+images within Netscape.</td>
+</tr>
+<tr><td>depth</td>
+<td>unsigned int</td>
+<td>Image depth. Number of encoding bits per sample.
+Usually 8 or 16, but sometimes 10 or 12.</td>
+</tr>
+<tr><td>directory</td>
+<td>char *</td>
+<td>Tile names from within an image montage. Only
+valid after calling MontageImages() or reading a
+MIFF file which contains a directory.</td>
+</tr>
+<tr><td>dispose</td>
+<td>unsigned int</td>
+<td>GIF disposal method. This option is used to
+control how successive frames are rendered (how
+the preceding frame is disposed of) when creating
+a GIF animation.</td>
+</tr>
+<tr><td>exception</td>
+<td>ExceptionInfo</td>
+<td>Record of any error which occurred when updating
+image.</td>
+</tr>
+<tr><td>filename</td>
+<td>char
+[MaxTextExtent]</td>
+<td>Image file name to read or write.</td>
+</tr>
+<tr><td>filter</td>
+<td>FilterTypes</td>
+<td>Filter to use when resizing image. The reduction
+filter employed has a significant effect on the
+time required to resize an image and the resulting
+quality. The default filter is Lanczos which has
+been shown to produce high quality results when
+reducing most images.</td>
+</tr>
+<tr><td>fuzz</td>
+<td>int</td>
+<td>Colors within this distance are considered equal.
+A number of algorithms search for a target color.
+By default the color must be exact. Use this
+option to match colors that are close to the
+target color in RGB space.</td>
+</tr>
+<tr><td>gamma</td>
+<td>double</td>
+<td>Gamma level of the image. The same color image
+displayed on two different workstations may look
+different due to differences in the display
+monitor. Use gamma correction to adjust for this
+color difference.</td>
+</tr>
+<tr><td>geometry</td>
+<td>char *</td>
+<td>Preferred size of the image when encoding.</td>
+</tr>
+<tr><td>interlace</td>
+<td>InterlaceType</td>
+<td>The type of interlacing scheme (default
+NoInterlace). This option is used to specify the
+type of interlacing scheme for raw image formats
+such as RGB or YUV. NoInterlace means do not
+interlace, LineInterlace uses scanline
+interlacing, and PlaneInterlace uses plane
+interlacing. PartitionInterlace is like
+PlaneInterlace except the different planes are
+saved to individual files (e.g. image.R, image.G,
+and image.B). Use LineInterlace or PlaneInterlace
+to create an interlaced GIF or progressive JPEG
+image.</td>
+</tr>
+<tr><td>iterations</td>
+<td>unsigned int</td>
+<td>Number of iterations to loop an animation (e.g.
+Netscape loop extension) for.</td>
+</tr>
+<tr><td>magick</td>
+<td>char
+[MaxTextExtent]</td>
+<td>Image encoding format (e.g. &quot;GIF&quot;).</td>
+</tr>
+<tr><td>magick_columns</td>
+<td>unsigned int</td>
+<td>Base image width (before transformations)</td>
+</tr>
+<tr><td>magick_filename</td>
+<td>char
+[MaxTextExtent]</td>
+<td>Base image filename (before transformations)</td>
+</tr>
+<tr><td>magick_rows</td>
+<td>unsigned int</td>
+<td>Base image height (before transformations)</td>
+</tr>
+<tr><td>matte</td>
+<td>unsigned int</td>
+<td>If non-zero, then the index member of pixels
+represents the alpha channel.</td>
+</tr>
+<tr><td>matte_color</td>
+<td>PixelPacket</td>
+<td>Image matte (transparent) color</td>
+</tr>
+<tr><td>montage</td>
+<td>char *</td>
+<td>Tile size and offset within an image montage. Only
+valid for montage images.</td>
+</tr>
+<tr><td>next</td>
+<td>struct _Image *</td>
+<td>Next image frame in sequence</td>
+</tr>
+<tr><td>offset</td>
+<td>int</td>
+<td>Number of initial bytes to skip over when reading
+raw image.</td>
+</tr>
+<tr><td>orientation</td>
+<td>OrientationType</td>
+<td>Orientation of the image. Specifies scanline
+orientation and starting coordinate of image.</td>
+</tr>
+<tr><td>page</td>
+<td>RectangleInfo</td>
+<td>Equivalent size of Postscript page.</td>
+</tr>
+<tr><td>previous</td>
+<td>struct _Image *</td>
+<td>Previous image frame in sequence.</td>
+</tr>
+<tr><td>rendering_intent</td>
+<td>RenderingIntent</td>
+<td>The type of rendering intent.</td>
+</tr>
+<tr><td>rows</td>
+<td>unsigned int</td>
+<td>Image height</td>
+</tr>
+<tr><td>scene</td>
+<td>unsigned int</td>
+<td>Image frame scene number.</td>
+</tr>
+<tr><td>storage_class</td>
+<td>ClassType</td>
+<td>Image storage class. If DirectClass then the image
+packets contain valid RGB or CMYK colors. If
+PseudoClass then the image has a colormap
+referenced by pixel's index member.</td>
+</tr>
+<tr><td>tile_info</td>
+<td>RectangleInfo</td>
+<td>Describes a tile within an image. For example, if
+your images is 640x480 you may only want 320x256
+with an offset of +128+64. It is used for raw
+formats such as RGB and CMYK as well as for TIFF.</td>
+</tr>
+<tr><td>timer</td>
+<td>TimerInfo</td>
+<td>Support for measuring actual (user + system) and
+elapsed execution time.</td>
+</tr>
+<tr><td>total_colors</td>
+<td>unsigned long</td>
+<td>The number of colors in the image after
+QuantizeImage(), or QuantizeImages() if the
+verbose flag was set before the call. Calculated
+by GetNumberColors().</td>
+</tr>
+<tr><td>units</td>
+<td>ResolutionType</td>
+<td>Units of image resolution</td>
+</tr>
+<tr><td>x_resolution</td>
+<td>double</td>
+<td>Horizontal resolution of the image</td>
+</tr>
+<tr><td>y_resolution</td>
+<td>double</td>
+<td>Vertical resolution of the image</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="imageinfo">
+<h1><a class="toc-backref" href="#id25">ImageInfo</a></h1>
+<p>The ImageInfo structure is used to supply option information to the
+functions AllocateImage(), AnimateImages(), BlobToImage(),
+CloneAnnotateInfo(), DisplayImages(), GetAnnotateInfo(), ImageToBlob(),
+PingImage(), ReadImage(), ReadImages(), and, WriteImage(). These
+functions update information in ImageInfo to reflect attributes of the
+current image.</p>
+<p>Use CloneImageInfo() to duplicate an existing ImageInfo structure or
+allocate a new one. Use DestroyImageInfo() to deallocate memory
+associated with an ImageInfo structure. Use GetImageInfo() to initialize
+an existing ImageInfo structure. Use SetImageInfo() to set image type
+information in the ImageInfo structure based on an existing image.</p>
+<p>The members of the ImageInfo structure are shown in the following table:</p>
+<table border="1" class="docutils">
+<caption>ImageInfo Structure Members</caption>
+<colgroup>
+<col width="16%" />
+<col width="15%" />
+<col width="68%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>adjoin</td>
+<td>unsigned int</td>
+<td>Join images into a single multi-image file.</td>
+</tr>
+<tr><td>antialias</td>
+<td>unsigned int</td>
+<td>Control antialiasing of rendered Postscript and Postscript or
+TrueType fonts. Enabled by default.</td>
+</tr>
+<tr><td>background_color</td>
+<td>PixelPacket</td>
+<td>Image background color.</td>
+</tr>
+<tr><td>border_color</td>
+<td>PixelPacket</td>
+<td>Image border color.</td>
+</tr>
+<tr><td>colorspace</td>
+<td>ColorspaceType</td>
+<td>Image pixel interpretation.If the colorspace is RGB the pixels are
+red, green, blue. If matte is true, then red, green, blue, and
+index. If it is CMYK, the pixels are cyan, yellow, magenta, black.
+Otherwise the colorspace is ignored.</td>
+</tr>
+<tr><td>compression</td>
+<td>CompressionType</td>
+<td>Image compresion type. The default is the compression type of the
+specified image file.</td>
+</tr>
+<tr><td>delay</td>
+<td>char *</td>
+<td>Time in 1/100ths of a second (0 to 65535) which must expire before
+displaying the next image in an animated sequence. This option is
+useful for regulating the animation of a sequence of GIF images
+within Netscape.</td>
+</tr>
+<tr><td>density</td>
+<td>char *</td>
+<td>Vertical and horizontal resolution in pixels of the image. This
+option specifies an image density when decoding a Postscript or
+Portable Document page. Often used with page.</td>
+</tr>
+<tr><td>depth</td>
+<td>unsigned int</td>
+<td>Image depth (8 or 16). QuantumLeap must be defined before a depth
+of 16 is valid.</td>
+</tr>
+<tr><td>dispose</td>
+<td>char *</td>
+<td>GIF disposal method. This option is used to control how successive
+frames are rendered (how the preceding frame is disposed of) when
+creating a GIF animation.</td>
+</tr>
+<tr><td>dither</td>
+<td>unsigned int</td>
+<td>Apply Floyd/Steinberg error diffusion to the image. The basic
+strategy of dithering is to trade intensity resolution for spatial
+resolution by averaging the intensities of several neighboring
+pixels. Images which suffer from severe contouring when reducing
+colors can be improved with this option. The colors or monochrome
+option must be set for this option to take effect.</td>
+</tr>
+<tr><td>file</td>
+<td>FILE *</td>
+<td>Stdio stream to read image from or write image to. If set,
+ImageMagick will read from or write to the stream rather than
+opening a file. Used by ReadImage() and WriteImage(). The stream is
+closed when the operation completes.</td>
+</tr>
+<tr><td>filename</td>
+<td>char
+[MaxTextExtent]</td>
+<td>Image file name to read or write.</td>
+</tr>
+<tr><td>fill</td>
+<td>PixelPacket</td>
+<td>Drawing object fill color.</td>
+</tr>
+<tr><td>font</td>
+<td>char *</td>
+<td>Text rendering font. If the font is a fully qualified X server font
+name, the font is obtained from an X server. To use a TrueType
+font, precede the TrueType filename with an &#64;. Otherwise, specify a
+Postscript font name (e.g. &quot;helvetica&quot;).</td>
+</tr>
+<tr><td>fuzz</td>
+<td>int</td>
+<td>Colors within this distance are considered equal. A number of
+algorithms search for a target color. By default the color must be
+exact. Use this option to match colors that are close to the target
+color in RGB space.</td>
+</tr>
+<tr><td>interlace</td>
+<td>InterlaceType</td>
+<td>The type of interlacing scheme (default NoInterlace). This option
+is used to specify the type of interlacing scheme for raw image
+formats such as RGB or YUV. NoInterlace means do not interlace,
+LineInterlace uses scanline interlacing, and PlaneInterlace uses
+plane interlacing. PartitionInterlace is like PlaneInterlace except
+the different planes are saved to individual files (e.g. image.R,
+image.G, and image.B). Use LineInterlace or PlaneInterlace to
+create an interlaced GIF or progressive JPEG image.</td>
+</tr>
+<tr><td>iterations</td>
+<td>char *</td>
+<td>Number of iterations to loop an animation (e.g. Netscape loop
+extension) for.</td>
+</tr>
+<tr><td>linewidth</td>
+<td>unsigned int</td>
+<td>Line width for drawing lines, circles, ellipses, etc.</td>
+</tr>
+<tr><td>magick</td>
+<td>char
+[MaxTextExtent]</td>
+<td>Image encoding format (e.g. &quot;GIF&quot;).</td>
+</tr>
+<tr><td>matte_color</td>
+<td>PixelPacket</td>
+<td>Image matte (transparent) color.</td>
+</tr>
+<tr><td>monochrome</td>
+<td>unsigned int</td>
+<td>Transform the image to black and white.</td>
+</tr>
+<tr><td>page</td>
+<td>char *</td>
+<td>Equivalent size of Postscript page.</td>
+</tr>
+<tr><td>ping</td>
+<td>unsigned int</td>
+<td>Set to True to read enough of the image to determine the image
+columns, rows, and filesize. The columns, rows, and size attributes
+are valid after invoking ReadImage() while ping is set. The image
+data is not valid after calling ReadImage() if ping is set.</td>
+</tr>
+<tr><td>pointsize</td>
+<td>double</td>
+<td>Text rendering font point size.</td>
+</tr>
+<tr><td>preview_type</td>
+<td>PreviewType</td>
+<td>Image manipulation preview option. Used by 'display'.</td>
+</tr>
+<tr><td>quality</td>
+<td>unsigned int</td>
+<td>JPEG/MIFF/PNG compression level (default 75).</td>
+</tr>
+<tr><td>server_name</td>
+<td>char *</td>
+<td>X11 display to display to obtain fonts from, or to capture image
+from.</td>
+</tr>
+<tr><td>size</td>
+<td>char *</td>
+<td>Width and height of a raw image (an image which does not support
+width and height information). Size may also be used to affect the
+image size read from a multi-resolution format (e.g. Photo CD,
+JBIG, or JPEG.</td>
+</tr>
+<tr><td>stroke</td>
+<td>PixelPacket</td>
+<td>Drawing object outline color.</td>
+</tr>
+<tr><td>subimage</td>
+<td>unsigned int</td>
+<td>Subimage of an image sequence.</td>
+</tr>
+<tr><td>subrange</td>
+<td>unsigned int</td>
+<td>Number of images relative to the base image.</td>
+</tr>
+<tr><td>texture</td>
+<td>char *</td>
+<td>Image filename to use as background texture.</td>
+</tr>
+<tr><td>tile</td>
+<td>char *</td>
+<td>Tile name.</td>
+</tr>
+<tr><td>units</td>
+<td>ResolutionType</td>
+<td>Units of image resolution.</td>
+</tr>
+<tr><td>verbose</td>
+<td>unsigned int</td>
+<td>Print detailed information about the image if True.</td>
+</tr>
+<tr><td>view</td>
+<td>char *</td>
+<td>FlashPix viewing parameters.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="imagetype">
+<h1><a class="toc-backref" href="#id26">ImageType</a></h1>
+<p>ImageType indicates the type classification of the image.</p>
+<table border="1" class="docutils">
+<caption>ImageType</caption>
+<colgroup>
+<col width="31%" />
+<col width="69%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedType</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>BilevelType</td>
+<td>Monochrome image</td>
+</tr>
+<tr><td>GrayscaleType</td>
+<td>Grayscale image</td>
+</tr>
+<tr><td>PaletteType</td>
+<td>Indexed color (palette) image</td>
+</tr>
+<tr><td>PaletteMatteType</td>
+<td>Indexed color (palette) image with opacity</td>
+</tr>
+<tr><td>TrueColorType</td>
+<td>Truecolor image</td>
+</tr>
+<tr><td>TrueColorMatteType</td>
+<td>Truecolor image with opacity</td>
+</tr>
+<tr><td>ColorSeparationType</td>
+<td>Cyan/Yellow/Magenta/Black (CYMK) image</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="indexpacket">
+<h1><a class="toc-backref" href="#id27">IndexPacket</a></h1>
+<p>IndexPacket is the type used for a colormap index. An array of type
+IndexPacket is used to represent an image in PseudoClass type. Currently
+supported IndexPacket underlying types are 'unsigned char' and 'unsigned
+short'. The type is selected at build time according to the QuantumDepth
+setting.</p>
+</div>
+<div class="section" id="interlacetype">
+<h1><a class="toc-backref" href="#id28">InterlaceType</a></h1>
+<p>InterlaceType specifies the ordering of the red, green, and blue pixel
+information in the image. Interlacing is usually used to make image
+information available to the user faster by taking advantage of the space
+vs time tradeoff. For example, interlacing allows images on the Web to be
+recognizable sooner and satellite images to accumulate/render with image
+resolution increasing over time.</p>
+<p>Use LineInterlace or PlaneInterlace to create an interlaced GIF or
+progressive JPEG image.</p>
+<table border="1" class="docutils">
+<caption>InterlaceType</caption>
+<colgroup>
+<col width="19%" />
+<col width="81%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedInterlace</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>NoInterlace</td>
+<td>Don't interlace image (RGBRGBRGBRGBRGBRGB...)</td>
+</tr>
+<tr><td>LineInterlace</td>
+<td>Use scanline interlacing (RRR...GGG...BBB...RRR...GGG...BBB...)</td>
+</tr>
+<tr><td>PlaneInterlace</td>
+<td>Use plane interlacing (RRRRRR...GGGGGG...BBBBBB...)</td>
+</tr>
+<tr><td>PartitionInterlace</td>
+<td>Similar to plane interlaing except that the different planes are saved to
+individual files (e.g. image.R, image.G, and image.B)</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="layertype">
+<h1><a class="toc-backref" href="#id29">LayerType</a></h1>
+<p>LayerType is used as an argument when doing color separations. Use
+LayerType when extracting a layer from an image. MatteLayer is useful for
+extracting the opacity values from an image.</p>
+<table border="1" class="docutils">
+<caption>LayerType</caption>
+<colgroup>
+<col width="28%" />
+<col width="72%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedLayer</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>RedLayer</td>
+<td>Select red layer</td>
+</tr>
+<tr><td>GreenLayer</td>
+<td>Select green layer</td>
+</tr>
+<tr><td>BlueLayer</td>
+<td>Select blue layer</td>
+</tr>
+<tr><td>MatteLayer</td>
+<td>Select matte (opacity values) layer</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="magickinfo">
+<h1><a class="toc-backref" href="#id30">MagickInfo</a></h1>
+<p>The MagickInfo structure is used by GraphicsMagick to register support
+for an image format. The MagickInfo structure is allocated with default
+parameters by calling SetMagickInfo(). Image formats are registered by
+calling RegisterMagickInfo() which adds the initial structure to a linked
+list (at which point it is owned by the list). A pointer to the structure
+describing a format may be obtained by calling GetMagickInfo(). Pass the
+argument NULL to obtain the first member of this list. A human-readable
+list of registered image formats may be printed to a file descriptor by
+calling ListMagickInfo().</p>
+<p>Support for formats may be provided as a module which is part of the
+GraphicsMagick library, provided by a module which is loaded dynamically
+at run-time, or directly by the linked program. Users of GraphicsMagick
+will normally want to create a loadable-module, or support encode/decode
+of an image format directly from within their program.</p>
+<p>Sample Module:</p>
+<p>The following shows sample code for a module called &quot;GIF&quot; (gif.c). Note
+that the names of the Register and Unregister call-back routines are
+calculated at run-time, and therefore must follow the rigid naming scheme
+RegisterFORMATImage and UnregisterFORMATImage, respectively, where FORMAT
+is the upper-cased name of the module file:</p>
+<pre class="literal-block">
+/* Read image */
+Image *ReadGIFImage(const ImageInfo *image_info)
+{
+ [ decode the image ... ]
+}
+
+/* Write image */
+unsigned int WriteGIFImage(const ImageInfo *image_info,Image *image)
+{
+ [ encode the image ... ]
+}
+
+/* Module call-back to register support for formats */
+void RegisterGIFImage(void)
+{
+ MagickInfo *entry;
+ entry=SetMagickInfo(&quot;GIF&quot;);
+ entry-&gt;decoder=ReadGIFImage;
+ entry-&gt;encoder=WriteGIFImage;
+ entry-&gt;description=&quot;CompuServe graphics interchange format&quot;;
+ entry-&gt;module=&quot;GIF&quot;;
+ RegisterMagickInfo(entry);
+
+ entry=SetMagickInfo(&quot;GIF87&quot;);
+ entry-&gt;decoder=ReadGIFImage;
+ entry-&gt;encoder=WriteGIFImage;
+ entry-&gt;adjoin=False;
+ entry-&gt;description=&quot;CompuServe graphics interchange format (version 87a)&quot;;
+ entry-&gt;module=&quot;GIF&quot;;
+ RegisterMagickInfo(entry);
+}
+
+/* Module call-back to unregister support for formats */
+Export void UnregisterGIFImage(void)
+{
+ UnregisterMagickInfo(&quot;GIF&quot;);
+ UnregisterMagickInfo(&quot;GIF87&quot;);
+}
+</pre>
+<p>Sample Application Code</p>
+<p>Image format support provided within the user's application does not need
+to implement the RegisterFORMATImage and UnregisterFORMATImage call-back
+routines. Instead, the application takes responsibility for the
+registration itself. An example follows:</p>
+<pre class="literal-block">
+/* Read image */
+Image *ReadGIFImage(const ImageInfo *image_info)
+{
+ [ decode the image ... ]
+}
+/* Write image */
+unsigned int WriteGIFImage(const ImageInfo *image_info,Image *image)
+{
+ [ encode the image ... ]
+}
+#include &lt;stdio.h&gt;
+int main( void )
+{
+ struct MagickInfo* info;
+ info = SetMagickInfo(&quot;GIF&quot;);
+ if ( info == (MagickInfo*)NULL )
+ exit(1);
+ info-&gt;decoder = ReadGIFImage;
+ info-&gt;encoder = WriteGIFImage;
+ info-&gt;adjoin = False;
+ info-&gt;description = &quot;CompuServe graphics interchange format&quot;;
+ /* Add MagickInfo structure to list */
+ RegisterMagickInfo(info);
+ info = GetMagickInfo(&quot;GIF&quot;);
+ [ do something with info ... ]
+ ListMagickInfo( stdout );
+ return;
+}
+</pre>
+<p>MagickInfo Structure Definition</p>
+<p>The members of the MagickInfo structure are shown in the following table:</p>
+<table border="1" class="docutils">
+<caption>MagickInfo Structure Members</caption>
+<colgroup>
+<col width="12%" />
+<col width="20%" />
+<col width="67%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>adjoin</td>
+<td>unsigned int</td>
+<td>Set to non-zero (True) if this file format supports multi-frame
+images.</td>
+</tr>
+<tr><td>blob_support</td>
+<td>unsigned int</td>
+<td>Set to non-zero (True) if the encoder and decoder for this format
+supports operating on arbitrary BLOBs (rather than only disk
+files).</td>
+</tr>
+<tr><td>data</td>
+<td>void *</td>
+<td>User specified data. A way to pass any sort of data structure to
+the endoder/decoder. To set this, GetMagickInfo() must be called
+to first obtain a pointer to the registered structure since it can
+not be set via a RegisterMagickInfo() parameter.</td>
+</tr>
+<tr><td>decoder</td>
+<td>Image *(*decoder)
+(const ImageInfo
+*)</td>
+<td>Function to decode image data and return GraphicsMagick Image.</td>
+</tr>
+<tr><td>description</td>
+<td>char *</td>
+<td>Long form image format description (e.g. &quot;CompuServe graphics
+interchange format&quot;).</td>
+</tr>
+<tr><td>encoder</td>
+<td>unsigned int
+(*encoder)(const
+ImageInfo *, Image
+*)</td>
+<td>Function to encode image data with options passed via ImageInfo
+and image represented by Image.</td>
+</tr>
+<tr><td>module</td>
+<td>char *</td>
+<td>Name of module (e.g. &quot;GIF&quot;) which registered this format. Set to
+NULL if format is not registered by a module.</td>
+</tr>
+<tr><td>name</td>
+<td>const char *</td>
+<td>Magick string (e.g. &quot;GIF&quot;) which identifies this format.</td>
+</tr>
+<tr><td>next</td>
+<td>MagickInfo</td>
+<td>Next MagickInfo struct in linked-list. NULL if none.</td>
+</tr>
+<tr><td>previous</td>
+<td>MagickInfo</td>
+<td>Previous MagickInfo struct in linked-list. NULL if none.</td>
+</tr>
+<tr><td>raw</td>
+<td>unsigned int</td>
+<td>Image format does not contain size (must be specified in
+ImageInfo).</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="monitorhandler">
+<h1><a class="toc-backref" href="#id31">MonitorHandler</a></h1>
+<p>MonitorHandler is the function type to be used for the progress monitor
+callback. Its definition is as follows:</p>
+<pre class="literal-block">
+typedef unsigned int
+ (*MonitorHandler)(const char *text, const magick_int64_t quantum,
+ const magick_uint64_t span, ExceptionInfo *exception);
+</pre>
+<p>The operation of the monitor handler is described in the following table:</p>
+<table border="1" class="docutils">
+<caption>MonitorHandler Parameters</caption>
+<colgroup>
+<col width="25%" />
+<col width="25%" />
+<col width="49%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Parameter</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>return status</td>
+<td>unsigned int</td>
+<td>The progress monitor should normally return
+True (a non-zero value) if the operation is
+to continue. If the progress monitor returns
+false, then the operation is will be aborted.
+This mechanism allows a user to terminate a
+process which is taking too long to complete.</td>
+</tr>
+<tr><td>text</td>
+<td>const char *</td>
+<td>A description of the current operation being
+performed.</td>
+</tr>
+<tr><td>quantum</td>
+<td>const magick_int64_t</td>
+<td>A value within the range of 0 to span which
+indicates the degree of progress.</td>
+</tr>
+<tr><td>span</td>
+<td>const magick_uint64_t</td>
+<td>The total range that quantum will span.</td>
+</tr>
+<tr><td>exception</td>
+<td>exceptionInfo *</td>
+<td>If the progress monitor returns False (abort
+operation), it should also update the
+structure passed via the exception parameter
+so that an error message may be reported to
+the user.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="montageinfo">
+<h1><a class="toc-backref" href="#id32">MontageInfo</a></h1>
+<pre class="literal-block">
+typedef struct _MontageInfo
+{
+ char
+ *geometry,
+ *tile,
+ *title,
+ *frame,
+ *texture,
+ *font;
+
+ double
+ pointsize;
+
+ unsigned long
+ border_width;
+
+ unsigned int
+ shadow;
+
+ PixelPacket
+ fill,
+ stroke,
+ background_color,
+ border_color,
+ matte_color;
+
+ GravityType
+ gravity;
+
+ char
+ filename[MaxTextExtent];
+
+ unsigned long
+ signature;
+} MontageInfo;
+</pre>
+</div>
+<div class="section" id="noisetype">
+<h1><a class="toc-backref" href="#id33">NoiseType</a></h1>
+<p>NoiseType is used as an argument to select the type of noise to be added
+to the image.</p>
+<table border="1" class="docutils">
+<caption>NoiseType</caption>
+<colgroup>
+<col width="48%" />
+<col width="52%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UniformNoise</td>
+<td>Uniform noise</td>
+</tr>
+<tr><td>GaussianNoise</td>
+<td>Gaussian noise</td>
+</tr>
+<tr><td>MultiplicativeGaussianNoise</td>
+<td>Multiplicative Gaussian noise</td>
+</tr>
+<tr><td>ImpulseNoise</td>
+<td>Impulse noise</td>
+</tr>
+<tr><td>LaplacianNoise</td>
+<td>Laplacian noise</td>
+</tr>
+<tr><td>PoissonNoise</td>
+<td>Poisson noise</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="orientationtype">
+<h1><a class="toc-backref" href="#id34">OrientationType</a></h1>
+<p>OrientationType specifies the orientation of the image. Useful for when
+the image is produced via a different ordinate system, the camera was
+turned on its side, or the page was scanned sideways.</p>
+<table border="1" class="docutils">
+<caption>OrientationType</caption>
+<colgroup>
+<col width="25%" />
+<col width="29%" />
+<col width="45%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Scanline Direction</td>
+<td>Frame Direction</td>
+</tr>
+<tr><td>UndefinedOrientation</td>
+<td>Unknown</td>
+<td>Unknown</td>
+</tr>
+<tr><td>TopLeftOrientation</td>
+<td>Left to right</td>
+<td>Top to bottom</td>
+</tr>
+<tr><td>TopRightOrientation</td>
+<td>Right to left</td>
+<td>Top to bottom</td>
+</tr>
+<tr><td>BottomRightOrientation</td>
+<td>Right to left</td>
+<td>Bottom to top</td>
+</tr>
+<tr><td>BottomLeftOrientation</td>
+<td>Left to right</td>
+<td>Bottom to top</td>
+</tr>
+<tr><td>LeftTopOrientation</td>
+<td>Top to bottom</td>
+<td>Left to right</td>
+</tr>
+<tr><td>RightTopOrientation</td>
+<td>Top to bottom</td>
+<td>Right to left</td>
+</tr>
+<tr><td>RightBottomOrientation</td>
+<td>Bottom to top</td>
+<td>Right to left</td>
+</tr>
+<tr><td>LeftBottomOrientation</td>
+<td>Bottom to top</td>
+<td>Left to right</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="paintmethod">
+<h1><a class="toc-backref" href="#id35">PaintMethod</a></h1>
+<p>PaintMethod specifies how pixel colors are to be replaced in the image.
+It is used to select the pixel-filling algorithm employed.</p>
+<table border="1" class="docutils">
+<caption>PaintMethod</caption>
+<colgroup>
+<col width="19%" />
+<col width="81%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>PointMethod</td>
+<td>Replace pixel color at point.</td>
+</tr>
+<tr><td>ReplaceMethod</td>
+<td>Replace color for all image pixels matching color at point.</td>
+</tr>
+<tr><td>FloodfillMethod</td>
+<td>Replace color for pixels surrounding point until encountering pixel that fails
+to match color at point.</td>
+</tr>
+<tr><td>FillToBorderMethod</td>
+<td>Replace color for pixels surrounding point until encountering pixels matching
+border color.</td>
+</tr>
+<tr><td>ResetMethod</td>
+<td>Replace colors for all pixels in image with pen color.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="pixelpacket">
+<h1><a class="toc-backref" href="#id36">PixelPacket</a></h1>
+<p>The PixelPacket structure is used to represent DirectClass color pixels
+in GraphicsMagick. If the image is indicated as a PseudoClass image, its
+DirectClass representation is only valid immediately after calling
+SyncImage(). If an image is set as PseudoClass and the DirectClass
+representation is modified, the image should then be set as DirectClass.
+Use QuantizeImage() to restore the PseudoClass colormap if the
+DirectClass representation is modified.</p>
+<p>The members of the PixelPacket structure are shown in the following table:</p>
+<table border="1" class="docutils">
+<caption>PixelPacket Structure Members</caption>
+<colgroup>
+<col width="11%" />
+<col width="10%" />
+<col width="24%" />
+<col width="33%" />
+<col width="23%" />
+</colgroup>
+<tbody valign="top">
+<tr><td rowspan="2">Member</td>
+<td rowspan="2">Type</td>
+<td colspan="3">Interpretation</td>
+</tr>
+<tr><td>RGBColorspace (3)</td>
+<td>RGBColorspace + matte(3)</td>
+<td>CMYKColorspace</td>
+</tr>
+<tr><td>red</td>
+<td>Quantum</td>
+<td>Red</td>
+<td>Red</td>
+<td>Cyan</td>
+</tr>
+<tr><td>green</td>
+<td>Quantum</td>
+<td>Green</td>
+<td>Green</td>
+<td>Magenta</td>
+</tr>
+<tr><td>blue</td>
+<td>Quantum</td>
+<td>Blue</td>
+<td>Blue</td>
+<td>Yellow</td>
+</tr>
+<tr><td>opacity</td>
+<td>Quantum</td>
+<td>Ignored</td>
+<td>Opacity</td>
+<td>Black</td>
+</tr>
+</tbody>
+</table>
+<p>Notes:</p>
+<blockquote>
+<ol class="arabic simple">
+<li>Quantum is an unsigned short (MaxRGB=65535) if GraphicsMagick is
+built using -DQuantumDepth=16 Otherwise it is an unsigned char
+(MaxRGB=255).</li>
+<li>SyncImage() may be used to synchronize the DirectClass color pixels
+to the current PseudoClass colormap.</li>
+<li>For pixel representation purposes, all colorspaces are treated like
+RGBColorspace except for CMYKColorspace.</li>
+</ol>
+</blockquote>
+</div>
+<div class="section" id="pointinfo">
+<h1><a class="toc-backref" href="#id37">PointInfo</a></h1>
+<p>The PointInfo structure is used by the ChromaticityInfo structure to
+specify chromaticity point values. This defines the boundaries and gammut
+(range of included color) of the colorspace.</p>
+<p>The members of the PointInfo structure are shown in the following table:</p>
+<table border="1" class="docutils">
+<caption>PointInfo Structure Members</caption>
+<colgroup>
+<col width="31%" />
+<col width="25%" />
+<col width="44%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>x</td>
+<td>double</td>
+<td>X ordinate</td>
+</tr>
+<tr><td>y</td>
+<td>double</td>
+<td>Y ordinate</td>
+</tr>
+<tr><td>z</td>
+<td>double</td>
+<td>Z ordinate</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="profileinfo">
+<h1><a class="toc-backref" href="#id38">ProfileInfo</a></h1>
+<p>The ProfileInfo structure is used to represent ICC or IPCT profiles in
+GraphicsMagick (stored as an opaque BLOB).</p>
+<p>The members of the ProfileInfo structure are shown in the following table:</p>
+<table border="1" class="docutils">
+<caption>ProfileInfo Structure Members</caption>
+<colgroup>
+<col width="24%" />
+<col width="40%" />
+<col width="36%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>length</td>
+<td>unsigned int</td>
+<td>Profile length</td>
+</tr>
+<tr><td>info</td>
+<td>unsigned char *</td>
+<td>Profile data</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="quantizeinfo">
+<h1><a class="toc-backref" href="#id39">QuantizeInfo</a></h1>
+<p>The QuantizeInfo structure is used to support passing parameters to
+GraphicsMagick's color quantization (reduction) functions. Color
+quantization is the process of analyzing one or more images, and
+calculating a color palette which best approximates the image within a
+specified colorspace, and then adjusting the image pixels to use the
+calculated color palette. The maximum number of colors allowed in the
+color palette may be specified.</p>
+<table border="1" class="docutils">
+<caption>Methods Supporting QuantizeInfo</caption>
+<colgroup>
+<col width="20%" />
+<col width="80%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Method</td>
+<td>Description</td>
+</tr>
+<tr><td>GetQuantizeInfo()</td>
+<td>Allocate new structure with defaults set.</td>
+</tr>
+<tr><td>CloneQuantizeInfo()</td>
+<td>Copy existing structure, allocating new structure in the process.</td>
+</tr>
+<tr><td>DestroyQuantizeInfo
+()</td>
+<td>Deallocate structure, including any members.</td>
+</tr>
+<tr><td>QuantizeImage</td>
+<td>Analyzes the colors within a reference image and chooses a fixed number of
+colors to represent the image.</td>
+</tr>
+<tr><td>QuantizeImages</td>
+<td>Analyzes the colors within a set of reference images and chooses a fixed
+number of colors to represent the set.</td>
+</tr>
+</tbody>
+</table>
+<table border="1" class="docutils">
+<caption>QuantizeInfo Structure Members</caption>
+<colgroup>
+<col width="13%" />
+<col width="14%" />
+<col width="72%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>colorspace</td>
+<td>ColorspaceType</td>
+<td>The colorspace to quantize in. Color reduction, by default, takes
+place in the RGB color space. Empirical evidence suggests that
+distances in color spaces such as YUV or YIQ correspond to
+perceptual color differences more closely than do distances in RGB
+space. The Transparent color space behaves uniquely in that it
+preserves the matte channel of the image if it exists.</td>
+</tr>
+<tr><td>dither</td>
+<td>unsigned int</td>
+<td>Set to True (non-zero) to apply Floyd/Steinberg error diffusion to the
+image. When the size of the color palette is less than the image
+colors, this trades off spacial resolution for color resolution by
+dithering to achieve a similar looking image.</td>
+</tr>
+<tr><td>measure_error</td>
+<td>unsigned int</td>
+<td>Set to True (non-zero) to calculate quantization errors when
+quantizing the image.</td>
+</tr>
+<tr><td>number_colors</td>
+<td>unsigned int</td>
+<td>Specify the maximum number of colors in the output image. Must be
+equal to, or less than MaxRGB, which is determined by the value of
+QuantumLeap when GraphicsMagick was compiled.</td>
+</tr>
+<tr><td>signature</td>
+<td>unsigned long</td>
+<td>???</td>
+</tr>
+<tr><td>tree_depth</td>
+<td>unsigned int</td>
+<td>Specify the tree depth to use while quantizing. The values zero and
+one support automatic tree depth determination. The tree depth may be
+forced via values ranging from two to eight. The ideal tree depth
+depends on the characteristics of the input image, and may be
+determined through experimentation.</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="quantum">
+<h1><a class="toc-backref" href="#id40">Quantum</a></h1>
+<p>Quantum is the base type ('unsigned char', 'unsigned short', 'unsigned
+int') used to store a pixel component (e.g. 'R' is one pixel component of
+an RGB pixel).</p>
+</div>
+<div class="section" id="quantumtype">
+<h1><a class="toc-backref" href="#id41">QuantumType</a></h1>
+<p>QuantumType is used to indicate the source or destination format of
+entire pixels, or components of pixels (&quot;Quantums&quot;) while they are being
+read, or written to, a pixel cache. The validity of these format
+specifications depends on whether the Image pixels are in RGB format,
+RGBA format, or CMYK format. The pixel Quantum size is determined by the
+Image depth (eight or sixteen bits).</p>
+<table border="1" class="docutils">
+<caption>RGB(A) Image Quantums</caption>
+<colgroup>
+<col width="18%" />
+<col width="82%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>IndexQuantum</td>
+<td>PseudoColor colormap indices (valid only for image with colormap)</td>
+</tr>
+<tr><td>RedQuantum</td>
+<td>Red pixel Quantum</td>
+</tr>
+<tr><td>GreenQuantum</td>
+<td>Green pixel Quantum</td>
+</tr>
+<tr><td>BlueQuantum</td>
+<td>Blue pixel Quantum</td>
+</tr>
+<tr><td>OpacityQuantum</td>
+<td>Opacity (Alpha) Quantum</td>
+</tr>
+</tbody>
+</table>
+<table border="1" class="docutils">
+<caption>CMY(K) Image Quantum</caption>
+<colgroup>
+<col width="40%" />
+<col width="60%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>CyanQuantum</td>
+<td>Cyan pixel Quantum</td>
+</tr>
+<tr><td>MagentaQuantum</td>
+<td>Magenta pixel Quantum</td>
+</tr>
+<tr><td>YellowQuantum</td>
+<td>Yellow pixel Quantum</td>
+</tr>
+<tr><td>BlackQuantum</td>
+<td>Black pixel Quantum</td>
+</tr>
+</tbody>
+</table>
+<table border="1" class="docutils">
+<caption>Grayscale Image Quantums</caption>
+<colgroup>
+<col width="58%" />
+<col width="42%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>GrayQuantum</td>
+<td>Gray pixel</td>
+</tr>
+<tr><td>GrayOpacityQuantum</td>
+<td>Pixel opacity</td>
+</tr>
+</tbody>
+</table>
+<table border="1" class="docutils">
+<caption>Entire Pixels (Expressed in Byte Order)</caption>
+<colgroup>
+<col width="28%" />
+<col width="72%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>RGBQuantum</td>
+<td>RGB pixel (24 or 48 octets)</td>
+</tr>
+<tr><td>RGBAQuantum</td>
+<td>RGBA pixel (32 or 64 octets)</td>
+</tr>
+<tr><td>CMYKQuantum</td>
+<td>CMYK pixel (32 or 64 octets)</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="rectangleinfo">
+<h1><a class="toc-backref" href="#id42">RectangleInfo</a></h1>
+<p>The RectangleInfo structure is used to represent positioning information
+in GraphicsMagick.</p>
+<p>The members of the RectangleInfo structure are shown in the following
+table:</p>
+<table border="1" class="docutils">
+<caption>RectangleInfo Structure Members</caption>
+<colgroup>
+<col width="20%" />
+<col width="25%" />
+<col width="55%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Member</td>
+<td>Type</td>
+<td>Description</td>
+</tr>
+<tr><td>width</td>
+<td>unsigned int</td>
+<td>Rectangle width</td>
+</tr>
+<tr><td>height</td>
+<td>unsigned int</td>
+<td>Rectangle height</td>
+</tr>
+<tr><td>x</td>
+<td>int</td>
+<td>Rectangle horizontal offset</td>
+</tr>
+<tr><td>y</td>
+<td>int</td>
+<td>Rectangle vertical offset</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="registrytype">
+<h1><a class="toc-backref" href="#id43">RegistryType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedRegistryType,
+ ImageRegistryType,
+ ImageInfoRegistryType
+} RegistryType;
+</pre>
+</div>
+<div class="section" id="renderingintent">
+<h1><a class="toc-backref" href="#id44">RenderingIntent</a></h1>
+<p>Rendering intent is a concept defined by ICC Spec ICC.1:1998-09, &quot;File
+Format for Color Profiles&quot;. GraphicsMagick uses RenderingIntent in order
+to support ICC Color Profiles.</p>
+<p>From the specification: &quot;Rendering intent specifies the style of
+reproduction to be used during the evaluation of this profile in a
+sequence of profiles. It applies specifically to that profile in the
+sequence and not to the entire sequence. Typically, the user or
+application will set the rendering intent dynamically at runtime or
+embedding time.&quot;</p>
+<table border="1" class="docutils">
+<caption>RenderingIntent</caption>
+<colgroup>
+<col width="17%" />
+<col width="83%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedIntent</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>SaturationIntent</td>
+<td>A rendering intent that specifies the saturation of the pixels in the image is
+preserved perhaps at the expense of accuracy in hue and lightness.</td>
+</tr>
+<tr><td>PerceptualIntent</td>
+<td>A rendering intent that specifies the full gamut of the image is compressed or
+expanded to fill the gamut of the destination device. Gray balance is preserved
+but colorimetric accuracy might not be preserved.</td>
+</tr>
+<tr><td>AbsoluteIntent</td>
+<td>Absolute colorimetric</td>
+</tr>
+<tr><td>RelativeIntent</td>
+<td>Relative colorimetric</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="resolutiontype">
+<h1><a class="toc-backref" href="#id45">ResolutionType</a></h1>
+<p>By default, GraphicsMagick defines resolutions in pixels per inch.
+ResolutionType provides a means to adjust this.</p>
+<table border="1" class="docutils">
+<caption>ResolutionType</caption>
+<colgroup>
+<col width="30%" />
+<col width="70%" />
+</colgroup>
+<tbody valign="top">
+<tr><td>Enumeration</td>
+<td>Description</td>
+</tr>
+<tr><td>UndefinedResolution</td>
+<td>Unset value.</td>
+</tr>
+<tr><td>PixelsPerInchResolution</td>
+<td>Density specifications are specified in units of pixels per inch
+(english units).</td>
+</tr>
+<tr><td>PixelsPerCentimeterResolution</td>
+<td>Density specifications are specified in units of pixels per
+centimeter (metric units).</td>
+</tr>
+</tbody>
+</table>
+</div>
+<div class="section" id="resourcetype">
+<h1><a class="toc-backref" href="#id46">ResourceType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedResource,
+ FileResource,
+ MemoryResource,
+ MapResource,
+ DiskResource
+} ResourceType;
+</pre>
+</div>
+<div class="section" id="segmentinfo">
+<h1><a class="toc-backref" href="#id47">SegmentInfo</a></h1>
+<pre class="literal-block">
+typedef struct _SegmentInfo
+{
+ double
+ x1,
+ y1,
+ x2,
+ y2;
+} SegmentInfo;
+</pre>
+</div>
+<div class="section" id="signatureinfo">
+<h1><a class="toc-backref" href="#id48">SignatureInfo</a></h1>
+<pre class="literal-block">
+typedef struct _SignatureInfo
+{
+ unsigned long
+ digest[8],
+ low_order,
+ high_order;
+
+ long
+ offset;
+
+ unsigned char
+ message[SignatureSize];
+} SignatureInfo;
+</pre>
+</div>
+<div class="section" id="storagetype">
+<h1><a class="toc-backref" href="#id49">StorageType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ CharPixel,
+ ShortPixel,
+ IntegerPixel,
+ LongPixel,
+ FloatPixel,
+ DoublePixel
+} StorageType;
+</pre>
+</div>
+<div class="section" id="streamhandler">
+<h1><a class="toc-backref" href="#id50">StreamHandler</a></h1>
+<pre class="literal-block">
+typedef unsigned int
+ (*StreamHandler)(const Image *,const void *,const size_t);
+</pre>
+</div>
+<div class="section" id="stretchtype">
+<h1><a class="toc-backref" href="#id51">StretchType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ NormalStretch,
+ UltraCondensedStretch,
+ ExtraCondensedStretch,
+ CondensedStretch,
+ SemiCondensedStretch,
+ SemiExpandedStretch,
+ ExpandedStretch,
+ ExtraExpandedStretch,
+ UltraExpandedStretch,
+ AnyStretch
+} StretchType;
+</pre>
+</div>
+<div class="section" id="styletype">
+<h1><a class="toc-backref" href="#id52">StyleType</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ NormalStyle,
+ ItalicStyle,
+ ObliqueStyle,
+ AnyStyle
+} StyleType;
+</pre>
+</div>
+<div class="section" id="typemetric">
+<h1><a class="toc-backref" href="#id53">TypeMetric</a></h1>
+<pre class="literal-block">
+typedef struct _TypeMetric
+{
+ PointInfo
+ pixels_per_em;
+
+ double
+ ascent,
+ descent,
+ width,
+ height,
+ max_advance;
+
+ SegmentInfo
+ bounds;
+
+ double
+ underline_position,
+ underline_thickness;
+} TypeMetric;
+</pre>
+</div>
+<div class="section" id="viewinfo">
+<h1><a class="toc-backref" href="#id54">ViewInfo</a></h1>
+<p>ViewInfo represents a handle to a pixel view, which represents a uniquely
+selectable rectangular region of pixels. The only limit on the number of
+views is the amount of available memory. Each Image contains a collection
+of default views (one view per thread) so that the image may be usefully
+accessed without needing to explicitly allocate pixel views.</p>
+<pre class="literal-block">
+typedef void *ViewInfo;
+</pre>
+</div>
+<div class="section" id="virtualpixelmethod">
+<h1><a class="toc-backref" href="#id55">VirtualPixelMethod</a></h1>
+<pre class="literal-block">
+typedef enum
+{
+ UndefinedVirtualPixelMethod,
+ ConstantVirtualPixelMethod,
+ EdgeVirtualPixelMethod,
+ MirrorVirtualPixelMethod,
+ TileVirtualPixelMethod
+} VirtualPixelMethod;
+</pre>
+</div>
+<div class="section" id="magickxresourceinfo">
+<h1><a class="toc-backref" href="#id56">MagickXResourceInfo</a></h1>
+<pre class="literal-block">
+typedef struct _XResourceInfo
+{
+ XrmDatabase
+ resource_database;
+
+ ImageInfo
+ *image_info;
+
+ QuantizeInfo
+ *quantize_info;
+
+ unsigned long
+ colors;
+
+ unsigned int
+ close_server,
+ backdrop;
+
+ char
+ *background_color,
+ *border_color;
+
+ char
+ *client_name;
+
+ XColormapType
+ colormap;
+
+ unsigned int
+ border_width,
+ color_recovery,
+ confirm_exit,
+ delay;
+
+ char
+ *display_gamma;
+
+ char
+ *font,
+ *font_name[MaxNumberFonts],
+ *foreground_color;
+
+ unsigned int
+ display_warnings,
+ gamma_correct;
+
+ char
+ *icon_geometry;
+
+ unsigned int
+ iconic,
+ immutable;
+
+ char
+ *image_geometry;
+
+ char
+ *map_type,
+ *matte_color,
+ *name;
+
+ unsigned int
+ magnify,
+ pause; char
+ *pen_colors[MaxNumberPens];
+
+ char
+ *text_font,
+ *title;
+
+ int
+ quantum;
+
+ unsigned int
+ update,
+ use_pixmap,
+ use_shared_memory;
+
+ unsigned long
+ undo_cache;
+
+ char
+ *visual_type,
+ *window_group,
+ *window_id,
+ *write_filename;
+
+ Image
+ *copy_image;
+
+ int
+ gravity;
+
+ char
+ home_directory[MaxTextExtent];
+} XResourceInfo;
+</pre>
+<hr class="docutils" />
+<p>Copyright © GraphicsMagick Group 2002 - 2020</p>
+</div>
+</div>
+</body>
+</html>
diff --git a/www/api/types.rst b/www/api/types.rst
index 013253a..03d55e4 100644
--- a/www/api/types.rst
+++ b/www/api/types.rst
@@ -284,7 +284,7 @@ CompressionType is used to express the desired compression type when
encoding an image. Be aware that most image types only support a sub-set
of the available compression types. If the compression type specified is
incompatable with the image, GraphicsMagick selects a compression type
-compatable with the image type.
+compatable with the image type, which might be no compression at all.
.. table:: CompressionType
@@ -313,6 +313,19 @@ compatable with the image type.
+---------------------------+---------------------------------------------------------------------+
|ZipCompression |Lempel-Ziv compression (LZ77) as used in PKZIP and GNU gzip. |
+---------------------------+---------------------------------------------------------------------+
+ |LZMACompression |LZMA - Lempel-Ziv-Markov chain algorithm |
+ +---------------------------+---------------------------------------------------------------------+
+ |JPEG2000Compression |JPEG 2000 - ISO/IEC std 15444-1 |
+ +---------------------------+---------------------------------------------------------------------+
+ |JBIG1Compression |JBIG v1 - ISO/IEC std 11544 / ITU-T rec T.82 |
+ +---------------------------+---------------------------------------------------------------------+
+ |JBIG2Compression |JBIG v2 - ISO/IEC std 14492 / ITU-T rec T.88 |
+ +---------------------------+---------------------------------------------------------------------+
+ |ZSTDCompression |Facebook's Zstandard/Zstd |
+ +---------------------------+---------------------------------------------------------------------+
+ |WebPCompression |Google's WebP |
+ +---------------------------+---------------------------------------------------------------------+
+
DecorationType
==============
@@ -748,6 +761,103 @@ position an object. A common default for gravity is NorthWestGravity.
|SouthEastGravity |Position object at bottom-right of region |
+--------------------------+----------------------------------------------------------------------+
+LogEventType
+============
+
+LogEventType specifies the log event type to match one or more log
+areas. Although defined as an enum type, the values are based on
+unsigned integer flags value with one mask bit set, more than one mask
+bit set, or all of the assigned mask bits set. Values are boolean
+ORed together to represent multiple event types.
+
+.. table:: LogEventType
+
+ +--------------------------+----------------------------------------------------------------------+
+ | Enumeration | Description |
+ +--------------------------+----------------------------------------------------------------------+
+ |UndefinedEventMask | No events specified |
+ +--------------------------+----------------------------------------------------------------------+
+ |NoEventsMask | No events specified |
+ +--------------------------+----------------------------------------------------------------------+
+ |ConfigureEventMask | Configuration event (related to initialization or shutdown) |
+ +--------------------------+----------------------------------------------------------------------+
+ |AnnotateEventMask | Annotation event (text drawing) |
+ +--------------------------+----------------------------------------------------------------------+
+ |RenderEventMask | Rendering event (vector drawing) |
+ +--------------------------+----------------------------------------------------------------------+
+ |TransformEventMask | Image transformation event (e.g. cropping) |
+ +--------------------------+----------------------------------------------------------------------+
+ |LocaleEventMask | Locale event (internationalization) |
+ +--------------------------+----------------------------------------------------------------------+
+ |CoderEventMask | Coder event (file decode or encode) |
+ +--------------------------+----------------------------------------------------------------------+
+ |X11EventMask | X11 event (event related to use of X11) |
+ +--------------------------+----------------------------------------------------------------------+
+ |CacheEventMask | Pixel cache event (pixel storage in memory or on disk) |
+ +--------------------------+----------------------------------------------------------------------+
+ |BlobEventMask | Blob event (I/O to/from memory or a file) |
+ +--------------------------+----------------------------------------------------------------------+
+ |DeprecateEventMask | Deprecation event (use of a function which will be removed) |
+ +--------------------------+----------------------------------------------------------------------+
+ |UserEventMask | User event (event allowed for the user, not otherwise used) |
+ +--------------------------+----------------------------------------------------------------------+
+ |ResourceEventMask | Resource event (resource limit assignment, allocation/deallocation) |
+ +--------------------------+----------------------------------------------------------------------+
+ |TemporaryFileEventMask | Temporary file event (temporary file created or removed) |
+ +--------------------------+----------------------------------------------------------------------+
+ |ExceptionEventMask | Exception event (a warning or error was reported into ExceptionInfo) |
+ +--------------------------+----------------------------------------------------------------------+
+ |OptionEventMask | Option event (something related to a user provided option) |
+ +--------------------------+----------------------------------------------------------------------+
+ |InformationEventMask | Information event |
+ +--------------------------+----------------------------------------------------------------------+
+ |WarningEventMask | Warning event (a warning was reported into ExceptionInfo) |
+ +--------------------------+----------------------------------------------------------------------+
+ |ErrorEventMask | Error event (an error was reported into ExceptionInfo) |
+ +--------------------------+----------------------------------------------------------------------+
+ |FatalErrorEventMask | Fatal error event (a fatal error was reported into ExceptionInfo) |
+ +--------------------------+----------------------------------------------------------------------+
+ |AllEventsMask | All events (matches any/all events) |
+ +--------------------------+----------------------------------------------------------------------+
+
+
+LogMethod
+=========
+
+LogMethod is a call-back function type in the form::
+
+ typedef void (*LogMethod)(const ExceptionType type,const char *text)
+
+LogOutputType
+=============
+
+LogOutputType specifies how/where logging ("tracing") output is to be directed.
+
+.. table:: LogOutputType
+
+ +--------------------------+----------------------------------------------------------------------+
+ | Enumeration | Description |
+ +--------------------------+----------------------------------------------------------------------+
+ |DisabledOutput |Reporting disabled |
+ +--------------------------+----------------------------------------------------------------------+
+ |UndefinedOutput |Reporting disabled |
+ +--------------------------+----------------------------------------------------------------------+
+ |StdoutOutput |Log to stdout in "human readable" format |
+ +--------------------------+----------------------------------------------------------------------+
+ |StderrOutput |Log to stderr in "human readable" format |
+ +--------------------------+----------------------------------------------------------------------+
+ |XMLFileOutput |Log to a file in an XML format |
+ +--------------------------+----------------------------------------------------------------------+
+ |TXTFileOutput |Log to a file in a text format |
+ +--------------------------+----------------------------------------------------------------------+
+ |Win32DebugOutput |Windows, Output events to the application/system debugger. |
+ +--------------------------+----------------------------------------------------------------------+
+ |Win32EventlogOutput |Windows, Output events to the Application event log. |
+ +--------------------------+----------------------------------------------------------------------+
+ |MethodOutput |Log by calling registered C-language callback function |
+ +--------------------------+----------------------------------------------------------------------+
+
+
Image
=====
@@ -2065,9 +2175,3 @@ MagickXResourceInfo
char
home_directory[MaxTextExtent];
} XResourceInfo;
-
--------------------------------------------------------------------------------
-
-.. |copy| unicode:: U+000A9 .. COPYRIGHT SIGN
-
-Copyright |copy| GraphicsMagick Group 2002 - 2020
diff --git a/www/api/widget.html b/www/api/widget.html
index 0c9f7d3..280c7aa 100644
--- a/www/api/widget.html
+++ b/www/api/widget.html
@@ -13,23 +13,23 @@
<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
<span class="title">GraphicsMagick</span>
<form action="http://www.google.com/search">
- <input type="hidden" name="domains" value="www.graphicsmagick.org" />
- <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
- <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+<span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
</form>
</div>
<div class="navmenu">
<ul>
-<li><a href="../index.html">Home</a></li>
-<li><a href="../project.html">Project</a></li>
-<li><a href="../download.html">Download</a></li>
-<li><a href="../README.html">Install</a></li>
-<li><a href="../Hg.html">Source</a></li>
-<li><a href="../NEWS.html">News</a> </li>
-<li><a href="../utilities.html">Utilities</a></li>
-<li><a href="../programming.html">Programming</a></li>
-<li><a href="../reference.html">Reference</a></li>
+ <li><a href="../index.html">Home</a></li>
+ <li><a href="../project.html">Project</a></li>
+ <li><a href="../download.html">Download</a></li>
+ <li><a href="../README.html">Install</a></li>
+ <li><a href="../Hg.html">Source</a></li>
+ <li><a href="../NEWS.html">News</a> </li>
+ <li><a href="../utilities.html">Utilities</a></li>
+ <li><a href="../programming.html">Programming</a></li>
+ <li><a href="../reference.html">Reference</a></li>
</ul>
</div>
<div class="document" id="widget">
@@ -500,5 +500,10 @@ window.</dd>
</div>
</div>
</div>
+
+<hr class="docutils">
+<div class="document">
+ <p><a href="../Copyright.html">Copyright</a> © GraphicsMagick Group 2002 - 2020<!--SPONSOR_LOGO--></p>
+</div>
</body>
</html>
diff --git a/www/api/widget.html.orig b/www/api/widget.html.orig
new file mode 100644
index 0000000..4f26808
--- /dev/null
+++ b/www/api/widget.html.orig
@@ -0,0 +1,504 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+<meta name="generator" content="Docutils 0.13.1: http://docutils.sourceforge.net/" />
+<title>widget</title>
+<link rel="stylesheet" href="../docutils-api.css" type="text/css" />
+</head>
+<body>
+
+<div class="banner">
+<img src="../images/gm-107x76.png" alt="GraphicMagick logo" width="107" height="76" />
+<span class="title">GraphicsMagick</span>
+<form action="http://www.google.com/search">
+ <input type="hidden" name="domains" value="www.graphicsmagick.org" />
+ <input type="hidden" name="sitesearch" value="www.graphicsmagick.org" />
+ <span class="nowrap"><input type="text" name="q" size="25" maxlength="255" />&nbsp;<input type="submit" name="sa" value="Search" /></span>
+</form>
+</div>
+
+<div class="navmenu">
+<ul>
+<li><a href="../index.html">Home</a></li>
+<li><a href="../project.html">Project</a></li>
+<li><a href="../download.html">Download</a></li>
+<li><a href="../README.html">Install</a></li>
+<li><a href="../Hg.html">Source</a></li>
+<li><a href="../NEWS.html">News</a> </li>
+<li><a href="../utilities.html">Utilities</a></li>
+<li><a href="../programming.html">Programming</a></li>
+<li><a href="../reference.html">Reference</a></li>
+</ul>
+</div>
+<div class="document" id="widget">
+<h1 class="title">widget</h1>
+<h2 class="subtitle" id="x11-widgets">X11 Widgets</h2>
+
+<div class="contents topic" id="contents">
+<p class="topic-title first">Contents</p>
+<ul class="simple">
+<li><a class="reference internal" href="#xcolorbrowserwidget" id="id25">XColorBrowserWidget</a></li>
+<li><a class="reference internal" href="#xcommandwidget" id="id26">XCommandWidget</a></li>
+<li><a class="reference internal" href="#xconfirmwidget" id="id27">XConfirmWidget</a></li>
+<li><a class="reference internal" href="#xdialogwidget" id="id28">XDialogWidget</a></li>
+<li><a class="reference internal" href="#xfilebrowserwidget" id="id29">XFileBrowserWidget</a></li>
+<li><a class="reference internal" href="#xfontbrowserwidget" id="id30">XFontBrowserWidget</a></li>
+<li><a class="reference internal" href="#xinfowidget" id="id31">XInfoWidget</a></li>
+<li><a class="reference internal" href="#xlistbrowserwidget" id="id32">XListBrowserWidget</a></li>
+<li><a class="reference internal" href="#xmenuwidget" id="id33">XMenuWidget</a></li>
+<li><a class="reference internal" href="#xmonitorwidget" id="id34">XMonitorWidget</a></li>
+<li><a class="reference internal" href="#xnoticewidget" id="id35">XNoticeWidget</a></li>
+<li><a class="reference internal" href="#xpreferenceswidget" id="id36">XPreferencesWidget</a></li>
+<li><a class="reference internal" href="#xtextviewwidget" id="id37">XTextViewWidget</a></li>
+</ul>
+</div>
+<div class="section" id="xcolorbrowserwidget">
+<h1><a class="toc-backref" href="#id25">XColorBrowserWidget</a></h1>
+<div class="section" id="synopsis">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXColorBrowserWidget( Display *display, MagickXWindows *windows, const char *action,
+ char *reply );
+</pre>
+</div>
+<div class="section" id="description">
+<h2>Description</h2>
+<p>Method MagickXColorBrowserWidget displays a Color Browser widget with a color
+query to the user. The user keys a reply and presses the Action or Cancel
+button to exit. The typed text is returned as the reply function parameter.</p>
+<p>The format of the MagickXColorBrowserWidget method is:</p>
+<pre class="literal-block">
+void MagickXColorBrowserWidget( Display *display, MagickXWindows *windows, const char *action,
+ char *reply );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>action:</dt>
+<dd>Specifies a pointer to the action of this widget.</dd>
+<dt>reply:</dt>
+<dd>The response from the user is returned in this parameter.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xcommandwidget">
+<h1><a class="toc-backref" href="#id26">XCommandWidget</a></h1>
+<div class="section" id="id1">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int MagickXCommandWidget( Display *display, MagickXWindows *windows,
+ const char ** selections, XEvent *event );
+</pre>
+</div>
+<div class="section" id="id2">
+<h2>Description</h2>
+<p>Method MagickXCommandWidget maps a menu and returns the command pointed to by
+the user when the button is released.</p>
+<p>The format of the MagickXCommandWidget method is:</p>
+<pre class="literal-block">
+int MagickXCommandWidget( Display *display, MagickXWindows *windows,
+ const char ** selections, XEvent *event );
+</pre>
+<dl class="docutils">
+<dt>selection_number:</dt>
+<dd>Specifies the number of the selection that the
+user choose.</dd>
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>selections:</dt>
+<dd>Specifies a pointer to one or more strings that comprise
+the choices in the menu.</dd>
+<dt>event:</dt>
+<dd>Specifies a pointer to a X11 XEvent structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xconfirmwidget">
+<h1><a class="toc-backref" href="#id27">XConfirmWidget</a></h1>
+<div class="section" id="id3">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int MagickXConfirmWidget( Display *display, MagickXWindows *windows, const char *reason,
+ const char *description );
+</pre>
+</div>
+<div class="section" id="id4">
+<h2>Description</h2>
+<p>Method MagickXConfirmWidget displays a Confirm widget with a notice to the user.
+The function returns -1 if Dismiss is pressed, 0 for Cancel, and 1 for
+Yes.</p>
+<p>The format of the MagickXConfirmWidget method is:</p>
+<pre class="literal-block">
+int MagickXConfirmWidget( Display *display, MagickXWindows *windows, const char *reason,
+ const char *description );
+</pre>
+<dl class="docutils">
+<dt>status:</dt>
+<dd>Method MagickXConfirmWidget returns True if the user presses Yes
+otherwise False is returned.</dd>
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>reason:</dt>
+<dd>Specifies the message to display before terminating the
+program.</dd>
+<dt>description:</dt>
+<dd>Specifies any description to the message.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xdialogwidget">
+<h1><a class="toc-backref" href="#id28">XDialogWidget</a></h1>
+<div class="section" id="id5">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int MagickXDialogWidget( Display *display, MagickXWindows *windows, const char *action,
+ const char *query, char *reply );
+</pre>
+</div>
+<div class="section" id="id6">
+<h2>Description</h2>
+<p>Method MagickXDialogWidget displays a Dialog widget with a query to the user.
+The user keys a reply and presses the Ok or Cancel button to exit. The
+typed text is returned as the reply function parameter.</p>
+<p>The format of the MagickXDialogWidget method is:</p>
+<pre class="literal-block">
+int MagickXDialogWidget( Display *display, MagickXWindows *windows, const char *action,
+ const char *query, char *reply );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>action:</dt>
+<dd>Specifies a pointer to the action of this widget.</dd>
+<dt>query:</dt>
+<dd>Specifies a pointer to the query to present to the user.</dd>
+<dt>reply:</dt>
+<dd>The response from the user is returned in this parameter.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xfilebrowserwidget">
+<h1><a class="toc-backref" href="#id29">XFileBrowserWidget</a></h1>
+<div class="section" id="id7">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXFileBrowserWidget( Display *display, MagickXWindows *windows, const char *action,
+ char *reply );
+</pre>
+</div>
+<div class="section" id="id8">
+<h2>Description</h2>
+<p>Method MagickXFileBrowserWidget displays a File Browser widget with a file query
+to the user. The user keys a reply and presses the Action or Cancel button
+to exit. The typed text is returned as the reply function parameter.</p>
+<p>The format of the MagickXFileBrowserWidget method is:</p>
+<pre class="literal-block">
+void MagickXFileBrowserWidget( Display *display, MagickXWindows *windows, const char *action,
+ char *reply );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>action:</dt>
+<dd>Specifies a pointer to the action of this widget.</dd>
+<dt>reply:</dt>
+<dd>The response from the user is returned in this parameter.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xfontbrowserwidget">
+<h1><a class="toc-backref" href="#id30">XFontBrowserWidget</a></h1>
+<div class="section" id="id9">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXFontBrowserWidget( Display *display, MagickXWindows *windows, const char *action,
+ char *reply );
+</pre>
+</div>
+<div class="section" id="id10">
+<h2>Description</h2>
+<p>Method MagickXFontBrowserWidget displays a Font Browser widget with a font query
+to the user. The user keys a reply and presses the Action or Cancel button
+to exit. The typed text is returned as the reply function parameter.</p>
+<p>The format of the MagickXFontBrowserWidget method is:</p>
+<pre class="literal-block">
+void MagickXFontBrowserWidget( Display *display, MagickXWindows *windows, const char *action,
+ char *reply );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>action:</dt>
+<dd>Specifies a pointer to the action of this widget.</dd>
+<dt>reply:</dt>
+<dd>The response from the user is returned in this parameter.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xinfowidget">
+<h1><a class="toc-backref" href="#id31">XInfoWidget</a></h1>
+<div class="section" id="id11">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXInfoWidget( Display *display, MagickXWindows *windows, const char *activity );
+</pre>
+</div>
+<div class="section" id="id12">
+<h2>Description</h2>
+<p>Method MagickXInfoWidget displays text in the Info widget. The purpose is to
+inform the user that what activity is currently being performed (e.g.
+reading an image, rotating an image, etc.).</p>
+<p>The format of the MagickXInfoWidget method is:</p>
+<pre class="literal-block">
+void MagickXInfoWidget( Display *display, MagickXWindows *windows, const char *activity );
+</pre>
+<p>A description of each parameter follows:</p>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>activity:</dt>
+<dd>This character string reflects the current activity and is
+displayed in the Info widget.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xlistbrowserwidget">
+<h1><a class="toc-backref" href="#id32">XListBrowserWidget</a></h1>
+<div class="section" id="id13">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXListBrowserWidget( Display *display, MagickXWindows *windows,
+ MagickXWindowInfo *window_info, const char ** list,
+ const char *action, const char *query, char *reply );
+</pre>
+</div>
+<div class="section" id="id14">
+<h2>Description</h2>
+<p>Method MagickXListBrowserWidget displays a List Browser widget with a query to
+the user. The user keys a reply or select a reply from the list. Finally,
+the user presses the Action or Cancel button to exit. The typed text is
+returned as the reply function parameter.</p>
+<p>The format of the MagickXListBrowserWidget method is:</p>
+<pre class="literal-block">
+void MagickXListBrowserWidget( Display *display, MagickXWindows *windows,
+ MagickXWindowInfo *window_info, const char ** list,
+ const char *action, const char *query, char *reply );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>list:</dt>
+<dd>Specifies a pointer to an array of strings. The user can
+select from these strings as a possible reply value.</dd>
+<dt>action:</dt>
+<dd>Specifies a pointer to the action of this widget.</dd>
+<dt>query:</dt>
+<dd>Specifies a pointer to the query to present to the user.</dd>
+<dt>reply:</dt>
+<dd>The response from the user is returned in this parameter.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xmenuwidget">
+<h1><a class="toc-backref" href="#id33">XMenuWidget</a></h1>
+<div class="section" id="id15">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+int MagickXMenuWidget( Display *display, MagickXWindows *windows, const char *title,
+ const char ** selections, char *item );
+</pre>
+</div>
+<div class="section" id="id16">
+<h2>Description</h2>
+<p>Method MagickXMenuWidget maps a menu and returns the command pointed to by the
+user when the button is released.</p>
+<p>The format of the MagickXMenuWidget method is:</p>
+<pre class="literal-block">
+int MagickXMenuWidget( Display *display, MagickXWindows *windows, const char *title,
+ const char ** selections, char *item );
+</pre>
+<dl class="docutils">
+<dt>selection_number:</dt>
+<dd>Specifies the number of the selection that the
+user choose.</dd>
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>title:</dt>
+<dd>Specifies a character string that describes the menu selections.</dd>
+<dt>selections:</dt>
+<dd>Specifies a pointer to one or more strings that comprise
+the choices in the menu.</dd>
+<dt>item:</dt>
+<dd>Specifies a character array. The item selected from the menu
+is returned here.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xmonitorwidget">
+<h1><a class="toc-backref" href="#id34">XMonitorWidget</a></h1>
+<div class="section" id="id17">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXMonitorWidget( Display *display, MagickXWindows *windows, const char *task,
+ const magick_int64_t quantum, const magick_uint64_t span );
+</pre>
+</div>
+<div class="section" id="id18">
+<h2>Description</h2>
+<p>Method MagickXMonitorWidget displays the progress a task is making in
+completing a task. A span of zero toggles the active status. An inactive
+state disables the progress monitor.</p>
+<p>The format of the MagickXMonitorWidget method is:</p>
+<pre class="literal-block">
+void MagickXMonitorWidget( Display *display, MagickXWindows *windows, const char *task,
+ const magick_int64_t quantum, const magick_uint64_t span );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>task:</dt>
+<dd>Identifies the task in progress.</dd>
+<dt>quantum:</dt>
+<dd>Specifies the quantum position within the span which represents
+how much progress has been made in completing a task.</dd>
+<dt>span:</dt>
+<dd>Specifies the span relative to completing a task.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xnoticewidget">
+<h1><a class="toc-backref" href="#id35">XNoticeWidget</a></h1>
+<div class="section" id="id19">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXNoticeWidget( Display *display, MagickXWindows *windows, const char *reason,
+ const char *description );
+</pre>
+</div>
+<div class="section" id="id20">
+<h2>Description</h2>
+<p>Method MagickXNoticeWidget displays a Notice widget with a notice to the user.
+The function returns when the user presses the &quot;Dismiss&quot; button.</p>
+<p>The format of the MagickXNoticeWidget method is:</p>
+<pre class="literal-block">
+void MagickXNoticeWidget( Display *display, MagickXWindows *windows, const char *reason,
+ const char *description );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>reason:</dt>
+<dd>Specifies the message to display before terminating the
+program.</dd>
+<dt>description:</dt>
+<dd>Specifies any description to the message.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xpreferenceswidget">
+<h1><a class="toc-backref" href="#id36">XPreferencesWidget</a></h1>
+<div class="section" id="id21">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+unsigned int MagickXPreferencesWidget( Display *display,
+ <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ MagickXWindows *windows );
+</pre>
+</div>
+<div class="section" id="id22">
+<h2>Description</h2>
+<p>Method MagickXPreferencesWidget displays a Preferences widget with program
+preferences. If the user presses the Apply button, the preferences are
+stored in a configuration file in the users' home directory.</p>
+<p>The format of the MagickXPreferencesWidget method is:</p>
+<pre class="literal-block">
+unsigned int MagickXPreferencesWidget( Display *display,
+ <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ MagickXWindows *windows );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>resource_info:</dt>
+<dd>Specifies a pointer to a X11 MagickXResourceInfo structure.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+</dl>
+</div>
+</div>
+<div class="section" id="xtextviewwidget">
+<h1><a class="toc-backref" href="#id37">XTextViewWidget</a></h1>
+<div class="section" id="id23">
+<h2>Synopsis</h2>
+<pre class="literal-block">
+void MagickXTextViewWidget( Display *display, const <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ MagickXWindows *windows, const unsigned int mono,
+ const char *title, const char ** textlist );
+</pre>
+</div>
+<div class="section" id="id24">
+<h2>Description</h2>
+<p>Method MagickXTextViewWidget displays text in a Text View widget.</p>
+<p>The format of the MagickXTextViewWidget method is:</p>
+<pre class="literal-block">
+void MagickXTextViewWidget( Display *display, const <a class="reference external" href="../api/types.html#magickxresourceinfo">MagickXResourceInfo</a> *resource_info,
+ MagickXWindows *windows, const unsigned int mono,
+ const char *title, const char ** textlist );
+</pre>
+<dl class="docutils">
+<dt>display:</dt>
+<dd>Specifies a connection to an X server; returned from
+XOpenDisplay.</dd>
+<dt>resource_info:</dt>
+<dd>Specifies a pointer to a X11 MagickXResourceInfo structure.</dd>
+<dt>window:</dt>
+<dd>Specifies a pointer to a MagickXWindows structure.</dd>
+<dt>mono:</dt>
+<dd>Use mono-spaced font when displaying text.</dd>
+<dt>title:</dt>
+<dd>This character string is displayed at the top of the widget
+window.</dd>
+<dt>textlist:</dt>
+<dd>This string list is displayed within the Text View widget.</dd>
+</dl>
+</div>
+</div>
+</div>
+</body>
+</html>