blob: 6b2247d6c4232453686d2a35ac981135480d87d1 [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">
cristy2bd2a982011-02-15 00:52:58 +00003<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">
cristy3eaa0ef2010-03-06 20:35:26 +00008<head>
cristy3c98a4f2010-08-13 20:09:41 +00009 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
10 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>
cristyffb69ed2010-12-25 00:06:48 +000011 <title>ImageMagick: MagickWand, C API for ImageMagick: Deprecated Methods</title>
cristy3ed852e2009-09-05 21:47:34 +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"/>
cristy3c98a4f2010-08-13 20:09:41 +000015 <meta name="Application-name" content="ImageMagick"/>
cristyaf8d6652011-02-04 21:57:45 +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 and transform images."/>
cristy3c98a4f2010-08-13 20:09:41 +000017 <meta name="Application-url" content="http://www.imagemagick.org"/>
cristy3ed852e2009-09-05 21:47:34 +000018 <meta name="Generator" content="PHP"/>
19 <meta name="Keywords" content="magickwc, api, for, imagemagick:, deprecated, methods, 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 +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"/>
cristy4103d562010-12-10 01:38:54 +000026 <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000027 <meta name="Distribution" content="Global"/>
cristydcca3fa2010-12-29 21:50:07 +000028 <link rel="icon" href="../../images/wand.png"/>
cristy3c98a4f2010-08-13 20:09:41 +000029 <link rel="shortcut icon" href="../../images/wand.ico" type="images/x-icon"/>
30 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
cristy7a40ba82011-01-08 20:31:18 +000031 <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
cristy3c98a4f2010-08-13 20:09:41 +000032 <style type="text/css" media="all">
33 @import url("../../www/magick.css");
34 </style>
cristydcca3fa2010-12-29 21:50:07 +000035 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
cristy361f4662010-12-31 23:02:52 +000036 <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>
37 <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />
38 <script type="text/javascript">
39 $(document).ready(function() {
40 $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({
41 'transitionIn' : 'elastic',
42 'transitionOut' : 'elastic',
43 'overlayShow' : false,
44 'opacity' : true
45 });
46 });
47 </script>
cristy3eaa0ef2010-03-06 20:35:26 +000048</head>
49
50<body id="www-imagemagick-org">
51<div class="titlebar">
52<a href="../../index.html">
53 <img src="../../images/script.png" alt="[ImageMagick]"
54 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
55<a href="http://www.networkredux.com">
56 <img src="../../images/networkredux.png" alt="[sponsor]"
cristy52923442011-01-15 22:54:31 +000057 style="margin-top: 42px; border: 0px; float: left;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000058<a href="http://www.imagemagick.org/discourse-server/">
cristyaf8d6652011-02-04 21:57:45 +000059 <img src="../../images/logo.jpg"
60 alt="ImageMagick Logo"
cristy178edaf2011-01-23 03:42:39 +000061 style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000062<a href="../../index.html">
cristyaf8d6652011-02-04 21:57:45 +000063 <img src="../../images/sprite.jpg"
64 alt="ImageMagick Sprite"
cristy3eaa0ef2010-03-06 20:35:26 +000065 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
66</div>
67
cristyce69bb02010-07-27 19:49:46 +000068<div class="westbar">
cristy3eaa0ef2010-03-06 20:35:26 +000069
cristy3ed852e2009-09-05 21:47:34 +000070<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000071 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000072</div>
cristy3eaa0ef2010-03-06 20:35:26 +000073<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000074<div class="menu">
cristybb503372010-05-27 20:51:26 +000075 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
76</div>
77<div class="sub">
78 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
79</div>
80<div class="sub">
81 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
82</div>
83<div class="sub">
cristyda16f162011-02-19 23:52:17 +000084 <a title="Binary Release: iPhone" href="../../www/binary-releases.html#iPhone">iPhone</a>
85</div>
86<div class="sub">
cristybb503372010-05-27 20:51:26 +000087 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
88</div>
89<div class="sep"></div>
90<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000091 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +000092</div>
93<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000094 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +000095</div>
96<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000097 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +000098</div>
99<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000100 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +0000101</div>
102<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000103 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +0000104</div>
105<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000106 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +0000107</div>
108<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000109 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000110</div>
111<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000112 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000113</div>
114<div class="sub">
cristydcca3fa2010-12-29 21:50:07 +0000115 <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000116</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000117<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000118<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000119 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000120</div>
121<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000122 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000123</div>
124<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000125 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000126 </div>
127<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000128 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000129</div>
cristybb503372010-05-27 20:51:26 +0000130<div class="menu">
131 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
132</div>
cristy3ed852e2009-09-05 21:47:34 +0000133<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000134 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000135</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000136<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000137<div class="menu">
cristy52923442011-01-15 22:54:31 +0000138 <a title="Search" href="../../www/search.html">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000139</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000140<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000141<div class="menu">
cristyffb69ed2010-12-25 00:06:48 +0000142 <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000143</div>
144<div class="sub">
cristyffb69ed2010-12-25 00:06:48 +0000145 <a title="Site Map: Links" href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000146</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000147<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000148<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000149 <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000150
151<div class="sponsbox">
cristy178edaf2011-01-23 03:42:39 +0000152<div class="sponsor">
cristyaf8d6652011-02-04 21:57:45 +0000153 <a title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
154</div>
155<div class="sponsor">
156 <a title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
157</div>
158<div class="sponsor">
cristy2bd2a982011-02-15 00:52:58 +0000159 <a title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201107010240 r.leo -->
cristy178edaf2011-01-23 03:42:39 +0000160</div>
cristyec6b4752011-01-08 03:16:23 +0000161<div class="sponsor">
cristy52923442011-01-15 22:54:31 +0000162 <a title="Sponsor: Web Hosting" href="http://www.bodhost.com/hosting.shtml">Web Hosting</a><!-- 201104010090 -->
cristy7d52cd62010-10-01 17:26:59 +0000163</div>
164<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000165 <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
166</div>
167<div class="sponsor">
cristy851dbce2010-08-06 21:40:00 +0000168 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
169</div>
cristyec6b4752011-01-08 03:16:23 +0000170<div class="sponsor">
cristy178edaf2011-01-23 03:42:39 +0000171 <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
172</div>
173<div class="sponsor">
cristyda16f162011-02-19 23:52:17 +0000174 <a title="Sponsor: Notebook Reparatur Berlin" href="http://www.notebook-reparaturen-berlin.de">Notebook Reparatur Berlin</a><!-- 2011050100025 gabi.schulze-->
cristyec6b4752011-01-08 03:16:23 +0000175</div>
cristy3ed852e2009-09-05 21:47:34 +0000176</div>
177</div>
cristyce69bb02010-07-27 19:49:46 +0000178</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000179
cristyce69bb02010-07-27 19:49:46 +0000180<div class="eastbar">
181 <script type="text/javascript">
182 <!--
183 google_ad_client = "pub-3129977114552745";
cristyce69bb02010-07-27 19:49:46 +0000184 google_ad_slot = "0574824969";
185 google_ad_width = 160;
186 google_ad_height = 600;
187 //-->
188 </script>
189 <script type="text/javascript"
190 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
191 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000192</div>
193
194<div class="main">
195
cristy350dea42011-02-15 17:31:04 +0000196<h1>Module deprecate Methods</h1>
cristy6f77f692011-02-15 15:31:39 +0000197<p class="navigation-index">[<a href="#MagickAverageImages">MagickAverageImages</a> &bull; <a href="#ClonePixelView">ClonePixelView</a> &bull; <a href="#DestroyPixelView">DestroyPixelView</a> &bull; <a href="#DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a> &bull; <a href="#GetPixelViewException">GetPixelViewException</a> &bull; <a href="#GetPixelViewHeight">GetPixelViewHeight</a> &bull; <a href="#GetPixelViewIterator">GetPixelViewIterator</a> &bull; <a href="#GetPixelViewPixels">GetPixelViewPixels</a> &bull; <a href="#GetPixelViewWand">GetPixelViewWand</a> &bull; <a href="#GetPixelViewWidth">GetPixelViewWidth</a> &bull; <a href="#GetPixelViewX">GetPixelViewX</a> &bull; <a href="#GetPixelViewY">GetPixelViewY</a> &bull; <a href="#IsPixelView">IsPixelView</a> &bull; <a href="#MagickClipPathImage">MagickClipPathImage</a> &bull; <a href="#DrawGetFillAlpha">DrawGetFillAlpha</a> &bull; <a href="#DrawGetStrokeAlpha">DrawGetStrokeAlpha</a> &bull; <a href="#DrawPeekGraphicWand">DrawPeekGraphicWand</a> &bull; <a href="#DrawPopGraphicContext">DrawPopGraphicContext</a> &bull; <a href="#DrawPushGraphicContext">DrawPushGraphicContext</a> &bull; <a href="#DrawSetFillAlpha">DrawSetFillAlpha</a> &bull; <a href="#DrawSetStrokeAlpha">DrawSetStrokeAlpha</a> &bull; <a href="#MagickColorFloodfillImage">MagickColorFloodfillImage</a> &bull; <a href="#MagickDescribeImage">MagickDescribeImage</a> &bull; <a href="#MagickFlattenImages">MagickFlattenImages</a> &bull; <a href="#MagickGetImageAttribute">MagickGetImageAttribute</a> &bull; <a href="#MagickGetImageMatte">MagickGetImageMatte</a> &bull; <a href="#MagickGetImagePixels">MagickGetImagePixels</a> &bull; <a href="#MagickGetImageSize">MagickGetImageSize</a> &bull; <a href="#MagickMapImage">MagickMapImage</a> &bull; <a href="#MagickMatteFloodfillImage">MagickMatteFloodfillImage</a> &bull; <a href="#MagickMaximumImages">MagickMaximumImages</a> &bull; <a href="#MagickMinimumImages">MagickMinimumImages</a> &bull; <a href="#MagickMosaicImages">MagickMosaicImages</a> &bull; <a href="#MagickOpaqueImage">MagickOpaqueImage</a> &bull; <a href="#MagickPaintFloodfillImage">MagickPaintFloodfillImage</a> &bull; <a href="#MagickPaintOpaqueImage">MagickPaintOpaqueImage</a> &bull; <a href="#MagickPaintTransparentImage">MagickPaintTransparentImage</a> &bull; <a href="#MagickRecolorImage">MagickRecolorImage</a> &bull; <a href="#MagickSetImageAttribute">MagickSetImageAttribute</a> &bull; <a href="#MagickSetImageIndex">MagickSetImageIndex</a> &bull; <a href="#MagickTransparentImage">MagickTransparentImage</a> &bull; <a href="#MagickRegionOfInterestImage">MagickRegionOfInterestImage</a> &bull; <a href="#MagickSetImagePixels">MagickSetImagePixels</a> &bull; <a href="#MagickWriteImageBlob">MagickWriteImageBlob</a> &bull; <a href="#NewPixelView">NewPixelView</a> &bull; <a href="#NewPixelViewRegion">NewPixelViewRegion</a> &bull; <a href="#PixelGetNextRow">PixelGetNextRow</a> &bull; <a href="#PixelIteratorGetException">PixelIteratorGetException</a> &bull; <a href="#SetPixelViewIterator">SetPixelViewIterator</a> &bull; <a href="#TransferPixelViewIterator">TransferPixelViewIterator</a> &bull; <a href="#UpdatePixelViewIterator">UpdatePixelViewIterator</a>]</p>
cristyc3ebda22010-06-27 17:11:57 +0000198
cristy350dea42011-02-15 17:31:04 +0000199<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickAverageImages">MagickAverageImages</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000200<div class="doc-section">
201
202<p>MagickAverageImages() average a set of images.</p>
203
204<p>The format of the MagickAverageImages method is:</p>
205
206<pre class="code">
207 MagickWand *MagickAverageImages(MagickWand *wand)
208</pre>
209
210<p>A description of each parameter follows:</p>
211
212<h5>wand</h5>
213<p>the magick wand.</p>
214
215 </div>
cristy350dea42011-02-15 17:31:04 +0000216<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="ClonePixelView">ClonePixelView</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000217<div class="doc-section">
218
219<p>ClonePixelView() makes a copy of the specified pixel view.</p>
220
221<p>The format of the ClonePixelView method is:</p>
222
223<pre class="code">
224 PixelView *ClonePixelView(const PixelView *pixel_view)
225</pre>
226
227<p>A description of each parameter follows:</p>
228
229<h5>pixel_view</h5>
230<p>the pixel view.</p>
231
232 </div>
cristy350dea42011-02-15 17:31:04 +0000233<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DestroyPixelView">DestroyPixelView</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000234<div class="doc-section">
235
236<p>DestroyPixelView() deallocates memory associated with a pixel view.</p>
237
238<p>The format of the DestroyPixelView method is:</p>
239
240<pre class="code">
241 PixelView *DestroyPixelView(PixelView *pixel_view,
242 const size_t number_wands,const size_t number_threads)
243</pre>
244
245<p>A description of each parameter follows:</p>
246
247<h5>pixel_view</h5>
248<p>the pixel view.</p>
249
250<h5>number_wand</h5>
251<p>the number of pixel wands.</p>
252
253<h5>number_threads</h5>
254<p>number of threads.</p>
255
256 </div>
cristy350dea42011-02-15 17:31:04 +0000257<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000258<div class="doc-section">
259
260<p>DuplexTransferPixelViewIterator() iterates over three pixel views in parallel and calls your transfer method for each scanline of the view. The source and duplex pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination pixel view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p>
261
262<p>Use this pragma:</p>
263
264<pre class="text">
265 #pragma omp critical
266</pre>
267
268<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
269
270<p>The format of the DuplexTransferPixelViewIterator method is:</p>
271
272<pre class="code">
273 MagickBooleanType DuplexTransferPixelViewIterator(PixelView *source,
274 PixelView *duplex,PixelView *destination,
275 DuplexTransferPixelViewMethod transfer,void *context)
276</pre>
277
278<p>A description of each parameter follows:</p>
279
280<h5>source</h5>
281<p>the source pixel view.</p>
282
283<h5>duplex</h5>
284<p>the duplex pixel view.</p>
285
286<h5>destination</h5>
287<p>the destination pixel view.</p>
288
289<h5>transfer</h5>
290<p>the transfer callback method.</p>
291
292<h5>context</h5>
293<p>the user defined context.</p>
294
295 </div>
cristy350dea42011-02-15 17:31:04 +0000296<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewException">GetPixelViewException</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000297<div class="doc-section">
298
299<p>GetPixelViewException() returns the severity, reason, and description of any error that occurs when utilizing a pixel view.</p>
300
301<p>The format of the GetPixelViewException method is:</p>
302
303<pre class="code">
304 char *GetPixelViewException(const PixelWand *pixel_view,
305 ExceptionType *severity)
306</pre>
307
308<p>A description of each parameter follows:</p>
309
310<h5>pixel_view</h5>
311<p>the pixel pixel_view.</p>
312
313<h5>severity</h5>
314<p>the severity of the error is returned here.</p>
315
316 </div>
cristy350dea42011-02-15 17:31:04 +0000317<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewHeight">GetPixelViewHeight</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000318<div class="doc-section">
319
320<p>GetPixelViewHeight() returns the pixel view height.</p>
321
322<p>The format of the GetPixelViewHeight method is:</p>
323
324<pre class="code">
325 size_t GetPixelViewHeight(const PixelView *pixel_view)
326</pre>
327
328<p>A description of each parameter follows:</p>
329
330<h5>pixel_view</h5>
331<p>the pixel view.</p>
332
333 </div>
cristy350dea42011-02-15 17:31:04 +0000334<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewIterator">GetPixelViewIterator</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000335<div class="doc-section">
336
337<p>GetPixelViewIterator() iterates over the pixel view in parallel and calls your get method for each scanline of the view. The pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. Any updates to the pixels in your callback are ignored.</p>
338
339<p>Use this pragma:</p>
340
341<pre class="text">
342 #pragma omp critical
343</pre>
344
345<p>to define a section of code in your callback get method that must be executed by a single thread at a time.</p>
346
347<p>The format of the GetPixelViewIterator method is:</p>
348
349<pre class="code">
350 MagickBooleanType GetPixelViewIterator(PixelView *source,
351 GetPixelViewMethod get,void *context)
352</pre>
353
354<p>A description of each parameter follows:</p>
355
356<h5>source</h5>
357<p>the source pixel view.</p>
358
359<h5>get</h5>
360<p>the get callback method.</p>
361
362<h5>context</h5>
363<p>the user defined context.</p>
364
365 </div>
cristy350dea42011-02-15 17:31:04 +0000366<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewPixels">GetPixelViewPixels</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000367<div class="doc-section">
368
369<p>GetPixelViewPixels() returns the pixel view pixel_wands.</p>
370
371<p>The format of the GetPixelViewPixels method is:</p>
372
373<pre class="code">
374 PixelWand *GetPixelViewPixels(const PixelView *pixel_view)
375</pre>
376
377<p>A description of each parameter follows:</p>
378
379<h5>pixel_view</h5>
380<p>the pixel view.</p>
381
382 </div>
cristy350dea42011-02-15 17:31:04 +0000383<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewWand">GetPixelViewWand</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000384<div class="doc-section">
385
386<p>GetPixelViewWand() returns the magick wand associated with the pixel view.</p>
387
388<p>The format of the GetPixelViewWand method is:</p>
389
390<pre class="code">
391 MagickWand *GetPixelViewWand(const PixelView *pixel_view)
392</pre>
393
394<p>A description of each parameter follows:</p>
395
396<h5>pixel_view</h5>
397<p>the pixel view.</p>
398
399 </div>
cristy350dea42011-02-15 17:31:04 +0000400<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewWidth">GetPixelViewWidth</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000401<div class="doc-section">
402
403<p>GetPixelViewWidth() returns the pixel view width.</p>
404
405<p>The format of the GetPixelViewWidth method is:</p>
406
407<pre class="code">
408 size_t GetPixelViewWidth(const PixelView *pixel_view)
409</pre>
410
411<p>A description of each parameter follows:</p>
412
413<h5>pixel_view</h5>
414<p>the pixel view.</p>
415
416 </div>
cristy350dea42011-02-15 17:31:04 +0000417<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewX">GetPixelViewX</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000418<div class="doc-section">
419
420<p>GetPixelViewX() returns the pixel view x offset.</p>
421
422<p>The format of the GetPixelViewX method is:</p>
423
424<pre class="code">
425 ssize_t GetPixelViewX(const PixelView *pixel_view)
426</pre>
427
428<p>A description of each parameter follows:</p>
429
430<h5>pixel_view</h5>
431<p>the pixel view.</p>
432
433 </div>
cristy350dea42011-02-15 17:31:04 +0000434<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewY">GetPixelViewY</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000435<div class="doc-section">
436
437<p>GetPixelViewY() returns the pixel view y offset.</p>
438
439<p>The format of the GetPixelViewY method is:</p>
440
441<pre class="code">
442 ssize_t GetPixelViewY(const PixelView *pixel_view)
443</pre>
444
445<p>A description of each parameter follows:</p>
446
447<h5>pixel_view</h5>
448<p>the pixel view.</p>
449
450 </div>
cristy350dea42011-02-15 17:31:04 +0000451<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="IsPixelView">IsPixelView</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000452<div class="doc-section">
453
454<p>IsPixelView() returns MagickTrue if the the parameter is verified as a pixel view container.</p>
455
456<p>The format of the IsPixelView method is:</p>
457
458<pre class="code">
459 MagickBooleanType IsPixelView(const PixelView *pixel_view)
460</pre>
461
462<p>A description of each parameter follows:</p>
463
464<h5>pixel_view</h5>
465<p>the pixel view.</p>
466
467 </div>
cristy350dea42011-02-15 17:31:04 +0000468<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickClipPathImage">MagickClipPathImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000469<div class="doc-section">
470
471<p>MagickClipPathImage() clips along the named paths from the 8BIM profile, if present. Later operations take effect inside the path. Id may be a number if preceded with #, to work on a numbered path, e.g., "#1" to use the first path.</p>
472
473<p>The format of the MagickClipPathImage method is:</p>
474
475<pre class="code">
476 MagickBooleanType MagickClipPathImage(MagickWand *wand,
477 const char *pathname,const MagickBooleanType inside)
478</pre>
479
480<p>A description of each parameter follows:</p>
481
482<h5>wand</h5>
483<p>the magick wand.</p>
484
485<h5>pathname</h5>
486<p>name of clipping path resource. If name is preceded by #, use clipping path numbered by name.</p>
487
488<h5>inside</h5>
489<p>if non-zero, later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path.</p>
490
491 </div>
cristy350dea42011-02-15 17:31:04 +0000492<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawGetFillAlpha">DrawGetFillAlpha</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000493<div class="doc-section">
494
495<p>DrawGetFillAlpha() returns the alpha used when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
496
497<p>The format of the DrawGetFillAlpha method is:</p>
498
499<pre class="code">
500 double DrawGetFillAlpha(const DrawingWand *wand)
501</pre>
502
503<p>A description of each parameter follows:</p>
504
505<h5>wand</h5>
506<p>the drawing wand.</p>
507
508 </div>
cristy350dea42011-02-15 17:31:04 +0000509<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawGetStrokeAlpha">DrawGetStrokeAlpha</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000510<div class="doc-section">
511
512<p>DrawGetStrokeAlpha() returns the alpha of stroked object outlines.</p>
513
514<p>The format of the DrawGetStrokeAlpha method is:</p>
515
516<pre class="code">
517 double DrawGetStrokeAlpha(const DrawingWand *wand)
518</pre>
519
520<p>A description of each parameter follows:</p>
521
522<h5>wand</h5>
523<p>the drawing wand. </p>
524 </div>
cristy350dea42011-02-15 17:31:04 +0000525<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawPeekGraphicWand">DrawPeekGraphicWand</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000526<div class="doc-section">
527
528<p>DrawPeekGraphicWand() returns the current drawing wand.</p>
529
530<p>The format of the PeekDrawingWand method is:</p>
531
532<pre class="code">
533 DrawInfo *DrawPeekGraphicWand(const DrawingWand *wand)
534</pre>
535
536<p>A description of each parameter follows:</p>
537
538<h5>wand</h5>
539<p>the drawing wand.</p>
540
541 </div>
cristy350dea42011-02-15 17:31:04 +0000542<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawPopGraphicContext">DrawPopGraphicContext</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000543<div class="doc-section">
544
545<p>DrawPopGraphicContext() destroys the current drawing wand and returns to the previously pushed drawing wand. Multiple drawing wands may exist. It is an error to attempt to pop more drawing wands than have been pushed, and it is proper form to pop all drawing wands which have been pushed.</p>
546
547<p>The format of the DrawPopGraphicContext method is:</p>
548
549<pre class="code">
550 MagickBooleanType DrawPopGraphicContext(DrawingWand *wand)
551</pre>
552
553<p>A description of each parameter follows:</p>
554
555<h5>wand</h5>
556<p>the drawing wand.</p>
557
558 </div>
cristy350dea42011-02-15 17:31:04 +0000559<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawPushGraphicContext">DrawPushGraphicContext</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000560<div class="doc-section">
561
562<p>DrawPushGraphicContext() clones the current drawing wand to create a new drawing wand. The original drawing wand(s) may be returned to by invoking PopDrawingWand(). The drawing wands are stored on a drawing wand stack. For every Pop there must have already been an equivalent Push.</p>
563
564<p>The format of the DrawPushGraphicContext method is:</p>
565
566<pre class="code">
567 MagickBooleanType DrawPushGraphicContext(DrawingWand *wand)
568</pre>
569
570<p>A description of each parameter follows:</p>
571
572<h5>wand</h5>
573<p>the drawing wand.</p>
574
575 </div>
cristy350dea42011-02-15 17:31:04 +0000576<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawSetFillAlpha">DrawSetFillAlpha</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000577<div class="doc-section">
578
579<p>DrawSetFillAlpha() sets the alpha to use when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
580
581<p>The format of the DrawSetFillAlpha method is:</p>
582
583<pre class="code">
584 void DrawSetFillAlpha(DrawingWand *wand,const double fill_alpha)
585</pre>
586
587<p>A description of each parameter follows:</p>
588
589<h5>wand</h5>
590<p>the drawing wand.</p>
591
592<h5>fill_alpha</h5>
593<p>fill alpha</p>
594
595 </div>
cristy350dea42011-02-15 17:31:04 +0000596<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawSetStrokeAlpha">DrawSetStrokeAlpha</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000597<div class="doc-section">
598
599<p>DrawSetStrokeAlpha() specifies the alpha of stroked object outlines.</p>
600
601<p>The format of the DrawSetStrokeAlpha method is:</p>
602
603<pre class="code">
604 void DrawSetStrokeAlpha(DrawingWand *wand,const double stroke_alpha)
605</pre>
606
607<p>A description of each parameter follows:</p>
608
609<h5>wand</h5>
610<p>the drawing wand.</p>
611
612<h5>stroke_alpha</h5>
613<p>stroke alpha. The value 1.0 is opaque.</p>
614
615 </div>
cristy350dea42011-02-15 17:31:04 +0000616<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickColorFloodfillImage">MagickColorFloodfillImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000617<div class="doc-section">
618
619<p>MagickColorFloodfillImage() changes the color value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the color value is changed for any neighbor pixel that does not match the bordercolor member of image.</p>
620
621<p>The format of the MagickColorFloodfillImage method is:</p>
622
623<pre class="code">
624 MagickBooleanType MagickColorFloodfillImage(MagickWand *wand,
625 const PixelWand *fill,const double fuzz,const PixelWand *bordercolor,
626 const ssize_t x,const ssize_t y)
627</pre>
628
629<p>A description of each parameter follows:</p>
630
631<h5>wand</h5>
632<p>the magick wand.</p>
633
634<h5>fill</h5>
635<p>the floodfill color pixel wand.</p>
636
637<h5>fuzz</h5>
638<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
639
640<h5>bordercolor</h5>
641<p>the border color pixel wand.</p>
642
643<h5>x,y</h5>
644<p>the starting location of the operation.</p>
645
646 </div>
cristy350dea42011-02-15 17:31:04 +0000647<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickDescribeImage">MagickDescribeImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000648<div class="doc-section">
649
650<p>MagickDescribeImage() identifies an image by printing its attributes to the file. Attributes include the image width, height, size, and others.</p>
651
652<p>The format of the MagickDescribeImage method is:</p>
653
654<pre class="code">
655 const char *MagickDescribeImage(MagickWand *wand)
656</pre>
657
658<p>A description of each parameter follows:</p>
659
660<h5>wand</h5>
661<p>the magick wand.</p>
662
663 </div>
cristy350dea42011-02-15 17:31:04 +0000664<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickFlattenImages">MagickFlattenImages</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000665<div class="doc-section">
666
667<p>MagickFlattenImages() merges a sequence of images. This useful for combining Photoshop layers into a single image.</p>
668
669<p>The format of the MagickFlattenImages method is:</p>
670
671<pre class="code">
672 MagickWand *MagickFlattenImages(MagickWand *wand)
673</pre>
674
675<p>A description of each parameter follows:</p>
676
677<h5>wand</h5>
678<p>the magick wand.</p>
679
680 </div>
cristy350dea42011-02-15 17:31:04 +0000681<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImageAttribute">MagickGetImageAttribute</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000682<div class="doc-section">
683
684<p>MagickGetImageAttribute() returns a value associated with the specified property. Use MagickRelinquishMemory() to free the value when you are finished with it.</p>
685
686<p>The format of the MagickGetImageAttribute method is:</p>
687
688<pre class="code">
689 char *MagickGetImageAttribute(MagickWand *wand,const char *property)
690</pre>
691
692<p>A description of each parameter follows:</p>
693
694<h5>wand</h5>
695<p>the magick wand.</p>
696
697<h5>property</h5>
698<p>the property.</p>
699
700 </div>
cristy350dea42011-02-15 17:31:04 +0000701<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImageMatte">MagickGetImageMatte</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000702<div class="doc-section">
703
704<p>MagickGetImageMatte() returns MagickTrue if the image has a matte channel otherwise MagickFalse.</p>
705
706<p>The format of the MagickGetImageMatte method is:</p>
707
708<pre class="code">
709 size_t MagickGetImageMatte(MagickWand *wand)
710</pre>
711
712<p>A description of each parameter follows:</p>
713
714<h5>wand</h5>
715<p>the magick wand.</p>
716
717 </div>
cristy350dea42011-02-15 17:31:04 +0000718<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImagePixels">MagickGetImagePixels</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000719<div class="doc-section">
720
721<p>MagickGetImagePixels() extracts pixel data from an image and returns it to you. The method returns MagickTrue on success otherwise MagickFalse if an error is encountered. The data is returned as char, short int, int, ssize_t, float, or double in the order specified by map.</p>
722
723<p>Suppose you want to extract the first scanline of a 640x480 image as character data in red-green-blue order:</p>
724
725<pre class="text">
726 MagickGetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
727</pre>
728
729<p>The format of the MagickGetImagePixels method is:</p>
730
731<pre class="code">
732 MagickBooleanType MagickGetImagePixels(MagickWand *wand,
733 const ssize_t x,const ssize_t y,const size_t columns,
734 const size_t rows,const char *map,const StorageType storage,
735 void *pixels)
736</pre>
737
738<p>A description of each parameter follows:</p>
739
740<h5>wand</h5>
741<p>the magick wand.</p>
742
743<h5>x, y, columns, rows</h5>
744<p>These values define the perimeter of a region of pixels you want to extract.</p>
745
746<h5>map</h5>
747<p>This string reflects the expected ordering of the pixel array. It can be any combination or order of R = red, G = green, B = blue, A = alpha (0 is transparent), O = opacity (0 is opaque), C = cyan, Y = yellow, M = magenta, K = black, I = intensity (for grayscale), P = pad.</p>
748
749<h5>storage</h5>
750<p>Define the data type of the pixels. Float and double types are expected to be normalized [0..1] otherwise [0..QuantumRange]. Choose from these types: CharPixel, DoublePixel, FloatPixel, IntegerPixel, LongPixel, QuantumPixel, or ShortPixel.</p>
751
752<h5>pixels</h5>
753<p>This array of values contain the pixel components as defined by map and type. You must preallocate this array where the expected length varies depending on the values of width, height, map, and type.</p>
754
755 </div>
cristy350dea42011-02-15 17:31:04 +0000756<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImageSize">MagickGetImageSize</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000757<div class="doc-section">
758
759<p>MagickGetImageSize() returns the image length in bytes.</p>
760
761<p>The format of the MagickGetImageSize method is:</p>
762
763<pre class="code">
764 MagickBooleanType MagickGetImageSize(MagickWand *wand,
765 MagickSizeType *length)
766</pre>
767
768<p>A description of each parameter follows:</p>
769
770<h5>wand</h5>
771<p>the magick wand.</p>
772
773<h5>length</h5>
774<p>the image length in bytes.</p>
775
776 </div>
cristy350dea42011-02-15 17:31:04 +0000777<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMapImage">MagickMapImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000778<div class="doc-section">
779
780<p>MagickMapImage() replaces the colors of an image with the closest color from a reference image.</p>
781
782<p>The format of the MagickMapImage method is:</p>
783
784<pre class="code">
785 MagickBooleanType MagickMapImage(MagickWand *wand,
786 const MagickWand *map_wand,const MagickBooleanType dither)
787</pre>
788
789<p>A description of each parameter follows:</p>
790
791<h5>wand</h5>
792<p>the magick wand.</p>
793
794<h5>map</h5>
795<p>the map wand.</p>
796
797<h5>dither</h5>
798<p>Set this integer value to something other than zero to dither the mapped image.</p>
799
800 </div>
cristy350dea42011-02-15 17:31:04 +0000801<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMatteFloodfillImage">MagickMatteFloodfillImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000802<div class="doc-section">
803
804<p>MagickMatteFloodfillImage() changes the transparency value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the transparency value is changed for any neighbor pixel that does not match the bordercolor member of image.</p>
805
806<p>The format of the MagickMatteFloodfillImage method is:</p>
807
808<pre class="code">
809 MagickBooleanType MagickMatteFloodfillImage(MagickWand *wand,
810 const double alpha,const double fuzz,const PixelWand *bordercolor,
811 const ssize_t x,const ssize_t y)
812</pre>
813
814<p>A description of each parameter follows:</p>
815
816<h5>wand</h5>
817<p>the magick wand.</p>
818
819<h5>alpha</h5>
820<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
821
822<h5>fuzz</h5>
823<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
824
825<h5>bordercolor</h5>
826<p>the border color pixel wand.</p>
827
828<h5>x,y</h5>
829<p>the starting location of the operation.</p>
830
831 </div>
cristy350dea42011-02-15 17:31:04 +0000832<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMaximumImages">MagickMaximumImages</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000833<div class="doc-section">
834
835<p>MagickMaximumImages() returns the maximum intensity of an image sequence.</p>
836
837<p>The format of the MagickMaximumImages method is:</p>
838
839<pre class="code">
840 MagickWand *MagickMaximumImages(MagickWand *wand)
841</pre>
842
843<p>A description of each parameter follows:</p>
844
845<h5>wand</h5>
846<p>the magick wand.</p>
847
848 </div>
cristy350dea42011-02-15 17:31:04 +0000849<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMinimumImages">MagickMinimumImages</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000850<div class="doc-section">
851
852<p>MagickMinimumImages() returns the minimum intensity of an image sequence.</p>
853
854<p>The format of the MagickMinimumImages method is:</p>
855
856<pre class="code">
857 MagickWand *MagickMinimumImages(MagickWand *wand)
858</pre>
859
860<p>A description of each parameter follows:</p>
861
862<h5>wand</h5>
863<p>the magick wand.</p>
864
865 </div>
cristy350dea42011-02-15 17:31:04 +0000866<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMosaicImages">MagickMosaicImages</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000867<div class="doc-section">
868
869<p>MagickMosaicImages() inlays an image sequence to form a single coherent picture. It returns a wand with each image in the sequence composited at the location defined by the page offset of the image.</p>
870
871<p>The format of the MagickMosaicImages method is:</p>
872
873<pre class="code">
874 MagickWand *MagickMosaicImages(MagickWand *wand)
875</pre>
876
877<p>A description of each parameter follows:</p>
878
879<h5>wand</h5>
880<p>the magick wand.</p>
881
882 </div>
cristy350dea42011-02-15 17:31:04 +0000883<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickOpaqueImage">MagickOpaqueImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000884<div class="doc-section">
885
886<p>MagickOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
887
888<p>The format of the MagickOpaqueImage method is:</p>
889
890<pre class="code">
891 MagickBooleanType MagickOpaqueImage(MagickWand *wand,
892 const PixelWand *target,const PixelWand *fill,const double fuzz)
893</pre>
894
895<p>A description of each parameter follows:</p>
896
897<h5>wand</h5>
898<p>the magick wand.</p>
899
900<h5>channel</h5>
901<p>the channel(s).</p>
902
903<h5>target</h5>
904<p>Change this target color to the fill color within the image.</p>
905
906<h5>fill</h5>
907<p>the fill pixel wand.</p>
908
909<h5>fuzz</h5>
910<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
911
912 </div>
cristy350dea42011-02-15 17:31:04 +0000913<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickPaintFloodfillImage">MagickPaintFloodfillImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000914<div class="doc-section">
915
916<p>MagickPaintFloodfillImage() changes the color value of any pixel that matches target and is an immediate neighbor. If the method FillToBorderMethod is specified, the color value is changed for any neighbor pixel that does not match the bordercolor member of image.</p>
917
918<p>The format of the MagickPaintFloodfillImage method is:</p>
919
920<pre class="code">
921 MagickBooleanType MagickPaintFloodfillImage(MagickWand *wand,
922 const ChannelType channel,const PixelWand *fill,const double fuzz,
923 const PixelWand *bordercolor,const ssize_t x,const ssize_t y)
924</pre>
925
926<p>A description of each parameter follows:</p>
927
928<h5>wand</h5>
929<p>the magick wand.</p>
930
931<h5>channel</h5>
932<p>the channel(s).</p>
933
934<h5>fill</h5>
935<p>the floodfill color pixel wand.</p>
936
937<h5>fuzz</h5>
938<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
939
940<h5>bordercolor</h5>
941<p>the border color pixel wand.</p>
942
943<h5>x,y</h5>
944<p>the starting location of the operation.</p>
945
946 </div>
cristy350dea42011-02-15 17:31:04 +0000947<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickPaintOpaqueImage">MagickPaintOpaqueImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000948<div class="doc-section">
949
950<p>MagickPaintOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
951
952<p>The format of the MagickPaintOpaqueImage method is:</p>
953
954<pre class="code">
955 MagickBooleanType MagickPaintOpaqueImage(MagickWand *wand,
956 const PixelWand *target,const PixelWand *fill,const double fuzz)
957 MagickBooleanType MagickPaintOpaqueImageChannel(MagickWand *wand,
958 const ChannelType channel,const PixelWand *target,
959 const PixelWand *fill,const double fuzz)
960</pre>
961
962<p>A description of each parameter follows:</p>
963
964<h5>wand</h5>
965<p>the magick wand.</p>
966
967<h5>channel</h5>
968<p>the channel(s).</p>
969
970<h5>target</h5>
971<p>Change this target color to the fill color within the image.</p>
972
973<h5>fill</h5>
974<p>the fill pixel wand.</p>
975
976<h5>fuzz</h5>
977<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
978
979 </div>
cristy350dea42011-02-15 17:31:04 +0000980<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickPaintTransparentImage">MagickPaintTransparentImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +0000981<div class="doc-section">
982
983<p>MagickPaintTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
984
985<p>The format of the MagickPaintTransparentImage method is:</p>
986
987<pre class="code">
988 MagickBooleanType MagickPaintTransparentImage(MagickWand *wand,
989 const PixelWand *target,const double alpha,const double fuzz)
990</pre>
991
992<p>A description of each parameter follows:</p>
993
994<h5>wand</h5>
995<p>the magick wand.</p>
996
997<h5>target</h5>
998<p>Change this target color to specified opacity value within the image.</p>
999
1000<h5>alpha</h5>
1001<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
1002
1003<h5>fuzz</h5>
1004<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
1005
1006 </div>
cristy350dea42011-02-15 17:31:04 +00001007<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickRecolorImage">MagickRecolorImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001008<div class="doc-section">
1009
1010<p>MagickRecolorImage() apply color transformation to an image. The method permits saturation changes, hue rotation, luminance to alpha, and various other effects. Although variable-sized transformation matrices can be used, typically one uses a 5x5 matrix for an RGBA image and a 6x6 for CMYKA (or RGBA with offsets). The matrix is similar to those used by Adobe Flash except offsets are in column 6 rather than 5 (in support of CMYKA images) and offsets are normalized (divide Flash offset by 255).</p>
1011
1012<p>The format of the MagickRecolorImage method is:</p>
1013
1014<pre class="code">
1015 MagickBooleanType MagickRecolorImage(MagickWand *wand,
1016 const size_t order,const double *color_matrix)
1017</pre>
1018
1019<p>A description of each parameter follows:</p>
1020
1021<h5>wand</h5>
1022<p>the magick wand.</p>
1023
1024<h5>order</h5>
1025<p>the number of columns and rows in the color matrix.</p>
1026
1027<h5>color_matrix</h5>
1028<p>An array of doubles representing the color matrix.</p>
1029
1030 </div>
cristy350dea42011-02-15 17:31:04 +00001031<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickSetImageAttribute">MagickSetImageAttribute</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001032<div class="doc-section">
1033
1034<p>MagickSetImageAttribute() associates a property with an image.</p>
1035
1036<p>The format of the MagickSetImageAttribute method is:</p>
1037
1038<pre class="code">
1039 MagickBooleanType MagickSetImageAttribute(MagickWand *wand,
1040 const char *property,const char *value)
1041</pre>
1042
1043<p>A description of each parameter follows:</p>
1044
1045<h5>wand</h5>
1046<p>the magick wand.</p>
1047
1048<h5>property</h5>
1049<p>the property.</p>
1050
1051<h5>value</h5>
1052<p>the value.</p>
1053
1054 </div>
cristy350dea42011-02-15 17:31:04 +00001055<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickSetImageIndex">MagickSetImageIndex</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001056<div class="doc-section">
1057
1058<p>MagickSetImageIndex() set the current image to the position of the list specified with the index parameter.</p>
1059
1060<p>The format of the MagickSetImageIndex method is:</p>
1061
1062<pre class="code">
1063 MagickBooleanType MagickSetImageIndex(MagickWand *wand,const ssize_t index)
1064</pre>
1065
1066<p>A description of each parameter follows:</p>
1067
1068<h5>wand</h5>
1069<p>the magick wand.</p>
1070
1071<h5>index</h5>
1072<p>the scene number.</p>
1073
1074 </div>
cristy350dea42011-02-15 17:31:04 +00001075<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickTransparentImage">MagickTransparentImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001076<div class="doc-section">
1077
1078<p>MagickTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
1079
1080<p>The format of the MagickTransparentImage method is:</p>
1081
1082<pre class="code">
1083 MagickBooleanType MagickTransparentImage(MagickWand *wand,
1084 const PixelWand *target,const double alpha,const double fuzz)
1085</pre>
1086
1087<p>A description of each parameter follows:</p>
1088
1089<h5>wand</h5>
1090<p>the magick wand.</p>
1091
1092<h5>target</h5>
1093<p>Change this target color to specified opacity value within the image.</p>
1094
1095<h5>alpha</h5>
1096<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
1097
1098<h5>fuzz</h5>
1099<p>By default target must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. The fuzz member of image defines how much tolerance is acceptable to consider two colors as the same. For example, set fuzz to 10 and the color red at intensities of 100 and 102 respectively are now interpreted as the same color for the purposes of the floodfill.</p>
1100
1101 </div>
cristy350dea42011-02-15 17:31:04 +00001102<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickRegionOfInterestImage">MagickRegionOfInterestImage</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001103<div class="doc-section">
1104
1105<p>MagickRegionOfInterestImage() extracts a region of the image and returns it as a new wand.</p>
1106
1107<p>The format of the MagickRegionOfInterestImage method is:</p>
1108
1109<pre class="code">
1110 MagickWand *MagickRegionOfInterestImage(MagickWand *wand,
1111 const size_t width,const size_t height,const ssize_t x,
1112 const ssize_t y)
1113</pre>
1114
1115<p>A description of each parameter follows:</p>
1116
1117<h5>wand</h5>
1118<p>the magick wand.</p>
1119
1120<h5>width</h5>
1121<p>the region width.</p>
1122
1123<h5>height</h5>
1124<p>the region height.</p>
1125
1126<h5>x</h5>
1127<p>the region x offset.</p>
1128
1129<h5>y</h5>
1130<p>the region y offset.</p>
1131
1132 </div>
cristy350dea42011-02-15 17:31:04 +00001133<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickSetImagePixels">MagickSetImagePixels</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001134<div class="doc-section">
1135
1136<p>MagickSetImagePixels() accepts pixel datand stores it in the image at the location you specify. The method returns MagickFalse on success otherwise MagickTrue if an error is encountered. The pixel data can be either char, short int, int, ssize_t, float, or double in the order specified by map.</p>
1137
1138<p>Suppose your want to upload the first scanline of a 640x480 image from character data in red-green-blue order:</p>
1139
1140<pre class="text">
1141 MagickSetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
1142</pre>
1143
1144<p>The format of the MagickSetImagePixels method is:</p>
1145
1146<pre class="code">
1147 MagickBooleanType MagickSetImagePixels(MagickWand *wand,
1148 const ssize_t x,const ssize_t y,const size_t columns,
1149 const size_t rows,const char *map,const StorageType storage,
1150 const void *pixels)
1151</pre>
1152
1153<p>A description of each parameter follows:</p>
1154
1155<h5>wand</h5>
1156<p>the magick wand.</p>
1157
1158<h5>x, y, columns, rows</h5>
1159<p>These values define the perimeter of a region of pixels you want to define.</p>
1160
1161<h5>map</h5>
1162<p>This string reflects the expected ordering of the pixel array. It can be any combination or order of R = red, G = green, B = blue, A = alpha (0 is transparent), O = opacity (0 is opaque), C = cyan, Y = yellow, M = magenta, K = black, I = intensity (for grayscale), P = pad.</p>
1163
1164<h5>storage</h5>
1165<p>Define the data type of the pixels. Float and double types are expected to be normalized [0..1] otherwise [0..QuantumRange]. Choose from these types: CharPixel, ShortPixel, IntegerPixel, LongPixel, FloatPixel, or DoublePixel.</p>
1166
1167<h5>pixels</h5>
1168<p>This array of values contain the pixel components as defined by map and type. You must preallocate this array where the expected length varies depending on the values of width, height, map, and type.</p>
1169
1170 </div>
cristy350dea42011-02-15 17:31:04 +00001171<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickWriteImageBlob">MagickWriteImageBlob</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001172<div class="doc-section">
1173
1174<p>MagickWriteImageBlob() implements direct to memory image formats. It returns the image as a blob and its length. Use MagickSetFormat() to set the format of the returned blob (GIF, JPEG, PNG, etc.).</p>
1175
1176<p>Use MagickRelinquishMemory() to free the blob when you are done with it.</p>
1177
1178<p>The format of the MagickWriteImageBlob method is:</p>
1179
1180<pre class="code">
1181 unsigned char *MagickWriteImageBlob(MagickWand *wand,size_t *length)
1182</pre>
1183
1184<p>A description of each parameter follows:</p>
1185
1186<h5>wand</h5>
1187<p>the magick wand.</p>
1188
1189<h5>length</h5>
1190<p>the length of the blob.</p>
1191
1192 </div>
cristy350dea42011-02-15 17:31:04 +00001193<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="NewPixelView">NewPixelView</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001194<div class="doc-section">
1195
1196<p>NewPixelView() returns a pixel view required for all other methods in the Pixel View API.</p>
1197
1198<p>The format of the NewPixelView method is:</p>
1199
1200<pre class="code">
1201 PixelView *NewPixelView(MagickWand *wand)
1202</pre>
1203
1204<p>A description of each parameter follows:</p>
1205
1206<h5>wand</h5>
1207<p>the wand.</p>
1208
1209 </div>
cristy350dea42011-02-15 17:31:04 +00001210<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="NewPixelViewRegion">NewPixelViewRegion</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001211<div class="doc-section">
1212
1213<p>NewPixelViewRegion() returns a pixel view required for all other methods in the Pixel View API.</p>
1214
1215<p>The format of the NewPixelViewRegion method is:</p>
1216
1217<pre class="code">
1218 PixelView *NewPixelViewRegion(MagickWand *wand,const ssize_t x,
1219 const ssize_t y,const size_t width,const size_t height)
1220</pre>
1221
1222<p>A description of each parameter follows:</p>
1223
1224<h5>wand</h5>
1225<p>the magick wand.</p>
1226
1227<h5>x,y,columns,rows</h5>
1228<p>These values define the perimeter of a region of pixel_wands view.</p>
1229
1230 </div>
cristy350dea42011-02-15 17:31:04 +00001231<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="PixelGetNextRow">PixelGetNextRow</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001232<div class="doc-section">
1233
1234<p>PixelGetNextRow() returns the next row as an array of pixel wands from the pixel iterator.</p>
1235
1236<p>The format of the PixelGetNextRow method is:</p>
1237
1238<pre class="code">
1239 PixelWand **PixelGetNextRow(PixelIterator *iterator,
1240 size_t *number_wands)
1241</pre>
1242
1243<p>A description of each parameter follows:</p>
1244
1245<h5>iterator</h5>
1246<p>the pixel iterator.</p>
1247
1248<h5>number_wands</h5>
1249<p>the number of pixel wands.</p>
1250
1251 </div>
cristy350dea42011-02-15 17:31:04 +00001252<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="PixelIteratorGetException">PixelIteratorGetException</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001253<div class="doc-section">
1254
1255<p>PixelIteratorGetException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
1256
1257<p>The format of the PixelIteratorGetException method is:</p>
1258
1259<pre class="code">
1260 char *PixelIteratorGetException(const Pixeliterator *iterator,
1261 ExceptionType *severity)
1262</pre>
1263
1264<p>A description of each parameter follows:</p>
1265
1266<h5>iterator</h5>
1267<p>the pixel iterator.</p>
1268
1269<h5>severity</h5>
1270<p>the severity of the error is returned here.</p>
1271
1272 </div>
cristy350dea42011-02-15 17:31:04 +00001273<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="SetPixelViewIterator">SetPixelViewIterator</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001274<div class="doc-section">
1275
1276<p>SetPixelViewIterator() iterates over the pixel view in parallel and calls your set method for each scanline of the view. The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension. The pixels are initiallly undefined and any settings you make in the callback method are automagically synced back to your image.</p>
1277
1278<p>Use this pragma:</p>
1279
1280<pre class="text">
1281 #pragma omp critical
1282</pre>
1283
1284<p>to define a section of code in your callback set method that must be executed by a single thread at a time.</p>
1285
1286<p>The format of the SetPixelViewIterator method is:</p>
1287
1288<pre class="code">
1289 MagickBooleanType SetPixelViewIterator(PixelView *destination,
1290 SetPixelViewMethod set,void *context)
1291</pre>
1292
1293<p>A description of each parameter follows:</p>
1294
1295<h5>destination</h5>
1296<p>the pixel view.</p>
1297
1298<h5>set</h5>
1299<p>the set callback method.</p>
1300
1301<h5>context</h5>
1302<p>the user defined context.</p>
1303
1304 </div>
cristy350dea42011-02-15 17:31:04 +00001305<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="TransferPixelViewIterator">TransferPixelViewIterator</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001306<div class="doc-section">
1307
1308<p>TransferPixelViewIterator() iterates over two pixel views in parallel and calls your transfer method for each scanline of the view. The source pixel region is not confined to the image canvas-- that is you can include negative offsets or widths or heights that exceed the image dimension. However, the destination pixel view is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted.</p>
1309
1310<p>Use this pragma:</p>
1311
1312<pre class="text">
1313 #pragma omp critical
1314</pre>
1315
1316<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
1317
1318<p>The format of the TransferPixelViewIterator method is:</p>
1319
1320<pre class="code">
1321 MagickBooleanType TransferPixelViewIterator(PixelView *source,
1322 PixelView *destination,TransferPixelViewMethod transfer,void *context)
1323</pre>
1324
1325<p>A description of each parameter follows:</p>
1326
1327<h5>source</h5>
1328<p>the source pixel view.</p>
1329
1330<h5>destination</h5>
1331<p>the destination pixel view.</p>
1332
1333<h5>transfer</h5>
1334<p>the transfer callback method.</p>
1335
1336<h5>context</h5>
1337<p>the user defined context.</p>
1338
1339 </div>
cristy350dea42011-02-15 17:31:04 +00001340<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="UpdatePixelViewIterator">UpdatePixelViewIterator</a></h2>
cristy6f77f692011-02-15 15:31:39 +00001341<div class="doc-section">
1342
1343<p>UpdatePixelViewIterator() iterates over the pixel view in parallel and calls your update method for each scanline of the view. The pixel region is confined to the image canvas-- that is no negative offsets or widths or heights that exceed the image dimension are permitted. Updates to pixels in your callback are automagically synced back to the image.</p>
1344
1345<p>Use this pragma:</p>
1346
1347<pre class="text">
1348 #pragma omp critical
1349</pre>
1350
1351<p>to define a section of code in your callback update method that must be executed by a single thread at a time.</p>
1352
1353<p>The format of the UpdatePixelViewIterator method is:</p>
1354
1355<pre class="code">
1356 MagickBooleanType UpdatePixelViewIterator(PixelView *source,
1357 UpdatePixelViewMethod update,void *context)
1358</pre>
1359
1360<p>A description of each parameter follows:</p>
1361
1362<h5>source</h5>
1363<p>the source pixel view.</p>
1364
1365<h5>update</h5>
1366<p>the update callback method.</p>
1367
1368<h5>context</h5>
1369<p>the user defined context.</p>
1370
1371 </div>
cristy3eaa0ef2010-03-06 20:35:26 +00001372
1373</div>
1374
1375<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +00001376 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001377 <span id="linkbar-center">
1378 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +00001379 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +00001380 </span>
1381 <span id="linkbar-east">&nbsp;</span>
1382 </div>
1383 <div class="footer">
cristy4103d562010-12-10 01:38:54 +00001384 <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001385 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
1386 </div>
1387 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +00001388 <script type="text/javascript">
1389 var _gaq = _gaq || [];
1390 _gaq.push(['_setAccount', 'UA-17690367-1']);
1391 _gaq.push(['_trackPageview']);
1392
1393 (function() {
1394 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
1395 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
1396 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
1397 })();
1398 </script>
cristy3eaa0ef2010-03-06 20:35:26 +00001399</body>
1400</html>