Home | History | Annotate | Download | only in api
      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 Bzier 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">
     68 ModuleInfo *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">
     94 void 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">
    104 ModuleInfo *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">
    130 const 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">
    161 char **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">
    196 MagickBooleanType 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">
    231 IsModuleTreeInstantiated()
    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">
    241 MagickBooleanType 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">
    280 MagickBooleanType 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">
    298 MagickBooleanType 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">
    324 MagickBooleanType 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">
    346 ModuleInfo *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">
    377 char *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">
    403 void 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">
    429 TagToModuleName(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">
    459 MagickBooleanType 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&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