1 2 3 4 5<!DOCTYPE html> 6<html lang="en"> 7<head> 8 <meta charset="utf-8" /> 9 <meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1,shrink-to-fit=no" /> 10 <title>ImageMagick - MagickCore, C API: Dealing with Image Profiles</title> 11 <meta name="application-name" content="ImageMagick" /> 12 <meta name="description" content="Use ImageMagick® to create, edit, compose, and convert bitmap images. Resize an image, crop it, change its shades and colors, add captions, and more." /> 13 <meta name="application-url" content="https://imagemagick.org" /> 14 <meta name="generator" content="PHP" /> 15 <meta name="keywords" content="magickcore, c, api:, dealing, with, image, profiles, ImageMagick, PerlMagick, image processing, image, photo, software, Magick++, OpenMP, convert" /> 16 <meta name="rating" content="GENERAL" /> 17 <meta name="robots" content="INDEX, FOLLOW" /> 18 <meta name="generator" content="ImageMagick Studio LLC" /> 19 <meta name="author" content="ImageMagick Studio LLC" /> 20 <meta name="revisit-after" content="2 DAYS" /> 21 <meta name="resource-type" content="document" /> 22 <meta name="copyright" content="Copyright (c) 1999-2020 ImageMagick Studio LLC" /> 23 <meta name="distribution" content="Global" /> 24 <meta name="magick-serial" content="P131-S030410-R485315270133-P82224-A6668-G1245-1" /> 25 <meta property='og:url' content='../../' /> 26 <meta property='og:title' content='ImageMagick' /> 27 <meta property='og:image' content='../../images/logo.png' /> 28 <meta property='og:type' content='website' /> 29 <meta property='og:site_name' content='ImageMagick' /> 30 <meta property='og:description' content="Convert, Edit, or Compose Bitmap Images" /> 31 <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4" /> 32 <link href="../../api/profile.html" rel="canonical" /> 33 <link href="../images/wand.png" rel="icon" /> 34 <link href="../images/wand.ico" rel="shortcut icon" /> 35 <link href="assets/magick.css" rel="stylesheet" /> 36</head> 37<body> 38 <nav class="navbar navbar-expand-md navbar-dark fixed-top bg-dark"> 39 <a class="navbar-brand" href="../index.html"><img class="d-block" id="icon" alt="ImageMagick" width="32" height="32" src="../images/wand.ico"/></a> 40 <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarsMagick" aria-controls="navbarsMagick" aria-expanded="false" aria-label="Toggle navigation"> 41 <span class="navbar-toggler-icon"></span> 42 </button> 43 44 <div class="navbar-collapse collapse" id="navbarsMagick" style=""> 45 <ul class="navbar-nav mr-auto"> 46 <li class="nav-item "> 47 <a class="nav-link" href="../index.html">Home <span class="sr-only">(current)</span></a> 48 </li> 49 <li class="nav-item "> 50 <a class="nav-link" href="../www/download.html">Download</a> 51 </li> 52 <li class="nav-item "> 53 <a class="nav-link" href="../www/command-line-tools.html">Tools</a> 54 </li> 55 <li class="nav-item "> 56 <a class="nav-link" href="../www/command-line-processing.html">Command-line</a> 57 </li> 58 <li class="nav-item "> 59 <a class="nav-link" href="../www/resources.html">Resources</a> 60 </li> 61 <li class="nav-item "> 62 <a class="nav-link" href="../www/develop.html">Develop</a> 63 </li> 64 <li class="nav-item"> 65 <a class="nav-link" target="_blank" href="https://imagemagick.org/discourse-server/">Community</a> 66 </li> 67 </ul> 68 <form class="form-inline my-2 my-lg-0" action="../https://imagemagick.org/script/search.php"> 69 <input class="form-control mr-sm-2" type="text" name="q" placeholder="Search" aria-label="Search"> 70 <button class="btn btn-outline-success my-2 my-sm-0" type="submit" name="sa">Search</button> 71 </form> 72 </div> 73 </nav> 74 <div class="container"> 75 <script async="async" src="http://localhost/pagead/js/adsbygoogle.js"></script> <ins class="adsbygoogle" 76 style="display:block" 77 data-ad-client="ca-pub-3129977114552745" 78 data-ad-slot="6345125851" 79 data-full-width-responsive="true" 80 data-ad-format="horizontal"></ins> 81 <script> 82 (adsbygoogle = window.adsbygoogle || []).push({}); 83 </script> 84 85 </div> 86 87 <main class="container"> 88 <div class="magick-template"> 89<div class="magick-header"> 90<p class="text-center"><a href="profile.html#CloneImageProfiles">CloneImageProfiles</a> • <a href="profile.html#DeleteImageProfile">DeleteImageProfile</a> • <a href="profile.html#DestroyImageProfiles">DestroyImageProfiles</a> • <a href="profile.html#GetImageProfile">GetImageProfile</a> • <a href="profile.html#GetNextImageProfile">GetNextImageProfile</a> • <a href="profile.html#ProfileImage">ProfileImage</a> • <a href="profile.html#RemoveImageProfile">RemoveImageProfile</a> • <a href="profile.html#ResetImageProfileIterator">ResetImageProfileIterator</a> • <a href="profile.html#SetImageProfile">SetImageProfile</a> • <a href="profile.html#SyncImageProfiles">SyncImageProfiles</a></p> 91 92<h2><a href="../../api/MagickCore/profile_8c.html" id="CloneImageProfiles">CloneImageProfiles</a></h2> 93 94<p>CloneImageProfiles() clones one or more image profiles.</p> 95 96<p>The format of the CloneImageProfiles method is:</p> 97 98<pre class="text"> 99MagickBooleanType CloneImageProfiles(Image *image, 100 const Image *clone_image) 101</pre> 102 103<p>A description of each parameter follows:</p> 104 105<dd> 106</dd> 107 108<dd> </dd> 109<dl class="dl-horizontal"> 110<dt>image</dt> 111<dd>the image. </dd> 112 113<dd> </dd> 114<dt>clone_image</dt> 115<dd>the clone image. </dd> 116 117<dd> </dd> 118</dl> 119<h2><a href="../../api/MagickCore/profile_8c.html" id="DeleteImageProfile">DeleteImageProfile</a></h2> 120 121<p>DeleteImageProfile() deletes a profile from the image by its name.</p> 122 123<p>The format of the DeleteImageProfile method is:</p> 124 125<pre class="text"> 126MagickBooleanTyupe DeleteImageProfile(Image *image,const char *name) 127</pre> 128 129<p>A description of each parameter follows:</p> 130 131<dd> 132</dd> 133 134<dd> </dd> 135<dl class="dl-horizontal"> 136<dt>image</dt> 137<dd>the image. </dd> 138 139<dd> </dd> 140<dt>name</dt> 141<dd>the profile name. </dd> 142 143<dd> </dd> 144</dl> 145<h2><a href="../../api/MagickCore/profile_8c.html" id="DestroyImageProfiles">DestroyImageProfiles</a></h2> 146 147<p>DestroyImageProfiles() releases memory associated with an image profile map.</p> 148 149<p>The format of the DestroyProfiles method is:</p> 150 151<pre class="text"> 152void DestroyImageProfiles(Image *image) 153</pre> 154 155<p>A description of each parameter follows:</p> 156 157<dd> 158</dd> 159 160<dd> </dd> 161<dl class="dl-horizontal"> 162<dt>image</dt> 163<dd>the image. </dd> 164 165<dd> </dd> 166</dl> 167<h2><a href="../../api/MagickCore/profile_8c.html" id="GetImageProfile">GetImageProfile</a></h2> 168 169<p>GetImageProfile() gets a profile associated with an image by name.</p> 170 171<p>The format of the GetImageProfile method is:</p> 172 173<pre class="text"> 174const StringInfo *GetImageProfile(const Image *image,const char *name) 175</pre> 176 177<p>A description of each parameter follows:</p> 178 179<dd> 180</dd> 181 182<dd> </dd> 183<dl class="dl-horizontal"> 184<dt>image</dt> 185<dd>the image. </dd> 186 187<dd> </dd> 188<dt>name</dt> 189<dd>the profile name. </dd> 190 191<dd> </dd> 192</dl> 193<h2><a href="../../api/MagickCore/profile_8c.html" id="GetNextImageProfile">GetNextImageProfile</a></h2> 194 195<p>GetNextImageProfile() gets the next profile name for an image.</p> 196 197<p>The format of the GetNextImageProfile method is:</p> 198 199<pre class="text"> 200char *GetNextImageProfile(const Image *image) 201</pre> 202 203<p>A description of each parameter follows:</p> 204 205<dd> 206</dd> 207 208<dd> </dd> 209<dl class="dl-horizontal"> 210<dt>hash_info</dt> 211<dd>the hash info. </dd> 212 213<dd> </dd> 214</dl> 215<h2><a href="../../api/MagickCore/profile_8c.html" id="ProfileImage">ProfileImage</a></h2> 216 217<p>ProfileImage() associates, applies, or removes an ICM, IPTC, or generic profile with / to / from an image. If the profile is NULL, it is removed from the image otherwise added or applied. Use a name of '*' and a profile of NULL to remove all profiles from the image.</p> 218 219<p>ICC and ICM profiles are handled as follows: If the image does not have an associated color profile, the one you provide is associated with the image and the image pixels are not transformed. Otherwise, the colorspace transform defined by the existing and new profile are applied to the image pixels and the new profile is associated with the image.</p> 220 221<p>The format of the ProfileImage method is:</p> 222 223<pre class="text"> 224MagickBooleanType ProfileImage(Image *image,const char *name, 225 const void *datum,const size_t length,const MagickBooleanType clone) 226</pre> 227 228<p>A description of each parameter follows:</p> 229 230<dd> 231</dd> 232 233<dd> </dd> 234<dl class="dl-horizontal"> 235<dt>image</dt> 236<dd>the image. </dd> 237 238<dd> </dd> 239<dt>name</dt> 240<dd>Name of profile to add or remove: ICC, IPTC, or generic profile. </dd> 241 242<dd> </dd> 243<dt>datum</dt> 244<dd>the profile data. </dd> 245 246<dd> </dd> 247<dt>length</dt> 248<dd>the length of the profile. </dd> 249 250<dd> </dd> 251<dt>clone</dt> 252<dd>should be MagickFalse. </dd> 253 254<dd> </dd> 255</dl> 256<h2><a href="../../api/MagickCore/profile_8c.html" id="RemoveImageProfile">RemoveImageProfile</a></h2> 257 258<p>RemoveImageProfile() removes a named profile from the image and returns its value.</p> 259 260<p>The format of the RemoveImageProfile method is:</p> 261 262<pre class="text"> 263void *RemoveImageProfile(Image *image,const char *name) 264</pre> 265 266<p>A description of each parameter follows:</p> 267 268<dd> 269</dd> 270 271<dd> </dd> 272<dl class="dl-horizontal"> 273<dt>image</dt> 274<dd>the image. </dd> 275 276<dd> </dd> 277<dt>name</dt> 278<dd>the profile name. </dd> 279 280<dd> </dd> 281</dl> 282<h2><a href="../../api/MagickCore/profile_8c.html" id="ResetImageProfileIterator">ResetImageProfileIterator</a></h2> 283 284<p>ResetImageProfileIterator() resets the image profile iterator. Use it in conjunction with GetNextImageProfile() to iterate over all the profiles associated with an image.</p> 285 286<p>The format of the ResetImageProfileIterator method is:</p> 287 288<pre class="text"> 289ResetImageProfileIterator(Image *image) 290</pre> 291 292<p>A description of each parameter follows:</p> 293 294<dd> 295</dd> 296 297<dd> </dd> 298<dl class="dl-horizontal"> 299<dt>image</dt> 300<dd>the image. </dd> 301 302<dd> </dd> 303</dl> 304<h2><a href="../../api/MagickCore/profile_8c.html" id="SetImageProfile">SetImageProfile</a></h2> 305 306<p>SetImageProfile() adds a named profile to the image. If a profile with the same name already exists, it is replaced. This method differs from the ProfileImage() method in that it does not apply CMS color profiles.</p> 307 308<p>The format of the SetImageProfile method is:</p> 309 310<pre class="text"> 311MagickBooleanType SetImageProfile(Image *image,const char *name, 312 const StringInfo *profile) 313</pre> 314 315<p>A description of each parameter follows:</p> 316 317<dd> 318</dd> 319 320<dd> </dd> 321<dl class="dl-horizontal"> 322<dt>image</dt> 323<dd>the image. </dd> 324 325<dd> </dd> 326<dt>name</dt> 327<dd>the profile name, for example icc, exif, and 8bim (8bim is the Photoshop wrapper for iptc profiles). </dd> 328 329<dd> </dd> 330<dt>profile</dt> 331<dd>A StringInfo structure that contains the named profile. </dd> 332 333<dd> </dd> 334</dl> 335<h2><a href="../../api/MagickCore/profile_8c.html" id="SyncImageProfiles">SyncImageProfiles</a></h2> 336 337<p>SyncImageProfiles() synchronizes image properties with the image profiles. Currently we only support updating the EXIF resolution and orientation.</p> 338 339<p>The format of the SyncImageProfiles method is:</p> 340 341<pre class="text"> 342MagickBooleanType SyncImageProfiles(Image *image) 343</pre> 344 345<p>A description of each parameter follows:</p> 346 347<dd> 348</dd> 349 350<dd> </dd> 351<dl class="dl-horizontal"> 352<dt>image</dt> 353<dd>the image. </dd> 354 355<dd> </dd> 356</dl> 357</div> 358 </div> 359 </main><!-- /.container --> 360 <footer class="magick-footer"> 361 <p><a href="../www/security-policy.html">Security</a> • 362 <a href="../www/architecture.html">Architecture</a> 363 364 <a href="profile.html#"><img class="d-inline" id="wand" alt="And Now a Touch of Magick" width="16" height="16" src="../images/wand.ico"/></a> 365 366 <a href="../www/links.html">Related</a> • 367 <a href="../www/sitemap.html">Sitemap</a> 368 <br/> 369 <a href="../www/support.html">Donate</a> • 370 <a href="http://pgp.mit.edu/pks/lookup?op=get&search=0x89AB63D48277377A">Public Key</a> • 371 <a href="../www/contact.html">Contact Us</a> 372 <br/> 373 <small>© 1999-2020 ImageMagick Studio LLC</small></p> 374 </footer> 375 376 <!-- Javascript assets --> 377 <script src="assets/magick.js" crossorigin="anonymous"></script> 378 <script>window.jQuery || document.write('<script src="https://localhost/ajax/libs/jquery/3.4.1/jquery.min.js"><\/script>')</script> 379</body> 380</html> 381<!-- Magick Cache 3rd January 2020 09:48 -->