blob: 2c871038dcf629dbcbfe302c89c4e22696e52491 [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">
3<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" dir="ltr">
cristy3eaa0ef2010-03-06 20:35:26 +00004<head>
cristy3c98a4f2010-08-13 20:09:41 +00005 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6 <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U="/>
cristyffb69ed2010-12-25 00:06:48 +00007 <title>ImageMagick: MagickWand, C API for ImageMagick: Deprecated Methods</title>
cristy3ed852e2009-09-05 21:47:34 +00008 <meta http-equiv="Content-Language" content="en-US"/>
9 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
10 <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
cristy3c98a4f2010-08-13 20:09:41 +000011 <meta name="Application-name" content="ImageMagick"/>
cristyaf8d6652011-02-04 21:57:45 +000012 <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 +000013 <meta name="Application-url" content="http://www.imagemagick.org"/>
cristy3ed852e2009-09-05 21:47:34 +000014 <meta name="Generator" content="PHP"/>
15 <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 +000016 <meta name="Rating" content="GENERAL"/>
17 <meta name="Robots" content="INDEX, FOLLOW"/>
18 <meta name="Generator" content="ImageMagick Studio LLC"/>
19 <meta name="Author" content="ImageMagick Studio LLC"/>
20 <meta name="Revisit-after" content="2 DAYS"/>
21 <meta name="Resource-type" content="document"/>
cristy4103d562010-12-10 01:38:54 +000022 <meta name="Copyright" content="Copyright (c) 1999-2011 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000023 <meta name="Distribution" content="Global"/>
cristydcca3fa2010-12-29 21:50:07 +000024 <link rel="icon" href="../../images/wand.png"/>
cristy3c98a4f2010-08-13 20:09:41 +000025 <link rel="shortcut icon" href="../../images/wand.ico" type="images/x-icon"/>
26 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
cristy7a40ba82011-01-08 20:31:18 +000027 <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
cristy3c98a4f2010-08-13 20:09:41 +000028 <style type="text/css" media="all">
29 @import url("../../www/magick.css");
30 </style>
cristydcca3fa2010-12-29 21:50:07 +000031 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
cristy361f4662010-12-31 23:02:52 +000032 <script type="text/javascript" src="../fancybox/jquery.fancybox-1.3.4.pack.js"></script>
33 <link rel="stylesheet" type="text/css" href="../fancybox/jquery.fancybox-1.3.4.css" media="screen" />
34 <script type="text/javascript">
35 $(document).ready(function() {
36 $("a[href$=.jpg],a[href$=.png],a[href$=.gif]").fancybox({
37 'transitionIn' : 'elastic',
38 'transitionOut' : 'elastic',
39 'overlayShow' : false,
40 'opacity' : true
41 });
42 });
43 </script>
cristy3eaa0ef2010-03-06 20:35:26 +000044</head>
45
46<body id="www-imagemagick-org">
47<div class="titlebar">
48<a href="../../index.html">
49 <img src="../../images/script.png" alt="[ImageMagick]"
50 style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>
51<a href="http://www.networkredux.com">
52 <img src="../../images/networkredux.png" alt="[sponsor]"
cristy52923442011-01-15 22:54:31 +000053 style="margin-top: 42px; border: 0px; float: left;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000054<a href="http://www.imagemagick.org/discourse-server/">
cristyaf8d6652011-02-04 21:57:45 +000055 <img src="../../images/logo.jpg"
56 alt="ImageMagick Logo"
cristy178edaf2011-01-23 03:42:39 +000057 style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000058<a href="../../index.html">
cristyaf8d6652011-02-04 21:57:45 +000059 <img src="../../images/sprite.jpg"
60 alt="ImageMagick Sprite"
cristy3eaa0ef2010-03-06 20:35:26 +000061 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
62</div>
63
cristyce69bb02010-07-27 19:49:46 +000064<div class="westbar">
cristy3eaa0ef2010-03-06 20:35:26 +000065
cristy3ed852e2009-09-05 21:47:34 +000066<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000067 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000068</div>
cristy3eaa0ef2010-03-06 20:35:26 +000069<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +000070<div class="menu">
cristybb503372010-05-27 20:51:26 +000071 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
72</div>
73<div class="sub">
74 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
75</div>
76<div class="sub">
77 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
78</div>
79<div class="sub">
80 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
81</div>
82<div class="sep"></div>
83<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000084 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</a>
cristy3ed852e2009-09-05 21:47:34 +000085</div>
86<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000087 <a title="Command-line Tools: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +000088</div>
89<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000090 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +000091</div>
92<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000093 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +000094</div>
95<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000096 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +000097</div>
98<div class="sub">
cristy83a272e2010-05-07 20:40:35 +000099 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +0000100</div>
101<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000102 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000103</div>
104<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000105 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000106</div>
107<div class="sub">
cristydcca3fa2010-12-29 21:50:07 +0000108 <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000109</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000110<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000111<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000112 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000113</div>
114<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000115 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000116</div>
117<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000118 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000119 </div>
120<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000121 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000122</div>
cristybb503372010-05-27 20:51:26 +0000123<div class="menu">
124 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
125</div>
cristy3ed852e2009-09-05 21:47:34 +0000126<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000127 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000128</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000129<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000130<div class="menu">
cristy52923442011-01-15 22:54:31 +0000131 <a title="Search" href="../../www/search.html">Search</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">
cristyffb69ed2010-12-25 00:06:48 +0000135 <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000136</div>
137<div class="sub">
cristyffb69ed2010-12-25 00:06:48 +0000138 <a title="Site Map: Links" href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000139</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000140<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000141<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000142 <a title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000143
144<div class="sponsbox">
cristy178edaf2011-01-23 03:42:39 +0000145<div class="sponsor">
cristyaf8d6652011-02-04 21:57:45 +0000146 <a title="Sponsor: Best Web Hosting" href="http://webhostinggeeks.com">Best Web Hosting</a><!-- 201110010720 -->
147</div>
148<div class="sponsor">
149 <a title="Sponsor: Web Hosting Ratings" href="http://webhostingrating.com">Web Hosting Ratings</a><!-- 201110010720 -->
150</div>
151<div class="sponsor">
cristy178edaf2011-01-23 03:42:39 +0000152 <a title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201106010240 -->
153</div>
cristyec6b4752011-01-08 03:16:23 +0000154<div class="sponsor">
cristy52923442011-01-15 22:54:31 +0000155 <a title="Sponsor: Web Hosting" href="http://www.bodhost.com/hosting.shtml">Web Hosting</a><!-- 201104010090 -->
cristy7d52cd62010-10-01 17:26:59 +0000156</div>
157<div class="sponsor">
cristyc5baf4f2010-08-31 15:05:33 +0000158 <a title="Sponsor: Image Converter" href="http://www.batchphoto.com">Image Converter</a><!-- 201103010900 Bits Coffee-->
159</div>
160<div class="sponsor">
cristy851dbce2010-08-06 21:40:00 +0000161 <a title="Sponsor: Flyer drucken" href="http://www.online-druck.biz">Flyer drucken</a><!-- 201109010900 Floeter-->
162</div>
cristyec6b4752011-01-08 03:16:23 +0000163<div class="sponsor">
cristy178edaf2011-01-23 03:42:39 +0000164 <a title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 201110010720 -->
165</div>
166<div class="sponsor">
cristya3c43262011-02-13 16:50:35 +0000167 <a title="Sponsor: Fernsehdienst Berlin" href="http://www.atlas-multimedia.de">Fernsehdienst Berlin</a><!-- 2011050100025 atlas.multimedia-->
cristyec6b4752011-01-08 03:16:23 +0000168</div>
cristy3ed852e2009-09-05 21:47:34 +0000169</div>
170</div>
cristyce69bb02010-07-27 19:49:46 +0000171</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000172
cristyce69bb02010-07-27 19:49:46 +0000173<div class="eastbar">
174 <script type="text/javascript">
175 <!--
176 google_ad_client = "pub-3129977114552745";
cristyce69bb02010-07-27 19:49:46 +0000177 google_ad_slot = "0574824969";
178 google_ad_width = 160;
179 google_ad_height = 600;
180 //-->
181 </script>
182 <script type="text/javascript"
183 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
184 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000185</div>
186
187<div class="main">
188
cristy307ba182010-12-25 01:00:34 +0000189<h1>Module deprecate
190 Methods</h1>
cristyc3ebda22010-06-27 17:11:57 +0000191<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>
cristy3ed852e2009-09-05 21:47:34 +0000192
cristy70b59b62011-02-07 19:09:57 +0000193<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000194_8c.html" id="MagickAverageImages">MagickAverageImages</a></h2>
cristy63fed272010-03-07 19:08:45 +0000195<div class="doc-section">
196
cristy7a40ba82011-01-08 20:31:18 +0000197<p>MagickAverageImages() average a set of images.</p>
cristy63fed272010-03-07 19:08:45 +0000198
199<p>The format of the MagickAverageImages method is:</p>
200
201<pre class="code">
202 MagickWand *MagickAverageImages(MagickWand *wand)
203</pre>
204
cristy7a40ba82011-01-08 20:31:18 +0000205<p>A description of each parameter follows:</p>
cristy63fed272010-03-07 19:08:45 +0000206
207<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000208<p>the magick wand.</p>
cristy63fed272010-03-07 19:08:45 +0000209
210 </div>
cristy70b59b62011-02-07 19:09:57 +0000211<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000212_8c.html" id="ClonePixelView">ClonePixelView</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000213<div class="doc-section">
214
cristy7a40ba82011-01-08 20:31:18 +0000215<p>ClonePixelView() makes a copy of the specified pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000216
217<p>The format of the ClonePixelView method is:</p>
218
219<pre class="code">
220 PixelView *ClonePixelView(const PixelView *pixel_view)
221</pre>
222
cristy7a40ba82011-01-08 20:31:18 +0000223<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000224
225<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000226<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000227
228 </div>
cristy70b59b62011-02-07 19:09:57 +0000229<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000230_8c.html" id="DestroyPixelView">DestroyPixelView</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000231<div class="doc-section">
232
cristy7a40ba82011-01-08 20:31:18 +0000233<p>DestroyPixelView() deallocates memory associated with a pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000234
235<p>The format of the DestroyPixelView method is:</p>
236
237<pre class="code">
238 PixelView *DestroyPixelView(PixelView *pixel_view,
239 const size_t number_wands,const size_t number_threads)
240</pre>
241
cristy7a40ba82011-01-08 20:31:18 +0000242<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000243
244<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000245<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000246
247<h5>number_wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000248<p>the number of pixel wands.</p>
cristyc3ebda22010-06-27 17:11:57 +0000249
250<h5>number_threads</h5>
cristy7a40ba82011-01-08 20:31:18 +0000251<p>number of threads.</p>
cristyc3ebda22010-06-27 17:11:57 +0000252
253 </div>
cristy70b59b62011-02-07 19:09:57 +0000254<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000255_8c.html" id="DuplexTransferPixelViewIterator">DuplexTransferPixelViewIterator</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000256<div class="doc-section">
257
cristy7a40ba82011-01-08 20:31:18 +0000258<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>
cristyc3ebda22010-06-27 17:11:57 +0000259
260<p>Use this pragma:</p>
261
262<pre class="text">
263 #pragma omp critical
264</pre>
265
cristy7a40ba82011-01-08 20:31:18 +0000266<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
cristyc3ebda22010-06-27 17:11:57 +0000267
268<p>The format of the DuplexTransferPixelViewIterator method is:</p>
269
270<pre class="code">
271 MagickBooleanType DuplexTransferPixelViewIterator(PixelView *source,
272 PixelView *duplex,PixelView *destination,
273 DuplexTransferPixelViewMethod transfer,void *context)
274</pre>
275
cristy7a40ba82011-01-08 20:31:18 +0000276<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000277
278<h5>source</h5>
cristy7a40ba82011-01-08 20:31:18 +0000279<p>the source pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000280
281<h5>duplex</h5>
cristy7a40ba82011-01-08 20:31:18 +0000282<p>the duplex pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000283
284<h5>destination</h5>
cristy7a40ba82011-01-08 20:31:18 +0000285<p>the destination pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000286
287<h5>transfer</h5>
cristy7a40ba82011-01-08 20:31:18 +0000288<p>the transfer callback method.</p>
cristyc3ebda22010-06-27 17:11:57 +0000289
290<h5>context</h5>
cristy7a40ba82011-01-08 20:31:18 +0000291<p>the user defined context.</p>
cristyc3ebda22010-06-27 17:11:57 +0000292
293 </div>
cristy70b59b62011-02-07 19:09:57 +0000294<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000295_8c.html" id="GetPixelViewException">GetPixelViewException</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000296<div class="doc-section">
297
cristy7a40ba82011-01-08 20:31:18 +0000298<p>GetPixelViewException() returns the severity, reason, and description of any error that occurs when utilizing a pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000299
300<p>The format of the GetPixelViewException method is:</p>
301
302<pre class="code">
303 char *GetPixelViewException(const PixelWand *pixel_view,
304 ExceptionType *severity)
305</pre>
306
cristy7a40ba82011-01-08 20:31:18 +0000307<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000308
309<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000310<p>the pixel pixel_view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000311
312<h5>severity</h5>
cristy7a40ba82011-01-08 20:31:18 +0000313<p>the severity of the error is returned here.</p>
cristyc3ebda22010-06-27 17:11:57 +0000314
315 </div>
cristy70b59b62011-02-07 19:09:57 +0000316<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000317_8c.html" id="GetPixelViewHeight">GetPixelViewHeight</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000318<div class="doc-section">
319
cristy7a40ba82011-01-08 20:31:18 +0000320<p>GetPixelViewHeight() returns the pixel view height.</p>
cristyc3ebda22010-06-27 17:11:57 +0000321
322<p>The format of the GetPixelViewHeight method is:</p>
323
324<pre class="code">
325 size_t GetPixelViewHeight(const PixelView *pixel_view)
326</pre>
327
cristy7a40ba82011-01-08 20:31:18 +0000328<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000329
330<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000331<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000332
333 </div>
cristy70b59b62011-02-07 19:09:57 +0000334<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000335_8c.html" id="GetPixelViewIterator">GetPixelViewIterator</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000336<div class="doc-section">
337
cristy7a40ba82011-01-08 20:31:18 +0000338<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>
cristyc3ebda22010-06-27 17:11:57 +0000339
340<p>Use this pragma:</p>
341
342<pre class="text">
343 #pragma omp critical
344</pre>
345
cristy7a40ba82011-01-08 20:31:18 +0000346<p>to define a section of code in your callback get method that must be executed by a single thread at a time.</p>
cristyc3ebda22010-06-27 17:11:57 +0000347
348<p>The format of the GetPixelViewIterator method is:</p>
349
350<pre class="code">
351 MagickBooleanType GetPixelViewIterator(PixelView *source,
352 GetPixelViewMethod get,void *context)
353</pre>
354
cristy7a40ba82011-01-08 20:31:18 +0000355<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000356
357<h5>source</h5>
cristy7a40ba82011-01-08 20:31:18 +0000358<p>the source pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000359
360<h5>get</h5>
cristy7a40ba82011-01-08 20:31:18 +0000361<p>the get callback method.</p>
cristyc3ebda22010-06-27 17:11:57 +0000362
363<h5>context</h5>
cristy7a40ba82011-01-08 20:31:18 +0000364<p>the user defined context.</p>
cristyc3ebda22010-06-27 17:11:57 +0000365
366 </div>
cristy70b59b62011-02-07 19:09:57 +0000367<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000368_8c.html" id="GetPixelViewPixels">GetPixelViewPixels</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000369<div class="doc-section">
370
cristy7a40ba82011-01-08 20:31:18 +0000371<p>GetPixelViewPixels() returns the pixel view pixel_wands.</p>
cristyc3ebda22010-06-27 17:11:57 +0000372
373<p>The format of the GetPixelViewPixels method is:</p>
374
375<pre class="code">
376 PixelWand *GetPixelViewPixels(const PixelView *pixel_view)
377</pre>
378
cristy7a40ba82011-01-08 20:31:18 +0000379<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000380
381<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000382<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000383
384 </div>
cristy70b59b62011-02-07 19:09:57 +0000385<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000386_8c.html" id="GetPixelViewWand">GetPixelViewWand</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000387<div class="doc-section">
388
cristy7a40ba82011-01-08 20:31:18 +0000389<p>GetPixelViewWand() returns the magick wand associated with the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000390
391<p>The format of the GetPixelViewWand method is:</p>
392
393<pre class="code">
394 MagickWand *GetPixelViewWand(const PixelView *pixel_view)
395</pre>
396
cristy7a40ba82011-01-08 20:31:18 +0000397<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000398
399<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000400<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000401
402 </div>
cristy70b59b62011-02-07 19:09:57 +0000403<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000404_8c.html" id="GetPixelViewWidth">GetPixelViewWidth</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000405<div class="doc-section">
406
cristy7a40ba82011-01-08 20:31:18 +0000407<p>GetPixelViewWidth() returns the pixel view width.</p>
cristyc3ebda22010-06-27 17:11:57 +0000408
409<p>The format of the GetPixelViewWidth method is:</p>
410
411<pre class="code">
412 size_t GetPixelViewWidth(const PixelView *pixel_view)
413</pre>
414
cristy7a40ba82011-01-08 20:31:18 +0000415<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000416
417<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000418<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000419
420 </div>
cristy70b59b62011-02-07 19:09:57 +0000421<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000422_8c.html" id="GetPixelViewX">GetPixelViewX</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000423<div class="doc-section">
424
cristy7a40ba82011-01-08 20:31:18 +0000425<p>GetPixelViewX() returns the pixel view x offset.</p>
cristyc3ebda22010-06-27 17:11:57 +0000426
427<p>The format of the GetPixelViewX method is:</p>
428
429<pre class="code">
430 ssize_t GetPixelViewX(const PixelView *pixel_view)
431</pre>
432
cristy7a40ba82011-01-08 20:31:18 +0000433<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000434
435<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000436<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000437
438 </div>
cristy70b59b62011-02-07 19:09:57 +0000439<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000440_8c.html" id="GetPixelViewY">GetPixelViewY</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000441<div class="doc-section">
442
cristy7a40ba82011-01-08 20:31:18 +0000443<p>GetPixelViewY() returns the pixel view y offset.</p>
cristyc3ebda22010-06-27 17:11:57 +0000444
445<p>The format of the GetPixelViewY method is:</p>
446
447<pre class="code">
448 ssize_t GetPixelViewY(const PixelView *pixel_view)
449</pre>
450
cristy7a40ba82011-01-08 20:31:18 +0000451<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000452
453<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000454<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000455
456 </div>
cristy70b59b62011-02-07 19:09:57 +0000457<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000458_8c.html" id="IsPixelView">IsPixelView</a></h2>
cristyc3ebda22010-06-27 17:11:57 +0000459<div class="doc-section">
460
cristy7a40ba82011-01-08 20:31:18 +0000461<p>IsPixelView() returns MagickTrue if the the parameter is verified as a pixel view container.</p>
cristyc3ebda22010-06-27 17:11:57 +0000462
463<p>The format of the IsPixelView method is:</p>
464
465<pre class="code">
466 MagickBooleanType IsPixelView(const PixelView *pixel_view)
467</pre>
468
cristy7a40ba82011-01-08 20:31:18 +0000469<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +0000470
471<h5>pixel_view</h5>
cristy7a40ba82011-01-08 20:31:18 +0000472<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +0000473
474 </div>
cristy70b59b62011-02-07 19:09:57 +0000475<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000476_8c.html" id="MagickClipPathImage">MagickClipPathImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000477<div class="doc-section">
478
cristy7a40ba82011-01-08 20:31:18 +0000479<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>
cristy3ed852e2009-09-05 21:47:34 +0000480
481<p>The format of the MagickClipPathImage method is:</p>
482
483<pre class="code">
484 MagickBooleanType MagickClipPathImage(MagickWand *wand,
485 const char *pathname,const MagickBooleanType inside)
486</pre>
487
cristy7a40ba82011-01-08 20:31:18 +0000488<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000489
490<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000491<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000492
493<h5>pathname</h5>
cristy7a40ba82011-01-08 20:31:18 +0000494<p>name of clipping path resource. If name is preceded by #, use clipping path numbered by name.</p>
cristy3ed852e2009-09-05 21:47:34 +0000495
496<h5>inside</h5>
cristy7a40ba82011-01-08 20:31:18 +0000497<p>if non-zero, later operations take effect inside clipping path. Otherwise later operations take effect outside clipping path.</p>
cristy3ed852e2009-09-05 21:47:34 +0000498
499 </div>
cristy70b59b62011-02-07 19:09:57 +0000500<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000501_8c.html" id="DrawGetFillAlpha">DrawGetFillAlpha</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000502<div class="doc-section">
503
cristy7a40ba82011-01-08 20:31:18 +0000504<p>DrawGetFillAlpha() returns the alpha used when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
cristy3ed852e2009-09-05 21:47:34 +0000505
506<p>The format of the DrawGetFillAlpha method is:</p>
507
508<pre class="code">
509 double DrawGetFillAlpha(const DrawingWand *wand)
510</pre>
511
cristy7a40ba82011-01-08 20:31:18 +0000512<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000513
514<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000515<p>the drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000516
517 </div>
cristy70b59b62011-02-07 19:09:57 +0000518<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000519_8c.html" id="DrawGetStrokeAlpha">DrawGetStrokeAlpha</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000520<div class="doc-section">
521
cristy7a40ba82011-01-08 20:31:18 +0000522<p>DrawGetStrokeAlpha() returns the alpha of stroked object outlines.</p>
cristy3ed852e2009-09-05 21:47:34 +0000523
524<p>The format of the DrawGetStrokeAlpha method is:</p>
525
526<pre class="code">
527 double DrawGetStrokeAlpha(const DrawingWand *wand)
528</pre>
529
cristy7a40ba82011-01-08 20:31:18 +0000530<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000531
532<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000533<p>the drawing wand. </p>
cristy3ed852e2009-09-05 21:47:34 +0000534 </div>
cristy70b59b62011-02-07 19:09:57 +0000535<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000536_8c.html" id="DrawPeekGraphicWand">DrawPeekGraphicWand</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000537<div class="doc-section">
538
cristy7a40ba82011-01-08 20:31:18 +0000539<p>DrawPeekGraphicWand() returns the current drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000540
541<p>The format of the PeekDrawingWand method is:</p>
542
543<pre class="code">
544 DrawInfo *DrawPeekGraphicWand(const DrawingWand *wand)
545</pre>
546
cristy7a40ba82011-01-08 20:31:18 +0000547<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000548
549<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000550<p>the drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000551
552 </div>
cristy70b59b62011-02-07 19:09:57 +0000553<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000554_8c.html" id="DrawPopGraphicContext">DrawPopGraphicContext</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000555<div class="doc-section">
556
cristy7a40ba82011-01-08 20:31:18 +0000557<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>
cristy3ed852e2009-09-05 21:47:34 +0000558
559<p>The format of the DrawPopGraphicContext method is:</p>
560
561<pre class="code">
562 MagickBooleanType DrawPopGraphicContext(DrawingWand *wand)
563</pre>
564
cristy7a40ba82011-01-08 20:31:18 +0000565<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000566
567<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000568<p>the drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000569
570 </div>
cristy70b59b62011-02-07 19:09:57 +0000571<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000572_8c.html" id="DrawPushGraphicContext">DrawPushGraphicContext</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000573<div class="doc-section">
574
cristy7a40ba82011-01-08 20:31:18 +0000575<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>
cristy3ed852e2009-09-05 21:47:34 +0000576
577<p>The format of the DrawPushGraphicContext method is:</p>
578
579<pre class="code">
580 MagickBooleanType DrawPushGraphicContext(DrawingWand *wand)
581</pre>
582
cristy7a40ba82011-01-08 20:31:18 +0000583<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000584
585<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000586<p>the drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000587
588 </div>
cristy70b59b62011-02-07 19:09:57 +0000589<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000590_8c.html" id="DrawSetFillAlpha">DrawSetFillAlpha</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000591<div class="doc-section">
592
cristy7a40ba82011-01-08 20:31:18 +0000593<p>DrawSetFillAlpha() sets the alpha to use when drawing using the fill color or fill texture. Fully opaque is 1.0.</p>
cristy3ed852e2009-09-05 21:47:34 +0000594
595<p>The format of the DrawSetFillAlpha method is:</p>
596
597<pre class="code">
598 void DrawSetFillAlpha(DrawingWand *wand,const double fill_alpha)
599</pre>
600
cristy7a40ba82011-01-08 20:31:18 +0000601<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000602
603<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000604<p>the drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000605
606<h5>fill_alpha</h5>
cristy7a40ba82011-01-08 20:31:18 +0000607<p>fill alpha</p>
cristy3ed852e2009-09-05 21:47:34 +0000608
609 </div>
cristy70b59b62011-02-07 19:09:57 +0000610<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000611_8c.html" id="DrawSetStrokeAlpha">DrawSetStrokeAlpha</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000612<div class="doc-section">
613
cristy7a40ba82011-01-08 20:31:18 +0000614<p>DrawSetStrokeAlpha() specifies the alpha of stroked object outlines.</p>
cristy3ed852e2009-09-05 21:47:34 +0000615
616<p>The format of the DrawSetStrokeAlpha method is:</p>
617
618<pre class="code">
619 void DrawSetStrokeAlpha(DrawingWand *wand,const double stroke_alpha)
620</pre>
621
cristy7a40ba82011-01-08 20:31:18 +0000622<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000623
624<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000625<p>the drawing wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000626
627<h5>stroke_alpha</h5>
cristy7a40ba82011-01-08 20:31:18 +0000628<p>stroke alpha. The value 1.0 is opaque.</p>
cristy3ed852e2009-09-05 21:47:34 +0000629
630 </div>
cristy70b59b62011-02-07 19:09:57 +0000631<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000632_8c.html" id="MagickColorFloodfillImage">MagickColorFloodfillImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000633<div class="doc-section">
634
cristy7a40ba82011-01-08 20:31:18 +0000635<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>
cristy3ed852e2009-09-05 21:47:34 +0000636
637<p>The format of the MagickColorFloodfillImage method is:</p>
638
639<pre class="code">
640 MagickBooleanType MagickColorFloodfillImage(MagickWand *wand,
641 const PixelWand *fill,const double fuzz,const PixelWand *bordercolor,
cristybb503372010-05-27 20:51:26 +0000642 const ssize_t x,const ssize_t y)
cristy3ed852e2009-09-05 21:47:34 +0000643</pre>
644
cristy7a40ba82011-01-08 20:31:18 +0000645<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000646
647<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000648<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000649
650<h5>fill</h5>
cristy7a40ba82011-01-08 20:31:18 +0000651<p>the floodfill color pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000652
653<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +0000654<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>
cristy3ed852e2009-09-05 21:47:34 +0000655
656<h5>bordercolor</h5>
cristy7a40ba82011-01-08 20:31:18 +0000657<p>the border color pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000658
659<h5>x,y</h5>
cristy7a40ba82011-01-08 20:31:18 +0000660<p>the starting location of the operation.</p>
cristy3ed852e2009-09-05 21:47:34 +0000661
662 </div>
cristy70b59b62011-02-07 19:09:57 +0000663<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000664_8c.html" id="MagickDescribeImage">MagickDescribeImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000665<div class="doc-section">
666
cristy7a40ba82011-01-08 20:31:18 +0000667<p>MagickDescribeImage() identifies an image by printing its attributes to the file. Attributes include the image width, height, size, and others.</p>
cristy3ed852e2009-09-05 21:47:34 +0000668
669<p>The format of the MagickDescribeImage method is:</p>
670
671<pre class="code">
672 const char *MagickDescribeImage(MagickWand *wand)
673</pre>
674
cristy7a40ba82011-01-08 20:31:18 +0000675<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000676
677<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000678<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000679
680 </div>
cristy70b59b62011-02-07 19:09:57 +0000681<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000682_8c.html" id="MagickFlattenImages">MagickFlattenImages</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000683<div class="doc-section">
684
cristy7a40ba82011-01-08 20:31:18 +0000685<p>MagickFlattenImages() merges a sequence of images. This useful for combining Photoshop layers into a single image.</p>
cristy3ed852e2009-09-05 21:47:34 +0000686
687<p>The format of the MagickFlattenImages method is:</p>
688
689<pre class="code">
690 MagickWand *MagickFlattenImages(MagickWand *wand)
691</pre>
692
cristy7a40ba82011-01-08 20:31:18 +0000693<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000694
695<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000696<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000697
698 </div>
cristy70b59b62011-02-07 19:09:57 +0000699<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000700_8c.html" id="MagickGetImageAttribute">MagickGetImageAttribute</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000701<div class="doc-section">
702
cristy7a40ba82011-01-08 20:31:18 +0000703<p>MagickGetImageAttribute() returns a value associated with the specified property. Use MagickRelinquishMemory() to free the value when you are finished with it.</p>
cristy3ed852e2009-09-05 21:47:34 +0000704
705<p>The format of the MagickGetImageAttribute method is:</p>
706
707<pre class="code">
708 char *MagickGetImageAttribute(MagickWand *wand,const char *property)
709</pre>
710
cristy7a40ba82011-01-08 20:31:18 +0000711<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000712
713<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000714<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000715
716<h5>property</h5>
cristy7a40ba82011-01-08 20:31:18 +0000717<p>the property.</p>
cristy3ed852e2009-09-05 21:47:34 +0000718
719 </div>
cristy70b59b62011-02-07 19:09:57 +0000720<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000721_8c.html" id="MagickGetImageMatte">MagickGetImageMatte</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000722<div class="doc-section">
723
cristy7a40ba82011-01-08 20:31:18 +0000724<p>MagickGetImageMatte() returns MagickTrue if the image has a matte channel otherwise MagickFalse.</p>
cristy3ed852e2009-09-05 21:47:34 +0000725
726<p>The format of the MagickGetImageMatte method is:</p>
727
728<pre class="code">
cristybb503372010-05-27 20:51:26 +0000729 size_t MagickGetImageMatte(MagickWand *wand)
cristy3ed852e2009-09-05 21:47:34 +0000730</pre>
731
cristy7a40ba82011-01-08 20:31:18 +0000732<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000733
734<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000735<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000736
737 </div>
cristy70b59b62011-02-07 19:09:57 +0000738<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000739_8c.html" id="MagickGetImagePixels">MagickGetImagePixels</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000740<div class="doc-section">
741
cristy7a40ba82011-01-08 20:31:18 +0000742<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>
cristy3ed852e2009-09-05 21:47:34 +0000743
744<p>Suppose you want to extract the first scanline of a 640x480 image as character data in red-green-blue order:</p>
745
746<pre class="text">
747 MagickGetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
748</pre>
749
750<p>The format of the MagickGetImagePixels method is:</p>
751
752<pre class="code">
753 MagickBooleanType MagickGetImagePixels(MagickWand *wand,
cristybb503372010-05-27 20:51:26 +0000754 const ssize_t x,const ssize_t y,const size_t columns,
755 const size_t rows,const char *map,const StorageType storage,
cristy3ed852e2009-09-05 21:47:34 +0000756 void *pixels)
757</pre>
758
cristy7a40ba82011-01-08 20:31:18 +0000759<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000760
761<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000762<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000763
764<h5>x, y, columns, rows</h5>
cristy7a40ba82011-01-08 20:31:18 +0000765<p>These values define the perimeter of a region of pixels you want to extract.</p>
cristy3ed852e2009-09-05 21:47:34 +0000766
767<h5>map</h5>
cristy7a40ba82011-01-08 20:31:18 +0000768<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>
cristy3ed852e2009-09-05 21:47:34 +0000769
770<h5>storage</h5>
cristy7a40ba82011-01-08 20:31:18 +0000771<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>
cristy3ed852e2009-09-05 21:47:34 +0000772
773<h5>pixels</h5>
cristy7a40ba82011-01-08 20:31:18 +0000774<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>
cristy3ed852e2009-09-05 21:47:34 +0000775
776 </div>
cristy70b59b62011-02-07 19:09:57 +0000777<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000778_8c.html" id="MagickGetImageSize">MagickGetImageSize</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000779<div class="doc-section">
780
cristy7a40ba82011-01-08 20:31:18 +0000781<p>MagickGetImageSize() returns the image length in bytes.</p>
cristy3ed852e2009-09-05 21:47:34 +0000782
783<p>The format of the MagickGetImageSize method is:</p>
784
785<pre class="code">
786 MagickBooleanType MagickGetImageSize(MagickWand *wand,
787 MagickSizeType *length)
788</pre>
789
cristy7a40ba82011-01-08 20:31:18 +0000790<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000791
792<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000793<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000794
795<h5>length</h5>
cristy7a40ba82011-01-08 20:31:18 +0000796<p>the image length in bytes.</p>
cristy3ed852e2009-09-05 21:47:34 +0000797
798 </div>
cristy70b59b62011-02-07 19:09:57 +0000799<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000800_8c.html" id="MagickMapImage">MagickMapImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000801<div class="doc-section">
802
cristy7a40ba82011-01-08 20:31:18 +0000803<p>MagickMapImage() replaces the colors of an image with the closest color from a reference image.</p>
cristy3ed852e2009-09-05 21:47:34 +0000804
805<p>The format of the MagickMapImage method is:</p>
806
807<pre class="code">
808 MagickBooleanType MagickMapImage(MagickWand *wand,
809 const MagickWand *map_wand,const MagickBooleanType dither)
810</pre>
811
cristy7a40ba82011-01-08 20:31:18 +0000812<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000813
814<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000815<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000816
817<h5>map</h5>
cristy7a40ba82011-01-08 20:31:18 +0000818<p>the map wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000819
820<h5>dither</h5>
cristy7a40ba82011-01-08 20:31:18 +0000821<p>Set this integer value to something other than zero to dither the mapped image.</p>
cristy3ed852e2009-09-05 21:47:34 +0000822
823 </div>
cristy70b59b62011-02-07 19:09:57 +0000824<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000825_8c.html" id="MagickMatteFloodfillImage">MagickMatteFloodfillImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000826<div class="doc-section">
827
cristy7a40ba82011-01-08 20:31:18 +0000828<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>
cristy3ed852e2009-09-05 21:47:34 +0000829
830<p>The format of the MagickMatteFloodfillImage method is:</p>
831
832<pre class="code">
833 MagickBooleanType MagickMatteFloodfillImage(MagickWand *wand,
834 const double alpha,const double fuzz,const PixelWand *bordercolor,
cristybb503372010-05-27 20:51:26 +0000835 const ssize_t x,const ssize_t y)
cristy3ed852e2009-09-05 21:47:34 +0000836</pre>
837
cristy7a40ba82011-01-08 20:31:18 +0000838<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000839
840<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000841<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000842
843<h5>alpha</h5>
cristy7a40ba82011-01-08 20:31:18 +0000844<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
cristy3ed852e2009-09-05 21:47:34 +0000845
846<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +0000847<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>
cristy3ed852e2009-09-05 21:47:34 +0000848
849<h5>bordercolor</h5>
cristy7a40ba82011-01-08 20:31:18 +0000850<p>the border color pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000851
852<h5>x,y</h5>
cristy7a40ba82011-01-08 20:31:18 +0000853<p>the starting location of the operation.</p>
cristy3ed852e2009-09-05 21:47:34 +0000854
855 </div>
cristy70b59b62011-02-07 19:09:57 +0000856<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000857_8c.html" id="MagickMaximumImages">MagickMaximumImages</a></h2>
cristy63fed272010-03-07 19:08:45 +0000858<div class="doc-section">
859
cristy7a40ba82011-01-08 20:31:18 +0000860<p>MagickMaximumImages() returns the maximum intensity of an image sequence.</p>
cristy63fed272010-03-07 19:08:45 +0000861
862<p>The format of the MagickMaximumImages method is:</p>
863
864<pre class="code">
865 MagickWand *MagickMaximumImages(MagickWand *wand)
866</pre>
867
cristy7a40ba82011-01-08 20:31:18 +0000868<p>A description of each parameter follows:</p>
cristy63fed272010-03-07 19:08:45 +0000869
870<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000871<p>the magick wand.</p>
cristy63fed272010-03-07 19:08:45 +0000872
873 </div>
cristy70b59b62011-02-07 19:09:57 +0000874<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000875_8c.html" id="MagickMinimumImages">MagickMinimumImages</a></h2>
cristy63fed272010-03-07 19:08:45 +0000876<div class="doc-section">
877
cristy7a40ba82011-01-08 20:31:18 +0000878<p>MagickMinimumImages() returns the minimum intensity of an image sequence.</p>
cristy63fed272010-03-07 19:08:45 +0000879
880<p>The format of the MagickMinimumImages method is:</p>
881
882<pre class="code">
883 MagickWand *MagickMinimumImages(MagickWand *wand)
884</pre>
885
cristy7a40ba82011-01-08 20:31:18 +0000886<p>A description of each parameter follows:</p>
cristy63fed272010-03-07 19:08:45 +0000887
888<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000889<p>the magick wand.</p>
cristy63fed272010-03-07 19:08:45 +0000890
891 </div>
cristy70b59b62011-02-07 19:09:57 +0000892<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000893_8c.html" id="MagickMosaicImages">MagickMosaicImages</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000894<div class="doc-section">
895
cristy7a40ba82011-01-08 20:31:18 +0000896<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>
cristy3ed852e2009-09-05 21:47:34 +0000897
898<p>The format of the MagickMosaicImages method is:</p>
899
900<pre class="code">
901 MagickWand *MagickMosaicImages(MagickWand *wand)
902</pre>
903
cristy7a40ba82011-01-08 20:31:18 +0000904<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000905
906<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000907<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000908
909 </div>
cristy70b59b62011-02-07 19:09:57 +0000910<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000911_8c.html" id="MagickOpaqueImage">MagickOpaqueImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000912<div class="doc-section">
913
cristy7a40ba82011-01-08 20:31:18 +0000914<p>MagickOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
cristy3ed852e2009-09-05 21:47:34 +0000915
916<p>The format of the MagickOpaqueImage method is:</p>
917
918<pre class="code">
919 MagickBooleanType MagickOpaqueImage(MagickWand *wand,
920 const PixelWand *target,const PixelWand *fill,const double fuzz)
921</pre>
922
cristy7a40ba82011-01-08 20:31:18 +0000923<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000924
925<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000926<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000927
928<h5>channel</h5>
cristy7a40ba82011-01-08 20:31:18 +0000929<p>the channel(s).</p>
cristy3ed852e2009-09-05 21:47:34 +0000930
931<h5>target</h5>
cristy7a40ba82011-01-08 20:31:18 +0000932<p>Change this target color to the fill color within the image.</p>
cristy3ed852e2009-09-05 21:47:34 +0000933
934<h5>fill</h5>
cristy7a40ba82011-01-08 20:31:18 +0000935<p>the fill pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000936
937<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +0000938<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>
cristy3ed852e2009-09-05 21:47:34 +0000939
940 </div>
cristy70b59b62011-02-07 19:09:57 +0000941<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000942_8c.html" id="MagickPaintFloodfillImage">MagickPaintFloodfillImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000943<div class="doc-section">
944
cristy7a40ba82011-01-08 20:31:18 +0000945<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>
cristy3ed852e2009-09-05 21:47:34 +0000946
947<p>The format of the MagickPaintFloodfillImage method is:</p>
948
949<pre class="code">
950 MagickBooleanType MagickPaintFloodfillImage(MagickWand *wand,
951 const ChannelType channel,const PixelWand *fill,const double fuzz,
cristybb503372010-05-27 20:51:26 +0000952 const PixelWand *bordercolor,const ssize_t x,const ssize_t y)
cristy3ed852e2009-09-05 21:47:34 +0000953</pre>
954
cristy7a40ba82011-01-08 20:31:18 +0000955<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000956
957<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000958<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000959
960<h5>channel</h5>
cristy7a40ba82011-01-08 20:31:18 +0000961<p>the channel(s).</p>
cristy3ed852e2009-09-05 21:47:34 +0000962
963<h5>fill</h5>
cristy7a40ba82011-01-08 20:31:18 +0000964<p>the floodfill color pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000965
966<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +0000967<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>
cristy3ed852e2009-09-05 21:47:34 +0000968
969<h5>bordercolor</h5>
cristy7a40ba82011-01-08 20:31:18 +0000970<p>the border color pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000971
972<h5>x,y</h5>
cristy7a40ba82011-01-08 20:31:18 +0000973<p>the starting location of the operation.</p>
cristy3ed852e2009-09-05 21:47:34 +0000974
975 </div>
cristy70b59b62011-02-07 19:09:57 +0000976<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +0000977_8c.html" id="MagickPaintOpaqueImage">MagickPaintOpaqueImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +0000978<div class="doc-section">
979
cristy7a40ba82011-01-08 20:31:18 +0000980<p>MagickPaintOpaqueImage() changes any pixel that matches color with the color defined by fill.</p>
cristy3ed852e2009-09-05 21:47:34 +0000981
982<p>The format of the MagickPaintOpaqueImage method is:</p>
983
984<pre class="code">
985 MagickBooleanType MagickPaintOpaqueImage(MagickWand *wand,
986 const PixelWand *target,const PixelWand *fill,const double fuzz)
987 MagickBooleanType MagickPaintOpaqueImageChannel(MagickWand *wand,
988 const ChannelType channel,const PixelWand *target,
989 const PixelWand *fill,const double fuzz)
990</pre>
991
cristy7a40ba82011-01-08 20:31:18 +0000992<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +0000993
994<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +0000995<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +0000996
997<h5>channel</h5>
cristy7a40ba82011-01-08 20:31:18 +0000998<p>the channel(s).</p>
cristy3ed852e2009-09-05 21:47:34 +0000999
1000<h5>target</h5>
cristy7a40ba82011-01-08 20:31:18 +00001001<p>Change this target color to the fill color within the image.</p>
cristy3ed852e2009-09-05 21:47:34 +00001002
1003<h5>fill</h5>
cristy7a40ba82011-01-08 20:31:18 +00001004<p>the fill pixel wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001005
1006<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +00001007<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>
cristy3ed852e2009-09-05 21:47:34 +00001008
1009 </div>
cristy70b59b62011-02-07 19:09:57 +00001010<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001011_8c.html" id="MagickPaintTransparentImage">MagickPaintTransparentImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001012<div class="doc-section">
1013
cristy7a40ba82011-01-08 20:31:18 +00001014<p>MagickPaintTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
cristy3ed852e2009-09-05 21:47:34 +00001015
1016<p>The format of the MagickPaintTransparentImage method is:</p>
1017
1018<pre class="code">
1019 MagickBooleanType MagickPaintTransparentImage(MagickWand *wand,
1020 const PixelWand *target,const double alpha,const double fuzz)
1021</pre>
1022
cristy7a40ba82011-01-08 20:31:18 +00001023<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001024
1025<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001026<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001027
1028<h5>target</h5>
cristy7a40ba82011-01-08 20:31:18 +00001029<p>Change this target color to specified opacity value within the image.</p>
cristy3ed852e2009-09-05 21:47:34 +00001030
1031<h5>alpha</h5>
cristy7a40ba82011-01-08 20:31:18 +00001032<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
cristy3ed852e2009-09-05 21:47:34 +00001033
1034<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +00001035<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>
cristy3ed852e2009-09-05 21:47:34 +00001036
1037 </div>
cristy70b59b62011-02-07 19:09:57 +00001038<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001039_8c.html" id="MagickRecolorImage">MagickRecolorImage</a></h2>
cristy0291e2d2010-04-04 17:50:18 +00001040<div class="doc-section">
1041
cristy7a40ba82011-01-08 20:31:18 +00001042<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>
cristy0291e2d2010-04-04 17:50:18 +00001043
1044<p>The format of the MagickRecolorImage method is:</p>
1045
1046<pre class="code">
1047 MagickBooleanType MagickRecolorImage(MagickWand *wand,
cristybb503372010-05-27 20:51:26 +00001048 const size_t order,const double *color_matrix)
cristy0291e2d2010-04-04 17:50:18 +00001049</pre>
1050
cristy7a40ba82011-01-08 20:31:18 +00001051<p>A description of each parameter follows:</p>
cristy0291e2d2010-04-04 17:50:18 +00001052
1053<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001054<p>the magick wand.</p>
cristy0291e2d2010-04-04 17:50:18 +00001055
1056<h5>order</h5>
cristy7a40ba82011-01-08 20:31:18 +00001057<p>the number of columns and rows in the color matrix.</p>
cristy0291e2d2010-04-04 17:50:18 +00001058
1059<h5>color_matrix</h5>
cristy7a40ba82011-01-08 20:31:18 +00001060<p>An array of doubles representing the color matrix.</p>
cristy0291e2d2010-04-04 17:50:18 +00001061
1062 </div>
cristy70b59b62011-02-07 19:09:57 +00001063<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001064_8c.html" id="MagickSetImageAttribute">MagickSetImageAttribute</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001065<div class="doc-section">
1066
cristy7a40ba82011-01-08 20:31:18 +00001067<p>MagickSetImageAttribute() associates a property with an image.</p>
cristy3ed852e2009-09-05 21:47:34 +00001068
1069<p>The format of the MagickSetImageAttribute method is:</p>
1070
1071<pre class="code">
1072 MagickBooleanType MagickSetImageAttribute(MagickWand *wand,
1073 const char *property,const char *value)
1074</pre>
1075
cristy7a40ba82011-01-08 20:31:18 +00001076<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001077
1078<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001079<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001080
1081<h5>property</h5>
cristy7a40ba82011-01-08 20:31:18 +00001082<p>the property.</p>
cristy3ed852e2009-09-05 21:47:34 +00001083
1084<h5>value</h5>
cristy7a40ba82011-01-08 20:31:18 +00001085<p>the value.</p>
cristy3ed852e2009-09-05 21:47:34 +00001086
1087 </div>
cristy70b59b62011-02-07 19:09:57 +00001088<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001089_8c.html" id="MagickSetImageIndex">MagickSetImageIndex</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001090<div class="doc-section">
1091
cristy7a40ba82011-01-08 20:31:18 +00001092<p>MagickSetImageIndex() set the current image to the position of the list specified with the index parameter.</p>
cristy3ed852e2009-09-05 21:47:34 +00001093
1094<p>The format of the MagickSetImageIndex method is:</p>
1095
1096<pre class="code">
cristybb503372010-05-27 20:51:26 +00001097 MagickBooleanType MagickSetImageIndex(MagickWand *wand,const ssize_t index)
cristy3ed852e2009-09-05 21:47:34 +00001098</pre>
1099
cristy7a40ba82011-01-08 20:31:18 +00001100<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001101
1102<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001103<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001104
1105<h5>index</h5>
cristy7a40ba82011-01-08 20:31:18 +00001106<p>the scene number.</p>
cristy3ed852e2009-09-05 21:47:34 +00001107
1108 </div>
cristy70b59b62011-02-07 19:09:57 +00001109<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001110_8c.html" id="MagickTransparentImage">MagickTransparentImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001111<div class="doc-section">
1112
cristy7a40ba82011-01-08 20:31:18 +00001113<p>MagickTransparentImage() changes any pixel that matches color with the color defined by fill.</p>
cristy3ed852e2009-09-05 21:47:34 +00001114
1115<p>The format of the MagickTransparentImage method is:</p>
1116
1117<pre class="code">
1118 MagickBooleanType MagickTransparentImage(MagickWand *wand,
1119 const PixelWand *target,const double alpha,const double fuzz)
1120</pre>
1121
cristy7a40ba82011-01-08 20:31:18 +00001122<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001123
1124<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001125<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001126
1127<h5>target</h5>
cristy7a40ba82011-01-08 20:31:18 +00001128<p>Change this target color to specified opacity value within the image.</p>
cristy3ed852e2009-09-05 21:47:34 +00001129
1130<h5>alpha</h5>
cristy7a40ba82011-01-08 20:31:18 +00001131<p>the level of transparency: 1.0 is fully opaque and 0.0 is fully transparent.</p>
cristy3ed852e2009-09-05 21:47:34 +00001132
1133<h5>fuzz</h5>
cristy7a40ba82011-01-08 20:31:18 +00001134<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>
cristy3ed852e2009-09-05 21:47:34 +00001135
1136 </div>
cristy70b59b62011-02-07 19:09:57 +00001137<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001138_8c.html" id="MagickRegionOfInterestImage">MagickRegionOfInterestImage</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001139<div class="doc-section">
1140
cristy7a40ba82011-01-08 20:31:18 +00001141<p>MagickRegionOfInterestImage() extracts a region of the image and returns it as a new wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001142
1143<p>The format of the MagickRegionOfInterestImage method is:</p>
1144
1145<pre class="code">
1146 MagickWand *MagickRegionOfInterestImage(MagickWand *wand,
cristybb503372010-05-27 20:51:26 +00001147 const size_t width,const size_t height,const ssize_t x,
1148 const ssize_t y)
cristy3ed852e2009-09-05 21:47:34 +00001149</pre>
1150
cristy7a40ba82011-01-08 20:31:18 +00001151<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001152
1153<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001154<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001155
1156<h5>width</h5>
cristy7a40ba82011-01-08 20:31:18 +00001157<p>the region width.</p>
cristy3ed852e2009-09-05 21:47:34 +00001158
1159<h5>height</h5>
cristy7a40ba82011-01-08 20:31:18 +00001160<p>the region height.</p>
cristy3ed852e2009-09-05 21:47:34 +00001161
1162<h5>x</h5>
cristy7a40ba82011-01-08 20:31:18 +00001163<p>the region x offset.</p>
cristy3ed852e2009-09-05 21:47:34 +00001164
1165<h5>y</h5>
cristy7a40ba82011-01-08 20:31:18 +00001166<p>the region y offset.</p>
cristy3ed852e2009-09-05 21:47:34 +00001167
1168 </div>
cristy70b59b62011-02-07 19:09:57 +00001169<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001170_8c.html" id="MagickSetImagePixels">MagickSetImagePixels</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001171<div class="doc-section">
1172
cristy7a40ba82011-01-08 20:31:18 +00001173<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>
cristy3ed852e2009-09-05 21:47:34 +00001174
1175<p>Suppose your want to upload the first scanline of a 640x480 image from character data in red-green-blue order:</p>
1176
1177<pre class="text">
1178 MagickSetImagePixels(wand,0,0,640,1,"RGB",CharPixel,pixels);
1179</pre>
1180
1181<p>The format of the MagickSetImagePixels method is:</p>
1182
1183<pre class="code">
1184 MagickBooleanType MagickSetImagePixels(MagickWand *wand,
cristybb503372010-05-27 20:51:26 +00001185 const ssize_t x,const ssize_t y,const size_t columns,
1186 const size_t rows,const char *map,const StorageType storage,
cristy3ed852e2009-09-05 21:47:34 +00001187 const void *pixels)
1188</pre>
1189
cristy7a40ba82011-01-08 20:31:18 +00001190<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001191
1192<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001193<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001194
1195<h5>x, y, columns, rows</h5>
cristy7a40ba82011-01-08 20:31:18 +00001196<p>These values define the perimeter of a region of pixels you want to define.</p>
cristy3ed852e2009-09-05 21:47:34 +00001197
1198<h5>map</h5>
cristy7a40ba82011-01-08 20:31:18 +00001199<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>
cristy3ed852e2009-09-05 21:47:34 +00001200
1201<h5>storage</h5>
cristy7a40ba82011-01-08 20:31:18 +00001202<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>
cristy3ed852e2009-09-05 21:47:34 +00001203
1204<h5>pixels</h5>
cristy7a40ba82011-01-08 20:31:18 +00001205<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>
cristy3ed852e2009-09-05 21:47:34 +00001206
1207 </div>
cristy70b59b62011-02-07 19:09:57 +00001208<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001209_8c.html" id="MagickWriteImageBlob">MagickWriteImageBlob</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001210<div class="doc-section">
1211
cristy7a40ba82011-01-08 20:31:18 +00001212<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>
cristy3ed852e2009-09-05 21:47:34 +00001213
cristy7a40ba82011-01-08 20:31:18 +00001214<p>Use MagickRelinquishMemory() to free the blob when you are done with it.</p>
cristy3ed852e2009-09-05 21:47:34 +00001215
1216<p>The format of the MagickWriteImageBlob method is:</p>
1217
1218<pre class="code">
1219 unsigned char *MagickWriteImageBlob(MagickWand *wand,size_t *length)
1220</pre>
1221
cristy7a40ba82011-01-08 20:31:18 +00001222<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001223
1224<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001225<p>the magick wand.</p>
cristy3ed852e2009-09-05 21:47:34 +00001226
1227<h5>length</h5>
cristy7a40ba82011-01-08 20:31:18 +00001228<p>the length of the blob.</p>
cristy3ed852e2009-09-05 21:47:34 +00001229
1230 </div>
cristy70b59b62011-02-07 19:09:57 +00001231<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001232_8c.html" id="NewPixelView">NewPixelView</a></h2>
cristyc3ebda22010-06-27 17:11:57 +00001233<div class="doc-section">
1234
cristy7a40ba82011-01-08 20:31:18 +00001235<p>NewPixelView() returns a pixel view required for all other methods in the Pixel View API.</p>
cristyc3ebda22010-06-27 17:11:57 +00001236
1237<p>The format of the NewPixelView method is:</p>
1238
1239<pre class="code">
1240 PixelView *NewPixelView(MagickWand *wand)
1241</pre>
1242
cristy7a40ba82011-01-08 20:31:18 +00001243<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +00001244
1245<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001246<p>the wand.</p>
cristyc3ebda22010-06-27 17:11:57 +00001247
1248 </div>
cristy70b59b62011-02-07 19:09:57 +00001249<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001250_8c.html" id="NewPixelViewRegion">NewPixelViewRegion</a></h2>
cristyc3ebda22010-06-27 17:11:57 +00001251<div class="doc-section">
1252
cristy7a40ba82011-01-08 20:31:18 +00001253<p>NewPixelViewRegion() returns a pixel view required for all other methods in the Pixel View API.</p>
cristyc3ebda22010-06-27 17:11:57 +00001254
1255<p>The format of the NewPixelViewRegion method is:</p>
1256
1257<pre class="code">
1258 PixelView *NewPixelViewRegion(MagickWand *wand,const ssize_t x,
1259 const ssize_t y,const size_t width,const size_t height)
1260</pre>
1261
cristy7a40ba82011-01-08 20:31:18 +00001262<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +00001263
1264<h5>wand</h5>
cristy7a40ba82011-01-08 20:31:18 +00001265<p>the magick wand.</p>
cristyc3ebda22010-06-27 17:11:57 +00001266
1267<h5>x,y,columns,rows</h5>
cristy7a40ba82011-01-08 20:31:18 +00001268<p>These values define the perimeter of a region of pixel_wands view.</p>
cristyc3ebda22010-06-27 17:11:57 +00001269
1270 </div>
cristy70b59b62011-02-07 19:09:57 +00001271<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001272_8c.html" id="PixelGetNextRow">PixelGetNextRow</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001273<div class="doc-section">
1274
cristy7a40ba82011-01-08 20:31:18 +00001275<p>PixelGetNextRow() returns the next row as an array of pixel wands from the pixel iterator.</p>
cristy3ed852e2009-09-05 21:47:34 +00001276
1277<p>The format of the PixelGetNextRow method is:</p>
1278
1279<pre class="code">
1280 PixelWand **PixelGetNextRow(PixelIterator *iterator,
cristybb503372010-05-27 20:51:26 +00001281 size_t *number_wands)
cristy3ed852e2009-09-05 21:47:34 +00001282</pre>
1283
cristy7a40ba82011-01-08 20:31:18 +00001284<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001285
1286<h5>iterator</h5>
cristy7a40ba82011-01-08 20:31:18 +00001287<p>the pixel iterator.</p>
cristy3ed852e2009-09-05 21:47:34 +00001288
1289<h5>number_wands</h5>
cristy7a40ba82011-01-08 20:31:18 +00001290<p>the number of pixel wands.</p>
cristy3ed852e2009-09-05 21:47:34 +00001291
1292 </div>
cristy70b59b62011-02-07 19:09:57 +00001293<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001294_8c.html" id="PixelIteratorGetException">PixelIteratorGetException</a></h2>
cristy3ed852e2009-09-05 21:47:34 +00001295<div class="doc-section">
1296
cristy7a40ba82011-01-08 20:31:18 +00001297<p>PixelIteratorGetException() returns the severity, reason, and description of any error that occurs when using other methods in this API.</p>
cristy3ed852e2009-09-05 21:47:34 +00001298
1299<p>The format of the PixelIteratorGetException method is:</p>
1300
1301<pre class="code">
1302 char *PixelIteratorGetException(const Pixeliterator *iterator,
1303 ExceptionType *severity)
1304</pre>
1305
cristy7a40ba82011-01-08 20:31:18 +00001306<p>A description of each parameter follows:</p>
cristy3ed852e2009-09-05 21:47:34 +00001307
1308<h5>iterator</h5>
cristy7a40ba82011-01-08 20:31:18 +00001309<p>the pixel iterator.</p>
cristy3ed852e2009-09-05 21:47:34 +00001310
1311<h5>severity</h5>
cristy7a40ba82011-01-08 20:31:18 +00001312<p>the severity of the error is returned here.</p>
cristy3ed852e2009-09-05 21:47:34 +00001313
1314 </div>
cristy70b59b62011-02-07 19:09:57 +00001315<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001316_8c.html" id="SetPixelViewIterator">SetPixelViewIterator</a></h2>
cristyc3ebda22010-06-27 17:11:57 +00001317<div class="doc-section">
1318
cristy7a40ba82011-01-08 20:31:18 +00001319<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>
cristyc3ebda22010-06-27 17:11:57 +00001320
1321<p>Use this pragma:</p>
1322
1323<pre class="text">
1324 #pragma omp critical
1325</pre>
1326
cristy7a40ba82011-01-08 20:31:18 +00001327<p>to define a section of code in your callback set method that must be executed by a single thread at a time.</p>
cristyc3ebda22010-06-27 17:11:57 +00001328
1329<p>The format of the SetPixelViewIterator method is:</p>
1330
1331<pre class="code">
1332 MagickBooleanType SetPixelViewIterator(PixelView *destination,
1333 SetPixelViewMethod set,void *context)
1334</pre>
1335
cristy7a40ba82011-01-08 20:31:18 +00001336<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +00001337
1338<h5>destination</h5>
cristy7a40ba82011-01-08 20:31:18 +00001339<p>the pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +00001340
1341<h5>set</h5>
cristy7a40ba82011-01-08 20:31:18 +00001342<p>the set callback method.</p>
cristyc3ebda22010-06-27 17:11:57 +00001343
1344<h5>context</h5>
cristy7a40ba82011-01-08 20:31:18 +00001345<p>the user defined context.</p>
cristyc3ebda22010-06-27 17:11:57 +00001346
1347 </div>
cristy70b59b62011-02-07 19:09:57 +00001348<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001349_8c.html" id="TransferPixelViewIterator">TransferPixelViewIterator</a></h2>
cristyc3ebda22010-06-27 17:11:57 +00001350<div class="doc-section">
1351
cristy7a40ba82011-01-08 20:31:18 +00001352<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>
cristyc3ebda22010-06-27 17:11:57 +00001353
1354<p>Use this pragma:</p>
1355
1356<pre class="text">
1357 #pragma omp critical
1358</pre>
1359
cristy7a40ba82011-01-08 20:31:18 +00001360<p>to define a section of code in your callback transfer method that must be executed by a single thread at a time.</p>
cristyc3ebda22010-06-27 17:11:57 +00001361
1362<p>The format of the TransferPixelViewIterator method is:</p>
1363
1364<pre class="code">
1365 MagickBooleanType TransferPixelViewIterator(PixelView *source,
1366 PixelView *destination,TransferPixelViewMethod transfer,void *context)
1367</pre>
1368
cristy7a40ba82011-01-08 20:31:18 +00001369<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +00001370
1371<h5>source</h5>
cristy7a40ba82011-01-08 20:31:18 +00001372<p>the source pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +00001373
1374<h5>destination</h5>
cristy7a40ba82011-01-08 20:31:18 +00001375<p>the destination pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +00001376
1377<h5>transfer</h5>
cristy7a40ba82011-01-08 20:31:18 +00001378<p>the transfer callback method.</p>
cristyc3ebda22010-06-27 17:11:57 +00001379
1380<h5>context</h5>
cristy7a40ba82011-01-08 20:31:18 +00001381<p>the user defined context.</p>
cristyc3ebda22010-06-27 17:11:57 +00001382
1383 </div>
cristy70b59b62011-02-07 19:09:57 +00001384<h2><a href="http://www.imagemagick.org/api/MagickWand/deprecate
cristy7a40ba82011-01-08 20:31:18 +00001385_8c.html" id="UpdatePixelViewIterator">UpdatePixelViewIterator</a></h2>
cristyc3ebda22010-06-27 17:11:57 +00001386<div class="doc-section">
1387
cristy7a40ba82011-01-08 20:31:18 +00001388<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>
cristyc3ebda22010-06-27 17:11:57 +00001389
1390<p>Use this pragma:</p>
1391
1392<pre class="text">
1393 #pragma omp critical
1394</pre>
1395
cristy7a40ba82011-01-08 20:31:18 +00001396<p>to define a section of code in your callback update method that must be executed by a single thread at a time.</p>
cristyc3ebda22010-06-27 17:11:57 +00001397
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
cristy7a40ba82011-01-08 20:31:18 +00001405<p>A description of each parameter follows:</p>
cristyc3ebda22010-06-27 17:11:57 +00001406
1407<h5>source</h5>
cristy7a40ba82011-01-08 20:31:18 +00001408<p>the source pixel view.</p>
cristyc3ebda22010-06-27 17:11:57 +00001409
1410<h5>update</h5>
cristy7a40ba82011-01-08 20:31:18 +00001411<p>the update callback method.</p>
cristyc3ebda22010-06-27 17:11:57 +00001412
1413<h5>context</h5>
cristy7a40ba82011-01-08 20:31:18 +00001414<p>the user defined context.</p>
cristyc3ebda22010-06-27 17:11:57 +00001415
1416 </div>
cristy3eaa0ef2010-03-06 20:35:26 +00001417
1418</div>
1419
1420<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +00001421 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001422 <span id="linkbar-center">
1423 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +00001424 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +00001425 </span>
1426 <span id="linkbar-east">&nbsp;</span>
1427 </div>
1428 <div class="footer">
cristy4103d562010-12-10 01:38:54 +00001429 <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
cristy3eaa0ef2010-03-06 20:35:26 +00001430 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
1431 </div>
1432 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +00001433 <script type="text/javascript">
1434 var _gaq = _gaq || [];
1435 _gaq.push(['_setAccount', 'UA-17690367-1']);
1436 _gaq.push(['_trackPageview']);
1437
1438 (function() {
1439 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
1440 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
1441 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
1442 })();
1443 </script>
cristy3eaa0ef2010-03-06 20:35:26 +00001444</body>
1445</html>