blob: 0bbefc072c76fd81ae4cab8780ac0d3db0a1dd27 [file] [log] [blame]
cristy44cbd482013-08-04 20:53:36 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="-//W3C//DTD XHTML 1.1//EN" xml:lang="en" xsi:schemaLocation="http://www.w3.org/1999/xhtml http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">
cristy06f63f22012-10-31 00:50:07 +00003<head>
cristy44cbd482013-08-04 20:53:36 +00004 <meta http-equiv="content-type" content="text/html; charset=UTF-8"></meta>
5 <meta name="google-site-verification" content="_bMOCDpkx9ZAzBwb2kF3PRHbfUUdFj2uO8Jd1AXArz4"></meta>
cristyffb69ed2010-12-25 00:06:48 +00006 <title>ImageMagick: MagickWand, C API for ImageMagick: Deprecated Methods</title>
cristy44cbd482013-08-04 20:53:36 +00007 <meta http-equiv="content-language" content="en-US"></meta>
8 <meta http-equiv="content-type" content="text/html; charset=utf-8"></meta>
9 <meta http-equiv="reply-to" content="magick-users@imagemagick.org"></meta>
10 <meta name="application-name" content="ImageMagick"></meta>
11 <meta name="description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats. In addition, resize, rotate, shear, distort or transform images automagically."></meta>
12 <meta name="application-url" content="http://www.imagemagick.org"></meta>
13 <meta name="generator" content="PHP"></meta>
14 <meta name="keywords" content="magickwc, api, for, imagemagick:, deprecated, methods, ImageMagick, PerlMagick, image processing, OpenMP, software development library, image, photo, software, Magick++, MagickWand"></meta>
15 <meta name="rating" content="GENERAL"></meta>
16 <meta name="robots" content="INDEX, FOLLOW"></meta>
17 <meta name="generator" content="ImageMagick Studio LLC"></meta>
18 <meta name="author" content="ImageMagick Studio LLC"></meta>
19 <meta name="revisit-after" content="2 DAYS"></meta>
20 <meta name="resource-type" content="document"></meta>
21 <meta name="copyright" content="Copyright (c) 1999-2012 ImageMagick Studio LLC"></meta>
22 <meta name="distribution" content="Global"></meta>
23 <link rel="icon" href="../../images/wand.png"></link>
24 <link rel="shortcut icon" href="../../images/wand.ico" type="images/x-icon"></link>
25 <link rel="canonical" href="../../index.html"></link>
26 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"></link>
cristy8ee7f242013-06-20 16:08:44 +000027
28 <!-- Add jQuery library -->
29 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
30
31 <!-- Add mousewheel plugin (this is optional) -->
32 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/lib/jquery.mousewheel-3.0.6.pack.js"></script>
33
34 <!-- Add fancyBox -->
cristy44cbd482013-08-04 20:53:36 +000035 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/source/jquery.fancybox.css?v=2.0.6" type="text/css" media="screen"></link>
cristy8ee7f242013-06-20 16:08:44 +000036 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/jquery.fancybox.pack.js?v=2.0.6"></script>
37
38 <!-- Optionally add helpers - button, thumbnail and/or media -->
cristy44cbd482013-08-04 20:53:36 +000039 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-buttons.css?v=1.0.2" type="text/css" media="screen"></link>
cristy8ee7f242013-06-20 16:08:44 +000040 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-buttons.js?v=1.0.2"></script>
41 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-media.js?v=1.0.0"></script>
42
cristy44cbd482013-08-04 20:53:36 +000043 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-thumbs.css?v=2.0.6" type="text/css" media="screen"></link>
cristy8ee7f242013-06-20 16:08:44 +000044 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/source/helpers/jquery.fancybox-thumbs.js?v=2.0.6"></script>
45
cristy72da67d2013-02-24 21:40:48 +000046 <script type="text/javascript">
cristy8ee7f242013-06-20 16:08:44 +000047 $(document).ready(function() {
48 $(".fancybox").fancybox();
49 });
cristy72da67d2013-02-24 21:40:48 +000050 </script>
cristy8ee7f242013-06-20 16:08:44 +000051
52 <!-- ImageMagick style -->
53 <style type="text/css" media="all">
54 @import url("../../www/magick.css");
55 </style>
cristy06f63f22012-10-31 00:50:07 +000056</head>
57
58<body id="www-imagemagick-org">
cristy8ee7f242013-06-20 16:08:44 +000059
cristy8ee7f242013-06-20 16:08:44 +000060
cristy8ee7f242013-06-20 16:08:44 +000061
cristy06f63f22012-10-31 00:50:07 +000062<div class="titlebar">
63<div style="margin: 17px auto; float: left;">
64 <script type="text/javascript">
65 <!--
66 google_ad_client = "pub-3129977114552745";
67 google_ad_slot = "5439289906";
68 google_ad_width = 728;
69 google_ad_height = 90;
70 //-->
71 </script>
cristy44cbd482013-08-04 20:53:36 +000072
cristy06f63f22012-10-31 00:50:07 +000073</div>
cristy417eeb12013-07-28 18:48:22 +000074<a href="../../discourse-server">
cristy44cbd482013-08-04 20:53:36 +000075 <img src="../../images/logo.jpg" alt="ImageMagick Logo" style="width: 123px; height: 118px; border: 0px; float: right;"></img></a>
cristy8ee7f242013-06-20 16:08:44 +000076<a href="../../index.html">
cristy44cbd482013-08-04 20:53:36 +000077 <img src="../../images/sprite.jpg" alt="ImageMagick Sprite" style="width: 114px; height: 118px; border: 0px; float: right;"></img></a>
cristy06f63f22012-10-31 00:50:07 +000078</div>
79
80<div class="westbar">
81
cristy3ed852e2009-09-05 21:47:34 +000082<div class="menu">
cristy8ee7f242013-06-20 16:08:44 +000083 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000084</div>
cristy3ed852e2009-09-05 21:47:34 +000085<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +000086 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
cristybb503372010-05-27 20:51:26 +000087</div>
88<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +000089 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
cristybb503372010-05-27 20:51:26 +000090</div>
91<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +000092 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
cristybb503372010-05-27 20:51:26 +000093</div>
94<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +000095 <a title="Binary Release: iOS" href="../../www/binary-releases.html#iOS">iOS</a>
cristyda16f162011-02-19 23:52:17 +000096</div>
97<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +000098 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
cristybb503372010-05-27 20:51:26 +000099</div>
cristy06f63f22012-10-31 00:50:07 +0000100<div class="sep"></div>
cristybb503372010-05-27 20:51:26 +0000101<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000102 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +0000103</div>
104<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000105 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +0000106</div>
107<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000108 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +0000109</div>
110<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000111 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +0000112</div>
113<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000114 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +0000115</div>
116<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000117 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +0000118</div>
119<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000120 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000121</div>
122<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000123 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000124</div>
125<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000126 <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000127</div>
cristy06f63f22012-10-31 00:50:07 +0000128<div class="sep"></div>
cristy44cbd482013-08-04 20:53:36 +0000129<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000130 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000131</div>
132<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000133 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000134</div>
135<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000136 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000137 </div>
138<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000139 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000140</div>
cristybb503372010-05-27 20:51:26 +0000141<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000142 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
cristybb503372010-05-27 20:51:26 +0000143</div>
cristy3ed852e2009-09-05 21:47:34 +0000144<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000145 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000146</div>
cristy06f63f22012-10-31 00:50:07 +0000147<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000148<div class="menu">
cristy3dfa2192013-02-24 22:46:05 +0000149 <a title="Search" href="http://www.imagemagick.org/script/search.php">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000150</div>
cristy06f63f22012-10-31 00:50:07 +0000151<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000152<div class="menu">
cristyd8833bf2013-02-24 22:14:53 +0000153 <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000154</div>
cristy44cbd482013-08-04 20:53:36 +0000155<div class="sub">
cristyd8833bf2013-02-24 22:14:53 +0000156 <a title="Site Map: Links" href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000157</div>
cristy06f63f22012-10-31 00:50:07 +0000158<div class="sep"></div>
cristy8ee7f242013-06-20 16:08:44 +0000159<div class="menu">
160 <a title="Support ImageMagick Development" href="../../www/support.html">Support ImageMagick Development</a>
cristy3ed852e2009-09-05 21:47:34 +0000161</div>
cristy06f63f22012-10-31 00:50:07 +0000162</div>
163
164<div class="eastbar">
cristy44cbd482013-08-04 20:53:36 +0000165
cristy417eeb12013-07-28 18:48:22 +0000166 <div> <a class="FlattrButton" style="display:none;" rev="flattr;button:compact;" href="../../index.html"></a></div>
cristy8ee7f242013-06-20 16:08:44 +0000167 <noscript>
168 <a href="http://flattr.com/thing/947300/Convert-Edit-And-Compose-Images" target="_blank">
cristy44cbd482013-08-04 20:53:36 +0000169 <img src="http://api.flattr.com/button/flattr-badge-large.png" alt="Flattr this" title="Flattr this" width="93" height="20" border="0"></img></a>
cristy8ee7f242013-06-20 16:08:44 +0000170 </noscript>
cristy44cbd482013-08-04 20:53:36 +0000171
172
cristy06f63f22012-10-31 00:50:07 +0000173</div>
174
175<div class="main">
176
cristy20398432011-08-11 01:31:50 +0000177<h1>Module deprecate Methods</h1>
cristy44cbd482013-08-04 20:53:36 +0000178<p class="navigation-index">[<a href="magick-deprecate.html#MagickAverageImages">MagickAverageImages</a><a href="magick-deprecate.html#ClonePixelView">ClonePixelView</a><a href="magick-deprecate.html#DestroyPixelView">DestroyPixelView</a><a href="magick-deprecate.html#DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a><a href="magick-deprecate.html#GetPixelViewException">GetPixelViewException</a><a href="magick-deprecate.html#GetPixelViewHeight">GetPixelViewHeight</a><a href="magick-deprecate.html#GetPixelViewIterator">GetPixelViewIterator</a><a href="magick-deprecate.html#GetPixelViewPixels">GetPixelViewPixels</a><a href="magick-deprecate.html#GetPixelViewWand">GetPixelViewWand</a><a href="magick-deprecate.html#GetPixelViewWidth">GetPixelViewWidth</a><a href="magick-deprecate.html#GetPixelViewX">GetPixelViewX</a><a href="magick-deprecate.html#GetPixelViewY">GetPixelViewY</a><a href="magick-deprecate.html#IsPixelView">IsPixelView</a><a href="magick-deprecate.html#MagickClipPathImage">MagickClipPathImage</a><a href="magick-deprecate.html#DrawGetFillAlpha">DrawGetFillAlpha</a><a href="magick-deprecate.html#DrawGetStrokeAlpha">DrawGetStrokeAlpha</a><a href="magick-deprecate.html#DrawPeekGraphicWand">DrawPeekGraphicWand</a><a href="magick-deprecate.html#DrawPopGraphicContext">DrawPopGraphicContext</a><a href="magick-deprecate.html#DrawPushGraphicContext">DrawPushGraphicContext</a><a href="magick-deprecate.html#DrawSetFillAlpha">DrawSetFillAlpha</a><a href="magick-deprecate.html#DrawSetStrokeAlpha">DrawSetStrokeAlpha</a><a href="magick-deprecate.html#MagickColorFloodfillImage">MagickColorFloodfillImage</a><a href="magick-deprecate.html#MagickDescribeImage">MagickDescribeImage</a><a href="magick-deprecate.html#MagickFlattenImages">MagickFlattenImages</a><a href="magick-deprecate.html#MagickGetImageAttribute">MagickGetImageAttribute</a><a href="magick-deprecate.html#MagickGetImageMatte">MagickGetImageMatte</a><a href="magick-deprecate.html#MagickGetImagePixels">MagickGetImagePixels</a><a href="magick-deprecate.html#MagickGetImageSize">MagickGetImageSize</a><a href="magick-deprecate.html#MagickMapImage">MagickMapImage</a><a href="magick-deprecate.html#MagickMatteFloodfillImage">MagickMatteFloodfillImage</a><a href="magick-deprecate.html#MagickMedianFilterImage">MagickMedianFilterImage</a><a href="magick-deprecate.html#MagickMinimumImages">MagickMinimumImages</a><a href="magick-deprecate.html#MagickModeImage">MagickModeImage</a><a href="magick-deprecate.html#MagickMosaicImages">MagickMosaicImages</a><a href="magick-deprecate.html#MagickOpaqueImage">MagickOpaqueImage</a><a href="magick-deprecate.html#MagickPaintFloodfillImage">MagickPaintFloodfillImage</a><a href="magick-deprecate.html#MagickPaintOpaqueImage">MagickPaintOpaqueImage</a><a href="magick-deprecate.html#MagickPaintTransparentImage">MagickPaintTransparentImage</a><a href="magick-deprecate.html#MagickRecolorImage">MagickRecolorImage</a><a href="magick-deprecate.html#MagickReduceNoiseImage">MagickReduceNoiseImage</a><a href="magick-deprecate.html#MagickMaximumImages">MagickMaximumImages</a><a href="magick-deprecate.html#MagickSetImageAttribute">MagickSetImageAttribute</a><a href="magick-deprecate.html#MagickSetImageIndex">MagickSetImageIndex</a><a href="magick-deprecate.html#MagickTransparentImage">MagickTransparentImage</a><a href="magick-deprecate.html#MagickRegionOfInterestImage">MagickRegionOfInterestImage</a><a href="magick-deprecate.html#MagickSetImagePixels">MagickSetImagePixels</a><a href="magick-deprecate.html#MagickWriteImageBlob">MagickWriteImageBlob</a><a href="magick-deprecate.html#NewPixelView">NewPixelView</a><a href="magick-deprecate.html#NewPixelViewRegion">NewPixelViewRegion</a><a href="magick-deprecate.html#PixelGetNextRow">PixelGetNextRow</a><a href="magick-deprecate.html#PixelIteratorGetException">PixelIteratorGetException</a><a href="magick-deprecate.html#SetPixelViewIterator">SetPixelViewIterator</a><a href="magick-deprecate.html#TransferPixelViewIterator">TransferPixelViewIterator</a><a href="magick-deprecate.html#UpdatePixelViewIterator">UpdatePixelViewIterator</a>]</p>
cristy6f77f692011-02-15 15:31:39 +0000179
cristy20398432011-08-11 01:31:50 +0000180<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickAverageImages">MagickAverageImages</a></h2>
181<div class="doc-section">
182
183<p>MagickAverageImages() average a set of images.</p>
184
185<p>The format of the MagickAverageImages method is:</p>
186
187<pre class="code">
188 MagickWand *MagickAverageImages(MagickWand *wand)
189</pre>
190
191<p>A description of each parameter follows:</p>
192
193<h5>wand</h5>
194<p>the magick wand.</p>
195
196 </div>
197<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="ClonePixelView">ClonePixelView</a></h2>
198<div class="doc-section">
199
200<p>ClonePixelView() makes a copy of the specified pixel view.</p>
201
202<p>The format of the ClonePixelView method is:</p>
203
204<pre class="code">
205 PixelView *ClonePixelView(const PixelView *pixel_view)
206</pre>
207
208<p>A description of each parameter follows:</p>
209
210<h5>pixel_view</h5>
211<p>the pixel view.</p>
212
213 </div>
214<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DestroyPixelView">DestroyPixelView</a></h2>
215<div class="doc-section">
216
217<p>DestroyPixelView() deallocates memory associated with a pixel view.</p>
218
219<p>The format of the DestroyPixelView method is:</p>
220
221<pre class="code">
222 PixelView *DestroyPixelView(PixelView *pixel_view,
223 const size_t number_wands,const size_t number_threads)
224</pre>
225
226<p>A description of each parameter follows:</p>
227
228<h5>pixel_view</h5>
229<p>the pixel view.</p>
230
231<h5>number_wand</h5>
232<p>the number of pixel wands.</p>
233
234<h5>number_threads</h5>
235<p>number of threads.</p>
236
237 </div>
238<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a></h2>
239<div class="doc-section">
240
241<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>
242
243<p>Use this pragma:</p>
244
245<pre class="text">
246 #pragma omp critical
247</pre>
248
249<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
250
251<p>The format of the DuplexTransferPixelViewIterator method is:</p>
252
253<pre class="code">
254 MagickBooleanType DuplexTransferPixelViewIterator(PixelView *source,
255 PixelView *duplex,PixelView *destination,
256 DuplexTransferPixelViewMethod transfer,void *context)
257</pre>
258
259<p>A description of each parameter follows:</p>
260
261<h5>source</h5>
262<p>the source pixel view.</p>
263
264<h5>duplex</h5>
265<p>the duplex pixel view.</p>
266
267<h5>destination</h5>
268<p>the destination pixel view.</p>
269
270<h5>transfer</h5>
271<p>the transfer callback method.</p>
272
273<h5>context</h5>
274<p>the user defined context.</p>
275
276 </div>
277<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewException">GetPixelViewException</a></h2>
278<div class="doc-section">
279
280<p>GetPixelViewException() returns the severity, reason, and description of any error that occurs when utilizing a pixel view.</p>
281
282<p>The format of the GetPixelViewException method is:</p>
283
284<pre class="code">
285 char *GetPixelViewException(const PixelWand *pixel_view,
286 ExceptionType *severity)
287</pre>
288
289<p>A description of each parameter follows:</p>
290
291<h5>pixel_view</h5>
292<p>the pixel pixel_view.</p>
293
294<h5>severity</h5>
295<p>the severity of the error is returned here.</p>
296
297 </div>
298<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewHeight">GetPixelViewHeight</a></h2>
299<div class="doc-section">
300
301<p>GetPixelViewHeight() returns the pixel view height.</p>
302
303<p>The format of the GetPixelViewHeight method is:</p>
304
305<pre class="code">
306 size_t GetPixelViewHeight(const PixelView *pixel_view)
307</pre>
308
309<p>A description of each parameter follows:</p>
310
311<h5>pixel_view</h5>
312<p>the pixel view.</p>
313
314 </div>
315<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewIterator">GetPixelViewIterator</a></h2>
316<div class="doc-section">
317
318<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>
319
320<p>Use this pragma:</p>
321
322<pre class="text">
323 #pragma omp critical
324</pre>
325
326<p>to define a section of code in your callback get method that must be executed by a single thread at a time.</p>
327
328<p>The format of the GetPixelViewIterator method is:</p>
329
330<pre class="code">
331 MagickBooleanType GetPixelViewIterator(PixelView *source,
332 GetPixelViewMethod get,void *context)
333</pre>
334
335<p>A description of each parameter follows:</p>
336
337<h5>source</h5>
338<p>the source pixel view.</p>
339
340<h5>get</h5>
341<p>the get callback method.</p>
342
343<h5>context</h5>
344<p>the user defined context.</p>
345
346 </div>
347<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewPixels">GetPixelViewPixels</a></h2>
348<div class="doc-section">
349
350<p>GetPixelViewPixels() returns the pixel view pixel_wands.</p>
351
352<p>The format of the GetPixelViewPixels method is:</p>
353
354<pre class="code">
355 PixelWand *GetPixelViewPixels(const PixelView *pixel_view)
356</pre>
357
358<p>A description of each parameter follows:</p>
359
360<h5>pixel_view</h5>
361<p>the pixel view.</p>
362
363 </div>
364<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewWand">GetPixelViewWand</a></h2>
365<div class="doc-section">
366
367<p>GetPixelViewWand() returns the magick wand associated with the pixel view.</p>
368
369<p>The format of the GetPixelViewWand method is:</p>
370
371<pre class="code">
372 MagickWand *GetPixelViewWand(const PixelView *pixel_view)
373</pre>
374
375<p>A description of each parameter follows:</p>
376
377<h5>pixel_view</h5>
378<p>the pixel view.</p>
379
380 </div>
381<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewWidth">GetPixelViewWidth</a></h2>
382<div class="doc-section">
383
384<p>GetPixelViewWidth() returns the pixel view width.</p>
385
386<p>The format of the GetPixelViewWidth method is:</p>
387
388<pre class="code">
389 size_t GetPixelViewWidth(const PixelView *pixel_view)
390</pre>
391
392<p>A description of each parameter follows:</p>
393
394<h5>pixel_view</h5>
395<p>the pixel view.</p>
396
397 </div>
398<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewX">GetPixelViewX</a></h2>
399<div class="doc-section">
400
401<p>GetPixelViewX() returns the pixel view x offset.</p>
402
403<p>The format of the GetPixelViewX method is:</p>
404
405<pre class="code">
406 ssize_t GetPixelViewX(const PixelView *pixel_view)
407</pre>
408
409<p>A description of each parameter follows:</p>
410
411<h5>pixel_view</h5>
412<p>the pixel view.</p>
413
414 </div>
415<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="GetPixelViewY">GetPixelViewY</a></h2>
416<div class="doc-section">
417
418<p>GetPixelViewY() returns the pixel view y offset.</p>
419
420<p>The format of the GetPixelViewY method is:</p>
421
422<pre class="code">
423 ssize_t GetPixelViewY(const PixelView *pixel_view)
424</pre>
425
426<p>A description of each parameter follows:</p>
427
428<h5>pixel_view</h5>
429<p>the pixel view.</p>
430
431 </div>
432<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="IsPixelView">IsPixelView</a></h2>
433<div class="doc-section">
434
435<p>IsPixelView() returns MagickTrue if the the parameter is verified as a pixel view container.</p>
436
437<p>The format of the IsPixelView method is:</p>
438
439<pre class="code">
440 MagickBooleanType IsPixelView(const PixelView *pixel_view)
441</pre>
442
443<p>A description of each parameter follows:</p>
444
445<h5>pixel_view</h5>
446<p>the pixel view.</p>
447
448 </div>
449<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickClipPathImage">MagickClipPathImage</a></h2>
450<div class="doc-section">
451
452<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>
453
454<p>The format of the MagickClipPathImage method is:</p>
455
456<pre class="code">
457 MagickBooleanType MagickClipPathImage(MagickWand *wand,
458 const char *pathname,const MagickBooleanType inside)
459</pre>
460
461<p>A description of each parameter follows:</p>
462
463<h5>wand</h5>
464<p>the magick wand.</p>
465
466<h5>pathname</h5>
467<p>name of clipping path resource. If name is preceded by #, use clipping path numbered by name.</p>
468
469<h5>inside</h5>
470<p>if non-zero, later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path.</p>
471
472 </div>
473<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawGetFillAlpha">DrawGetFillAlpha</a></h2>
474<div class="doc-section">
475
476<p>DrawGetFillAlpha() returns the alpha used when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
477
478<p>The format of the DrawGetFillAlpha method is:</p>
479
480<pre class="code">
481 double DrawGetFillAlpha(const DrawingWand *wand)
482</pre>
483
484<p>A description of each parameter follows:</p>
485
486<h5>wand</h5>
487<p>the drawing wand.</p>
488
489 </div>
490<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawGetStrokeAlpha">DrawGetStrokeAlpha</a></h2>
491<div class="doc-section">
492
493<p>DrawGetStrokeAlpha() returns the alpha of stroked object outlines.</p>
494
495<p>The format of the DrawGetStrokeAlpha method is:</p>
496
497<pre class="code">
498 double DrawGetStrokeAlpha(const DrawingWand *wand)
499</pre>
500
501<p>A description of each parameter follows:</p>
502
503<h5>wand</h5>
504<p>the drawing wand. </p>
505 </div>
506<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawPeekGraphicWand">DrawPeekGraphicWand</a></h2>
507<div class="doc-section">
508
509<p>DrawPeekGraphicWand() returns the current drawing wand.</p>
510
511<p>The format of the PeekDrawingWand method is:</p>
512
513<pre class="code">
514 DrawInfo *DrawPeekGraphicWand(const DrawingWand *wand)
515</pre>
516
517<p>A description of each parameter follows:</p>
518
519<h5>wand</h5>
520<p>the drawing wand.</p>
521
522 </div>
523<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawPopGraphicContext">DrawPopGraphicContext</a></h2>
524<div class="doc-section">
525
526<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>
527
528<p>The format of the DrawPopGraphicContext method is:</p>
529
530<pre class="code">
531 MagickBooleanType DrawPopGraphicContext(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
539 </div>
540<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawPushGraphicContext">DrawPushGraphicContext</a></h2>
541<div class="doc-section">
542
543<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>
544
545<p>The format of the DrawPushGraphicContext method is:</p>
546
547<pre class="code">
548 MagickBooleanType DrawPushGraphicContext(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_8c.html" id="DrawSetFillAlpha">DrawSetFillAlpha</a></h2>
558<div class="doc-section">
559
560<p>DrawSetFillAlpha() sets the alpha to use when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
561
562<p>The format of the DrawSetFillAlpha method is:</p>
563
564<pre class="code">
565 void DrawSetFillAlpha(DrawingWand *wand,const double fill_alpha)
566</pre>
567
568<p>A description of each parameter follows:</p>
569
570<h5>wand</h5>
571<p>the drawing wand.</p>
572
573<h5>fill_alpha</h5>
574<p>fill alpha</p>
575
576 </div>
577<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="DrawSetStrokeAlpha">DrawSetStrokeAlpha</a></h2>
578<div class="doc-section">
579
580<p>DrawSetStrokeAlpha() specifies the alpha of stroked object outlines.</p>
581
582<p>The format of the DrawSetStrokeAlpha method is:</p>
583
584<pre class="code">
585 void DrawSetStrokeAlpha(DrawingWand *wand,const double stroke_alpha)
586</pre>
587
588<p>A description of each parameter follows:</p>
589
590<h5>wand</h5>
591<p>the drawing wand.</p>
592
593<h5>stroke_alpha</h5>
594<p>stroke alpha. The value 1.0 is opaque.</p>
595
596 </div>
597<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickColorFloodfillImage">MagickColorFloodfillImage</a></h2>
598<div class="doc-section">
599
600<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>
601
602<p>The format of the MagickColorFloodfillImage method is:</p>
603
604<pre class="code">
605 MagickBooleanType MagickColorFloodfillImage(MagickWand *wand,
606 const PixelWand *fill,const double fuzz,const PixelWand *bordercolor,
607 const ssize_t x,const ssize_t y)
608</pre>
609
610<p>A description of each parameter follows:</p>
611
612<h5>wand</h5>
613<p>the magick wand.</p>
614
615<h5>fill</h5>
616<p>the floodfill color pixel wand.</p>
617
618<h5>fuzz</h5>
619<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>
620
621<h5>bordercolor</h5>
622<p>the border color pixel wand.</p>
623
624<h5>x,y</h5>
625<p>the starting location of the operation.</p>
626
627 </div>
628<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickDescribeImage">MagickDescribeImage</a></h2>
629<div class="doc-section">
630
631<p>MagickDescribeImage() identifies an image by printing its attributes to the file. Attributes include the image width, height, size, and others.</p>
632
633<p>The format of the MagickDescribeImage method is:</p>
634
635<pre class="code">
636 const char *MagickDescribeImage(MagickWand *wand)
637</pre>
638
639<p>A description of each parameter follows:</p>
640
641<h5>wand</h5>
642<p>the magick wand.</p>
643
644 </div>
645<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickFlattenImages">MagickFlattenImages</a></h2>
646<div class="doc-section">
647
648<p>MagickFlattenImages() merges a sequence of images. This useful for combining Photoshop layers into a single image.</p>
649
650<p>The format of the MagickFlattenImages method is:</p>
651
652<pre class="code">
653 MagickWand *MagickFlattenImages(MagickWand *wand)
654</pre>
655
656<p>A description of each parameter follows:</p>
657
658<h5>wand</h5>
659<p>the magick wand.</p>
660
661 </div>
662<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImageAttribute">MagickGetImageAttribute</a></h2>
663<div class="doc-section">
664
665<p>MagickGetImageAttribute() returns a value associated with the specified property. Use MagickRelinquishMemory() to free the value when you are finished with it.</p>
666
667<p>The format of the MagickGetImageAttribute method is:</p>
668
669<pre class="code">
670 char *MagickGetImageAttribute(MagickWand *wand,const char *property)
671</pre>
672
673<p>A description of each parameter follows:</p>
674
675<h5>wand</h5>
676<p>the magick wand.</p>
677
678<h5>property</h5>
679<p>the property.</p>
680
681 </div>
682<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImageMatte">MagickGetImageMatte</a></h2>
683<div class="doc-section">
684
685<p>MagickGetImageMatte() returns MagickTrue if the image has a matte channel otherwise MagickFalse.</p>
686
687<p>The format of the MagickGetImageMatte method is:</p>
688
689<pre class="code">
690 size_t MagickGetImageMatte(MagickWand *wand)
691</pre>
692
693<p>A description of each parameter follows:</p>
694
695<h5>wand</h5>
696<p>the magick wand.</p>
697
698 </div>
699<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImagePixels">MagickGetImagePixels</a></h2>
700<div class="doc-section">
701
702<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>
703
704<p>Suppose you want to extract the first scanline of a 640x480 image as character data in red-green-blue order:</p>
705
706<pre class="text">
707 MagickGetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
708</pre>
709
710<p>The format of the MagickGetImagePixels method is:</p>
711
712<pre class="code">
713 MagickBooleanType MagickGetImagePixels(MagickWand *wand,
714 const ssize_t x,const ssize_t y,const size_t columns,
715 const size_t rows,const char *map,const StorageType storage,
716 void *pixels)
717</pre>
718
719<p>A description of each parameter follows:</p>
720
721<h5>wand</h5>
722<p>the magick wand.</p>
723
724<h5>x, y, columns, rows</h5>
725<p>These values define the perimeter of a region of pixels you want to extract.</p>
726
727<h5>map</h5>
728<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>
729
730<h5>storage</h5>
731<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>
732
733<h5>pixels</h5>
734<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>
735
736 </div>
737<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickGetImageSize">MagickGetImageSize</a></h2>
738<div class="doc-section">
739
740<p>MagickGetImageSize() returns the image length in bytes.</p>
741
742<p>The format of the MagickGetImageSize method is:</p>
743
744<pre class="code">
745 MagickBooleanType MagickGetImageSize(MagickWand *wand,
746 MagickSizeType *length)
747</pre>
748
749<p>A description of each parameter follows:</p>
750
751<h5>wand</h5>
752<p>the magick wand.</p>
753
754<h5>length</h5>
755<p>the image length in bytes.</p>
756
757 </div>
758<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMapImage">MagickMapImage</a></h2>
759<div class="doc-section">
760
761<p>MagickMapImage() replaces the colors of an image with the closest color from a reference image.</p>
762
763<p>The format of the MagickMapImage method is:</p>
764
765<pre class="code">
766 MagickBooleanType MagickMapImage(MagickWand *wand,
767 const MagickWand *map_wand,const MagickBooleanType dither)
768</pre>
769
770<p>A description of each parameter follows:</p>
771
772<h5>wand</h5>
773<p>the magick wand.</p>
774
775<h5>map</h5>
776<p>the map wand.</p>
777
778<h5>dither</h5>
779<p>Set this integer value to something other than zero to dither the mapped image.</p>
780
781 </div>
782<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMatteFloodfillImage">MagickMatteFloodfillImage</a></h2>
783<div class="doc-section">
784
785<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>
786
787<p>The format of the MagickMatteFloodfillImage method is:</p>
788
789<pre class="code">
790 MagickBooleanType MagickMatteFloodfillImage(MagickWand *wand,
791 const double alpha,const double fuzz,const PixelWand *bordercolor,
792 const ssize_t x,const ssize_t y)
793</pre>
794
795<p>A description of each parameter follows:</p>
796
797<h5>wand</h5>
798<p>the magick wand.</p>
799
800<h5>alpha</h5>
801<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
802
803<h5>fuzz</h5>
804<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>
805
806<h5>bordercolor</h5>
807<p>the border color pixel wand.</p>
808
809<h5>x,y</h5>
810<p>the starting location of the operation.</p>
811
812 </div>
813<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMedianFilterImage">MagickMedianFilterImage</a></h2>
814<div class="doc-section">
815
816<p>MagickMedianFilterImage() applies a digital filter that improves the quality of a noisy image. Each pixel is replaced by the median in a set of neighboring pixels as defined by radius.</p>
817
818<p>The format of the MagickMedianFilterImage method is:</p>
819
820<pre class="code">
821 MagickBooleanType MagickMedianFilterImage(MagickWand *wand,
822 const double radius)
823</pre>
824
825<p>A description of each parameter follows:</p>
826
827<h5>wand</h5>
828<p>the magick wand.</p>
829
830<h5>radius</h5>
831<p>the radius of the pixel neighborhood.</p>
832
833 </div>
834<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMinimumImages">MagickMinimumImages</a></h2>
835<div class="doc-section">
836
837<p>MagickMinimumImages() returns the minimum intensity of an image sequence.</p>
838
839<p>The format of the MagickMinimumImages method is:</p>
840
841<pre class="code">
842 MagickWand *MagickMinimumImages(MagickWand *wand)
843</pre>
844
845<p>A description of each parameter follows:</p>
846
847<h5>wand</h5>
848<p>the magick wand.</p>
849
850 </div>
851<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickModeImage">MagickModeImage</a></h2>
852<div class="doc-section">
853
854<p>MagickModeImage() makes each pixel the 'predominant color' of the neighborhood of the specified radius.</p>
855
856<p>The format of the MagickModeImage method is:</p>
857
858<pre class="code">
859 MagickBooleanType MagickModeImage(MagickWand *wand,
860 const double radius)
861</pre>
862
863<p>A description of each parameter follows:</p>
864
865<h5>wand</h5>
866<p>the magick wand.</p>
867
868<h5>radius</h5>
869<p>the radius of the pixel neighborhood.</p>
870
871 </div>
872<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMosaicImages">MagickMosaicImages</a></h2>
873<div class="doc-section">
874
875<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>
876
877<p>The format of the MagickMosaicImages method is:</p>
878
879<pre class="code">
880 MagickWand *MagickMosaicImages(MagickWand *wand)
881</pre>
882
883<p>A description of each parameter follows:</p>
884
885<h5>wand</h5>
886<p>the magick wand.</p>
887
888 </div>
889<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickOpaqueImage">MagickOpaqueImage</a></h2>
890<div class="doc-section">
891
892<p>MagickOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
893
894<p>The format of the MagickOpaqueImage method is:</p>
895
896<pre class="code">
897 MagickBooleanType MagickOpaqueImage(MagickWand *wand,
898 const PixelWand *target,const PixelWand *fill,const double fuzz)
899</pre>
900
901<p>A description of each parameter follows:</p>
902
903<h5>wand</h5>
904<p>the magick wand.</p>
905
906<h5>channel</h5>
907<p>the channel(s).</p>
908
909<h5>target</h5>
910<p>Change this target color to the fill color within the image.</p>
911
912<h5>fill</h5>
913<p>the fill pixel wand.</p>
914
915<h5>fuzz</h5>
916<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>
917
918 </div>
919<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickPaintFloodfillImage">MagickPaintFloodfillImage</a></h2>
920<div class="doc-section">
921
922<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>
923
924<p>The format of the MagickPaintFloodfillImage method is:</p>
925
926<pre class="code">
927 MagickBooleanType MagickPaintFloodfillImage(MagickWand *wand,
928 const ChannelType channel,const PixelWand *fill,const double fuzz,
929 const PixelWand *bordercolor,const ssize_t x,const ssize_t y)
930</pre>
931
932<p>A description of each parameter follows:</p>
933
934<h5>wand</h5>
935<p>the magick wand.</p>
936
937<h5>channel</h5>
938<p>the channel(s).</p>
939
940<h5>fill</h5>
941<p>the floodfill color pixel wand.</p>
942
943<h5>fuzz</h5>
944<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>
945
946<h5>bordercolor</h5>
947<p>the border color pixel wand.</p>
948
949<h5>x,y</h5>
950<p>the starting location of the operation.</p>
951
952 </div>
953<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickPaintOpaqueImage">MagickPaintOpaqueImage</a></h2>
954<div class="doc-section">
955
956<p>MagickPaintOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
957
958<p>The format of the MagickPaintOpaqueImage method is:</p>
959
960<pre class="code">
961 MagickBooleanType MagickPaintOpaqueImage(MagickWand *wand,
962 const PixelWand *target,const PixelWand *fill,const double fuzz)
963 MagickBooleanType MagickPaintOpaqueImageChannel(MagickWand *wand,
964 const ChannelType channel,const PixelWand *target,
965 const PixelWand *fill,const double fuzz)
966</pre>
967
968<p>A description of each parameter follows:</p>
969
970<h5>wand</h5>
971<p>the magick wand.</p>
972
973<h5>channel</h5>
974<p>the channel(s).</p>
975
976<h5>target</h5>
977<p>Change this target color to the fill color within the image.</p>
978
979<h5>fill</h5>
980<p>the fill pixel wand.</p>
981
982<h5>fuzz</h5>
983<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>
984
985 </div>
986<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickPaintTransparentImage">MagickPaintTransparentImage</a></h2>
987<div class="doc-section">
988
989<p>MagickPaintTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
990
991<p>The format of the MagickPaintTransparentImage method is:</p>
992
993<pre class="code">
994 MagickBooleanType MagickPaintTransparentImage(MagickWand *wand,
995 const PixelWand *target,const double alpha,const double fuzz)
996</pre>
997
998<p>A description of each parameter follows:</p>
999
1000<h5>wand</h5>
1001<p>the magick wand.</p>
1002
1003<h5>target</h5>
1004<p>Change this target color to specified opacity value within the image.</p>
1005
1006<h5>alpha</h5>
1007<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
1008
1009<h5>fuzz</h5>
1010<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>
1011
1012 </div>
1013<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickRecolorImage">MagickRecolorImage</a></h2>
1014<div class="doc-section">
1015
1016<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>
1017
1018<p>The format of the MagickRecolorImage method is:</p>
1019
1020<pre class="code">
1021 MagickBooleanType MagickRecolorImage(MagickWand *wand,
1022 const size_t order,const double *color_matrix)
1023</pre>
1024
1025<p>A description of each parameter follows:</p>
1026
1027<h5>wand</h5>
1028<p>the magick wand.</p>
1029
1030<h5>order</h5>
1031<p>the number of columns and rows in the color matrix.</p>
1032
1033<h5>color_matrix</h5>
1034<p>An array of doubles representing the color matrix.</p>
1035
1036 </div>
1037<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickReduceNoiseImage">MagickReduceNoiseImage</a></h2>
1038<div class="doc-section">
1039
1040<p>MagickReduceNoiseImage() smooths the contours of an image while still preserving edge information. The algorithm works by replacing each pixel with its neighbor closest in value. A neighbor is defined by radius. Use a radius of 0 and ReduceNoise() selects a suitable radius for you.</p>
1041
1042<p>The format of the MagickReduceNoiseImage method is:</p>
1043
1044<pre class="code">
1045 MagickBooleanType MagickReduceNoiseImage(MagickWand *wand,
1046 const double radius)
1047</pre>
1048
1049<p>A description of each parameter follows:</p>
1050
1051<h5>wand</h5>
1052<p>the magick wand.</p>
1053
1054<h5>radius</h5>
1055<p>the radius of the pixel neighborhood.</p>
1056
1057 </div>
1058<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickMaximumImages">MagickMaximumImages</a></h2>
1059<div class="doc-section">
1060
1061<p>MagickMaximumImages() returns the maximum intensity of an image sequence.</p>
1062
1063<p>The format of the MagickMaximumImages method is:</p>
1064
1065<pre class="code">
1066 MagickWand *MagickMaximumImages(MagickWand *wand)
1067</pre>
1068
1069<p>A description of each parameter follows:</p>
1070
1071<h5>wand</h5>
1072<p>the magick wand.</p>
1073
1074 </div>
1075<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickSetImageAttribute">MagickSetImageAttribute</a></h2>
1076<div class="doc-section">
1077
1078<p>MagickSetImageAttribute() associates a property with an image.</p>
1079
1080<p>The format of the MagickSetImageAttribute method is:</p>
1081
1082<pre class="code">
1083 MagickBooleanType MagickSetImageAttribute(MagickWand *wand,
1084 const char *property,const char *value)
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>property</h5>
1093<p>the property.</p>
1094
1095<h5>value</h5>
1096<p>the value.</p>
1097
1098 </div>
1099<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickSetImageIndex">MagickSetImageIndex</a></h2>
1100<div class="doc-section">
1101
1102<p>MagickSetImageIndex() set the current image to the position of the list specified with the index parameter.</p>
1103
1104<p>The format of the MagickSetImageIndex method is:</p>
1105
1106<pre class="code">
1107 MagickBooleanType MagickSetImageIndex(MagickWand *wand,
1108 const ssize_t index)
1109</pre>
1110
1111<p>A description of each parameter follows:</p>
1112
1113<h5>wand</h5>
1114<p>the magick wand.</p>
1115
1116<h5>index</h5>
1117<p>the scene number.</p>
1118
1119 </div>
1120<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickTransparentImage">MagickTransparentImage</a></h2>
1121<div class="doc-section">
1122
1123<p>MagickTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
1124
1125<p>The format of the MagickTransparentImage method is:</p>
1126
1127<pre class="code">
1128 MagickBooleanType MagickTransparentImage(MagickWand *wand,
1129 const PixelWand *target,const double alpha,const double fuzz)
1130</pre>
1131
1132<p>A description of each parameter follows:</p>
1133
1134<h5>wand</h5>
1135<p>the magick wand.</p>
1136
1137<h5>target</h5>
1138<p>Change this target color to specified opacity value within the image.</p>
1139
1140<h5>alpha</h5>
1141<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
1142
1143<h5>fuzz</h5>
1144<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>
1145
1146 </div>
1147<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickRegionOfInterestImage">MagickRegionOfInterestImage</a></h2>
1148<div class="doc-section">
1149
1150<p>MagickRegionOfInterestImage() extracts a region of the image and returns it as a new wand.</p>
1151
1152<p>The format of the MagickRegionOfInterestImage method is:</p>
1153
1154<pre class="code">
1155 MagickWand *MagickRegionOfInterestImage(MagickWand *wand,
1156 const size_t width,const size_t height,const ssize_t x,
1157 const ssize_t y)
1158</pre>
1159
1160<p>A description of each parameter follows:</p>
1161
1162<h5>wand</h5>
1163<p>the magick wand.</p>
1164
1165<h5>width</h5>
1166<p>the region width.</p>
1167
1168<h5>height</h5>
1169<p>the region height.</p>
1170
1171<h5>x</h5>
1172<p>the region x offset.</p>
1173
1174<h5>y</h5>
1175<p>the region y offset.</p>
1176
1177 </div>
1178<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickSetImagePixels">MagickSetImagePixels</a></h2>
1179<div class="doc-section">
1180
1181<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>
1182
1183<p>Suppose your want to upload the first scanline of a 640x480 image from character data in red-green-blue order:</p>
1184
1185<pre class="text">
1186 MagickSetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
1187</pre>
1188
1189<p>The format of the MagickSetImagePixels method is:</p>
1190
1191<pre class="code">
1192 MagickBooleanType MagickSetImagePixels(MagickWand *wand,
1193 const ssize_t x,const ssize_t y,const size_t columns,
1194 const size_t rows,const char *map,const StorageType storage,
1195 const void *pixels)
1196</pre>
1197
1198<p>A description of each parameter follows:</p>
1199
1200<h5>wand</h5>
1201<p>the magick wand.</p>
1202
1203<h5>x, y, columns, rows</h5>
1204<p>These values define the perimeter of a region of pixels you want to define.</p>
1205
1206<h5>map</h5>
1207<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>
1208
1209<h5>storage</h5>
1210<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>
1211
1212<h5>pixels</h5>
1213<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>
1214
1215 </div>
1216<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="MagickWriteImageBlob">MagickWriteImageBlob</a></h2>
1217<div class="doc-section">
1218
1219<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>
1220
1221<p>Use MagickRelinquishMemory() to free the blob when you are done with it.</p>
1222
1223<p>The format of the MagickWriteImageBlob method is:</p>
1224
1225<pre class="code">
1226 unsigned char *MagickWriteImageBlob(MagickWand *wand,size_t *length)
1227</pre>
1228
1229<p>A description of each parameter follows:</p>
1230
1231<h5>wand</h5>
1232<p>the magick wand.</p>
1233
1234<h5>length</h5>
1235<p>the length of the blob.</p>
1236
1237 </div>
1238<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="NewPixelView">NewPixelView</a></h2>
1239<div class="doc-section">
1240
1241<p>NewPixelView() returns a pixel view required for all other methods in the Pixel View API.</p>
1242
1243<p>The format of the NewPixelView method is:</p>
1244
1245<pre class="code">
1246 PixelView *NewPixelView(MagickWand *wand)
1247</pre>
1248
1249<p>A description of each parameter follows:</p>
1250
1251<h5>wand</h5>
1252<p>the wand.</p>
1253
1254 </div>
1255<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="NewPixelViewRegion">NewPixelViewRegion</a></h2>
1256<div class="doc-section">
1257
1258<p>NewPixelViewRegion() returns a pixel view required for all other methods in the Pixel View API.</p>
1259
1260<p>The format of the NewPixelViewRegion method is:</p>
1261
1262<pre class="code">
1263 PixelView *NewPixelViewRegion(MagickWand *wand,const ssize_t x,
1264 const ssize_t y,const size_t width,const size_t height)
1265</pre>
1266
1267<p>A description of each parameter follows:</p>
1268
1269<h5>wand</h5>
1270<p>the magick wand.</p>
1271
1272<h5>x,y,columns,rows</h5>
1273<p>These values define the perimeter of a region of pixel_wands view.</p>
1274
1275 </div>
1276<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_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_8c.html" id="PixelIteratorGetException">PixelIteratorGetException</a></h2>
1298<div class="doc-section">
1299
1300<p>PixelIteratorGetException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
1301
1302<p>The format of the PixelIteratorGetException method is:</p>
1303
1304<pre class="code">
1305 char *PixelIteratorGetException(const Pixeliterator *iterator,
1306 ExceptionType *severity)
1307</pre>
1308
1309<p>A description of each parameter follows:</p>
1310
1311<h5>iterator</h5>
1312<p>the pixel iterator.</p>
1313
1314<h5>severity</h5>
1315<p>the severity of the error is returned here.</p>
1316
1317 </div>
1318<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="SetPixelViewIterator">SetPixelViewIterator</a></h2>
1319<div class="doc-section">
1320
1321<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>
1322
1323<p>Use this pragma:</p>
1324
1325<pre class="text">
1326 #pragma omp critical
1327</pre>
1328
1329<p>to define a section of code in your callback set method that must be executed by a single thread at a time.</p>
1330
1331<p>The format of the SetPixelViewIterator method is:</p>
1332
1333<pre class="code">
1334 MagickBooleanType SetPixelViewIterator(PixelView *destination,
1335 SetPixelViewMethod set,void *context)
1336</pre>
1337
1338<p>A description of each parameter follows:</p>
1339
1340<h5>destination</h5>
1341<p>the pixel view.</p>
1342
1343<h5>set</h5>
1344<p>the set callback method.</p>
1345
1346<h5>context</h5>
1347<p>the user defined context.</p>
1348
1349 </div>
1350<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="TransferPixelViewIterator">TransferPixelViewIterator</a></h2>
1351<div class="doc-section">
1352
1353<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>
1354
1355<p>Use this pragma:</p>
1356
1357<pre class="text">
1358 #pragma omp critical
1359</pre>
1360
1361<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
1362
1363<p>The format of the TransferPixelViewIterator method is:</p>
1364
1365<pre class="code">
1366 MagickBooleanType TransferPixelViewIterator(PixelView *source,
1367 PixelView *destination,TransferPixelViewMethod transfer,void *context)
1368</pre>
1369
1370<p>A description of each parameter follows:</p>
1371
1372<h5>source</h5>
1373<p>the source pixel view.</p>
1374
1375<h5>destination</h5>
1376<p>the destination pixel view.</p>
1377
1378<h5>transfer</h5>
1379<p>the transfer callback method.</p>
1380
1381<h5>context</h5>
1382<p>the user defined context.</p>
1383
1384 </div>
1385<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate_8c.html" id="UpdatePixelViewIterator">UpdatePixelViewIterator</a></h2>
1386<div class="doc-section">
1387
1388<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>
1389
1390<p>Use this pragma:</p>
1391
1392<pre class="text">
1393 #pragma omp critical
1394</pre>
1395
1396<p>to define a section of code in your callback update method that must be executed by a single thread at a time.</p>
1397
1398<p>The format of the UpdatePixelViewIterator method is:</p>
1399
1400<pre class="code">
1401 MagickBooleanType UpdatePixelViewIterator(PixelView *source,
1402 UpdatePixelViewMethod update,void *context)
1403</pre>
1404
1405<p>A description of each parameter follows:</p>
1406
1407<h5>source</h5>
1408<p>the source pixel view.</p>
1409
1410<h5>update</h5>
1411<p>the update callback method.</p>
1412
1413<h5>context</h5>
1414<p>the user defined context.</p>
1415
1416 </div>
cristy06f63f22012-10-31 00:50:07 +00001417
1418</div>
1419
1420<div id="linkbar">
cristyac1b4322013-07-28 13:58:06 +00001421 <span id="linkbar-west"> </span>
cristy8ee7f242013-06-20 16:08:44 +00001422
cristy06f63f22012-10-31 00:50:07 +00001423 <span id="linkbar-center">
cristy44cbd482013-08-04 20:53:36 +00001424 <a href="http://pgp.mit.edu:11371/pks/lookup?op=get&amp;search=0x89AB63D48277377A">Public Key</a>
1425 <a href="../../discourse-server">Discourse Server</a>
1426 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy8ee7f242013-06-20 16:08:44 +00001427 <a href="http://jqmagick.imagemagick.org/">JqMagick</a>
cristy06f63f22012-10-31 00:50:07 +00001428 </span>
cristyac1b4322013-07-28 13:58:06 +00001429 <span id="linkbar-east"> </span>
cristy44cbd482013-08-04 20:53:36 +00001430</div>
1431<div class="footer">
1432 <span id="footer-west">© 1999-2013 ImageMagick Studio LLC</span>
1433 <span id="footer-east"> <a href="../../www/contact.html">Contact the Wizards</a></span>
1434</div>
1435<div style="clear: both; margin: 0; width: 100%; "></div>
cristy06f63f22012-10-31 00:50:07 +00001436</body>
1437</html>