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