• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2
3
4
5<!DOCTYPE html>
6<html lang="en">
7<head>
8    <title>ImageMagick: MagickCore, C API for ImageMagick: Loadable Modules</title>
9  <meta charset="utf-8" />
10  <meta http-equiv="X-UA-Compatible" content="IE=edge" />
11  <meta name="viewport" content="width=device-width, initial-scale=1" />
12  <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
13  <meta name="application-name" content="ImageMagick"/>
14  <meta name="description" content="ImageMagick® is a software suite to create, edit, compose, or convert bitmap images. It can read and write images in a variety of formats (over 200) including PNG, JPEG, JPEG-2000, GIF, WebP, Postscript, PDF, and SVG. Use ImageMagick to resize, flip, mirror, rotate, distort, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves."/>
15  <meta name="application-url" content="http://www.imagemagick.org"/>
16  <meta name="generator" content="PHP"/>
17  <meta name="keywords" content="magickcore, c, api, for, imagemagick:, loadable, modules, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert"/>
18  <meta name="rating" content="GENERAL"/>
19  <meta name="robots" content="INDEX, FOLLOW"/>
20  <meta name="generator" content="ImageMagick Studio LLC"/>
21  <meta name="author" content="ImageMagick Studio LLC"/>
22  <meta name="revisit-after" content="2 DAYS"/>
23  <meta name="resource-type" content="document"/>
24  <meta name="copyright" content="Copyright (c) 1999-2016 ImageMagick Studio LLC"/>
25  <meta name="distribution" content="Global"/>
26  <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1"/>
27  <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" />
28  <link rel="icon" href="../images/wand.png"/>
29  <link rel="shortcut icon" href="../images/wand.ico"/>
30  <link rel="stylesheet" type="text/css" href="http://fonts.googleapis.com/css?family=Roboto:900,400,400italic,700,700italic,300,300italic|Open+Sans:300italic,400italic,700italic,300,400,600,700">
31  <link rel="stylesheet" href="../css/magick.html"/>
32</head>
33<body>
34<div class="main">
35<div class="magick-masthead">
36  <div class="container">
37    <script async="async" src="http://localhost/pagead/js/adsbygoogle.js"></script>    <ins class="adsbygoogle"
38         style="display:block"
39         data-ad-client="ca-pub-3129977114552745"
40         data-ad-slot="6345125851"
41         data-ad-format="auto"></ins>
42    <script>
43      (adsbygoogle = window.adsbygoogle || []).push({});
44    </script>
45    <nav class="magick-nav">
46      <a class="magick-nav-item " href="../index.html">Home</a>
47      <a class="magick-nav-item " href="../binary-releases.html">Download</a>
48      <a class="magick-nav-item " href="../command-line-tools.html">Tools</a>
49      <a class="magick-nav-item " href="../command-line-processing.html">Command-line</a>
50      <a class="magick-nav-item " href="../resources.html">Resources</a>
51      <a class="magick-nav-item " href="api.html">Develop</a>
52      <a class="magick-nav-item " href="http://www.imagemagick.org/script/search.php">Search</a>
53      <a class="magick-nav-item pull-right" href="https://www.imagemagick.org/discourse-server/">Community</a>
54    </nav>
55  </div>
56</div>
57<div class="container">
58<div class="magick-header">
59<p class="text-center"><a href="module.html#AcquireModuleInfo">AcquireModuleInfo</a> &#8226; <a href="module.html#DestroyModuleList">DestroyModuleList</a> &#8226; <a href="module.html#GetModuleInfo">GetModuleInfo</a> &#8226; <a href="module.html#GetModuleInfoList">GetModuleInfoList</a> &#8226; <a href="module.html#GetModuleList">GetModuleList</a> &#8226; <a href="module.html#GetMagickModulePath">GetMagickModulePath</a> &#8226; <a href="module.html#IsModuleTreeInstantiated">IsModuleTreeInstantiated</a> &#8226; <a href="module.html#InvokeDynamicImageFilter">InvokeDynamicImageFilter</a> &#8226; <a href="module.html#ListModuleInfo">ListModuleInfo</a> &#8226; <a href="module.html#OpenModule">OpenModule</a> &#8226; <a href="module.html#OpenModules">OpenModules</a> &#8226; <a href="module.html#RegisterModule">RegisterModule</a> &#8226; <a href="module.html#TagToCoderModuleName">TagToCoderModuleName</a> &#8226; <a href="module.html#TagToFilterModuleName">TagToFilterModuleName</a> &#8226; <a href="module.html#TagToModuleName">TagToModuleName</a> &#8226; <a href="module.html#UnregisterModule">UnregisterModule</a></p>
60
61<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="AcquireModuleInfo">AcquireModuleInfo</a></h2>
62
63<p>AcquireModuleInfo() allocates the ModuleInfo structure.</p>
64
65<p>The format of the AcquireModuleInfo method is:</p>
66
67<pre class="text">
68ModuleInfo *AcquireModuleInfo(const char *path,const char *tag)
69</pre>
70
71<p>A description of each parameter follows:</p>
72
73<dd>
74</dd>
75
76<dd> </dd>
77<dl class="dl-horizontal">
78<dt>path</dt>
79<dd>the path associated with the tag. </dd>
80
81<dd> </dd>
82<dt>tag</dt>
83<dd>a character string that represents the image format we are looking for. </dd>
84
85<dd>  </dd>
86</dl>
87<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="DestroyModuleList">DestroyModuleList</a></h2>
88
89<p>DestroyModuleList() unregisters any previously loaded modules and exits the module loaded environment.</p>
90
91<p>The format of the DestroyModuleList module is:</p>
92
93<pre class="text">
94void DestroyModuleList(void)
95</pre>
96
97<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="GetModuleInfo">GetModuleInfo</a></h2>
98
99<p>GetModuleInfo() returns a pointer to a ModuleInfo structure that matches the specified tag.  If tag is NULL, the head of the module list is returned. If no modules are loaded, or the requested module is not found, NULL is returned.</p>
100
101<p>The format of the GetModuleInfo module is:</p>
102
103<pre class="text">
104ModuleInfo *GetModuleInfo(const char *tag,ExceptionInfo *exception)
105</pre>
106
107<p>A description of each parameter follows:</p>
108
109<dd>
110</dd>
111
112<dd> </dd>
113<dl class="dl-horizontal">
114<dt>tag</dt>
115<dd>a character string that represents the image format we are looking for. </dd>
116
117<dd> </dd>
118<dt>exception</dt>
119<dd>return any errors or warnings in this structure. </dd>
120
121<dd>  </dd>
122</dl>
123<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="GetModuleInfoList">GetModuleInfoList</a></h2>
124
125<p>GetModuleInfoList() returns any modules that match the specified pattern.</p>
126
127<p>The format of the GetModuleInfoList function is:</p>
128
129<pre class="text">
130const ModuleInfo **GetModuleInfoList(const char *pattern,
131  size_t *number_modules,ExceptionInfo *exception)
132</pre>
133
134<p>A description of each parameter follows:</p>
135
136<dd>
137</dd>
138
139<dd> </dd>
140<dl class="dl-horizontal">
141<dt>pattern</dt>
142<dd>Specifies a pointer to a text string containing a pattern. </dd>
143
144<dd> </dd>
145<dt>number_modules</dt>
146<dd> This integer returns the number of modules in the list. </dd>
147
148<dd> </dd>
149<dt>exception</dt>
150<dd>return any errors or warnings in this structure. </dd>
151
152<dd>  </dd>
153</dl>
154<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="GetModuleList">GetModuleList</a></h2>
155
156<p>GetModuleList() returns any image format modules that match the specified pattern.</p>
157
158<p>The format of the GetModuleList function is:</p>
159
160<pre class="text">
161char **GetModuleList(const char *pattern,const MagickModuleType type,
162  size_t *number_modules,ExceptionInfo *exception)
163</pre>
164
165<p>A description of each parameter follows:</p>
166
167<dd>
168</dd>
169
170<dd> </dd>
171<dl class="dl-horizontal">
172<dt>pattern</dt>
173<dd>Specifies a pointer to a text string containing a pattern. </dd>
174
175<dd> </dd>
176<dt>type</dt>
177<dd>choose from MagickImageCoderModule or MagickImageFilterModule. </dd>
178
179<dd> </dd>
180<dt>number_modules</dt>
181<dd> This integer returns the number of modules in the list. </dd>
182
183<dd> </dd>
184<dt>exception</dt>
185<dd>return any errors or warnings in this structure. </dd>
186
187<dd>  </dd>
188</dl>
189<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="GetMagickModulePath">GetMagickModulePath</a></h2>
190
191<p>GetMagickModulePath() finds a module with the specified module type and filename.</p>
192
193<p>The format of the GetMagickModulePath module is:</p>
194
195<pre class="text">
196MagickBooleanType GetMagickModulePath(const char *filename,
197  MagickModuleType module_type,char *path,ExceptionInfo *exception)
198</pre>
199
200<p>A description of each parameter follows:</p>
201
202<dd>
203</dd>
204
205<dd> </dd>
206<dl class="dl-horizontal">
207<dt>filename</dt>
208<dd>the module file name. </dd>
209
210<dd> </dd>
211<dt>module_type</dt>
212<dd>the module type: MagickImageCoderModule or MagickImageFilterModule. </dd>
213
214<dd> </dd>
215<dt>path</dt>
216<dd>the path associated with the filename. </dd>
217
218<dd> </dd>
219<dt>exception</dt>
220<dd>return any errors or warnings in this structure. </dd>
221
222<dd>  </dd>
223</dl>
224<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="IsModuleTreeInstantiated">IsModuleTreeInstantiated</a></h2>
225
226<p>IsModuleTreeInstantiated() determines if the module tree is instantiated. If not, it instantiates the tree and returns it.</p>
227
228<p>The format of the IsModuleTreeInstantiated() method is:</p>
229
230<pre class="text">
231IsModuleTreeInstantiated()
232</pre>
233
234<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="InvokeDynamicImageFilter">InvokeDynamicImageFilter</a></h2>
235
236<p>InvokeDynamicImageFilter() invokes a dynamic image filter.</p>
237
238<p>The format of the InvokeDynamicImageFilter module is:</p>
239
240<pre class="text">
241MagickBooleanType InvokeDynamicImageFilter(const char *tag,Image **image,
242  const int argc,const char **argv,ExceptionInfo *exception)
243</pre>
244
245<p>A description of each parameter follows:</p>
246
247<dd>
248</dd>
249
250<dd> </dd>
251<dl class="dl-horizontal">
252<dt>tag</dt>
253<dd>a character string that represents the name of the particular module. </dd>
254
255<dd> </dd>
256<dt>image</dt>
257<dd>the image. </dd>
258
259<dd> </dd>
260<dt>argc</dt>
261<dd>a pointer to an integer describing the number of elements in the argument vector. </dd>
262
263<dd> </dd>
264<dt>argv</dt>
265<dd>a pointer to a text array containing the command line arguments. </dd>
266
267<dd> </dd>
268<dt>exception</dt>
269<dd>return any errors or warnings in this structure. </dd>
270
271<dd>  </dd>
272</dl>
273<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="ListModuleInfo">ListModuleInfo</a></h2>
274
275<p>ListModuleInfo() lists the module info to a file.</p>
276
277<p>The format of the ListModuleInfo module is:</p>
278
279<pre class="text">
280MagickBooleanType ListModuleInfo(FILE *file,ExceptionInfo *exception)
281</pre>
282
283<p>A description of each parameter follows.</p>
284
285<dt>file</dt>
286<p>An pointer to a FILE.</p>
287
288<dt>exception</dt>
289<p>return any errors or warnings in this structure.</p>
290
291<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="OpenModule">OpenModule</a></h2>
292
293<p>OpenModule() loads a module, and invokes its registration module.  It returns MagickTrue on success, and MagickFalse if there is an error.</p>
294
295<p>The format of the OpenModule module is:</p>
296
297<pre class="text">
298MagickBooleanType OpenModule(const char *module,ExceptionInfo *exception)
299</pre>
300
301<p>A description of each parameter follows:</p>
302
303<dd>
304</dd>
305
306<dd> </dd>
307<dl class="dl-horizontal">
308<dt>module</dt>
309<dd>a character string that indicates the module to load. </dd>
310
311<dd> </dd>
312<dt>exception</dt>
313<dd>return any errors or warnings in this structure. </dd>
314
315<dd>  </dd>
316</dl>
317<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="OpenModules">OpenModules</a></h2>
318
319<p>OpenModules() loads all available modules.</p>
320
321<p>The format of the OpenModules module is:</p>
322
323<pre class="text">
324MagickBooleanType OpenModules(ExceptionInfo *exception)
325</pre>
326
327<p>A description of each parameter follows:</p>
328
329<dd>
330</dd>
331
332<dd> </dd>
333<dl class="dl-horizontal">
334<dt>exception</dt>
335<dd>return any errors or warnings in this structure. </dd>
336
337<dd>  </dd>
338</dl>
339<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="RegisterModule">RegisterModule</a></h2>
340
341<p>RegisterModule() adds an entry to the module list.  It returns a pointer to the registered entry on success.</p>
342
343<p>The format of the RegisterModule module is:</p>
344
345<pre class="text">
346ModuleInfo *RegisterModule(const ModuleInfo *module_info,
347  ExceptionInfo *exception)
348</pre>
349
350<p>A description of each parameter follows:</p>
351
352<dd>
353</dd>
354
355<dd> </dd>
356<dl class="dl-horizontal">
357<dt>info</dt>
358<dd>a pointer to the registered entry is returned. </dd>
359
360<dd> </dd>
361<dt>module_info</dt>
362<dd>a pointer to the ModuleInfo structure to register. </dd>
363
364<dd> </dd>
365<dt>exception</dt>
366<dd>return any errors or warnings in this structure. </dd>
367
368<dd>  </dd>
369</dl>
370<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="TagToCoderModuleName">TagToCoderModuleName</a></h2>
371
372<p>TagToCoderModuleName() munges a module tag and obtains the filename of the corresponding module.</p>
373
374<p>The format of the TagToCoderModuleName module is:</p>
375
376<pre class="text">
377char *TagToCoderModuleName(const char *tag,char *name)
378</pre>
379
380<p>A description of each parameter follows:</p>
381
382<dd>
383</dd>
384
385<dd> </dd>
386<dl class="dl-horizontal">
387<dt>tag</dt>
388<dd>a character string representing the module tag. </dd>
389
390<dd> </dd>
391<dt>name</dt>
392<dd>return the module name here. </dd>
393
394<dd>  </dd>
395</dl>
396<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="TagToFilterModuleName">TagToFilterModuleName</a></h2>
397
398<p>TagToFilterModuleName() munges a module tag and returns the filename of the corresponding filter module.</p>
399
400<p>The format of the TagToFilterModuleName module is:</p>
401
402<pre class="text">
403void TagToFilterModuleName(const char *tag,char name)
404</pre>
405
406<p>A description of each parameter follows:</p>
407
408<dd>
409</dd>
410
411<dd> </dd>
412<dl class="dl-horizontal">
413<dt>tag</dt>
414<dd>a character string representing the module tag. </dd>
415
416<dd> </dd>
417<dt>name</dt>
418<dd>return the filter name here. </dd>
419
420<dd>  </dd>
421</dl>
422<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="TagToModuleName">TagToModuleName</a></h2>
423
424<p>TagToModuleName() munges the module tag name and returns an upper-case tag name as the input string, and a user-provided format.</p>
425
426<p>The format of the TagToModuleName module is:</p>
427
428<pre class="text">
429TagToModuleName(const char *tag,const char *format,char *module)
430</pre>
431
432<p>A description of each parameter follows:</p>
433
434<dd>
435</dd>
436
437<dd> </dd>
438<dl class="dl-horizontal">
439<dt>tag</dt>
440<dd>the module tag. </dd>
441
442<dd> </dd>
443<dt>format</dt>
444<dd>a sprintf-compatible format string containing s where the upper-case tag name is to be inserted. </dd>
445
446<dd> </dd>
447<dt>module</dt>
448<dd>pointer to a destination buffer for the formatted result. </dd>
449
450<dd>  </dd>
451</dl>
452<h2><a href="http://www.imagemagick.org/api/MagickCore/module_8c.html" id="UnregisterModule">UnregisterModule</a></h2>
453
454<p>UnregisterModule() unloads a module, and invokes its de-registration module. Returns MagickTrue on success, and MagickFalse if there is an error.</p>
455
456<p>The format of the UnregisterModule module is:</p>
457
458<pre class="text">
459MagickBooleanType UnregisterModule(const ModuleInfo *module_info,
460  ExceptionInfo *exception)
461</pre>
462
463<p>A description of each parameter follows:</p>
464
465<dd>
466</dd>
467
468<dd> </dd>
469<dl class="dl-horizontal">
470<dt>module_info</dt>
471<dd>the module info. </dd>
472
473<dd> </dd>
474<dt>exception</dt>
475<dd>return any errors or warnings in this structure. </dd>
476
477<dd>  </dd>
478</dl>
479</div>
480  <footer class="magick-footer">
481    <p><a href="../support.html">Donate</a> •
482     <a href="../sitemap.html">Sitemap</a> •
483    <a href="../links.html">Related</a> •
484    <a href="../architecture.html">Architecture</a>
485</p>
486    <p><a href="module.html#">Back to top</a> •
487    <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a> •
488    <a href="http://www.imagemagick.org/script/contact.php">Contact Us</a></p>
489        <p><small>©  1999-2016 ImageMagick Studio LLC</small></p>
490  </footer>
491</div><!-- /.container -->
492
493  <script src="https://localhost/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
494  <script src="../js/magick.html"></script>
495</div>
496</body>
497</html>
498