<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" 
  "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html version="-//W3C//DTD XHTML 1.1//EN"
      xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://www.w3.org/1999/xhtml
                          http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
  <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>
  <title>ImageMagick: Site Map</title>
  <meta http-equiv="Content-Language" content="en-US"/>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
  <meta name="Application-name" content="ImageMagick"/>
  <meta name="Description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats.  In addition resize, rotate, shear, distort and transform images automagically."/>
  <meta name="Application-url" content="http://www.imagemagick.org"/>
  <meta name="Generator" content="PHP"/>
  <meta name="Keywords" content="site, map, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Image, Processing, Automagically"/>
  <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-2011 ImageMagick Studio LLC"/>
  <meta name="Distribution" content="Global"/>
  <link rel="icon" href="../images/wand.png"/>
  <link rel="shortcut icon" href="../images/wand.ico"  type="images/x-icon"/>
  <link rel="canonical" href="http://www.imagemagick.org" />
  <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
  <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
  <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />
  <style type="text/css" media="all">
    @import url("../www/magick.css");
  </style>
  <script type="text/javascript" src="https://apis.google.com/js/plusone.js"></script>
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
  <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>
  <script type="text/javascript">
    $(document).ready(function() {
      $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({
        'transitionIn'  : 'elastic',
        'transitionOut' : 'elastic',
        'overlayShow'   : false,
        'opacity'       : true
      });
    });
  </script>
</head>

<body id="www-imagemagick-org">
<div class="titlebar">
<div style="margin: 17px auto; float: left;">
  <script type="text/javascript">
  <!--
    google_ad_client = "pub-3129977114552745";
    google_ad_slot = "5439289906";
    google_ad_width = 728;
    google_ad_height = 90;
  //-->
  </script>
  <script type="text/javascript"
    src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
  </script>
</div>
<a href="http://www.imagemagick.org/discourse-server/">
  <img src="../images/logo.jpg"
  alt="ImageMagick Logo"
  style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
<a href="../index.html">
  <img src="../images/sprite.jpg"
  alt="ImageMagick Sprite"
  style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
</div>

<div class="westbar">

<div class="menu">
  <a title="About ImageMagick" href="../index.html">About ImageMagick</a>
</div>
<div class="menu">
  <a title="Binary Releases" href="../www/binary-releases.html">Binary Releases</a>
</div>
<div class="sub">
    <a title="Binary Release: Unix" href="../www/binary-releases.html#unix">Unix</a>
</div>
<div class="sub">
    <a title="Binary Release: MacOS X" href="../www/binary-releases.html#macosx">Mac OS X</a>
</div>
<div class="sub">
    <a title="Binary Release: iOS" href="../www/binary-releases.html#iOS">iOS</a>
</div>
<div class="sub">
    <a title="Binary Release: Windows" href="../www/binary-releases.html#windows">Windows</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Command-line Tools" href="../www/command-line-tools.html">Command-line Tools</a>
</div>
<div class="sub">
    <a title="Command-line Tools: Processing" href="../www/command-line-processing.html">Processing</a>
</div>
<div class="sub">
    <a title="Command-line Tools: Options" href="../www/command-line-options.html">Options</a>
</div>
<div class="sub">
    <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
</div>
<div class="menu">
  <a title="Program Interfaces" href="../www/api.html">Program Interfaces</a>
</div>
<div class="sub">
    <a title="Program Interface: MagickWand" href="../www/magick-wand.html">MagickWand</a>
</div>
<div class="sub">
    <a title="Program Interface: MagickCore" href="../www/magick-core.html">MagickCore</a>
</div>
<div class="sub">
    <a title="Program Interface: PerlMagick" href="../www/perl-magick.html">PerlMagick</a>
</div>
<div class="sub">
    <a title="Program Interface: Magick++" href="../www/magick++.html">Magick++</a>
</div>
<div class="sep"></div>
<div  class="menu">
   <a title="Install from Source" href="../www/install-source.html">Install from Source</a>
</div>
<div class="sub">
    <a title="Install from Source: Unix" href="../www/install-source.html#unix">Unix</a>
</div>
<div class="sub">
    <a title="Install from Source: Windows" href="../www/install-source.html#windows">Windows</a>
 </div>
<div class="menu">
  <a title="Resources" href="../www/resources.html">Resources</a>
</div>
<div class="menu">
  <a title="Architecture" href="../www/architecture.html">Architecture</a>
</div>
<div class="menu">
  <a title="Download" href="../www/download.html">Download</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Search" href="../www/search.html">Search</a>
</div>
<div class="sep"></div>
<div class="menu">
  <a title="Site Map" href="../www/sitemap.html">Site Map</a>
</div>
<div  class="sub">
  <a title="Site Map: Links" href="../www/links.html">Links</a>
</div>
<div class="sep"></div>
<div  class="menu">
  <a rel="follow" title="Sponsors" href="../www/sponsors.html">Sponsors:</a>

<a href="http://www.networkredux.com">
  <img src="../images/networkredux.png" alt="[sponsor]"
  style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a>
<div class="sponsbox">
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Web Hosting" href="http://www.micfo.com">Web Hosting</a><!-- 209901010090s golestan -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Search engine optimisation" href="http://www.seomoves.com.au">Search engine optimisation</a><!-- 201110010090s jen@seo lowprofilelinks -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Web Hosting Deals" href="http://www.webhostingdeals.org">Web Hosting Deals</a><!-- 201111010270 chee.hoa darin -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Web Hosting Reviews" href="http://www.webhostingsecretrevealed.com">Web Hosting Secret Revealed</a><!-- 201204010540 iamchee jerry -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Web Hosting Break" href="http://www.webhostingbreak.com">Web Hosting Break</a><!-- 201109010090 ian@ian-m... -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Website Hosting" href="http://www.hostreviewgeeks.com">Website Hosting</a><!-- 201110010090 alexanian media -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Hotel München" href="http://www.messehotel-erb-muenchen.de">Hotel München</a><!-- 201111010450 cerb -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
</div>
<div  class="sponsor">
  <a rel="follow" title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
</div>
<div  class="sponsor">
   <a rel="follow" title="Sponsor: Webdesign" href="http://www.renehornig.com/">Webdesign</a><!-- 20111001000240 -->
</div>
</div>
</div>
</div>

<div class="eastbar">
<div style="margin: 9pt 9pt 9pt 9pt;">
  <div class="g-plusone" data-size="standard" data-count="false"></div>
</div>
</div>

<div class="main">

<h1>ImageMagick Site Map</h1>
<p class="navigation-index">[<a href="#overview">ImageMagick Overview</a> &bull; <a href="#download">Download ImageMagick</a> &bull; <a href="#install">Install ImageMagick</a> &bull; <a href="#command-line">Command-line Tools</a> &bull; <a href="#program-interfaces">Program Interfaces</a> &bull; <a href="#formats">Image Formats</a> &bull; <a href="#help">Getting Help</a> &bull; <a href="#support">Support ImageMagick</a> &bull; <a href="#miscellaneous">Miscellaneous Topics</a>]</p>

<div class="doc-section">

<p>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="../www/search.html">site search</a>.</p>
</div>

<h2><a id="overview"></a>ImageMagick Overview</h2>
<div class="doc-section">

<dl>
  <dd><a href="../www/index.html">Introduction</a>: convert, edit, or compose images from the command-line or program interface.</dd>
  <dd><a href="../www/examples.html">Examples of ImageMagick usage</a>: a few examples that show what you can do with an image using ImageMagick.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/">Anthony Thyssen's examples of ImageMagick usage</a>:  a comprehensive tutorial of using ImageMagick from the command line.</dd>
  <dd><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.</dd>
  <dd><a href="../www/resources.html">Resources</a>: ImageMagick depends on external resources including configuration files, loadable modules, fonts, and environment variables.</dd>
  <dd><a href="../www/architecture.html">Architecture</a>: get to know more about the software and algorithms behind ImageMagick.</dd>
  <dd><a href="../www/license.html">License</a>: the legally binding and authoritative terms and conditions for use, reproduction, and distribution of ImageMagick.</dd>
  <dd><a href="../www/export.html">Export classification</a>: export control status of ImageMagick.</dd>
  <dd><a href="../www/porting.html">ImageMagick Version 7</a>: ImageMagick version 7 is in development, learn how it differs from previous versions.</dd>
</dl>
</div>

<h2><a id="download"></a>Download ImageMagick</h2>
<div class="doc-section">

<dl>
  <dd><a href="../www/download.html">Download ImageMagick</a>: ImageMagick source and binary distributions are available from a variety of FTP and Web mirrors.</dd>
  <dd> <dl>
    <dd><a href="ftp://ftp.imagemagick.org/pub/ImageMagick">Unix source</a>: Unix source distributions.</dd>
    <dd><a href="http://www.imagemagick.org/download/windows">Windows source</a>: Windows source distributions.</dd>
    <dd><a href="http://www.imagemagick.org/download/binaries">Unix and Windows binaries</a>: Unix and Windows binary distributions.</dd>
    <dd><a href="../www/subversion.html">Subversion repository</a>: stable and development source releases.</dd>
    <dd><a href="http://www.magickwand.org/">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</dd>
    <dd><a href="http://www.imagemagick.org/download/delegates">Delegate libraries</a>: ImageMagick depends on a number of optional delegate libraries to extend its functionality.</dd>
  </dl> </dd>
</dl>
</div>

<h2><a id="install"></a>Install ImageMagick</h2>
<div class="doc-section">

  <p>You can install ImageMagick from source. However, if 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>
    <dd><a href="../www/install-source.html">Install from source</a>: ImageMagick builds under Windows, Mac OS X, and Linux.</dd>
    <dd><a href="../www/binary-releases.html">Install from a binary distribution</a>: install a ready-to-run Unix or Windows executable.</dd>
    <dd><a href="../www/ImageMagickObject.html">Install ImageMagickObject COM+ component</a>: install the Windows ImageMagick COM+ component.</dd>
</dl>
</div>

<h2><a id="command-line"></a>Command-line Tools</h2>
<div class="doc-section">
<dl>
  <dd><a href="../www/command-line-tools.html">Command-line tools</a>: overview of the ImageMagick commands.</dd>
  <dd> <dl>
    <dd><a href="../www/animate.html">animate</a>: animates an image sequence on any X server.</dd>
    <dd><a href="../www/compare.html">compare</a>: mathematically and visually annotate the difference between an image and its reconstruction.</dd>
    <dd><a href="../www/composite.html">composite</a>: overlaps one image over another.</dd>
    <dd><a href="../www/conjure.html">conjure</a>: interprets and executes scripts written in the Magick Scripting Language (MSL).</dd>
    <dd><a href="../www/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.</dd>
    <dd><a href="../www/display.html">display</a>: displays an image or image sequence on any X server.</dd>
    <dd><a href="../www/identify.html">identify</a>: describes the format and characteristics of one or more image files.</dd>
    <dd><a href="../www/import.html">import</a>: saves any visible window on an X server and outputs it as an image file.</dd>
    <dd><a href="../www/mogrify.html">mogrify</a>: resize an image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, and more.</dd>
    <dd><a href="../www/montage.html">montage</a>: create a composite image by combining several separate images.</dd>
    <dd><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.</dd>
  </dl></dd>
  <dd><a href="../www/command-line-processing.html">Command line processing</a>: the anatomy of the command line.</dd>
  <dd><a href="../www/command-line-options.html">Command line options</a>: annotated list of all options that can appear on the command-line.</dd>
  <dd><a href="../www/fx.html">Fx</a>: apply a mathematical expression to an image or image channels.</dd>
  <dd><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.</dd>
</dl>
</div>

<h2><a id="program-interfaces"></a>Program Interfaces</h2>
<div class="doc-section">

<dl>
  <dd><a href="../www/api.html">Program interfaces</a>: application programming interfaces.</dd>
  <dd> <dl>
    <dd><a href="http://www.imagemagick.org/ChMagick">ChMagick</a>: is a <a href="http://www.softintegration.com/">Ch</a> an embeddable MagickCore C/C++ interpreter for cross-platform scripting.</dd>
    <dd><a href="http://common-lisp.net/project/cl-magick/">CL-Magick</a>: provides a Common Lisp interface to the ImageMagick library.</dd>
    <dd><a href="https://gna.org/projects/g2f/">G2F</a>: implements an Ada 95 binding to a subset of the low-level MagickCore library.</dd>
    <dd><a href="http://www.imagemagick.org/Magick++">Magick++</a>: provides an object-oriented C++ interface to ImageMagick.</dd>
    <dd><a href="http://pecl.php.net/package/imagick">IMagick</a>: is a native PHP extension to create and modify images using the ImageMagick API.</dd>
    <dd><a href="http://www.yeo.id.au/jmagick/">JMagick</a>: provides an object-oriented Java interface to ImageMagick.</dd>
    <dd><a href="../www/magick-core.html">MagickCore</a>: C API, recommended for wizard-level developers.</dd>
    <dd><a href="../www/magick-wand.html">MagickWand</a>: convert, compose, and edit images from the C language.</dd>
    <dd><a href="http://www.magickwand.org/">MagickWand for PHP</a>: a native PHP-extension to the ImageMagick MagickWand API.</dd>
    <dd><a href="http://code.google.com/p/nmagick">nMagick</a>: is a port of the ImageMagick library to the haXe and Neko platforms.</dd>
    <dd><a href="http://wiki.freepascal.org/PascalMagick">PascalMagick</a>: a Pascal binding for the MagickWand API and also the low-level MagickCore library.</dd>
    <dd><a href="../www/perl-magick.html">PerlMagick</a>: convert, compose, and edit images from the Perl language.</dd>
    <dd><a href="http://www.imagemagick.org/download/python/">PythonMagick</a>: an object-oriented Python interface to ImageMagick.</dd>
    <dd><a href="http://rmagick.rubyforge.org/">RMagick</a>: is an interface between the Ruby programming language and ImageMagick.</dd>
    <dd><a href="http://tclmagick.sourceforge.net/">TclMagick</a>: a native Tcl-extension to the ImageMagick MagickWand API.</dd>
  </dl></dd>
</dl>
</div>

<h2><a id="format"></a>Image Formats</h2>
<div class="doc-section">
<dl>
  <dd><a href="../www/formats.html">Supported image formats</a>: annotated list of all image formats that ImageMagick can read and/or write.</dd>
  <dd><a href="../www/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.</dd>
  <dd><a href="../www/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.</dd>
  <dd><a href="../www/magick-vector-graphics.html">Magick Vector Graphics</a>: a modularized language for describing two-dimensional vector and mixed vector/raster graphics in ImageMagick.</dd>
  <dd><a href="../www/miff.html">Magick Image File Format</a>: MIFF is ImageMagick's own platform-independent format for storing bitmap images.</dd>
</dl>
</div>

<h2><a id="help"></a>Getting Help</h2>
<div class="doc-section">

<dl>
  <dd><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.</dd>
  <dd><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.</dd>
  <dd><a href="http://www.imagemagick.org/discourse-server">Discourse server</a>: get help from fellow ImageMagick users and developers, post to these forums.</dd>
  <dd><a href="http://www.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="http://www.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.</dd>
</dl>
</div>

<h2><a id="support"></a>Support ImageMagick</h2>
<div class="doc-section">

<dl>
  <dd><a href="http://www.imagemagick.org/discourse-server/viewforum.php?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="contact.html">contact the ImageMagick developers</a> with a convenient web form.</dd>
  <dd><a href="../www/sponsors.html">Sponsor ImageMagick</a>: contribute bug fixes, enhancements, hardware, funds, etc. to ensure the ImageMagick project thrives.</dd>
  <dd><a href="../www/t-shirt.html">ImageMagick t-shirt</a>: donate $25 USD and we acknowledge your gift with a logoed t-shirt.</dd>
</dl>
</div>

<h2><a id="miscellaneous"></a>Miscellaneous Topics</h2>
<div class="doc-section">

<dl>
  <dd><a href="../www/convert.html">Format conversion</a>: convert an image from one <a href="../www/formats.html">format </a> to another (e.g. PNG to JPEG).</dd>
  <dd><a href="http://www.imagemagick.org/Usage/resize/">Transform</a>: resize, rotate, crop, fddp or trim an image.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/channels/">Transparency</a>: render portions of an image invisible.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/draw/">Draw</a>: add shapes or text to an image.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/crop/">Decorate</a>: add a border or frame to an image.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/blur/">Special effects</a>: blur, sharpen, threshold, or tint an image.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/anim_basics/">Animation</a>: create a GIF animation sequence from a group of images.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/text/">Text &amp; comments</a>: insert descriptive or artistic text in an image.</dd>
  <dd><a href="../www/identify.html">Image identification</a>: describe the format and attributes of an image.</dd>
  <dd><a href="../www/composite.html">Composite</a>: overlap one image over another.</dd>
  <dd><a href="../www/montage.html">Montage</a>: juxtapose image thumbnails on an image canvas.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/distorts/">Generalized pixel distortion</a>: correct for, or induce image distortions including perspective.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/morphology/">Morphology of shapes</a>: extract features, describe shapes and recognize patterns in images.</dd>
  <dd><a href="../www/motion-picture.html">Motion picture support</a>: read and write the common image formats used in digital film work.</dd>
  <dd><a href="../www/fx.html">Image calculator</a>: apply a mathematical expression to an image or image channels.</dd>
  <dd><a href="http://www.imagemagick.org/Usage/fourier">Discrete Fourier transform</a>: implements the forward and inverse DFT.</dd>
  <dd><a href="../www/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.</dd>
  <dd><a href="../www/cipher.html">Encipher or decipher an image</a>: convert ordinary images into unintelddgible gibberish and back again.</dd>
  <dd><a href="../www/architecture.html#virtual-pixels">Virtual pixel support</a>: convenient access to pixels outside the image region.</dd>
  <dd><a href="../www/architecture.html#tera-pixel">Large image support</a>: read, process, or write mega-, giga-, or tera-pixel image sizes.</dd>
  <dd><a href="../www/architecture.html#threads">Threads of execution support</a>: ImageMagick is thread safe and most internal algorithms are OpenMP-enabled to take advantage of speed-ups offered by multicore processor chips.</dd>
  <dd><a href="../www/architecture.html#distributed">Heterogeneous distributed processing</a>: certain algorithms are OpenCL-enabled to take advantage of speed-ups offered by executing in concert across heterogeneous platforms consisting of CPUs, GPUs, and other processors.</dd>
  <dd><a href="../www/binary-releases.html#iOS">ImageMagick on the iPhone</a>: convert, edit, or compose images on your iPhone.</dd>
</dl>
</div>

</div>

<div id="linkbar">
    <span id="linkbar-west">&nbsp;</span>
    <span id="linkbar-center">
      <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
      <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
    </span>
    <span id="linkbar-east">&nbsp;</span>
  </div>
  <div class="footer">
    <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
    <span id="footer-east"> <a href="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">
    var _gaq = _gaq || [];
    _gaq.push(['_setAccount', 'UA-17690367-1']);
    _gaq.push(['_trackPageview']);

    (function() {
      var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
      ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
      var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
    })();
  </script>
</body>
</html>
