]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Fri, 9 Dec 2011 09:14:23 +0000 (09:14 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Fri, 9 Dec 2011 09:14:23 +0000 (09:14 +0000)
MagickCore/fx.c
MagickCore/fx.h
MagickCore/montage.c
MagickWand/magick-image.c
MagickWand/magick-image.h
MagickWand/mogrify.c
MagickWand/operation.c
PerlMagick/Magick.xs
coders/msl.c

index 64d0a5a0d42e89735b24bf48e84d49f54311f8ca..adebdcaefcfdb4409b488d8436c35070a9763fc6 100644 (file)
@@ -4209,8 +4209,8 @@ MagickExport Image *SepiaToneImage(const Image *image,const double threshold,
 %  The format of the ShadowImage method is:
 %
 %      Image *ShadowImage(const Image *image,const double opacity,
-%        const double sigma,const ssize_t x_offset,const ssize_t y_offset,
-%        ExceptionInfo *exception)
+%        const double sigma,const double bias,const ssize_t x_offset,
+%        const ssize_t y_offset,ExceptionInfo *exception)
 %
 %  A description of each parameter follows:
 %
@@ -4220,6 +4220,8 @@ MagickExport Image *SepiaToneImage(const Image *image,const double threshold,
 %
 %    o sigma: the standard deviation of the Gaussian, in pixels.
 %
+%    o bias: the bias.
+%
 %    o x_offset: the shadow x-offset.
 %
 %    o y_offset: the shadow y-offset.
@@ -4228,8 +4230,8 @@ MagickExport Image *SepiaToneImage(const Image *image,const double threshold,
 %
 */
 MagickExport Image *ShadowImage(const Image *image,const double opacity,
-  const double sigma,const ssize_t x_offset,const ssize_t y_offset,
-  ExceptionInfo *exception)
+  const double sigma,const double bias,const ssize_t x_offset,
+  const ssize_t y_offset,ExceptionInfo *exception)
 {
 #define ShadowImageTag  "Shadow/Image"
 
@@ -4272,7 +4274,7 @@ MagickExport Image *ShadowImage(const Image *image,const double opacity,
   */
   (void) SetImageBackgroundColor(border_image,exception);
   channel_mask=SetPixelChannelMask(border_image,AlphaChannel);
-  shadow_image=BlurImage(border_image,0.0,sigma,image->bias,exception);
+  shadow_image=BlurImage(border_image,0.0,sigma,bias,exception);
   (void) SetPixelChannelMapMask(border_image,channel_mask);
   border_image=DestroyImage(border_image);
   if (shadow_image == (Image *) NULL)
@@ -5315,7 +5317,7 @@ MagickExport Image *TintImage(const Image *image,const char *blend,
 %  The format of the VignetteImage method is:
 %
 %      Image *VignetteImage(const Image *image,const double radius,
-%        const double sigma,const ssize_t x,const ssize_t y,
+%        const double sigma,const double bias,const ssize_t x,const ssize_t y,
 %        ExceptionInfo *exception)
 %
 %  A description of each parameter follows:
@@ -5326,13 +5328,16 @@ MagickExport Image *TintImage(const Image *image,const char *blend,
 %
 %    o sigma: the standard deviation of the Gaussian, in pixels.
 %
+%    o bias: the bias.
+%
 %    o x, y:  Define the x and y ellipse offset.
 %
 %    o exception: return any errors or warnings in this structure.
 %
 */
 MagickExport Image *VignetteImage(const Image *image,const double radius,
-  const double sigma,const ssize_t x,const ssize_t y,ExceptionInfo *exception)
+  const double sigma,const double bias,const ssize_t x,const ssize_t y,
+  ExceptionInfo *exception)
 {
   char
     ellipse[MaxTextExtent];
@@ -5382,7 +5387,7 @@ MagickExport Image *VignetteImage(const Image *image,const double radius,
   draw_info->primitive=AcquireString(ellipse);
   (void) DrawImage(oval_image,draw_info,exception);
   draw_info=DestroyDrawInfo(draw_info);
-  blur_image=BlurImage(oval_image,radius,sigma,image->bias,exception);
+  blur_image=BlurImage(oval_image,radius,sigma,bias,exception);
   oval_image=DestroyImage(oval_image);
   if (blur_image == (Image *) NULL)
     {
index c96aa7cbe5e866303cd7773af7951294acb678a6..d3c93f1c5517ffebe24ce9052786c5b172afbcb9 100644 (file)
@@ -50,8 +50,8 @@ extern MagickExport Image
   *PolaroidImage(const Image *,const DrawInfo *,const double,
     const PixelInterpolateMethod,ExceptionInfo *),
   *SepiaToneImage(const Image *,const double,ExceptionInfo *),
-  *ShadowImage(const Image *,const double,const double,const ssize_t,
-    const ssize_t,ExceptionInfo *),
+  *ShadowImage(const Image *,const double,const double,const double,
+    const ssize_t,const ssize_t,ExceptionInfo *),
   *SketchImage(const Image *,const double,const double,const double,
     const double,ExceptionInfo *),
   *SteganoImage(const Image *,const Image *,ExceptionInfo *),
@@ -61,8 +61,8 @@ extern MagickExport Image
   *SwirlImage(const Image *,double,const PixelInterpolateMethod,
     ExceptionInfo *),
   *TintImage(const Image *,const char *,const PixelInfo *,ExceptionInfo *),
-  *VignetteImage(const Image *,const double,const double,const ssize_t,
-    const ssize_t,ExceptionInfo *),
+  *VignetteImage(const Image *,const double,const double,const double,
+    const ssize_t,const ssize_t,ExceptionInfo *),
   *WaveImage(const Image *,const double,const double,
     const PixelInterpolateMethod,ExceptionInfo *);
 
index 368595e0fc427ca7b03af1d01ba366eb635794fb..dc3a3f6f2198514e0aa9010020963e7183c1bfa8 100644 (file)
@@ -820,7 +820,7 @@ MagickExport Image *MontageImageList(const ImageInfo *image_info,
               */
               (void) QueryColorCompliance("#00000000",AllCompliance,
                 &image->background_color,exception);
-              shadow_image=ShadowImage(image,80.0,2.0,5,5,exception);
+              shadow_image=ShadowImage(image,80.0,2.0,0.0,5,5,exception);
               if (shadow_image != (Image *) NULL)
                 {
                   (void) CompositeImage(shadow_image,OverCompositeOp,image,0,0,
index cd35b00c7257810fa96dd87cb062b9553b9ab172..3d5630686fea183f3b62dcff796aea0b86d225a5 100644 (file)
@@ -10203,7 +10203,8 @@ WandExport MagickBooleanType MagickShadeImage(MagickWand *wand,
 %  The format of the MagickShadowImage method is:
 %
 %      MagickBooleanType MagickShadowImage(MagickWand *wand,
-%        const double alpha,const double sigma,const ssize_t x,const ssize_t y)
+%        const double alpha,const double sigma,const double bias,
+%        const ssize_t x,const ssize_t y)
 %
 %  A description of each parameter follows:
 %
@@ -10213,13 +10214,16 @@ WandExport MagickBooleanType MagickShadeImage(MagickWand *wand,
 %
 %    o sigma: the standard deviation of the Gaussian, in pixels.
 %
+%    o bias: the bias.
+%
 %    o x: the shadow x-offset.
 %
 %    o y: the shadow y-offset.
 %
 */
 WandExport MagickBooleanType MagickShadowImage(MagickWand *wand,
-  const double alpha,const double sigma,const ssize_t x,const ssize_t y)
+  const double alpha,const double sigma,const double bias,const ssize_t x,
+  const ssize_t y)
 {
   Image
     *shadow_image;
@@ -10230,7 +10234,7 @@ WandExport MagickBooleanType MagickShadowImage(MagickWand *wand,
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
   if (wand->images == (Image *) NULL)
     ThrowWandException(WandError,"ContainsNoImages",wand->name);
-  shadow_image=ShadowImage(wand->images,alpha,sigma,x,y,wand->exception);
+  shadow_image=ShadowImage(wand->images,alpha,sigma,bias,x,y,wand->exception);
   if (shadow_image == (Image *) NULL)
     return(MagickFalse);
   ReplaceImageInList(&wand->images,shadow_image);
@@ -11717,22 +11721,25 @@ WandExport MagickBooleanType MagickUnsharpMaskImage(MagickWand *wand,
 %  The format of the MagickVignetteImage method is:
 %
 %      MagickBooleanType MagickVignetteImage(MagickWand *wand,
-%        const double black_point,const double white_point,const ssize_t x,
-%        const ssize_t y)
+%        const double radius,const double sigma,const double bias,
+%        const ssize_t x,const ssize_t y)
 %
 %  A description of each parameter follows:
 %
 %    o wand: the magick wand.
 %
-%    o black_point: the black point.
+%    o radius: the radius.
 %
-%    o white_point: the white point.
+%    o sigma: the sigma.
+%
+%    o bias: the bias.
 %
 %    o x, y:  Define the x and y ellipse offset.
 %
 */
 WandExport MagickBooleanType MagickVignetteImage(MagickWand *wand,
-  const double black_point,const double white_point,const ssize_t x,const ssize_t y)
+  const double radius,const double sigma,const double bias,const ssize_t x,
+  const ssize_t y)
 {
   Image
     *vignette_image;
@@ -11743,7 +11750,7 @@ WandExport MagickBooleanType MagickVignetteImage(MagickWand *wand,
     (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name);
   if (wand->images == (Image *) NULL)
     ThrowWandException(WandError,"ContainsNoImages",wand->name);
-  vignette_image=VignetteImage(wand->images,black_point,white_point,x,y,
+  vignette_image=VignetteImage(wand->images,radius,sigma,bias,x,y,
     wand->exception);
   if (vignette_image == (Image *) NULL)
     return(MagickFalse);
index 3a4b5eff205a35f07b3e04d61ab3600611eeb2a8..5f12b6f69bc288b876223f7ea0d9c54abda08018 100644 (file)
@@ -274,8 +274,8 @@ extern WandExport MagickBooleanType
   MagickSetImageWhitePoint(MagickWand *,const double,const double),
   MagickShadeImage(MagickWand *,const MagickBooleanType,const double,
     const double),
-  MagickShadowImage(MagickWand *,const double,const double,const ssize_t,
-    const ssize_t),
+  MagickShadowImage(MagickWand *,const double,const double,const double,
+    const ssize_t,const ssize_t),
   MagickSharpenImage(MagickWand *,const double,const double,const double),
   MagickShaveImage(MagickWand *,const size_t,const size_t),
   MagickShearImage(MagickWand *,const PixelWand *,const double,const double),
@@ -304,8 +304,8 @@ extern WandExport MagickBooleanType
   MagickUniqueImageColors(MagickWand *),
   MagickUnsharpMaskImage(MagickWand *,const double,const double,const double,
     const double),
-  MagickVignetteImage(MagickWand *,const double,const double,const ssize_t,
-    const ssize_t),
+  MagickVignetteImage(MagickWand *,const double,const double,const double,
+    const ssize_t,const ssize_t),
   MagickWaveImage(MagickWand *,const double,const double,
     const PixelInterpolateMethod),
   MagickWhiteThresholdImage(MagickWand *,const PixelWand *),
index 121bb49b8ab60b8434083b46331857d012725907..67694cad324ca4e3e10d82b571aba9c38cff10ab 100644 (file)
@@ -2706,8 +2706,9 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc,
             if ((flags & PsiValue) == 0)
               geometry_info.psi=4.0;
             mogrify_image=ShadowImage(*image,geometry_info.rho,
-              geometry_info.sigma,(ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
-              ceil(geometry_info.psi-0.5),exception);
+              geometry_info.sigma,(*image)->bias,(ssize_t)
+              ceil(geometry_info.xi-0.5),(ssize_t) ceil(geometry_info.psi-0.5),
+              exception);
             break;
           }
         if (LocaleCompare("sharpen",option+1) == 0)
@@ -3110,8 +3111,9 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc,
             if ((flags & PsiValue) == 0)
               geometry_info.psi=0.1*(*image)->rows;
             mogrify_image=VignetteImage(*image,geometry_info.rho,
-              geometry_info.sigma,(ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
-              ceil(geometry_info.psi-0.5),exception);
+              geometry_info.sigma,(*image)->bias,(ssize_t)
+              ceil(geometry_info.xi-0.5),(ssize_t) ceil(geometry_info.psi-0.5),
+              exception);
             break;
           }
         if (LocaleCompare("virtual-pixel",option+1) == 0)
index 8984b2016d026f4f73c174a92cb56dfda145401a..9b22742ff9089283733b5afcc080068ada932ff5 100644 (file)
@@ -3291,8 +3291,9 @@ WandExport MagickBooleanType ApplySettingsOption(MagickWand *wand,
           if ((flags & PsiValue) == 0)
             geometry_info.psi=4.0;
           new_image=ShadowImage(*image,geometry_info.rho,
-            geometry_info.sigma,(ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
-            ceil(geometry_info.psi-0.5),exception);
+            geometry_info.sigma,(*image)->bias,(ssize_t)
+            ceil(geometry_info.xi-0.5),(ssize_t) ceil(geometry_info.psi-0.5),
+            exception);
           break;
         }
       if (LocaleCompare("sharpen",option) == 0)
@@ -3563,8 +3564,9 @@ WandExport MagickBooleanType ApplySettingsOption(MagickWand *wand,
           if ((flags & PsiValue) == 0)
             geometry_info.psi=0.1*(*image)->rows;
           new_image=VignetteImage(*image,geometry_info.rho,
-            geometry_info.sigma,(ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
-            ceil(geometry_info.psi-0.5),exception);
+            geometry_info.sigma,(*image)->bias,(ssize_t)
+            ceil(geometry_info.xi-0.5),(ssize_t) ceil(geometry_info.psi-0.5),
+            exception);
           break;
         }
       if (LocaleCompare("virtual-pixel",option) == 0)
index 2dc94d6a1ce3263471a940188c3541d10de7bdf8..2295ab08b50d372de2acca416e49b0652f482ccb 100644 (file)
@@ -436,7 +436,7 @@ static struct
       {"background", StringReference}, {"gravity", MagickGravityOptions} } },
     { "Posterize", { {"levels", IntegerReference},
       {"dither", MagickBooleanOptions} } },
-    { "Shadow", { {"geometry", StringReference}, {"opacity", RealReference},
+    { "Shadow", { {"geometry", StringReference}, {"alpha", RealReference},
       {"sigma", RealReference}, {"x", IntegerReference},
       {"y", IntegerReference} } },
     { "Identify", { {"file", FileReference}, {"features", StringReference},
@@ -9830,9 +9830,9 @@ Mogrify(ref,...)
             geometry_info.xi=argument_list[3].integer_reference;
           if (attribute_flag[4] != 0)
             geometry_info.psi=argument_list[4].integer_reference;
-          image=ShadowImage(image,geometry_info.rho,geometry_info.sigma,
-            (ssize_t) ceil(geometry_info.xi-0.5),(ssize_t) ceil(geometry_info.psi-
-            0.5),exception);
+          image=ShadowImage(image,geometry_info.rho,geometry_info.sigma,0.0,
+            (ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
+            ceil(geometry_info.psi-0.5),exception);
           break;
         }
         case 90:  /* Identify */
@@ -9945,9 +9945,9 @@ Mogrify(ref,...)
           if (attribute_flag[5] != 0)
             (void) QueryColorCompliance(argument_list[5].string_reference,
               AllCompliance,&image->background_color,exception);
-          image=VignetteImage(image,geometry_info.rho,geometry_info.sigma,
-            (ssize_t) ceil(geometry_info.xi-0.5),(ssize_t) ceil(geometry_info.psi-
-            0.5),exception);
+          image=VignetteImage(image,geometry_info.rho,geometry_info.sigma,0.0,
+            (ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
+            ceil(geometry_info.psi-0.5),exception);
           break;
         }
         case 95:  /* ContrastStretch */
index 3e5f8fe2332e32dd5808a6a975d7a4eed0fd3757..7aafa3edaba3d30efa24839faebecdaf88c6eca6 100644 (file)
@@ -6366,8 +6366,8 @@ static void MSLStartElement(void *context,const xmlChar *tag,
               }
             }
           shadow_image=ShadowImage(msl_info->image[n],geometry_info.rho,
-            geometry_info.sigma,(ssize_t) ceil(geometry_info.xi-0.5),(ssize_t)
-            ceil(geometry_info.psi-0.5),msl_info->exception);
+            geometry_info.sigma,0.0,(ssize_t) ceil(geometry_info.xi-0.5),
+            (ssize_t) ceil(geometry_info.psi-0.5),msl_info->exception);
           if (shadow_image == (Image *) NULL)
             break;
           msl_info->image[n]=DestroyImage(msl_info->image[n]);