]> granicus.if.org Git - imagemagick/blob - www/api/exception.html
9862342b9610052307c404c9477a4caef1185e34
[imagemagick] / www / api / exception.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\r
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">\r
4 <head>\r
5   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>\r
7   <title>ImageMagick: MagickCore, C API for ImageMagick: Dealing with Exceptions</title/>
8   <meta http-equiv="Content-Language" content="en-US"/>
9   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
10   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
11   <meta name="Application-name" content="ImageMagick"/>
12   <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
13   <meta name="Application-url" content="http://www.imagemagick.org"/>
14   <meta name="Generator" content="PHP"/>
15   <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, dealing, with, exceptions, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
16   <meta name="Rating" content="GENERAL"/>
17   <meta name="Robots" content="INDEX, FOLLOW"/>
18   <meta name="Generator" content="ImageMagick Studio LLC"/>
19   <meta name="Author" content="ImageMagick Studio LLC"/>
20   <meta name="Revisit-after" content="2 DAYS"/>
21   <meta name="Resource-type" content="document"/>
22   <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
23   <meta name="Distribution" content="Global"/>
24   <link rel="icon" href="../../images/wand.png"  sizes="32x32"/>
25   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/x-icon"/>
26   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
27   <style type="text/css" media="all">\r
28     @import url("../../www/magick.css");\r
29   </style>\r
30 </head>\r
31 \r
32 <body id="www-imagemagick-org">\r
33 <div class="titlebar">\r
34 <a href="../../index.html">\r
35   <img src="../../images/script.png" alt="[ImageMagick]"\r
36   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
37 <a href="http://www.networkredux.com">\r
38   <img src="../../images/networkredux.png" alt="[sponsor]"\r
39   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
40 <a href="http://www.imagemagick.org/discourse-server/">\r
41   <img src="../../images/logo.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 <a href="../../index.html">\r
44   <img src="../../images/sprite.jpg" alt=""\r
45   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
46 </div>\r
47 \r
48 <div class="westbar">\r
49 \r
50 <div class="menu">
51   <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
52 </div>
53 <div class="sep"></div>\r
54 <div class="menu">
55   <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
56 </div>
57 <div class="sub">
58     <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
59 </div>
60 <div class="sub">
61     <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
62 </div>
63 <div class="sub">
64     <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
65 </div>
66 <div class="sep"></div>\r
67 <div class="menu">
68   <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
69 </div>
70 <div class="sub">
71     <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
72 </div>
73 <div class="sub">
74     <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
75 </div>
76 <div class="sub">
77     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
78 </div>
79 <div class="menu">
80   <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
81 </div>
82 <div class="sub">
83     <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
84 </div>
85 <div class="sub">
86     <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
87 </div>
88 <div class="sub">
89     <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
90 </div>
91 <div class="sub">
92     <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
93 </div>
94 <div class="sep"></div>\r
95 <div  class="menu">
96    <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
97 </div>
98 <div class="sub">
99     <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
100 </div>
101 <div class="sub">
102     <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
103  </div>
104 <div class="menu">
105   <a title="Resources" href="../../www/resources.html">Resources</a>
106 </div>
107 <div class="menu">
108   <a title="Architecture" href="../../www/architecture.html">Architecture</a>
109 </div>
110 <div class="menu">
111   <a title="Download" href="../../www/download.html">Download</a>
112 </div>
113 <div class="sep"></div>\r
114 <div class="menu">
115   <a title="Search" href="../http://www.imagemagick.org/script/search.php">Search</a>
116 </div>
117 <div class="sep"></div>\r
118 <div class="menu">
119   <a title="Site Map"href="../../www/sitemap.html">Site Map</a>
120 </div>
121 <div  class="sub">
122     <a title="Site Map: Links"href="../../www/links.html">Links</a>
123 </div>
124 <div class="sep"></div>\r
125 <div  class="menu">
126   <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
127
128 <div class="sponsbox">
129 <div  class="sponsor">
130   <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
131 </div>
132 <div  class="sponsor">
133   <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
134 </div>
135 <div  class="sponsor">
136   <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
137 </div>
138 <div  class="sponsor">
139   <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
140 </div>
141 <div  class="sponsor">
142   <a title="Sponsor: Diamonds are a Girls Best Friend" href="http://www.schmuck.org">Diamonds are a Girls Best Friend</a><!-- 201101010600 Peterssen-->
143 </div>
144 <div  class="sponsor">
145    <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
146 </div>
147 <div  class="sponsor">
148    <a title="Sponsor: Online-Magazin" href="http://www.unkostenbeitrag.de/">Online-Magazin</a><!-- 20101101000200 -->
149 </div>
150 </div>
151 </div>
152 </div>\r
153 \r
154 <div class="eastbar">\r
155   <script type="text/javascript">\r
156   <!--\r
157     google_ad_client = "pub-3129977114552745";\r
158     google_ad_slot = "0574824969";\r
159     google_ad_width = 160;\r
160     google_ad_height = 600;\r
161   //-->\r
162   </script>\r
163   <script type="text/javascript"\r
164     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
165   </script>\r
166 </div>\r
167 \r
168 <div class="main">\r
169 \r
170 <p class="navigation-index">[<a href="#AcquireExceptionInfo">AcquireExceptionInfo</a> &bull; <a href="#ClearMagickException">ClearMagickException</a> &bull; <a href="#CatchException">CatchException</a> &bull; <a href="#DestroyExceptionInfo">DestroyExceptionInfo</a> &bull; <a href="#GetExceptionInfo">GetExceptionInfo</a> &bull; <a href="#GetExceptionMessage">GetExceptionMessage</a> &bull; <a href="#GetLocaleExceptionMessage">GetLocaleExceptionMessage</a> &bull; <a href="#InheritException">InheritException</a> &bull; <a href="#MagickError">MagickError</a> &bull; <a href="#MagickFatalError">MagickFatalError</a> &bull; <a href="#MagickWarning">MagickWarning</a> &bull; <a href="#SetErrorHandler">SetErrorHandler</a> &bull; <a href="#SetFatalErrorHandler">SetFatalErrorHandler</a> &bull; <a href="#SetWarningHandler">SetWarningHandler</a> &bull; <a href="#ThrowException">ThrowException</a>]</p>
171
172 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
173 _8c.html" target="source" name="AcquireExceptionInfo">AcquireExceptionInfo</a></h2>
174 <div class="doc-section">
175
176 <p>AcquireExceptionInfo() allocates the ExceptionInfo structure.</p></ol>
177
178 <p>The format of the AcquireExceptionInfo method is:</p>
179
180 <pre class="code">
181   ExceptionInfo *AcquireExceptionInfo(void)
182 </pre>
183
184  </div>
185 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
186 _8c.html" target="source" name="ClearMagickException">ClearMagickException</a></h2>
187 <div class="doc-section">
188
189 <p>ClearMagickException() clears any exception that may not have been caught yet.</p></ol>
190
191 <p>The format of the ClearMagickException method is:</p>
192
193 <pre class="code">
194   ClearMagickException(ExceptionInfo *exception)
195 </pre>
196
197 <p>A description of each parameter follows:</p></ol>
198
199 <h5>exception</h5>
200 <ol><p>the exception info.</p></ol>
201
202  </div>
203 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
204 _8c.html" target="source" name="CatchException">CatchException</a></h2>
205 <div class="doc-section">
206
207 <p>CatchException() returns if no exceptions is found otherwise it reports the exception as a warning, error, or fatal depending on the severity.</p></ol>
208
209 <p>The format of the CatchException method is:</p>
210
211 <pre class="code">
212   CatchException(ExceptionInfo *exception)
213 </pre>
214
215 <p>A description of each parameter follows:</p></ol>
216
217 <h5>exception</h5>
218 <ol><p>the exception info.</p></ol>
219
220  </div>
221 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
222 _8c.html" target="source" name="DestroyExceptionInfo">DestroyExceptionInfo</a></h2>
223 <div class="doc-section">
224
225 <p>DestroyExceptionInfo() deallocates memory associated with an exception.</p></ol>
226
227 <p>The format of the DestroyExceptionInfo method is:</p>
228
229 <pre class="code">
230   ExceptionInfo *DestroyExceptionInfo(ExceptionInfo *exception)
231 </pre>
232
233 <p>A description of each parameter follows:</p></ol>
234
235 <h5>exception</h5>
236 <ol><p>the exception info.</p></ol>
237
238  </div>
239 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
240 _8c.html" target="source" name="GetExceptionInfo">GetExceptionInfo</a></h2>
241 <div class="doc-section">
242
243 <p>GetExceptionInfo() initializes an exception to default values.</p></ol>
244
245 <p>The format of the GetExceptionInfo method is:</p>
246
247 <pre class="code">
248   GetExceptionInfo(ExceptionInfo *exception)
249 </pre>
250
251 <p>A description of each parameter follows:</p></ol>
252
253 <h5>exception</h5>
254 <ol><p>the exception info.</p></ol>
255
256  </div>
257 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
258 _8c.html" target="source" name="GetExceptionMessage">GetExceptionMessage</a></h2>
259 <div class="doc-section">
260
261 <p>GetExceptionMessage() returns the error message defined by the specified error code.</p></ol>
262
263 <p>The format of the GetExceptionMessage method is:</p>
264
265 <pre class="code">
266   char *GetExceptionMessage(const int error)
267 </pre>
268
269 <p>A description of each parameter follows:</p></ol>
270
271 <h5>error</h5>
272 <ol><p>the error code.</p></ol>
273
274  </div>
275 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
276 _8c.html" target="source" name="GetLocaleExceptionMessage">GetLocaleExceptionMessage</a></h2>
277 <div class="doc-section">
278
279 <p>GetLocaleExceptionMessage() converts a enumerated exception severity and tag to a message in the current locale.</p></ol>
280
281 <p>The format of the GetLocaleExceptionMessage method is:</p>
282
283 <pre class="code">
284   const char *GetLocaleExceptionMessage(const ExceptionType severity,
285     const char *tag)
286 </pre>
287
288 <p>A description of each parameter follows:</p></ol>
289
290 <h5>severity</h5>
291 <ol><p>the severity of the exception.</p></ol>
292
293 <h5>tag</h5>
294 <ol><p>the message tag.</p></ol>
295
296  </div>
297 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
298 _8c.html" target="source" name="InheritException">InheritException</a></h2>
299 <div class="doc-section">
300
301 <p>InheritException() inherits an exception from a related exception.</p></ol>
302
303 <p>The format of the InheritException method is:</p>
304
305 <pre class="code">
306   InheritException(ExceptionInfo *exception,const ExceptionInfo *relative)
307 </pre>
308
309 <p>A description of each parameter follows:</p></ol>
310
311 <h5>exception</h5>
312 <ol><p>the exception info.</p></ol>
313
314 <h5>relative</h5>
315 <ol><p>the related exception info.</p></ol>
316
317  </div>
318 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
319 _8c.html" target="source" name="MagickError">MagickError</a></h2>
320 <div class="doc-section">
321
322 <p>MagickError() calls the exception handler methods with an error reason.</p></ol>
323
324 <p>The format of the MagickError method is:</p>
325
326 <pre class="code">
327   void MagickError(const ExceptionType error,const char *reason,
328     const char *description)
329 </pre>
330
331 <p>A description of each parameter follows:</p></ol>
332
333 <h5>exception</h5>
334 <ol><p>Specifies the numeric error category.</p></ol>
335
336 <h5>reason</h5>
337 <ol><p>Specifies the reason to display before terminating the program.</p></ol>
338
339 <h5>description</h5>
340 <ol><p>Specifies any description to the reason.</p></ol>
341
342  </div>
343 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
344 _8c.html" target="source" name="MagickFatalError">MagickFatalError</a></h2>
345 <div class="doc-section">
346
347 <p>MagickFatalError() calls the fatal exception handler methods with an error reason.</p></ol>
348
349 <p>The format of the MagickError method is:</p>
350
351 <pre class="code">
352   void MagickFatalError(const ExceptionType error,const char *reason,
353     const char *description)
354 </pre>
355
356 <p>A description of each parameter follows:</p></ol>
357
358 <h5>exception</h5>
359 <ol><p>Specifies the numeric error category.</p></ol>
360
361 <h5>reason</h5>
362 <ol><p>Specifies the reason to display before terminating the program.</p></ol>
363
364 <h5>description</h5>
365 <ol><p>Specifies any description to the reason.</p></ol>
366
367  </div>
368 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
369 _8c.html" target="source" name="MagickWarning">MagickWarning</a></h2>
370 <div class="doc-section">
371
372 <p>MagickWarning() calls the warning handler methods with a warning reason.</p></ol>
373
374 <p>The format of the MagickWarning method is:</p>
375
376 <pre class="code">
377   void MagickWarning(const ExceptionType warning,const char *reason,
378     const char *description)
379 </pre>
380
381 <p>A description of each parameter follows:</p></ol>
382
383 <h5>warning</h5>
384 <ol><p>the warning severity.</p></ol>
385
386 <h5>reason</h5>
387 <ol><p>Define the reason for the warning.</p></ol>
388
389 <h5>description</h5>
390 <ol><p>Describe the warning.</p></ol>
391
392  </div>
393 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
394 _8c.html" target="source" name="SetErrorHandler">SetErrorHandler</a></h2>
395 <div class="doc-section">
396
397 <p>SetErrorHandler() sets the exception handler to the specified method and returns the previous exception handler.</p></ol>
398
399 <p>The format of the SetErrorHandler method is:</p>
400
401 <pre class="code">
402   ErrorHandler SetErrorHandler(ErrorHandler handler)
403 </pre>
404
405 <p>A description of each parameter follows:</p></ol>
406
407 <h5>handler</h5>
408 <ol><p>the method to handle errors.</p></ol>
409
410  </div>
411 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
412 _8c.html" target="source" name="SetFatalErrorHandler">SetFatalErrorHandler</a></h2>
413 <div class="doc-section">
414
415 <p>SetFatalErrorHandler() sets the fatal exception handler to the specified method and returns the previous fatal exception handler.</p></ol>
416
417 <p>The format of the SetErrorHandler method is:</p>
418
419 <pre class="code">
420   ErrorHandler SetErrorHandler(ErrorHandler handler)
421 </pre>
422
423 <p>A description of each parameter follows:</p></ol>
424
425 <h5>handler</h5>
426 <ol><p>the method to handle errors.</p></ol>
427
428  </div>
429 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
430 _8c.html" target="source" name="SetWarningHandler">SetWarningHandler</a></h2>
431 <div class="doc-section">
432
433 <p>SetWarningHandler() sets the warning handler to the specified method and returns the previous warning handler.</p></ol>
434
435 <p>The format of the SetWarningHandler method is:</p>
436
437 <pre class="code">
438   ErrorHandler SetWarningHandler(ErrorHandler handler)
439 </pre>
440
441 <p>A description of each parameter follows:</p></ol>
442
443 <h5>handler</h5>
444 <ol><p>the method to handle warnings.</p></ol>
445
446  </div>
447 <h2><a href="http://www.imagemagick.org/api/MagickCore/exception
448 _8c.html" target="source" name="ThrowException">ThrowException</a></h2>
449 <div class="doc-section">
450
451 <p>ThrowException() throws an exception with the specified severity code, reason, and optional description.</p></ol>
452
453 <p>The format of the ThrowException method is:</p>
454
455 <pre class="code">
456   MagickBooleanType ThrowException(ExceptionInfo *exception,
457     const ExceptionType severity,const char *reason,
458     const char *description)
459 </pre>
460
461 <p>A description of each parameter follows:</p></ol>
462
463 <h5>exception</h5>
464 <ol><p>the exception info.</p></ol>
465
466 <h5>severity</h5>
467 <ol><p>the severity of the exception.</p></ol>
468
469 <h5>reason</h5>
470 <ol><p>the reason for the exception.</p></ol>
471
472 <h5>description</h5>
473 <ol><p>the exception description.</p></ol>
474
475  </div>
476 \r
477 </div>\r
478 \r
479 <div id="linkbar">\r
480     <span id="linkbar-west">&nbsp;</span>\r
481     <span id="linkbar-center">\r
482       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
483       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
484     </span>\r
485     <span id="linkbar-east">&nbsp;</span>\r
486   </div>\r
487   <div class="footer">\r
488     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
489     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
490   </div>\r
491   <div style="clear: both; margin: 0; width: 100%; "></div>\r
492   <script type="text/javascript">\r
493     var _gaq = _gaq || [];\r
494     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
495     _gaq.push(['_trackPageview']);\r
496 \r
497     (function() {\r
498       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
499       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
500       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
501     })();\r
502   </script>\r
503 </body>\r
504 </html>\r