blob: 275f8aba4bfbea4886426d222180546368b0b472 [file] [log] [blame]
cristyf3bb4782009-09-08 13:10:04 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4<head>
cristy1f9e1ed2009-11-18 04:09:38 +00005 <meta http-equiv="Content-Type" value="application/xhtml+xml" />
cristyf3bb4782009-09-08 13:10:04 +00006 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />
7 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />
8 <style type="text/css" media="screen,projection"><!--
9 @import url("../../www/magick.css");
10 --></style>
cristy3ed852e2009-09-05 21:47:34 +000011 <link rel="shortcut icon" href="../../images/wand.ico" type="images/vnd.microsoft.icon"/>
12 <title>ImageMagick: MagickCore, C API for ImageMagick: Dealing with Exceptions</title>
13 <meta http-equiv="Content-Language" content="en-US"/>
14 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15 <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16 <meta name="Generator" content="PHP"/>
17 <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"/>
18 <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."/>
19 <meta name="Rating" content="GENERAL"/>
20 <meta name="Robots" content="INDEX, FOLLOW"/>
21 <meta name="Generator" content="ImageMagick Studio LLC"/>
22 <meta name="Author" content="ImageMagick Studio LLC"/>
23 <meta name="Revisit-after" content="2 DAYS"/>
24 <meta name="Resource-type" content="document"/>
cristy16af1cb2009-12-11 21:38:29 +000025 <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000026 <meta name="Distribution" content="Global"/>
cristyf3bb4782009-09-08 13:10:04 +000027</head>
28
29<body id="www-imagemagick-org">
30<div class="titlebar">
31<a href="../../index.html">
32 <img src="../../images/script.png" alt="[ImageMagick]"
33 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
34<a href="http://www.networkredux.com">
35 <img src="../../images/networkredux.png" alt="[sponsor]"
36 style="margin: 45px auto; border: 0px; float: left;" /></a>
37<a href="http://www.imagemagick.org/discourse-server/">
38 <img src="../../images/logo.jpg" alt=""
39 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
40<a href="../../index.html">
41 <img src="../../images/sprite.jpg" alt=""
42 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
43</div>
44
45<div class="eastbar">
46
cristy3ed852e2009-09-05 21:47:34 +000047<div class="menu">
48 <a href="../../index.html">About ImageMagick</a>
49</div>
cristyf3bb4782009-09-08 13:10:04 +000050<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000051<div class="menu">
52 <a href="../../www/command-line-tools.html">Command-line Tools</a>
53</div>
54<div class="sub">
55 <a href="../../www/command-line-processing.html">Processing</a>
56</div>
57<div class="sub">
58 <a href="../../www/command-line-options.html">Options</a>
59</div>
60<div class="sub">
61 <a href="http://www.imagemagick.org/Usage/">Usage</a>
62</div>
63<div class="menu">
64 <a href="../../www/api.html">Program Interfaces</a>
65</div>
66<div class="sub">
67 <a href="../../www/magick-wand.html">MagickWand</a>
68</div>
69<div class="sub">
70 <a href="../../www/magick-core.html">MagickCore</a>
71</div>
72<div class="sub">
73 <a href="../../www/perl-magick.html">PerlMagick</a>
74</div>
75<div class="sub">
76 <a href="../../Magick++/">Magick++</a>
77</div>
78<div class="menu">
79 <a href="../../www/architecture.html">Architecture</a>
80</div>
cristyf3bb4782009-09-08 13:10:04 +000081<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000082<div class="menu">
83 <a href="../../www/install-source.html">Install from Source</a>
84</div>
85<div class="sub">
86 <a href="../../www/install-source.html#unix">Unix</a>
87</div>
88<div class="sub">
89 <a href="../../www/install-source.html#windows">Windows</a>
90 </div>
91<div class="menu">
92 <a href="../../www/binary-releases.html">Binary Releases</a>
93</div>
94<div class="sub">
95 <a href="../../www/binary-releases.html#unix">Unix</a>
96</div>
97<div class="sub">
98 <a href="../../www/binary-releases.html#macosx">Mac OS X</a>
99</div>
100<div class="sub">
101 <a href="../../www/binary-releases.html#windows">Windows</a>
102</div>
103<div class="menu">
104 <a href="../../www/resources.html">Resources</a>
105</div>
cristyf3bb4782009-09-08 13:10:04 +0000106<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000107<div class="menu">
108 <a href="../../www/download.html">Download</a>
109</div>
cristyf3bb4782009-09-08 13:10:04 +0000110<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000111<div class="menu">
112 <a href="../http://www.imagemagick.org/script/search.php">Search</a>
113</div>
cristyf3bb4782009-09-08 13:10:04 +0000114<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000115<div class="menu">
116 <a href="../../www/sitemap.html">Site Map</a>
117</div>
118<div class="sub">
119 <a href="../../www/links.html">Links</a>
120</div>
cristyf3bb4782009-09-08 13:10:04 +0000121<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000122<div class="menu">
123 <a href="../../www/sponsors.html">Sponsors:</a>
124
125<div class="sponsbox">
126<div class="sponsor">
cristy1f9e1ed2009-11-18 04:09:38 +0000127 <a href="http://www.tomsgutscheine.de">Tom's Gutscheine</a><!-- 201005010360 invendio.de-->
128</div>
129<div class="sponsor">
cristycdbe2742010-02-07 19:30:44 +0000130 <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201007010120 Buchhorn -->
cristy2744bd92009-11-08 22:57:52 +0000131</div>
132<div class="sponsor">
133 <a href="http://www.blumenversender.com">Blumenversand</a><!-- 201005010120 -->
cristyc1c61662009-09-30 14:04:37 +0000134</div>
135<div class="sponsor">
cristyb4c03bb2009-09-27 13:55:46 +0000136 <a href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
cristyec678732009-09-22 11:31:10 +0000137</div>
138<div class="sponsor">
cristy16ff93c2010-01-13 23:18:07 +0000139 <a href="http://www.goyax.de">Börse</a><!-- 201004010240 Gewiese digital-finance.de -->
cristyf3bb4782009-09-08 13:10:04 +0000140</div>
141<div class="sponsor">
cristy16ff93c2010-01-13 23:18:07 +0000142 <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
cristy3ed852e2009-09-05 21:47:34 +0000143</div>
cristy3ed852e2009-09-05 21:47:34 +0000144</div>
145</div>
cristyf3bb4782009-09-08 13:10:04 +0000146
147
148</div>
149
150<div class="main">
151
cristy3ed852e2009-09-05 21:47:34 +0000152<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>
153
154<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
155_8c.html" target="source" name="AcquireExceptionInfo">AcquireExceptionInfo</a></h2>
156<div class="doc-section">
157
158<p>AcquireExceptionInfo() allocates the ExceptionInfo structure.</p></ol>
159
160<p>The format of the AcquireExceptionInfo method is:</p>
161
162<pre class="code">
163 ExceptionInfo *AcquireExceptionInfo(void)
164</pre>
165
166 </div>
167<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
168_8c.html" target="source" name="ClearMagickException">ClearMagickException</a></h2>
169<div class="doc-section">
170
171<p>ClearMagickException() clears any exception that may not have been caught yet.</p></ol>
172
173<p>The format of the ClearMagickException method is:</p>
174
175<pre class="code">
176 ClearMagickException(ExceptionInfo *exception)
177</pre>
178
179<p>A description of each parameter follows:</p></ol>
180
181<h5>exception</h5>
182<ol><p>the exception info.</p></ol>
183
184 </div>
185<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
186_8c.html" target="source" name="CatchException">CatchException</a></h2>
187<div class="doc-section">
188
189<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>
190
191<p>The format of the CatchException method is:</p>
192
193<pre class="code">
194 CatchException(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="DestroyExceptionInfo">DestroyExceptionInfo</a></h2>
205<div class="doc-section">
206
207<p>DestroyExceptionInfo() deallocates memory associated with an exception.</p></ol>
208
209<p>The format of the DestroyExceptionInfo method is:</p>
210
211<pre class="code">
212 ExceptionInfo *DestroyExceptionInfo(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="GetExceptionInfo">GetExceptionInfo</a></h2>
223<div class="doc-section">
224
225<p>GetExceptionInfo() initializes an exception to default values.</p></ol>
226
227<p>The format of the GetExceptionInfo method is:</p>
228
229<pre class="code">
230 GetExceptionInfo(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="GetExceptionMessage">GetExceptionMessage</a></h2>
241<div class="doc-section">
242
243<p>GetExceptionMessage() returns the error message defined by the specified error code.</p></ol>
244
245<p>The format of the GetExceptionMessage method is:</p>
246
247<pre class="code">
248 char *GetExceptionMessage(const int error)
249</pre>
250
251<p>A description of each parameter follows:</p></ol>
252
253<h5>error</h5>
254<ol><p>the error code.</p></ol>
255
256 </div>
257<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
258_8c.html" target="source" name="GetLocaleExceptionMessage">GetLocaleExceptionMessage</a></h2>
259<div class="doc-section">
260
261<p>GetLocaleExceptionMessage() converts a enumerated exception severity and tag to a message in the current locale.</p></ol>
262
263<p>The format of the GetLocaleExceptionMessage method is:</p>
264
265<pre class="code">
266 const char *GetLocaleExceptionMessage(const ExceptionType severity,
267 const char *tag)
268</pre>
269
270<p>A description of each parameter follows:</p></ol>
271
272<h5>severity</h5>
273<ol><p>the severity of the exception.</p></ol>
274
275<h5>tag</h5>
276<ol><p>the message tag.</p></ol>
277
278 </div>
279<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
280_8c.html" target="source" name="InheritException">InheritException</a></h2>
281<div class="doc-section">
282
283<p>InheritException() inherits an exception from a related exception.</p></ol>
284
285<p>The format of the InheritException method is:</p>
286
287<pre class="code">
288 InheritException(ExceptionInfo *exception,const ExceptionInfo *relative)
289</pre>
290
291<p>A description of each parameter follows:</p></ol>
292
293<h5>exception</h5>
294<ol><p>the exception info.</p></ol>
295
296<h5>relative</h5>
297<ol><p>the related exception info.</p></ol>
298
299 </div>
300<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
301_8c.html" target="source" name="MagickError">MagickError</a></h2>
302<div class="doc-section">
303
304<p>MagickError() calls the exception handler methods with an error reason.</p></ol>
305
306<p>The format of the MagickError method is:</p>
307
308<pre class="code">
309 void MagickError(const ExceptionType error,const char *reason,
310 const char *description)
311</pre>
312
313<p>A description of each parameter follows:</p></ol>
314
315<h5>exception</h5>
316<ol><p>Specifies the numeric error category.</p></ol>
317
318<h5>reason</h5>
319<ol><p>Specifies the reason to display before terminating the program.</p></ol>
320
321<h5>description</h5>
322<ol><p>Specifies any description to the reason.</p></ol>
323
324 </div>
325<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
326_8c.html" target="source" name="MagickFatalError">MagickFatalError</a></h2>
327<div class="doc-section">
328
329<p>MagickFatalError() calls the fatal exception handler methods with an error reason.</p></ol>
330
331<p>The format of the MagickError method is:</p>
332
333<pre class="code">
334 void MagickFatalError(const ExceptionType error,const char *reason,
335 const char *description)
336</pre>
337
338<p>A description of each parameter follows:</p></ol>
339
340<h5>exception</h5>
341<ol><p>Specifies the numeric error category.</p></ol>
342
343<h5>reason</h5>
344<ol><p>Specifies the reason to display before terminating the program.</p></ol>
345
346<h5>description</h5>
347<ol><p>Specifies any description to the reason.</p></ol>
348
349 </div>
350<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
351_8c.html" target="source" name="MagickWarning">MagickWarning</a></h2>
352<div class="doc-section">
353
354<p>MagickWarning() calls the warning handler methods with a warning reason.</p></ol>
355
356<p>The format of the MagickWarning method is:</p>
357
358<pre class="code">
359 void MagickWarning(const ExceptionType warning,const char *reason,
360 const char *description)
361</pre>
362
363<p>A description of each parameter follows:</p></ol>
364
365<h5>warning</h5>
366<ol><p>the warning severity.</p></ol>
367
368<h5>reason</h5>
369<ol><p>Define the reason for the warning.</p></ol>
370
371<h5>description</h5>
372<ol><p>Describe the warning.</p></ol>
373
374 </div>
375<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
376_8c.html" target="source" name="SetErrorHandler">SetErrorHandler</a></h2>
377<div class="doc-section">
378
379<p>SetErrorHandler() sets the exception handler to the specified method and returns the previous exception handler.</p></ol>
380
381<p>The format of the SetErrorHandler method is:</p>
382
383<pre class="code">
384 ErrorHandler SetErrorHandler(ErrorHandler handler)
385</pre>
386
387<p>A description of each parameter follows:</p></ol>
388
389<h5>handler</h5>
390<ol><p>the method to handle errors.</p></ol>
391
392 </div>
393<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
394_8c.html" target="source" name="SetFatalErrorHandler">SetFatalErrorHandler</a></h2>
395<div class="doc-section">
396
397<p>SetFatalErrorHandler() sets the fatal exception handler to the specified method and returns the previous fatal 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="SetWarningHandler">SetWarningHandler</a></h2>
413<div class="doc-section">
414
415<p>SetWarningHandler() sets the warning handler to the specified method and returns the previous warning handler.</p></ol>
416
417<p>The format of the SetWarningHandler method is:</p>
418
419<pre class="code">
420 ErrorHandler SetWarningHandler(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 warnings.</p></ol>
427
428 </div>
429<h2><a href="http://www.imagemagick.org/api/MagickCore/exception
430_8c.html" target="source" name="ThrowException">ThrowException</a></h2>
431<div class="doc-section">
432
433<p>ThrowException() throws an exception with the specified severity code, reason, and optional description.</p></ol>
434
435<p>The format of the ThrowException method is:</p>
436
437<pre class="code">
438 MagickBooleanType ThrowException(ExceptionInfo *exception,
439 const ExceptionType severity,const char *reason,
440 const char *description)
441</pre>
442
443<p>A description of each parameter follows:</p></ol>
444
445<h5>exception</h5>
446<ol><p>the exception info.</p></ol>
447
448<h5>severity</h5>
449<ol><p>the severity of the exception.</p></ol>
450
451<h5>reason</h5>
452<ol><p>the reason for the exception.</p></ol>
453
454<h5>description</h5>
455<ol><p>the exception description.</p></ol>
456
457 </div>
cristyf3bb4782009-09-08 13:10:04 +0000458
459</div>
460
461<div id="linkbar">
462 <!-- <span id="linkbar-west">&nbsp;</span> -->
463 <span id="linkbar-center">
464 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristyb3ace7e2010-02-21 00:40:49 +0000465 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristyf3bb4782009-09-08 13:10:04 +0000466 </span>
467 <span id="linkbar-east">&nbsp;</span>
468 </div>
469 <div class="footer">
cristy16af1cb2009-12-11 21:38:29 +0000470 <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>
cristyf3bb4782009-09-08 13:10:04 +0000471 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
472 </div>
473 <div style="clear: both; margin: 0; width: 100%; "></div>
474</body>
475</html>