]> granicus.if.org Git - imagemagick/blob - www/api/module.html
(no commit message)
[imagemagick] / www / api / module.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   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />\r
8   <style type="text/css" media="screen,projection"><!--\r
9     @import url("../../www/magick.css");\r
10   --></style>\r
11   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/vnd.microsoft.icon"/>
12   <title>ImageMagick: MagickCore, C API for ImageMagick: Loadable Modules</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:, loadable, modules, 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"/>
25   <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
26   <meta name="Distribution" content="Global"/>
27 </head>\r
28 \r
29 <body id="www-imagemagick-org">\r
30 <div class="titlebar">\r
31 <a href="../../index.html">\r
32   <img src="../../images/script.png" alt="[ImageMagick]"\r
33   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
34 <a href="http://www.networkredux.com">\r
35   <img src="../../images/networkredux.png" alt="[sponsor]"\r
36   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
37 <a href="http://www.imagemagick.org/discourse-server/">\r
38   <img src="../../images/logo.jpg" alt=""\r
39   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
40 <a href="../../index.html">\r
41   <img src="../../images/sprite.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 </div>\r
44 \r
45 <div class="eastbar">\r
46 \r
47 <div class="menu">
48   <a href="../../index.html">About ImageMagick</a>
49 </div>
50 <div class="sep"></div>\r
51 <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>
81 <div class="sep"></div>\r
82 <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>
106 <div class="sep"></div>\r
107 <div class="menu">
108   <a href="../../www/download.html">Download</a>
109 </div>
110 <div class="sep"></div>\r
111 <div class="menu">
112   <a href="../http://www.imagemagick.org/script/search.php">Search</a>
113 </div>
114 <div class="sep"></div>\r
115 <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>
121 <div class="sep"></div>\r
122 <div  class="menu">
123   <a href="../../www/sponsors.html">Sponsors:</a>
124
125 <div class="sponsbox">
126 <div  class="sponsor">
127    <a href="http://www.abi-stoff.de/abizeitung/" title="Abibuch">Abizeitung</a><!-- 20101101000200 -->
128 </div>
129 <div  class="sponsor">
130   <a href="http://www.deko.net">Deko.net</a><!-- 201101010600 Peterssen-->
131 </div>
132 <div  class="sponsor">
133   <a href="http://www.tomsgutscheine.de">Tom's Gutscheine</a><!-- 201005010360 invendio.de-->
134 </div>
135 <div  class="sponsor">
136   <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201007010120 Buchhorn -->
137 </div>
138 <div  class="sponsor">
139   <a href="http://www.blumenversender.com">Blumenversand</a><!-- 201005010120 -->
140 </div>
141 <div  class="sponsor">
142   <a href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
143 </div>
144 <div  class="sponsor">
145    <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
146 </div>
147 </div>
148 </div>
149 \r
150 \r
151 </div>\r
152 \r
153 <div class="main">\r
154 \r
155 <p class="navigation-index">[<a href="#AcquireModuleInfo">AcquireModuleInfo</a> &bull; <a href="#DestroyModuleList">DestroyModuleList</a> &bull; <a href="#GetModuleInfo">GetModuleInfo</a> &bull; <a href="#GetModuleInfoList">GetModuleInfoList</a> &bull; <a href="#GetModuleList">GetModuleList</a> &bull; <a href="#GetMagickModulePath">GetMagickModulePath</a> &bull; <a href="#InitializeModuleList">InitializeModuleList</a> &bull; <a href="#InvokeDynamicImageFilter">InvokeDynamicImageFilter</a> &bull; <a href="#ListModuleInfo">ListModuleInfo</a> &bull; <a href="#OpenModule">OpenModule</a> &bull; <a href="#OpenModules">OpenModules</a> &bull; <a href="#RegisterModule">RegisterModule</a> &bull; <a href="#TagToCoderModuleName">TagToCoderModuleName</a> &bull; <a href="#TagToFilterModuleName">TagToFilterModuleName</a> &bull; <a href="#TagToModuleName">TagToModuleName</a> &bull; <a href="#UnregisterModule">UnregisterModule</a>]</p>
156
157 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
158 _8c.html" target="source" name="AcquireModuleInfo">AcquireModuleInfo</a></h2>
159 <div class="doc-section">
160
161 <p>AcquireModuleInfo() allocates the ModuleInfo structure.</p></ol>
162
163 <p>The format of the AcquireModuleInfo method is:</p>
164
165 <pre class="code">
166   ModuleInfo *AcquireModuleInfo(const char *path,const char *tag)
167 </pre>
168
169 <p>A description of each parameter follows:</p></ol>
170
171 <h5>path</h5>
172 <ol><p>the path associated with the tag.</p></ol>
173
174 <h5>tag</h5>
175 <ol><p>a character string that represents the image format we are looking for.</p></ol>
176
177  </div>
178 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
179 _8c.html" target="source" name="DestroyModuleList">DestroyModuleList</a></h2>
180 <div class="doc-section">
181
182 <p>DestroyModuleList() unregisters any previously loaded modules and exits the module loaded environment.</p></ol>
183
184 <p>The format of the DestroyModuleList module is:</p>
185
186 <pre class="text">
187   void DestroyModuleList(void)
188 </pre>
189
190  </div>
191 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
192 _8c.html" target="source" name="GetModuleInfo">GetModuleInfo</a></h2>
193 <div class="doc-section">
194
195 <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></ol>
196
197 <p>The format of the GetModuleInfo module is:</p>
198
199 <pre class="text">
200   ModuleInfo *GetModuleInfo(const char *tag,ExceptionInfo *exception)
201 </pre>
202
203 <p>A description of each parameter follows:</p></ol>
204
205 <h5>tag</h5>
206 <ol><p>a character string that represents the image format we are looking for.</p></ol>
207
208 <h5>exception</h5>
209 <ol><p>return any errors or warnings in this structure.</p></ol>
210
211  </div>
212 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
213 _8c.html" target="source" name="GetModuleInfoList">GetModuleInfoList</a></h2>
214 <div class="doc-section">
215
216 <p>GetModuleInfoList() returns any modules that match the specified pattern.</p></ol>
217
218 <p>The format of the GetModuleInfoList function is:</p>
219
220 <pre class="text">
221   const ModuleInfo **GetModuleInfoList(const char *pattern,
222     unsigned long *number_modules,ExceptionInfo *exception)
223 </pre>
224
225 <p>A description of each parameter follows:</p></ol>
226
227 <h5>pattern</h5>
228 <ol><p>Specifies a pointer to a text string containing a pattern.</p></ol>
229
230 <h5>number_modules</h5>
231 <ol><p>This integer returns the number of modules in the list.</p></ol>
232
233 <h5>exception</h5>
234 <ol><p>return any errors or warnings in this structure.</p></ol>
235
236  </div>
237 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
238 _8c.html" target="source" name="GetModuleList">GetModuleList</a></h2>
239 <div class="doc-section">
240
241 <p>GetModuleList() returns any image format modules that match the specified pattern.</p></ol>
242
243 <p>The format of the GetModuleList function is:</p>
244
245 <pre class="text">
246   char **GetModuleList(const char *pattern,unsigned long *number_modules,
247     ExceptionInfo *exception)
248 </pre>
249
250 <p>A description of each parameter follows:</p></ol>
251
252 <h5>pattern</h5>
253 <ol><p>Specifies a pointer to a text string containing a pattern.</p></ol>
254
255 <h5>number_modules</h5>
256 <ol><p>This integer returns the number of modules in the list.</p></ol>
257
258 <h5>exception</h5>
259 <ol><p>return any errors or warnings in this structure.</p></ol>
260
261  </div>
262 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
263 _8c.html" target="source" name="GetMagickModulePath">GetMagickModulePath</a></h2>
264 <div class="doc-section">
265
266 <p>GetMagickModulePath() finds a module with the specified module type and filename.</p></ol>
267
268 <p>The format of the GetMagickModulePath module is:</p>
269
270 <pre class="text">
271   MagickBooleanType GetMagickModulePath(const char *filename,
272     MagickModuleType module_type,char *path,ExceptionInfo *exception)
273 </pre>
274
275 <p>A description of each parameter follows:</p></ol>
276
277 <h5>filename</h5>
278 <ol><p>the module file name.</p></ol>
279
280 <h5>module_type</h5>
281 <ol><p>the module type: MagickImageCoderModule or MagickImageFilterModule.</p></ol>
282
283 <h5>path</h5>
284 <ol><p>the path associated with the filename.</p></ol>
285
286 <h5>exception</h5>
287 <ol><p>return any errors or warnings in this structure.</p></ol>
288
289  </div>
290 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
291 _8c.html" target="source" name="InitializeModuleList">InitializeModuleList</a></h2>
292 <div class="doc-section">
293
294 <p>InitializeModuleList() initializes the module loader.</p></ol>
295
296 <p>The format of the InitializeModuleList() method is:</p>
297
298 <pre class="code">
299   InitializeModuleList(Exceptioninfo *exception)
300 </pre>
301
302 <p>A description of each parameter follows.</p></ol>
303
304 <h5>exception</h5>
305 <ol><p>return any errors or warnings in this structure.</p></ol>
306
307  </div>
308 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
309 _8c.html" target="source" name="InvokeDynamicImageFilter">InvokeDynamicImageFilter</a></h2>
310 <div class="doc-section">
311
312 <p>InvokeDynamicImageFilter() invokes a dynamic image filter.</p></ol>
313
314 <p>The format of the InvokeDynamicImageFilter module is:</p>
315
316 <pre class="text">
317   MagickBooleanType InvokeDynamicImageFilter(const char *tag,Image **image,
318     const int argc,const char **argv,ExceptionInfo *exception)
319 </pre>
320
321 <p>A description of each parameter follows:</p></ol>
322
323 <h5>tag</h5>
324 <ol><p>a character string that represents the name of the particular module.</p></ol>
325
326 <h5>image</h5>
327 <ol><p>the image.</p></ol>
328
329 <h5>argc</h5>
330 <ol><p>a pointer to an integer describing the number of elements in the argument vector.</p></ol>
331
332 <h5>argv</h5>
333 <ol><p>a pointer to a text array containing the command line arguments.</p></ol>
334
335 <h5>exception</h5>
336 <ol><p>return any errors or warnings in this structure.</p></ol>
337
338  </div>
339 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
340 _8c.html" target="source" name="ListModuleInfo">ListModuleInfo</a></h2>
341 <div class="doc-section">
342
343 <p>ListModuleInfo() lists the module info to a file.</p></ol>
344
345 <p>The format of the ListModuleInfo module is:</p>
346
347 <pre class="text">
348   MagickBooleanType ListModuleInfo(FILE *file,ExceptionInfo *exception)
349 </pre>
350
351 <p>A description of each parameter follows.</p></ol>
352
353 <h5>file</h5>
354 <ol><p>An pointer to a FILE.</p></ol>
355
356 <h5>exception</h5>
357 <ol><p>return any errors or warnings in this structure.</p></ol>
358
359  </div>
360 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
361 _8c.html" target="source" name="OpenModule">OpenModule</a></h2>
362 <div class="doc-section">
363
364 <p>OpenModule() loads a module, and invokes its registration module.  It returns MagickTrue on success, and MagickFalse if there is an error.</p></ol>
365
366 <p>The format of the OpenModule module is:</p>
367
368 <pre class="text">
369   MagickBooleanType OpenModule(const char *module,ExceptionInfo *exception)
370 </pre>
371
372 <p>A description of each parameter follows:</p></ol>
373
374 <h5>module</h5>
375 <ol><p>a character string that indicates the module to load.</p></ol>
376
377 <h5>exception</h5>
378 <ol><p>return any errors or warnings in this structure.</p></ol>
379
380  </div>
381 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
382 _8c.html" target="source" name="OpenModules">OpenModules</a></h2>
383 <div class="doc-section">
384
385 <p>OpenModules() loads all available modules.</p></ol>
386
387 <p>The format of the OpenModules module is:</p>
388
389 <pre class="text">
390   MagickBooleanType OpenModules(ExceptionInfo *exception)
391 </pre>
392
393 <p>A description of each parameter follows:</p></ol>
394
395 <h5>exception</h5>
396 <ol><p>return any errors or warnings in this structure.</p></ol>
397
398  </div>
399 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
400 _8c.html" target="source" name="RegisterModule">RegisterModule</a></h2>
401 <div class="doc-section">
402
403 <p>RegisterModule() adds an entry to the module list.  It returns a pointer to the registered entry on success.</p></ol>
404
405 <p>The format of the RegisterModule module is:</p>
406
407 <pre class="text">
408   ModuleInfo *RegisterModule(const ModuleInfo *module_info,
409     ExceptionInfo *exception)
410 </pre>
411
412 <p>A description of each parameter follows:</p></ol>
413
414 <h5>info</h5>
415 <ol><p>a pointer to the registered entry is returned.</p></ol>
416
417 <h5>module_info</h5>
418 <ol><p>a pointer to the ModuleInfo structure to register.</p></ol>
419
420 <h5>exception</h5>
421 <ol><p>return any errors or warnings in this structure.</p></ol>
422
423  </div>
424 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
425 _8c.html" target="source" name="TagToCoderModuleName">TagToCoderModuleName</a></h2>
426 <div class="doc-section">
427
428 <p>TagToCoderModuleName() munges a module tag and obtains the filename of the corresponding module.</p></ol>
429
430 <p>The format of the TagToCoderModuleName module is:</p>
431
432 <pre class="text">
433   char *TagToCoderModuleName(const char *tag,char *name)
434 </pre>
435
436 <p>A description of each parameter follows:</p></ol>
437
438 <h5>tag</h5>
439 <ol><p>a character string representing the module tag.</p></ol>
440
441 <h5>name</h5>
442 <ol><p>return the module name here.</p></ol>
443
444  </div>
445 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
446 _8c.html" target="source" name="TagToFilterModuleName">TagToFilterModuleName</a></h2>
447 <div class="doc-section">
448
449 <p>TagToFilterModuleName() munges a module tag and returns the filename of the corresponding filter module.</p></ol>
450
451 <p>The format of the TagToFilterModuleName module is:</p>
452
453 <pre class="text">
454   void TagToFilterModuleName(const char *tag,char name)
455 </pre>
456
457 <p>A description of each parameter follows:</p></ol>
458
459 <h5>tag</h5>
460 <ol><p>a character string representing the module tag.</p></ol>
461
462 <h5>name</h5>
463 <ol><p>return the filter name here.</p></ol>
464
465  </div>
466 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
467 _8c.html" target="source" name="TagToModuleName">TagToModuleName</a></h2>
468 <div class="doc-section">
469
470 <p>TagToModuleName() munges the module tag name and returns an upper-case tag name as the input string, and a user-provided format.</p></ol>
471
472 <p>The format of the TagToModuleName module is:</p>
473
474 <pre class="text">
475   TagToModuleName(const char *tag,const char *format,char *module)
476 </pre>
477
478 <p>A description of each parameter follows:</p></ol>
479
480 <h5>tag</h5>
481 <ol><p>the module tag.</p></ol>
482
483 <h5>format</h5>
484 <ol><p>a sprintf-compatible format string containing s where the upper-case tag name is to be inserted.</p></ol>
485
486 <h5>module</h5>
487 <ol><p>pointer to a destination buffer for the formatted result.</p></ol>
488
489  </div>
490 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
491 _8c.html" target="source" name="UnregisterModule">UnregisterModule</a></h2>
492 <div class="doc-section">
493
494 <p>UnregisterModule() unloads a module, and invokes its de-registration module. Returns MagickTrue on success, and MagickFalse if there is an error.</p></ol>
495
496 <p>The format of the UnregisterModule module is:</p>
497
498 <pre class="text">
499   MagickBooleanType UnregisterModule(const ModuleInfo *module_info,
500     ExceptionInfo *exception)
501 </pre>
502
503 <p>A description of each parameter follows:</p></ol>
504
505 <h5>module_info</h5>
506 <ol><p>the module info.</p></ol>
507
508 <h5>exception</h5>
509 <ol><p>return any errors or warnings in this structure.</p></ol>
510
511  </div>
512 \r
513 </div>\r
514 \r
515 <div id="linkbar">\r
516  <!--    <span id="linkbar-west">&nbsp;</span>  -->\r
517     <span id="linkbar-center">\r
518       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
519     <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
520     </span>\r
521     <span id="linkbar-east">&nbsp;</span>\r
522   </div>\r
523   <div class="footer">\r
524     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
525     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
526   </div>\r
527   <div style="clear: both; margin: 0; width: 100%; "></div>\r
528 </body>\r
529 </html>\r