blob: 1b8bd0e14e99f9dd9881d6d83fa0d5d86d9cd015 [file] [log] [blame]
cristy06f63f22012-10-31 00:50:07 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3<html version="-//W3C//DTD XHTML 1.1//EN"
4 xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xsi:schemaLocation="http://www.w3.org/1999/xhtml
7 http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">
8<head>
9 <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
cristy8ee7f242013-06-20 16:08:44 +000010 <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4"/>
cristyffb69ed2010-12-25 00:06:48 +000011 <title>ImageMagick: MagickCore, C API for ImageMagick: Transform an Image</title>
cristy751980d2012-06-03 23:18:35 +000012 <meta http-equiv="content-language" content="en-US"/>
13 <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
14 <meta http-equiv="reply-to" content="magick-users@imagemagick.org"/>
15 <meta name="application-name" content="ImageMagick"/>
cristy8ee7f242013-06-20 16:08:44 +000016 <meta name="description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats. In addition, resize, rotate, shear, distort or transform images automagically."/>
cristy751980d2012-06-03 23:18:35 +000017 <meta name="application-url" content="http://www.imagemagick.org"/>
18 <meta name="generator" content="PHP"/>
cristy8ee7f242013-06-20 16:08:44 +000019 <meta name="keywords" content="magickcore, c, api, for, imagemagick:, transform, an, image, ImageMagick, PerlMagick, image processing, OpenMP, software development library, image, photo, software, Magick++, MagickWand"/>
cristy751980d2012-06-03 23:18:35 +000020 <meta name="rating" content="GENERAL"/>
21 <meta name="robots" content="INDEX, FOLLOW"/>
22 <meta name="generator" content="ImageMagick Studio LLC"/>
23 <meta name="author" content="ImageMagick Studio LLC"/>
24 <meta name="revisit-after" content="2 DAYS"/>
25 <meta name="resource-type" content="document"/>
cristy72da67d2013-02-24 21:40:48 +000026 <meta name="copyright" content="Copyright (c) 1999-2012 ImageMagick Studio LLC"/>
cristy751980d2012-06-03 23:18:35 +000027 <meta name="distribution" content="Global"/>
cristy72da67d2013-02-24 21:40:48 +000028 <link rel="icon" href="../../images/wand.png"/>
29 <link rel="shortcut icon" href="../../images/wand.ico" type="images/x-icon"/>
cristy06f63f22012-10-31 00:50:07 +000030 <link rel="canonical" href="http://www.imagemagick.org" />
31 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
cristy8ee7f242013-06-20 16:08:44 +000032
33 <!-- Add jQuery library -->
34 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
35
36 <!-- Add mousewheel plugin (this is optional) -->
37 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/lib/jquery.mousewheel-3.0.6.pack.js"></script>
38
39 <!-- Add fancyBox -->
40 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/source/jquery.fancybox.css?v=2.0.6" type="text/css" media="screen" />
41 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/jquery.fancybox.pack.js?v=2.0.6"></script>
42
43 <!-- Optionally add helpers - button, thumbnail and/or media -->
44 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-buttons.css?v=1.0.2" type="text/css" media="screen" />
45 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-buttons.js?v=1.0.2"></script>
46 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-media.js?v=1.0.0"></script>
47
48 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-thumbs.css?v=2.0.6" type="text/css" media="screen" />
49 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-thumbs.js?v=2.0.6"></script>
50
cristy72da67d2013-02-24 21:40:48 +000051 <script type="text/javascript">
cristy8ee7f242013-06-20 16:08:44 +000052 $(document).ready(function() {
53 $(".fancybox").fancybox();
54 });
cristy72da67d2013-02-24 21:40:48 +000055 </script>
cristy8ee7f242013-06-20 16:08:44 +000056
57 <!-- ImageMagick style -->
58 <style type="text/css" media="all">
59 @import url("../../www/magick.css");
60 </style>
cristy06f63f22012-10-31 00:50:07 +000061</head>
62
63<body id="www-imagemagick-org">
cristy8ee7f242013-06-20 16:08:44 +000064
65<script>
66 (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
67 (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
68 m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
69 })(window,document,'offline-script','//127.0.0.1/analytics.js','ga');
70
71 ga('create', 'UA-40133312-1', 'imagemagick.org');
72 ga('send', 'pageview');
73</script>
74
cristy06f63f22012-10-31 00:50:07 +000075<div class="titlebar">
76<div style="margin: 17px auto; float: left;">
77 <script type="text/javascript">
78 <!--
79 google_ad_client = "pub-3129977114552745";
80 google_ad_slot = "5439289906";
81 google_ad_width = 728;
82 google_ad_height = 90;
83 //-->
84 </script>
85 <script type="text/javascript"
cristy8ee7f242013-06-20 16:08:44 +000086 src="http://127.0.0.1/pagead/show_ads.js">
cristy06f63f22012-10-31 00:50:07 +000087 </script>
88</div>
cristy8ee7f242013-06-20 16:08:44 +000089<a href="http://www.imagemagick.org/discourse-server/">
cristy72da67d2013-02-24 21:40:48 +000090 <img src="../../images/logo.jpg"
cristy06f63f22012-10-31 00:50:07 +000091 alt="ImageMagick Logo"
92 style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
cristy8ee7f242013-06-20 16:08:44 +000093<a href="../../index.html">
cristy72da67d2013-02-24 21:40:48 +000094 <img src="../../images/sprite.jpg"
cristy06f63f22012-10-31 00:50:07 +000095 alt="ImageMagick Sprite"
96 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
97</div>
98
99<div class="westbar">
100
cristy3ed852e2009-09-05 21:47:34 +0000101<div class="menu">
cristy8ee7f242013-06-20 16:08:44 +0000102 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000103</div>
cristy3ed852e2009-09-05 21:47:34 +0000104<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000105 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
cristybb503372010-05-27 20:51:26 +0000106</div>
107<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000108 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
cristybb503372010-05-27 20:51:26 +0000109</div>
110<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000111 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
cristybb503372010-05-27 20:51:26 +0000112</div>
113<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000114 <a title="Binary Release: iOS" href="../../www/binary-releases.html#iOS">iOS</a>
cristyda16f162011-02-19 23:52:17 +0000115</div>
116<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000117 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
cristybb503372010-05-27 20:51:26 +0000118</div>
cristy06f63f22012-10-31 00:50:07 +0000119<div class="sep"></div>
cristybb503372010-05-27 20:51:26 +0000120<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000121 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +0000122</div>
123<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000124 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +0000125</div>
126<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000127 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +0000128</div>
129<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000130 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +0000131</div>
132<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000133 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +0000134</div>
135<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000136 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +0000137</div>
138<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000139 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000140</div>
141<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000142 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000143</div>
144<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000145 <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000146</div>
cristy06f63f22012-10-31 00:50:07 +0000147<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000148<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000149 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000150</div>
151<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000152 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000153</div>
154<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000155 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000156 </div>
157<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000158 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000159</div>
cristybb503372010-05-27 20:51:26 +0000160<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000161 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
cristybb503372010-05-27 20:51:26 +0000162</div>
cristy3ed852e2009-09-05 21:47:34 +0000163<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000164 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000165</div>
cristy06f63f22012-10-31 00:50:07 +0000166<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000167<div class="menu">
cristy3dfa2192013-02-24 22:46:05 +0000168 <a title="Search" href="http://www.imagemagick.org/script/search.php">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000169</div>
cristy06f63f22012-10-31 00:50:07 +0000170<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000171<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000172 <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000173</div>
174<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000175 <a title="Site Map: Links" href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000176</div>
cristy06f63f22012-10-31 00:50:07 +0000177<div class="sep"></div>
cristy8ee7f242013-06-20 16:08:44 +0000178<div class="menu">
179 <a title="Support ImageMagick Development" href="../../www/support.html">Support ImageMagick Development</a>
cristy3ed852e2009-09-05 21:47:34 +0000180</div>
cristy06f63f22012-10-31 00:50:07 +0000181</div>
182
183<div class="eastbar">
cristy06f63f22012-10-31 00:50:07 +0000184 <script type="text/javascript">
cristy8ee7f242013-06-20 16:08:44 +0000185 /* <![CDATA[ */
cristy06f63f22012-10-31 00:50:07 +0000186 (function() {
cristy8ee7f242013-06-20 16:08:44 +0000187 var po = document.createElement('offline-script'), t = document.getElementsByTagName('offline-script')[0];
188 po.type = 'text/javascript';
189 po.async = true;
190 po.src = 'http://api.flattr.com/js/0.6/load.js?mode=auto';
191 var script = document.getElementsByTagName('offline-script')[0];
192 script.parentNode.insertBefore(po, script);
cristy06f63f22012-10-31 00:50:07 +0000193 })();
cristy8ee7f242013-06-20 16:08:44 +0000194 /* ]]> */
cristy06f63f22012-10-31 00:50:07 +0000195 </script>
cristy8ee7f242013-06-20 16:08:44 +0000196 <div> <a class="FlattrButton" style="display:none;" rev="flattr;button:compact;" href="http://www.imagemagick.org/"></a></div>
197 <noscript>
198 <a href="http://flattr.com/thing/947300/Convert-Edit-And-Compose-Images" target="_blank">
199 <img src="http://api.flattr.com/button/flattr-badge-large.png" alt="Flattr this" title="Flattr this" width="93" height="20" border="0" /></a>
200 </noscript>
201 <div class="g-plusone" id="gplusone"></div>
202 <script type="text/javascript">
203 /* <![CDATA[ */
204 window.___gcfg = {
205 lang: 'en-US'
206 };
207
208 (function() {
209 var po = document.createElement('offline-script');
210 po.type = 'text/javascript';
211 po.async = true;
212 po.src = 'https://127.0.0.1/js/plusone.js';
213 var script = document.getElementsByTagName('offline-script')[0];
214 script.parentNode.insertBefore(po, script);
215 })();
216 var gplusone = document.getElementById("gplusone");
217 gplusone.setAttribute("data-size","medium");
218 gplusone.setAttribute("data-count","true");
219 /* ]]> */
220 </script>
cristy06f63f22012-10-31 00:50:07 +0000221</div>
222
223<div class="main">
224
cristy20398432011-08-11 01:31:50 +0000225<h1>Module transform Methods</h1>
cristydba8f1d2013-07-28 13:49:24 +0000226<p class="navigation-index">[<a href="transform.html#AutoOrientImage">AutoOrientImage</a> &#8226; <a href="transform.html#ChopImage">ChopImage</a> &#8226; <a href="transform.html#CropImage">CropImage</a> &#8226; <a href="transform.html#CropImageToTiles">CropImageToTiles</a> &#8226; <a href="transform.html#ExcerptImage">ExcerptImage</a> &#8226; <a href="transform.html#ExtentImage">ExtentImage</a> &#8226; <a href="transform.html#FlipImage">FlipImage</a> &#8226; <a href="transform.html#FlopImage">FlopImage</a> &#8226; <a href="transform.html#RollImage">RollImage</a> &#8226; <a href="transform.html#ShaveImage">ShaveImage</a> &#8226; <a href="transform.html#SpliceImage">SpliceImage</a> &#8226; <a href="transform.html#TransformImage">TransformImage</a> &#8226; <a href="transform.html#to CropImageToTiles">to CropImageToTiles</a> &#8226; <a href="transform.html#TransformImages">TransformImages</a> &#8226; <a href="transform.html#TransposeImage">TransposeImage</a> &#8226; <a href="transform.html#TransverseImage">TransverseImage</a> &#8226; <a href="transform.html#TrimImage">TrimImage</a>]</p>
cristy6f77f692011-02-15 15:31:39 +0000227
cristy8ee7f242013-06-20 16:08:44 +0000228<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="AutoOrientImage">AutoOrientImage</a></h2>
229<div class="doc-section">
230
231<p>AutoOrientImage() adjusts an image so that its orientation is suitable for viewing (i.e. top-left orientation).</p>
232
233<p>The format of the AutoOrientImage method is:</p>
234
235<pre class="code">
236 Image *AutoOrientImage(const Image *image,
237 const OrientationType orientation,ExceptionInfo *exception)
238</pre>
239
240<p>A description of each parameter follows:</p>
241
242<h5>image</h5>
243<p>The image.</p>
244
245<h5>orientation</h5>
246<p>Current image orientation.</p>
247
248<h5>exception</h5>
249<p>Return any errors or warnings in this structure.</p>
250
251 </div>
cristy20398432011-08-11 01:31:50 +0000252<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="ChopImage">ChopImage</a></h2>
253<div class="doc-section">
254
255<p>ChopImage() removes a region of an image and collapses the image to occupy the removed portion.</p>
256
257<p>The format of the ChopImage method is:</p>
258
259<pre class="code">
260 Image *ChopImage(const Image *image,const RectangleInfo *chop_info)
261 ExceptionInfo *exception)
262</pre>
263
264<p>A description of each parameter follows:</p>
265
266<h5>image</h5>
267<p>the image.</p>
268
269<h5>chop_info</h5>
270<p>Define the region of the image to chop.</p>
271
272<h5>exception</h5>
273<p>return any errors or warnings in this structure.</p>
274
275 </div>
276<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="CropImage">CropImage</a></h2>
277<div class="doc-section">
278
279<p>CropImage() extracts a region of the image starting at the offset defined by geometry. Region must be fully defined, and no special handling of geometry flags is performed.</p>
280
281<p>The format of the CropImage method is:</p>
282
283<pre class="code">
284 Image *CropImage(const Image *image,const RectangleInfo *geometry,
285 ExceptionInfo *exception)
286</pre>
287
288<p>A description of each parameter follows:</p>
289
290<h5>image</h5>
291<p>the image.</p>
292
293<h5>geometry</h5>
294<p>Define the region of the image to crop with members x, y, width, and height.</p>
295
296<h5>exception</h5>
297<p>return any errors or warnings in this structure.</p>
298
299 </div>
300<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="CropImageToTiles">CropImageToTiles</a></h2>
301<div class="doc-section">
302
cristyeed6cb62012-01-28 19:38:34 +0000303<p>CropImageToTiles() crops a single image, into a possible list of tiles. This may include a single sub-region of the image. This basically applies all the normal geometry flags for Crop.</p>
cristy20398432011-08-11 01:31:50 +0000304
cristyeed6cb62012-01-28 19:38:34 +0000305<p>Image *CropImageToTiles(const Image *image, const RectangleInfo *crop_geometry, ExceptionInfo *exception)</p>
cristy20398432011-08-11 01:31:50 +0000306
307<p>A description of each parameter follows:</p>
308
309<h5>image</h5>
310<p>the image The transformed image is returned as this parameter.</p>
311
312<h5>crop_geometry</h5>
313<p>A crop geometry string.</p>
314
315<h5>exception</h5>
316<p>return any errors or warnings in this structure.</p>
317
318 </div>
319<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="ExcerptImage">ExcerptImage</a></h2>
320<div class="doc-section">
321
322<p>ExcerptImage() returns a excerpt of the image as defined by the geometry.</p>
323
324<p>The format of the ExcerptImage method is:</p>
325
326<pre class="code">
327 Image *ExcerptImage(const Image *image,const RectangleInfo *geometry,
328 ExceptionInfo *exception)
329</pre>
330
331<p>A description of each parameter follows:</p>
332
333<h5>image</h5>
334<p>the image.</p>
335
336<h5>geometry</h5>
337<p>Define the region of the image to extend with members x, y, width, and height.</p>
338
339<h5>exception</h5>
340<p>return any errors or warnings in this structure.</p>
341
342 </div>
343<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="ExtentImage">ExtentImage</a></h2>
344<div class="doc-section">
345
346<p>ExtentImage() extends the image as defined by the geometry, gravity, and image background color. Set the (x,y) offset of the geometry to move the original image relative to the extended image.</p>
347
348<p>The format of the ExtentImage method is:</p>
349
350<pre class="code">
351 Image *ExtentImage(const Image *image,const RectangleInfo *geometry,
352 ExceptionInfo *exception)
353</pre>
354
355<p>A description of each parameter follows:</p>
356
357<h5>image</h5>
358<p>the image.</p>
359
360<h5>geometry</h5>
361<p>Define the region of the image to extend with members x, y, width, and height.</p>
362
363<h5>exception</h5>
364<p>return any errors or warnings in this structure.</p>
365
366 </div>
367<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="FlipImage">FlipImage</a></h2>
368<div class="doc-section">
369
370<p>FlipImage() creates a vertical mirror image by reflecting the pixels around the central x-axis.</p>
371
372<p>The format of the FlipImage method is:</p>
373
374<pre class="code">
375 Image *FlipImage(const Image *image,ExceptionInfo *exception)
376</pre>
377
378<p>A description of each parameter follows:</p>
379
380<h5>image</h5>
381<p>the image.</p>
382
383<h5>exception</h5>
384<p>return any errors or warnings in this structure.</p>
385
386 </div>
387<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="FlopImage">FlopImage</a></h2>
388<div class="doc-section">
389
390<p>FlopImage() creates a horizontal mirror image by reflecting the pixels around the central y-axis.</p>
391
392<p>The format of the FlopImage method is:</p>
393
394<pre class="code">
395 Image *FlopImage(const Image *image,ExceptionInfo *exception)
396</pre>
397
398<p>A description of each parameter follows:</p>
399
400<h5>image</h5>
401<p>the image.</p>
402
403<h5>exception</h5>
404<p>return any errors or warnings in this structure.</p>
405
406 </div>
407<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="RollImage">RollImage</a></h2>
408<div class="doc-section">
409
410<p>RollImage() offsets an image as defined by x_offset and y_offset.</p>
411
412<p>The format of the RollImage method is:</p>
413
414<pre class="code">
415 Image *RollImage(const Image *image,const ssize_t x_offset,
416 const ssize_t y_offset,ExceptionInfo *exception)
417</pre>
418
419<p>A description of each parameter follows:</p>
420
421<h5>image</h5>
422<p>the image.</p>
423
424<h5>x_offset</h5>
425<p>the number of columns to roll in the horizontal direction.</p>
426
427<h5>y_offset</h5>
428<p>the number of rows to roll in the vertical direction.</p>
429
430<h5>exception</h5>
431<p>return any errors or warnings in this structure.</p>
432
433 </div>
434<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="ShaveImage">ShaveImage</a></h2>
435<div class="doc-section">
436
437<p>ShaveImage() shaves pixels from the image edges. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
438
439<p>The format of the ShaveImage method is:</p>
440
441<pre class="code">
442 Image *ShaveImage(const Image *image,const RectangleInfo *shave_info,
443 ExceptionInfo *exception)
444</pre>
445
446<p>A description of each parameter follows:</p>
447
448<h5>shave_image</h5>
449<p>Method ShaveImage returns a pointer to the shaved image. A null image is returned if there is a memory shortage or if the image width or height is zero.</p>
450
451<h5>image</h5>
452<p>the image.</p>
453
454<h5>shave_info</h5>
455<p>Specifies a pointer to a RectangleInfo which defines the region of the image to crop.</p>
456
457<h5>exception</h5>
458<p>return any errors or warnings in this structure.</p>
459
460 </div>
461<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="SpliceImage">SpliceImage</a></h2>
462<div class="doc-section">
463
464<p>SpliceImage() splices a solid color into the image as defined by the geometry.</p>
465
466<p>The format of the SpliceImage method is:</p>
467
468<pre class="code">
469 Image *SpliceImage(const Image *image,const RectangleInfo *geometry,
470 ExceptionInfo *exception)
471</pre>
472
473<p>A description of each parameter follows:</p>
474
475<h5>image</h5>
476<p>the image.</p>
477
478<h5>geometry</h5>
479<p>Define the region of the image to splice with members x, y, width, and height.</p>
480
481<h5>exception</h5>
482<p>return any errors or warnings in this structure.</p>
483
484 </div>
485<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="TransformImage">TransformImage</a></h2>
486<div class="doc-section">
487
488<p>TransformImage() is a convenience method that behaves like ResizeImage() or CropImage() but accepts scaling and/or cropping information as a region geometry specification. If the operation fails, the original image handle is left as is.</p>
489
490<p>This should only be used for single images.</p>
491
492<p>The format of the TransformImage method is:</p>
493
494<pre class="code">
495 MagickBooleanType TransformImage(Image **image,const char *crop_geometry,
496 const char *image_geometry)
497</pre>
498
499<p>A description of each parameter follows:</p>
500
501<h5>image</h5>
502<p>the image The transformed image is returned as this parameter.</p>
503
504<h5>crop_geometry</h5>
505<p>A crop geometry string. This geometry defines a subregion of the image to crop.</p>
506
507<h5>image_geometry</h5>
508<p>An image geometry string. This geometry defines the final size of the image.</p>
509
510 </div>
511<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="to_CropImageToTiles">to CropImageToTiles</a></h2>
512<div class="doc-section">
513
514<p>to CropImageToTiles() or ResizeImage(), as appropriate.</p>
515
516 </div>
517<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="TransformImages">TransformImages</a></h2>
518<div class="doc-section">
519
520<p>TransformImages() calls TransformImage() on each image of a sequence.</p>
521
522<p>The format of the TransformImage method is:</p>
523
524<pre class="code">
525 MagickBooleanType TransformImages(Image **image,
526 const char *crop_geometry,const char *image_geometry)
527</pre>
528
529<p>A description of each parameter follows:</p>
530
531<h5>image</h5>
532<p>the image The transformed image is returned as this parameter.</p>
533
534<h5>crop_geometry</h5>
535<p>A crop geometry string. This geometry defines a subregion of the image to crop.</p>
536
537<h5>image_geometry</h5>
538<p>An image geometry string. This geometry defines the final size of the image.</p>
539
540 </div>
541<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="TransposeImage">TransposeImage</a></h2>
542<div class="doc-section">
543
544<p>TransposeImage() creates a horizontal mirror image by reflecting the pixels around the central y-axis while rotating them by 90 degrees.</p>
545
546<p>The format of the TransposeImage method is:</p>
547
548<pre class="code">
549 Image *TransposeImage(const Image *image,ExceptionInfo *exception)
550</pre>
551
552<p>A description of each parameter follows:</p>
553
554<h5>image</h5>
555<p>the image.</p>
556
557<h5>exception</h5>
558<p>return any errors or warnings in this structure.</p>
559
560 </div>
561<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="TransverseImage">TransverseImage</a></h2>
562<div class="doc-section">
563
564<p>TransverseImage() creates a vertical mirror image by reflecting the pixels around the central x-axis while rotating them by 270 degrees.</p>
565
566<p>The format of the TransverseImage method is:</p>
567
568<pre class="code">
569 Image *TransverseImage(const Image *image,ExceptionInfo *exception)
570</pre>
571
572<p>A description of each parameter follows:</p>
573
574<h5>image</h5>
575<p>the image.</p>
576
577<h5>exception</h5>
578<p>return any errors or warnings in this structure.</p>
579
580 </div>
581<h2><a href="http://www.imagemagick.org/api/MagickCore/transform_8c.html" id="TrimImage">TrimImage</a></h2>
582<div class="doc-section">
583
584<p>TrimImage() trims pixels from the image edges. It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p>
585
586<p>The format of the TrimImage method is:</p>
587
588<pre class="code">
589 Image *TrimImage(const Image *image,ExceptionInfo *exception)
590</pre>
591
592<p>A description of each parameter follows:</p>
593
594<h5>image</h5>
595<p>the image.</p>
596
597<h5>exception</h5>
598<p>return any errors or warnings in this structure.</p>
599
600 </div>
cristy06f63f22012-10-31 00:50:07 +0000601
602</div>
603
604<div id="linkbar">
605 <span id="linkbar-west">&nbsp;</span>
cristy8ee7f242013-06-20 16:08:44 +0000606
cristy06f63f22012-10-31 00:50:07 +0000607 <span id="linkbar-center">
cristydba8f1d2013-07-28 13:49:24 +0000608 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &#8226;
609 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a> &#8226;
cristy8ee7f242013-06-20 16:08:44 +0000610 <a href="http://jqmagick.imagemagick.org/">JqMagick</a>
cristy06f63f22012-10-31 00:50:07 +0000611 </span>
612 <span id="linkbar-east">&nbsp;</span>
613 </div>
614 <div class="footer">
cristy8ee7f242013-06-20 16:08:44 +0000615 <span id="footer-west">&copy; 1999-2013 ImageMagick Studio LLC</span>
cristyd8833bf2013-02-24 22:14:53 +0000616 <span id="footer-east"> <a href="../../www/contact.html">Contact the Wizards</a></span>
cristy06f63f22012-10-31 00:50:07 +0000617 </div>
618 <div style="clear: both; margin: 0; width: 100%; "></div>
cristy06f63f22012-10-31 00:50:07 +0000619</body>
620</html>