blob: 91375009ed2e1a2cbcd4fa4ca5a26f1e7ce09a40 [file] [log] [blame]
cristy3eaa0ef2010-03-06 20:35:26 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
cristy2c839602010-04-03 02:32:08 +00003<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
cristy3eaa0ef2010-03-06 20:35:26 +00004<head>
cristy3c98a4f2010-08-13 20:09:41 +00005 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>
7 <title>ImageMagick: MagickCore, C API for ImageMagick: Annotate an Image</title/>
cristy3ed852e2009-09-05 21:47:34 +00008 <meta http-equiv="Content-Language" content="en-US"/>
9 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
10 <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
cristy3c98a4f2010-08-13 20:09:41 +000011 <meta name="Application-name" content="ImageMagick"/>
12 <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."/>
13 <meta name="Application-url" content="http://www.imagemagick.org"/>
cristy3ed852e2009-09-05 21:47:34 +000014 <meta name="Generator" content="PHP"/>
15 <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, annotate, an, image, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
cristy3ed852e2009-09-05 21:47:34 +000016 <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"/>
cristy4103d562010-12-10 01:38:54 +000022 <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000023 <meta name="Distribution" content="Global"/>
cristy3c98a4f2010-08-13 20:09:41 +000024 <link rel="icon" href="../../images/wand.png" sizes="32x32"/>
25 <link rel="shortcut icon" href="../../images/wand.ico" type="images/x-icon"/>
26 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
27 <style type="text/css" media="all">
28 @import url("../../www/magick.css");
29 </style>
cristy3eaa0ef2010-03-06 20:35:26 +000030</head>
31
32<body id="www-imagemagick-org">
33<div class="titlebar">
34<a href="../../index.html">
35 <img src="../../images/script.png" alt="[ImageMagick]"
36 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
37<a href="http://www.networkredux.com">
38 <img src="../../images/networkredux.png" alt="[sponsor]"
39 style="margin: 45px auto; border: 0px; float: left;" /></a>
40<a href="http://www.imagemagick.org/discourse-server/">
41 <img src="../../images/logo.jpg" alt=""
42 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
43<a href="../../index.html">
44 <img src="../../images/sprite.jpg" alt=""
45 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
46</div>
47
cristyce69bb02010-07-27 19:49:46 +000048<div class="westbar">
cristy3eaa0ef2010-03-06 20:35:26 +000049
cristy3ed852e2009-09-05 21:47:34 +000050<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000051 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000052</div>
cristy3eaa0ef2010-03-06 20:35:26 +000053<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000054<div class="menu">
cristybb503372010-05-27 20:51:26 +000055 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
56</div>
57<div class="sub">
58 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
59</div>
60<div class="sub">
61 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
62</div>
63<div class="sub">
64 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
65</div>
66<div class="sep"></div>
67<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000068 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +000069</div>
70<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000071 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +000072</div>
73<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000074 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +000075</div>
76<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000077 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +000078</div>
79<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000080 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +000081</div>
82<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000083 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +000084</div>
85<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000086 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +000087</div>
88<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000089 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000090</div>
91<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000092 <a title="Program Interface: Magick++" href="../../Magick++/">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +000093</div>
cristy3eaa0ef2010-03-06 20:35:26 +000094<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000095<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000096 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +000097</div>
98<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000099 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000100</div>
101<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000102 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000103 </div>
104<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000105 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000106</div>
cristybb503372010-05-27 20:51:26 +0000107<div class="menu">
108 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
109</div>
cristy3ed852e2009-09-05 21:47:34 +0000110<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000111 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000112</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000113<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000114<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000115 <a title="Search" href="../http://www.imagemagick.org/script/search.php">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000116</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000117<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000118<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000119 <a title="Site Map"href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000120</div>
121<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000122 <a title="Site Map: Links"href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000123</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000124<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000125<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000126 <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000127
128<div class="sponsbox">
129<div class="sponsor">
cristy4103d562010-12-10 01:38:54 +0000130 <a title="Sponsor: alaTest.com" href="http://alatest.com">alaTest.com</a><!-- 20110801000300 -->
cristy7d52cd62010-10-01 17:26:59 +0000131</div>
132<div class="sponsor">
133 <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
cristy73fd1cd2010-09-12 19:14:25 +0000134</div>
135<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000136 <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
137</div>
138<div class="sponsor">
cristy851dbce2010-08-06 21:40:00 +0000139 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
140</div>
141<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000142 <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
cristycdfd3c22010-03-08 01:08:11 +0000143</div>
144<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000145 <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
cristyf1196bb2010-02-13 21:18:03 +0000146</div>
147<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000148 <a title="Sponsor: Diamonds are a Girls Best Friend" href="http://www.schmuck.org">Diamonds are a Girls Best Friend</a><!-- 201101010600 Peterssen-->
cristy916e1922009-10-01 12:52:47 +0000149</div>
cristy3ed852e2009-09-05 21:47:34 +0000150</div>
151</div>
cristyce69bb02010-07-27 19:49:46 +0000152</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000153
cristyce69bb02010-07-27 19:49:46 +0000154<div class="eastbar">
155 <script type="text/javascript">
156 <!--
157 google_ad_client = "pub-3129977114552745";
cristyce69bb02010-07-27 19:49:46 +0000158 google_ad_slot = "0574824969";
159 google_ad_width = 160;
160 google_ad_height = 600;
161 //-->
162 </script>
163 <script type="text/javascript"
164 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
165 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000166</div>
167
168<div class="main">
169
cristy3ed852e2009-09-05 21:47:34 +0000170<p class="navigation-index">[<a href="#AnnotateImage">AnnotateImage</a> &bull; <a href="#FormatMagickCaption">FormatMagickCaption</a> &bull; <a href="#GetMultilineTypeMetrics">GetMultilineTypeMetrics</a> &bull; <a href="#GetTypeMetrics">GetTypeMetrics</a>]</p>
171
172<h2><a href="http://www.imagemagick.org/api/MagickCore/annotate
173_8c.html" target="source" name="AnnotateImage">AnnotateImage</a></h2>
174<div class="doc-section">
175
176<p>AnnotateImage() annotates an image with text. Optionally you can include any of the following bits of information about the image by embedding the appropriate special characters:</p>
177
178<pre class="text">
179 b file size in bytes.
180 c comment.
181 d directory in which the image resides.
182 e extension of the image file.
183 f original filename of the image.
184 h height of image.
185 i filename of the image.
186 k number of unique colors.
187 l image label.
188 m image file format.
189 n number of images in a image sequence.
190 o output image filename.
191 p page number of the image.
192 q image depth (8 or 16).
193 q image depth (8 or 16).
194 s image scene number.
195 t image filename without any extension.
196 u a unique temporary filename.
197 w image width.
198 x x resolution of the image.
199 y y resolution of the image.
200</pre>
201
202<p>The format of the AnnotateImage method is:</p>
203
204<pre class="code">
205 MagickBooleanType AnnotateImage(Image *image,DrawInfo *draw_info)
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<h5>draw_info</h5>
214<ol><p>the draw info.</p></ol>
215
216 </div>
217<h2><a href="http://www.imagemagick.org/api/MagickCore/annotate
218_8c.html" target="source" name="FormatMagickCaption">FormatMagickCaption</a></h2>
219<div class="doc-section">
220
221<p>FormatMagickCaption() formats a caption so that it fits within the image width. It returns the number of lines in the formatted caption.</p></ol>
222
223<p>The format of the FormatMagickCaption method is:</p>
224
225<pre class="code">
cristybb503372010-05-27 20:51:26 +0000226 ssize_t FormatMagickCaption(Image *image,DrawInfo *draw_info,
cristyd0bd44a2010-09-24 12:38:11 +0000227 const MagickBooleanType split,TypeMetric *metrics,char **caption)
cristy3ed852e2009-09-05 21:47:34 +0000228</pre>
229
230<p>A description of each parameter follows.</p></ol>
231
232<h5>image</h5>
233<ol><p>The image.</p></ol>
234
cristy3ed852e2009-09-05 21:47:34 +0000235<h5>draw_info</h5>
236<ol><p>the draw info.</p></ol>
237
cristyd0bd44a2010-09-24 12:38:11 +0000238<h5>split</h5>
239<ol><p>when no convenient line breaks-- insert newline.</p></ol>
240
cristy3ed852e2009-09-05 21:47:34 +0000241<h5>metrics</h5>
242<ol><p>Return the font metrics in this structure.</p></ol>
243
cristyd0bd44a2010-09-24 12:38:11 +0000244<h5>caption</h5>
245<ol><p>the caption.</p></ol>
246
cristy3ed852e2009-09-05 21:47:34 +0000247 </div>
248<h2><a href="http://www.imagemagick.org/api/MagickCore/annotate
249_8c.html" target="source" name="GetMultilineTypeMetrics">GetMultilineTypeMetrics</a></h2>
250<div class="doc-section">
251
252<p>GetMultilineTypeMetrics() returns the following information for the specified font and text:</p>
253
254<pre class="text">
255 character width
256 character height
257 ascender
258 descender
259 text width
260 text height
261 maximum horizontal advance
262 bounds: x1
263 bounds: y1
264 bounds: x2
265 bounds: y2
266 origin: x
267 origin: y
268 underline position
269 underline thickness
270</pre>
271
272<p>This method is like GetTypeMetrics() but it returns the maximum text width and height for multiple lines of text.</p></ol>
273
274<p>The format of the GetMultilineTypeMetrics method is:</p>
275
276<pre class="code">
277 MagickBooleanType GetMultilineTypeMetrics(Image *image,
278 const DrawInfo *draw_info,TypeMetric *metrics)
279</pre>
280
281<p>A description of each parameter follows:</p></ol>
282
283<h5>image</h5>
284<ol><p>the image.</p></ol>
285
286<h5>draw_info</h5>
287<ol><p>the draw info.</p></ol>
288
289<h5>metrics</h5>
290<ol><p>Return the font metrics in this structure.</p></ol>
291
292 </div>
293<h2><a href="http://www.imagemagick.org/api/MagickCore/annotate
294_8c.html" target="source" name="GetTypeMetrics">GetTypeMetrics</a></h2>
295<div class="doc-section">
296
297<p>GetTypeMetrics() returns the following information for the specified font and text:</p>
298
299<pre class="text">
300 character width
301 character height
302 ascender
303 descender
304 text width
305 text height
306 maximum horizontal advance
307 bounds: x1
308 bounds: y1
309 bounds: x2
310 bounds: y2
311 origin: x
312 origin: y
313 underline position
314 underline thickness
315</pre>
316
317<p>The format of the GetTypeMetrics method is:</p>
318
319<pre class="code">
320 MagickBooleanType GetTypeMetrics(Image *image,const DrawInfo *draw_info,
321 TypeMetric *metrics)
322</pre>
323
324<p>A description of each parameter follows:</p></ol>
325
326<h5>image</h5>
327<ol><p>the image.</p></ol>
328
329<h5>draw_info</h5>
330<ol><p>the draw info.</p></ol>
331
332<h5>metrics</h5>
333<ol><p>Return the font metrics in this structure.</p></ol>
334
335 </div>
cristy3eaa0ef2010-03-06 20:35:26 +0000336
337</div>
338
339<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +0000340 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000341 <span id="linkbar-center">
342 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +0000343 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +0000344 </span>
345 <span id="linkbar-east">&nbsp;</span>
346 </div>
347 <div class="footer">
cristy4103d562010-12-10 01:38:54 +0000348 <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000349 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
350 </div>
351 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +0000352 <script type="text/javascript">
353 var _gaq = _gaq || [];
354 _gaq.push(['_setAccount', 'UA-17690367-1']);
355 _gaq.push(['_trackPageview']);
356
357 (function() {
358 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
359 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
360 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
361 })();
362 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000363</body>
364</html>