]> granicus.if.org Git - imagemagick/blob - www/api/fx.html
(no commit message)
[imagemagick] / www / api / fx.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\r
2     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\r
3 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">\r
4 <head>\r
5   <meta http-equiv="content-type" content="text/html; charset=utf-8"/>\r
6   <meta name="verify-v1" content="g222frIIxcQTrvDR3NBRUSKP3AnMNoqxOkIniCEkV7U=" />\r
7   <link rel="meta" type="application/rdf+xml" title="ICI" href="http://imagemagick.org/ici.rdf" />\r
8   <style type="text/css" media="all">\r
9     @import url("../../www/magick.css");\r
10   </style>\r
11   <link rel="shortcut icon" href="../../images/wand.ico"  type="images/vnd.microsoft.icon"/>
12   <title>ImageMagick: MagickCore, C API for ImageMagick: Add a Special Effect</title>
13   <meta http-equiv="Content-Language" content="en-US"/>
14   <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
15   <meta http-equiv="Reply-to" content="magick-users@imagemagick.org"/>
16   <meta name="Generator" content="PHP"/>
17   <meta name="Keywords" content="magickcore, c, api, for, imagemagick:, add, a, special, effect, ImageMagick, ImageMagic, MagickCore, MagickWand, PerlMagick, Magick++, RMagick, PythonMagick, JMagick, TclMagick, Image, Magick, Magic, Wand, ImageMagickObject, Swiss, Army, Knife, Image, Processing"/>
18   <meta name="Description" content="ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (about 100) including GIF, JPEG, JPEG-2000, PNG, PDF, PhotoCD, TIFF, and DPX. Use ImageMagick to translate, flip, mirror, rotate, scale, shear and transform images, adjust image colors, apply various special effects, or draw text, lines, polygons, ellipses and Bézier curves.  ImageMagick is free software delivered as a ready-to-run binary distribution or as source code that you can freely use, copy, modify, and distribute. Its license is compatible with the GPL. It runs on all major operating systems.  The functionality of ImageMagick is typically utilized from the command line or you can use the features from programs written in your favorite programming language. Choose from these interfaces: MagickCore (C), MagickWand (C), ChMagick (Ch), Magick++ (C++), JMagick (Java), L-Magick (Lisp), PascalMagick (Pascal), PerlMagick (Perl), MagickWand for PHP (PHP), PythonMagick (Python), RMagick (Ruby), or TclMagick (Tcl/TK). With a language interface, use ImageMagick to modify or create images automagically and dynamically."/>
19   <meta name="Rating" content="GENERAL"/>
20   <meta name="Robots" content="INDEX, FOLLOW"/>
21   <meta name="Generator" content="ImageMagick Studio LLC"/>
22   <meta name="Author" content="ImageMagick Studio LLC"/>
23   <meta name="Revisit-after" content="2 DAYS"/>
24   <meta name="Resource-type" content="document"/>
25   <meta name="Copyright" content="Copyright (c) 1999-2010 ImageMagick Studio LLC"/>
26   <meta name="Distribution" content="Global"/>
27 </head>\r
28 \r
29 <body id="www-imagemagick-org">\r
30 <div class="titlebar">\r
31 <a href="../../index.html">\r
32   <img src="../../images/script.png" alt="[ImageMagick]"\r
33   style="width: 350px; height: 60px; margin: 28px auto; float: left;" /></a>\r
34 <a href="http://www.networkredux.com">\r
35   <img src="../../images/networkredux.png" alt="[sponsor]"\r
36   style="margin: 45px auto; border: 0px; float: left;" /></a>\r
37 <a href="http://www.imagemagick.org/discourse-server/">\r
38   <img src="../../images/logo.jpg" alt=""\r
39   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
40 <a href="../../index.html">\r
41   <img src="../../images/sprite.jpg" alt=""\r
42   style="width: 114px; height: 118px; border: 0px; float: right;" /></a>\r
43 </div>\r
44 \r
45 <div class="eastbar">\r
46 \r
47 <div class="menu">
48   <a href="../../index.html">About ImageMagick</a>
49 </div>
50 <div class="sep"></div>\r
51 <div class="menu">
52   <a href="../../www/command-line-tools.html">Command-line Tools</a>
53 </div>
54 <div class="sub">
55     <a href="../../www/command-line-processing.html">Processing</a>
56 </div>
57 <div class="sub">
58     <a href="../../www/command-line-options.html">Options</a>
59 </div>
60 <div class="sub">
61     <a href="http://www.imagemagick.org/Usage/">Usage</a>
62 </div>
63 <div class="menu">
64   <a href="../../www/api.html">Program Interfaces</a>
65 </div>
66 <div class="sub">
67     <a href="../../www/magick-wand.html">MagickWand</a>
68 </div>
69 <div class="sub">
70     <a href="../../www/magick-core.html">MagickCore</a>
71 </div>
72 <div class="sub">
73     <a href="../../www/perl-magick.html">PerlMagick</a>
74 </div>
75 <div class="sub">
76     <a href="../../Magick++/">Magick++</a>
77 </div>
78 <div class="menu">
79   <a href="../../www/architecture.html">Architecture</a>
80 </div>
81 <div class="sep"></div>\r
82 <div  class="menu">
83    <a href="../../www/install-source.html">Install from Source</a>
84 </div>
85 <div class="sub">
86     <a href="../../www/install-source.html#unix">Unix</a>
87 </div>
88 <div class="sub">
89     <a href="../../www/install-source.html#windows">Windows</a>
90  </div>
91 <div class="menu">
92   <a href="../../www/binary-releases.html">Binary Releases</a>
93 </div>
94 <div class="sub">
95     <a href="../../www/binary-releases.html#unix">Unix</a>
96 </div>
97 <div class="sub">
98     <a href="../../www/binary-releases.html#macosx">Mac OS X</a>
99 </div>
100 <div class="sub">
101     <a href="../../www/binary-releases.html#windows">Windows</a>
102 </div>
103 <div class="menu">
104   <a href="../../www/resources.html">Resources</a>
105 </div>
106 <div class="sep"></div>\r
107 <div class="menu">
108   <a href="../../www/download.html">Download</a>
109 </div>
110 <div class="sep"></div>\r
111 <div class="menu">
112   <a href="../http://www.imagemagick.org/script/search.php">Search</a>
113 </div>
114 <div class="sep"></div>\r
115 <div class="menu">
116   <a href="../../www/sitemap.html">Site Map</a>
117 </div>
118 <div  class="sub">
119     <a href="../../www/links.html">Links</a>
120 </div>
121 <div class="sep"></div>\r
122 <div  class="menu">
123   <a href="../../www/sponsors.html">Sponsors:</a>
124
125 <div class="sponsbox">
126 <div  class="sponsor">
127    <a href="http://www.renehornig.com/" title="Webdesign">Webdesign</a><!-- 20110101000120 -->
128 </div>
129 <div  class="sponsor">
130   <a href="http://www.deko.net">Deko.net</a><!-- 201101010600 Peterssen-->
131 </div>
132 <div  class="sponsor">
133   <a href="http://www.tomsgutscheine.de">Tom's Gutscheine</a><!-- 201005010360 invendio.de-->
134 </div>
135 <div  class="sponsor">
136   <a href="http://www.online-kredit-index.de">Kredit</a><!-- 201007010120 Buchhorn -->
137 </div>
138 <div  class="sponsor">
139   <a href="http://www.blumenversender.com">Blumenversand</a><!-- 201005010120 -->
140 </div>
141 <div  class="sponsor">
142   <a href="http://www.print24.de/">Druckerei</a><!-- 201009010720 -->
143 </div>
144 <div  class="sponsor">
145    <a href="http://www.allesdruck.de">Druckerei Online</a><!-- 201012011200 allesdruck.de-->
146 </div>
147 </div>
148 </div>
149 \r
150 \r
151 </div>\r
152 \r
153 <div class="main">\r
154 \r
155 <p class="navigation-index">[<a href="#AddNoiseImage">AddNoiseImage</a> &bull; <a href="#BlueShiftImage">BlueShiftImage</a> &bull; <a href="#CharcoalImage">CharcoalImage</a> &bull; <a href="#ColorizeImage">ColorizeImage</a> &bull; <a href="#ColorMatrixImage">ColorMatrixImage</a> &bull; <a href="#FxImage">FxImage</a> &bull; <a href="#ImplodeImage">ImplodeImage</a> &bull; <a href="#The MorphImages">The MorphImages</a> &bull; <a href="#PlasmaImage">PlasmaImage</a> &bull; <a href="#PolaroidImage">PolaroidImage</a> &bull; <a href="#MagickSepiaToneImage">MagickSepiaToneImage</a> &bull; <a href="#ShadowImage">ShadowImage</a> &bull; <a href="#SketchImage">SketchImage</a> &bull; <a href="#SolarizeImage">SolarizeImage</a> &bull; <a href="#SteganoImage">SteganoImage</a> &bull; <a href="#StereoAnaglyphImage">StereoAnaglyphImage</a> &bull; <a href="#SwirlImage">SwirlImage</a> &bull; <a href="#TintImage">TintImage</a> &bull; <a href="#VignetteImage">VignetteImage</a> &bull; <a href="#WaveImage">WaveImage</a>]</p>
156
157 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
158 _8c.html" target="source" name="AddNoiseImage">AddNoiseImage</a></h2>
159 <div class="doc-section">
160
161 <p>AddNoiseImage() adds random noise to the image.</p></ol>
162
163 <p>The format of the AddNoiseImage method is:</p>
164
165 <pre class="code">
166   Image *AddNoiseImage(const Image *image,const NoiseType noise_type,
167     ExceptionInfo *exception)
168   Image *AddNoiseImageChannel(const Image *image,const ChannelType channel,
169     const NoiseType noise_type,ExceptionInfo *exception)
170 </pre>
171
172 <p>A description of each parameter follows:</p></ol>
173
174 <h5>image</h5>
175 <ol><p>the image.</p></ol>
176
177 <h5>channel</h5>
178 <ol><p>the channel type.</p></ol>
179
180 <h5>noise_type</h5>
181 <ol><p>The type of noise: Uniform, Gaussian, Multiplicative, Impulse, Laplacian, or Poisson.</p></ol>
182
183 <h5>exception</h5>
184 <ol><p>return any errors or warnings in this structure.</p></ol>
185
186  </div>
187 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
188 _8c.html" target="source" name="BlueShiftImage">BlueShiftImage</a></h2>
189 <div class="doc-section">
190
191 <p>BlueShiftImage() mutes the colors of the image to simulate a scene at nighttime in the moonlight.</p></ol>
192
193 <p>The format of the BlueShiftImage method is:</p>
194
195 <pre class="code">
196   Image *BlueShiftImage(const Image *image,const double factor,
197     ExceptionInfo *exception)
198 </pre>
199
200 <p>A description of each parameter follows:</p></ol>
201
202 <h5>image</h5>
203 <ol><p>the image.</p></ol>
204
205 <h5>factor</h5>
206 <ol><p>the shift factor.</p></ol>
207
208 <h5>exception</h5>
209 <ol><p>return any errors or warnings in this structure.</p></ol>
210
211  </div>
212 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
213 _8c.html" target="source" name="CharcoalImage">CharcoalImage</a></h2>
214 <div class="doc-section">
215
216 <p>CharcoalImage() creates a new image that is a copy of an existing one with the edge highlighted.  It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p></ol>
217
218 <p>The format of the CharcoalImage method is:</p>
219
220 <pre class="code">
221   Image *CharcoalImage(const Image *image,const double radius,
222     const double sigma,ExceptionInfo *exception)
223 </pre>
224
225 <p>A description of each parameter follows:</p></ol>
226
227 <h5>image</h5>
228 <ol><p>the image.</p></ol>
229
230 <h5>radius</h5>
231 <ol><p>the radius of the pixel neighborhood.</p></ol>
232
233 <h5>sigma</h5>
234 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
235
236 <h5>exception</h5>
237 <ol><p>return any errors or warnings in this structure.</p></ol>
238
239  </div>
240 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
241 _8c.html" target="source" name="ColorizeImage">ColorizeImage</a></h2>
242 <div class="doc-section">
243
244 <p>ColorizeImage() blends the fill color with each pixel in the image. A percentage blend is specified with opacity.  Control the application of different color components by specifying a different percentage for each component (e.g. 90/100/10 is 90 red, 100 green, and 10 blue).</p></ol>
245
246 <p>The format of the ColorizeImage method is:</p>
247
248 <pre class="code">
249   Image *ColorizeImage(const Image *image,const char *opacity,
250     const PixelPacket colorize,ExceptionInfo *exception)
251 </pre>
252
253 <p>A description of each parameter follows:</p></ol>
254
255 <h5>image</h5>
256 <ol><p>the image.</p></ol>
257
258 <h5>opacity</h5>
259 <ol><p>A character string indicating the level of opacity as a percentage.</p></ol>
260
261 <h5>colorize</h5>
262 <ol><p>A color value.</p></ol>
263
264 <h5>exception</h5>
265 <ol><p>return any errors or warnings in this structure.</p></ol>
266
267  </div>
268 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
269 _8c.html" target="source" name="ColorMatrixImage">ColorMatrixImage</a></h2>
270 <div class="doc-section">
271
272 <p>ColorMatrixImage() applies color transformation to an image. This 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></ol>
273
274 <p>The format of the ColorMatrixImage method is:</p>
275
276 <pre class="code">
277   Image *ColorMatrixImage(const Image *image,
278     const KernelInfo *color_matrix,ExceptionInfo *exception)
279 </pre>
280
281 <p>A description of each parameter follows:</p></ol>
282
283 <h5>image</h5>
284 <ol><p>the image.</p></ol>
285
286 <h5>color_matrix</h5>
287 <ol><p>the color matrix.</p></ol>
288
289 <h5>exception</h5>
290 <ol><p>return any errors or warnings in this structure.</p></ol>
291
292  </div>
293 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
294 _8c.html" target="source" name="FxImage">FxImage</a></h2>
295 <div class="doc-section">
296
297 <p>FxImage() applies a mathematical expression to the specified image.</p></ol>
298
299 <p>The format of the FxImage method is:</p>
300
301 <pre class="code">
302   Image *FxImage(const Image *image,const char *expression,
303     ExceptionInfo *exception)
304   Image *FxImageChannel(const Image *image,const ChannelType channel,
305     const char *expression,ExceptionInfo *exception)
306 </pre>
307
308 <p>A description of each parameter follows:</p></ol>
309
310 <h5>image</h5>
311 <ol><p>the image.</p></ol>
312
313 <h5>channel</h5>
314 <ol><p>the channel.</p></ol>
315
316 <h5>expression</h5>
317 <ol><p>A mathematical expression.</p></ol>
318
319 <h5>exception</h5>
320 <ol><p>return any errors or warnings in this structure.</p></ol>
321
322  </div>
323 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
324 _8c.html" target="source" name="ImplodeImage">ImplodeImage</a></h2>
325 <div class="doc-section">
326
327 <p>ImplodeImage() creates a new image that is a copy of an existing one with the image pixels "implode" by the specified percentage.  It allocates the memory necessary for the new Image structure and returns a pointer to the new image.</p></ol>
328
329 <p>The format of the ImplodeImage method is:</p>
330
331 <pre class="code">
332   Image *ImplodeImage(const Image *image,const double amount,
333     ExceptionInfo *exception)
334 </pre>
335
336 <p>A description of each parameter follows:</p></ol>
337
338 <h5>implode_image</h5>
339 <ol><p>Method ImplodeImage returns a pointer to the image after it is implode.  A null image is returned if there is a memory shortage.</p></ol>
340
341 <h5>image</h5>
342 <ol><p>the image.</p></ol>
343
344 <h5>amount</h5>
345 <ol><p>Define the extent of the implosion.</p></ol>
346
347 <h5>exception</h5>
348 <ol><p>return any errors or warnings in this structure.</p></ol>
349
350  </div>
351 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
352 _8c.html" target="source" name="The MorphImages">The MorphImages</a></h2>
353 <div class="doc-section">
354
355 <p>The MorphImages() method requires a minimum of two images.  The first image is transformed into the second by a number of intervening images as specified by frames.</p></ol>
356
357 <p>The format of the MorphImage method is:</p>
358
359 <pre class="code">
360   Image *MorphImages(const Image *image,const unsigned long number_frames,
361     ExceptionInfo *exception)
362 </pre>
363
364 <p>A description of each parameter follows:</p></ol>
365
366 <h5>image</h5>
367 <ol><p>the image.</p></ol>
368
369 <h5>number_frames</h5>
370 <ol><p>Define the number of in-between image to generate. The more in-between frames, the smoother the morph.</p></ol>
371
372 <h5>exception</h5>
373 <ol><p>return any errors or warnings in this structure.</p></ol>
374
375  </div>
376 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
377 _8c.html" target="source" name="PlasmaImage">PlasmaImage</a></h2>
378 <div class="doc-section">
379
380 <p>PlasmaImage() initializes an image with plasma fractal values.  The image must be initialized with a base color and the random number generator seeded before this method is called.</p></ol>
381
382 <p>The format of the PlasmaImage method is:</p>
383
384 <pre class="code">
385   MagickBooleanType PlasmaImage(Image *image,const SegmentInfo *segment,
386     unsigned long attenuate,unsigned long depth)
387 </pre>
388
389 <p>A description of each parameter follows:</p></ol>
390
391 <h5>image</h5>
392 <ol><p>the image.</p></ol>
393
394 <h5>segment</h5>
395 <ol><p> Define the region to apply plasma fractals values.</p></ol>
396
397 <h5>attenuate</h5>
398 <ol><p>Define the plasmattenuation factor.</p></ol>
399
400 <h5>depth</h5>
401 <ol><p>Limit the plasma recursion depth.</p></ol>
402
403  </div>
404 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
405 _8c.html" target="source" name="PolaroidImage">PolaroidImage</a></h2>
406 <div class="doc-section">
407
408 <p>PolaroidImage() simulates a Polaroid picture.</p></ol>
409
410 <p>The format of the AnnotateImage method is:</p>
411
412 <pre class="code">
413   Image *PolaroidImage(const Image *image,const DrawInfo *draw_info,
414     const double angle,ExceptionInfo exception)
415 </pre>
416
417 <p>A description of each parameter follows:</p></ol>
418
419 <h5>image</h5>
420 <ol><p>the image.</p></ol>
421
422 <h5>draw_info</h5>
423 <ol><p>the draw info.</p></ol>
424
425 <h5>angle</h5>
426 <ol><p>Apply the effect along this angle.</p></ol>
427
428 <h5>exception</h5>
429 <ol><p>return any errors or warnings in this structure.</p></ol>
430
431  </div>
432 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
433 _8c.html" target="source" name="MagickSepiaToneImage">MagickSepiaToneImage</a></h2>
434 <div class="doc-section">
435
436 <p>MagickSepiaToneImage() applies a special effect to the image, similar to the effect achieved in a photo darkroom by sepia toning.  Threshold ranges from 0 to QuantumRange and is a measure of the extent of the sepia toning.  A threshold of 80 is a good starting point for a reasonable tone.</p></ol>
437
438 <p>The format of the SepiaToneImage method is:</p>
439
440 <pre class="code">
441   Image *SepiaToneImage(const Image *image,const double threshold,
442     ExceptionInfo *exception)
443 </pre>
444
445 <p>A description of each parameter follows:</p></ol>
446
447 <h5>image</h5>
448 <ol><p>the image.</p></ol>
449
450 <h5>threshold</h5>
451 <ol><p>the tone threshold.</p></ol>
452
453 <h5>exception</h5>
454 <ol><p>return any errors or warnings in this structure.</p></ol>
455
456  </div>
457 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
458 _8c.html" target="source" name="ShadowImage">ShadowImage</a></h2>
459 <div class="doc-section">
460
461 <p>ShadowImage() simulates a shadow from the specified image and returns it.</p></ol>
462
463 <p>The format of the ShadowImage method is:</p>
464
465 <pre class="code">
466   Image *ShadowImage(const Image *image,const double opacity,
467     const double sigma,const long x_offset,const long y_offset,
468     ExceptionInfo *exception)
469 </pre>
470
471 <p>A description of each parameter follows:</p></ol>
472
473 <h5>image</h5>
474 <ol><p>the image.</p></ol>
475
476 <h5>opacity</h5>
477 <ol><p>percentage transparency.</p></ol>
478
479 <h5>sigma</h5>
480 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
481
482 <h5>x_offset</h5>
483 <ol><p>the shadow x-offset.</p></ol>
484
485 <h5>y_offset</h5>
486 <ol><p>the shadow y-offset.</p></ol>
487
488 <h5>exception</h5>
489 <ol><p>return any errors or warnings in this structure.</p></ol>
490
491  </div>
492 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
493 _8c.html" target="source" name="SketchImage">SketchImage</a></h2>
494 <div class="doc-section">
495
496 <p>SketchImage() simulates a pencil sketch.  We convolve the image with a Gaussian operator of the given radius and standard deviation (sigma).  For reasonable results, radius should be larger than sigma.  Use a radius of 0 and SketchImage() selects a suitable radius for you.  Angle gives the angle of the sketch.</p></ol>
497
498 <p>The format of the SketchImage method is:</p>
499
500 <pre class="code">
501       Image *SketchImage(const Image *image,const double radius,
502   const double sigma,const double angle,ExceptionInfo *exception)
503 </pre>
504
505 <p>A description of each parameter follows:</p></ol>
506
507 <h5>image</h5>
508 <ol><p>the image.</p></ol>
509
510 <h5>radius</h5>
511 <ol><p>the radius of the Gaussian, in pixels, not counting the center pixel.</p></ol>
512
513 <h5>sigma</h5>
514 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
515
516 <h5>angle</h5>
517 <ol><p>Apply the effect along this angle.</p></ol>
518
519 <h5>exception</h5>
520 <ol><p>return any errors or warnings in this structure.</p></ol>
521
522  </div>
523 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
524 _8c.html" target="source" name="SolarizeImage">SolarizeImage</a></h2>
525 <div class="doc-section">
526
527 <p>SolarizeImage() applies a special effect to the image, similar to the effect achieved in a photo darkroom by selectively exposing areas of photo sensitive paper to light.  Threshold ranges from 0 to QuantumRange and is a measure of the extent of the solarization.</p></ol>
528
529 <p>The format of the SolarizeImage method is:</p>
530
531 <pre class="code">
532   MagickBooleanType SolarizeImage(Image *image,const double threshold)
533 </pre>
534
535 <p>A description of each parameter follows:</p></ol>
536
537 <h5>image</h5>
538 <ol><p>the image.</p></ol>
539
540 <h5>threshold</h5>
541 <ol><p>Define the extent of the solarization.</p></ol>
542
543  </div>
544 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
545 _8c.html" target="source" name="SteganoImage">SteganoImage</a></h2>
546 <div class="doc-section">
547
548 <p>SteganoImage() hides a digital watermark within the image.  Recover the hidden watermark later to prove that the authenticity of an image. Offset defines the start position within the image to hide the watermark.</p></ol>
549
550 <p>The format of the SteganoImage method is:</p>
551
552 <pre class="code">
553   Image *SteganoImage(const Image *image,Image *watermark,
554     ExceptionInfo *exception)
555 </pre>
556
557 <p>A description of each parameter follows:</p></ol>
558
559 <h5>image</h5>
560 <ol><p>the image.</p></ol>
561
562 <h5>watermark</h5>
563 <ol><p>the watermark image.</p></ol>
564
565 <h5>exception</h5>
566 <ol><p>return any errors or warnings in this structure.</p></ol>
567
568  </div>
569 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
570 _8c.html" target="source" name="StereoAnaglyphImage">StereoAnaglyphImage</a></h2>
571 <div class="doc-section">
572
573 <p>StereoAnaglyphImage() combines two images and produces a single image that is the composite of a left and right image of a stereo pair.  Special red-green stereo glasses are required to view this effect.</p></ol>
574
575 <p>The format of the StereoAnaglyphImage method is:</p>
576
577 <pre class="code">
578   Image *StereoImage(const Image *left_image,const Image *right_image,
579     ExceptionInfo *exception)
580   Image *StereoAnaglyphImage(const Image *left_image,
581     const Image *right_image,const long x_offset,const long y_offset,
582     ExceptionInfo *exception)
583 </pre>
584
585 <p>A description of each parameter follows:</p></ol>
586
587 <h5>left_image</h5>
588 <ol><p>the left image.</p></ol>
589
590 <h5>right_image</h5>
591 <ol><p>the right image.</p></ol>
592
593 <h5>exception</h5>
594 <ol><p>return any errors or warnings in this structure.</p></ol>
595
596 <h5>x_offset</h5>
597 <ol><p>amount, in pixels, by which the left image is offset to the right of the right image.</p></ol>
598
599 <h5>y_offset</h5>
600 <ol><p>amount, in pixels, by which the left image is offset to the bottom of the right image.</p></ol>
601
602
603  </div>
604 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
605 _8c.html" target="source" name="SwirlImage">SwirlImage</a></h2>
606 <div class="doc-section">
607
608 <p>SwirlImage() swirls the pixels about the center of the image, where degrees indicates the sweep of the arc through which each pixel is moved. You get a more dramatic effect as the degrees move from 1 to 360.</p></ol>
609
610 <p>The format of the SwirlImage method is:</p>
611
612 <pre class="code">
613   Image *SwirlImage(const Image *image,double degrees,
614     ExceptionInfo *exception)
615 </pre>
616
617 <p>A description of each parameter follows:</p></ol>
618
619 <h5>image</h5>
620 <ol><p>the image.</p></ol>
621
622 <h5>degrees</h5>
623 <ol><p>Define the tightness of the swirling effect.</p></ol>
624
625 <h5>exception</h5>
626 <ol><p>return any errors or warnings in this structure.</p></ol>
627
628  </div>
629 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
630 _8c.html" target="source" name="TintImage">TintImage</a></h2>
631 <div class="doc-section">
632
633 <p>TintImage() applies a color vector to each pixel in the image.  The length of the vector is 0 for black and white and at its maximum for the midtones. The vector weighting function is f(x)=(1-(4.0*((x-0.5)*(x-0.5))))</p></ol>
634
635 <p>The format of the TintImage method is:</p>
636
637 <pre class="code">
638   Image *TintImage(const Image *image,const char *opacity,
639     const PixelPacket tint,ExceptionInfo *exception)
640 </pre>
641
642 <p>A description of each parameter follows:</p></ol>
643
644 <h5>image</h5>
645 <ol><p>the image.</p></ol>
646
647 <h5>opacity</h5>
648 <ol><p>A color value used for tinting.</p></ol>
649
650 <h5>tint</h5>
651 <ol><p>A color value used for tinting.</p></ol>
652
653 <h5>exception</h5>
654 <ol><p>return any errors or warnings in this structure.</p></ol>
655
656  </div>
657 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
658 _8c.html" target="source" name="VignetteImage">VignetteImage</a></h2>
659 <div class="doc-section">
660
661 <p>VignetteImage() softens the edges of the image in vignette style.</p></ol>
662
663 <p>The format of the VignetteImage method is:</p>
664
665 <pre class="code">
666   Image *VignetteImage(const Image *image,const double radius,
667     const double sigma,const long x,const long y,ExceptionInfo *exception)
668 </pre>
669
670 <p>A description of each parameter follows:</p></ol>
671
672 <h5>image</h5>
673 <ol><p>the image.</p></ol>
674
675 <h5>radius</h5>
676 <ol><p>the radius of the pixel neighborhood.</p></ol>
677
678 <h5>sigma</h5>
679 <ol><p>the standard deviation of the Gaussian, in pixels.</p></ol>
680
681 <h5>x, y</h5>
682 <ol><p>Define the x and y ellipse offset.</p></ol>
683
684 <h5>exception</h5>
685 <ol><p>return any errors or warnings in this structure.</p></ol>
686
687  </div>
688 <h2><a href="http://www.imagemagick.org/api/MagickCore/fx
689 _8c.html" target="source" name="WaveImage">WaveImage</a></h2>
690 <div class="doc-section">
691
692 <p>WaveImage() creates a "ripple" effect in the image by shifting the pixels vertically along a sine wave whose amplitude and wavelength is specified by the given parameters.</p></ol>
693
694 <p>The format of the WaveImage method is:</p>
695
696 <pre class="code">
697   Image *WaveImage(const Image *image,const double amplitude,
698     const double wave_length,ExceptionInfo *exception)
699 </pre>
700
701 <p>A description of each parameter follows:</p></ol>
702
703 <h5>image</h5>
704 <ol><p>the image.</p></ol>
705
706 <h5>amplitude, wave_length</h5>
707 <ol><p>Define the amplitude and wave length of the sine wave.</p></ol>
708
709 <h5>exception</h5>
710 <ol><p>return any errors or warnings in this structure.</p></ol>
711
712  </div>
713 \r
714 </div>\r
715 \r
716 <div id="linkbar">\r
717  <!--    <span id="linkbar-west">&nbsp;</span>  -->\r
718     <span id="linkbar-center">\r
719       <a href="http://www.imagemagick.org/discourse-server/">Discourse Server</a> &bull;\r
720     <a href="http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi">Studio</a>\r
721     </span>\r
722     <span id="linkbar-east">&nbsp;</span>\r
723   </div>\r
724   <div class="footer">\r
725     <span id="footer-west">&copy; 1999-2010 ImageMagick Studio LLC</span>\r
726     <span id="footer-east"> <a href="../http://www.imagemagick.org/script/contact.php">Contact the Wizards</a></span>\r
727   </div>\r
728   <div style="clear: both; margin: 0; width: 100%; "></div>\r
729 </body>\r
730 </html>\r