blob: e9b055e7a710c3f5c81f1e5e2608271e46754853 [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"/>
cristy16af1cb2009-12-11 21:38:29 +000022 <meta name="Copyright" content="Copyright (c) 1999-2010 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">
cristy851dbce2010-08-06 21:40:00 +0000130 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
131</div>
132<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000133 <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
cristycdfd3c22010-03-08 01:08:11 +0000134</div>
135<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000136 <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
cristyf1196bb2010-02-13 21:18:03 +0000137</div>
138<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000139 <a title="Sponsor: Deko.net" href="http://www.deko.net">Deko.net</a><!-- 201101010600 Peterssen-->
cristy1f9e1ed2009-11-18 04:09:38 +0000140</div>
141<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000142 <a title="Sponsor: Druckerei" href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
cristy916e1922009-10-01 12:52:47 +0000143</div>
144<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000145 <a title="Sponsor: Druckerei Online" href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
cristyb4c03bb2009-09-27 13:55:46 +0000146</div>
cristy9c60d3f2010-08-09 02:29:30 +0000147<div class="sponsor">
cristyd4d64ed2010-08-22 22:19:33 +0000148 <a title="Sponsor: Atlas Multimedia" href="http://www.atlas-multimedia.de/">Atlas Multimedia</a><!-- 20101201000025 tanju.temurbas-->
cristy9c60d3f2010-08-09 02:29:30 +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,
cristy3ed852e2009-09-05 21:47:34 +0000227 TypeMetric *metrics,char **caption)
228</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
235<h5>caption</h5>
236<ol><p>the caption.</p></ol>
237
238<h5>draw_info</h5>
239<ol><p>the draw info.</p></ol>
240
241<h5>metrics</h5>
242<ol><p>Return the font metrics in this structure.</p></ol>
243
244 </div>
245<h2><a href="http://www.imagemagick.org/api/MagickCore/annotate
246_8c.html" target="source" name="GetMultilineTypeMetrics">GetMultilineTypeMetrics</a></h2>
247<div class="doc-section">
248
249<p>GetMultilineTypeMetrics() returns the following information for the specified font and text:</p>
250
251<pre class="text">
252 character width
253 character height
254 ascender
255 descender
256 text width
257 text height
258 maximum horizontal advance
259 bounds: x1
260 bounds: y1
261 bounds: x2
262 bounds: y2
263 origin: x
264 origin: y
265 underline position
266 underline thickness
267</pre>
268
269<p>This method is like GetTypeMetrics() but it returns the maximum text width and height for multiple lines of text.</p></ol>
270
271<p>The format of the GetMultilineTypeMetrics method is:</p>
272
273<pre class="code">
274 MagickBooleanType GetMultilineTypeMetrics(Image *image,
275 const DrawInfo *draw_info,TypeMetric *metrics)
276</pre>
277
278<p>A description of each parameter follows:</p></ol>
279
280<h5>image</h5>
281<ol><p>the image.</p></ol>
282
283<h5>draw_info</h5>
284<ol><p>the draw info.</p></ol>
285
286<h5>metrics</h5>
287<ol><p>Return the font metrics in this structure.</p></ol>
288
289 </div>
290<h2><a href="http://www.imagemagick.org/api/MagickCore/annotate
291_8c.html" target="source" name="GetTypeMetrics">GetTypeMetrics</a></h2>
292<div class="doc-section">
293
294<p>GetTypeMetrics() returns the following information for the specified font and text:</p>
295
296<pre class="text">
297 character width
298 character height
299 ascender
300 descender
301 text width
302 text height
303 maximum horizontal advance
304 bounds: x1
305 bounds: y1
306 bounds: x2
307 bounds: y2
308 origin: x
309 origin: y
310 underline position
311 underline thickness
312</pre>
313
314<p>The format of the GetTypeMetrics method is:</p>
315
316<pre class="code">
317 MagickBooleanType GetTypeMetrics(Image *image,const DrawInfo *draw_info,
318 TypeMetric *metrics)
319</pre>
320
321<p>A description of each parameter follows:</p></ol>
322
323<h5>image</h5>
324<ol><p>the image.</p></ol>
325
326<h5>draw_info</h5>
327<ol><p>the draw info.</p></ol>
328
329<h5>metrics</h5>
330<ol><p>Return the font metrics in this structure.</p></ol>
331
332 </div>
cristy3eaa0ef2010-03-06 20:35:26 +0000333
334</div>
335
336<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +0000337 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000338 <span id="linkbar-center">
339 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +0000340 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +0000341 </span>
342 <span id="linkbar-east">&nbsp;</span>
343 </div>
344 <div class="footer">
345 <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>
346 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
347 </div>
348 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +0000349 <script type="text/javascript">
350 var _gaq = _gaq || [];
351 _gaq.push(['_setAccount', 'UA-17690367-1']);
352 _gaq.push(['_trackPageview']);
353
354 (function() {
355 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
356 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
357 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
358 })();
359 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000360</body>
361</html>