blob: 25a9e4d67b2d5a0969f4039589c277eaf55a6365 [file] [log] [blame]
cristydcca3fa2010-12-29 21:50:07 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml" xml: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="/>
cristyffb69ed2010-12-25 00:06:48 +00007 <title>ImageMagick: Magick Vector Graphics</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"/>
cristydcca3fa2010-12-29 21:50:07 +000012 <meta name="Description" content="ImageMagick is a software suite to create, edit, compose, or convert bitmap images in a variety of formats. Use ImageMagick to scale, rotate, shear, distort and transform images."/>
cristy3c98a4f2010-08-13 20:09:41 +000013 <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="magick, vector, graphics, 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"/>
cristy7e41fe82010-12-04 23:12:08 +000022 <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000023 <meta name="Distribution" content="Global"/>
cristydcca3fa2010-12-29 21:50:07 +000024 <link rel="icon" href="../images/wand.png"/>
cristy3c98a4f2010-08-13 20:09:41 +000025 <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"/>
cristy7a40ba82011-01-08 20:31:18 +000027 <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
cristy3c98a4f2010-08-13 20:09:41 +000028 <style type="text/css" media="all">
29 @import url("../www/magick.css");
30 </style>
cristydcca3fa2010-12-29 21:50:07 +000031 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
cristy361f4662010-12-31 23:02:52 +000032 <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>
33 <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />
34 <script type="text/javascript">
35 $(document).ready(function() {
36 $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({
37 'transitionIn' : 'elastic',
38 'transitionOut' : 'elastic',
39 'overlayShow' : false,
40 'opacity' : true
41 });
42 });
43 </script>
cristy3eaa0ef2010-03-06 20:35:26 +000044</head>
45
46<body id="www-imagemagick-org">
47<div class="titlebar">
48<a href="../index.html">
49 <img src="../images/script.png" alt="[ImageMagick]"
50 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
51<a href="http://www.networkredux.com">
52 <img src="../images/networkredux.png" alt="[sponsor]"
cristy52923442011-01-15 22:54:31 +000053 style="margin-top: 42px; border: 0px; float: left;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000054<a href="http://www.imagemagick.org/discourse-server/">
55 <img src="../images/logo.jpg" alt=""
cristy178edaf2011-01-23 03:42:39 +000056 style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000057<a href="../index.html">
58 <img src="../images/sprite.jpg" alt=""
59 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
60</div>
61
cristyce69bb02010-07-27 19:49:46 +000062<div class="westbar">
cristy3eaa0ef2010-03-06 20:35:26 +000063
cristy3ed852e2009-09-05 21:47:34 +000064<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000065 <a title="About ImageMagick" href="../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000066</div>
cristy3eaa0ef2010-03-06 20:35:26 +000067<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000068<div class="menu">
cristybb503372010-05-27 20:51:26 +000069 <a title="Binary Releases" href="../www/binary-releases.html">Binary Releases</a>
70</div>
71<div class="sub">
72 <a title="Binary Release: Unix" href="../www/binary-releases.html#unix">Unix</a>
73</div>
74<div class="sub">
75 <a title="Binary Release: MacOS X" href="../www/binary-releases.html#macosx">Mac OS X</a>
76</div>
77<div class="sub">
78 <a title="Binary Release: Windows" href="../www/binary-releases.html#windows">Windows</a>
79</div>
80<div class="sep"></div>
81<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000082 <a title="Command-line Tools" href="../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +000083</div>
84<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000085 <a title="Command-line Tools: Processing" href="../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +000086</div>
87<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000088 <a title="Command-line Tools: Options" href="../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +000089</div>
90<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000091 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +000092</div>
93<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000094 <a title="Program Interfaces" href="../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +000095</div>
96<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000097 <a title="Program Interface: MagickWand" href="../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +000098</div>
99<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000100 <a title="Program Interface: MagickCore" href="../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000101</div>
102<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000103 <a title="Program Interface: PerlMagick" href="../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000104</div>
105<div class="sub">
cristydcca3fa2010-12-29 21:50:07 +0000106 <a title="Program Interface: Magick++" href="../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000107</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000108<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000109<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000110 <a title="Install from Source" href="../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000111</div>
112<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000113 <a title="Install from Source: Unix" href="../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000114</div>
115<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000116 <a title="Install from Source: Windows" href="../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000117 </div>
118<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000119 <a title="Resources" href="../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000120</div>
cristybb503372010-05-27 20:51:26 +0000121<div class="menu">
122 <a title="Architecture" href="../www/architecture.html">Architecture</a>
123</div>
cristy3ed852e2009-09-05 21:47:34 +0000124<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000125 <a title="Download" href="../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000126</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000127<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000128<div class="menu">
cristy52923442011-01-15 22:54:31 +0000129 <a title="Search" href="../www/search.html">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000130</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000131<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000132<div class="menu">
cristyffb69ed2010-12-25 00:06:48 +0000133 <a title="Site Map" href="../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000134</div>
135<div class="sub">
cristyffb69ed2010-12-25 00:06:48 +0000136 <a title="Site Map: Links" href="../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000137</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000138<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000139<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000140 <a title="Sponsors" href="../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000141
142<div class="sponsbox">
cristy178edaf2011-01-23 03:42:39 +0000143<div class="sponsor">
144 <a title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201106010240 -->
145</div>
cristyec6b4752011-01-08 03:16:23 +0000146<div class="sponsor">
cristy52923442011-01-15 22:54:31 +0000147 <a title="Sponsor: Web Hosting" href="http://www.bodhost.com/hosting.shtml">Web Hosting</a><!-- 201104010090 -->
cristy73fd1cd2010-09-12 19:14:25 +0000148</div>
149<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000150 <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
151</div>
152<div class="sponsor">
cristy851dbce2010-08-06 21:40:00 +0000153 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
154</div>
cristyec6b4752011-01-08 03:16:23 +0000155<div class="sponsor">
cristy178edaf2011-01-23 03:42:39 +0000156 <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
157</div>
158<div class="sponsor">
cristyc7a6e3e2011-01-26 16:54:03 +0000159 <a title="Sponsor: Fernsehdienst Berlin" href="http://www.atlas-multimedia.de">Fernsehdienst Berlin</a><!-- 2011050100025 atlas.multimedia-->
cristyec6b4752011-01-08 03:16:23 +0000160</div>
cristy3ed852e2009-09-05 21:47:34 +0000161</div>
162</div>
cristyce69bb02010-07-27 19:49:46 +0000163</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000164
cristyce69bb02010-07-27 19:49:46 +0000165<div class="eastbar">
166 <script type="text/javascript">
167 <!--
168 google_ad_client = "pub-3129977114552745";
cristyce69bb02010-07-27 19:49:46 +0000169 google_ad_slot = "0574824969";
170 google_ad_width = 160;
171 google_ad_height = 600;
172 //-->
173 </script>
174 <script type="text/javascript"
175 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
176 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000177</div>
178
179<div class="main">
180
181
cristyffb69ed2010-12-25 00:06:48 +0000182<h1>ImageMagick Magick Vector Graphics</h1>
cristy3ed852e2009-09-05 21:47:34 +0000183<p class="navigation-index">[<a href="#intro">Introduction to Vector Graphics</a> &bull; <a href="#overview">MVG Overview</a> &bull; <a href="#primitives">Drawing Primitives</a>]</p>
184
cristydcca3fa2010-12-29 21:50:07 +0000185<a id="intro"></a>
cristy3ed852e2009-09-05 21:47:34 +0000186<div class="doc-section">
187
188<p>This specification defines the features and syntax for Magick Vector Graphics (MVG), a modularized language for describing two-dimensional vector and mixed vector/raster graphics in ImageMagick. You can use the language to draw from the
189command line, from an MVG file, from an <a href="http://www.w3.org/TR/SVG/" >SVG -- Scalable Vector Graphics</a> file or from one of the ImageMagick <a href="../www/api.html">program interfaces</a>. Use this command, for example, to render an arc:</p>
190
191<p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>convert -size 100x60 xc:skyblue -fill white -stroke black \ <br/>
192 -draw "path 'M 30,40 A 30,20 20 0,0 70,20 A 30,20 20 1,0 30,40 Z '" \ <br/>
193 arc.png</span></p>
194<p>and here is the result:</p>
195
196<p class="image">
197 <a href="../images/arc.png"><img src="../images/arc.png" width="100" height="60" alt="arc" /></a>
198</p>
199
200<p>When the drawing gets sufficiently complex, we recommend you assemble the graphic primitives into a MVG file. For our example, we use <a href="../www/source/piechart.mvg">piechart.mvg</a>:</p>
201
202<div class="viewport">
cristy3ed852e2009-09-05 21:47:34 +0000203 push graphic-context
204 viewbox 0 0 624 369
205 affine 0.283636 0 0 0.283846 -0 -0
206 push graphic-context
207 push graphic-context
208 fill 'darkslateblue'
209 stroke 'blue'
210 stroke-width 1
211 rectangle 1,1 2199,1299
212 pop graphic-context
213 push graphic-context
214 font-size 40
215 fill 'white'
216 stroke-width 1
217 text 600,1100 'Average: 20.0'
218 pop graphic-context
219 push graphic-context
220 fill 'red'
221 stroke 'black'
222 stroke-width 5
223 path 'M700.0,600.0 L340.0,600.0 A360.0,360.0 0 0,1 408.1452123287954,389.2376150414973 z'
224 pop graphic-context
225 push graphic-context
226 font-size 40
227 fill 'white'
228 stroke-width 1
229 text 1400,140 'MagickWand for PHP'
230 pop graphic-context
231 push graphic-context
232 font-size 30
233 fill 'white'
234 stroke-width 1
235 text 1800,140 '(10.0%)'
236 pop graphic-context
237 push graphic-context
238 fill 'red'
239 stroke 'black'
240 stroke-width 4
241 rectangle 1330,100 1370,140
242 pop graphic-context
243 push graphic-context
244 fill 'yellow'
245 stroke 'black'
246 stroke-width 5
247 path 'M700.0,600.0 L408.1452123287954,389.2376150414973 A360.0,360.0 0 0,1 976.5894480359858,369.56936567559273 z'
248 pop graphic-context
249 push graphic-context
250 font-size 40
251 fill 'white'
252 stroke-width 1
253 text 1400,220 'MagickCore'
254 pop graphic-context
255 push graphic-context
256 font-size 30
257 fill 'white'
258 stroke-width 1
259 text 1800,220 '(29.0%)'
260 pop graphic-context
261 push graphic-context
262 fill 'yellow'
263 stroke 'black'
264 stroke-width 4
265 rectangle 1330,180 1370,220
266 pop graphic-context
267 push graphic-context
268 fill 'fuchsia'
269 stroke 'black'
270 stroke-width 5
271 path 'M700.0,600.0 L976.5894480359858,369.56936567559273 A360.0,360.0 0 0,1 964.2680466142854,844.4634932636567 z'
272 pop graphic-context
273 push graphic-context
274 font-size 40
275 fill 'white'
276 stroke-width 1
277 text 1400,300 'MagickWand'
278 pop graphic-context
279 push graphic-context
280 font-size 30
281 fill 'white'
282 stroke-width 1
283 text 1800,300 '(22.9%)'
284 pop graphic-context
285 push graphic-context
286 fill 'fuchsia'
287 stroke 'black'
288 stroke-width 4
289 rectangle 1330,260 1370,300
290 pop graphic-context
291 push graphic-context
292 fill 'blue'
293 stroke 'black'
294 stroke-width 5
295 path 'M700.0,600.0 L964.2680466142854,844.4634932636567 A360.0,360.0 0 0,1 757.853099990584,955.3210081341651 z'
296 pop graphic-context
297 push graphic-context
298 font-size 40
299 fill 'white'
300 stroke-width 1
301 text 1400,380 'JMagick'
302 pop graphic-context
303 push graphic-context
304 font-size 30
305 fill 'white'
306 stroke-width 1
307 text 1800,380 '(10.6%)'
308 pop graphic-context
309 push graphic-context
310 fill 'blue'
311 stroke 'black'
312 stroke-width 4
313 rectangle 1330,340 1370,380
314 pop graphic-context
315 push graphic-context
316 fill 'lime'
317 stroke 'black'
318 stroke-width 5
319 path 'M700.0,600.0 L757.853099990584,955.3210081341651 A360.0,360.0 0 0,1 340.0,600.0 z'
320 pop graphic-context
321 push graphic-context
322 font-size 40
323 fill 'white'
324 stroke-width 1
325 text 1400,460 'Magick++'
326 pop graphic-context
327 push graphic-context
328 font-size 30
329 fill 'white'
330 stroke-width 1
331 text 1800,460 '(27.5%)'
332 pop graphic-context
333 push graphic-context
334 fill 'lime'
335 stroke 'black'
336 stroke-width 4
337 rectangle 1330,420 1370,460
338 pop graphic-context
339 push graphic-context
340 font-size 100
341 fill 'white'
342 stroke-width 1
343 text 100,150 'ImageMagick'
344 pop graphic-context
345 push graphic-context
346 fill 'none'
347 stroke 'black'
348 stroke-width 5
349 circle 700,600 700,960
350 pop graphic-context
351 pop graphic-context
352 pop graphic-context
cristy3ed852e2009-09-05 21:47:34 +0000353</div>
354
355<p>to render a pie chart with this command:</p>
356
357<p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>convert piechart.mvg piechart.png</span></p>
358<p>which produces this rendering:</p>
359
360<p class="image">
361 <a href="../images/piechart.png"><img src="../images/piechart.png" width="624" height="369" alt="piechart" /></a>
362</p>
363
364<p>However, in general, MVG is sufficiently difficult to work with that you probably want to use a program to generate your graphics in the SVG format. ImageMagick automagically converts SVG to MVG and renders your image, for example, we render <a href="../www/source/piechart.svg">piechart.svg</a> with this command:</p>
365
366<p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>convert piechart.svg piechart.jpg</span></p>
367
368<p>to produce the same pie chart we created with the MVG language.</p>
369
370<p>Drawing is available from many of the ImageMagick <a href="../www/api.html">program interfaces</a> as well. ImageMagick converts the drawing API calls to MVG and renders it. Here is example code written in the <a href="../www/magick-wand.html">MagickWand</a> language: </p>
371
372<div class="viewport">
cristy3ed852e2009-09-05 21:47:34 +0000373 (void) PushDrawingWand(draw_wand);
374 {
375 const PointInfo points[6] =
376 {
377 { 180,504 },
378 { 282.7,578.6 },
379 { 243.5,699.4 },
380 { 116.5,699.4 },
381 { 77.26,578.6 },
382 { 180,504 }
383 };
384
385 DrawSetStrokeAntialias(draw_wand,True);
386 DrawSetStrokeWidth(draw_wand,9);
387 DrawSetStrokeLineCap(draw_wand,RoundCap);
388 DrawSetStrokeLineJoin(draw_wand,RoundJoin);
389 (void) DrawSetStrokeDashArray(draw_wand,0,(const double *)NULL);
390 (void) PixelSetColor(color,"#4000c2");
391 DrawSetStrokeColor(draw_wand,color);
392 DrawSetFillRule(draw_wand,EvenOddRule);
393 (void) PixelSetColor(color,"#800000");
394 DrawSetFillColor(draw_wand,color);
395 DrawPolygon(draw_wand,6,points);
396 }
397 (void) PopDrawingWand(draw_wand);
cristy3ed852e2009-09-05 21:47:34 +0000398</div>
399
400</div>
401
cristydcca3fa2010-12-29 21:50:07 +0000402<h2><a id="overview"></a>MVG Overview</h2>
cristy3ed852e2009-09-05 21:47:34 +0000403<div class="doc-section">
404
405<p>MVG ignores all white-space between commands. This allows multiple MVG commands per line. It is common convention to terminate each MVG command with a new line to make MVG easier to edit and read. This syntax description uses indentation in MVG sequences to aid with understanding. Indentation is supported but is not required.</p>
406
407<p>Metafile wrapper syntax (to support stand-alone MVG files):</p>
408
409<pre class="text">
410 push graphic-context
411 viewbox 0 0 width height
412 [ any other MVG commands ]
413 pop graphic-context
414</pre>
415
416<p>Pattern syntax (saving and restoring context):</p>
417
418<pre class="text">
419 push pattern id x,y width,height
420 push graphic-context
421 [ drawing commands ]
422 pop graphic-context
423 pop pattern
424</pre>
425
426<p>an example is (%s is a identifier string):</p>
427
428<pre class="text">
429 push defs
430 push pattern %s 10,10 20,20
431 push graphic-context
432 fill red
433 rectangle 5,5 15,15
434 pop graphic-context
435 push graphic-context
436 fill green
437 rectangle 10,10 20,20
438 pop graphic-context
439 pop pattern
440 pop defs
441</pre>
442
443<p>For image tiling use:</p>
444
445<pre class="text">
446 push pattern id x,y width,height
447 image Copy ...
448 pop pattern
449</pre>
450
451<p>Note you can use the pattern for either the fill or stroke like:</p>
452
453<pre class="text">
454 stroke url(#%s)
455</pre>
456
457<p>or</p>
458
459<pre class="text">
460 fill url(#%s)
461</pre>
462
463<p>The clip path defines a clipping area, where only the contained area to be drawn upon. Areas outside of the clipping areare masked.</p>
464
465<pre class="text">
466 push defs
467 push clip-path %s
468 push graphic-context
469 rectangle 10,10 20,20
470 pop graphic-context
471 pop clip-path
472 pop defs
473 clip-path url(#%s)
474</pre>
475
476</div>
477
cristydcca3fa2010-12-29 21:50:07 +0000478<h2><a id="primitives"></a>Drawing Primitives</h2>
cristy3ed852e2009-09-05 21:47:34 +0000479<div class="doc-section">
480
481<p>Here is a complete description of the MVG drawing primitives:</p>
482
483<dl class="doc">
484
cristydcca3fa2010-12-29 21:50:07 +0000485 <dt class="doc"><a id="affine" id="affine"></a>affine <em class="option">s<sub>x</sub></em>,<em class="option">r<sub>x</sub></em>,<em class="option">r<sub>y</sub></em>,<em class="option">s<sub>y</sub></em>,<em class="option">t<sub>x</sub></em>,<em class="option">t<sub>y</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000486
487 <dd></dd>
488
489
490
cristydcca3fa2010-12-29 21:50:07 +0000491 <dt class="doc"><a id="arc" id="arc"></a>arc <em class="option">x<sub>0</sub></em>,<em class="option">y<sub>0</sub></em>&nbsp; &nbsp;<em class="option">x<sub>1</sub></em>,<em class="option">y<sub>1</sub></em>&nbsp; &nbsp;<em class="option">a<sub>0</sub></em>,<em class="option">a<sub>1</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000492
493 <dd></dd>
494
cristydcca3fa2010-12-29 21:50:07 +0000495 <dt class="doc"><a id="bezier" id="bezier"></a>bezier <em class="option">x<sub>0</sub></em>,<em class="option">y<sub>0</sub></em> ... <em class="option">x<sub>n</sub></em>,<em class="option">y<sub>n</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000496
497 <dd>
498 <p><kbd>Bezier</kbd> (spline) requires three or more x,y coordinates to define its shape. The first and last points are the knots (preserved coordinates) and any intermediate coordinates are the control points. If two control points are specified, the line between each end knot and its sequentially respective control point determines the tangent direction of the curve at that end. If one control point is specified, the lines from the end knots to the one control point determines the tangent directions of the curve at each end. If more than two control points are specified, then the additional control points act in combination to determine the intermediate shape of the curve. In order to
499 draw complex curves, it is highly recommended either to use the <kbd>Path</kbd> primitive or to draw multiple four-point bezier segments with the start and end knots of each successive segment repeated.</p>
500 </dd>
501
cristydcca3fa2010-12-29 21:50:07 +0000502 <dt class="doc"><a id="border-color" id="border-color"></a>border-color <em class="option">color</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000503
504 <dd></dd>
505
cristydcca3fa2010-12-29 21:50:07 +0000506 <dt class="doc"><a id="circle" id="circle"></a>circle <em class="option">origin<sub>x</sub></em>,<em class="option">origin<sub>y</sub></em>&nbsp; &nbsp;<em class="option">perimeter<sub>x</sub></em>,<em class="option">perimeter<sub>y</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000507
508 <dd></dd>
509
cristydcca3fa2010-12-29 21:50:07 +0000510 <dt class="doc"><a id="clip-path" id="clip-path"></a>clip-path url(<em class="option">name</em>)</dt>
cristy3ed852e2009-09-05 21:47:34 +0000511
512 <dd></dd>
513
cristydcca3fa2010-12-29 21:50:07 +0000514 <dt class="doc"><a id="clip-rule" id="clip-rule"></a>clip-rule <em class="option">rule</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000515
516 <dd>Choose from these rule types:
517
518 <p class="text">
519 evenodd <br/>
520 nonzero
521 </p>
522 </dd>
523
cristydcca3fa2010-12-29 21:50:07 +0000524 <dt class="doc"><a id="clip-units" id="clip-units"></a>clip-units <em class="option">units</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000525
526 <dd>Choose from these unit types:
527
528 <p class="text">
529 userSpace <br/>
530 userSpaceOnUse <br/>
531 objectBoundingBox <br/>
532 </p>
533 </dd>
534
cristydcca3fa2010-12-29 21:50:07 +0000535 <dt class="doc"><a id="color" id="color"></a>color <em class="option">x</em>,<em class="option">y</em> <em class="option">method</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000536
537
538
539
540
541
542
543
544
545
546
547<dd>Choose from these method types:
548
549<pre class="text">
550 point
551 replace
552 floodfill
553 filltoborder
554 reset
555</pre>
556
557</dd>
558
cristydcca3fa2010-12-29 21:50:07 +0000559 <dt class="doc"><a id="decorate" id="decorate"></a>decorate <em class="option">type</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000560
561
562<dd>Choose from these types of decorations:
563
564<pre class="text">
565 none
566 line-through
567 overline
568 underline
569</pre>
570
571</dd>
572
cristydcca3fa2010-12-29 21:50:07 +0000573 <dt class="doc"><a id="ellipse" id="ellipse"></a>ellipse <em class="option">center<sub>x</sub></em>,<em class="option">center<sub>y</sub></em>&nbsp; &nbsp;<em class="option">radius<sub>x</sub></em>,<em class="option">radius<sub>y</sub></em>&nbsp; &nbsp;<em class="option">arc<sub>start</sub></em>,<em class="option">arc<sub>stop</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000574
cristydcca3fa2010-12-29 21:50:07 +0000575 <dt class="doc"><a id="fill" id="fill"></a>fill <em class="option">color</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000576
577<dd>Choose from any of these <a href="../www/color.html">colors</a>.
578</dd>
579
cristydcca3fa2010-12-29 21:50:07 +0000580 <dt class="doc"><a id="fill-opacity" id="fill-opacity"></a>fill-opacity <em class="option">opacity</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000581
582
583<dd>The opacity ranges from 0.0 (fully transparent) to 1.0 (fully opaque) or as a percentage (e.g. 50%).
584</dd>
585
cristydcca3fa2010-12-29 21:50:07 +0000586 <dt class="doc"><a id="fill-rule" id="fill-rule"></a>fill-rule <em class="option">rule</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000587
588
589<dd>Choose from these rule types:
590
591<pre class="text">
592 evenodd
593 nonzero
594</pre>
595
596</dd>
597
cristydcca3fa2010-12-29 21:50:07 +0000598 <dt class="doc"><a id="font" id="font"></a>font <em class="option">name</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000599
600<dd></dd>
601
cristydcca3fa2010-12-29 21:50:07 +0000602 <dt class="doc"><a id="font-family" id="font-family"></a>font-family <em class="option">family</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000603
604<dd></dd>
605
cristydcca3fa2010-12-29 21:50:07 +0000606 <dt class="doc"><a id="font-size" id="font-size"></a>font-size <em class="option">point-size</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000607
608<dd></dd>
609
cristydcca3fa2010-12-29 21:50:07 +0000610 <dt class="doc"><a id="font-stretch" id="font-stretch"></a>font-stretch <em class="option">type</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000611
612<dd>Choose from these stretch types:
613
614<pre class="text">
615 all
616 normal
617 ultra-condensed
618 extra-condensed
619 condensed
620 semi-condensed
621 semi-expanded
622 expanded
623 extra-expanded
624 ultra-expanded
625</pre>
626
627</dd>
628
cristydcca3fa2010-12-29 21:50:07 +0000629 <dt class="doc"><a id="font-style" id="font-style"></a>font-style <em class="option">style</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000630
631
632<dd>Choose from these styles:
633
634<pre class="text">
635 all
636 normal
637 italic
638 oblique
639</pre>
640
641</dd>
642
cristydcca3fa2010-12-29 21:50:07 +0000643 <dt class="doc"><a id="font-weight" id="font-weight"></a>font-weight <em class="option">weight</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000644
645<dd>Choose from these weights:
646
647<pre class="text">
648 all
649 normal
650 bold
651 100
652 200
653 300
654 400
655 500
656 600
657 700
658 800
659 900
660</pre>
661
662</dd>
663
cristydcca3fa2010-12-29 21:50:07 +0000664 <dt class="doc"><a id="gradient-units" id="gradient-units"></a>gradient-units <em class="option">units</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000665
666<dd>Choose from these units:
667
668<pre class="text">
669 userSpace
670 userSpaceOnUse
671 objectBoundingBox
672</pre>
673
674</dd>
675
cristydcca3fa2010-12-29 21:50:07 +0000676 <dt class="doc"><a id="gravity" id="gravity"></a>gravity <em class="option">type</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000677
678<dd>Choose from these gravity types:
679
680<pre class="text">
681 NorthWest
682 North
683 NorthEast
684 West
685 Center
686 East
687 SouthWest
688 South
689 SouthEast
690</pre>
691
692</dd>
693
cristydcca3fa2010-12-29 21:50:07 +0000694 <dt class="doc"><a id="image" id="image"></a>image <em class="option">compose x,y width,height 'filename'</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000695
696<dd>Choose from these compose operations:
697
698<table id="table" cellpadding="2" cellspacing="0" style="width: 93%">
699 <tbody>
700 <tr valign="top">
701 <th align="left" style="width: 8%">Method</th>
702 <th align="left">Description</th>
703 </tr>
704
705 <tr valign="top">
706 <td valign="top">clear</td>
707 <td valign="top">Both the color and the alpha of the destination are cleared. Neither the source nor the destination are used as input.</td>
708 </tr>
709
710 <tr valign="top">
711 <td valign="top">src</td>
712 <td valign="top">The source is copied to the destination. The destination is not used as input.</td>
713 </tr>
714
715 <tr valign="top">
716 <td valign="top">dst</td>
717 <td valign="top">The destination is left untouched.</td>
718 </tr>
719
720 <tr valign="top">
721 <td valign="top"><b>src-over</b></td>
722 <td valign="top">The source is composited over the destination.</td>
723 </tr>
724
725 <tr valign="top">
726 <td valign="top">dst-over</td>
727 <td valign="top">The destination is composited over the source and the result replaces the destination.</td>
728 </tr>
729
730 <tr valign="top">
731 <td valign="top">src-in</td>
732 <td valign="top">The part of the source lying inside of the destination replaces the destination.</td>
733 </tr>
734
735 <tr valign="top">
736 <td valign="top">dst-in</td>
737 <td valign="top">The part of the destination lying inside of the source replaces the destination.</td>
738 </tr>
739
740 <tr valign="top">
741 <td valign="top">src-out</td>
742 <td valign="top">The part of the source lying outside of the destination replaces the destination.</td>
743 </tr>
744
745 <tr valign="top">
746 <td valign="top">dst-out</td>
747 <td valign="top">The part of the destination lying outside of the source replaces the destination.</td>
748 </tr>
749
750 <tr valign="top">
751 <td valign="top">src-atop</td>
752 <td valign="top">The part of the source lying inside of the destination is composited onto the destination.</td>
753 </tr>
754
755 <tr valign="top">
756 <td valign="top">dst-atop</td>
757 <td valign="top">The part of the destination lying inside of the source is composited over the source and replaces the destination.</td>
758 </tr>
759
760 <tr valign="top">
761 <td valign="top">multiply</td>
762 <td valign="top">The source is multiplied by the destination and replaces the destination. The resultant color is always at least as dark as either of the two constituent colors. Multiplying any color with black produces black. Multiplying any color with white leaves the original color unchanged.</td>
763 </tr>
764
765 <tr valign="top">
766 <td valign="top">screen</td>
767 <td valign="top">The source and destination are complemented and then multiplied and then replace the destination. The resultant color is always at least as light as either of the two constituent colors. Screening any color with white produces white. Screening any color with black leaves the original color unchanged.</td>
768 </tr>
769
770 <tr valign="top">
771 <td valign="top">overlay</td>
772 <td valign="top">Multiplies or screens the colors, dependent on the destination color. Source colors overlay the destination whilst preserving its highlights and shadows. The destination color is not replaced, but is mixed with the source color to reflect the lightness or darkness of the destination.</td>
773 </tr>
774
775 <tr valign="top">
776 <td valign="top">darken</td>
777 <td valign="top">Selects the darker of the destination and source colors. The destination is replaced with the source when the source is darker, otherwise it is left unchanged.</td>
778 </tr>
779
780 <tr valign="top">
781 <td valign="top">lighten</td>
782 <td valign="top">Selects the lighter of the destination and source colors. The destination is replaced with the source when the source is lighter, otherwise it is left unchanged.</td>
783 </tr>
784
785 <tr valign="top">
786 <td valign="top">linear-light</td>
787 <td valign="top">Increase contrast slightly with an impact on the foreground's tonal values.</td>
788 </tr>
789
790 <tr valign="top">
791 <td valign="top">color-dodge</td>
792 <td valign="top">Brightens the destination color to reflect the source color. Painting with black produces no change.</td>
793 </tr>
794
795 <tr valign="top">
796 <td valign="top">color-burn</td>
797 <td valign="top">Darkens the destination color to reflect the source color. Painting with white produces no change.</td>
798 </tr>
799
800 <tr valign="top">
801 <td valign="top">hard-light</td>
802 <td valign="top">Multiplies or screens the colors, dependent on the source color value. If the source color is lighter than 0.5, the destination is lightened as if it were screened. If the source color is darker than 0.5, the destination is darkened, as if it were multiplied. The degree of lightening or darkening is proportional to the difference between the source color and 0.5. If it is equal to 0.5 the destination is unchanged. Painting with pure black or white produces black or white.</td>
803 </tr>
804
805 <tr valign="top">
806 <td valign="top">soft-light</td>
807 <td valign="top">Darkens or lightens the colors, dependent on the source color value. If the source color is lighter than 0.5, the destination is lightened. If the source color is darker than 0.5, the destination is darkened, as if it were burned in. The degree of darkening or lightening is proportional to the difference between the source color and 0.5. If it is equal to 0.5, the destination is unchanged. Painting with pure black or white produces a distinctly darker or lighter area, but does not result in pure black or white.</td>
808 </tr>
809
810 <tr valign="top">
811 <td valign="top">plus</td>
812 <td valign="top">The source is added to the destination and replaces the destination. This operator is useful for animating a dissolve between two images.</td>
813 </tr>
814
815 <tr valign="top">
816 <td valign="top">add</td>
817 <td valign="top">As per 'plus' but transparency data is treated as matte
818 values. As such any transparent areas in either image remain
819 transparent. </td>
820 </tr>
821
822 <tr valign="top">
823 <td valign="top">minus</td>
824 <td valign="top">Subtract the colors in the source image from the
825 destination image. When transparency is involved, Opaque areas will be
826 subtracted from any destination opaque areas. </td>
827 </tr>
828
829 <tr valign="top">
830 <td valign="top">subtract</td>
831 <td valign="top">Subtract the colors in the source image from the
832 destination image. When transparency is involved transparent areas are
833 subtracted, so only the opaque areas in the source remain opaque in
834 the destination image. </td>
835 </tr>
836
837 <tr valign="top">
838 <td valign="top">difference</td>
839 <td valign="top">Subtracts the darker of the two constituent colors from the lighter. Painting with white inverts the destination color. Painting with black produces no change.</td>
840 </tr>
841
842 <tr valign="top">
843 <td valign="top">exclusion</td>
844 <td valign="top">Produces an effect similar to that of 'difference', but appears as lower contrast. Painting with white inverts the destination color. Painting with black produces no change.</td>
845 </tr>
846
847 <tr valign="top">
848 <td valign="top">xor</td>
849 <td valign="top">The part of the source that lies outside of the destination is combined with the part of the destination that lies outside of the source.</td>
850 </tr>
851
852 <tr valign="top">
853 <td valign="top">copy-*</td>
854 <td valign="top">Copy the specificed channel in the source image to the
855 same channel in the destination image. If the channel specified in
856 the source image does not exist, (which can only happen for methods,
857 '<kbd>copy-opacity</kbd>' or '<kbd>copy-black</kbd>') then it is
858 assumed that the source image is a special grayscale channel image
859 of the values to be copied. </td>
860 </tr>
861
862 <tr valign="top">
863 <td valign="top">change-mask</td>
864 <td valign="top">Replace any destination pixel that is the similar to the source images pixel (as defined by the current <a href="#fuzz">-fuzz</a> factor), with transparency. </td>
865 </tr>
866 </tbody>
867</table>
868
869</dd>
870
cristydcca3fa2010-12-29 21:50:07 +0000871 <dt class="doc"><a id="interline-spacing" id="interline-spacing"></a>interline-spacing <em class="option">pixels</em></dt>
cristyf3bb4782009-09-08 13:10:04 +0000872
873 <dd></dd>
874
cristydcca3fa2010-12-29 21:50:07 +0000875 <dt class="doc"><a id="interword-spacing" id="interword-spacing"></a>interword-spacing <em class="option">pixels</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000876
877 <dd></dd>
878
cristydcca3fa2010-12-29 21:50:07 +0000879 <dt class="doc"><a id="kerning" id="kerning"></a>kerning <em class="option">pixels</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000880
881 <dd></dd>
882
cristydcca3fa2010-12-29 21:50:07 +0000883 <dt class="doc"><a id="line" id="line"></a>line <em class="option">x,y x<sub>1</sub>,y<sub>1</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000884
885 <dd></dd>
886
cristydcca3fa2010-12-29 21:50:07 +0000887 <dt class="doc"><a id="matte" id="matte"></a>matte <em class="option">x,y method</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000888
889<dd>Choose from these methods:
890
891<pre class="text">
892 point
893 replace
894 floodfill
895 filltoborder
896 reset
897</pre>
898
899</dd>
900
cristydcca3fa2010-12-29 21:50:07 +0000901 <dt class="doc"><a id="offset" id="offset"></a>offset <em class="option">offset</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000902
903 <dd></dd>
904
cristydcca3fa2010-12-29 21:50:07 +0000905 <dt class="doc"><a id="opacity" id="opacity"></a>opacity <em class="option">opacity</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000906
907<dd>Use percent (e.g. 50%).</dd>
908
cristydcca3fa2010-12-29 21:50:07 +0000909 <dt class="doc"><a id="path" id="path"></a>path <em class="option">path</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000910
911 <dd></dd>
912
cristydcca3fa2010-12-29 21:50:07 +0000913 <dt class="doc"><a id="point" id="point"></a>point <em class="option">x,y</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000914
915 <dd></dd>
916
cristydcca3fa2010-12-29 21:50:07 +0000917 <dt class="doc"><a id="polygon" id="polygon"></a>polygon <em class="option">x,y x<sub>1</sub>,y<sub>1</sub>, ..., x<sub>n</sub>,y<sub>n</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000918
919 <dd></dd>
920
cristydcca3fa2010-12-29 21:50:07 +0000921 <dt class="doc"><a id="polyline" id="polyline"></a>polyline <em class="option">x,y x<sub>1</sub>,y<sub>1</sub>, ..., x<sub>n</sub>,y<sub>n</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000922
923 <dd></dd>
924
cristydcca3fa2010-12-29 21:50:07 +0000925 <dt class="doc"><a id="pop-clip-path" id="pop-clip-path"></a>pop clip-path</dt>
cristy3ed852e2009-09-05 21:47:34 +0000926
927 <dd></dd>
928
cristydcca3fa2010-12-29 21:50:07 +0000929 <dt class="doc"><a id="pop-defs" id="pop-defs"></a>pop defs</dt>
cristy3ed852e2009-09-05 21:47:34 +0000930
931 <dd></dd>
932
cristydcca3fa2010-12-29 21:50:07 +0000933 <dt class="doc"><a id="pop-gradient" id="pop-gradient"></a>pop gradient</dt>
cristy3ed852e2009-09-05 21:47:34 +0000934
935 <dd></dd>
936
cristydcca3fa2010-12-29 21:50:07 +0000937 <dt class="doc"><a id="pop-graphic-context" id="pop-graphic-context"></a>pop graphic-context</dt>
cristy3ed852e2009-09-05 21:47:34 +0000938
939 <dd></dd>
940
cristydcca3fa2010-12-29 21:50:07 +0000941 <dt class="doc"><a id="pop-pattern" id="pop-pattern"></a>pop pattern</dt>
cristy3ed852e2009-09-05 21:47:34 +0000942
943 <dd></dd>
944
cristydcca3fa2010-12-29 21:50:07 +0000945 <dt class="doc"><a id="push" id="push"></a>push clip-path <em class="option">name</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000946
947 <dd></dd>
948
cristydcca3fa2010-12-29 21:50:07 +0000949 <dt class="doc"><a id="push-defs" id="push-defs"></a>push defs</dt>
cristy3ed852e2009-09-05 21:47:34 +0000950
951 <dd></dd>
952
cristydcca3fa2010-12-29 21:50:07 +0000953 <dt class="doc"><a id="push-gradient-linear" id="push-gradient-linear"></a>push gradient <em class="option">id linear x,y x<sub>1</sub>,y<sub>1</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000954
955 <dd></dd>
956
cristydcca3fa2010-12-29 21:50:07 +0000957 <dt class="doc"><a id="push-gradient-radial" id="push-gradient-radial"></a>push gradient <em class="option">id radial x<sub>c</sub>,c<sub>y</sub> x<sub>f</sub>,y<sub>f</sub> radius</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000958
959 <dd></dd>
960
cristydcca3fa2010-12-29 21:50:07 +0000961 <dt class="doc"><a id="push-graphic-context" id="push-graphic-context"></a>push graphic-context</dt>
cristy3ed852e2009-09-05 21:47:34 +0000962
963 <dd></dd>
964
cristydcca3fa2010-12-29 21:50:07 +0000965 <dt class="doc"><a id="push-pattern" id="push-pattern"></a>push pattern <em class="option">id radial x,y width,height</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000966
967 <dd></dd>
968
cristydcca3fa2010-12-29 21:50:07 +0000969 <dt class="doc"><a id="rectangle" id="rectangle"></a>rectangle <em class="option">x,y x<sub>1</sub>,y<sub>1</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000970
971 <dd></dd>
972
cristydcca3fa2010-12-29 21:50:07 +0000973 <dt class="doc"><a id="rotate" id="rotate"></a>rotate <em class="option">angle</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000974
975 <dd></dd>
976
cristydcca3fa2010-12-29 21:50:07 +0000977 <dt class="doc"><a id="roundrectangle" id="roundrectangle"></a>roundrectangle <em class="option">x,y x<sub>1</sub>,y<sub>1</sub> width,height</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000978
979 <dd></dd>
980
cristydcca3fa2010-12-29 21:50:07 +0000981 <dt class="doc"><a id="scale" id="scale"></a>scale <em class="option">x,y</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000982
983 <dd></dd>
984
cristydcca3fa2010-12-29 21:50:07 +0000985 <dt class="doc"><a id="skewX" id="skewX"></a>skewX <em class="option">angle</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000986
987 <dd></dd>
988
cristydcca3fa2010-12-29 21:50:07 +0000989 <dt class="doc"><a id="skewY" id="skewY"></a>skewX <em class="option">angle</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000990
991 <dd></dd>
992
cristydcca3fa2010-12-29 21:50:07 +0000993 <dt class="doc"><a id="stop-color" id="stop-color"></a>stop-color <em class="option">color offset</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000994
995 <dd></dd>
996
cristydcca3fa2010-12-29 21:50:07 +0000997 <dt class="doc"><a id="stroke" id="stroke"></a>stroke <em class="option">color</em></dt>
cristy3ed852e2009-09-05 21:47:34 +0000998
999 <dd></dd>
1000
cristydcca3fa2010-12-29 21:50:07 +00001001 <dt class="doc"><a id="stroke-antialias" id="stroke-antialias"></a>stroke-antialias <em class="option">0 &bull; 1</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001002
1003 <dd></dd>
1004
cristydcca3fa2010-12-29 21:50:07 +00001005 <dt class="doc"><a id="stroke-dasharray" id="stroke-dasharray"></a>stroke-dasharray <em class="option">none &bull; numeric-list</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001006
1007 <dd></dd>
1008
cristydcca3fa2010-12-29 21:50:07 +00001009 <dt class="doc"><a id="stroke-dashoffset" id="stroke-dashoffset"></a>stroke-dashoffset <em class="option">offset</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001010
1011 <dd></dd>
1012
cristydcca3fa2010-12-29 21:50:07 +00001013 <dt class="doc"><a id="stroke-linecap" id="stroke-linecap"></a>stroke-linecap <em class="option">type</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001014
1015
1016 <dd>Choose from these cap types:
1017
1018<pre class="text">
1019 butt
1020 round
1021 square
1022</pre>
1023
1024 </dd>
1025
cristydcca3fa2010-12-29 21:50:07 +00001026 <dt class="doc"><a id="stroke-linejoin" id="stroke-linejoin"></a>stroke-linejoin <em class="option">type</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001027
1028 <dd>Choose from these join types:
1029
1030<pre class="text">
1031 bevel
1032 miter
1033 round
1034</pre>
1035
1036 </dd>
1037
cristydcca3fa2010-12-29 21:50:07 +00001038 <dt class="doc"><a id="stroke-miterlimit" id="stroke-miterlimit"></a>stroke-miterlimit <em class="option">limit</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001039
1040 <dd></dd>
1041
cristydcca3fa2010-12-29 21:50:07 +00001042 <dt class="doc"><a id="stroke-opacity" id="stroke-opacity"></a>stroke-opacity <em class="option">opacity</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001043
1044 <dd>The opacity ranges from 0.0 (fully transparent) to 1.0 (fully opaque) or as a percentage (e.g. 50%).
1045 </dd>
1046
cristydcca3fa2010-12-29 21:50:07 +00001047 <dt class="doc"><a id="stroke-width" id="stroke-width"></a>stroke-width <em class="option">width</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001048
1049 <dd></dd>
1050
cristydcca3fa2010-12-29 21:50:07 +00001051 <dt class="doc"><a id="text" id="text"></a>text <em class="option">"text"</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001052
1053 <dd></dd>
1054
cristydcca3fa2010-12-29 21:50:07 +00001055 <dt class="doc"><a id="text-antialias" id="text-antialias"></a>text-antialias <em class="option">0 &bull; 1</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001056
1057 <dd></dd>
1058
cristydcca3fa2010-12-29 21:50:07 +00001059 <dt class="doc"><a id="text-undercolor" id="text-undercolor"></a>text-undercolor <em class="option">color</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001060
1061 <dd></dd>
1062
cristydcca3fa2010-12-29 21:50:07 +00001063 <dt class="doc"><a id="translate" id="translate"></a>translate <em class="option">x,y</em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001064
1065 <dd></dd>
1066
cristydcca3fa2010-12-29 21:50:07 +00001067 <dt class="doc"><a id="viewbox" id="viewbox"></a>viewbox <em class="option">x,y x<sub>1</sub>,y<sub>1</sub></em></dt>
cristy3ed852e2009-09-05 21:47:34 +00001068
1069 <dd></dd>
1070
1071</dl>
1072
1073</div>
1074
1075
cristy3eaa0ef2010-03-06 20:35:26 +00001076
1077</div>
1078
1079<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +00001080 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001081 <span id="linkbar-center">
1082 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +00001083 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +00001084 </span>
1085 <span id="linkbar-east">&nbsp;</span>
1086 </div>
1087 <div class="footer">
cristy7e41fe82010-12-04 23:12:08 +00001088 <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001089 <span id="footer-east"> <a href="http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
1090 </div>
1091 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +00001092 <script type="text/javascript">
1093 var _gaq = _gaq || [];
1094 _gaq.push(['_setAccount', 'UA-17690367-1']);
1095 _gaq.push(['_trackPageview']);
1096
1097 (function() {
1098 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
1099 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
1100 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
1101 })();
1102 </script>
cristy3eaa0ef2010-03-06 20:35:26 +00001103</body>
1104</html>