]> granicus.if.org Git - imagemagick/blob - www/conjure.html
(no commit message)
[imagemagick] / www / conjure.html
1 \r
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" \r
3   "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
4 <html version="-//W3C//DTD XHTML 1.1//EN"\r
5       xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"\r
6       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\r
7       xsi:schemaLocation="http://www.w3.org/1999/xhtml\r
8                           http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">\r
9 <head>\r
10   <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>\r
11   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>\r
12   <title>ImageMagick: Command-line Tools: Conjure</title>
13   <meta http-equiv="Content-Language" content="en-US"/>
14   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16   <meta name="Application-name" content="ImageMagick"/>
17   <meta name="Description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats.  In addition resize, rotate, shear, distort and transform images."/>
18   <meta name="Application-url" content="http://www.imagemagick.org"/>
19   <meta name="Generator" content="PHP"/>
20   <meta name="Keywords" content="command-line, tools:, conjure, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
21   <meta name="Rating" content="GENERAL"/>
22   <meta name="Robots" content="INDEX, FOLLOW"/>
23   <meta name="Generator" content="ImageMagick Studio LLC"/>
24   <meta name="Author" content="ImageMagick Studio LLC"/>
25   <meta name="Revisit-after" content="2 DAYS"/>
26   <meta name="Resource-type" content="document"/>
27   <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
28   <meta name="Distribution" content="Global"/>
29   <link rel="icon" href="../images/wand.png"/>
30   <link rel="shortcut icon" href="../images/wand.ico"  type="images/x-icon"/>
31   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>\r
32   <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />\r
33   <style type="text/css" media="all">\r
34     @import url("../www/magick.css");\r
35   </style>\r
36   <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>\r
37   <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>\r
38   <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />\r
39   <script type="text/javascript">\r
40     $(document).ready(function() {\r
41       $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({\r
42         'transitionIn'  : 'elastic',\r
43         'transitionOut' : 'elastic',\r
44         'overlayShow'   : false,\r
45         'opacity'       : true\r
46       });\r
47     });\r
48   </script>\r
49 </head>\r
50 \r
51 <body id="www-imagemagick-org">\r
52 <div class="titlebar">\r
53 <div style="margin: 17px auto; float: left;">\r
54   <script type="text/javascript">\r
55   <!--\r
56     google_ad_client = "pub-3129977114552745";\r
57     google_ad_slot = "5439289906";\r
58     google_ad_width = 728;\r
59     google_ad_height = 90;\r
60   //-->\r
61   </script>\r
62   <script type="text/javascript"\r
63     src="http://pagead2.googlesyndication.com/pagead/show_ads.js">\r
64   </script>\r
65 </div>\r
66 <a href="http://www.imagemagick.org/discourse-server/">\r
67   <img src="../images/logo.jpg"\r
68   alt="ImageMagick Logo"\r
69   style="width: 123px; height: 118px; border: 0px; float: right;" /></a>\r
70 <a href="../index.html">\r
71   <img src="../images/sprite.jpg"\r
72   alt="ImageMagick Sprite"\r
73   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
74 </div>\r
75 \r
76 <div class="westbar">\r
77 \r
78 <div class="menu">
79   <a title="About ImageMagick" href="../index.html">About ImageMagick</a>
80 </div>
81 <div class="sep"></div>\r
82 <div class="menu">
83   <a title="Binary Releases" href="../www/binary-releases.html">Binary Releases</a>
84 </div>
85 <div class="sub">
86     <a title="Binary Release: Unix" href="../www/binary-releases.html#unix">Unix</a>
87 </div>
88 <div class="sub">
89     <a title="Binary Release: MacOS X" href="../www/binary-releases.html#macosx">Mac OS X</a>
90 </div>
91 <div class="sub">
92     <a title="Binary Release: iPhone" href="../www/binary-releases.html#iPhone">iPhone</a>
93 </div>
94 <div class="sub">
95     <a title="Binary Release: Windows" href="../www/binary-releases.html#windows">Windows</a>
96 </div>
97 <div class="sep"></div>\r
98 <div class="menu">
99   <a title="Command-line Tools" href="../www/command-line-tools.html">Command-line Tools</a>
100 </div>
101 <div class="sub">
102     <a title="Command-line Tools: Processing" href="../www/command-line-processing.html">Processing</a>
103 </div>
104 <div class="sub">
105     <a title="Command-line Tools: Options" href="../www/command-line-options.html">Options</a>
106 </div>
107 <div class="sub">
108     <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
109 </div>
110 <div class="menu">
111   <a title="Program Interfaces" href="../www/api.html">Program Interfaces</a>
112 </div>
113 <div class="sub">
114     <a title="Program Interface: MagickWand" href="../www/magick-wand.html">MagickWand</a>
115 </div>
116 <div class="sub">
117     <a title="Program Interface: MagickCore" href="../www/magick-core.html">MagickCore</a>
118 </div>
119 <div class="sub">
120     <a title="Program Interface: PerlMagick" href="../www/perl-magick.html">PerlMagick</a>
121 </div>
122 <div class="sub">
123     <a title="Program Interface: Magick++" href="../www/magick++.html">Magick++</a>
124 </div>
125 <div class="sep"></div>\r
126 <div  class="menu">
127    <a title="Install from Source" href="../www/install-source.html">Install from Source</a>
128 </div>
129 <div class="sub">
130     <a title="Install from Source: Unix" href="../www/install-source.html#unix">Unix</a>
131 </div>
132 <div class="sub">
133     <a title="Install from Source: Windows" href="../www/install-source.html#windows">Windows</a>
134  </div>
135 <div class="menu">
136   <a title="Resources" href="../www/resources.html">Resources</a>
137 </div>
138 <div class="menu">
139   <a title="Architecture" href="../www/architecture.html">Architecture</a>
140 </div>
141 <div class="menu">
142   <a title="Download" href="../www/download.html">Download</a>
143 </div>
144 <div class="sep"></div>\r
145 <div class="menu">
146   <a title="Search" href="../www/search.html">Search</a>
147 </div>
148 <div class="sep"></div>\r
149 <div class="menu">
150   <a title="Site Map" href="../www/sitemap.html">Site Map</a>
151 </div>
152 <div  class="sub">
153   <a title="Site Map: Links" href="../www/links.html">Links</a>
154 </div>
155 <div class="sep"></div>\r
156 <div  class="menu">
157   <a title="Sponsors" href="../www/sponsors.html">Sponsors:</a>
158
159 <a href="http://www.networkredux.com">
160   <img src="../images/networkredux.png" alt="[sponsor]"
161   style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a>
162 <div class="sponsbox">
163 <div  class="sponsor">
164   <a title="Sponsor: Web Hosting Reviews" href="http://www.webhostingmasters.com">Web Hosting Reviews</a><!-- 201107011500 affliatelabel -->
165 </div>
166 <div  class="sponsor">
167   <a title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
168 </div>
169 <div  class="sponsor">
170   <a title="Sponsor: Hotel München" href="http://www.messehotel-erb-muenchen.de">Hotel München</a><!-- 201111010450 cerb -->
171 </div>
172 <div  class="sponsor">
173   <a title="Sponsor: Website Hosting" href="http://www.hostreviewgeeks.com">Website Hosting</a><!-- 201107010090 alexanian media -->
174 </div>
175 <div  class="sponsor">
176   <a title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
177 </div>
178 <div  class="sponsor">
179   <a title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
180 </div>
181 <div  class="sponsor">
182   <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
183 </div>
184 <div  class="sponsor">
185   <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
186 </div>
187 <div  class="sponsor">
188    <a title="Sponsor: Free Catalogs" href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 20120801000600 -->
189 </div>
190 </div>
191 </div>
192 </div>\r
193 \r
194 <div class="eastbar">\r
195 \r
196 </div>\r
197 \r
198 <div class="main">\r
199 \r
200 <h1>ImageMagick Conjure Command-line Tool</h1>
201 <p class="navigation-index">[<a href="#usage">Example Usage</a> &bull; <a href="#options">Option Summary</a>]</p>
202
203 <div class="doc-section">
204 <p>The <kbd>conjure</kbd> program gives you the ability to perform custom image processing tasks from a script written in the Magick Scripting Language (MSL).  MSL is XML-based and consists of action statements with attributes.  Actions include reading an image, processing an image, getting attributes from an image, writing an image, and more.  An attribute is a key/value pair that modifies the behavior of an action.  See <a href="../www/command-line-processing.html">Command Line Processing</a> for advice on how to structure your <kbd>conjure</kbd> command or see below for example usages of the command.</p>
205 </div>
206
207 <h2><a id="usage"></a>Example Usage</h2>
208 <div class="doc-section">
209
210 <p>We list a few examples of the <kbd>conjure</kbd> command here to illustrate its usefulness and ease of use. To get started, here is simple <kbd>conjure</kbd> command:</p>
211
212 <p class='crt'><span class="crtprompt"> $magick&gt; </span><span class='crtin'>conjure -dimensions 400x400 incantation.msl</span></p>
213 <p>The MSL script <a href="../www/source/incantation.msl">incantation.msl</a> used above is here:</p>
214
215 <pre class="text">
216   &lt;?xml version="1.0" encoding="UTF-8"?&gt;
217   &lt;image size="400x400"&gt;
218     &lt;read filename="image.gif" /&gt;
219     &lt;get width="base-width" height="base-height" /&gt;
220     &lt;resize geometry="%[dimensions]" /&gt;
221     &lt;get width="width" height="height" /&gt;
222     &lt;print output="Image sized from %[base-width]x%[base-height] to %[width]x%[height].\n" /&gt;
223     &lt;write filename="image.png" /&gt;
224   &lt;/image&gt;
225 </pre>
226
227 <p>In this example, a family stayed home for their vacation but as far as their friends are concerned they went to a beautiful beach in the Caribbean:</p>
228
229 <pre class="text">
230   &lt;?xml version="1.0" encoding="UTF-8"?>
231   &lt;group>
232       &lt;image id="family">
233           &lt;read filename="family.gif"/>
234           &lt;resize geometry="300x300"/>
235       &lt;/image>
236       &lt;image id="palm-trees">
237           &lt;read filename="palm-trees.gif"/>
238           &lt;resize geometry="300x100"/>
239       &lt;/image>
240       &lt;image>
241           &lt;read filename="beach.jpg"/>
242           &lt;composite image="family" geometry="+30+40"/>
243           &lt;composite image="palm-trees" geometry="+320+90"/>
244       &lt;/image>
245       &lt;write filename="family-vacation.png"/>
246   &lt;/group>
247 </pre>
248
249 <p>Here we display the width in pixels of text for a particular font and pointsize.</p>
250
251 <pre class="text">
252   &lt;?xml version="1.0" encoding="UTF-8"?&gt;
253   &lt;image&gt;
254     &lt;query-font-metrics text="ImageMagick" font="helvetica" pointsize="48" /&gt;
255     &lt;print output="Text width is %[msl:font-metrics.width] pixels.\n" /&gt;
256   &lt;/image&gt;
257 </pre>
258
259 <p>The <kbd>query-font-metrics</kbd> tag supports these properties:</p>
260
261 <pre class="text">
262     msl:font-metrics.pixels_per_em.x
263     msl:font-metrics.pixels_per_em.y
264     msl:font-metrics.ascent
265     msl:font-metrics.descent
266     msl:font-metrics.width
267     msl:font-metrics.height
268     msl:font-metrics.max_advance
269     msl:font-metrics.bounds.x1
270     msl:font-metrics.bounds.y1
271     msl:font-metrics.bounds.x2
272     msl:font-metrics.bounds.y2
273     msl:font-metrics.origin.x
274     msl:font-metrics.origin.y
275 </pre>
276
277 <p>MSL supports most methods and attributes discussed in the <a href="../www/perl-magick.html">Perl API for ImageMagick</a>.
278 </p>
279
280 <p>In addition, MSL supports the <kbd>swap</kbd> element with a single <kbd>indexes</kbd> element.</p>
281
282 <p>You can find additional examples of using <kbd>conjure</kbd> in <a href="http://www-106.ibm.com/developerworks/library/l-graf/?ca=dnt-428">Graphics from the Command Line</a>.  Further discussion is available in <a href="http://www-106.ibm.com/developerworks/library/l-graf2/?ca=dgr-lnxw15GraphicsLine">More Graphics from the Command Line</a> and <a href="http://www.imagemagick.org/Usage/">Examples of ImageMagick Usage</a>.</p>
283
284 </div>
285
286 <h2><a id="options"></a>Option Summary</h2>
287 <div class="doc-section">
288
289 <p>The <kbd>conjure</kbd> command recognizes these options.  Click on an option to get more details about how that option works.</p>
290
291 <table class="doc">
292   <tbody>
293   <tr>
294     <th align="left">Option</th>
295     <th align="left">Description</th>
296   </tr>
297
298   <tr>
299     <td valign="top"><a href="../www/command-line-options.html#debug">-debug <em class="option">events</em></a></td>
300     <td valign="top">display copious debugging information</td>
301   </tr>
302
303   <tr>
304     <td valign="top"><a href="../www/command-line-options.html#help">-help</a></td>
305     <td valign="top">print program options</td>
306   </tr>
307
308   <tr>
309     <td valign="top"><a href="../www/command-line-options.html#log">-log <em class="option">format</em></a></td>
310     <td valign="top">format of debugging information</td>
311   </tr>
312
313   <tr>
314     <td valign="top"><a href="../www/command-line-options.html#monitor">-monitor</a></td>
315     <td valign="top">monitor progress</td>
316   </tr>
317
318   <tr>
319     <td valign="top"><a href="../www/command-line-options.html#quiet">-quiet</a></td>
320     <td valign="top">suppress all warning messages</td>
321   </tr>
322
323   <tr>
324     <td valign="top"><a href="../www/command-line-options.html#regard-warnings">-regard-warnings</a></td>
325     <td valign="top">pay attention to warning messages.</td>
326   </tr>
327
328   <tr>
329     <td valign="top"><a href="../www/command-line-options.html#seed">-seed <em class="option">value</em></a></td>
330     <td valign="top">seed a new sequence of pseudo-random numbers</td>
331   </tr>
332
333   <tr>
334     <td valign="top"><a href="../www/command-line-options.html#verbose">-verbose</a></td>
335     <td valign="top">print detailed information about the image</td>
336   </tr>
337
338   <tr>
339     <td valign="top"><a href="../www/command-line-options.html#version">-version</a></td>
340     <td valign="top">print version information</td>
341   </tr>
342
343   </tbody>
344 </table>
345
346 </div>
347 \r
348 </div>\r
349 \r
350 <div id="linkbar">\r
351     <span id="linkbar-west">&nbsp;</span>\r
352     <span id="linkbar-center">\r
353       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
354       <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
355     </span>\r
356     <span id="linkbar-east">&nbsp;</span>\r
357   </div>\r
358   <div class="footer">\r
359     <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>\r
360     <span id="footer-east"> <a href="http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
361   </div>\r
362   <div style="clear: both; margin: 0; width: 100%; "></div>\r
363   <script type="text/javascript">\r
364     var _gaq = _gaq || [];\r
365     _gaq.push(['_setAccount', 'UA-17690367-1']);\r
366     _gaq.push(['_trackPageview']);\r
367 \r
368     (function() {\r
369       var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;\r
370       ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';\r
371       var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);\r
372     })();\r
373   </script>\r
374 </body>\r
375 </html>\r