ConcatentateHexColorComponent(pixel,BluePixelChannel,tuple);
if (pixel->colorspace == CMYKColorspace)
ConcatentateHexColorComponent(pixel,BlackPixelChannel,tuple);
- if ((pixel->matte != MagickFalse) && (pixel->alpha != OpaqueAlpha))
+ if ((pixel->alpha_trait == BlendPixelTrait) &&
+ (pixel->alpha != OpaqueAlpha))
ConcatentateHexColorComponent(pixel,AlphaPixelChannel,tuple);
return;
}
if (color.colorspace-CMYKColorspace)
status&=fabs(color.black-SVGCompliant(color.black)) < MagickEpsilon ?
MagickTrue : MagickFalse;
- if (color.matte != MagickFalse)
+ if (color.alpha_trait == BlendPixelTrait)
status&=fabs(color.alpha-SVGCompliant(color.alpha)) < MagickEpsilon ?
MagickTrue : MagickFalse;
if (status != MagickFalse)
}
(void) ConcatenateMagickString(tuple,CommandOptionToMnemonic(
MagickColorspaceOptions,(ssize_t) color.colorspace),MaxTextExtent);
- if (color.matte != MagickFalse)
+ if (color.alpha_trait == BlendPixelTrait)
(void) ConcatenateMagickString(tuple,"a",MaxTextExtent);
(void) ConcatenateMagickString(tuple,"(",MaxTextExtent);
if (color.colorspace == GRAYColorspace)
(void) ConcatenateMagickString(tuple,",",MaxTextExtent);
ConcatenateColorComponent(&color,BlackPixelChannel,SVGCompliance,tuple);
}
- if (color.matte != MagickFalse)
+ if (color.alpha_trait == BlendPixelTrait)
{
(void) ConcatenateMagickString(tuple,",",MaxTextExtent);
ConcatenateColorComponent(&color,AlphaPixelChannel,SVGCompliance,tuple);
register double
distance;
- if (image->matte == MagickFalse)
+ if (image->alpha_trait != BlendPixelTrait)
return(MagickTrue);
if (p->alpha == q->alpha)
return(MagickTrue);
depth=4*(n/4);
}
color->colorspace=sRGBColorspace;
- color->matte=MagickFalse;
+ color->alpha_trait=UndefinedPixelTrait;
range=GetQuantumRange(depth);
color->red=(double) ScaleAnyToQuantum(pixel.red,range);
color->green=(double) ScaleAnyToQuantum(pixel.green,range);
color->alpha=(double) OpaqueAlpha;
if ((n % 3) != 0)
{
- color->matte=MagickTrue;
+ color->alpha_trait=BlendPixelTrait;
color->alpha=(double) ScaleAnyToQuantum(pixel.alpha,range);
}
color->black=0.0;
colorspace[i--]='\0';
scale=(double) ScaleCharToQuantum(1);
icc_color=MagickFalse;
+ if (LocaleNCompare(colorspace,"device-",7) == 0)
+ {
+ (void) CopyMagickString(colorspace,colorspace+7,MaxTextExtent);
+ scale=(double) QuantumRange;
+ icc_color=MagickTrue;
+ }
if (LocaleCompare(colorspace,"icc-color") == 0)
{
register ssize_t
icc_color=MagickTrue;
}
LocaleLower(colorspace);
- color->matte=MagickFalse;
+ color->alpha_trait=UndefinedPixelTrait;
if ((i > 0) && (colorspace[i] == 'a'))
{
colorspace[i]='\0';
- color->matte=MagickTrue;
+ color->alpha_trait=BlendPixelTrait;
}
type=ParseCommandOption(MagickColorspaceOptions,MagickFalse,colorspace);
if (type < 0)
color->black=(double) ClampToQuantum(scale*
geometry_info.psi);
else
- if (color->matte != MagickFalse)
+ if (color->alpha_trait == BlendPixelTrait)
color->alpha=(double) ClampToQuantum(QuantumRange*
geometry_info.psi);
}
- if (((flags & ChiValue) != 0) && (color->matte != MagickFalse))
+ if (((flags & ChiValue) != 0) &&
+ (color->alpha_trait == BlendPixelTrait))
color->alpha=(double) ClampToQuantum(QuantumRange*
geometry_info.chi);
if (LocaleCompare(colorspace,"gray") == 0)
color->colorspace=GRAYColorspace;
color->green=color->red;
color->blue=color->red;
- if (((flags & SigmaValue) != 0) && (color->matte != MagickFalse))
+ if (((flags & SigmaValue) != 0) &&
+ (color->alpha_trait == BlendPixelTrait))
color->alpha=(double) ClampToQuantum(QuantumRange*
geometry_info.sigma);
}
(LocaleCompare(colorspace,"HSL") == 0) ||
(LocaleCompare(colorspace,"HWB") == 0))
{
- PixelInfo
- pixel;
+ double
+ blue,
+ green,
+ red;
if (LocaleCompare(colorspace,"HCL") == 0)
color->colorspace=HCLColorspace;
geometry_info.xi*=scale;
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);
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,&red,
+ &green,&blue);
else
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);
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,&red,
+ &green,&blue);
else
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);
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,&red,
+ &green,&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);
+ 360.0)/360.0,geometry_info.sigma,geometry_info.xi,&red,
+ &green,&blue);
color->colorspace=sRGBColorspace;
- color->red=(double) pixel.red;
- color->green=(double) pixel.green;
- color->blue=(double) pixel.blue;
+ color->red=(MagickRealType) red;
+ color->green=(MagickRealType) green;
+ color->blue=(MagickRealType) blue;
}
}
return(MagickTrue);
if (p == (const ColorInfo *) NULL)
return(MagickFalse);
color->colorspace=sRGBColorspace;
- color->matte=p->color.alpha != OpaqueAlpha ? MagickTrue : MagickFalse;
+ color->alpha_trait=p->color.alpha != OpaqueAlpha ? BlendPixelTrait :
+ UndefinedPixelTrait;
color->red=(double) p->color.red;
color->green=(double) p->color.green;
color->blue=(double) p->color.blue;
pixel=(*color);
if (compliance == XPMCompliance)
{
- pixel.matte=MagickFalse;
+ pixel.alpha_trait=UndefinedPixelTrait;
pixel.depth=(size_t) MagickMin(1.0*image->depth,16.0);
}
GetColorTuple(&pixel,compliance != SVGCompliance ? MagickTrue : MagickFalse,
return(MagickFalse);
(void) GetColorInfo("*",exception);
ResetLinkedListIterator(color_list);
- opacity=image->matte != MagickFalse ? color->alpha : OpaqueAlpha;
+ opacity=image->alpha_trait == BlendPixelTrait ? color->alpha : OpaqueAlpha;
p=(const ColorInfo *) GetNextValueInLinkedList(color_list);
while (p != (const ColorInfo *) NULL)
{