]> granicus.if.org Git - imagemagick/commitdiff
(no commit message)
authorcristy <urban-warrior@git.imagemagick.org>
Tue, 7 Dec 2010 14:12:32 +0000 (14:12 +0000)
committercristy <urban-warrior@git.imagemagick.org>
Tue, 7 Dec 2010 14:12:32 +0000 (14:12 +0000)
config/configure.xml
magick/color.c
magick/version.h

index ae536263e27221ed58f32f816614d386d6784d20..9bfb915057c98b6f5d78e5b08b5988e2ce9017c9 100644 (file)
@@ -9,7 +9,7 @@
   <configure name="NAME" value="ImageMagick"/>
   <configure name="LIB_VERSION" value="0x666"/>
   <configure name="LIB_VERSION_NUMBER" value="6,6,6,4"/>
-  <configure name="RELEASE_DATE" value="2010-12-04"/>
+  <configure name="RELEASE_DATE" value="2010-12-07"/>
   <configure name="CONFIGURE" value="./configure "/>
   <configure name="PREFIX" value="/usr/local"/>
   <configure name="EXEC-PREFIX" value="/usr/local"/>
index d28798949d10c81344402d17f30dfed8cf42cff4..b21d3d1dcd29dbd89038b95ca8f90e5533857e14 100644 (file)
@@ -1568,6 +1568,19 @@ MagickExport MagickBooleanType IsColorSimilar(const Image *image,
       alpha=(MagickRealType) (QuantumScale*(GetAlphaPixelComponent(p)));
       beta=(MagickRealType) (QuantumScale*GetAlphaPixelComponent(q));
     }
+  if ((image->colorspace == HSLColorspace) ||
+      (image->colorspace == HSBColorspace) ||
+      (image->colorspace == HWBColorspace))
+    {
+      if (fabs((double) (p->red-q->red)) > (QuantumRange/2))
+        {
+          if (p->red > (QuantumRange/2))
+            pixel=alpha*(p->red-QuantumRange)-beta*q->red;
+          else
+            pixel=alpha*p->red-beta*(q->red-QuantumRange);
+        }
+        pixel*=2;
+     }
   pixel=alpha*p->red-beta*q->red;
   distance=pixel*pixel;
   if (distance > fuzz)
@@ -1578,6 +1591,12 @@ MagickExport MagickBooleanType IsColorSimilar(const Image *image,
     return(MagickFalse);
   pixel=alpha*p->blue-beta*q->blue;
   distance+=pixel*pixel;
+  if (distance > fuzz)
+    return(MagickFalse);
+  pixel=(MagickRealType) OpaqueOpacity;
+  if (image->matte != MagickFalse)
+    pixel=(MagickRealType) p->opacity-q->opacity;
+  distance+=pixel*pixel;
   if (distance > fuzz)
     return(MagickFalse);
   return(MagickTrue);
@@ -1772,7 +1791,7 @@ MagickExport MagickBooleanType IsMagickColorSimilar(const MagickPixelPacket *p,
   if ((p->colorspace == HSLColorspace) || (p->colorspace == HSBColorspace) ||
       (p->colorspace == HWBColorspace))
     {
-      if (fabs(p->red-q->red) > (QuantumRange/2))
+      if (fabs((double) (p->red-q->red)) > (QuantumRange/2))
         {
           if (p->red > (QuantumRange/2))
             pixel=alpha*(p->red-QuantumRange)-beta*q->red;
index 8c78184eb23f123d6f0736e5a171c6c86daede5b..b80744a63fa6fb918240a2898333fd26053fe3fc 100644 (file)
@@ -29,12 +29,12 @@ extern "C" {
 #define MagickCopyright  "Copyright (C) 1999-2011 ImageMagick Studio LLC"
 #define MagickLibVersion  0x666
 #define MagickLibVersionText  "6.6.6"
-#define MagickLibVersionNumber  4,0,0
+#define MagickLibVersionNumber  4,0,1
 #define MagickLibAddendum  "-4"
 #define MagickLibInterface  4
 #define MagickLibMinInterface  4
-#define MagickReleaseDate  "2010-12-04"
-#define MagickChangeDate   "20101203"
+#define MagickReleaseDate  "2010-12-07"
+#define MagickChangeDate   "20101206"
 #define MagickAuthoritativeURL  "http://www.imagemagick.org"
 #if defined(MAGICKCORE_OPENMP_SUPPORT)
 #define MagickOpenMPFeature  "OpenMP "