<!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: Exceptions</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."/>
  <meta name="Application-url" content="http://www.imagemagick.org"/>
  <meta name="Generator" content="PHP"/>
  <meta name="Keywords" content="exceptions, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
  <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="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" />
  <style type="text/css" media="all">
    @import url("../www/magick.css");
  </style>
  <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>
  <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />
  <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="sep"></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: iPhone" href="../www/binary-releases.html#iPhone">iPhone</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 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 Reviews" href="http://www.webhostingmasters.com">Web Hosting Reviews</a><!-- 201107011500 affliatelabel -->
</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 Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
</div>
<div  class="sponsor">
   <a rel="follow" title="Sponsor: Bildbearbeitung" href="http://www.bildschliff.de">Bildbearbeitung</a><!-- 2012060100300 strait.de-->
</div>
</div>
</div>
</div>

<div class="eastbar">

</div>

<div class="main">

<h1>ImageMagick Exceptions</h1>
<p class="navigation-index"></p>

<div class="doc-section">
<p>ImageMagick returns a status of 0 whenever a command or algorithm successfully complete without complaint.  A warning code generally is typically just a notice that something unusual occurred but the command or algorithm still completed and most likely the results are still usable.  An error means the command or algorithm could not complete as expected and any results are unreliable.  A fatal error means the command or algorithm could not complete and the process exits prematurely and no results are returned.</p>

<table class="doc">
  <caption>ImageMagick Error and Warning Codes</caption>
  <tbody>
  <tr>
    <th style="width: 15%">Domain</th>
    <th>Description</th>
    <th>Warning</th>
    <th>Error</th>
    <th>Fatal Error</th>
  </tr>

  <tr>
    <td valign="top">Success</td>
    <td valign="top">the command or algorithm completed successfully without complaint</td>
    <td valign="top">0</td>
    <td valign="top">0</td>
    <td valign="top">0</td>
  </tr>

  <tr>
    <td valign="top">Resource Limit</td>
    <td valign="top">a program resource is exhausted (e.g. not enough memory)</td>
    <td valign="top">300</td>
    <td valign="top">400</td>
    <td valign="top">700</td>
  </tr>

  <tr>
    <td valign="top">Type</td>
    <td valign="top">A font is unavailable; a substitution may have occurred</td>
    <td valign="top">305</td>
    <td valign="top">405</td>
    <td valign="top">705</td>
  </tr>

  <tr>
    <td valign="top">Option</td>
    <td valign="top">a command-line option was malformed</td>
    <td valign="top">310</td>
    <td valign="top">410</td>
    <td valign="top">710</td>
  </tr>

  <tr>
    <td valign="top">Delegate</td>
    <td valign="top">an ImageMagick <i>delegate</i> failed to complete</td>
    <td valign="top">315</td>
    <td valign="top">415</td>
    <td valign="top">715</td>
  </tr>

  <tr>
    <td valign="top">Missing Delegate</td>
    <td valign="top">the image type can not be read or written because the appropriate <i>Delegate</i> is missing</td>
    <td valign="top">320</td>
    <td valign="top">420</td>
    <td valign="top">720</td>
  </tr>

  <tr>
    <td valign="top">Corrupt Image</td>
    <td valign="top">the image file may be corrupt</td>
    <td valign="top">325</td>
    <td valign="top">425</td>
    <td valign="top">725</td>
  </tr>

  <tr>
    <td valign="top">FileOpen</td>
    <td valign="top">the image file could not be opened for reading or writing</td>
    <td valign="top">330</td>
    <td valign="top">430</td>
    <td valign="top">730</td>
  </tr>

  <tr>
    <td valign="top">Blob</td>
    <td valign="top">a binary large object could not be allocated, read, or written</td>
    <td valign="top">335</td>
    <td valign="top">435</td>
    <td valign="top">735</td>
  </tr>

  <tr>
    <td valign="top">Stream</td>
    <td valign="top">there was a problem reading or writing from a stream</td>
    <td valign="top">340</td>
    <td valign="top">440</td>
    <td valign="top">740</td>
  </tr>

  <tr>
    <td valign="top">Cache</td>
    <td valign="top">pixels could not be read or written to the pixel cache</td>
    <td valign="top">345</td>
    <td valign="top">445</td>
    <td valign="top">745</td>
  </tr>

  <tr>
    <td valign="top">Coder</td>
    <td valign="top">there was a problem with an image coder</td>
    <td valign="top">350</td>
    <td valign="top">450</td>
    <td valign="top">750</td>
  </tr>

  <tr>
    <td valign="top">Module</td>
    <td valign="top">there was a problem with an image module</td>
    <td valign="top">355</td>
    <td valign="top">455</td>
    <td valign="top">755</td>
  </tr>

  <tr>
    <td valign="top">Draw</td>
    <td valign="top">a drawing operation failed</td>
    <td valign="top">360</td>
    <td valign="top">460</td>
    <td valign="top">760</td>
  </tr>

  <tr>
    <td valign="top">Image</td>
    <td valign="top">the operation could not complete due to an incompatible image</td>
    <td valign="top">365</td>
    <td valign="top">465</td>
    <td valign="top">765</td>
  </tr>

  <tr>
    <td valign="top">Wand</td>
    <td valign="top">there was a problem specific to the MagickWand API</td>
    <td valign="top">370</td>
    <td valign="top">470</td>
    <td valign="top">770</td>
  </tr>

  <tr>
    <td valign="top">Random</td>
    <td valign="top">there is a problem generating a true or pseudo-random number</td>
    <td valign="top">375</td>
    <td valign="top">475</td>
    <td valign="top">775</td>
  </tr>

  <tr>
    <td valign="top">XServer</td>
    <td valign="top">an X resource is unavailable</td>
    <td valign="top">380</td>
    <td valign="top">480</td>
    <td valign="top">780</td>
  </tr>

  <tr>
    <td valign="top">Monitor</td>
    <td valign="top">there was a problem activating the progress monitor</td>
    <td valign="top">385</td>
    <td valign="top">485</td>
    <td valign="top">785</td>
  </tr>

  <tr>
    <td valign="top">Registry</td>
    <td valign="top">there was a problem getting or setting the registry</td>
    <td valign="top">390</td>
    <td valign="top">490</td>
    <td valign="top">790</td>
  </tr>

  <tr>
    <td valign="top">Configure</td>
    <td valign="top">there was a problem getting a configuration file</td>
    <td valign="top">395</td>
    <td valign="top">495</td>
    <td valign="top">795</td>
  </tr>

  <tr>
    <td valign="top">Policy</td>
    <td valign="top">a policy denies access to a delegate, coder, filter, path, or resource.</td>
    <td valign="top">399</td>
    <td valign="top">499</td>
    <td valign="top">799</td>
  </tr>
  </tbody>
</table>

</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>
