



<!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>ImageMagick - Resources</title>
  <meta name="application-name" content="ImageMagick" />
  <meta name="description" content="Use ImageMagick® to create, edit, compose, and convert bitmap images. Resize an image, crop it, change its shades and colors, add captions, and more." />
  <meta name="application-url" content="https://imagemagick.org" />
  <meta name="generator" content="PHP" />
  <meta name="keywords" content="resources, image converter, image resizer, image editor, photo editor, jpg converter, png converter, tiff converter, vector images, online, free, swiss army" />
  <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-2020 ImageMagick Studio LLC" />
  <meta name="distribution" content="Global" />
  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" />
  <meta property='og:url' content='../' />
  <meta property='og:title' content='ImageMagick' />
  <meta property='og:image' content='../images/logo.png' />
  <meta property='og:type' content='website' />
  <meta property='og:site_name' content='ImageMagick' />
  <meta property='og:description' content="Create, Edit, Compose, or Convert Bitmap Images" />
  <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
  <link href="../www/resources.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>
  <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 active">
        <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>
    </div>
    <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>
  </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-full-width-responsive="true"
         data-ad-format="horizontal"></ins>
    <script>
      (adsbygoogle = window.adsbygoogle || []).push({});
    </script>

  </div>

  <main class="container">
    <div class="magick-template">
<div class="magick-header">
<p class="text-center"><a href="resources.html#configure">Configuration Files</a> • <a href="resources.html#modules">Modules</a> • <a href="resources.html#fonts">Fonts</a> • <a href="resources.html#environment">Environment Variables</a></p>

<p class="lead magick-description">ImageMagick depends on a number of external resources including configuration files, loadable modules, fonts, and environment variables.</p>

<h2><a class="anchor" id="configure"></a>Configuration Files</h2>

<p>ImageMagick depends on a number of external configuration files detailed here:</p>

<dl class="row">
<dt class="col-md-4"><a href="https://imagemagick.org/source/coder.xml">coder.xml</a></dt>
  <dd class="col-md-8">Associate an image format with the specified coder module.

  ImageMagick has a number of coder modules to support the reading and/or writing of an image format (e.g. JPEG).  Some coder modules support more than one associated image format and the mapping between an associated format and its respective coder module is defined in this configuration file.  For example, the PNG coder module not only supports the PNG image format, but the JNG and MNG formats as well.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/colors.xml">colors.xml</a></dt>
  <dd class="col-md-8">Associate a color name with its red, green, blue, and alpha intensities.

  A number of command line options require a <a href="color.html">color parameter</a>.  It is often convenient to refer to a color by name (e.g. white) rather than by hex value (e.g. #fff).  This file maps a color name to its equivalent red, green, blue, and alpha intensities (e.g. for white, red = 255, green = 255, blue = 255, and alpha = 0).
  </dd>

<dt class="col-md-4"><a class="anchor" id="configure.xml"/><a href="https://imagemagick.org/source/configure.xml">configure.xml</a></dt>
  <dd class="col-md-8">Set ImageMagick build parameters and system-wide environment variables (e.g. MAGICK_TEMPORARY_PATH).
  As ImageMagick is built, a number of build parameters are saved to this configuration file.  They include the version, release date, dependent delegate libraries, and quantum depth among others.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/delegates.xml">delegates.xml</a></dt>
  <dd class="col-md-8">Associate delegate programs with certain image formats.

  ImageMagick relies on a number of delegate programs to support certain image formats such as <a href="http://ufraw.sourceforge.net/">ufraw-batch</a> to read raw camera formats or <a href="http://www.cs.wisc.edu/~ghost/">Ghostscript</a> to read Postscript images.  Use this configuration file to map an input or output format to an external delegate program.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/english.xml">english.xml</a></dt>
  <dd class="col-md-8">Associate message tags with English translations.</dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/francais.xml">francais.xml</a></dt>
  <dd class="col-md-8">Associate message tags with French translations.  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/locale.xml">locale.xml</a></dt>
  <dd class="col-md-8">Associate message tags with a  translation for your locale.

  ImageMagick has a number of informational, warning, and error messages that are represented as tags.  Tags are short descriptions of a message such as
  <var>FileNotFound</var> or <var>MemoryAllocationFailed</var>.  This configuration file lists locales that have a translation for each tag recognized by ImageMagick.  Currently only English and French translations are available in the <code>english.xml</code> and <code>francais.xml</code> configuration files.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/log.xml">log.xml</a></dt>
  <dd class="col-md-8">Configure logging parameters.
  ImageMagick is capable of spewing copious amounts of informational or debugging statements.  Use this file to configure how the information will appear in a log message and where you want the logging messages posted.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/mime.xml">mime.xml</a></dt>
  <dd class="col-md-8">Associate an internet media type with a unique identifier.
  Many files and data streams have identifiers that uniquely identify a
particular internet media type. For example, files in the "Corel Draw
drawing" format (mime type="application/vnd.corel-draw") are associated with
the filename pattern <code>*.cdr</code>, and also have an initial string of the
characters "CDRXvrsn". ImageMagick uses combinations of this information,
when available, to attempt to quickly determine the internet media type of a
file or data stream.
</dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/policy.xml">policy.xml</a></dt>
  <dd class="col-md-8">Configure ImageMagick policies.
  By default any coder, delegate, filter, or file path is permitted.  Use a policy to deny access to, for example, the MPEG video delegate, or permit reading images from a file system but deny writing to that same file system.  Or use the resource policy to set resource limits.  Policies are useful for multi-user servers that want to limit the overall impact ImageMagick has on the system.  For example, to limit the maximum image size in memory to 100MP:

<pre class="highlight"><code>&lt;policy domain="resource" name="area" value="100MP"/></code></pre>

Any image larger than this area limit is cached to disk rather than memory.

Use <code>width</code> to limit the maximum width of an image in pixels.  Exceed this limit and an exception is thrown and processing stops.

<pre class="highlight"><code>&lt;policy domain="resource" name="width" value="8KP"/></code></pre>

To limit the elapsed time of any ImageMagick command to 5 minutes, use this policy:

<pre class="highlight"><code>&lt;policy domain="resource" name="time" value="300"/></code></pre>
Define arguments for the memory, map, and disk resources with SI prefixes (.e.g 100MB).  In addition, resource policies are maximums for each instance of ImageMagick (e.g. policy memory limit 1GB, the <code>-limit 2GB</code> option exceeds policy maximum so memory limit is 1GB). </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/quantization-table.xml">quantization-table.xml</a></dt>
  <dd class="col-md-8">Custom JPEG quantization tables. Activate with <code>-define:q-table=quantization-table.xml</code>.</dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/thresholds.xml">thresholds.xml</a></dt>
  <dd class="col-md-8">Set threshold maps for ordered posterized dither.</dd>

<dt class="col-md-4"><a class="anchor" id="type.xml"></a><a href="https://imagemagick.org/source/type.xml">type.xml</a></dt>
  <dd class="col-md-8">Configure fonts.
  Define the font name, family, foundry, style, format, metrics, and glyphs for any font you want to use within ImageMagick.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/type-ghostscript.xml">type-ghostscript.xml</a></dt>
  <dd class="col-md-8">Configure <a href="http://www.cs.wisc.edu/~ghost/">Ghostscript</a> fonts.
  The Ghostscript package includes a number of <a href="https://sourceforge.net/projects/gs-fonts/">fonts</a> that can be accessed with ImageMagick.
  </dd>

<dt class="col-md-4"><a href="https://imagemagick.org/source/type-windows.xml">type-windows.xml</a></dt>
  <dd class="col-md-8">Associate names with Windows font glyphs.</dd>
</dl>

<p>Under Unix and Linux, ImageMagick searches for each of the configuration files listed above by looking in the locations given below, in order, and loads them if found:</p>

<pre class="highlight"><code>$MAGICK_CONFIGURE_PATH
$PREFIX/etc/ImageMagick-7 
$PREFIX/share/ImageMagick-7 
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
&lt;<var>client path</var>&gt;/etc/ImageMagick</code></pre>

<p>The environmental variable $PREFIX is the default install path (e.g. <code>/usr/local</code>). The <var>client path</var> is the execution path of your ImageMagick client (e.g. <code>/usr/local</code>) .</p>

<p>For the Unix or Linux pre-compiled uninstalled binary distributions, the configuration load order is:</p>

<pre class="highlight"><code>$MAGICK_CONFIGURE_PATH
$MAGICK_HOME/etc/ImageMagick-7 
$MAGICK_HOME/share/ImageMagick-7 
$PREFIX/share/ImageMagick-7 
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick/
&lt;<var>client path</var>&gt;/etc/ImageMagick
&lt;<var>current directory</var>&gt;</code></pre>

<p>Under Windows, ImageMagick searches for these configuration files in the following order, and loads them if found:</p>

<pre class="highlight"><code>$MAGICK_CONFIGURE_PATH
&lt;<var>windows registry</var>&gt;
$PREFIX/config
$USERPROFILE/.config/ImageMagick
&lt;<var>client path</var>&gt;</code></pre>

<p>Above, $PREFIX is the default install path, typically <code>c:\\Program Files\\ImageMagick-7.0.10</code>.</p>

<p>For an uninstalled Windows installation, the configuration load order is:</p>

<pre class="highlight"><code>$MAGICK_CONFIGURE_PATH
$MAGICK_HOME
$USERPROFILE/.config/ImageMagick
<var>client path</var>
&lt;<var>current directory</var>&gt;</code></pre>

<p>If a configuration file cannot not be found, ImageMagick relies on built-in default values.</p>

<h2><a class="anchor" id="modules"></a>Modules</h2>

<h5>Coders</h5>
<p>An image coder (i.e. encoder / decoder) is responsible for registering, optionally classifying, optionally reading, optionally writing, and unregistering one image format (e.g. PNG, GIF, JPEG, etc.).  ImageMagick searches for coders in the following order and it uses the first match found:</p>

<pre class="highlight"><code>$MAGICK_HOME/lib/ImageMagick-7.0.10/modules-Q16/coders
&lt;<var>client path</var>&gt;/../lib/ImageMagick-7.0.10/modules-Q16/coders
$MAGICK_HOME/lib/ImageMagick-7.0.10/modules-Q16/coders
$MAGICK_HOME/share/ImageMagick-7.0.10/modules-Q16/coders
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
&lt;<var>client path</var>&gt;/lib/ImageMagick-7.0.10/modules-Q16/coders</code></pre>

<h5>Filters</h5>
<p>ImageMagick provides a convenient mechanism for adding your own custom image processing algorithms.  ImageMagick searches for filters in the following order and it uses the first match found:</p>
<pre class="highlight"><code>$MAGICK_HOME/lib/ImageMagick-7.0.10/modules-Q16/filters
&lt;<var>client path</var>&gt;/../lib/ImageMagick-7.0.10/modules-Q16/filters
$MAGICK_HOME/lib/ImageMagick-7.0.10/modules-Q16/filters
$MAGICK_HOME/share/ImageMagick-7.0.10/modules-Q16/filters
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
&lt;<var>client path</var>&gt;/lib/ImageMagick-7.0.10/modules-Q16/filters</code></pre>

<h2><a class="anchor" id="fonts"></a>Fonts</h2>

<p>ImageMagick is able to load raw TrueType and Postscript font files.  It searches for the font configuration file, <a href="resources.html#type.xml">type.xml</a>, in the following order, and loads them if found:</p>

<pre class="highlight"><code>$MAGICK_CONFIGURE_PATH
$MAGICK_HOME/etc/ImageMagick/-7.0.10
$MAGICK_HOME/share/ImageMagick-7.0.10
$XDG_CACHE_HOME/ImageMagick
$HOME/.config/ImageMagick
&lt;<var>client path</var>&gt;/etc/ImageMagick
$MAGICK_FONT_PATH</code></pre>

<h2><a class="anchor" id="environment"></a>Environment Variables</h2>

<p>Environment variables recognized by ImageMagick include:</p>

<div class="table-responsive" style="font-size:87.5% !important;">
<table class="table table-sm table-striped">
  <tr>
    <td>HOME</td>
    <td>Set path to search for configuration files in <code>$HOME/.config/ImageMagick</code> if the directory exists.</td>
  </tr>
  <tr>
    <td>LD_LIBRARY_PATH</td>
    <td>Set path to the ImageMagick shareable libraries and other dependent libraries.</td>
  </tr>
  <tr>
    <td>MAGICK_AREA_LIMIT</td>
    <td>Set the maximum <var>width * height</var> of an image that can reside in the pixel cache memory.  Images that exceed the area limit are cached to disk (see <a href="resources.html#disk-limit">MAGICK_DISK_LIMIT</a>) and optionally memory-mapped.</td>
  </tr>
  <tr>
    <td>MAGICK_CODER_FILTER_PATH</td>
    <td>Set search path to use when searching for filter process modules (invoked via  <a href="command-line-options.html#process">-process</a>).  This path permits the user to extend ImageMagick's image processing functionality by adding loadable modules to a preferred location rather than copying them into the ImageMagick installation directory.  The formatting of the search path is similar to operating system search paths (i.e. colon delimited for Unix, and semi-colon delimited for Microsoft Windows). This user specified search path is searched before trying the <a href="resources.html#modules">default search path</a>.</td>
  </tr>
  <tr>
    <td>MAGICK_CODER_MODULE_PATH</td>
    <td>Set path where ImageMagick can locate its coder modules.  This path permits the user to arbitrarily extend the image formats supported by ImageMagick by adding loadable coder modules from an preferred location rather than copying them into the ImageMagick installation directory.  The formatting of the search path is similar to operating system search paths (i.e. colon delimited for Unix, and semi-colon delimited for Microsoft Windows). This user specified search path is searched before trying the <a href="resources.html#modules">default search path</a>.</td>
  </tr>
  <tr>
    <td>MAGICK_CONFIGURE_PATH</td>
    <td>Set path where ImageMagick can locate its configuration files.  Use this search path to search for configuration (.xml) files. The formatting of the search path is similar to operating system search paths (i.e. colon delimited for Unix, and semi-colon delimited for Microsoft Windows). This user specified search path is searched before trying the <a href="resources.html#configure">default search path</a>.</td>
  </tr>
  <tr>
    <td>MAGICK_DEBUG</td>
    <td>Set debug options.  See <a href="command-line-options.html#debug">-debug</a> for a description of debugging options.</td>
  </tr>
  <tr>
    <td><a class="anchor" id="disk-limit"></a>MAGICK_DISK_LIMIT</td>
    <td>Set maximum amount of disk space in bytes permitted for use by the pixel cache.  When this limit is exceeded, the pixel cache is not be created and an error message is returned.</td>
  </tr>
  <tr>
    <td>MAGICK_ERRORMODE</td>
    <td>Set the process error mode (Windows only).  A typical use might be a value of 1 to prevent error mode dialogs from displaying a message box and hanging the application.</td>
  </tr>
  <tr>
    <td>MAGICK_FILE_LIMIT</td>
    <td>Set maximum number of open pixel cache files.  When this limit is exceeded, any subsequent pixels cached to disk are closed and reopened on demand.  This behavior permits a large number of images to be accessed simultaneously on disk, but with a speed penalty due to repeated open/close calls.</td>
  </tr>
  <tr>
    <td>MAGICK_FONT_PATH</td>
    <td>Set path ImageMagick searches for TrueType and Postscript Type1 font files.  This path is only consulted if a particular font file is not found in the current directory.</td>
  </tr>
  <tr>
    <td>MAGICK_HEIGHT_LIMIT</td>
    <td>Set the maximum <var>height</var> of an image.</td>
  </tr>
  <tr>
    <td>MAGICK_HOME</td>
    <td>Set the path at the top of ImageMagick installation directory.  This path is consulted by <var>uninstalled</var> builds of ImageMagick which do not have their location hard-coded or set by an installer.</td>
  </tr>
  <tr>
    <td>MAGICK_LIST_LENGTH_LIMIT</td>
    <td>Set the maximum length of an image sequence.</td>
  </tr>
  <tr>
    <td><a class="anchor" id="map-limit"></a>MAGICK_MAP_LIMIT</td>
    <td>Set maximum amount of memory map in bytes to allocate for the pixel cache.  When this limit is exceeded, the image pixels are cached to disk (see MAGICK_DISK_LIMIT).</td>
  </tr>
  <tr>
    <td>MAGICK_MEMORY_LIMIT</td>
    <td>Set maximum amount of memory in bytes to allocate for the pixel cache from the heap.  When this limit is exceeded, the image pixels are cached to memory-mapped disk (see <a href="resources.html#map-limit">MAGICK_MAP_LIMIT</a>).</td>
  </tr>
  <tr>
    <td>MAGICK_OCL_DEVICE</td>
    <td>Set to <code>off</code> to disable hardware acceleration of certain accelerated algorithms (e.g. blur, convolve, etc.).</td>
  </tr>
  <tr>
    <td>MAGICK_PRECISION</td>
    <td>Set the maximum number of significant digits to be printed.</td>
  </tr>
  <tr>
    <td>MAGICK_SHRED_PASSES</td>
    <td>If you want to keep the temporary files ImageMagick creates private, overwrite them with zeros or random data before they are removed.  On the first pass, the file is zeroed.  For subsequent passes, random data is written.</td>
  </tr>
  <tr>
    <td>MAGICK_SYNCHRONIZE</td>
    <td>Set to "true" to ensure all image data is fully flushed and synchronized to disk. There is a performance penalty, however, the benefits include ensuring a valid image file in the event of a system crash and early reporting if there is not enough disk space for the image pixel cache.</td>
  </tr>
  <tr>
    <td>MAGICK_TEMPORARY_PATH</td>
    <td>Set path to store temporary files.</td>
  </tr>
  <tr>
    <td>MAGICK_THREAD_LIMIT</td>
    <td>Set maximum parallel threads.  Many ImageMagick algorithms run in parallel on multi-processor systems.  Use this environment variable to set the maximum number of threads that are permitted to run in parallel.</td>
  </tr>
  <tr>
    <td>MAGICK_THROTTLE_LIMIT</td>
    <td>Periodically yield the CPU for at least the time specified in milliseconds.</td>
  </tr>
  <tr>
    <td>MAGICK_TIME_LIMIT</td>
    <td>Set maximum time in seconds.  When this limit is exceeded, an exception is thrown and processing stops.</td>
  </tr>
  <tr>
    <td>MAGICK_WIDTH_LIMIT</td>
    <td>Set the maximum <var>width</var> of an image.</td>
  </tr>
</table></div>

<p>Define arguments for the <code>MAGICK_MEMORY_LIMIT</code>, <code>MAGICK_DISK_LIMIT</code>, and <code>MAGICK_MEMORY_LIMIT</code> environment variables with SI prefixes (.e.g <code>100MB</code>). <code>MAGICK_WIDTH_LIMIT</code>, <code>MAGICK_HEIGHT_LIMIT</code> and <code>MAGICK_AREA_LIMIT</code> accepts pixel suffixes such as MP for mega-pixels (e.g. 100MP).</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="resources.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="links.html">Related</a> •
     <a href="sitemap.html">Sitemap</a>
    <br/>
    <a href="support.html">Donate</a> •
    <a href="http://pgp.mit.edu/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
    <a href="https://imagemagick.org/script/contact.php">Contact Us</a> 
    <br/>
    <a href="https://github.com/imagemagick/imagemagick" target="_blank" rel="noopener" aria-label="GitHub"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 499.36" width="2%" height="2%" role="img" focusable="false"><title>GitHub</title><path fill="currentColor" fill-rule="evenodd" d="M256 0C114.64 0 0 114.61 0 256c0 113.09 73.34 209 175.08 242.9 12.8 2.35 17.47-5.56 17.47-12.34 0-6.08-.22-22.18-.35-43.54-71.2 15.49-86.2-34.34-86.2-34.34-11.64-29.57-28.42-37.45-28.42-37.45-23.27-15.84 1.73-15.55 1.73-15.55 25.69 1.81 39.21 26.38 39.21 26.38 22.84 39.12 59.92 27.82 74.5 21.27 2.33-16.54 8.94-27.82 16.25-34.22-56.84-6.43-116.6-28.43-116.6-126.49 0-27.95 10-50.8 26.35-68.69-2.63-6.48-11.42-32.5 2.51-67.75 0 0 21.49-6.88 70.4 26.24a242.65 242.65 0 0 1 128.18 0c48.87-33.13 70.33-26.24 70.33-26.24 14 35.25 5.18 61.27 2.55 67.75 16.41 17.9 26.31 40.75 26.31 68.69 0 98.35-59.85 120-116.88 126.32 9.19 7.9 17.38 23.53 17.38 47.41 0 34.22-.31 61.83-.31 70.23 0 6.85 4.61 14.81 17.6 12.31C438.72 464.97 512 369.08 512 256.02 512 114.62 397.37 0 256 0z"/></svg></a> •
        <a href="https://twitter.com/imagemagick" target="_blank" rel="noopener" aria-label="Twitter"><svg xmlns="http://www.w3.org/2000/svg" class="navbar-nav-svg" viewBox="0 0 512 416.32" width="2%" height="2%" role="img" focusable="false"><title>Twitter</title><path fill="currentColor" d="M160.83 416.32c193.2 0 298.92-160.22 298.92-298.92 0-4.51 0-9-.2-13.52A214 214 0 0 0 512 49.38a212.93 212.93 0 0 1-60.44 16.6 105.7 105.7 0 0 0 46.3-58.19 209 209 0 0 1-66.79 25.37 105.09 105.09 0 0 0-181.73 71.91 116.12 116.12 0 0 0 2.66 24c-87.28-4.3-164.73-46.3-216.56-109.82A105.48 105.48 0 0 0 68 159.6a106.27 106.27 0 0 1-47.53-13.11v1.43a105.28 105.28 0 0 0 84.21 103.06 105.67 105.67 0 0 1-47.33 1.84 105.06 105.06 0 0 0 98.14 72.94A210.72 210.72 0 0 1 25 370.84a202.17 202.17 0 0 1-25-1.43 298.85 298.85 0 0 0 160.83 46.92"/></svg></a>
    <br/>
    <small>© 1999-2020 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.4.1/jquery.min.js"><\/script>')</script>
</body>
</html>
<!-- Magick Cache 19th March 2020 17:49 -->