



<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="utf-8"  />
  <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1,shrink-to-fit=no"  />
  <title>Sitemap @ ImageMagick</title>
  <meta name="application-name" content="ImageMagick" />
  <meta name="description" content="Use ImageMagick® to create, edit, compose, or convert bitmap images. You can resize your image, crop it, change its shades and colors, add captions, among other operations." />
  <meta name="application-url" content="https://imagemagick.org" />
  <meta name="generator" content="PHP" />
  <meta name="keywords" content="sitemap, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert" />
  <meta name="rating" content="GENERAL" />
  <meta name="robots" content="INDEX, FOLLOW" />
  <meta name="generator" content="ImageMagick Studio LLC" />
  <meta name="author" content="ImageMagick Studio LLC" />
  <meta name="revisit-after" content="2 DAYS" />
  <meta name="resource-type" content="document" />
  <meta name="copyright" content="Copyright (c) 1999-2019 ImageMagick Studio LLC" />
  <meta name="distribution" content="Global" />
  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" />
  <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
  <link href="../www/sitemap.html" rel="canonical" />
  <link href="../images/wand.png" rel="icon" />
  <link href="../images/wand.ico" rel="shortcut icon" />
  <link href="assets/magick.css" rel="stylesheet" />
</head>
<body>
  <header>
  <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark">
    <a class="navbar-brand" href="../index.html"><img class="d-block" id="icon" alt="ImageMagick" width="32" height="32" src="../images/wand.ico"/></a>
    <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsMagick" aria-controls="navbarsMagick" aria-expanded="false" aria-label="Toggle navigation">
      <span class="navbar-toggler-icon"></span>
    </button>

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

  </div>
  </header>
  <main class="container">
    <div class="magick-template">
<div class="magick-header">
<p class="text-center"><a href="sitemap.html#overview">ImageMagick Overview</a> • <a href="sitemap.html#download">Download ImageMagick</a> • <a href="sitemap.html#install">Install ImageMagick</a> • <a href="sitemap.html#command-line">Command-line Tools</a> • <a href="sitemap.html#program-interfaces">Program Interfaces</a> • <a href="sitemap.html#formats">Image Formats</a> • <a href="sitemap.html#help">Getting Help</a> • <a href="sitemap.html#support">Support ImageMagick</a> • <a href="sitemap.html#miscellaneous">Miscellaneous Topics</a></p>

<p class="lead magick-description">Use this ImageMagick sitemap to quickly jump to one of the areas of interest listed below.  If you can't find what you want on this page, try our <a href="https://imagemagick.org/script/search.php">site search</a>.</p>

<h2><a class="anchor" id="overview"></a>ImageMagick Overview</h2>

<dl class="magick-list-unstyled">
  <li><a href="../www/index.html">Introduction</a>: convert, edit, or compose images from the command-line or program interface.</li>
  <li><a href="../www/examples.html">Examples of ImageMagick usage</a>: a few examples that show what you can do with an image using ImageMagick.</li>
  <li><a href="../Usage/">Anthony Thyssen's examples of ImageMagick usage</a>:  a comprehensive tutorial of using ImageMagick from the command line.</li>
  <li><a href="../www/color.html">Color names</a>: how to specify a color name, a hex color, or a numerical RGB, RGBA, HSL, HSLA, CMYK, or CMYKA color.</li>
  <li><a href="../www/color-management.html">Color management</a>: accurate color management with color profiles or in lieu of-- built-in gamma compression or expansion as demanded by the colorspace.</li>
  <li><a href="resources.html">Resources</a>: ImageMagick depends on external resources including configuration files, loadable modules, fonts, and environment variables.</li>
  <li><a href="../www/openmp.html">Parallel execution</a>: ImageMagick is threaded to take advantage of speed-ups offered by the multicore processor chips.</li>
  <li><a href="security-policy.html">Security policy</a>: best practices strongly encourages you to configure a security policy that suits your local environment.</li>
  <li><a href="architecture.html">Architecture</a>: get to know more about the software and algorithms behind ImageMagick.</li>
  <li><a href="../www/license.html">License</a>: the legally binding and authoritative terms and conditions for use, reproduction, and distribution of ImageMagick.</li>
  <li><a href="../www/export.html">Export classification</a>: export control status of ImageMagick.</li>
  <li><a href="../www/porting.html">ImageMagick version 7</a>: learn how ImageMagick version 7 differs from previous versions.</li>
  <li><a href="../www/history.html">History</a>: how ImageMagick was conceived and developed.</li>
</dl>

<h2><a class="anchor" id="download"></a>Download ImageMagick</h2>

<dl class="magick-list-unstyled">
  <li><a href="download.html">Download ImageMagick</a>: ImageMagick source and binary distributions are available from a variety of FTP and Web mirrors.</li>
  <li> <dl class="magick-list-unstyled">
    <li><a href="../download">Unix source</a>: Unix source distributions.</li>
    <li><a href="https://imagemagick.org/download/windows">Windows source</a>: Windows source distributions.</li>
    <li><a href="https://imagemagick.org/download/binaries">Unix and Windows binaries</a>: Unix and Windows binary distributions.</li>
    <li><a href="http://git.imagemagick.org/repos/ImageMagick">Git repository</a>: stable and development source releases.</li>
    <li><a href="http://www.magickwand.org/">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</li>
    <li><a href="https://imagemagick.org/download/delegates">Delegate libraries</a>: ImageMagick depends on a number of optional delegate libraries to extend its functionality.</li>
  </dl> </li>
</dl>

<h2><a class="anchor" id="install"></a>Install ImageMagick</h2>

  <p>You can install ImageMagick from source. However, if you don't have a proper development environment or if you're anxious to get started, download a ready-to-run Unix or Windows executable.</p>
<dl class="magick-list-unstyled">
    <li><a href="../www/install-source.html">Install from source</a>: ImageMagick builds under Windows, Mac OS X, and Linux.</li>
    <li><a href="download.html">Install from a binary distribution</a>: install a ready-to-run Unix or Windows executable.</li>
    <li><a href="../www/ImageMagickObject.html">Install ImageMagickObject COM+ component</a>: install the Windows ImageMagick COM+ component.</li>
</dl>

<h2><a class="anchor" id="command-line"></a>Command-line Tools</h2>
<dl class="magick-list-unstyled">
  <li><a href="command-line-tools.html">Command-line tools</a>: overview of the ImageMagick commands.</li>
  <li> <dl class="magick-list-unstyled">
    <li><a href="../www/animate.html">animate</a>: animates an image sequence on any X server.</li>
    <li><a href="../www/compare.html">compare</a>: mathematically and visually annotate the difference between an image and its reconstruction.</li>
    <li><a href="../www/composite.html">composite</a>: overlaps one image over another.</li>
    <li><a href="conjure.html">conjure</a>: interprets and executes scripts written in the Magick Scripting Language (MSL).</li>
    <li><a href="convert.html">convert</a>: convert between image formats as well as resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and more.</li>
    <li><a href="display.html">display</a>: displays an image or image sequence on any X server.</li>
    <li><a href="../www/identify.html">identify</a>: describes the format and characteristics of one or more image files.</li>
    <li><a href="import.html">import</a>: saves any visible window on an X server and outputs it as an image file.</li>
    <li><a href="mogrify.html">mogrify</a>: resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and more.</li>
    <li><a href="montage.html">montage</a>: create a composite image by combining several separate images.</li>
    <li><a href="../www/stream.html">stream</a>: a lightweight tool to stream one or more pixel components of the image or portion of the image to your choice of storage formats.</li>
  </dl></li>
  <li><a href="command-line-processing.html">Command line processing</a>: the anatomy of the command line.</li>
  <li><a href="command-line-options.html">Command line options</a>: annotated list of all options that can appear on the command-line.</li>
  <li><a href="../www/fx.html">Fx</a>: apply a mathematical expression to an image or image channels.</li>
  <li><a href="http://www.fmwconcepts.com/imagemagick/">Fred's ImageMagick Scripts</a>:  a plethora of command-line scripts that perform geometric transforms, blurs, sharpens, edging, noise removal, and color manipulations.</li>
</dl>

<h2><a class="anchor" id="program-interfaces"></a>Program Interfaces</h2>

<dl class="magick-list-unstyled">
  <li><a href="develop.html">Program interfaces</a>: application programming interfaces.</li>
  <li> <dl class="magick-list-unstyled">
    <li><a href="../ChMagick">ChMagick</a>: is a <a href="http://www.softintegration.com/">Ch</a> an embeddable MagickCore C/C++ interpreter for cross-platform scripting.</li>
    <li><a href="http://common-lisp.net/project/cl-magick/">CL-Magick</a>: provides a Common Lisp interface to the ImageMagick library.</li>
    <li><a href="http://magick.codeplex.com/">Magick.NT</a>: Use Magick.NET to convert, compose, and edit images from Windows .NET.</li>
    <li><a href="../Magick++">Magick++</a>: provides an object-oriented C++ interface to ImageMagick.</li>
    <li><a href="http://pecl.html.net/package/imagick">IMagick</a>: is a native PHP extension to create and modify images using the ImageMagick API.</li>
    <li><a href="https://github.com/techblue/jmagick">JMagick</a>: provides an object-oriented Java interface to ImageMagick.</li>
    <li><a href="../www/magick-core.html">MagickCore</a>: C API, recommended for wizard-level developers.</li>
    <li><a href="../www/magick-wand.html">MagickWand</a>: convert, compose, and edit images from the C language.</li>
    <li><a href="http://www.magickwand.org/">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</li>
    <li><a href="http://code.google.com/p/nmagick">nMagick</a>: is a port of the ImageMagick library to the haXe and Neko platforms.</li>
    <li><a href="http://wiki.freepascal.org/PascalMagick">PascalMagick</a>: a Pascal binding for the MagickWand API and also the low-level MagickCore library.</li>
    <li><a href="../www/perl-magick.html">PerlMagick</a>: convert, compose, and edit images from the Perl language.</li>
    <li><a href="https://imagemagick.org/download/python/">PythonMagick</a>: an object-oriented Python interface to ImageMagick.</li>
    <li><a href="http://rmagick.rubyforge.org/">RMagick</a>: is an interface between the Ruby programming language and ImageMagick.</li>
    <li><a href="http://tclmagick.sourceforge.net/">TclMagick</a>: a native Tcl-extension to the ImageMagick MagickWand API.</li>
  </dl></li>
</dl>

<h2><a class="anchor" id="format"></a>Image Formats</h2>
<dl class="magick-list-unstyled">
  <li><a href="formats.html">Supported image formats</a>: annotated list of all image formats that ImageMagick can read and/or write.</li>
  <li><a href="motion-picture.html">Motion picture digital images</a>: use SMPTE DPX Version 2.0 to process images used by the motion picture (film and high-definition) industry.</li>
  <li><a href="high-dynamic-range.html">High dynamic-range images</a>: accurately represent the wide range of intensity levels found in real scenes ranging from the brightest direct sunlight to the deepest darkest shadows.</li>
  <li><a href="magick-vector-graphics.html">Magick Vector Graphics</a>: a modularized language for describing two-dimensional vector and mixed vector/raster graphics in ImageMagick.</li>
  <li><a href="miff.html">Magick Image File Format</a>: MIFF is ImageMagick's own platform-independent format for storing bitmap images.</li>
</dl>

<h2><a class="anchor" id="help"></a>Getting Help</h2>

<dl class="magick-list-unstyled">
  <li><a href="http://www.amazon.com/exec/obidos/redirect?link_code=ur2&amp;camp=1789&amp;tag=imagemagick-20&amp;creative=9325&amp;path=tg/detail/-/1590595904/qid=1123551819/sr=8-1/ref=pd_bbs_sbs_1?v=glance%26s=books%26n=507846">Definitive Guide to ImageMagick</a>: this book explains ImageMagick in a practical, learn-by-example fashion.</li>
  <li><a href="http://www.amazon.com/exec/obidos/redirect?link_code=ur2&amp;camp=1789&amp;tag=imagemagick-20&amp;creative=9325&amp;path=tg/detail/-/1904811868/qid=1123551819/sr=8-1/ref=pd_bbs_sbs_1?v=glance%26s=books%26n=507846">ImageMagick Tricks</a>: this book is packed with examples of photo manipulations, logo creation, animations, and complete web projects.</li>
  <li><a href="https://imagemagick.org/discourse-server/">Discourse server</a>: get help from fellow ImageMagick users and developers, post to these forums.</li>
  <li><a href="https://imagemagick.org/script/contact.php">Contact the Wizards</a>: for bug reports (only if you do not want to sign up to the <a href="https://imagemagick.org/discourse-server/">discourse server</a>), a source or documentation patch, a security or license issue, or if you want to be a sponsor of the ImageMagick project.</li>
</dl>

<h2><a class="anchor" id="support"></a>Support ImageMagick</h2>

<dl class="magick-list-unstyled">
  <li><a href="https://imagemagick.org/discourse-server//viewforum.html?f=3">Report bugs and vulnerabilities</a>: our highest priority is to fix security defects and bug reports, usually within 48 hours of your report.  The bug discourse server requires that you register.  If you do not want to register, you can <a href="https://imagemagick.org/script/contact.php">contact the ImageMagick developers</a> with a convenient web form.</li>
  <li><a href="support.html">Sponsor ImageMagick</a>: contribute bug fixes, enhancements, hardware, funds, etc. to ensure the ImageMagick project thrives.</li>
</dl>

<h2><a class="anchor" id="miscellaneous"></a>Miscellaneous Topics</h2>

<dl class="magick-list-unstyled">
  <li><a href="../Usage/anim_basics/">Animation</a>: create a GIF animation sequence from a group of images.</li>
  <li><a href="https://imagemagick.org/discourse-server//viewtopic.html?f=4&amp;t=25405">Canny edge detection</a>: extract edges from an image using the Canny technique.</li>
  <li><a href="../www/color-management.html">Color management</a>: accurate color management with color profiles or in lieu of-- built-in gamma compression or expansion as demanded by the colorspace.</li>
  <li><a href="command-line-processing.html">Command-line processing</a>: utilize ImageMagick from the command line.</li>
  <li><a href="../www/connected-components.html">Connected Component Labeling</a>: uniquely label connected regions in an image.</li>
  <li><a href="../www/composite.html">Composite</a>: overlap one image over another.</li>
  <li><a href="../www/connected-components.html">Connected Component Labeling</a>: uniquely label connected regions in an image.</li>
  <li><a href="../Usage/crop/">Decorate</a>: add a border or frame to an image.</li>
  <li><a href="../Usage/fourier">Discrete Fourier transform</a>: implements the forward and inverse DFT.</li>
  <li><a href="../www/distribute-pixel-cache.html">Distributed pixel cache</a>: offload intermediate pixel storage to one or more remote servers .</li>
  <li><a href="../Usage/draw/">Draw</a>: add shapes or text to an image.</li>
  <li><a href="../www/cipher.html">Encipher or decipher an image</a>: convert ordinary images into unintelddgible gibberish and back again.</li>
  <li><a href="../www/escape.html">Escapes</a>: utilize percent escapes in a number of options, for example in <a href="command-line-options.html#format_identify_"
  >-format</a> or in montage <a href="command-line-options.html#label"
  >-label</a>, to print various properties and other settings associated with an
  image.</li>
  <li><a href="convert.html">Format conversion</a>: convert an image from one <a href="formats.html">format </a> to another (e.g. PNG to JPEG).</li>
  <li><a href="../Usage/distorts/">Generalized pixel distortion</a>: correct for, or induce image distortions including perspective.</li>
  <li><a href="architecture.html#distributed">Heterogeneous distributed processing</a>: <a href="../www/opencl.html">certain algorithms</a> are <a href="http://en.wikipedia.org/wiki/OpenCL" target="_blank">OpenCL</a>-enabled to take advantage of speed-ups offered by executing in concert across heterogeneous platforms consisting of CPUs, GPUs, and other processors.</li>
  <li><a href="high-dynamic-range.html">High dynamic-range images</a>: accurately represent the wide range of intensity levels found in real scenes ranging from the brightest direct sunlight to the deepest darkest shadows.</li>
  <li><a href="https://imagemagick.org/discourse-server//viewtopic.html?f=4&amp;t=25476">Hough lines</a>: fit straight lines to edges in an image using the Hough transform technique.</li>
  <li><a href="../www/fx.html">Image calculator</a>: apply a mathematical expression to an image or image channels.</li>
  <li><a href="gradient.html">Image gradients</a>: create a gradual blend of two colors whose shape is horizontal, vertical, circular, or elliptical.</li>
  <li><a href="../www/identify.html">Image identification</a>: describe the format and attributes of an image.</li>
  <li><a href="download.html#iOS">ImageMagick on the iPhone</a>: convert, edit, or compose images on your iPhone.</li>
  <li><a href="https://imagemagick.org/discourse-server//viewtopic.html?f=4&amp;t=26480">Kuwahara Filter</a>: apply an edge perserving noise and color reduction filter to an image.</li>
  <li><a href="architecture.html#tera-pixel">Large image support</a>: read, process, or write mega-, giga-, or tera-pixel image sizes.</li>
  <li><a href="https://imagemagick.org/discourse-server//viewtopic.html?f=4&amp;t=25504">Mean-shift</a>: apply a color reduction technique to an image.</li>
  <li><a href="montage.html">Montage</a>: juxtapose image thumbnails on an image canvas.</li>
  <li><a href="../Usage/morphology/">Morphology of shapes</a>: extract features, describe shapes and recognize patterns in images.</li>
  <li><a href="motion-picture.html">Motion picture support</a>: read and write the common image formats used in digital film work.</li>
  <li><a href="../Usage/blur/">Special effects</a>: blur, sharpen, threshold, or tint an image.</li>
  <li><a href="../Usage/text/">Text &amp; comments</a>: insert descriptive or artistic text in an image.</li>
  <li><a href="architecture.html#threads">Threads of execution support</a>: ImageMagick is thread safe and most internal algorithms execute in parallel to take advantage of speed-ups offered by multicore processor chips.</li>
  <li><a href="../Usage/resize/">Transform</a>: resize, rotate, crop, or trim an image.</li>
  <li><a href="../Usage/masking/">Transparency</a>: render portions of an image invisible.</li>
  <li><a href="architecture.html#virtual-pixels">Virtual pixel support</a>: convenient access to pixels outside the image region.</li>
</dl>
<h2><a class="anchor" id="legacy"></a>ImageMagick Legacy</h2>
<p>We continue to maintain the legacy release of ImageMagick, version 6, at <a href="https://legacy.imagemagick.org/">https://legacy.imagemagick.org</a></p>
</div>

    </div>
  </main><!-- /.container -->
  <footer class="magick-footer">
    <p><a href="security-policy.html">Security</a> •
    <a href="architecture.html">Architecture</a> •
    <a href="links.html">Related</a> •
     <a href="sitemap.html">Sitemap</a>
       
    <a href="sitemap.html#"><img class="d-inline" id="wand" alt="And Now a Touch of Magick" width="16" height="16" src="../images/wand.ico"/></a>
       
    <a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
    <a href="support.html">Donate</a> •
    <a href="https://imagemagick.org/script/contact.php">Contact Us</a>
    <br/>
    <small>© 1999-2019 ImageMagick Studio LLC</small></p>
  </footer>

  <!-- Javascript assets -->
  <script src="assets/magick.js" crossorigin="anonymous"></script>
  <script>window.jQuery || document.write('<script src="https://localhost/ajax/libs/jquery/3.3.1/jquery.min.js"><\/script>')</script>
</body>
</html>
<!-- Magick Cache 5th January 2019 11:42 -->