



<!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>Support ImageMagick Development @ 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="support, imagemagick, development, 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/support.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="support.html#contribute">Contribute a Bug Fix or Enhancement</a> • <a href="support.html#support">Support the ImageMagick Project</a></p>


<a class="anchor" id="sponsor"></a>

<p class="lead magick-description">We want to thank the following sponsors of the ImageMagick project, including:</p>

<dl>
  <dt class="col-md-12"><a href="http://www.networkredux.com"> <img class="clearfix" src="../images/networkredux.png" width="140" height="31" alt="[Network Redux]" /></a>   We manage everything so you don't have to</dt><br/>
  <dt class="col-md-12"><a href="http://www.amd.com"> <img class="clearfix" src="../images/amd.png" width="132" height="31" alt="[AMD]" /></a> Enabling today. Inspiring tomorrow.</dt><br/>
<!-- Expires 20200101 -->
  <dt class="col-md-12"><a href="http://www.transloadit.com"> <img class="clearfix" src="../images/transloadit.png" width="205" height="52" alt="[TransloadIt]" /></a>   The world's most versatile file uploading and processing service</dt><br/>
<!-- -->
  <dt class="col-md-12"><a href="http://cloudinary.com"> <img class="clearfix" src="../images/cloudinary.png" width="344" height="76" alt="[Image And Video Management In The Cloud]" /></a>  Image And Video Management In The Cloud.</dt><br/>
  <dt class="col-md-12"><a href="https://www.leaderssl.com"> <img class="clearfix" src="../images/leaderssl.png" width="162" height="42" alt="[LeaderSSL]" /></a>  We enable secure connections for websites.</dt><br/>
</dl>

<h2><a class="anchor" id="contribute"></a>Contribute a Bug Fix or Enhancement</h2>
<p>Open an issue on the <a href="https://github.com/ImageMagick/ImageMagick/">GitHub repository</a> if you think you have found a bug or security vulnerability. Open a pull request to the repository if you have a fix. Post to the <a href="https://imagemagick.org/discourse-server//viewforum.html?f=2">Developers</a> forum if you want to propose an enhancement for discussion.</p>

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

<p>ImageMagick has been available for free since the early 1990's. It has consistently been one of the most comprehensive free image processing packages available, but, unlike competing packages, it continues to be supported and enhanced.  Today, ImageMagick is more comprehensive and better supported than ever.</p>
<p>ImageMagick has enjoyed considerable support from commercial users. Since ImageMagick is not restricted from use in commercial or proprietary applications, it is used to support thousands of commercial web sites and is used in professional digital image and movie studios as well as publishing shops. It is also used as a component of a number of commercial applications. Many of these commercial users have made contributions to ImageMagick, large and small, often anonymous, but always appreciated.</p>
<p>ImageMagick Studio LLC is looking for support from individuals or companies that use ImageMagick, or would like to help support free software. If you or your company depends on ImageMagick, supporting ImageMagick is a way to express your gratitude and to contribute back to the further development of ImageMagick.</p>
<p>ImageMagick support can take many forms. The following are some possibilities:</p>
<ul>
<li>Contribute source code or patches to help improve ImageMagick.</li>
<li>Send us a licensed copy of Adobe Photoshop.</li>
<li>Lend us developers to add support for additional image formats or to finish integrating support for the SVG specification.</li>
<li>Extend our FFT algorithm to support non-square images.</li>
<li>Port our Unix build environment from Autoconf / Automake to CMake.</li>
<li>Provide technical writers to assist with the development of commercial-grade technical documentation.</li>
<li>Donate a quality SWOP or Eurostandard ICC profile to use as a default CMYK to RGB conversion profile.</li>
<li>Donate a workstation with a modern processor and plenty of memory and disk.  We would use it for our primary development environment.</li>
<li>Donate a Windows laptop so we can build and test ImageMagick under Windows 10.</li>
<li>Make a monetary contribution:</li></ul>

<p>Donations can be anonymous, or public.</p>
<fieldset>
<legend>Support the ImageMagick Project</legend>
<h3><a href="https://www.paypal.me/ImageMagick">Paypal</a></h3>
<p>For direct monetary contributions, click on the donate button to contribute thru Paypal or with a credit card:</p>

<ul>
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick" />
<input type="hidden" name="hosted_button_id" value="E4UZGVA6PU7RC" />
<input type="image" src="../images/donate.png" border="0" name="submit" alt="Support ImageMagick" width="92" height="26" />
</form>
</ul>

<h3>Litecoin</h3>
<p>Our Litecoin Address is: <kbd>LcZLAmym4EMvUPc9koagkccRLYQbsgGwmj</kbd>.  Or you can reference the below QR code:</p>
<ul>
<dt class="col-md-4"><img src="../images/litecoin.png" alt="Click to Donate to ImageMagick via Litecoin" title="Click to Donate to ImageMagick via Litecoin" width="256" height="256" /></dt>
</ul>
<h3>Check</h3>
<p>Check, in USD funds, made payable to
  <a href="../">ImageMagick Studio LLC</a>, and send to:</p>
<ul>
<pre class="highlight"><code>ImageMagick Studio LLC
P.O. Box 40
Landenberg, PA  19350
USA
</code></pre>
</ul>
</fieldset>
<br/>
<p>If you prefer a recurring subscription or if you have any questions about supporting ImageMagick, please <a href="https://imagemagick.org/script/contact.php">contact us</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="support.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 -->