]> 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">\r
4 <head>\r
5   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />\r
6   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />\r
7   <style type="text/css" media="screen,projection"><!--\r
8     @import url("../../www/magick.css");\r
9   --></style>\r
10   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/vnd.microsoft.icon"/>
11   <title>ImageMagick: MagickCore, C API for ImageMagick: Loadable Modules</title>
12   <meta http-equiv="Content-Language" content="en-US"/>
13   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
14   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
15   <meta name="Generator" content="PHP"/>
16   <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"/>
17   <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."/>
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-2009 ImageMagick Studio LLC"/>
25   <meta name="Distribution" content="Global"/>
26 </head>\r
27 \r
28 <body id="www-imagemagick-org">\r
29 <div class="titlebar">\r
30 <a href="../../index.html">\r
31   <img src="../../images/script.png" alt="[ImageMagick]"\r
32   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
33 <a href="http://www.networkredux.com">\r
34   <img src="../../images/networkredux.png" alt="[sponsor]"\r
35   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
36 <a href="http://www.imagemagick.org/discourse-server/">\r
37   <img src="../../images/logo.jpg" alt=""\r
38   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
39 <a href="../../index.html">\r
40   <img src="../../images/sprite.jpg" alt=""\r
41   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
42 </div>\r
43 \r
44 <div class="eastbar">\r
45 \r
46 <div class="menu">
47   <a href="../../index.html">About ImageMagick</a>
48 </div>
49 <div class="sep"></div>\r
50 <div class="menu">
51   <a href="../../www/command-line-tools.html">Command-line Tools</a>
52 </div>
53 <div class="sub">
54     <a href="../../www/command-line-processing.html">Processing</a>
55 </div>
56 <div class="sub">
57     <a href="../../www/command-line-options.html">Options</a>
58 </div>
59 <div class="sub">
60     <a href="http://www.imagemagick.org/Usage/">Usage</a>
61 </div>
62 <div class="menu">
63   <a href="../../www/api.html">Program Interfaces</a>
64 </div>
65 <div class="sub">
66     <a href="../../www/magick-wand.html">MagickWand</a>
67 </div>
68 <div class="sub">
69     <a href="../../www/magick-core.html">MagickCore</a>
70 </div>
71 <div class="sub">
72     <a href="../../www/perl-magick.html">PerlMagick</a>
73 </div>
74 <div class="sub">
75     <a href="../../Magick++/">Magick++</a>
76 </div>
77 <div class="menu">
78   <a href="../../www/architecture.html">Architecture</a>
79 </div>
80 <div class="sep"></div>\r
81 <div  class="menu">
82    <a href="../../www/install-source.html">Install from Source</a>
83 </div>
84 <div class="sub">
85     <a href="../../www/install-source.html#unix">Unix</a>
86 </div>
87 <div class="sub">
88     <a href="../../www/install-source.html#windows">Windows</a>
89  </div>
90 <div class="menu">
91   <a href="../../www/binary-releases.html">Binary Releases</a>
92 </div>
93 <div class="sub">
94     <a href="../../www/binary-releases.html#unix">Unix</a>
95 </div>
96 <div class="sub">
97     <a href="../../www/binary-releases.html#macosx">Mac OS X</a>
98 </div>
99 <div class="sub">
100     <a href="../../www/binary-releases.html#windows">Windows</a>
101 </div>
102 <div class="menu">
103   <a href="../../www/resources.html">Resources</a>
104 </div>
105 <div class="sep"></div>\r
106 <div class="menu">
107   <a href="../../www/download.html">Download</a>
108 </div>
109 <div class="sep"></div>\r
110 <div class="menu">
111   <a href="../http://www.imagemagick.org/script/search.php">Search</a>
112 </div>
113 <div class="sep"></div>\r
114 <div class="menu">
115   <a href="../../www/sitemap.html">Site Map</a>
116 </div>
117 <div  class="sub">
118     <a href="../../www/links.html">Links</a>
119 </div>
120 <div class="sep"></div>\r
121 <div  class="menu">
122   <a href="../../www/sponsors.html">Sponsors:</a>
123
124 <div class="sponsbox">
125 <div  class="sponsor">
126    <a href="http://www.goyax.de">Börse</a><!-- 201001000240 Gewiese digital-finance.de -->
127 </div>
128 <div  class="sponsor">
129    <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012001200 allesdruck.de-->
130 </div>
131 <div  class="sponsor">
132   <a href="http://www.blumenversender.com">Blumenversand</a><!-- 200911010120 -->
133 </div>
134 <div  class="sponsor">
135   <a href="http://www.print24.de/">Druckerei</a><!-- 200911010480 -->
136 </div>
137 <div  class="sponsor">
138   <a href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 201002010000 -->
139 </div>
140 <div  class="sponsor">
141   <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201002010120 Buchhorn -->
142 </div>
143 </div>
144 </div>
145 \r
146 \r
147 </div>\r
148 \r
149 <div class="main">\r
150 \r
151 <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="#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>
152
153 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
154 _8c.html" target="source" name="AcquireModuleInfo">AcquireModuleInfo</a></h2>
155 <div class="doc-section">
156
157 <p>AcquireModuleInfo() allocates the ModuleInfo structure.</p></ol>
158
159 <p>The format of the AcquireModuleInfo method is:</p>
160
161 <pre class="code">
162   ModuleInfo *AcquireModuleInfo(const char *path,const char *tag)
163 </pre>
164
165 <p>A description of each parameter follows:</p></ol>
166
167 <h5>path</h5>
168 <ol><p>the path associated with the tag.</p></ol>
169
170 <h5>tag</h5>
171 <ol><p>a character string that represents the image format we are looking for.</p></ol>
172
173  </div>
174 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
175 _8c.html" target="source" name="DestroyModuleList">DestroyModuleList</a></h2>
176 <div class="doc-section">
177
178 <p>DestroyModuleList() unregisters any previously loaded modules and exits the module loaded environment.</p></ol>
179
180 <p>The format of the DestroyModuleList module is:</p>
181
182 <pre class="text">
183   void DestroyModuleList(void)
184 </pre>
185
186  </div>
187 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
188 _8c.html" target="source" name="GetModuleInfo">GetModuleInfo</a></h2>
189 <div class="doc-section">
190
191 <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>
192
193 <p>The format of the GetModuleInfo module is:</p>
194
195 <pre class="text">
196   ModuleInfo *GetModuleInfo(const char *tag,ExceptionInfo *exception)
197 </pre>
198
199 <p>A description of each parameter follows:</p></ol>
200
201 <h5>tag</h5>
202 <ol><p>a character string that represents the image format we are looking for.</p></ol>
203
204 <h5>exception</h5>
205 <ol><p>return any errors or warnings in this structure.</p></ol>
206
207  </div>
208 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
209 _8c.html" target="source" name="GetModuleInfoList">GetModuleInfoList</a></h2>
210 <div class="doc-section">
211
212 <p>GetModuleInfoList() returns any modules that match the specified pattern.</p></ol>
213
214 <p>The format of the GetModuleInfoList function is:</p>
215
216 <pre class="text">
217   const ModuleInfo **GetModuleInfoList(const char *pattern,
218     unsigned long *number_modules,ExceptionInfo *exception)
219 </pre>
220
221 <p>A description of each parameter follows:</p></ol>
222
223 <h5>pattern</h5>
224 <ol><p>Specifies a pointer to a text string containing a pattern.</p></ol>
225
226 <h5>number_modules</h5>
227 <ol><p>This integer returns the number of modules in the list.</p></ol>
228
229 <h5>exception</h5>
230 <ol><p>return any errors or warnings in this structure.</p></ol>
231
232  </div>
233 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
234 _8c.html" target="source" name="GetModuleList">GetModuleList</a></h2>
235 <div class="doc-section">
236
237 <p>GetModuleList() returns any image format modules that match the specified pattern.</p></ol>
238
239 <p>The format of the GetModuleList function is:</p>
240
241 <pre class="text">
242   char **GetModuleList(const char *pattern,unsigned long *number_modules,
243     ExceptionInfo *exception)
244 </pre>
245
246 <p>A description of each parameter follows:</p></ol>
247
248 <h5>pattern</h5>
249 <ol><p>Specifies a pointer to a text string containing a pattern.</p></ol>
250
251 <h5>number_modules</h5>
252 <ol><p>This integer returns the number of modules in the list.</p></ol>
253
254 <h5>exception</h5>
255 <ol><p>return any errors or warnings in this structure.</p></ol>
256
257  </div>
258 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
259 _8c.html" target="source" name="GetMagickModulePath">GetMagickModulePath</a></h2>
260 <div class="doc-section">
261
262 <p>GetMagickModulePath() finds a module with the specified module type and filename.</p></ol>
263
264 <p>The format of the GetMagickModulePath module is:</p>
265
266 <pre class="text">
267   MagickBooleanType GetMagickModulePath(const char *filename,
268     MagickModuleType module_type,char *path,ExceptionInfo *exception)
269 </pre>
270
271 <p>A description of each parameter follows:</p></ol>
272
273 <h5>filename</h5>
274 <ol><p>the module file name.</p></ol>
275
276 <h5>module_type</h5>
277 <ol><p>the module type: MagickImageCoderModule or MagickImageFilterModule.</p></ol>
278
279 <h5>path</h5>
280 <ol><p>the path associated with the filename.</p></ol>
281
282 <h5>exception</h5>
283 <ol><p>return any errors or warnings in this structure.</p></ol>
284
285  </div>
286 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
287 _8c.html" target="source" name="InvokeDynamicImageFilter">InvokeDynamicImageFilter</a></h2>
288 <div class="doc-section">
289
290 <p>InvokeDynamicImageFilter() invokes a dynamic image filter.</p></ol>
291
292 <p>The format of the InvokeDynamicImageFilter module is:</p>
293
294 <pre class="text">
295   MagickBooleanType InvokeDynamicImageFilter(const char *tag,Image **image,
296     const int argc,const char **argv,ExceptionInfo *exception)
297 </pre>
298
299 <p>A description of each parameter follows:</p></ol>
300
301 <h5>tag</h5>
302 <ol><p>a character string that represents the name of the particular module.</p></ol>
303
304 <h5>image</h5>
305 <ol><p>the image.</p></ol>
306
307 <h5>argc</h5>
308 <ol><p>a pointer to an integer describing the number of elements in the argument vector.</p></ol>
309
310 <h5>argv</h5>
311 <ol><p>a pointer to a text array containing the command line arguments.</p></ol>
312
313 <h5>exception</h5>
314 <ol><p>return any errors or warnings in this structure.</p></ol>
315
316  </div>
317 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
318 _8c.html" target="source" name="ListModuleInfo">ListModuleInfo</a></h2>
319 <div class="doc-section">
320
321 <p>ListModuleInfo() lists the module info to a file.</p></ol>
322
323 <p>The format of the ListModuleInfo module is:</p>
324
325 <pre class="text">
326   MagickBooleanType ListModuleInfo(FILE *file,ExceptionInfo *exception)
327 </pre>
328
329 <p>A description of each parameter follows.</p></ol>
330
331 <h5>file</h5>
332 <ol><p>An pointer to a FILE.</p></ol>
333
334 <h5>exception</h5>
335 <ol><p>return any errors or warnings in this structure.</p></ol>
336
337  </div>
338 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
339 _8c.html" target="source" name="OpenModule">OpenModule</a></h2>
340 <div class="doc-section">
341
342 <p>OpenModule() loads a module, and invokes its registration module.  It returns MagickTrue on success, and MagickFalse if there is an error.</p></ol>
343
344 <p>The format of the OpenModule module is:</p>
345
346 <pre class="text">
347   MagickBooleanType OpenModule(const char *module,ExceptionInfo *exception)
348 </pre>
349
350 <p>A description of each parameter follows:</p></ol>
351
352 <h5>module</h5>
353 <ol><p>a character string that indicates the module to load.</p></ol>
354
355 <h5>exception</h5>
356 <ol><p>return any errors or warnings in this structure.</p></ol>
357
358  </div>
359 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
360 _8c.html" target="source" name="OpenModules">OpenModules</a></h2>
361 <div class="doc-section">
362
363 <p>OpenModules() loads all available modules.</p></ol>
364
365 <p>The format of the OpenModules module is:</p>
366
367 <pre class="text">
368   MagickBooleanType OpenModules(ExceptionInfo *exception)
369 </pre>
370
371 <p>A description of each parameter follows:</p></ol>
372
373 <h5>exception</h5>
374 <ol><p>return any errors or warnings in this structure.</p></ol>
375
376  </div>
377 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
378 _8c.html" target="source" name="RegisterModule">RegisterModule</a></h2>
379 <div class="doc-section">
380
381 <p>RegisterModule() adds an entry to the module list.  It returns a pointer to the registered entry on success.</p></ol>
382
383 <p>The format of the RegisterModule module is:</p>
384
385 <pre class="text">
386   ModuleInfo *RegisterModule(const ModuleInfo *module_info,
387     ExceptionInfo *exception)
388 </pre>
389
390 <p>A description of each parameter follows:</p></ol>
391
392 <h5>info</h5>
393 <ol><p>a pointer to the registered entry is returned.</p></ol>
394
395 <h5>module_info</h5>
396 <ol><p>a pointer to the ModuleInfo structure to register.</p></ol>
397
398 <h5>exception</h5>
399 <ol><p>return any errors or warnings in this structure.</p></ol>
400
401  </div>
402 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
403 _8c.html" target="source" name="TagToCoderModuleName">TagToCoderModuleName</a></h2>
404 <div class="doc-section">
405
406 <p>TagToCoderModuleName() munges a module tag and obtains the filename of the corresponding module.</p></ol>
407
408 <p>The format of the TagToCoderModuleName module is:</p>
409
410 <pre class="text">
411   char *TagToCoderModuleName(const char *tag,char *name)
412 </pre>
413
414 <p>A description of each parameter follows:</p></ol>
415
416 <h5>tag</h5>
417 <ol><p>a character string representing the module tag.</p></ol>
418
419 <h5>name</h5>
420 <ol><p>return the module name here.</p></ol>
421
422  </div>
423 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
424 _8c.html" target="source" name="TagToFilterModuleName">TagToFilterModuleName</a></h2>
425 <div class="doc-section">
426
427 <p>TagToFilterModuleName() munges a module tag and returns the filename of the corresponding filter module.</p></ol>
428
429 <p>The format of the TagToFilterModuleName module is:</p>
430
431 <pre class="text">
432   void TagToFilterModuleName(const char *tag,char name)
433 </pre>
434
435 <p>A description of each parameter follows:</p></ol>
436
437 <h5>tag</h5>
438 <ol><p>a character string representing the module tag.</p></ol>
439
440 <h5>name</h5>
441 <ol><p>return the filter name here.</p></ol>
442
443  </div>
444 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
445 _8c.html" target="source" name="TagToModuleName">TagToModuleName</a></h2>
446 <div class="doc-section">
447
448 <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>
449
450 <p>The format of the TagToModuleName module is:</p>
451
452 <pre class="text">
453   TagToModuleName(const char *tag,const char *format,char *module)
454 </pre>
455
456 <p>A description of each parameter follows:</p></ol>
457
458 <h5>tag</h5>
459 <ol><p>the module tag.</p></ol>
460
461 <h5>format</h5>
462 <ol><p>a sprintf-compatible format string containing s where the upper-case tag name is to be inserted.</p></ol>
463
464 <h5>module</h5>
465 <ol><p>pointer to a destination buffer for the formatted result.</p></ol>
466
467  </div>
468 <h2><a href="http://www.imagemagick.org/api/MagickCore/module
469 _8c.html" target="source" name="UnregisterModule">UnregisterModule</a></h2>
470 <div class="doc-section">
471
472 <p>UnregisterModule() unloads a module, and invokes its de-registration module. Returns MagickTrue on success, and MagickFalse if there is an error.</p></ol>
473
474 <p>The format of the UnregisterModule module is:</p>
475
476 <pre class="text">
477   MagickBooleanType UnregisterModule(const ModuleInfo *module_info,
478     ExceptionInfo *exception)
479 </pre>
480
481 <p>A description of each parameter follows:</p></ol>
482
483 <h5>module_info</h5>
484 <ol><p>the module info.</p></ol>
485
486 <h5>exception</h5>
487 <ol><p>return any errors or warnings in this structure.</p></ol>
488
489  </div>
490 \r
491 </div>\r
492 \r
493 <div id="linkbar">\r
494  <!--    <span id="linkbar-west">&nbsp;</span>  -->\r
495     <span id="linkbar-center">\r
496       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
497       <a href="../../www/mailing-list.html">Mailing Lists</a> &bull;\r
498     <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
499     </span>\r
500     <span id="linkbar-east">&nbsp;</span>\r
501   </div>\r
502   <div class="footer">\r
503     <span id="footer-west">&copy; 1999-2009 ImageMagick Studio LLC</span>\r
504     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
505   </div>\r
506   <div style="clear: both; margin: 0; width: 100%; "></div>\r
507 </body>\r
508 </html>\r