ImageMagick<sup><a href="http://tarr.uspto.gov/servlet/tarr?regser=serial&entry=78333969">®</a></sup> is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of <a href="www/formats.html">formats</a> (over 200) including PNG, JPEG, JPEG-2000, GIF, TIFF, <a href="www/motion-picture.html">DPX</a>, <a href="www/high-dynamic-range.html">EXR</a>, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.</p>
<p>The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite language. Choose from these interfaces: <a href="www/api.html#ada">G2F</a> (Ada), <a href="www/api.html#c">MagickCore</a> (C), <a href="www/api.html#c">MagickWand</a> (C), <a href="www/api.html#ch">ChMagick</a> (Ch), <a href="www/api.html#com_">ImageMagickObject</a> (COM+), <a href="www/api.html#c__">Magick++</a> (C++), <a href="www/api.html#java">JMagick</a> (Java), <a href="www/api.html#lisp">L-Magick</a> (Lisp), <a href="www/api.html#lua">Lua</a>, <a href="www/api.html#neko">NMagick</a> (Neko/haXe), <a href="www/api.html#dot-net">Magick.NET</a> (.NET), <a href="www/api.html#pascal">PascalMagick</a> (Pascal), <a href="www/api.html#perl">PerlMagick</a> (Perl), <a href="www/api.html#php">MagickWand for PHP</a> (PHP), <a href="www/api.html#php">IMagick</a> (PHP), <a href="www/api.html#python">PythonMagick</a> (Python), <a href="www/api.html#ruby">RMagick</a> (Ruby), or <a href="www/api.html#tcl">TclMagick</a> (Tcl/TK). With a language interface, use ImageMagick to modify or create images dynamically and <var>automagically</var>.</p>
-<p>ImageMagick utiilizes multiple computational threads to increase performance and can read, process, or write mega-, giga-, or tera-pixel image sizes.</p>
+<p>ImageMagick utilizes multiple computational threads to increase performance and can read, process, or write mega-, giga-, or tera-pixel image sizes.</p>
<p>ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you may use, copy, modify, and distribute in both open and proprietary applications. It is distributed under the Apache 2.0 <a href="www/license.html">license</a>.</p>
<p>The ImageMagick development process ensures a <a href="http://upstream-tracker.org/versions/imagemagick.html">stable API</a> and ABI. Before each ImageMagick release, we perform a comprehensive security assessment that includes <a href="https://code.google.com/p/address-sanitizer/">memory error</a> and <a href="https://code.google.com/p/data-race-test/wiki/ThreadSanitizer">thread data race</a> detection to prevent security vulnerabilities.</p>
-<p>The current release is ImageMagick 6.9.1-3 available from <a href="http://www.imagemagick.org/ImageMagick-7.0.0">http://www.imagemagick.org/download</a>. It runs on <a href="http://www.imagemagick.org/download/linux/">Linux</a>, <a href="http://www.imagemagick.org/download/binaries/">Windows</a>, <a href="http://www.imagemagick.org/download/binaries/">Mac Os X</a>, <a href="http://www.imagemagick.org/download/iOS/">iOS</a>, Android OS, and others.</p>
+<p>The current release is ImageMagick 6.9.1-4 available from <a href="http://www.imagemagick.org/ImageMagick-7.0.0">http://www.imagemagick.org/download</a>. It runs on <a href="http://www.imagemagick.org/download/linux/">Linux</a>, <a href="http://www.imagemagick.org/download/binaries/">Windows</a>, <a href="http://www.imagemagick.org/download/binaries/">Mac Os X</a>, <a href="http://www.imagemagick.org/download/iOS/">iOS</a>, Android OS, and others.</p>
-<p>The authoritative ImageMagick web site is <a href="index.html">http://www.imagemagick.org</a>.</p>
+<p>The authoritative ImageMagick web site is <a href="index.html">http://www.imagemagick.org</a>. The authoritative source code repository is <a href="https://subversion.imagemagick.org/subversion/ImageMagick/">https://subversion.imagemagick.org/subversion/ImageMagick/</a>.</p>
<h2 class="magick-header">Features and Capabilities</h2>
<p>Here are just a few <a href="www/examples.html">examples</a> of what ImageMagick can do for you:</p>
<p>The configure script looks at your environment and decides what it can cobble together to get ImageMagick compiled and installed on your system. This includes finding a compiler, where your compiler header files are located (e.g. stdlib.h), and if any delegate libraries are available for ImageMagick to use (e.g. JPEG, PNG, TIFF, etc.). If you are willing to accept configure's default options, and build from within the source directory, you can simply type:</p>
-<pre><span class="crtprompt"> </span><span class="crtin">cd ImageMagick-6.9.1-3</span><span class="crtout"></span><span class="crtprompt"> </span><span class="crtin">./configure</span></pre>
+<pre><span class="crtprompt"> </span><span class="crtin">cd ImageMagick-6.9.1-4</span><span class="crtout"></span><span class="crtprompt"> </span><span class="crtin">./configure</span></pre>
<p>Watch the configure script output to verify that it finds everything that
you think it should. Pay particular attention to the last lines of the script output. For example, here is a recent report from our system:</p>
<p><a href="download.html">Download</a> the ImageMagick source distribution and verify the distribution against its <a href="http://www.imagemagick.org/download/digest.rdf">message digest</a>.</p>
<p>Unpack and change into the top-level ImageMagick directory:</p>
- <pre><span class="crtprompt"> </span><span class="crtin">tar xvzf ImageMagick-6.9.1-3.tar.gz</span><span class="crtout"></span><span class="crtprompt"> </span><span class="crtin">cd ImageMagick-6.9.1-3</span></pre> <p>Configure ImageMagick:</p>
+ <pre><span class="crtprompt"> </span><span class="crtin">tar xvzf ImageMagick-6.9.1-4.tar.gz</span><span class="crtout"></span><span class="crtprompt"> </span><span class="crtin">cd ImageMagick-6.9.1-4</span></pre> <p>Configure ImageMagick:</p>
<pre>
./configure --prefix=/opt --with-quantum-depth=16 \
--disable-dependency-tracking --with-x=yes \
<p>Although you can download and install delegate libraries yourself, many are already available in the <a href="http://gnuwin32.sourceforge.net/">GnuWin32</a> distribution. Download and install whichever delegate libraries you require such as JPEG, PNG, TIFF, etc. Make sure you specify the development headers when you install a package. Next type,</p>
-<pre><span class="crtprompt"> </span><span class="crtin">tar jxvf ImageMagick-6.9.1-?.tar.bz2</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">cd ImageMagick-6.9.1-3</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">export CPPFLAGS="-Ic:/Progra~1/GnuWin32/include"</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">export LDFLAGS="-Lc:/Progra~1/GnuWin32/lib"</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">./configure --without-perl</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">make</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">sudo make install</span></pre>
+<pre><span class="crtprompt"> </span><span class="crtin">tar jxvf ImageMagick-6.9.1-?.tar.bz2</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">cd ImageMagick-6.9.1-4</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">export CPPFLAGS="-Ic:/Progra~1/GnuWin32/include"</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">export LDFLAGS="-Lc:/Progra~1/GnuWin32/lib"</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">./configure --without-perl</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">make</span><span class="crtout"><br></span><span class="crtprompt"> </span><span class="crtin">sudo make install</span></pre>
<h2 class="magick-header"><a id="problems"></a>Dealing with Unexpected Problems</h2>
<p>Chances are the download, configure, build, and install of ImageMagick went flawlessly as it is intended, however, certain systems and environments may cause one or more steps to fail. We discuss a few problems we've run across and how to take corrective action to ensure you have a working release of ImageMagick</p>
<ol>
<li>Double-click on
- <code>VisualMagick/bin/ImageMagick-6.9.1-3-Q16-windows-dll.exe</code>
+ <code>VisualMagick/bin/ImageMagick-6.9.1-4-Q16-windows-dll.exe</code>
to launch the ImageMagick binary distribution.</li>
<li>Complete the installer screens to install ImageMagick on your system.</li>
</ol>
<div class="container">
<div class="magick-header">
-<p class="lead magick-description">ImageMagick includes a number of ready-made ImageMagick interfaces. This makes it possible to modify or create images automagically and dynamically.</p>
+<p class="lead magick-description">ImageMagick includes a number of ready-made interfaces. This makes it possible to modify or create images automagically and dynamically utilizing your favorite development platform.</p>
<dl class="dl-horizontal">
<dt><a id="ada"></a>Ada</dt>
<dt><a id="ruby"></a>Ruby</dt>
-<dd><a href="http://rmagick.rubyforge.org/">RMagick</a> is an interface between the Ruby programming language and the <a href="magick-core.html">MagickCore</a> image processing libraries. Get started with RMagick by perusing the <a href="http://www.imagemagick.org/RMagick/doc/">documentation</a>.</dd>
+<dd><a href="https://rmagick.github.io/">RMagick</a> is an interface between the Ruby programming language and the <a href="magick-core.html">MagickCore</a> image processing libraries. Get started with RMagick by perusing the <a href="https://rmagick.github.io/">documentation</a>.</dd>
<dd><a href="http://magickwand.rubyforge.org/">MagickWand for Ruby</a> is an interface between the Ruby programming language and the <a href="magick-wand.html">MagickWand</a> image processing libraries. Get started with MagickWand for PHP by perusing the <a href="http://magickwand.rubyforge.org/">documentation</a>.</dd>
<p>When the pixel cache is initialized, pixels are scaled from whatever bit depth they originated from to that required by the pixel cache. For example, a 1-channel 1-bit monochrome PBM image is scaled to a 4 channel 8-bit RGBA image, if you are using the Q8 version of ImageMagick, and 16-bit RGBA for the Q16 version. You can determine which version you have with the <a href="command-line-options.html#version">‑version</a> option: </p>
-<pre><span class="crtprompt"> </span><span class="crtin">identify -version</span><span class="crtout">Version: ImageMagick 6.9.1-3 2015-03-21 Q16 http://www.imagemagick.org</span></pre>
+<pre><span class="crtprompt"> </span><span class="crtin">identify -version</span><span class="crtout">Version: ImageMagick 6.9.1-4 2015-03-21 Q16 http://www.imagemagick.org</span></pre>
<p>As you can see, the convenience of the pixel cache sometimes comes with a trade-off in storage (e.g. storing a 1-bit monochrome image as 16-bit RGBA is wasteful) and speed (i.e. storing the entire image in memory is generally slower than accessing one scanline of pixels at a time). In most cases, the benefits of the pixel cache typically outweigh any disadvantages.</p>
<h3><a id="authentic-pixels"></a>Access the Pixel Cache</h3>
<pre>
identify -version
-Features: OpenMP OpenCL
+Features: DPC Cipher Modules OpenCL OpenMP
</pre>
<p>If so, run this command to realize a significant speed-up for image convolution:</p>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3.i386.rpm</td>
- <td><a href="http://www.imagemagick.org/download/linux/CentOS/i386/ImageMagick-6.9.1-3.i386.rpm">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/linux/CentOS/i386/ImageMagick-6.9.1-3.i386.rpm">download</a></td>
+ <td>ImageMagick-6.9.1-4.i386.rpm</td>
+ <td><a href="http://www.imagemagick.org/download/linux/CentOS/i386/ImageMagick-6.9.1-4.i386.rpm">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/linux/CentOS/i386/ImageMagick-6.9.1-4.i386.rpm">download</a></td>
<td>Redhat / CentOS 5.11 i386 RPM</td>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3.x86_64.rpm</td>
- <td><a href="http://www.imagemagick.org/download/linux/CentOS/x86_64/ImageMagick-6.9.1-3.x86_64.rpm">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/linux/CentOS/x86_64/ImageMagick-6.9.1-3.x86_64.rpm">download</a></td>
+ <td>ImageMagick-6.9.1-4.x86_64.rpm</td>
+ <td><a href="http://www.imagemagick.org/download/linux/CentOS/x86_64/ImageMagick-6.9.1-4.x86_64.rpm">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/linux/CentOS/x86_64/ImageMagick-6.9.1-4.x86_64.rpm">download</a></td>
<td>Redhat / CentOS 5.11 x86_64 RPM</td>
</tr>
<p>ImageMagick RPM's are self-installing. Simply type the following command and you're ready to start using ImageMagick:</p>
-<pre><span class="crtprompt"> </span><span class="crtin">rpm -Uvh ImageMagick-6.9.1-3.i386.rpm</span></pre>
+<pre><span class="crtprompt"> </span><span class="crtin">rpm -Uvh ImageMagick-6.9.1-4.i386.rpm</span></pre>
<p>For other systems, create (or choose) a directory to install the package into and change to that directory, for example:</p>
<pre>
<pre>
./imagemagick_compile.sh <var>VERSION</var>
</pre>
-<p>where <var>VERSION</var> is the version of ImageMagick you want to compile (i.e.: 6.9.1-3, svn, ...)</p>
+<p>where <var>VERSION</var> is the version of ImageMagick you want to compile (i.e.: 6.9.1-4, svn, ...)</p>
<p>This script compiles ImageMagick as a static library to be included in iOS projects and adds support for</p>
<ul>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q16-x64-dll.exe</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q16-x64-dll.exe">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q16-x64-dll.exe">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q16-x64-dll.exe</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q16-x64-dll.exe">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q16-x64-dll.exe">download</a></td>
<td>Win64 dynamic at 16 bits-per-pixel</td>
</tr>
</table></div>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q16-x64-static.exe</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q16-x64-static.exe">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q16-x64-static.exe">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q16-x64-static.exe</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q16-x64-static.exe">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q16-x64-static.exe">download</a></td>
<td>Win64 static at 16 bits-per-pixel</td>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q8-x64-dll.exe</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q8-x64-dll.exe">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q8-x64-dll.exe">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q8-x64-dll.exe</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q8-x64-dll.exe">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q8-x64-dll.exe">download</a></td>
<td>Win64 dynamic at 8 bits-per-pixel</td>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q8-x64-static.exe</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q8-x64-static.exe">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q8-x64-static.exe">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q8-x64-static.exe</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q8-x64-static.exe">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q8-x64-static.exe">download</a></td>
<td>Win64 static at 8 bits-per-pixel</td>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q16-x86-dll.exe</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q16-x86-dll.exe">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q16-x86-dll.exe">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q16-x86-dll.exe</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q16-x86-dll.exe">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q16-x86-dll.exe">download</a></td>
<td>Win32 dynamic at 16 bits-per-pixel</td>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q16-x86-static.exe</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q16-x86-static.exe">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q16-x86-static.exe">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q16-x86-static.exe</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q16-x86-static.exe">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q16-x86-static.exe">download</a></td>
<td>Win32 static at 16 bits-per-pixel</td>
</tr>
<tr>
- <td>ImageMagick-6.9.1-3-Q16-x86-windows.zip</td>
- <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-3-Q16-x86-windows.zip">download</a></td>
- <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-3-Q16-x86-windows.zip">download</a></td>
+ <td>ImageMagick-6.9.1-4-Q16-x86-windows.zip</td>
+ <td><a href="http://www.imagemagick.org/download/binaries/ImageMagick-6.9.1-4-Q16-x86-windows.zip">download</a></td>
+ <td><a href="ftp://ftp.imagemagick.org/pub/ImageMagick/binaries/ImageMagick-6.9.1-4-Q16-x86-windows.zip">download</a></td>
<td>Portable Win32 static at 16 bits-per-pixel. Just copy to your host and run (no installer, no Windows registry entries).</td>
</tr>
</table></div>
</div>
</div>
<div class="container">
-<div class="magick-header"><dl><dt>2015-05-24 6.9.1-3 Cristy <quetzlzacatenango@image...></dt>
- </dl><li> New version 6.9.1-3, SVN revision 18623.</li>
+<div class="magick-header"><dl><dt>2015-06-01 6.9.1-4 Cristy <quetzlzacatenango@image...></dt>
+ </dl><li> New version 6.9.1-4, SVN revision 18697.</li>
+<dt>2015-06-01 6.9.1-4 Cristy <quetzlzacatenango@image...></dt>
+ <li> Support 'restrict' keyword under Windows.</li>
+<dt>2015-05-25 6.9.1-4 Dirk Lemstra <dirk@lem.....org></dt>
+ <li> Added support for reading a user supplied layer mask in PSD files.</li>
+<dt>2015-05-24 6.9.1-3 Cristy <quetzlzacatenango@image...></dt>
+ <li> New version 6.9.1-3, SVN revision 18623.</li>
<dt>2015-05-03 6.9.1-3 Dirk Lemstra <dirk@lem.....org></dt>
<li> Fixed transparency issue with 16-bit tga files (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=27469).</li>
<li> Fixed writing label and comment in tiff images (reference http://www.imagemagick.org/discourse-server/viewtopic.html?f=3&t=25516).</li>
<pre>
cielab(62.253188, 23.950124, 48.410653)
</pre>
-<p>Note, the <code>a</code> and <code>b</code> components of any Lab color you specify are biased by 50% to ensure it fits in the quantum range (typically 0 to 65535).</p>
+<p>Note, the <code>a</code> and <code>b</code> components of any Lab color you specify are biased by 50% to ensure it fits in the quantum range (typically 0 to 65535). The bias is retained when writing to the TIFF and MIFF image formats. However, the TXT format supports negative pixel values so the bias is removed when writing to this format (e.g. <kbd>convert xc:cyan -colorspace LAB txt:<kbd>).</kbd></kbd></p>
<p>Or specify colors generically with the <code>icc-color</code> keyword, for example:</p>
<pre>
<tr><td>Exponential </td> <td>base-e exponential function</td></tr>
<tr><td>LeftShift </td> <td>Shift the pixel values left by <var>value</var> bits (i.e., multiply pixels by 2<sup><var>value</var></sup>).</td></tr>
<tr><td>Log </td> <td>Apply scaled logarithm to normalized pixels.</td></tr>
- <tr><td>Max </td> <td>Clip pixels at upper bound <var>value</var>.</td></tr>
+ <tr><td>Max </td> <td>Set pixels to maximum of <var>value</var> and current pixel <var>value</var> (i.e. set any pixels currently less than <var>value</var> to <var>value</var>).</td></tr>
<tr><td>Mean </td> <td>Add the <var>value</var> and divide by 2.</td></tr>
<tr><td>Median </td> <td>Choose the median value from an image sequence.</td></tr>
- <tr><td>Min </td> <td>Clip pixels at lower bound <var>value</var>.</td></tr>
+ <tr><td>Min </td> <td>Set pixels to minimum of <var>value</var> and current pixel <var>value</var> (i.e. set any pixels currently greater than <var>value</var> to <var>value</var>).</td></tr>
<tr><td>Multiply </td> <td>Multiply pixels by <var>value</var>.</td></tr>
<tr><td>Or </td> <td>Binary OR of pixels with <var>value</var>.</td></tr>
<tr><td>Pow </td> <td>Raise normalized pixels to the power <var>value</var>.</td></tr>
Use the <a href="command-line-options.html#sampling-factor">-sampling-factor</a> option to specify the
factors for chroma downsampling.</p>
-<p>For the MIFF image format, quality/10 is the zlib compression level, which
-is 0 (worst but fastest compression) to 9 (best but slowest). It has no effect
-on the image appearance, since the compression is always lossless.</p>
-
<p>For the JPEG-2000 image format, quality is mapped using a non-linear
equation to the compression ratio required by the Jasper library. This
non-linear equation is intended to loosely approximate the quality provided by
<p>For further information, see
the <a href="http://www.w3.org/pub/WWW/TR">PNG</a> specification.</p>
+<p>For the MIFF and TIFF image formats, quality/10 is the <a href="command-line-options.html#compress">Zip/BZip</a> compression level, which is 0 (worst but fastest compression) to 9 (best but slowest). It has no effect on the image appearance, since the compression is always lossless.</p>
+
<div style="margin: auto;">
<h3 class="magick-header"><a id="quantize"></a>-quantize <var>colorspace</var></h3>
</div>
<fieldset>
<h2 class="magick-header">Contact the Wizards</h2>
<p>Enter this code, <code>
-63294a</code>, in the Authenticate field and fill in the remaining fields. Press Send to forward your message to the ImageMagick wizards:</p>
+040d70</code>, in the Authenticate field and fill in the remaining fields. Press Send to forward your message to the ImageMagick wizards:</p>
<br>
<form method="post" name="post" id="post" action="http://www.imagemagick.org/script/contact.php" enctype="application/x-www-form-urlencoded">
<div class="table-responsive">
</div>
<div class="container">
<div class="magick-header">
-<p class="lead magick-description">ImageMagick source and binary distributions are available from a variety of FTP and Web mirrors around the world listed below. ImageMagick stable and development source releases are also available from <a href="subversion.html">Subversion</a>. Before you download, you may want to review recent <a href="changelog.html">changes</a> to the ImageMagick distribution.</p>
-<p>The latest release of ImageMagick is version 6.9.1-3.</p>
+<p class="lead magick-description">ImageMagick source and binary distributions are available from a variety of FTP and Web mirrors around the world listed below. ImageMagick stable and development source releases are also available from <a href="subversion.html">Subversion</a>. Before you download, you may want to review recent <a href="changelog.html">changes</a> to the ImageMagick distribution. The authoritative source code repository is <a href="http://subversion.imagemagick.org/subversion/ImageMagick/">http://subversion.imagemagick.org/subversion/ImageMagick/</a>.</p>
+<p>The latest release of ImageMagick is version 6.9.1-4.</p>
<dl class="dl-horizontal">
<dt>Australia</dt>
<dd><a href="http://mirrors-au.go-parts.com/mirrors/ImageMagick/">http://mirrors-au.go-parts.com/mirrors/ImageMagick/</a></dd>
<td><a href="http://www.openexr.org">EXR</a></td>
<td>RW</td>
<td>High dynamic-range (HDR) file format developed by Industrial Light & Magic</td>
- <td>See <a href="high-dynamic-range.html">High Dynamic-Range Images</a> for details on this image format. Requires the <a href="http://www.openexr.org/">OpenEXR</a> delegate library.</td>
+ <td>See <a href="high-dynamic-range.html">High Dynamic-Range Images</a> for details on this image format. To specify the output color type, use <code>-define exr:color-type={RGB,RGBA,YC,YCA,Y,YA,R,G,B,A}</code>. Use <a href="command-line-options.html#sampling-factor">-sampling-factor</a> to specify the sampling rate for YC(A) (e.g. <code>2x2 or 4:2:0</code>). Requires the <a href="http://www.openexr.org/">OpenEXR</a> delegate library.</td>
</tr>
<tr>
ImageMagick<sup><a href="http://tarr.uspto.gov/servlet/tarr?regser=serial&entry=78333969">®</a></sup> is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of <a href="formats.html">formats</a> (over 200) including PNG, JPEG, JPEG-2000, GIF, TIFF, <a href="motion-picture.html">DPX</a>, <a href="high-dynamic-range.html">EXR</a>, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.</p>
<p>The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite language. Choose from these interfaces: <a href="api.html#ada">G2F</a> (Ada), <a href="api.html#c">MagickCore</a> (C), <a href="api.html#c">MagickWand</a> (C), <a href="api.html#ch">ChMagick</a> (Ch), <a href="api.html#com_">ImageMagickObject</a> (COM+), <a href="api.html#c__">Magick++</a> (C++), <a href="api.html#java">JMagick</a> (Java), <a href="api.html#lisp">L-Magick</a> (Lisp), <a href="api.html#lua">Lua</a>, <a href="api.html#neko">NMagick</a> (Neko/haXe), <a href="api.html#dot-net">Magick.NET</a> (.NET), <a href="api.html#pascal">PascalMagick</a> (Pascal), <a href="api.html#perl">PerlMagick</a> (Perl), <a href="api.html#php">MagickWand for PHP</a> (PHP), <a href="api.html#php">IMagick</a> (PHP), <a href="api.html#python">PythonMagick</a> (Python), <a href="api.html#ruby">RMagick</a> (Ruby), or <a href="api.html#tcl">TclMagick</a> (Tcl/TK). With a language interface, use ImageMagick to modify or create images dynamically and <var>automagically</var>.</p>
-<p>ImageMagick utiilizes multiple computational threads to increase performance and can read, process, or write mega-, giga-, or tera-pixel image sizes.</p>
+<p>ImageMagick utilizes multiple computational threads to increase performance and can read, process, or write mega-, giga-, or tera-pixel image sizes.</p>
<p>ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you may use, copy, modify, and distribute in both open and proprietary applications. It is distributed under the Apache 2.0 <a href="license.html">license</a>.</p>
<p>The ImageMagick development process ensures a <a href="http://upstream-tracker.org/versions/imagemagick.html">stable API</a> and ABI. Before each ImageMagick release, we perform a comprehensive security assessment that includes <a href="https://code.google.com/p/address-sanitizer/">memory error</a> and <a href="https://code.google.com/p/data-race-test/wiki/ThreadSanitizer">thread data race</a> detection to prevent security vulnerabilities.</p>
-<p>The current release is ImageMagick 6.9.1-3 available from <a href="http://www.imagemagick.org/download">http://www.imagemagick.org/download</a>. It runs on <a href="http://www.imagemagick.org/download/linux/">Linux</a>, <a href="http://www.imagemagick.org/download/binaries/">Windows</a>, <a href="http://www.imagemagick.org/download/binaries/">Mac Os X</a>, <a href="http://www.imagemagick.org/download/iOS/">iOS</a>, Android OS, and others.</p>
+<p>The current release is ImageMagick 6.9.1-4 available from <a href="http://www.imagemagick.org/download">http://www.imagemagick.org/download</a>. It runs on <a href="http://www.imagemagick.org/download/linux/">Linux</a>, <a href="http://www.imagemagick.org/download/binaries/">Windows</a>, <a href="http://www.imagemagick.org/download/binaries/">Mac Os X</a>, <a href="http://www.imagemagick.org/download/iOS/">iOS</a>, Android OS, and others.</p>
-<p>The authoritative ImageMagick web site is <a href="../index.html">http://www.imagemagick.org</a>.</p>
+<p>The authoritative ImageMagick web site is <a href="../index.html">http://www.imagemagick.org</a>. The authoritative source code repository is <a href="https://subversion.imagemagick.org/subversion/ImageMagick/">https://subversion.imagemagick.org/subversion/ImageMagick/</a>.</p>
<h2 class="magick-header">Features and Capabilities</h2>
<p>Here are just a few <a href="examples.html">examples</a> of what ImageMagick can do for you:</p>
</div>
<div class="sep"></div>
<div class="menu">
- <a title="Search" href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/search.php">Search</a>
+ <a title="Search" href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/search.php">Search</a>
</div>
<div class="sep"></div>
<div class="menu">
</div>
<div class="footer">
<span id="footer-west">© 1999-2015 ImageMagick Studio LLC</span>
- <span id="footer-east"> <a href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
+ <span id="footer-east"> <a href="http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
</div>
<div style="clear: both; margin: 0; width: 100%; "></div>
</body>
</div>
<div class="sep"></div>
<div class="menu">
- <a title="Search" href="http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/search.php">Search</a>
+ <a title="Search" href="http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/search.php">Search</a>
</div>
<div class="sep"></div>
<div class="menu">
</div>
<div class="footer">
<span id="footer-west">© 1999-2011 ImageMagick Studio LLC</span>
- <span id="footer-east"> <a href="http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
+ <span id="footer-east"> <a href="http://www.imagemagick.org/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/www/http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
</div>
<div style="clear: both; margin: 0; width: 100%; "></div>
<script type="text/javascript">
<p>You can access pixel channel as array elements (e.g. <code>pixel[1]</code>) or use convenience accessors to get or set pixel channels:</p>
<pre>
-GetPixela() SetPixela()
-GetPixelAlpha() SetPixelAlpha()
-GetPixelb() SetPixelb()
-GetPixelBlack() SetPixelBlack()
-GetPixelBlue() SetPixelBlue()
-GetPixelCb() SetPixelCb()
-GetPixelCr() SetPixelCr()
-GetPixelCyan() SetPixelCyan()
-GetPixelGray() SetPixelGray()
-GetPixelGreen() SetPixelGreen()
-GetPixelIndex() SetPixelIndex()
-GetPixelL() SetPixelL()
-GetPixelMagenta() SetPixelMagenta()
-GetPixelReadMask() SetPixelReadMask()
-GetPixelWriteMask() SetPixelWriteMask()
-GetPixelMetacontentExtent() SetPixelMetacontentExtent()
-GetPixelOpacity() SetPixelOpacity()
-GetPixelRed() SetPixelRed()
-GetPixelYellow() SetPixelYellow()
-GetPixelY() SetPixelY()
+GetPixela() SetPixela()
+GetPixelAlpha() SetPixelAlpha()
+GetPixelb() SetPixelb()
+GetPixelBlack() SetPixelBlack()
+GetPixelBlue() SetPixelBlue()
+GetPixelCb() SetPixelCb()
+GetPixelCr() SetPixelCr()
+GetPixelCyan() SetPixelCyan()
+GetPixelGray() SetPixelGray()
+GetPixelGreen() SetPixelGreen()
+GetPixelIndex() SetPixelIndex()
+GetPixelL() SetPixelL()
+GetPixelMagenta() SetPixelMagenta()
+GetPixelReadMask() SetPixelReadMask()
+GetPixelWriteMask() SetPixelWriteMask()
+GetPixelMetacontentExtent() SetPixelMetacontentExtent()
+GetPixelOpacity() SetPixelOpacity()
+GetPixelRed() SetPixelRed()
+GetPixelYellow() SetPixelYellow()
+GetPixelY() SetPixelY()
</pre>
<p>You can find these accessors defined in the header file, <code>MagickCore/pixel-accessor.h</code></p>
<h4>Pixel Traits</h4>
<p>Each pixel channel includes one or more of these traits:</p>
-<dl>
+<dl class="dl-horizontal">
<dt>Undefined</dt>
<dd>no traits associated with this pixel channel</dd>
<dt>Copy</dt>
</dl>
<p>We provide these methods to set and get pixel traits:</p>
<pre>
-GetPixelAlphaTraits() SetPixelAlphaTraits()
-GetPixelBlackTraits() SetPixelBlackTraits()
-GetPixelBlueTraits() SetPixelBlueTraits()
-GetPixelCbTraits() SetPixelCbTraits()
-GetPixelChannelTraits() SetPixelChannelTraits()
-GetPixelCrTraits() SetPixelCrTraits()
-GetPixelGrayTraits() SetPixelGrayTraits()
-GetPixelGreenTraits() SetPixelGreenTraits()
-GetPixelIndexTraits() SetPixelIndexTraits()
-GetPixelMagentaTraits() SetPixelMagentaTraits()
-GetPixelRedTraits() SetPixelRedTraits()
-GetPixelYellowTraits() SetPixelYellowTraits()
-GetPixelYTraits() SetPixelYTraits()
+GetPixelAlphaTraits() SetPixelAlphaTraits()
+GetPixelBlackTraits() SetPixelBlackTraits()
+GetPixelBlueTraits() SetPixelBlueTraits()
+GetPixelCbTraits() SetPixelCbTraits()
+GetPixelChannelTraits() SetPixelChannelTraits()
+GetPixelCrTraits() SetPixelCrTraits()
+GetPixelGrayTraits() SetPixelGrayTraits()
+GetPixelGreenTraits() SetPixelGreenTraits()
+GetPixelIndexTraits() SetPixelIndexTraits()
+GetPixelMagentaTraits() SetPixelMagentaTraits()
+GetPixelRedTraits() SetPixelRedTraits()
+GetPixelYellowTraits() SetPixelYellowTraits()
+GetPixelYTraits() SetPixelYTraits()
</pre>
-<p>For convenience you can set the active trait for a set of pixel channels with a channel mask and these methods:</p>
+<p>For convenience you can set the active trait for a set of pixel channels with a channel mask and this method:</p>
<pre>
-PopPixelChannelMap()
-SetPixelChannelMap()
-SetPixelChannelMask()
+SetImageChannelMask()
</pre>
<p>Previously MagickCore methods had channel analogs, for example, NegateImage() and NegateImageChannels(). The channel analog methods are no longer necessary because the pixel channel traits specify whether to act on a particular pixel channel or whether to blend with the alpha mask. For example, instead of</p>
</pre>
<p>we use:</p>
<pre>
-channel_mask=SetPixelChannelMask(image,channel);
+channel_mask=SetImageChannelMask(image,channel);
NegateImage(image,exception);
-(void) SetPixelChannelMap(image,channel_mask);
+(void) SetImageChannelMask(image,channel_mask);
</pre>
<h4>Pixel User Channels</h4>
<p>In version 7, we introduce pixel user channels. Traditionally we utilize 4 channels, red, green, blue, and alpha. For CMYK we also have a black channel. User channels are designed to contain whatever additional channel information that makes sense for your application. Some examples include extra channels in TIFF or PSD images or perhaps you require a channel with infrared information for the pixel. You can associate traits with the user channels so that they when they are acted upon by an image processing algorithm (e.g. blur) the pixels are copied, acted upon by the algorithm, or even blended with the alpha channel if that makes sense.</p>
<h4>Pixel Metacontent</h4>
-<p>In version 7, we introduce pixel metacontent. Metacontent is content about content. So rather than being the content itself, it's something that describes or is associated with the content. Here the content is a pixel. The pixel metacontent is for your exclusive use and is accessed with these MagickCore API methods:</p>
+<p>In version 7, we introduce pixel metacontent. Metacontent is content about content. So rather than being the content itself, it's something that describes or is associated with the content. Here the content is a pixel. The pixel metacontent is for your exclusive use (internally the data is just copied, it is not modified) and is accessed with these MagickCore API methods:</p>
<pre>
SetImageMetacontentExtent()
GetImageMetacontentExtent()
</pre>
<h2 class="magick-header"><a id="alpha"></a>Alpha</h2>
-<p>We support alpha now, previously opacity. With alpha, a value of 0 means that the pixel does not have any coverage information and is transparent; i.e. there was no color contribution from any geometry because the geometry did not overlap this pixel. A value of QuantumRange means that the pixel is opaque because the geometry completely overlapped the pixel. As a consequence, in version 7, the PixelInfo structure member alpha has replaced the previous opacity member. Another consequence is the alpha part of a sRGB value in hexadecimal notation is now reversed (e.g. #0000 is fully transparent).</p>
+<p>We support alpha now, previously opacity. With alpha, a value of <kbd>0</kbd> means that the pixel does not have any coverage information and is transparent; i.e. there was no color contribution from any geometry because the geometry did not overlap this pixel. A value of <code>QuantumRange</code> means that the pixel is opaque because the geometry completely overlapped the pixel. As a consequence, in version 7, the PixelInfo structure member alpha has replaced the previous opacity member. Another consequence is the alpha part of a sRGB value in hexadecimal notation is now reversed (e.g. #0000 is fully transparent).</p>
<h2 class="magick-header"><a id="colorspace"></a>Colorspace</h2>
<p>The <code>Rec601Luma</code> and <code>Rec709Luma</code> colorspaces are no longer supported. Instead, specify the <code>gray</code> colorspace and choose from these intensity options:</p>
<pre>
<p>Here are a list of changes to the MagickCore API:</p>
<ul>
<li>Almost all image processing algorithms are now channel aware.</li>
-<li>MagickCore, version 7, adds an ExceptionInfo argument to those methods that lacked it in version 6, e.g. <code>NegateImage(image,MagickTrue,exception</code>);</li>
+<li>The MagickCore API adds an <code>ExceptionInfo</code> argument to those methods that lacked it in version 6, e.g. <code>NegateImage(image,MagickTrue,exception</code>);</li>
<li>All method channel analogs have been removed (e.g. BlurImageChannel()), they are no longer necessary, use pixel traits instead.</li>
<li>Public and private API calls are now declared with the GCC visibility attribute. The MagickCore and MagickWand dynamic libraries now only export public struct and function declarations.</li>
<li>The InterpolatePixelMethod enum is now PixelInterpolateMethod.</li>
<p>The expression consists of one or more channels, either mnemonic or numeric (e.g. red or 0, green or 1, etc.), separated by certain operation symbols as follows:</p>
<pre>
-<=> exchange two channels (e.g. red<=>blue)
-=> copy one channel to another channel (e.g. red=>green)
-= assign a constant value to a channel (e.g. red=50%)
-, write new image with channels in the specified order (e.g. red, green)
-; add a new output image for the next set of channel operations (e.g. red; green; blue)
-| move to the next input image for the source of channel data (e.g. | gray=>alpha)
+<=> exchange two channels (e.g. red<=>blue)
+=> copy one channel to another channel (e.g. red=>green)
+= assign a constant value to a channel (e.g. red=50%)
+, write new image with channels in the specified order (e.g. red, green)
+; add a new output image for the next set of channel operations (e.g. red; green; blue)
+| move to the next input image for the source of channel data (e.g. | gray=>alpha)
</pre>
<p>For example, to create 3 grayscale images from the red, green, and blue channels of an image, use:</p>
</ul>
<h4>Grayscale</h4>
<ul>
-<li>Grayscale images consume one pixel channel in ImageMagick version 7. To process RGB, set the colorspace to RGB (e.g. -colorspace rgb).</li>
+<li>Grayscale images consume one pixel channel in ImageMagick version 7. To process RGB, set the colorspace to RGB (e.g. -colorspace sRGB).</li>
</ul>
<h4>MagickCore API</h4>
<ul>
<li>Almost all image processing algorithms are now channel aware.</li>
-<li>MagickCore, version 7, adds an ExceptionInfo argument to those methods that lacked it in version 6, e.g. NegateImage(image,MagickTrue,exception);</li>
+<li>MagickCore, version 7, adds an ExceptionInfo argument to those methods that lacked it in version 6, e.g. <code>NegateImage(image,MagickTrue,exception);</code></li>
<li>All method channel analogs have been removed (e.g. BlurImageChannel()), they are no longer necessary, use pixel traits instead.</li>
<li>Public and private API calls are now declared with the GCC visibility attribute. The MagickCore and MagickWand dynamic libraries now only export public struct and function declarations.</li>
<li>The InterpolatePixelMethod enum is now PixelInterpolateMethod.</li>
<h2 class="magick-header"><a id="contribute"></a>Contribute a Bug Fix or Enhancement</h2>
-<p>Post any ImageMagick patches to the <a href="http://www.imagemagick.org/discourse-server/viewforum.html?f=3">Bugs</a> forum if you think you have found and fixed a bug or security vulnerability. Post to the <a href="http://www.imagemagick.org/discourse-server/viewforum.html?f=2">Developers</a> forum if you have a patch for a proposed enhancement. As part of your patch set, add an entry to the <code>ChangeLog</code> file summarizing your patch along with your name (or pseudonym). Note, if you become a significant contributor, you might get an invite to become an ImageMagick developer and get commit access to the <a href="subversion.html">Subversion</a> repository.</p>
+<p>Post any ImageMagick patches to the <a href="https://github.com/ImageMagick/ImageMagick/issues">Issues</a> forum if you think you have found and fixed a bug or security vulnerability. Post to the <a href="http://www.imagemagick.org/discourse-server/viewforum.html?f=2">Developers</a> forum if you want to propose an enhancement for discussion.</p>
<h2 class="magick-header"><a id="support"></a>Support the ImageMagick Project</h2>