blob: 63aacb7d47a5fe7001bc41cfed9d9193a357f7e1 [file] [log] [blame]
cristyf3bb4782009-09-08 13:10:04 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4<head>
5 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />
6 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />
7 <style type="text/css" media="screen,projection"><!--
8 @import url("../../www/magick.css");
9 --></style>
cristy3ed852e2009-09-05 21:47:34 +000010 <link rel="shortcut icon" href="../../images/wand.ico" type="images/vnd.microsoft.icon"/>
11 <title>ImageMagick: MagickCore, C API for ImageMagick: Dealing with Image Profiles</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:, dealing, with, image, profiles, 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"/>
cristyf3bb4782009-09-08 13:10:04 +000026</head>
27
28<body id="www-imagemagick-org">
29<div class="titlebar">
30<a href="../../index.html">
31 <img src="../../images/script.png" alt="[ImageMagick]"
32 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
33<a href="http://www.networkredux.com">
34 <img src="../../images/networkredux.png" alt="[sponsor]"
35 style="margin: 45px auto; border: 0px; float: left;" /></a>
36<a href="http://www.imagemagick.org/discourse-server/">
37 <img src="../../images/logo.jpg" alt=""
38 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
39<a href="../../index.html">
40 <img src="../../images/sprite.jpg" alt=""
41 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
42</div>
43
44<div class="eastbar">
45
cristy3ed852e2009-09-05 21:47:34 +000046<div class="menu">
47 <a href="../../index.html">About ImageMagick</a>
48</div>
cristyf3bb4782009-09-08 13:10:04 +000049<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000050<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>
cristyf3bb4782009-09-08 13:10:04 +000080<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000081<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>
cristyf3bb4782009-09-08 13:10:04 +0000105<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000106<div class="menu">
107 <a href="../../www/download.html">Download</a>
108</div>
cristyf3bb4782009-09-08 13:10:04 +0000109<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000110<div class="menu">
111 <a href="../http://www.imagemagick.org/script/search.php">Search</a>
112</div>
cristyf3bb4782009-09-08 13:10:04 +0000113<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000114<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>
cristyf3bb4782009-09-08 13:10:04 +0000120<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000121<div class="menu">
122 <a href="../../www/sponsors.html">Sponsors:</a>
123
124<div class="sponsbox">
125<div class="sponsor">
cristyb4c03bb2009-09-27 13:55:46 +0000126 <a href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
127</div>
128<div class="sponsor">
cristyf3bb4782009-09-08 13:10:04 +0000129 <a href="http://www.goyax.de">Börse</a><!-- 201001000240 Gewiese digital-finance.de -->
130</div>
131<div class="sponsor">
cristy3ed852e2009-09-05 21:47:34 +0000132 <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012001200 allesdruck.de-->
133</div>
134<div class="sponsor">
135 <a href="http://www.blumenversender.com">Blumenversand</a><!-- 200911010120 -->
136</div>
137<div class="sponsor">
cristy3ed852e2009-09-05 21:47:34 +0000138 <a href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 201002010000 -->
139</div>
140<div class="sponsor">
cristyf3bb4782009-09-08 13:10:04 +0000141 <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201002010120 Buchhorn -->
cristy3ed852e2009-09-05 21:47:34 +0000142</div>
143</div>
144</div>
cristyf3bb4782009-09-08 13:10:04 +0000145
146
147</div>
148
149<div class="main">
150
cristy3ed852e2009-09-05 21:47:34 +0000151<p class="navigation-index">[<a href="#CloneImageProfiles">CloneImageProfiles</a> &bull; <a href="#DeleteImageProfile">DeleteImageProfile</a> &bull; <a href="#DestroyImageProfiles">DestroyImageProfiles</a> &bull; <a href="#GetImageProfile">GetImageProfile</a> &bull; <a href="#GetNextImageProfile">GetNextImageProfile</a> &bull; <a href="#ProfileImage">ProfileImage</a> &bull; <a href="#RemoveImageProfile">RemoveImageProfile</a> &bull; <a href="#ResetImageProfileIterator">ResetImageProfileIterator</a> &bull; <a href="#SetImageProfile">SetImageProfile</a> &bull; <a href="#SyncImageProfiles">SyncImageProfiles</a>]</p>
152
153<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
154_8c.html" target="source" name="CloneImageProfiles">CloneImageProfiles</a></h2>
155<div class="doc-section">
156
157<p>CloneImageProfiles() clones one or more image profiles.</p></ol>
158
159<p>The format of the CloneImageProfiles method is:</p>
160
161<pre class="code">
162 MagickBooleanType CloneImageProfiles(Image *image,
163 const Image *clone_image)
164</pre>
165
166<p>A description of each parameter follows:</p></ol>
167
168<h5>image</h5>
169<ol><p>the image.</p></ol>
170
171<h5>clone_image</h5>
172<ol><p>the clone image.</p></ol>
173
174 </div>
175<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
176_8c.html" target="source" name="DeleteImageProfile">DeleteImageProfile</a></h2>
177<div class="doc-section">
178
179<p>DeleteImageProfile() deletes a profile from the image by its name.</p></ol>
180
181<p>The format of the DeleteImageProfile method is:</p>
182
183<pre class="code">
184 MagickBooleanTyupe DeleteImageProfile(Image *image,const char *name)
185</pre>
186
187<p>A description of each parameter follows:</p></ol>
188
189<h5>image</h5>
190<ol><p>the image.</p></ol>
191
192<h5>name</h5>
193<ol><p>the profile name.</p></ol>
194
195 </div>
196<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
197_8c.html" target="source" name="DestroyImageProfiles">DestroyImageProfiles</a></h2>
198<div class="doc-section">
199
200<p>DestroyImageProfiles() releases memory associated with an image profile map.</p></ol>
201
202<p>The format of the DestroyProfiles method is:</p>
203
204<pre class="code">
205 void DestroyImageProfiles(Image *image)
206</pre>
207
208<p>A description of each parameter follows:</p></ol>
209
210<h5>image</h5>
211<ol><p>the image.</p></ol>
212
213 </div>
214<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
215_8c.html" target="source" name="GetImageProfile">GetImageProfile</a></h2>
216<div class="doc-section">
217
218<p>GetImageProfile() gets a profile associated with an image by name.</p></ol>
219
220<p>The format of the GetImageProfile method is:</p>
221
222<pre class="code">
223 const StringInfo *GetImageProfile(const Image *image,const char *name)
224</pre>
225
226<p>A description of each parameter follows:</p></ol>
227
228<h5>image</h5>
229<ol><p>the image.</p></ol>
230
231<h5>name</h5>
232<ol><p>the profile name.</p></ol>
233
234 </div>
235<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
236_8c.html" target="source" name="GetNextImageProfile">GetNextImageProfile</a></h2>
237<div class="doc-section">
238
239<p>GetNextImageProfile() gets the next profile name for an image.</p></ol>
240
241<p>The format of the GetNextImageProfile method is:</p>
242
243<pre class="code">
244 char *GetNextImageProfile(const Image *image)
245</pre>
246
247<p>A description of each parameter follows:</p></ol>
248
249<h5>hash_info</h5>
250<ol><p>the hash info.</p></ol>
251
252 </div>
253<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
254_8c.html" target="source" name="ProfileImage">ProfileImage</a></h2>
255<div class="doc-section">
256
257<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></ol>
258
259<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></ol>
260
261<p>The format of the ProfileImage method is:</p>
262
263<pre class="code">
264 MagickBooleanType ProfileImage(Image *image,const char *name,
265 const void *datum,const size_t length,const MagickBooleanType clone)
266</pre>
267
268<p>A description of each parameter follows:</p></ol>
269
270<h5>image</h5>
271<ol><p>the image.</p></ol>
272
273<h5>name</h5>
274<ol><p>Name of profile to add or remove: ICC, IPTC, or generic profile.</p></ol>
275
276<h5>datum</h5>
277<ol><p>the profile data.</p></ol>
278
279<h5>length</h5>
280<ol><p>the length of the profile.</p></ol>
281
282<h5>clone</h5>
283<ol><p>should be MagickFalse.</p></ol>
284
285 </div>
286<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
287_8c.html" target="source" name="RemoveImageProfile">RemoveImageProfile</a></h2>
288<div class="doc-section">
289
290<p>RemoveImageProfile() removes a named profile from the image and returns its value.</p></ol>
291
292<p>The format of the RemoveImageProfile method is:</p>
293
294<pre class="code">
295 void *RemoveImageProfile(Image *image,const char *name)
296</pre>
297
298<p>A description of each parameter follows:</p></ol>
299
300<h5>image</h5>
301<ol><p>the image.</p></ol>
302
303<h5>name</h5>
304<ol><p>the profile name.</p></ol>
305
306 </div>
307<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
308_8c.html" target="source" name="ResetImageProfileIterator">ResetImageProfileIterator</a></h2>
309<div class="doc-section">
310
311<p>ResetImageProfileIterator() resets the image profile iterator. Use it in conjunction with GetNextImageProfile() to iterate over all the profiles associated with an image.</p></ol>
312
313<p>The format of the ResetImageProfileIterator method is:</p>
314
315<pre class="code">
316 ResetImageProfileIterator(Image *image)
317</pre>
318
319<p>A description of each parameter follows:</p></ol>
320
321<h5>image</h5>
322<ol><p>the image.</p></ol>
323
324 </div>
325<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
326_8c.html" target="source" name="SetImageProfile">SetImageProfile</a></h2>
327<div class="doc-section">
328
329<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></ol>
330
331<p>The format of the SetImageProfile method is:</p>
332
333<pre class="code">
334 MagickBooleanType SetImageProfile(Image *image,const char *name,
335 const StringInfo *profile)
336</pre>
337
338<p>A description of each parameter follows:</p></ol>
339
340<h5>image</h5>
341<ol><p>the image.</p></ol>
342
343<h5>name</h5>
344<ol><p>the profile name, for example icc, exif, and 8bim (8bim is the Photoshop wrapper for iptc profiles).</p></ol>
345
346<h5>profile</h5>
347<ol><p>A StringInfo structure that contains the named profile.</p></ol>
348
349 </div>
350<h2><a href="http://www.imagemagick.org/api/MagickCore/profile
351_8c.html" target="source" name="SyncImageProfiles">SyncImageProfiles</a></h2>
352<div class="doc-section">
353
354<p>SyncImageProfiles() synchronizes image properties with the image profiles. Currently we only support updating the EXIF resolution and orientation.</p></ol>
355
356<p>The format of the SyncImageProfiles method is:</p>
357
358<pre class="code">
359 MagickBooleanType SyncImageProfiles(Image *image)
360</pre>
361
362<p>A description of each parameter follows:</p></ol>
363
364<h5>image</h5>
365<ol><p>the image.</p></ol>
366
367 </div>
cristyf3bb4782009-09-08 13:10:04 +0000368
369</div>
370
371<div id="linkbar">
372 <!-- <span id="linkbar-west">&nbsp;</span> -->
373 <span id="linkbar-center">
374 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
375 <a href="../../www/mailing-list.html">Mailing Lists</a> &bull;
cristyb4c03bb2009-09-27 13:55:46 +0000376 <a href="http://studio.webbyland.com/ImageMagick/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristyf3bb4782009-09-08 13:10:04 +0000377 </span>
378 <span id="linkbar-east">&nbsp;</span>
379 </div>
380 <div class="footer">
381 <span id="footer-west">&copy; 1999-2009 ImageMagick Studio LLC</span>
382 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
383 </div>
384 <div style="clear: both; margin: 0; width: 100%; "></div>
385</body>
386</html>