blob: aa92bca0b737626a15628f0fb2f0151b6122cb52 [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">
84 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
85</div>
86<div class="sep"></div>
87<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000088 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +000089</div>
90<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000091 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</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: Options" href="../../www/command-line-options.html">Options</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: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +000098</div>
99<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000100 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +0000101</div>
102<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000103 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +0000104</div>
105<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000106 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000107</div>
108<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000109 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000110</div>
111<div class="sub">
cristydcca3fa2010-12-29 21:50:07 +0000112 <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000113</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000114<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000115<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000116 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000117</div>
118<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000119 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</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: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000123 </div>
124<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000125 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000126</div>
cristybb503372010-05-27 20:51:26 +0000127<div class="menu">
128 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
129</div>
cristy3ed852e2009-09-05 21:47:34 +0000130<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000131 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000132</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000133<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000134<div class="menu">
cristy52923442011-01-15 22:54:31 +0000135 <a title="Search" href="../../www/search.html">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000136</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000137<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000138<div class="menu">
cristyffb69ed2010-12-25 00:06:48 +0000139 <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000140</div>
141<div class="sub">
cristyffb69ed2010-12-25 00:06:48 +0000142 <a title="Site Map: Links" href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000143</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000144<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000145<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000146 <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000147
148<div class="sponsbox">
cristy178edaf2011-01-23 03:42:39 +0000149<div class="sponsor">
cristyaf8d6652011-02-04 21:57:45 +0000150 <a title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
151</div>
152<div class="sponsor">
153 <a title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
154</div>
155<div class="sponsor">
cristy2bd2a982011-02-15 00:52:58 +0000156 <a title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201107010240 r.leo -->
cristy178edaf2011-01-23 03:42:39 +0000157</div>
cristyec6b4752011-01-08 03:16:23 +0000158<div class="sponsor">
cristy52923442011-01-15 22:54:31 +0000159 <a title="Sponsor: Web Hosting" href="http://www.bodhost.com/hosting.shtml">Web Hosting</a><!-- 201104010090 -->
cristy7d52cd62010-10-01 17:26:59 +0000160</div>
161<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000162 <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
163</div>
164<div class="sponsor">
cristy851dbce2010-08-06 21:40:00 +0000165 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
166</div>
cristyec6b4752011-01-08 03:16:23 +0000167<div class="sponsor">
cristy178edaf2011-01-23 03:42:39 +0000168 <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
169</div>
170<div class="sponsor">
cristy6f77f692011-02-15 15:31:39 +0000171 <a title="Sponsor: Free Catalogs" href="http://www.who-sells-it.com/">Free Catalogs</a><!-- 20120801000600 -->
cristyec6b4752011-01-08 03:16:23 +0000172</div>
cristy3ed852e2009-09-05 21:47:34 +0000173</div>
174</div>
cristyce69bb02010-07-27 19:49:46 +0000175</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000176
cristyce69bb02010-07-27 19:49:46 +0000177<div class="eastbar">
178 <script type="text/javascript">
179 <!--
180 google_ad_client = "pub-3129977114552745";
cristyce69bb02010-07-27 19:49:46 +0000181 google_ad_slot = "0574824969";
182 google_ad_width = 160;
183 google_ad_height = 600;
184 //-->
185 </script>
186 <script type="text/javascript"
187 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
188 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000189</div>
190
191<div class="main">
192
cristy6f77f692011-02-15 15:31:39 +0000193<h1>Module deprecate
194 Methods</h1>
195<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 +0000196
cristy6f77f692011-02-15 15:31:39 +0000197<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
198_8c.html" id="MagickAverageImages">MagickAverageImages</a></h2>
199<div class="doc-section">
200
201<p>MagickAverageImages() average a set of images.</p>
202
203<p>The format of the MagickAverageImages method is:</p>
204
205<pre class="code">
206 MagickWand *MagickAverageImages(MagickWand *wand)
207</pre>
208
209<p>A description of each parameter follows:</p>
210
211<h5>wand</h5>
212<p>the magick wand.</p>
213
214 </div>
215<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
216_8c.html" id="ClonePixelView">ClonePixelView</a></h2>
217<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>
233<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
234_8c.html" id="DestroyPixelView">DestroyPixelView</a></h2>
235<div class="doc-section">
236
237<p>DestroyPixelView() deallocates memory associated with a pixel view.</p>
238
239<p>The format of the DestroyPixelView method is:</p>
240
241<pre class="code">
242 PixelView *DestroyPixelView(PixelView *pixel_view,
243 const size_t number_wands,const size_t number_threads)
244</pre>
245
246<p>A description of each parameter follows:</p>
247
248<h5>pixel_view</h5>
249<p>the pixel view.</p>
250
251<h5>number_wand</h5>
252<p>the number of pixel wands.</p>
253
254<h5>number_threads</h5>
255<p>number of threads.</p>
256
257 </div>
258<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
259_8c.html" id="DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a></h2>
260<div class="doc-section">
261
262<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>
263
264<p>Use this pragma:</p>
265
266<pre class="text">
267 #pragma omp critical
268</pre>
269
270<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
271
272<p>The format of the DuplexTransferPixelViewIterator method is:</p>
273
274<pre class="code">
275 MagickBooleanType DuplexTransferPixelViewIterator(PixelView *source,
276 PixelView *duplex,PixelView *destination,
277 DuplexTransferPixelViewMethod transfer,void *context)
278</pre>
279
280<p>A description of each parameter follows:</p>
281
282<h5>source</h5>
283<p>the source pixel view.</p>
284
285<h5>duplex</h5>
286<p>the duplex pixel view.</p>
287
288<h5>destination</h5>
289<p>the destination pixel view.</p>
290
291<h5>transfer</h5>
292<p>the transfer callback method.</p>
293
294<h5>context</h5>
295<p>the user defined context.</p>
296
297 </div>
298<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
299_8c.html" id="GetPixelViewException">GetPixelViewException</a></h2>
300<div class="doc-section">
301
302<p>GetPixelViewException() returns the severity, reason, and description of any error that occurs when utilizing a pixel view.</p>
303
304<p>The format of the GetPixelViewException method is:</p>
305
306<pre class="code">
307 char *GetPixelViewException(const PixelWand *pixel_view,
308 ExceptionType *severity)
309</pre>
310
311<p>A description of each parameter follows:</p>
312
313<h5>pixel_view</h5>
314<p>the pixel pixel_view.</p>
315
316<h5>severity</h5>
317<p>the severity of the error is returned here.</p>
318
319 </div>
320<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
321_8c.html" id="GetPixelViewHeight">GetPixelViewHeight</a></h2>
322<div class="doc-section">
323
324<p>GetPixelViewHeight() returns the pixel view height.</p>
325
326<p>The format of the GetPixelViewHeight method is:</p>
327
328<pre class="code">
329 size_t GetPixelViewHeight(const PixelView *pixel_view)
330</pre>
331
332<p>A description of each parameter follows:</p>
333
334<h5>pixel_view</h5>
335<p>the pixel view.</p>
336
337 </div>
338<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
339_8c.html" id="GetPixelViewIterator">GetPixelViewIterator</a></h2>
340<div class="doc-section">
341
342<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>
343
344<p>Use this pragma:</p>
345
346<pre class="text">
347 #pragma omp critical
348</pre>
349
350<p>to define a section of code in your callback get method that must be executed by a single thread at a time.</p>
351
352<p>The format of the GetPixelViewIterator method is:</p>
353
354<pre class="code">
355 MagickBooleanType GetPixelViewIterator(PixelView *source,
356 GetPixelViewMethod get,void *context)
357</pre>
358
359<p>A description of each parameter follows:</p>
360
361<h5>source</h5>
362<p>the source pixel view.</p>
363
364<h5>get</h5>
365<p>the get callback method.</p>
366
367<h5>context</h5>
368<p>the user defined context.</p>
369
370 </div>
371<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
372_8c.html" id="GetPixelViewPixels">GetPixelViewPixels</a></h2>
373<div class="doc-section">
374
375<p>GetPixelViewPixels() returns the pixel view pixel_wands.</p>
376
377<p>The format of the GetPixelViewPixels method is:</p>
378
379<pre class="code">
380 PixelWand *GetPixelViewPixels(const PixelView *pixel_view)
381</pre>
382
383<p>A description of each parameter follows:</p>
384
385<h5>pixel_view</h5>
386<p>the pixel view.</p>
387
388 </div>
389<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
390_8c.html" id="GetPixelViewWand">GetPixelViewWand</a></h2>
391<div class="doc-section">
392
393<p>GetPixelViewWand() returns the magick wand associated with the pixel view.</p>
394
395<p>The format of the GetPixelViewWand method is:</p>
396
397<pre class="code">
398 MagickWand *GetPixelViewWand(const PixelView *pixel_view)
399</pre>
400
401<p>A description of each parameter follows:</p>
402
403<h5>pixel_view</h5>
404<p>the pixel view.</p>
405
406 </div>
407<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
408_8c.html" id="GetPixelViewWidth">GetPixelViewWidth</a></h2>
409<div class="doc-section">
410
411<p>GetPixelViewWidth() returns the pixel view width.</p>
412
413<p>The format of the GetPixelViewWidth method is:</p>
414
415<pre class="code">
416 size_t GetPixelViewWidth(const PixelView *pixel_view)
417</pre>
418
419<p>A description of each parameter follows:</p>
420
421<h5>pixel_view</h5>
422<p>the pixel view.</p>
423
424 </div>
425<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
426_8c.html" id="GetPixelViewX">GetPixelViewX</a></h2>
427<div class="doc-section">
428
429<p>GetPixelViewX() returns the pixel view x offset.</p>
430
431<p>The format of the GetPixelViewX method is:</p>
432
433<pre class="code">
434 ssize_t GetPixelViewX(const PixelView *pixel_view)
435</pre>
436
437<p>A description of each parameter follows:</p>
438
439<h5>pixel_view</h5>
440<p>the pixel view.</p>
441
442 </div>
443<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
444_8c.html" id="GetPixelViewY">GetPixelViewY</a></h2>
445<div class="doc-section">
446
447<p>GetPixelViewY() returns the pixel view y offset.</p>
448
449<p>The format of the GetPixelViewY method is:</p>
450
451<pre class="code">
452 ssize_t GetPixelViewY(const PixelView *pixel_view)
453</pre>
454
455<p>A description of each parameter follows:</p>
456
457<h5>pixel_view</h5>
458<p>the pixel view.</p>
459
460 </div>
461<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
462_8c.html" id="IsPixelView">IsPixelView</a></h2>
463<div class="doc-section">
464
465<p>IsPixelView() returns MagickTrue if the the parameter is verified as a pixel view container.</p>
466
467<p>The format of the IsPixelView method is:</p>
468
469<pre class="code">
470 MagickBooleanType IsPixelView(const PixelView *pixel_view)
471</pre>
472
473<p>A description of each parameter follows:</p>
474
475<h5>pixel_view</h5>
476<p>the pixel view.</p>
477
478 </div>
479<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
480_8c.html" id="MagickClipPathImage">MagickClipPathImage</a></h2>
481<div class="doc-section">
482
483<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>
484
485<p>The format of the MagickClipPathImage method is:</p>
486
487<pre class="code">
488 MagickBooleanType MagickClipPathImage(MagickWand *wand,
489 const char *pathname,const MagickBooleanType inside)
490</pre>
491
492<p>A description of each parameter follows:</p>
493
494<h5>wand</h5>
495<p>the magick wand.</p>
496
497<h5>pathname</h5>
498<p>name of clipping path resource. If name is preceded by #, use clipping path numbered by name.</p>
499
500<h5>inside</h5>
501<p>if non-zero, later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path.</p>
502
503 </div>
504<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
505_8c.html" id="DrawGetFillAlpha">DrawGetFillAlpha</a></h2>
506<div class="doc-section">
507
508<p>DrawGetFillAlpha() returns the alpha used when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
509
510<p>The format of the DrawGetFillAlpha method is:</p>
511
512<pre class="code">
513 double DrawGetFillAlpha(const DrawingWand *wand)
514</pre>
515
516<p>A description of each parameter follows:</p>
517
518<h5>wand</h5>
519<p>the drawing wand.</p>
520
521 </div>
522<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
523_8c.html" id="DrawGetStrokeAlpha">DrawGetStrokeAlpha</a></h2>
524<div class="doc-section">
525
526<p>DrawGetStrokeAlpha() returns the alpha of stroked object outlines.</p>
527
528<p>The format of the DrawGetStrokeAlpha method is:</p>
529
530<pre class="code">
531 double DrawGetStrokeAlpha(const DrawingWand *wand)
532</pre>
533
534<p>A description of each parameter follows:</p>
535
536<h5>wand</h5>
537<p>the drawing wand. </p>
538 </div>
539<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
540_8c.html" id="DrawPeekGraphicWand">DrawPeekGraphicWand</a></h2>
541<div class="doc-section">
542
543<p>DrawPeekGraphicWand() returns the current drawing wand.</p>
544
545<p>The format of the PeekDrawingWand method is:</p>
546
547<pre class="code">
548 DrawInfo *DrawPeekGraphicWand(const DrawingWand *wand)
549</pre>
550
551<p>A description of each parameter follows:</p>
552
553<h5>wand</h5>
554<p>the drawing wand.</p>
555
556 </div>
557<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
558_8c.html" id="DrawPopGraphicContext">DrawPopGraphicContext</a></h2>
559<div class="doc-section">
560
561<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>
562
563<p>The format of the DrawPopGraphicContext method is:</p>
564
565<pre class="code">
566 MagickBooleanType DrawPopGraphicContext(DrawingWand *wand)
567</pre>
568
569<p>A description of each parameter follows:</p>
570
571<h5>wand</h5>
572<p>the drawing wand.</p>
573
574 </div>
575<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
576_8c.html" id="DrawPushGraphicContext">DrawPushGraphicContext</a></h2>
577<div class="doc-section">
578
579<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>
580
581<p>The format of the DrawPushGraphicContext method is:</p>
582
583<pre class="code">
584 MagickBooleanType DrawPushGraphicContext(DrawingWand *wand)
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 </div>
593<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
594_8c.html" id="DrawSetFillAlpha">DrawSetFillAlpha</a></h2>
595<div class="doc-section">
596
597<p>DrawSetFillAlpha() sets the alpha to use when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
598
599<p>The format of the DrawSetFillAlpha method is:</p>
600
601<pre class="code">
602 void DrawSetFillAlpha(DrawingWand *wand,const double fill_alpha)
603</pre>
604
605<p>A description of each parameter follows:</p>
606
607<h5>wand</h5>
608<p>the drawing wand.</p>
609
610<h5>fill_alpha</h5>
611<p>fill alpha</p>
612
613 </div>
614<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
615_8c.html" id="DrawSetStrokeAlpha">DrawSetStrokeAlpha</a></h2>
616<div class="doc-section">
617
618<p>DrawSetStrokeAlpha() specifies the alpha of stroked object outlines.</p>
619
620<p>The format of the DrawSetStrokeAlpha method is:</p>
621
622<pre class="code">
623 void DrawSetStrokeAlpha(DrawingWand *wand,const double stroke_alpha)
624</pre>
625
626<p>A description of each parameter follows:</p>
627
628<h5>wand</h5>
629<p>the drawing wand.</p>
630
631<h5>stroke_alpha</h5>
632<p>stroke alpha. The value 1.0 is opaque.</p>
633
634 </div>
635<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
636_8c.html" id="MagickColorFloodfillImage">MagickColorFloodfillImage</a></h2>
637<div class="doc-section">
638
639<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>
640
641<p>The format of the MagickColorFloodfillImage method is:</p>
642
643<pre class="code">
644 MagickBooleanType MagickColorFloodfillImage(MagickWand *wand,
645 const PixelWand *fill,const double fuzz,const PixelWand *bordercolor,
646 const ssize_t x,const ssize_t y)
647</pre>
648
649<p>A description of each parameter follows:</p>
650
651<h5>wand</h5>
652<p>the magick wand.</p>
653
654<h5>fill</h5>
655<p>the floodfill color pixel wand.</p>
656
657<h5>fuzz</h5>
658<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>
659
660<h5>bordercolor</h5>
661<p>the border color pixel wand.</p>
662
663<h5>x,y</h5>
664<p>the starting location of the operation.</p>
665
666 </div>
667<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
668_8c.html" id="MagickDescribeImage">MagickDescribeImage</a></h2>
669<div class="doc-section">
670
671<p>MagickDescribeImage() identifies an image by printing its attributes to the file. Attributes include the image width, height, size, and others.</p>
672
673<p>The format of the MagickDescribeImage method is:</p>
674
675<pre class="code">
676 const char *MagickDescribeImage(MagickWand *wand)
677</pre>
678
679<p>A description of each parameter follows:</p>
680
681<h5>wand</h5>
682<p>the magick wand.</p>
683
684 </div>
685<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
686_8c.html" id="MagickFlattenImages">MagickFlattenImages</a></h2>
687<div class="doc-section">
688
689<p>MagickFlattenImages() merges a sequence of images. This useful for combining Photoshop layers into a single image.</p>
690
691<p>The format of the MagickFlattenImages method is:</p>
692
693<pre class="code">
694 MagickWand *MagickFlattenImages(MagickWand *wand)
695</pre>
696
697<p>A description of each parameter follows:</p>
698
699<h5>wand</h5>
700<p>the magick wand.</p>
701
702 </div>
703<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
704_8c.html" id="MagickGetImageAttribute">MagickGetImageAttribute</a></h2>
705<div class="doc-section">
706
707<p>MagickGetImageAttribute() returns a value associated with the specified property. Use MagickRelinquishMemory() to free the value when you are finished with it.</p>
708
709<p>The format of the MagickGetImageAttribute method is:</p>
710
711<pre class="code">
712 char *MagickGetImageAttribute(MagickWand *wand,const char *property)
713</pre>
714
715<p>A description of each parameter follows:</p>
716
717<h5>wand</h5>
718<p>the magick wand.</p>
719
720<h5>property</h5>
721<p>the property.</p>
722
723 </div>
724<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
725_8c.html" id="MagickGetImageMatte">MagickGetImageMatte</a></h2>
726<div class="doc-section">
727
728<p>MagickGetImageMatte() returns MagickTrue if the image has a matte channel otherwise MagickFalse.</p>
729
730<p>The format of the MagickGetImageMatte method is:</p>
731
732<pre class="code">
733 size_t MagickGetImageMatte(MagickWand *wand)
734</pre>
735
736<p>A description of each parameter follows:</p>
737
738<h5>wand</h5>
739<p>the magick wand.</p>
740
741 </div>
742<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
743_8c.html" id="MagickGetImagePixels">MagickGetImagePixels</a></h2>
744<div class="doc-section">
745
746<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>
747
748<p>Suppose you want to extract the first scanline of a 640x480 image as character data in red-green-blue order:</p>
749
750<pre class="text">
751 MagickGetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
752</pre>
753
754<p>The format of the MagickGetImagePixels method is:</p>
755
756<pre class="code">
757 MagickBooleanType MagickGetImagePixels(MagickWand *wand,
758 const ssize_t x,const ssize_t y,const size_t columns,
759 const size_t rows,const char *map,const StorageType storage,
760 void *pixels)
761</pre>
762
763<p>A description of each parameter follows:</p>
764
765<h5>wand</h5>
766<p>the magick wand.</p>
767
768<h5>x, y, columns, rows</h5>
769<p>These values define the perimeter of a region of pixels you want to extract.</p>
770
771<h5>map</h5>
772<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>
773
774<h5>storage</h5>
775<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>
776
777<h5>pixels</h5>
778<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>
779
780 </div>
781<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
782_8c.html" id="MagickGetImageSize">MagickGetImageSize</a></h2>
783<div class="doc-section">
784
785<p>MagickGetImageSize() returns the image length in bytes.</p>
786
787<p>The format of the MagickGetImageSize method is:</p>
788
789<pre class="code">
790 MagickBooleanType MagickGetImageSize(MagickWand *wand,
791 MagickSizeType *length)
792</pre>
793
794<p>A description of each parameter follows:</p>
795
796<h5>wand</h5>
797<p>the magick wand.</p>
798
799<h5>length</h5>
800<p>the image length in bytes.</p>
801
802 </div>
803<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
804_8c.html" id="MagickMapImage">MagickMapImage</a></h2>
805<div class="doc-section">
806
807<p>MagickMapImage() replaces the colors of an image with the closest color from a reference image.</p>
808
809<p>The format of the MagickMapImage method is:</p>
810
811<pre class="code">
812 MagickBooleanType MagickMapImage(MagickWand *wand,
813 const MagickWand *map_wand,const MagickBooleanType dither)
814</pre>
815
816<p>A description of each parameter follows:</p>
817
818<h5>wand</h5>
819<p>the magick wand.</p>
820
821<h5>map</h5>
822<p>the map wand.</p>
823
824<h5>dither</h5>
825<p>Set this integer value to something other than zero to dither the mapped image.</p>
826
827 </div>
828<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
829_8c.html" id="MagickMatteFloodfillImage">MagickMatteFloodfillImage</a></h2>
830<div class="doc-section">
831
832<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>
833
834<p>The format of the MagickMatteFloodfillImage method is:</p>
835
836<pre class="code">
837 MagickBooleanType MagickMatteFloodfillImage(MagickWand *wand,
838 const double alpha,const double fuzz,const PixelWand *bordercolor,
839 const ssize_t x,const ssize_t y)
840</pre>
841
842<p>A description of each parameter follows:</p>
843
844<h5>wand</h5>
845<p>the magick wand.</p>
846
847<h5>alpha</h5>
848<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
849
850<h5>fuzz</h5>
851<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>
852
853<h5>bordercolor</h5>
854<p>the border color pixel wand.</p>
855
856<h5>x,y</h5>
857<p>the starting location of the operation.</p>
858
859 </div>
860<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
861_8c.html" id="MagickMaximumImages">MagickMaximumImages</a></h2>
862<div class="doc-section">
863
864<p>MagickMaximumImages() returns the maximum intensity of an image sequence.</p>
865
866<p>The format of the MagickMaximumImages method is:</p>
867
868<pre class="code">
869 MagickWand *MagickMaximumImages(MagickWand *wand)
870</pre>
871
872<p>A description of each parameter follows:</p>
873
874<h5>wand</h5>
875<p>the magick wand.</p>
876
877 </div>
878<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
879_8c.html" id="MagickMinimumImages">MagickMinimumImages</a></h2>
880<div class="doc-section">
881
882<p>MagickMinimumImages() returns the minimum intensity of an image sequence.</p>
883
884<p>The format of the MagickMinimumImages method is:</p>
885
886<pre class="code">
887 MagickWand *MagickMinimumImages(MagickWand *wand)
888</pre>
889
890<p>A description of each parameter follows:</p>
891
892<h5>wand</h5>
893<p>the magick wand.</p>
894
895 </div>
896<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
897_8c.html" id="MagickMosaicImages">MagickMosaicImages</a></h2>
898<div class="doc-section">
899
900<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>
901
902<p>The format of the MagickMosaicImages method is:</p>
903
904<pre class="code">
905 MagickWand *MagickMosaicImages(MagickWand *wand)
906</pre>
907
908<p>A description of each parameter follows:</p>
909
910<h5>wand</h5>
911<p>the magick wand.</p>
912
913 </div>
914<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
915_8c.html" id="MagickOpaqueImage">MagickOpaqueImage</a></h2>
916<div class="doc-section">
917
918<p>MagickOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
919
920<p>The format of the MagickOpaqueImage method is:</p>
921
922<pre class="code">
923 MagickBooleanType MagickOpaqueImage(MagickWand *wand,
924 const PixelWand *target,const PixelWand *fill,const double fuzz)
925</pre>
926
927<p>A description of each parameter follows:</p>
928
929<h5>wand</h5>
930<p>the magick wand.</p>
931
932<h5>channel</h5>
933<p>the channel(s).</p>
934
935<h5>target</h5>
936<p>Change this target color to the fill color within the image.</p>
937
938<h5>fill</h5>
939<p>the fill pixel wand.</p>
940
941<h5>fuzz</h5>
942<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>
943
944 </div>
945<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
946_8c.html" id="MagickPaintFloodfillImage">MagickPaintFloodfillImage</a></h2>
947<div class="doc-section">
948
949<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>
950
951<p>The format of the MagickPaintFloodfillImage method is:</p>
952
953<pre class="code">
954 MagickBooleanType MagickPaintFloodfillImage(MagickWand *wand,
955 const ChannelType channel,const PixelWand *fill,const double fuzz,
956 const PixelWand *bordercolor,const ssize_t x,const ssize_t y)
957</pre>
958
959<p>A description of each parameter follows:</p>
960
961<h5>wand</h5>
962<p>the magick wand.</p>
963
964<h5>channel</h5>
965<p>the channel(s).</p>
966
967<h5>fill</h5>
968<p>the floodfill color pixel wand.</p>
969
970<h5>fuzz</h5>
971<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>
972
973<h5>bordercolor</h5>
974<p>the border color pixel wand.</p>
975
976<h5>x,y</h5>
977<p>the starting location of the operation.</p>
978
979 </div>
980<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
981_8c.html" id="MagickPaintOpaqueImage">MagickPaintOpaqueImage</a></h2>
982<div class="doc-section">
983
984<p>MagickPaintOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
985
986<p>The format of the MagickPaintOpaqueImage method is:</p>
987
988<pre class="code">
989 MagickBooleanType MagickPaintOpaqueImage(MagickWand *wand,
990 const PixelWand *target,const PixelWand *fill,const double fuzz)
991 MagickBooleanType MagickPaintOpaqueImageChannel(MagickWand *wand,
992 const ChannelType channel,const PixelWand *target,
993 const PixelWand *fill,const double fuzz)
994</pre>
995
996<p>A description of each parameter follows:</p>
997
998<h5>wand</h5>
999<p>the magick wand.</p>
1000
1001<h5>channel</h5>
1002<p>the channel(s).</p>
1003
1004<h5>target</h5>
1005<p>Change this target color to the fill color within the image.</p>
1006
1007<h5>fill</h5>
1008<p>the fill pixel wand.</p>
1009
1010<h5>fuzz</h5>
1011<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>
1012
1013 </div>
1014<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1015_8c.html" id="MagickPaintTransparentImage">MagickPaintTransparentImage</a></h2>
1016<div class="doc-section">
1017
1018<p>MagickPaintTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
1019
1020<p>The format of the MagickPaintTransparentImage method is:</p>
1021
1022<pre class="code">
1023 MagickBooleanType MagickPaintTransparentImage(MagickWand *wand,
1024 const PixelWand *target,const double alpha,const double fuzz)
1025</pre>
1026
1027<p>A description of each parameter follows:</p>
1028
1029<h5>wand</h5>
1030<p>the magick wand.</p>
1031
1032<h5>target</h5>
1033<p>Change this target color to specified opacity value within the image.</p>
1034
1035<h5>alpha</h5>
1036<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
1037
1038<h5>fuzz</h5>
1039<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>
1040
1041 </div>
1042<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1043_8c.html" id="MagickRecolorImage">MagickRecolorImage</a></h2>
1044<div class="doc-section">
1045
1046<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>
1047
1048<p>The format of the MagickRecolorImage method is:</p>
1049
1050<pre class="code">
1051 MagickBooleanType MagickRecolorImage(MagickWand *wand,
1052 const size_t order,const double *color_matrix)
1053</pre>
1054
1055<p>A description of each parameter follows:</p>
1056
1057<h5>wand</h5>
1058<p>the magick wand.</p>
1059
1060<h5>order</h5>
1061<p>the number of columns and rows in the color matrix.</p>
1062
1063<h5>color_matrix</h5>
1064<p>An array of doubles representing the color matrix.</p>
1065
1066 </div>
1067<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1068_8c.html" id="MagickSetImageAttribute">MagickSetImageAttribute</a></h2>
1069<div class="doc-section">
1070
1071<p>MagickSetImageAttribute() associates a property with an image.</p>
1072
1073<p>The format of the MagickSetImageAttribute method is:</p>
1074
1075<pre class="code">
1076 MagickBooleanType MagickSetImageAttribute(MagickWand *wand,
1077 const char *property,const char *value)
1078</pre>
1079
1080<p>A description of each parameter follows:</p>
1081
1082<h5>wand</h5>
1083<p>the magick wand.</p>
1084
1085<h5>property</h5>
1086<p>the property.</p>
1087
1088<h5>value</h5>
1089<p>the value.</p>
1090
1091 </div>
1092<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1093_8c.html" id="MagickSetImageIndex">MagickSetImageIndex</a></h2>
1094<div class="doc-section">
1095
1096<p>MagickSetImageIndex() set the current image to the position of the list specified with the index parameter.</p>
1097
1098<p>The format of the MagickSetImageIndex method is:</p>
1099
1100<pre class="code">
1101 MagickBooleanType MagickSetImageIndex(MagickWand *wand,const ssize_t index)
1102</pre>
1103
1104<p>A description of each parameter follows:</p>
1105
1106<h5>wand</h5>
1107<p>the magick wand.</p>
1108
1109<h5>index</h5>
1110<p>the scene number.</p>
1111
1112 </div>
1113<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1114_8c.html" id="MagickTransparentImage">MagickTransparentImage</a></h2>
1115<div class="doc-section">
1116
1117<p>MagickTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
1118
1119<p>The format of the MagickTransparentImage method is:</p>
1120
1121<pre class="code">
1122 MagickBooleanType MagickTransparentImage(MagickWand *wand,
1123 const PixelWand *target,const double alpha,const double fuzz)
1124</pre>
1125
1126<p>A description of each parameter follows:</p>
1127
1128<h5>wand</h5>
1129<p>the magick wand.</p>
1130
1131<h5>target</h5>
1132<p>Change this target color to specified opacity value within the image.</p>
1133
1134<h5>alpha</h5>
1135<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
1136
1137<h5>fuzz</h5>
1138<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>
1139
1140 </div>
1141<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1142_8c.html" id="MagickRegionOfInterestImage">MagickRegionOfInterestImage</a></h2>
1143<div class="doc-section">
1144
1145<p>MagickRegionOfInterestImage() extracts a region of the image and returns it as a new wand.</p>
1146
1147<p>The format of the MagickRegionOfInterestImage method is:</p>
1148
1149<pre class="code">
1150 MagickWand *MagickRegionOfInterestImage(MagickWand *wand,
1151 const size_t width,const size_t height,const ssize_t x,
1152 const ssize_t y)
1153</pre>
1154
1155<p>A description of each parameter follows:</p>
1156
1157<h5>wand</h5>
1158<p>the magick wand.</p>
1159
1160<h5>width</h5>
1161<p>the region width.</p>
1162
1163<h5>height</h5>
1164<p>the region height.</p>
1165
1166<h5>x</h5>
1167<p>the region x offset.</p>
1168
1169<h5>y</h5>
1170<p>the region y offset.</p>
1171
1172 </div>
1173<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1174_8c.html" id="MagickSetImagePixels">MagickSetImagePixels</a></h2>
1175<div class="doc-section">
1176
1177<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>
1178
1179<p>Suppose your want to upload the first scanline of a 640x480 image from character data in red-green-blue order:</p>
1180
1181<pre class="text">
1182 MagickSetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
1183</pre>
1184
1185<p>The format of the MagickSetImagePixels method is:</p>
1186
1187<pre class="code">
1188 MagickBooleanType MagickSetImagePixels(MagickWand *wand,
1189 const ssize_t x,const ssize_t y,const size_t columns,
1190 const size_t rows,const char *map,const StorageType storage,
1191 const void *pixels)
1192</pre>
1193
1194<p>A description of each parameter follows:</p>
1195
1196<h5>wand</h5>
1197<p>the magick wand.</p>
1198
1199<h5>x, y, columns, rows</h5>
1200<p>These values define the perimeter of a region of pixels you want to define.</p>
1201
1202<h5>map</h5>
1203<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>
1204
1205<h5>storage</h5>
1206<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>
1207
1208<h5>pixels</h5>
1209<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>
1210
1211 </div>
1212<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1213_8c.html" id="MagickWriteImageBlob">MagickWriteImageBlob</a></h2>
1214<div class="doc-section">
1215
1216<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>
1217
1218<p>Use MagickRelinquishMemory() to free the blob when you are done with it.</p>
1219
1220<p>The format of the MagickWriteImageBlob method is:</p>
1221
1222<pre class="code">
1223 unsigned char *MagickWriteImageBlob(MagickWand *wand,size_t *length)
1224</pre>
1225
1226<p>A description of each parameter follows:</p>
1227
1228<h5>wand</h5>
1229<p>the magick wand.</p>
1230
1231<h5>length</h5>
1232<p>the length of the blob.</p>
1233
1234 </div>
1235<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1236_8c.html" id="NewPixelView">NewPixelView</a></h2>
1237<div class="doc-section">
1238
1239<p>NewPixelView() returns a pixel view required for all other methods in the Pixel View API.</p>
1240
1241<p>The format of the NewPixelView method is:</p>
1242
1243<pre class="code">
1244 PixelView *NewPixelView(MagickWand *wand)
1245</pre>
1246
1247<p>A description of each parameter follows:</p>
1248
1249<h5>wand</h5>
1250<p>the wand.</p>
1251
1252 </div>
1253<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1254_8c.html" id="NewPixelViewRegion">NewPixelViewRegion</a></h2>
1255<div class="doc-section">
1256
1257<p>NewPixelViewRegion() returns a pixel view required for all other methods in the Pixel View API.</p>
1258
1259<p>The format of the NewPixelViewRegion method is:</p>
1260
1261<pre class="code">
1262 PixelView *NewPixelViewRegion(MagickWand *wand,const ssize_t x,
1263 const ssize_t y,const size_t width,const size_t height)
1264</pre>
1265
1266<p>A description of each parameter follows:</p>
1267
1268<h5>wand</h5>
1269<p>the magick wand.</p>
1270
1271<h5>x,y,columns,rows</h5>
1272<p>These values define the perimeter of a region of pixel_wands view.</p>
1273
1274 </div>
1275<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1276_8c.html" id="PixelGetNextRow">PixelGetNextRow</a></h2>
1277<div class="doc-section">
1278
1279<p>PixelGetNextRow() returns the next row as an array of pixel wands from the pixel iterator.</p>
1280
1281<p>The format of the PixelGetNextRow method is:</p>
1282
1283<pre class="code">
1284 PixelWand **PixelGetNextRow(PixelIterator *iterator,
1285 size_t *number_wands)
1286</pre>
1287
1288<p>A description of each parameter follows:</p>
1289
1290<h5>iterator</h5>
1291<p>the pixel iterator.</p>
1292
1293<h5>number_wands</h5>
1294<p>the number of pixel wands.</p>
1295
1296 </div>
1297<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1298_8c.html" id="PixelIteratorGetException">PixelIteratorGetException</a></h2>
1299<div class="doc-section">
1300
1301<p>PixelIteratorGetException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
1302
1303<p>The format of the PixelIteratorGetException method is:</p>
1304
1305<pre class="code">
1306 char *PixelIteratorGetException(const Pixeliterator *iterator,
1307 ExceptionType *severity)
1308</pre>
1309
1310<p>A description of each parameter follows:</p>
1311
1312<h5>iterator</h5>
1313<p>the pixel iterator.</p>
1314
1315<h5>severity</h5>
1316<p>the severity of the error is returned here.</p>
1317
1318 </div>
1319<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1320_8c.html" id="SetPixelViewIterator">SetPixelViewIterator</a></h2>
1321<div class="doc-section">
1322
1323<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>
1324
1325<p>Use this pragma:</p>
1326
1327<pre class="text">
1328 #pragma omp critical
1329</pre>
1330
1331<p>to define a section of code in your callback set method that must be executed by a single thread at a time.</p>
1332
1333<p>The format of the SetPixelViewIterator method is:</p>
1334
1335<pre class="code">
1336 MagickBooleanType SetPixelViewIterator(PixelView *destination,
1337 SetPixelViewMethod set,void *context)
1338</pre>
1339
1340<p>A description of each parameter follows:</p>
1341
1342<h5>destination</h5>
1343<p>the pixel view.</p>
1344
1345<h5>set</h5>
1346<p>the set callback method.</p>
1347
1348<h5>context</h5>
1349<p>the user defined context.</p>
1350
1351 </div>
1352<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1353_8c.html" id="TransferPixelViewIterator">TransferPixelViewIterator</a></h2>
1354<div class="doc-section">
1355
1356<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>
1357
1358<p>Use this pragma:</p>
1359
1360<pre class="text">
1361 #pragma omp critical
1362</pre>
1363
1364<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
1365
1366<p>The format of the TransferPixelViewIterator method is:</p>
1367
1368<pre class="code">
1369 MagickBooleanType TransferPixelViewIterator(PixelView *source,
1370 PixelView *destination,TransferPixelViewMethod transfer,void *context)
1371</pre>
1372
1373<p>A description of each parameter follows:</p>
1374
1375<h5>source</h5>
1376<p>the source pixel view.</p>
1377
1378<h5>destination</h5>
1379<p>the destination pixel view.</p>
1380
1381<h5>transfer</h5>
1382<p>the transfer callback method.</p>
1383
1384<h5>context</h5>
1385<p>the user defined context.</p>
1386
1387 </div>
1388<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
1389_8c.html" id="UpdatePixelViewIterator">UpdatePixelViewIterator</a></h2>
1390<div class="doc-section">
1391
1392<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>
1393
1394<p>Use this pragma:</p>
1395
1396<pre class="text">
1397 #pragma omp critical
1398</pre>
1399
1400<p>to define a section of code in your callback update method that must be executed by a single thread at a time.</p>
1401
1402<p>The format of the UpdatePixelViewIterator method is:</p>
1403
1404<pre class="code">
1405 MagickBooleanType UpdatePixelViewIterator(PixelView *source,
1406 UpdatePixelViewMethod update,void *context)
1407</pre>
1408
1409<p>A description of each parameter follows:</p>
1410
1411<h5>source</h5>
1412<p>the source pixel view.</p>
1413
1414<h5>update</h5>
1415<p>the update callback method.</p>
1416
1417<h5>context</h5>
1418<p>the user defined context.</p>
1419
1420 </div>
cristy3eaa0ef2010-03-06 20:35:26 +00001421
1422</div>
1423
1424<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +00001425 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001426 <span id="linkbar-center">
1427 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +00001428 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +00001429 </span>
1430 <span id="linkbar-east">&nbsp;</span>
1431 </div>
1432 <div class="footer">
cristy4103d562010-12-10 01:38:54 +00001433 <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001434 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
1435 </div>
1436 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +00001437 <script type="text/javascript">
1438 var _gaq = _gaq || [];
1439 _gaq.push(['_setAccount', 'UA-17690367-1']);
1440 _gaq.push(['_trackPageview']);
1441
1442 (function() {
1443 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
1444 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
1445 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
1446 })();
1447 </script>
cristy3eaa0ef2010-03-06 20:35:26 +00001448</body>
1449</html>