blob: a73df70a968ae9eb32081e2bd7a76d1b1566037f [file] [log] [blame]
cristydcca3fa2010-12-29 21:50:07 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2 "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
cristy2bd2a982011-02-15 00:52:58 +00003<html version="-//W3C//DTD XHTML 1.1//EN"
4 xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"
5 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
6 xsi:schemaLocation="http://www.w3.org/1999/xhtml
7 http://www.w3.org/MarkUp/SCHEMA/xhtml11.xsd">
cristy3eaa0ef2010-03-06 20:35:26 +00008<head>
cristy3c98a4f2010-08-13 20:09:41 +00009 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
cristy1efc1ab2011-08-01 14:47:02 +000010 <meta name="google-site-verification" content="MxsMq6bdLOx0KSuz1MY6yG9ZTIJ7_7DVRfl5NCAT5Yg"/>
cristyffb69ed2010-12-25 00:06:48 +000011 <title>ImageMagick: MagickCore, C API for ImageMagick: Paint on an Image</title>
cristy3ed852e2009-09-05 21:47:34 +000012 <meta http-equiv="Content-Language" content="en-US"/>
13 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
14 <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
cristy3c98a4f2010-08-13 20:09:41 +000015 <meta name="Application-name" content="ImageMagick"/>
cristye6e84152011-06-06 14:16:49 +000016 <meta name="Description" content="Use ImageMagick to convert, edit, or compose bitmap images in a variety of formats. In addition resize, rotate, shear, distort and transform images automagically."/>
cristy3c98a4f2010-08-13 20:09:41 +000017 <meta name="Application-url" content="http://www.imagemagick.org"/>
cristy3ed852e2009-09-05 21:47:34 +000018 <meta name="Generator" content="PHP"/>
cristyeed6cb62012-01-28 19:38:34 +000019 <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, paint, on, an, image, ImageMagick, PerlMagick, image processing, OpenMP, software development library, image, photo, software, Magick++, MagickWand"/>
cristy3ed852e2009-09-05 21:47:34 +000020 <meta name="Rating" content="GENERAL"/>
21 <meta name="Robots" content="INDEX, FOLLOW"/>
22 <meta name="Generator" content="ImageMagick Studio LLC"/>
23 <meta name="Author" content="ImageMagick Studio LLC"/>
24 <meta name="Revisit-after" content="2 DAYS"/>
25 <meta name="Resource-type" content="document"/>
cristy1454be72011-12-19 01:52:48 +000026 <meta name="Copyright" content="Copyright (c) 1999-2012 ImageMagick Studio LLC"/>
cristy3ed852e2009-09-05 21:47:34 +000027 <meta name="Distribution" content="Global"/>
cristydcca3fa2010-12-29 21:50:07 +000028 <link rel="icon" href="../../images/wand.png"/>
cristy3c98a4f2010-08-13 20:09:41 +000029 <link rel="shortcut icon" href="../../images/wand.ico" type="images/x-icon"/>
cristy29c5c992011-06-25 13:58:49 +000030 <link rel="canonical" href="http://www.imagemagick.org" />
cristy3c98a4f2010-08-13 20:09:41 +000031 <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf"/>
cristyeed6cb62012-01-28 19:38:34 +000032 <!-- Add jQuery library -->
33 <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.min.js"></script>
34
35 <!-- Optionaly include easing and/or mousewheel plugins -->
36 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.easing-1.3.pack.js"></script>
37 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.mousewheel-3.0.6.pack.js"></script>
38
39 <!-- Add fancyBox -->
40 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/jquery.fancybox.css?v=2.0.3" type="text/css" media="screen" />
41 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/jquery.fancybox.pack.js?v=2.0.3"></script>
42
43 <!-- Optionaly include button and/or thumbnail helpers -->
44 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-buttons.css?v=2.0.3" type="text/css" media="screen" />
45 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-buttons.js?v=2.0.3"></script>
46
47 <link rel="stylesheet" href="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-thumbs.css?v=2.0.3" type="text/css" media="screen" />
48 <script type="text/javascript" src="http://www.imagemagick.org/fancybox/helpers/jquery.fancybox-thumbs.js?v=2.0.3"></script>
49 <script type="text/javascript">
50 $(document).ready(function() {
51 $(".fancybox").fancybox();
52 });
53 </script>
54 <!-- ImageMagick style -->
cristy7a40ba82011-01-08 20:31:18 +000055 <link rel="stylesheet" href="http://www.google.com/cse/style/look/default.css" type="text/css" />
cristy3c98a4f2010-08-13 20:09:41 +000056 <style type="text/css" media="all">
57 @import url("../../www/magick.css");
58 </style>
cristy3eaa0ef2010-03-06 20:35:26 +000059</head>
60
61<body id="www-imagemagick-org">
62<div class="titlebar">
cristyb52981c2011-03-19 17:09:31 +000063<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>
72 <script type="text/javascript"
73 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
74 </script>
75</div>
cristy3eaa0ef2010-03-06 20:35:26 +000076<a href="http://www.imagemagick.org/discourse-server/">
cristyaf8d6652011-02-04 21:57:45 +000077 <img src="../../images/logo.jpg"
78 alt="ImageMagick Logo"
cristy178edaf2011-01-23 03:42:39 +000079 style="width: 123px; height: 118px; border: 0px; float: right;" /></a>
cristy3eaa0ef2010-03-06 20:35:26 +000080<a href="../../index.html">
cristyaf8d6652011-02-04 21:57:45 +000081 <img src="../../images/sprite.jpg"
82 alt="ImageMagick Sprite"
cristy3eaa0ef2010-03-06 20:35:26 +000083 style="width: 114px; height: 118px; border: 0px; float: right;" /></a>
84</div>
85
cristyce69bb02010-07-27 19:49:46 +000086<div class="westbar">
cristy3eaa0ef2010-03-06 20:35:26 +000087
cristy3ed852e2009-09-05 21:47:34 +000088<div class="menu">
cristy83a272e2010-05-07 20:40:35 +000089 <a title="About ImageMagick" href="../../index.html">About ImageMagick</a>
cristy3ed852e2009-09-05 21:47:34 +000090</div>
cristy3ed852e2009-09-05 21:47:34 +000091<div class="menu">
cristybb503372010-05-27 20:51:26 +000092 <a title="Binary Releases" href="../../www/binary-releases.html">Binary Releases</a>
93</div>
94<div class="sub">
95 <a title="Binary Release: Unix" href="../../www/binary-releases.html#unix">Unix</a>
96</div>
97<div class="sub">
98 <a title="Binary Release: MacOS X" href="../../www/binary-releases.html#macosx">Mac OS X</a>
99</div>
100<div class="sub">
cristye6e84152011-06-06 14:16:49 +0000101 <a title="Binary Release: iOS" href="../../www/binary-releases.html#iOS">iOS</a>
cristyda16f162011-02-19 23:52:17 +0000102</div>
103<div class="sub">
cristybb503372010-05-27 20:51:26 +0000104 <a title="Binary Release: Windows" href="../../www/binary-releases.html#windows">Windows</a>
105</div>
106<div class="sep"></div>
107<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000108 <a title="Command-line Tools" href="../../www/command-line-tools.html">Command-line Tools</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: Processing" href="../../www/command-line-processing.html">Processing</a>
cristy3ed852e2009-09-05 21:47:34 +0000112</div>
113<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000114 <a title="Command-line Tools: Options" href="../../www/command-line-options.html">Options</a>
cristy3ed852e2009-09-05 21:47:34 +0000115</div>
116<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000117 <a title="Command-line Tools: Usage" href="http://www.imagemagick.org/Usage/">Usage</a>
cristy3ed852e2009-09-05 21:47:34 +0000118</div>
119<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000120 <a title="Program Interfaces" href="../../www/api.html">Program Interfaces</a>
cristy3ed852e2009-09-05 21:47:34 +0000121</div>
122<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000123 <a title="Program Interface: MagickWand" href="../../www/magick-wand.html">MagickWand</a>
cristy3ed852e2009-09-05 21:47:34 +0000124</div>
125<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000126 <a title="Program Interface: MagickCore" href="../../www/magick-core.html">MagickCore</a>
cristy3ed852e2009-09-05 21:47:34 +0000127</div>
128<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000129 <a title="Program Interface: PerlMagick" href="../../www/perl-magick.html">PerlMagick</a>
cristy3ed852e2009-09-05 21:47:34 +0000130</div>
131<div class="sub">
cristydcca3fa2010-12-29 21:50:07 +0000132 <a title="Program Interface: Magick++" href="../../www/magick++.html">Magick++</a>
cristy3ed852e2009-09-05 21:47:34 +0000133</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000134<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000135<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000136 <a title="Install from Source" href="../../www/install-source.html">Install from Source</a>
cristy3ed852e2009-09-05 21:47:34 +0000137</div>
138<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000139 <a title="Install from Source: Unix" href="../../www/install-source.html#unix">Unix</a>
cristy3ed852e2009-09-05 21:47:34 +0000140</div>
141<div class="sub">
cristy83a272e2010-05-07 20:40:35 +0000142 <a title="Install from Source: Windows" href="../../www/install-source.html#windows">Windows</a>
cristy3ed852e2009-09-05 21:47:34 +0000143 </div>
144<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000145 <a title="Resources" href="../../www/resources.html">Resources</a>
cristy3ed852e2009-09-05 21:47:34 +0000146</div>
cristybb503372010-05-27 20:51:26 +0000147<div class="menu">
148 <a title="Architecture" href="../../www/architecture.html">Architecture</a>
149</div>
cristy3ed852e2009-09-05 21:47:34 +0000150<div class="menu">
cristy83a272e2010-05-07 20:40:35 +0000151 <a title="Download" href="../../www/download.html">Download</a>
cristy3ed852e2009-09-05 21:47:34 +0000152</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000153<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000154<div class="menu">
cristy52923442011-01-15 22:54:31 +0000155 <a title="Search" href="../../www/search.html">Search</a>
cristy3ed852e2009-09-05 21:47:34 +0000156</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000157<div class="sep"></div>
cristy3ed852e2009-09-05 21:47:34 +0000158<div class="menu">
cristyffb69ed2010-12-25 00:06:48 +0000159 <a title="Site Map" href="../../www/sitemap.html">Site Map</a>
cristy3ed852e2009-09-05 21:47:34 +0000160</div>
161<div class="sub">
cristyffb69ed2010-12-25 00:06:48 +0000162 <a title="Site Map: Links" href="../../www/links.html">Links</a>
cristy3ed852e2009-09-05 21:47:34 +0000163</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000164<div class="sep"></div>
cristyeed6cb62012-01-28 19:38:34 +0000165<div class="menu">
cristy10549a12011-05-15 19:04:46 +0000166 <a rel="follow" title="Sponsors" href="../../www/sponsors.html">Sponsors:</a>
cristy3ed852e2009-09-05 21:47:34 +0000167
cristyeed6cb62012-01-28 19:38:34 +0000168 <a href="http://www.networkredux.com"> <img src="../../images/networkredux.png" width="140" height="31" alt="[sponsor]" style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a>
169 <a href="http://www.dinodirect.com/ipads-tablets/"> <img src="../../images/dino-direct.jpg" width="140" height="90" alt="[sponsor]" style="margin-top: 4px; margin-left: 4px; border: 0px; float: left;" /></a><!-- 201204010120 mickey@163... -->
cristy3ed852e2009-09-05 21:47:34 +0000170<div class="sponsbox">
cristyeed6cb62012-01-28 19:38:34 +0000171<div class="sponsor">
172 <a rel="follow" title="Android Tablet" href="http://www.dinodirect.com/ipads-tablets/">Android Tablet</a><!-- 201204010120 mickey@163... -->
cristy81492d62011-06-07 16:41:42 +0000173</div>
cristyeed6cb62012-01-28 19:38:34 +0000174<div class="sponsor">
cristyaf894d72011-08-06 23:03:10 +0000175 <a rel="follow" title="Sponsor: Web Hosting" href="http://www.micfo.com">Web Hosting</a><!-- 209901010090s golestan -->
cristy1efc1ab2011-08-01 14:47:02 +0000176</div>
cristyeed6cb62012-01-28 19:38:34 +0000177<div class="sponsor">
178 <a rel="follow" title="Sponsor: Autos Part" href="http://www.pkwteile.de/autoteile">Autos Part</a><!-- 201203010270 info@pkwte... -->
cristy84134182011-06-15 22:59:00 +0000179</div>
cristyeed6cb62012-01-28 19:38:34 +0000180<div class="sponsor">
181 <a rel="follow" title="Sponsor: Web Site Hosting" href="http://webhostinggeeks.com">Web Site Hosting</a><!-- 201302010900 funds@enmob... -->
cristy81492d62011-06-07 16:41:42 +0000182</div>
cristyeed6cb62012-01-28 19:38:34 +0000183<div class="sponsor">
184 <a rel="follow" title="Sponsor: Tenant Check" href="http://www.rentmethod.com/">Tenant Check</a><!-- 201203010090 chris@rentm... -->
cristyba1758d2011-06-03 01:29:12 +0000185</div>
cristyeed6cb62012-01-28 19:38:34 +0000186<div class="sponsor">
187 <a rel="follow" title="Sponsor: VPS" href="http://www.interdominios.com/vps">VPS</a><!-- 201204010090 barsh@inter... -->
cristyaf894d72011-08-06 23:03:10 +0000188</div>
cristyeed6cb62012-01-28 19:38:34 +0000189<div class="sponsor">
190 <a rel="follow" title="Sponsor: Premium Quality Stock Photos" href="http://www.f1online.pro/en/">Premium Quality Stock Photos</a><!-- 2012080100540 ... -->
191</div>
192<div class="sponsor">
193 <a rel="follow" title="Sponsor: Search engine optimisation" href="http://www.seomoves.com.au">Search engine optimisation</a><!-- 201301010090s jen@seo lowprofilelinks -->
194</div>
195<div class="sponsor">
196 <a rel="follow" title="Sponsor: Druckerei" href="http://print24.com/de/">Druckerei</a><!-- 2012070100250 ... -->
197</div>
198<div class="sponsor">
199 <a rel="follow" title="Sponsor: Managed Server" href="http://www.robhost.de">Managed Server</a><!-- 201210010720 klikics... -->
200</div>
201<div class="sponsor">
202 <a rel="follow" title="Sponsor: Stock Photography" href="http://www.fotosearch.com/">Stock Photography</a><!-- 2012040100250 ... -->
203</div>
204<div class="sponsor">
205 <a rel="follow" title="Sponsor: Autoteile" href="http://www.q11-shop.de">Autoteile</a><!-- 201205010540 suvalj -->
206</div>
207<div class="sponsor">
208 <a rel="follow" title="Sponsor: Royalty Free Stock Images" href="http://www.canstockphoto.com/">Royalty Free Stock Images</a><!-- 2012050100360 support@can -->
209</div>
210<div class="sponsor">
cristyba1758d2011-06-03 01:29:12 +0000211 <a rel="follow" title="Sponsor: Web Hosting Reviews" href="http://www.webhostingsecretrevealed.com">Web Hosting Secret Revealed</a><!-- 201204010540 iamchee jerry -->
212</div>
cristyeed6cb62012-01-28 19:38:34 +0000213<div class="sponsor">
cristy10549a12011-05-15 19:04:46 +0000214 <a rel="follow" title="Sponsor: Druckerei" href="http://www.allesdruck.de">Druckerei</a><!-- 201303011500 r.leo -->
cristy4c54bbb2011-03-17 13:53:13 +0000215</div>
cristyeed6cb62012-01-28 19:38:34 +0000216<div class="sponsor">
217 <a rel="follow" title="Sponsor: Turbolader Online kaufen" href="http://www.autoteile-carparts.de">Turbolader Online kaufen</a><!-- 2012050100150 t.temurbas...-->
cristy4bf6e232011-05-21 01:43:33 +0000218</div>
cristyeed6cb62012-01-28 19:38:34 +0000219<div class="sponsor">
220 <a rel="follow" title="Sponsor: Schlüsseldienst Berlin BSD" href="http://www.schluesseldienst-berlin.de">Schlüsseldienst Berlin BSD</a><!-- 2012050100025 info@schlues-->
cristyec6b4752011-01-08 03:16:23 +0000221</div>
cristyb15553d2010-07-03 22:53:14 +0000222</div>
cristy3ed852e2009-09-05 21:47:34 +0000223</div>
cristyce69bb02010-07-27 19:49:46 +0000224</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000225
cristyce69bb02010-07-27 19:49:46 +0000226<div class="eastbar">
cristy29c5c992011-06-25 13:58:49 +0000227 <div class="g-plusone" data-size="standard" data-count="false"></div>
cristyeed6cb62012-01-28 19:38:34 +0000228 <script type="text/javascript">
229 window.___gcfg = {
230 lang: 'en-US'
231 };
232
233 (function() {
234 var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
235 po.src = 'https://apis.google.com/js/plusone.js';
236 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
237 })();
238 </script>
cristy29c5c992011-06-25 13:58:49 +0000239</div>
cristy3eaa0ef2010-03-06 20:35:26 +0000240
241<div class="main">
242
cristy20398432011-08-11 01:31:50 +0000243<h1>Module paint Methods</h1>
244<p class="navigation-index">[<a href="#FloodfillPaintImage">FloodfillPaintImage</a> &bull; <a href="#OilPaintImage">OilPaintImage</a> &bull; <a href="#OpaquePaintImage">OpaquePaintImage</a> &bull; <a href="#TransparentPaintImage">TransparentPaintImage</a> &bull; <a href="#TransparentPaintImageChroma">TransparentPaintImageChroma</a>]</p>
cristy3ed852e2009-09-05 21:47:34 +0000245
cristy20398432011-08-11 01:31:50 +0000246<h2><a href="http://www.imagemagick.org/api/MagickCore/paint_8c.html" id="FloodfillPaintImage">FloodfillPaintImage</a></h2>
247<div class="doc-section">
248
249<p>FloodfillPaintImage() 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>
250
251<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>
252
253<p>The format of the FloodfillPaintImage method is:</p>
254
255<pre class="code">
256 MagickBooleanType FloodfillPaintImage(Image *image,
257 const ChannelType channel,const DrawInfo *draw_info,
258 const MagickPixelPacket target,const ssize_t x_offset,
259 const ssize_t y_offset,const MagickBooleanType invert)
260</pre>
261
262<p>A description of each parameter follows:</p>
263
264<h5>image</h5>
265<p>the image.</p>
266
267<h5>channel</h5>
268<p>the channel(s).</p>
269
270<h5>draw_info</h5>
271<p>the draw info.</p>
272
273<h5>target</h5>
274<p>the RGB value of the target color.</p>
275
276<h5>x_offset,y_offset</h5>
277<p>the starting location of the operation.</p>
278
279<h5>invert</h5>
280<p>paint any pixel that does not match the target color.</p>
281
282 </div>
283<h2><a href="http://www.imagemagick.org/api/MagickCore/paint_8c.html" id="OilPaintImage">OilPaintImage</a></h2>
284<div class="doc-section">
285
286<p>OilPaintImage() applies a special effect filter that simulates an oil painting. Each pixel is replaced by the most frequent color occurring in a circular region defined by radius.</p>
287
288<p>The format of the OilPaintImage method is:</p>
289
290<pre class="code">
291 Image *OilPaintImage(const Image *image,const double radius,
292 ExceptionInfo *exception)
293</pre>
294
295<p>A description of each parameter follows:</p>
296
297<h5>image</h5>
298<p>the image.</p>
299
300<h5>radius</h5>
301<p>the radius of the circular neighborhood.</p>
302
303<h5>exception</h5>
304<p>return any errors or warnings in this structure.</p>
305
306 </div>
307<h2><a href="http://www.imagemagick.org/api/MagickCore/paint_8c.html" id="OpaquePaintImage">OpaquePaintImage</a></h2>
308<div class="doc-section">
309
310<p>OpaquePaintImage() changes any pixel that matches color with the color defined by fill.</p>
311
312<p>By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz 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.</p>
313
314<p>The format of the OpaquePaintImage method is:</p>
315
316<pre class="code">
317 MagickBooleanType OpaquePaintImage(Image *image,
318 const PixelPacket *target,const PixelPacket *fill,
319 const MagickBooleanType invert)
320 MagickBooleanType OpaquePaintImageChannel(Image *image,
321 const ChannelType channel,const PixelPacket *target,
322 const PixelPacket *fill,const MagickBooleanType invert)
323</pre>
324
325<p>A description of each parameter follows:</p>
326
327<h5>image</h5>
328<p>the image.</p>
329
330<h5>channel</h5>
331<p>the channel(s).</p>
332
333<h5>target</h5>
334<p>the RGB value of the target color.</p>
335
336<h5>fill</h5>
337<p>the replacement color.</p>
338
339<h5>invert</h5>
340<p>paint any pixel that does not match the target color.</p>
341
342 </div>
343<h2><a href="http://www.imagemagick.org/api/MagickCore/paint_8c.html" id="TransparentPaintImage">TransparentPaintImage</a></h2>
344<div class="doc-section">
345
346<p>TransparentPaintImage() changes the opacity value associated with any pixel that matches color to the value defined by opacity.</p>
347
348<p>By default color must match a particular pixel color exactly. However, in many cases two colors may differ by a small amount. Fuzz 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.</p>
349
350<p>The format of the TransparentPaintImage method is:</p>
351
352<pre class="code">
353 MagickBooleanType TransparentPaintImage(Image *image,
354 const MagickPixelPacket *target,const Quantum opacity,
355 const MagickBooleanType invert)
356</pre>
357
358<p>A description of each parameter follows:</p>
359
360<h5>image</h5>
361<p>the image.</p>
362
363<h5>target</h5>
364<p>the target color.</p>
365
366<h5>opacity</h5>
367<p>the replacement opacity value.</p>
368
369<h5>invert</h5>
370<p>paint any pixel that does not match the target color.</p>
371
372 </div>
373<h2><a href="http://www.imagemagick.org/api/MagickCore/paint_8c.html" id="TransparentPaintImageChroma">TransparentPaintImageChroma</a></h2>
374<div class="doc-section">
375
376<p>TransparentPaintImageChroma() changes the opacity value associated with any pixel that matches color to the value defined by opacity.</p>
377
378<p>As there is one fuzz value for the all the channels, the TransparentPaintImage() API is not suitable for the operations like chroma, where the tolerance for similarity of two color component (RGB) can be different, Thus we define this method take two target pixels (one low and one hight) and all the pixels of an image which are lying between these two pixels are made transparent.</p>
379
380<p>The format of the TransparentPaintImage method is:</p>
381
382<pre class="code">
383 MagickBooleanType TransparentPaintImage(Image *image,
384 const MagickPixelPacket *low,const MagickPixelPacket *hight,
385 const Quantum opacity,const MagickBooleanType invert)
386</pre>
387
388<p>A description of each parameter follows:</p>
389
390<h5>image</h5>
391<p>the image.</p>
392
393<h5>low</h5>
394<p>the low target color.</p>
395
396<h5>high</h5>
397<p>the high target color.</p>
398
399<h5>opacity</h5>
400<p>the replacement opacity value.</p>
401
402<h5>invert</h5>
403<p>paint any pixel that does not match the target color.</p>
404
405 </div>
cristy3eaa0ef2010-03-06 20:35:26 +0000406
407</div>
408
409<div id="linkbar">
cristyce69bb02010-07-27 19:49:46 +0000410 <span id="linkbar-west">&nbsp;</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000411 <span id="linkbar-center">
412 <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;
cristya8902942010-07-30 00:49:52 +0000413 <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>
cristy3eaa0ef2010-03-06 20:35:26 +0000414 </span>
415 <span id="linkbar-east">&nbsp;</span>
416 </div>
417 <div class="footer">
cristyeed6cb62012-01-28 19:38:34 +0000418 <span id="footer-west">&copy; 1999-2011 ImageMagick Studio LLC</span>
cristy3eaa0ef2010-03-06 20:35:26 +0000419 <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>
420 </div>
421 <div style="clear: both; margin: 0; width: 100%; "></div>
cristya8902942010-07-30 00:49:52 +0000422 <script type="text/javascript">
423 var _gaq = _gaq || [];
424 _gaq.push(['_setAccount', 'UA-17690367-1']);
425 _gaq.push(['_trackPageview']);
426
427 (function() {
428 var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
429 ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
430 var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
431 })();
432 </script>
cristy3eaa0ef2010-03-06 20:35:26 +0000433</body>
434</html>