char
text[MaxTextExtent];
- MagickRealType
+ double
color;
color=0.0;
(void) ConcatenateMagickString(tuple,text,MaxTextExtent);
return;
}
- if ((pixel->colorspace == HSLColorspace) ||
- (pixel->colorspace == HSBColorspace))
+ if ((pixel->colorspace == HCLColorspace) ||
+ (pixel->colorspace == HSBColorspace) ||
+ (pixel->colorspace == HSLColorspace) ||
+ (pixel->colorspace == HWBColorspace))
{
(void) FormatLocaleString(text,MaxTextExtent,"%g%%",(double)
(100.0*QuantumScale*color));
char
component[MaxTextExtent];
- MagickRealType
+ double
color;
color=0.0;
color=(*pixel);
if (color.depth > 8)
{
-#define SVGCompliant(component) ((MagickRealType) \
+#define SVGCompliant(component) ((double) \
ScaleCharToQuantum(ScaleQuantumToChar(ClampToQuantum(component))))
MagickStatusType
MagickExport MagickBooleanType IsEquivalentAlpha(const Image *image,
const PixelInfo *p,const PixelInfo *q)
{
- MagickRealType
+ double
fuzz,
pixel;
- register MagickRealType
+ register double
distance;
if (image->matte == MagickFalse)
if (p->alpha == q->alpha)
return(MagickTrue);
fuzz=MagickMax(image->fuzz,MagickSQ1_2)*MagickMax(image->fuzz,MagickSQ1_2);
- pixel=(MagickRealType) p->alpha-(MagickRealType) q->alpha;
+ pixel=(double) p->alpha-(double) q->alpha;
distance=pixel*pixel;
if (distance > fuzz)
return(MagickFalse);
color_info->path=(char *) "[built-in]";
color_info->name=(char *) p->name;
GetPixelInfo((Image *) NULL,&color_info->color);
- color_info->color.red=(MagickRealType) ScaleCharToQuantum(p->red);
- color_info->color.green=(MagickRealType) ScaleCharToQuantum(p->green);
- color_info->color.blue=(MagickRealType) ScaleCharToQuantum(p->blue);
- color_info->color.alpha=(MagickRealType) (QuantumRange*p->alpha);
+ color_info->color.red=(double) ScaleCharToQuantum(p->red);
+ color_info->color.green=(double) ScaleCharToQuantum(p->green);
+ color_info->color.blue=(double) ScaleCharToQuantum(p->blue);
+ color_info->color.alpha=(double) (QuantumRange*p->alpha);
color_info->compliance=(ComplianceType) p->compliance;
color_info->exempt=MagickTrue;
color_info->signature=MagickSignature;
GeometryInfo
geometry_info;
- MagickRealType
+ double
scale;
MagickStatusType
color->colorspace=sRGBColorspace;
color->matte=MagickFalse;
range=GetQuantumRange(depth);
- color->red=(MagickRealType) ScaleAnyToQuantum(pixel.red,range);
- color->green=(MagickRealType) ScaleAnyToQuantum(pixel.green,range);
- color->blue=(MagickRealType) ScaleAnyToQuantum(pixel.blue,range);
- color->alpha=(MagickRealType) OpaqueAlpha;
+ color->red=(double) ScaleAnyToQuantum(pixel.red,range);
+ color->green=(double) ScaleAnyToQuantum(pixel.green,range);
+ color->blue=(double) ScaleAnyToQuantum(pixel.blue,range);
+ color->alpha=(double) OpaqueAlpha;
if ((n % 3) != 0)
{
color->matte=MagickTrue;
- color->alpha=(MagickRealType) ScaleAnyToQuantum(pixel.alpha,range);
+ color->alpha=(double) ScaleAnyToQuantum(pixel.alpha,range);
}
color->black=0.0;
return(MagickTrue);
if (colorspace[i] == '(')
break;
colorspace[i--]='\0';
- scale=(MagickRealType) ScaleCharToQuantum(1);
+ scale=(double) ScaleCharToQuantum(1);
icc_color=MagickFalse;
if (LocaleCompare(colorspace,"icc-color") == 0)
{
break;
colorspace[j--]='\0';
i+=j+3;
- scale=(MagickRealType) QuantumRange;
+ scale=(double) QuantumRange;
icc_color=MagickTrue;
}
LocaleLower(colorspace);
char
*colorname;
+ ColorspaceType
+ colorspace;
+
+ colorspace=color->colorspace;
colorname=AcquireString(name+i+1);
(void) SubstituteString(&colorname,")","");
(void) QueryColorCompliance(colorname,AllCompliance,color,exception);
colorname=DestroyString(colorname);
+ color->colorspace=colorspace;
}
else
{
if ((flags & PercentValue) != 0)
- scale=(MagickRealType) (QuantumRange/100.0);
+ scale=(double) (QuantumRange/100.0);
if ((flags & RhoValue) != 0)
- color->red=(MagickRealType) ClampToQuantum(scale*geometry_info.rho);
+ color->red=(double) ClampToQuantum(scale*geometry_info.rho);
if ((flags & SigmaValue) != 0)
- color->green=(MagickRealType) ClampToQuantum(scale*
+ color->green=(double) ClampToQuantum(scale*
geometry_info.sigma);
if ((flags & XiValue) != 0)
- color->blue=(MagickRealType) ClampToQuantum(scale*geometry_info.xi);
- color->alpha=(MagickRealType) OpaqueAlpha;
+ color->blue=(double) ClampToQuantum(scale*geometry_info.xi);
+ color->alpha=(double) OpaqueAlpha;
if ((flags & PsiValue) != 0)
{
if (color->colorspace == CMYKColorspace)
- color->black=(MagickRealType) ClampToQuantum(scale*
+ color->black=(double) ClampToQuantum(scale*
geometry_info.psi);
else
if (color->matte != MagickFalse)
- color->alpha=(MagickRealType) ClampToQuantum(QuantumRange*
+ color->alpha=(double) ClampToQuantum(QuantumRange*
geometry_info.psi);
}
if (((flags & ChiValue) != 0) && (color->matte != MagickFalse))
- color->alpha=(MagickRealType) ClampToQuantum(QuantumRange*
+ color->alpha=(double) ClampToQuantum(QuantumRange*
geometry_info.chi);
if (LocaleCompare(colorspace,"gray") == 0)
{
color->green=color->red;
color->blue=color->red;
if (((flags & SigmaValue) != 0) && (color->matte != MagickFalse))
- color->alpha=(MagickRealType) ClampToQuantum(QuantumRange*
+ color->alpha=(double) ClampToQuantum(QuantumRange*
geometry_info.sigma);
}
- if ((LocaleCompare(colorspace,"HSB") == 0) ||
+ if ((LocaleCompare(colorspace,"HCL") == 0) ||
+ (LocaleCompare(colorspace,"HSB") == 0) ||
(LocaleCompare(colorspace,"HSL") == 0) ||
(LocaleCompare(colorspace,"HWB") == 0))
{
PixelInfo
pixel;
- if (LocaleCompare(colorspace,"HSB") == 0)
- color->colorspace=HSBColorspace;
- if (LocaleCompare(colorspace,"HSL") == 0)
- color->colorspace=HSLColorspace;
- if (LocaleCompare(colorspace,"HWB") == 0)
- color->colorspace=HWBColorspace;
+ if (LocaleCompare(colorspace,"HCL") == 0)
+ color->colorspace=HCLColorspace;
+ else
+ if (LocaleCompare(colorspace,"HSB") == 0)
+ color->colorspace=HSBColorspace;
+ else
+ if (LocaleCompare(colorspace,"HSL") == 0)
+ color->colorspace=HSLColorspace;
+ else
+ if (LocaleCompare(colorspace,"HWB") == 0)
+ color->colorspace=HWBColorspace;
scale=1.0/360.0;
if ((flags & PercentValue) != 0)
scale=1.0/100.0;
scale=1.0/100.0;
geometry_info.sigma*=scale;
geometry_info.xi*=scale;
- if (LocaleCompare(colorspace,"HSB") == 0)
- ConvertHSBToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,360.0)/
- 360.0,geometry_info.sigma,geometry_info.xi,&pixel.red,
+ if (LocaleCompare(colorspace,"HCL") == 0)
+ ConvertHCLToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,&pixel.red,
&pixel.green,&pixel.blue);
else
- if (LocaleCompare(colorspace,"HSL") == 0)
- ConvertHSLToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,
+ if (LocaleCompare(colorspace,"HSB") == 0)
+ ConvertHSBToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,
360.0)/360.0,geometry_info.sigma,geometry_info.xi,
&pixel.red,&pixel.green,&pixel.blue);
else
- ConvertHWBToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,
- 360.0)/360.0,geometry_info.sigma,geometry_info.xi,
- &pixel.red,&pixel.green,&pixel.blue);
+ if (LocaleCompare(colorspace,"HSL") == 0)
+ ConvertHSLToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,
+ &pixel.red,&pixel.green,&pixel.blue);
+ else
+ ConvertHWBToRGB(fmod(fmod(geometry_info.rho,360.0)+360.0,
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,
+ &pixel.red,&pixel.green,&pixel.blue);
color->colorspace=sRGBColorspace;
- color->red=(MagickRealType) pixel.red;
- color->green=(MagickRealType) pixel.green;
- color->blue=(MagickRealType) pixel.blue;
+ color->red=(double) pixel.red;
+ color->green=(double) pixel.green;
+ color->blue=(double) pixel.blue;
}
}
return(MagickTrue);
return(MagickFalse);
color->colorspace=sRGBColorspace;
color->matte=p->color.alpha != OpaqueAlpha ? MagickTrue : MagickFalse;
- color->red=(MagickRealType) p->color.red;
- color->green=(MagickRealType) p->color.green;
- color->blue=(MagickRealType) p->color.blue;
- color->alpha=(MagickRealType) p->color.alpha;
+ color->red=(double) p->color.red;
+ color->green=(double) p->color.green;
+ color->blue=(double) p->color.blue;
+ color->alpha=(double) p->color.alpha;
color->black=0.0;
return(MagickTrue);
}
PixelInfo
pixel;
- MagickRealType
+ double
opacity;
register const ColorInfo