blob: 0885f5b07f566af22a13487781698492224accee [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: Draw on 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:, draw, on, 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">
cristyc5baf4f2010-08-31 15:05:33 +0000130 <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
131</div>
132<div class="sponsor">
cristy851dbce2010-08-06 21:40:00 +0000133 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
134</div>
135<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000136 <a title="Sponsor: Webdesign Agentur" href="http://www.ventzke-partner.de">Webdesign Agentur</a><!-- 201101010480 invendio.de-->
cristy0391e8d2010-04-10 01:36:10 +0000137</div>
138<div class="sponsor">
cristy83a272e2010-05-07 20:40:35 +0000139 <a title="Sponsor: LVM Versicherung" href="http://www.neu-reich.de">LVM Versicherung</a><!-- 201101010480 -->
cristy8f900122010-03-05 15:26:31 +0000140</div>
141<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000142 <a title="Sponsor: Diamonds are a Girls Best Friend" href="http://www.schmuck.org">Diamonds are a Girls Best Friend</a><!-- 201101010600 Peterssen-->
cristyc1c61662009-09-30 14:04:37 +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>
cristya7cb4312010-06-26 00:47:03 +0000147<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000148 <a title="Sponsor: Atlas Multimedia" href="http://www.atlas-multimedia.de/">Atlas Multimedia</a><!-- 20101201000025 tanju.temurbas-->
cristya7cb4312010-06-26 00:47:03 +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="#AcquireDrawInfo">AcquireDrawInfo</a> &bull; <a href="#CloneDrawInfo">CloneDrawInfo</a> &bull; <a href="#DestroyDrawInfo">DestroyDrawInfo</a> &bull; <a href="#DrawAffineImage">DrawAffineImage</a> &bull; <a href="#DrawClipPath">DrawClipPath</a> &bull; <a href="#DrawImage">DrawImage</a> &bull; <a href="#DrawGradientImage">DrawGradientImage</a> &bull; <a href="#DrawPatternPath">DrawPatternPath</a> &bull; <a href="#DrawPrimitive">DrawPrimitive</a> &bull; <a href="#GetAffineMatrix">GetAffineMatrix</a>]</p>
171
172<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
173_8c.html" target="source" name="AcquireDrawInfo">AcquireDrawInfo</a></h2>
174<div class="doc-section">
175
176<p>AcquireDrawInfo() returns a DrawInfo structure properly initialized.</p></ol>
177
178<p>The format of the AcquireDrawInfo method is:</p>
179
180<pre class="code">
181 DrawInfo *AcquireDrawInfo(void)
182</pre>
183
184 </div>
185<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
186_8c.html" target="source" name="CloneDrawInfo">CloneDrawInfo</a></h2>
187<div class="doc-section">
188
189<p>CloneDrawInfo() makes a copy of the given draw info structure. If NULL is specified, a new image info structure is created initialized to default values.</p></ol>
190
191<p>The format of the CloneDrawInfo method is:</p>
192
193<pre class="code">
194 DrawInfo *CloneDrawInfo(const ImageInfo *image_info,
195 const DrawInfo *draw_info)
196</pre>
197
198<p>A description of each parameter follows:</p></ol>
199
200<h5>image_info</h5>
201<ol><p>the image info.</p></ol>
202
203<h5>draw_info</h5>
204<ol><p>the draw info.</p></ol>
205
206 </div>
207<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
208_8c.html" target="source" name="DestroyDrawInfo">DestroyDrawInfo</a></h2>
209<div class="doc-section">
210
211<p>DestroyDrawInfo() deallocates memory associated with an DrawInfo structure.</p></ol>
212
213<p>The format of the DestroyDrawInfo method is:</p>
214
215<pre class="code">
216 DrawInfo *DestroyDrawInfo(DrawInfo *draw_info)
217</pre>
218
219<p>A description of each parameter follows:</p></ol>
220
221<h5>draw_info</h5>
222<ol><p>the draw info.</p></ol>
223
224 </div>
225<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
226_8c.html" target="source" name="DrawAffineImage">DrawAffineImage</a></h2>
227<div class="doc-section">
228
229<p>DrawAffineImage() composites the source over the destination image as dictated by the affine transform.</p></ol>
230
231<p>The format of the DrawAffineImage method is:</p>
232
233<pre class="code">
234 MagickBooleanType DrawAffineImage(Image *image,const Image *source,
235 const AffineMatrix *affine)
236</pre>
237
238<p>A description of each parameter follows:</p></ol>
239
240<h5>image</h5>
241<ol><p>the image.</p></ol>
242
243<h5>source</h5>
244<ol><p>the source image.</p></ol>
245
246<h5>affine</h5>
247<ol><p>the affine transform.</p></ol>
248
249 </div>
250<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
251_8c.html" target="source" name="DrawClipPath">DrawClipPath</a></h2>
252<div class="doc-section">
253
254<p>DrawClipPath() draws the clip path on the image mask.</p></ol>
255
256<p>The format of the DrawClipPath method is:</p>
257
258<pre class="code">
259 MagickBooleanType DrawClipPath(Image *image,const DrawInfo *draw_info,
260 const char *name)
261</pre>
262
263<p>A description of each parameter follows:</p></ol>
264
265<h5>image</h5>
266<ol><p>the image.</p></ol>
267
268<h5>draw_info</h5>
269<ol><p>the draw info.</p></ol>
270
271<h5>name</h5>
272<ol><p>the name of the clip path.</p></ol>
273
274 </div>
275<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
276_8c.html" target="source" name="DrawImage">DrawImage</a></h2>
277<div class="doc-section">
278
279<p>DrawImage() draws a graphic primitive on your image. The primitive may be represented as a string or filename. Precede the filename with an "at" sign (@) and the contents of the file are drawn on the image. You can affect how text is drawn by setting one or more members of the draw info structure.</p></ol>
280
281<p>The format of the DrawImage method is:</p>
282
283<pre class="code">
284 MagickBooleanType DrawImage(Image *image,const DrawInfo *draw_info)
285</pre>
286
287<p>A description of each parameter follows:</p></ol>
288
289<h5>image</h5>
290<ol><p>the image.</p></ol>
291
292<h5>draw_info</h5>
293<ol><p>the draw info.</p></ol>
294
295 </div>
296<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
297_8c.html" target="source" name="DrawGradientImage">DrawGradientImage</a></h2>
298<div class="doc-section">
299
300<p>DrawGradientImage() draws a linear gradient on the image.</p></ol>
301
302<p>The format of the DrawGradientImage method is:</p>
303
304<pre class="code">
305 MagickBooleanType DrawGradientImage(Image *image,
306 const DrawInfo *draw_info)
307</pre>
308
309<p>A description of each parameter follows:</p></ol>
310
311<h5>image</h5>
312<ol><p>the image.</p></ol>
313
314<h5>_info</h5>
315<ol><p>the draw info.</p></ol>
316
317 </div>
318<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
319_8c.html" target="source" name="DrawPatternPath">DrawPatternPath</a></h2>
320<div class="doc-section">
321
322<p>DrawPatternPath() draws a pattern.</p></ol>
323
324<p>The format of the DrawPatternPath method is:</p>
325
326<pre class="code">
327 MagickBooleanType DrawPatternPath(Image *image,const DrawInfo *draw_info,
328 const char *name,Image **pattern)
329</pre>
330
331<p>A description of each parameter follows:</p></ol>
332
333<h5>image</h5>
334<ol><p>the image.</p></ol>
335
336<h5>draw_info</h5>
337<ol><p>the draw info.</p></ol>
338
339<h5>name</h5>
340<ol><p>the pattern name.</p></ol>
341
342<h5>image</h5>
343<ol><p>the image.</p></ol>
344
345 </div>
346<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
347_8c.html" target="source" name="DrawPrimitive">DrawPrimitive</a></h2>
348<div class="doc-section">
349
350<p>DrawPrimitive() draws a primitive (line, rectangle, ellipse) on the image.</p></ol>
351
352<p>The format of the DrawPrimitive method is:</p>
353
354<pre class="code">
355 MagickBooleanType DrawPrimitive(Image *image,const DrawInfo *draw_info,
356 PrimitiveInfo *primitive_info)
357</pre>
358
359<p>A description of each parameter follows:</p></ol>
360
361<h5>image</h5>
362<ol><p>the image.</p></ol>
363
364<h5>draw_info</h5>
365<ol><p>the draw info.</p></ol>
366
367<h5>primitive_info</h5>
368<ol><p>Specifies a pointer to a PrimitiveInfo structure.</p></ol>
369
370 </div>
371<h2><a href="http://www.imagemagick.org/api/MagickCore/draw
372_8c.html" target="source" name="GetAffineMatrix">GetAffineMatrix</a></h2>
373<div class="doc-section">
374
375<p>GetAffineMatrix() returns an AffineMatrix initialized to the identity matrix.</p></ol>
376
377<p>The format of the GetAffineMatrix method is:</p>
378
379<pre class="code">
380 void GetAffineMatrix(AffineMatrix *affine_matrix)
381</pre>
382
383<p>A description of each parameter follows:</p></ol>
384
385<h5>affine_matrix</h5>
386<ol><p>the affine matrix.</p></ol>
387
388 </div>
cristy3eaa0ef2010-03-06 20:35:26 +0000389
390</div>
391
392<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +0000393 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000394 <span id="linkbar-center">
395 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +0000396 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +0000397 </span>
398 <span id="linkbar-east">&nbsp;</span>
399 </div>
400 <div class="footer">
401 <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>
402 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
403 </div>
404 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +0000405 <script type="text/javascript">
406 var _gaq = _gaq || [];
407 _gaq.push(['_setAccount', 'UA-17690367-1']);
408 _gaq.push(['_trackPageview']);
409
410 (function() {
411 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
412 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
413 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
414 })();
415 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000416</body>
417</html>