From 7d6d3d842e19316bdf35c69a032cd77a40f476aa Mon Sep 17 00:00:00 2001 From: cristy Date: Sun, 9 Nov 2014 17:00:16 +0000 Subject: [PATCH] --- MagickCore/accelerate.c | 22 +++++----- MagickCore/annotate.c | 6 +-- MagickCore/attribute.c | 24 +++++------ MagickCore/cache.c | 6 +-- MagickCore/channel.c | 8 ++-- MagickCore/color.c | 18 ++++---- MagickCore/colorspace.c | 2 +- MagickCore/composite.c | 12 +++--- MagickCore/decorate.c | 8 ++-- MagickCore/display.c | 6 +-- MagickCore/distort.c | 24 +++++------ MagickCore/draw.c | 6 +-- MagickCore/enhance.c | 10 ++--- MagickCore/feature.c | 72 ++++++++++++++++---------------- MagickCore/fourier.c | 4 +- MagickCore/fx.c | 12 +++--- MagickCore/histogram.c | 10 ++--- MagickCore/identify.c | 16 +++---- MagickCore/image.c | 4 +- MagickCore/layer.c | 12 +++--- MagickCore/paint.c | 8 ++-- MagickCore/pixel-accessor.h | 16 +++---- MagickCore/pixel.c | 26 ++++++------ MagickCore/profile.c | 6 +-- MagickCore/property.c | 4 +- MagickCore/quantize.c | 10 ++--- MagickCore/quantum.c | 8 ++-- MagickCore/resample.c | 4 +- MagickCore/resize.c | 4 +- MagickCore/shear.c | 6 +-- MagickCore/transform.c | 4 +- MagickCore/xwindow.c | 12 +++--- MagickWand/compare.c | 12 +++--- MagickWand/magick-image.c | 2 +- MagickWand/mogrify.c | 12 +++--- MagickWand/operation.c | 8 ++-- MagickWand/pixel-wand.c | 2 +- PerlMagick/Magick.xs | 20 ++++----- PerlMagick/quantum/quantum.xs.in | 20 ++++----- coders/aai.c | 2 +- coders/bgr.c | 10 ++--- coders/bmp.c | 18 ++++---- coders/cmyk.c | 10 ++--- coders/dds.c | 10 ++--- coders/debug.c | 4 +- coders/dib.c | 4 +- coders/dpx.c | 14 +++---- coders/exr.c | 2 +- coders/fpx.c | 6 +-- coders/gradient.c | 4 +- coders/icon.c | 4 +- coders/jp2.c | 2 +- coders/json.c | 16 +++---- coders/matte.c | 2 +- coders/miff.c | 38 ++++++++--------- coders/pcx.c | 4 +- coders/pdf.c | 8 ++-- coders/pict.c | 12 +++--- coders/png.c | 40 +++++++++--------- coders/pnm.c | 42 +++++++++---------- coders/ps.c | 6 +-- coders/ps2.c | 6 +-- coders/ps3.c | 8 ++-- coders/psd.c | 46 ++++++++++---------- coders/rgb.c | 10 ++--- coders/rle.c | 8 ++-- coders/sgi.c | 6 +-- coders/sixel.c | 2 +- coders/sun.c | 12 +++--- coders/tga.c | 12 +++--- coders/thumbnail.c | 2 +- coders/tiff.c | 24 +++++------ coders/tile.c | 2 +- coders/txt.c | 10 ++--- coders/uil.c | 2 +- coders/viff.c | 4 +- coders/vips.c | 6 +-- coders/webp.c | 2 +- coders/xpm.c | 6 +-- coders/ycbcr.c | 10 ++--- 80 files changed, 451 insertions(+), 451 deletions(-) diff --git a/MagickCore/accelerate.c b/MagickCore/accelerate.c index 83959405b..f952207d9 100644 --- a/MagickCore/accelerate.c +++ b/MagickCore/accelerate.c @@ -455,7 +455,7 @@ static Image *ComputeConvolveImage(const Image* image, filterHeight = (unsigned int) kernel->height; clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(unsigned int),(void *)&filterWidth); clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(unsigned int),(void *)&filterHeight); - matte = (image->alpha_trait==BlendPixelTrait)?1:0; + matte = (image->alpha_trait == UndefinedPixelTrait)?1:0; clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(unsigned int),(void *)&matte); clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(ChannelType),(void *)&channel); clStatus|=clEnv->library->clSetKernelArg(clkernel,i++, (localGroupSize[0] + kernel->width-1)*(localGroupSize[1] + kernel->height-1)*sizeof(CLPixelPacket),NULL); @@ -501,7 +501,7 @@ static Image *ComputeConvolveImage(const Image* image, filterHeight = (unsigned int) kernel->height; clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(unsigned int),(void *)&filterWidth); clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(unsigned int),(void *)&filterHeight); - matte = (image->alpha_trait==BlendPixelTrait)?1:0; + matte = (image->alpha_trait == UndefinedPixelTrait)?1:0; clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(unsigned int),(void *)&matte); clStatus|=clEnv->library->clSetKernelArg(clkernel,i++,sizeof(ChannelType),(void *)&channel); if (clStatus != CL_SUCCESS) @@ -1844,7 +1844,7 @@ static Image* ComputeRotationalBlurImage(const Image *image, clStatus|=clEnv->library->clSetKernelArg(rotationalBlurKernel,i++,sizeof(cl_float4), &biasPixel); clStatus|=clEnv->library->clSetKernelArg(rotationalBlurKernel,i++,sizeof(ChannelType), &channel); - matte = (image->alpha_trait==BlendPixelTrait)?1:0; + matte = (image->alpha_trait == UndefinedPixelTrait)?1:0; clStatus|=clEnv->library->clSetKernelArg(rotationalBlurKernel,i++,sizeof(unsigned int), &matte); clStatus=clEnv->library->clSetKernelArg(rotationalBlurKernel,i++,sizeof(cl_float2), &blurCenter); @@ -3660,14 +3660,14 @@ static Image *ComputeResizeImage(const Image* image, goto cleanup; } - status = resizeHorizontalFilter(imageBuffer, (unsigned int) image->columns, (unsigned int) image->rows, (image->alpha_trait==BlendPixelTrait)?1:0 + status = resizeHorizontalFilter(imageBuffer, (unsigned int) image->columns, (unsigned int) image->rows, (image->alpha_trait == UndefinedPixelTrait)?1:0 , tempImageBuffer, (unsigned int) resizedColumns, (unsigned int) image->rows , resizeFilter, cubicCoefficientsBuffer , xFactor, clEnv, queue, exception); if (status != MagickTrue) goto cleanup; - status = resizeVerticalFilter(tempImageBuffer, (unsigned int) resizedColumns, (unsigned int) image->rows, (image->alpha_trait==BlendPixelTrait)?1:0 + status = resizeVerticalFilter(tempImageBuffer, (unsigned int) resizedColumns, (unsigned int) image->rows, (image->alpha_trait == UndefinedPixelTrait)?1:0 , filteredImageBuffer, (unsigned int) resizedColumns, (unsigned int) resizedRows , resizeFilter, cubicCoefficientsBuffer , yFactor, clEnv, queue, exception); @@ -3684,14 +3684,14 @@ static Image *ComputeResizeImage(const Image* image, goto cleanup; } - status = resizeVerticalFilter(imageBuffer, (unsigned int) image->columns, (unsigned int) image->rows, (image->alpha_trait==BlendPixelTrait)?1:0 + status = resizeVerticalFilter(imageBuffer, (unsigned int) image->columns, (unsigned int) image->rows, (image->alpha_trait == UndefinedPixelTrait)?1:0 , tempImageBuffer, (unsigned int) image->columns, (unsigned int) resizedRows , resizeFilter, cubicCoefficientsBuffer , yFactor, clEnv, queue, exception); if (status != MagickTrue) goto cleanup; - status = resizeHorizontalFilter(tempImageBuffer, (unsigned int) image->columns, (unsigned int) resizedRows, (image->alpha_trait==BlendPixelTrait)?1:0 + status = resizeHorizontalFilter(tempImageBuffer, (unsigned int) image->columns, (unsigned int) resizedRows, (image->alpha_trait == UndefinedPixelTrait)?1:0 , filteredImageBuffer, (unsigned int) resizedColumns, (unsigned int) resizedRows , resizeFilter, cubicCoefficientsBuffer , xFactor, clEnv, queue, exception); @@ -5769,7 +5769,7 @@ static Image *ComputeDespeckleImage(const Image *image, clStatus |=clEnv->library->clSetKernelArg(hullPass1,2,sizeof(unsigned int),(void *)&imageWidth); imageHeight = (unsigned int) image->rows; clStatus |=clEnv->library->clSetKernelArg(hullPass1,3,sizeof(unsigned int),(void *)&imageHeight); - matte = (image->alpha_trait==BlendPixelTrait)?0:1; + matte = (image->alpha_trait == UndefinedPixelTrait)?0:1; clStatus |=clEnv->library->clSetKernelArg(hullPass1,6,sizeof(int),(void *)&matte); if (clStatus != CL_SUCCESS) { @@ -5783,7 +5783,7 @@ static Image *ComputeDespeckleImage(const Image *image, clStatus |=clEnv->library->clSetKernelArg(hullPass2,2,sizeof(unsigned int),(void *)&imageWidth); imageHeight = (unsigned int) image->rows; clStatus |=clEnv->library->clSetKernelArg(hullPass2,3,sizeof(unsigned int),(void *)&imageHeight); - matte = (image->alpha_trait==BlendPixelTrait)?0:1; + matte = (image->alpha_trait == UndefinedPixelTrait)?0:1; clStatus |=clEnv->library->clSetKernelArg(hullPass2,6,sizeof(int),(void *)&matte); if (clStatus != CL_SUCCESS) { @@ -6723,7 +6723,7 @@ static Image* ComputeMotionBlurImage(const Image *image, clStatus|=clEnv->library->clSetKernelArg(motionBlurKernel,i++,sizeof(cl_float4), &biasPixel); clStatus|=clEnv->library->clSetKernelArg(motionBlurKernel,i++,sizeof(ChannelType), &channel); - matte = (image->alpha_trait==BlendPixelTrait)?1:0; + matte = (image->alpha_trait == UndefinedPixelTrait)?1:0; clStatus|=clEnv->library->clSetKernelArg(motionBlurKernel,i++,sizeof(unsigned int), &matte); if (clStatus != CL_SUCCESS) { @@ -6991,7 +6991,7 @@ static MagickBooleanType ComputeCompositeImage(Image *image, status = LaunchCompositeKernel(clEnv,queue,imageBuffer, (unsigned int) image->columns, (unsigned int) image->rows, - (unsigned int) (image->alpha_trait==BlendPixelTrait) ? 1 : 0, + (unsigned int) (image->alpha_trait == UndefinedPixelTrait) ? 1 : 0, channel, compose, compositeImageBuffer, (unsigned int) compositeImage->columns, (unsigned int) compositeImage->rows, diff --git a/MagickCore/annotate.c b/MagickCore/annotate.c index c58101d26..1316c8cd1 100644 --- a/MagickCore/annotate.c +++ b/MagickCore/annotate.c @@ -1292,7 +1292,7 @@ static MagickBooleanType RenderFreetype(Image *image,const DrawInfo *draw_info, { if (image->storage_class != DirectClass) (void) SetImageStorageClass(image,DirectClass,exception); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); } direction=1.0; @@ -1819,9 +1819,9 @@ static MagickBooleanType RenderPostscript(Image *image, /* Render fill color. */ - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); - if (annotate_image->alpha_trait != BlendPixelTrait) + if (annotate_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(annotate_image,OpaqueAlphaChannel, exception); fill_color=draw_info->fill; diff --git a/MagickCore/attribute.c b/MagickCore/attribute.c index f443503b1..d8e536703 100644 --- a/MagickCore/attribute.c +++ b/MagickCore/attribute.c @@ -305,7 +305,7 @@ MagickExport size_t GetImageDepth(const Image *image,ExceptionInfo *exception) status=MagickTrue; for (i=0; i < (ssize_t) number_threads; i++) current_depth[i]=1; - if ((image->storage_class == PseudoClass) && (image->alpha_trait != BlendPixelTrait)) + if ((image->storage_class == PseudoClass) && (image->alpha_trait == UndefinedPixelTrait)) { #if defined(MAGICKCORE_OPENMP_SUPPORT) #pragma omp parallel for schedule(static,4) shared(status) \ @@ -604,7 +604,7 @@ MagickExport ImageType GetImageType(const Image *image,ExceptionInfo *exception) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); if (image->colorspace == CMYKColorspace) { - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) return(ColorSeparationType); return(ColorSeparationMatteType); } @@ -612,17 +612,17 @@ MagickExport ImageType GetImageType(const Image *image,ExceptionInfo *exception) return(BilevelType); if (IsImageGray(image,exception) != MagickFalse) { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) return(GrayscaleMatteType); return(GrayscaleType); } if (IsPaletteImage(image,exception) != MagickFalse) { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) return(PaletteMatteType); return(PaletteType); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) return(TrueColorMatteType); return(TrueColorType); } @@ -710,7 +710,7 @@ MagickExport MagickBooleanType IsImageGray(const Image *image, if (SyncImagePixelCache((Image *) image,exception) == MagickFalse) return(MagickFalse); ((Image *) image)->type=type; - if ((type == GrayscaleType) && (image->alpha_trait == BlendPixelTrait)) + if ((type == GrayscaleType) && (image->alpha_trait != UndefinedPixelTrait)) ((Image *) image)->type=GrayscaleMatteType; return(MagickTrue); } @@ -848,7 +848,7 @@ MagickExport MagickBooleanType IsImageOpaque(const Image *image, assert(image->signature == MagickSignature); if (image->debug != MagickFalse) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) return(MagickTrue); image_view=AcquireVirtualCacheView(image,exception); for (y=0; y < (ssize_t) image->rows; y++) @@ -1193,7 +1193,7 @@ MagickExport MagickBooleanType SetImageType(Image *image,const ImageType type, { if (IsImageGray(image,exception) == MagickFalse) status=TransformImageColorspace(image,GRAYColorspace,exception); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); break; } @@ -1218,7 +1218,7 @@ MagickExport MagickBooleanType SetImageType(Image *image,const ImageType type, if (IssRGBCompatibleColorspace(image->colorspace) == MagickFalse) status=TransformImageColorspace(image,sRGBColorspace,exception); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); channel_mask=SetImageChannelMask(image,AlphaChannel); (void) BilevelImage(image,(double) QuantumRange/2.0,exception); @@ -1232,7 +1232,7 @@ MagickExport MagickBooleanType SetImageType(Image *image,const ImageType type, { if (IssRGBCompatibleColorspace(image->colorspace) == MagickFalse) status=TransformImageColorspace(image,sRGBColorspace,exception); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); quantize_info=AcquireQuantizeInfo(image_info); quantize_info->colorspace=TransparentColorspace; @@ -1255,7 +1255,7 @@ MagickExport MagickBooleanType SetImageType(Image *image,const ImageType type, status=TransformImageColorspace(image,sRGBColorspace,exception); if (image->storage_class != DirectClass) status=SetImageStorageClass(image,DirectClass,exception); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); break; } @@ -1282,7 +1282,7 @@ MagickExport MagickBooleanType SetImageType(Image *image,const ImageType type, } if (image->storage_class != DirectClass) status=SetImageStorageClass(image,DirectClass,exception); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) status=SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); break; } diff --git a/MagickCore/cache.c b/MagickCore/cache.c index 317bc60ea..ce1cfbf7b 100644 --- a/MagickCore/cache.c +++ b/MagickCore/cache.c @@ -4771,8 +4771,8 @@ MagickPrivate VirtualPixelMethod SetPixelCacheVirtualMethod(Image *image, { case BackgroundVirtualPixelMethod: { - if ((image->background_color.alpha_trait == BlendPixelTrait) && - (image->alpha_trait != BlendPixelTrait)) + if ((image->background_color.alpha_trait != UndefinedPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait)) (void) SetCacheAlphaChannel(image,OpaqueAlpha,exception); if ((IsPixelInfoGray(&image->background_color) == MagickFalse) && (IsGrayColorspace(image->colorspace) != MagickFalse)) @@ -4781,7 +4781,7 @@ MagickPrivate VirtualPixelMethod SetPixelCacheVirtualMethod(Image *image, } case TransparentVirtualPixelMethod: { - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetCacheAlphaChannel(image,OpaqueAlpha,exception); break; } diff --git a/MagickCore/channel.c b/MagickCore/channel.c index 659b6c1ba..c312a1666 100644 --- a/MagickCore/channel.c +++ b/MagickCore/channel.c @@ -626,7 +626,7 @@ MagickExport MagickBooleanType GetImageAlphaChannel(const Image *image) if (image->debug != MagickFalse) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"..."); assert(image->signature == MagickSignature); - return(image->alpha_trait == BlendPixelTrait ? MagickTrue : MagickFalse); + return(image->alpha_trait != UndefinedPixelTrait ? MagickTrue : MagickFalse); } /* @@ -1017,7 +1017,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, /* Set transparent pixels to background color. */ - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) break; status=SetImageStorageClass(image,DirectClass,exception); if (status == MagickFalse) @@ -1164,7 +1164,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, /* Remove transparency. */ - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) break; status=SetImageStorageClass(image,DirectClass,exception); if (status == MagickFalse) @@ -1207,7 +1207,7 @@ MagickExport MagickBooleanType SetImageAlphaChannel(Image *image, } case SetAlphaChannel: { - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) status=SetImageAlpha(image,OpaqueAlpha,exception); break; } diff --git a/MagickCore/color.c b/MagickCore/color.c index 4412795ab..314633003 100644 --- a/MagickCore/color.c +++ b/MagickCore/color.c @@ -1522,7 +1522,7 @@ MagickExport void GetColorTuple(const PixelInfo *pixel, ConcatentateHexColorComponent(pixel,BluePixelChannel,tuple); if (pixel->colorspace == CMYKColorspace) ConcatentateHexColorComponent(pixel,BlackPixelChannel,tuple); - if ((pixel->alpha_trait == BlendPixelTrait) && + if ((pixel->alpha_trait != UndefinedPixelTrait) && (pixel->alpha != OpaqueAlpha)) ConcatentateHexColorComponent(pixel,AlphaPixelChannel,tuple); return; @@ -1551,7 +1551,7 @@ MagickExport void GetColorTuple(const PixelInfo *pixel, if (color.colorspace-CMYKColorspace) status&=IsMagickTrue(fabs(color.black-SVGCompliant(color.black)) < MagickEpsilon); - if (color.alpha_trait == BlendPixelTrait) + if (color.alpha_trait != UndefinedPixelTrait) status&=IsMagickTrue(fabs(color.alpha-SVGCompliant(color.alpha)) < MagickEpsilon); if (IfMagickTrue(status)) @@ -1559,7 +1559,7 @@ MagickExport void GetColorTuple(const PixelInfo *pixel, } (void) ConcatenateMagickString(tuple,CommandOptionToMnemonic( MagickColorspaceOptions,(ssize_t) color.colorspace),MaxTextExtent); - if (color.alpha_trait == BlendPixelTrait) + if (color.alpha_trait != UndefinedPixelTrait) (void) ConcatenateMagickString(tuple,"a",MaxTextExtent); (void) ConcatenateMagickString(tuple,"(",MaxTextExtent); if (color.colorspace == GRAYColorspace) @@ -1577,7 +1577,7 @@ MagickExport void GetColorTuple(const PixelInfo *pixel, (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&color,BlackPixelChannel,SVGCompliance,tuple); } - if (color.alpha_trait == BlendPixelTrait) + if (color.alpha_trait != UndefinedPixelTrait) { (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&color,AlphaPixelChannel,SVGCompliance,tuple); @@ -1671,7 +1671,7 @@ MagickPrivate MagickBooleanType IsEquivalentAlpha(const Image *image, register double distance; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) return(MagickTrue); if (p->alpha == q->alpha) return(MagickTrue); @@ -2412,12 +2412,12 @@ MagickExport MagickBooleanType QueryColorCompliance(const char *name, color->black=(double) ClampToQuantum(scale* geometry_info.psi); else - if (color->alpha_trait == BlendPixelTrait) + if (color->alpha_trait != UndefinedPixelTrait) color->alpha=(double) ClampToQuantum(QuantumRange* geometry_info.psi); } if (((flags & ChiValue) != 0) && - (color->alpha_trait == BlendPixelTrait)) + (color->alpha_trait != UndefinedPixelTrait)) color->alpha=(double) ClampToQuantum(QuantumRange* geometry_info.chi); if (color->colorspace == LabColorspace) @@ -2435,7 +2435,7 @@ MagickExport MagickBooleanType QueryColorCompliance(const char *name, color->green=color->red; color->blue=color->red; if (((flags & SigmaValue) != 0) && - (color->alpha_trait == BlendPixelTrait)) + (color->alpha_trait != UndefinedPixelTrait)) color->alpha=(double) ClampToQuantum(QuantumRange* geometry_info.sigma); } @@ -2576,7 +2576,7 @@ MagickExport MagickBooleanType QueryColorname( GetColorTuple(&pixel,IsMagickTrue(compliance != SVGCompliance),name); if (IfMagickFalse(IssRGBColorspace(pixel.colorspace))) return(MagickFalse); - alpha=color->alpha_trait == BlendPixelTrait ? color->alpha : OpaqueAlpha; + alpha=color->alpha_trait != UndefinedPixelTrait ? color->alpha : OpaqueAlpha; (void) GetColorInfo("*",exception); ResetLinkedListIterator(color_cache); p=(const ColorInfo *) GetNextValueInLinkedList(color_cache); diff --git a/MagickCore/colorspace.c b/MagickCore/colorspace.c index f7e9e9e67..36dfb4d5e 100644 --- a/MagickCore/colorspace.c +++ b/MagickCore/colorspace.c @@ -317,7 +317,7 @@ static MagickBooleanType sRGBTransformImage(Image *image, status=MagickFalse; } image_view=DestroyCacheView(image_view); - image->type=image->alpha_trait != BlendPixelTrait ? ColorSeparationType : + image->type=image->alpha_trait == UndefinedPixelTrait ? ColorSeparationType : ColorSeparationMatteType; if (SetImageColorspace(image,colorspace,exception) == MagickFalse) return(MagickFalse); diff --git a/MagickCore/composite.c b/MagickCore/composite.c index e93f53d00..c12f4fd1d 100644 --- a/MagickCore/composite.c +++ b/MagickCore/composite.c @@ -568,8 +568,8 @@ MagickExport MagickBooleanType CompositeImage(Image *image, if (IsGrayColorspace(image->colorspace) != MagickFalse) (void) SetImageColorspace(image,sRGBColorspace,exception); (void) SetImageColorspace(composite_image,image->colorspace,exception); - if ((image->alpha_trait == BlendPixelTrait) && - (composite_image->alpha_trait != BlendPixelTrait)) + if ((image->alpha_trait != UndefinedPixelTrait) && + (composite_image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlphaChannel(composite_image,SetAlphaChannel,exception); if ((compose == OverCompositeOp) || (compose == SrcOverCompositeOp)) { @@ -682,7 +682,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, Modify destination outside the overlaid region and require an alpha channel to exist, to add transparency. */ - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); SetPixelAlphaTraits(image,CopyPixelTrait); break; @@ -1559,7 +1559,7 @@ MagickExport MagickBooleanType CompositeImage(Image *image, case CopyAlphaCompositeOp: { pixel=QuantumRange*Sa; - if (composite_image->alpha_trait != BlendPixelTrait) + if (composite_image->alpha_trait == UndefinedPixelTrait) pixel=GetPixelIntensity(composite_image,p); break; } @@ -2353,8 +2353,8 @@ MagickExport MagickBooleanType TextureImage(Image *image,const Image *texture, status=MagickTrue; if ((image->compose != CopyCompositeOp) && ((image->compose != OverCompositeOp) || - (image->alpha_trait == BlendPixelTrait) || - (texture_image->alpha_trait == BlendPixelTrait))) + (image->alpha_trait != UndefinedPixelTrait) || + (texture_image->alpha_trait != UndefinedPixelTrait))) { /* Tile texture onto the image background. diff --git a/MagickCore/decorate.c b/MagickCore/decorate.c index fc7faa2c8..80d2c0548 100644 --- a/MagickCore/decorate.c +++ b/MagickCore/decorate.c @@ -233,8 +233,8 @@ MagickExport Image *FrameImage(const Image *image,const FrameInfo *frame_info, if ((IsPixelInfoGray(&frame_image->border_color) == MagickFalse) && (IsGrayColorspace(frame_image->colorspace) != MagickFalse)) (void) SetImageColorspace(frame_image,sRGBColorspace,exception); - if ((frame_image->matte_color.alpha_trait == BlendPixelTrait) && - (frame_image->alpha_trait != BlendPixelTrait)) + if ((frame_image->matte_color.alpha_trait != UndefinedPixelTrait) && + (frame_image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlpha(frame_image,OpaqueAlpha,exception); frame_image->page=image->page; if ((image->page.width != 0) && (image->page.height != 0)) @@ -429,7 +429,7 @@ MagickExport Image *FrameImage(const Image *image,const FrameInfo *frame_info, Set frame interior to interior color. */ if ((compose != CopyCompositeOp) && ((compose != OverCompositeOp) || - (image->alpha_trait == BlendPixelTrait))) + (image->alpha_trait != UndefinedPixelTrait))) for (x=0; x < (ssize_t) image->columns; x++) { SetPixelInfoPixel(frame_image,&interior,q); @@ -606,7 +606,7 @@ MagickExport Image *FrameImage(const Image *image,const FrameInfo *frame_info, frame_view=DestroyCacheView(frame_view); image_view=DestroyCacheView(image_view); if ((compose != CopyCompositeOp) && ((compose != OverCompositeOp) || - (image->alpha_trait == BlendPixelTrait))) + (image->alpha_trait != UndefinedPixelTrait))) { x=(ssize_t) (frame_info->outer_bevel+(frame_info->x-bevel_width)+ frame_info->inner_bevel); diff --git a/MagickCore/display.c b/MagickCore/display.c index 5a6f61379..a9de3d3da 100644 --- a/MagickCore/display.c +++ b/MagickCore/display.c @@ -8008,7 +8008,7 @@ static Image *XMagickCommand(Display *display,XResourceInfo *resource_info, */ XSetCursorState(display,windows,MagickTrue); XCheckRefreshWindows(display,windows); - (void) SetImageType(*image,(*image)->alpha_trait != BlendPixelTrait ? + (void) SetImageType(*image,(*image)->alpha_trait == UndefinedPixelTrait ? GrayscaleType : GrayscaleMatteType,exception); XSetCursorState(display,windows,MagickFalse); if (IfMagickTrue(windows->image.orphan) ) @@ -9163,7 +9163,7 @@ static Image *XMagickCommand(Display *display,XResourceInfo *resource_info, Image *matte_image; - if ((*image)->alpha_trait != BlendPixelTrait) + if ((*image)->alpha_trait == UndefinedPixelTrait) { XNoticeWidget(display,windows, "Image does not have any matte information",(*image)->filename); @@ -10096,7 +10096,7 @@ static MagickBooleanType XMatteEditImage(Display *display, continue; if (IfMagickFalse(SetImageStorageClass(*image,DirectClass,exception)) ) return(MagickFalse); - if ((*image)->alpha_trait != BlendPixelTrait) + if ((*image)->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(*image,OpaqueAlphaChannel,exception); image_view=AcquireAuthenticCacheView(*image,exception); switch (method) diff --git a/MagickCore/distort.c b/MagickCore/distort.c index d20ec57d7..08ece355e 100644 --- a/MagickCore/distort.c +++ b/MagickCore/distort.c @@ -1519,7 +1519,7 @@ MagickExport Image *DistortResizeImage(const Image *image, exception); tmp_image->image_info=image->image_info; /* preserve global options */ - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) { /* Image has not transparency channel, so we free to use it @@ -2295,7 +2295,7 @@ MagickExport Image *DistortImage(const Image *image,DistortImageMethod method, if ((IsPixelInfoGray(&distort_image->background_color) == MagickFalse) && (IsGrayColorspace(distort_image->colorspace) != MagickFalse)) (void) SetImageColorspace(distort_image,sRGBColorspace,exception); - if (distort_image->background_color.alpha_trait == BlendPixelTrait) + if (distort_image->background_color.alpha_trait != UndefinedPixelTrait) distort_image->alpha_trait=BlendPixelTrait; distort_image->page.x=geometry.x; distort_image->page.y=geometry.y; @@ -2928,7 +2928,7 @@ MagickExport Image *SparseColorImage(const Image *image, (image->colorspace == CMYKColorspace)) number_colors++; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) number_colors++; /* @@ -2980,7 +2980,7 @@ MagickExport Image *SparseColorImage(const Image *image, (void) FormatLocaleFile(stderr, " -channel K -fx '%+lf*i %+lf*j %+lf' \\\n", coeff[x], coeff[x+1], coeff[x+2]),x+=3; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) (void) FormatLocaleFile(stderr, " -channel A -fx '%+lf*i %+lf*j %+lf' \\\n", coeff[x], coeff[x+1], coeff[x+2]),x+=3; break; @@ -3007,7 +3007,7 @@ MagickExport Image *SparseColorImage(const Image *image, coeff[ x ], coeff[x+1], coeff[x+2], coeff[x+3]),x+=4; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) (void) FormatLocaleFile(stderr, " -channel A -fx '%+lf*i %+lf*j %+lf*i*j %+lf;\n", coeff[ x ], coeff[x+1], coeff[x+2], coeff[x+3]),x+=4; @@ -3097,7 +3097,7 @@ MagickExport Image *SparseColorImage(const Image *image, pixel.black = coeff[x]*i +coeff[x+1]*j +coeff[x+2], x+=3; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha = coeff[x]*i +coeff[x+1]*j +coeff[x+2], x+=3; break; @@ -3119,7 +3119,7 @@ MagickExport Image *SparseColorImage(const Image *image, pixel.black = coeff[x]*i + coeff[x+1]*j + coeff[x+2]*i*j + coeff[x+3], x+=4; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha = coeff[x]*i + coeff[x+1]*j + coeff[x+2]*i*j + coeff[x+3], x+=4; break; @@ -3142,7 +3142,7 @@ MagickExport Image *SparseColorImage(const Image *image, (image->colorspace == CMYKColorspace)) pixel.black=0.0; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha=0.0; denominator = 0.0; for(k=0; kcolorspace == CMYKColorspace)) pixel.black += arguments[x++]*weight; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha += arguments[x++]*weight; denominator += weight; } @@ -3176,7 +3176,7 @@ MagickExport Image *SparseColorImage(const Image *image, (image->colorspace == CMYKColorspace)) pixel.black/=denominator; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha/=denominator; break; } @@ -3208,7 +3208,7 @@ MagickExport Image *SparseColorImage(const Image *image, (image->colorspace == CMYKColorspace)) pixel.black=arguments[x++]; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha=arguments[x++]; minimum = distance; } @@ -3227,7 +3227,7 @@ MagickExport Image *SparseColorImage(const Image *image, (image->colorspace == CMYKColorspace)) pixel.black*=QuantumRange; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) pixel.alpha*=QuantumRange; SetPixelInfoPixel(sparse_image,&pixel,q); q+=GetPixelChannels(sparse_image); diff --git a/MagickCore/draw.c b/MagickCore/draw.c index 4f4dbf7e3..6c2973e13 100644 --- a/MagickCore/draw.c +++ b/MagickCore/draw.c @@ -3936,7 +3936,7 @@ RestoreMSCWarning /* Draw polygon or line. */ - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); start=(ssize_t) ceil(bounds.y1-0.5); stop=(ssize_t) floor(bounds.y2+0.5); @@ -4316,7 +4316,7 @@ MagickExport MagickBooleanType DrawPrimitive(Image *image, } case MattePrimitive: { - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); switch (primitive_info->method) { @@ -4512,7 +4512,7 @@ MagickExport MagickBooleanType DrawPrimitive(Image *image, (void) TransformImage(&composite_image,(char *) NULL,geometry, exception); } - if (composite_image->alpha_trait != BlendPixelTrait) + if (composite_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(composite_image,OpaqueAlphaChannel, exception); if (draw_info->alpha != OpaqueAlpha) diff --git a/MagickCore/enhance.c b/MagickCore/enhance.c index bdbf2ad0a..9d5145368 100644 --- a/MagickCore/enhance.c +++ b/MagickCore/enhance.c @@ -411,7 +411,7 @@ MagickExport MagickBooleanType ClutImage(Image *image,const Image *clut_image, } image_view=DestroyCacheView(image_view); clut_map=(PixelInfo *) RelinquishMagickMemory(clut_map); - if ((clut_image->alpha_trait == BlendPixelTrait) && + if ((clut_image->alpha_trait != UndefinedPixelTrait) && ((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0)) (void) SetImageAlphaChannel(image,ActivateAlphaChannel,exception); return(status); @@ -2195,7 +2195,7 @@ MagickExport MagickBooleanType HaldClutImage(Image *image, assert(hald_image->signature == MagickSignature); if( IfMagickFalse(SetImageStorageClass(image,DirectClass,exception)) ) return(MagickFalse); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); /* Hald clut image. @@ -2283,7 +2283,7 @@ MagickExport MagickBooleanType HaldClutImage(Image *image, (image->colorspace == CMYKColorspace)) SetPixelBlack(image,ClampToQuantum(pixel.black),q); if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) SetPixelAlpha(image,ClampToQuantum(pixel.alpha),q); q+=GetPixelChannels(image); } @@ -2726,7 +2726,7 @@ MagickExport MagickBooleanType LevelImageColors(Image *image, (void) SetImageChannelMask(image,channel_mask); } if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) { channel_mask=SetImageChannelMask(image,AlphaChannel); status&=LevelImage(image,black_color->alpha,white_color->alpha,1.0, @@ -2766,7 +2766,7 @@ MagickExport MagickBooleanType LevelImageColors(Image *image, (void) SetImageChannelMask(image,channel_mask); } if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) { channel_mask=SetImageChannelMask(image,AlphaChannel); status&=LevelizeImage(image,black_color->alpha,white_color->alpha,1.0, diff --git a/MagickCore/feature.c b/MagickCore/feature.c index 7dc3faa08..b903032fc 100644 --- a/MagickCore/feature.c +++ b/MagickCore/feature.c @@ -742,7 +742,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) grays[ScaleQuantumToMap(GetPixelBlack(image,p))].black= ScaleQuantumToMap(GetPixelBlack(image,p)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) grays[ScaleQuantumToMap(GetPixelAlpha(image,p))].alpha= ScaleQuantumToMap(GetPixelAlpha(image,p)); p+=GetPixelChannels(image); @@ -768,7 +768,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) if (grays[i].black != ~0U) grays[gray.black++].black=grays[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) if (grays[i].alpha != ~0U) grays[gray.alpha++].alpha=grays[i].alpha; } @@ -783,7 +783,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) if (gray.black > number_grays) number_grays=gray.black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) if (gray.alpha > number_grays) number_grays=gray.alpha; cooccurrence=(ChannelStatistics **) AcquireQuantumMemory(number_grays, @@ -985,7 +985,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, cooccurrence[u][v].direction[i].black++; cooccurrence[v][u].direction[i].black++; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { u=0; v=0; @@ -1074,7 +1074,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, cooccurrence[x][y].direction[i].blue*=normalize; if (image->colorspace == CMYKColorspace) cooccurrence[x][y].direction[i].black*=normalize; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) cooccurrence[x][y].direction[i].alpha*=normalize; } } @@ -1114,7 +1114,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, channel_features[BlackPixelChannel].angular_second_moment[i]+= cooccurrence[x][y].direction[i].black* cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].angular_second_moment[i]+= cooccurrence[x][y].direction[i].alpha* cooccurrence[x][y].direction[i].alpha; @@ -1126,7 +1126,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, sum[y].direction[i].blue+=cooccurrence[x][y].direction[i].blue; if (image->colorspace == CMYKColorspace) sum[y].direction[i].black+=cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) sum[y].direction[i].alpha+=cooccurrence[x][y].direction[i].alpha; correlation.direction[i].red+=x*y*cooccurrence[x][y].direction[i].red; correlation.direction[i].green+=x*y* @@ -1136,7 +1136,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) correlation.direction[i].black+=x*y* cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) correlation.direction[i].alpha+=x*y* cooccurrence[x][y].direction[i].alpha; /* @@ -1151,7 +1151,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) channel_features[BlackPixelChannel].inverse_difference_moment[i]+= cooccurrence[x][y].direction[i].black/((y-x)*(y-x)+1); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].inverse_difference_moment[i]+= cooccurrence[x][y].direction[i].alpha/((y-x)*(y-x)+1); /* @@ -1166,7 +1166,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) density_xy[y+x+2].direction[i].black+= cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) density_xy[y+x+2].direction[i].alpha+= cooccurrence[x][y].direction[i].alpha; /* @@ -1185,7 +1185,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, channel_features[BlackPixelChannel].entropy[i]-= cooccurrence[x][y].direction[i].black* MagickLog10(cooccurrence[x][y].direction[i].black); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].entropy[i]-= cooccurrence[x][y].direction[i].alpha* MagickLog10(cooccurrence[x][y].direction[i].alpha); @@ -1195,7 +1195,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, density_x[x].direction[i].red+=cooccurrence[x][y].direction[i].red; density_x[x].direction[i].green+=cooccurrence[x][y].direction[i].green; density_x[x].direction[i].blue+=cooccurrence[x][y].direction[i].blue; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) density_x[x].direction[i].alpha+= cooccurrence[x][y].direction[i].alpha; if (image->colorspace == CMYKColorspace) @@ -1207,7 +1207,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) density_y[y].direction[i].black+= cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) density_y[y].direction[i].alpha+= cooccurrence[x][y].direction[i].alpha; } @@ -1222,7 +1222,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, mean.direction[i].black+=y*sum[y].direction[i].black; sum_squares.direction[i].black+=y*y*sum[y].direction[i].black; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { mean.direction[i].alpha+=y*sum[y].direction[i].alpha; sum_squares.direction[i].alpha+=y*y*sum[y].direction[i].alpha; @@ -1256,7 +1256,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, (mean.direction[i].black*mean.direction[i].black))*sqrt( sum_squares.direction[i].black-(mean.direction[i].black* mean.direction[i].black))); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].correlation[i]= (correlation.direction[i].alpha-mean.direction[i].alpha* mean.direction[i].alpha)/(sqrt(sum_squares.direction[i].alpha- @@ -1290,7 +1290,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) channel_features[BlackPixelChannel].sum_average[i]+= x*density_xy[x].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].sum_average[i]+= x*density_xy[x].direction[i].alpha; /* @@ -1309,7 +1309,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, channel_features[BlackPixelChannel].sum_entropy[i]-= density_xy[x].direction[i].black* MagickLog10(density_xy[x].direction[i].black); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].sum_entropy[i]-= density_xy[x].direction[i].alpha* MagickLog10(density_xy[x].direction[i].alpha); @@ -1333,7 +1333,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, (x-channel_features[BlackPixelChannel].sum_entropy[i])* (x-channel_features[BlackPixelChannel].sum_entropy[i])* density_xy[x].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].sum_variance[i]+= (x-channel_features[AlphaPixelChannel].sum_entropy[i])* (x-channel_features[AlphaPixelChannel].sum_entropy[i])* @@ -1371,7 +1371,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) variance.direction[i].black+=(y-mean.direction[i].black+1)* (y-mean.direction[i].black+1)*cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) variance.direction[i].alpha+=(y-mean.direction[i].alpha+1)* (y-mean.direction[i].alpha+1)* cooccurrence[x][y].direction[i].alpha; @@ -1387,7 +1387,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) density_xy[MagickAbsoluteValue(y-x)].direction[i].black+= cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) density_xy[MagickAbsoluteValue(y-x)].direction[i].alpha+= cooccurrence[x][y].direction[i].alpha; /* @@ -1402,7 +1402,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) entropy_xy.direction[i].black-=cooccurrence[x][y].direction[i].black* MagickLog10(cooccurrence[x][y].direction[i].black); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) entropy_xy.direction[i].alpha-= cooccurrence[x][y].direction[i].alpha*MagickLog10( cooccurrence[x][y].direction[i].alpha); @@ -1417,7 +1417,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, entropy_xy1.direction[i].black-=( cooccurrence[x][y].direction[i].black*MagickLog10( density_x[x].direction[i].black*density_y[y].direction[i].black)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) entropy_xy1.direction[i].alpha-=( cooccurrence[x][y].direction[i].alpha*MagickLog10( density_x[x].direction[i].alpha*density_y[y].direction[i].alpha)); @@ -1434,7 +1434,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, entropy_xy2.direction[i].black-=(density_x[x].direction[i].black* density_y[y].direction[i].black*MagickLog10( density_x[x].direction[i].black*density_y[y].direction[i].black)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) entropy_xy2.direction[i].alpha-=(density_x[x].direction[i].alpha* density_y[y].direction[i].alpha*MagickLog10( density_x[x].direction[i].alpha*density_y[y].direction[i].alpha)); @@ -1449,7 +1449,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) channel_features[BlackPixelChannel].variance_sum_of_squares[i]= variance.direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].variance_sum_of_squares[i]= variance.direction[i].alpha; } @@ -1477,7 +1477,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, variance.direction[i].blue+=density_xy[x].direction[i].blue; if (image->colorspace == CMYKColorspace) variance.direction[i].black+=density_xy[x].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) variance.direction[i].alpha+=density_xy[x].direction[i].alpha; sum_squares.direction[i].red+=density_xy[x].direction[i].red* density_xy[x].direction[i].red; @@ -1488,7 +1488,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) sum_squares.direction[i].black+=density_xy[x].direction[i].black* density_xy[x].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) sum_squares.direction[i].alpha+=density_xy[x].direction[i].alpha* density_xy[x].direction[i].alpha; /* @@ -1507,7 +1507,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, channel_features[BlackPixelChannel].difference_entropy[i]-= density_xy[x].direction[i].black* MagickLog10(density_xy[x].direction[i].black); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].difference_entropy[i]-= density_xy[x].direction[i].alpha* MagickLog10(density_xy[x].direction[i].alpha); @@ -1523,7 +1523,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) entropy_x.direction[i].black-=(density_x[x].direction[i].black* MagickLog10(density_x[x].direction[i].black)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) entropy_x.direction[i].alpha-=(density_x[x].direction[i].alpha* MagickLog10(density_x[x].direction[i].alpha)); entropy_y.direction[i].red-=(density_y[x].direction[i].red* @@ -1535,7 +1535,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) entropy_y.direction[i].black-=(density_y[x].direction[i].black* MagickLog10(density_y[x].direction[i].black)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) entropy_y.direction[i].alpha-=(density_y[x].direction[i].alpha* MagickLog10(density_y[x].direction[i].alpha)); } @@ -1559,7 +1559,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, (((double) number_grays*number_grays*sum_squares.direction[i].black)- (variance.direction[i].black*variance.direction[i].black))/ ((double) number_grays*number_grays*number_grays*number_grays); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].difference_variance[i]= (((double) number_grays*number_grays*sum_squares.direction[i].alpha)- (variance.direction[i].alpha*variance.direction[i].alpha))/ @@ -1584,7 +1584,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, (entropy_xy.direction[i].black-entropy_xy1.direction[i].black)/ (entropy_x.direction[i].black > entropy_y.direction[i].black ? entropy_x.direction[i].black : entropy_y.direction[i].black); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].measure_of_correlation_1[i]= (entropy_xy.direction[i].alpha-entropy_xy1.direction[i].alpha)/ (entropy_x.direction[i].alpha > entropy_y.direction[i].alpha ? @@ -1602,7 +1602,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, channel_features[BlackPixelChannel].measure_of_correlation_2[i]= (sqrt(fabs(1.0-exp(-2.0*(entropy_xy2.direction[i].black- entropy_xy.direction[i].black))))); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].measure_of_correlation_2[i]= (sqrt(fabs(1.0-exp(-2.0*(entropy_xy2.direction[i].alpha- entropy_xy.direction[i].alpha))))); @@ -1645,7 +1645,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, pixel.direction[i].blue+=cooccurrence[x][y].direction[i].blue; if (image->colorspace == CMYKColorspace) pixel.direction[i].black+=cooccurrence[x][y].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) pixel.direction[i].alpha+= cooccurrence[x][y].direction[i].alpha; } @@ -1665,7 +1665,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, Q[z][y].direction[i].black+=cooccurrence[z][x].direction[i].black* cooccurrence[y][x].direction[i].black/ density_x[z].direction[i].black/density_y[x].direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) Q[z][y].direction[i].alpha+= cooccurrence[z][x].direction[i].alpha* cooccurrence[y][x].direction[i].alpha/ @@ -1682,7 +1682,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) channel_features[BlackPixelChannel].contrast[i]+=z*z* pixel.direction[i].black; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].contrast[i]+=z*z* pixel.direction[i].alpha; } @@ -1699,7 +1699,7 @@ MagickExport ChannelFeatures *GetImageFeatures(const Image *image, if (image->colorspace == CMYKColorspace) channel_features[BlackPixelChannel].maximum_correlation_coefficient[i]= sqrt((double) -1.0); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channel_features[AlphaPixelChannel].maximum_correlation_coefficient[i]= sqrt((double) -1.0); } diff --git a/MagickCore/fourier.c b/MagickCore/fourier.c index a649eca2f..72b5be4da 100644 --- a/MagickCore/fourier.c +++ b/MagickCore/fourier.c @@ -1017,7 +1017,7 @@ MagickExport Image *ForwardFourierTransformImage(const Image *image, thread_status; thread_status=MagickTrue; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) thread_status=ForwardFourierTransformChannel(image, AlphaPixelChannel,modulus,fourier_image,exception); if (thread_status == MagickFalse) @@ -1584,7 +1584,7 @@ MagickExport Image *InverseFourierTransformImage(const Image *magnitude_image, thread_status; thread_status=MagickTrue; - if (magnitude_image->alpha_trait == BlendPixelTrait) + if (magnitude_image->alpha_trait != UndefinedPixelTrait) thread_status=InverseFourierTransformChannel(magnitude_image, phase_image,AlphaPixelChannel,modulus,fourier_image,exception); if (thread_status == MagickFalse) diff --git a/MagickCore/fx.c b/MagickCore/fx.c index 1c2450bd8..8f17107c1 100644 --- a/MagickCore/fx.c +++ b/MagickCore/fx.c @@ -701,8 +701,8 @@ MagickExport Image *ColorizeImage(const Image *image,const char *blend, if ((IsGrayColorspace(image->colorspace) != MagickFalse) || (IsPixelInfoGray(colorize) != MagickFalse)) (void) SetImageColorspace(colorize_image,sRGBColorspace,exception); - if ((colorize_image->alpha_trait != BlendPixelTrait) && - (colorize->alpha_trait == BlendPixelTrait)) + if ((colorize_image->alpha_trait == UndefinedPixelTrait) && + (colorize->alpha_trait != UndefinedPixelTrait)) (void) SetImageAlpha(colorize_image,OpaqueAlpha,exception); if (blend == (const char *) NULL) return(colorize_image); @@ -993,7 +993,7 @@ MagickExport Image *ColorMatrixImage(const Image *image, GetPixelGreen(image,p)+ColorMatrix[v][2]*GetPixelBlue(image,p); if (image->colorspace == CMYKColorspace) sum+=ColorMatrix[v][3]*GetPixelBlack(image,p); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) sum+=ColorMatrix[v][4]*GetPixelAlpha(image,p); sum+=QuantumRange*ColorMatrix[v][5]; switch (v) @@ -1487,7 +1487,7 @@ static double FxGetSymbol(FxInfo *fx_info,const PixelChannel channel, double alpha; - if (pixel.alpha_trait != BlendPixelTrait) + if (pixel.alpha_trait == UndefinedPixelTrait) return(1.0); alpha=(double) (QuantumScale*pixel.alpha); return(alpha); @@ -4292,7 +4292,7 @@ MagickExport Image *ShadowImage(const Image *image,const double alpha, clone_image=DestroyImage(clone_image); if (border_image == (Image *) NULL) return((Image *) NULL); - if (border_image->alpha_trait != BlendPixelTrait) + if (border_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(border_image,OpaqueAlphaChannel,exception); /* Shadow image. @@ -4323,7 +4323,7 @@ MagickExport Image *ShadowImage(const Image *image,const double alpha, background_color.alpha_trait=BlendPixelTrait; for (x=0; x < (ssize_t) border_image->columns; x++) { - if (border_image->alpha_trait == BlendPixelTrait) + if (border_image->alpha_trait != UndefinedPixelTrait) background_color.alpha=GetPixelAlpha(border_image,q)*alpha/100.0; SetPixelInfoPixel(border_image,&background_color,q); q+=GetPixelChannels(border_image); diff --git a/MagickCore/histogram.c b/MagickCore/histogram.c index f16f18063..467a853cd 100644 --- a/MagickCore/histogram.c +++ b/MagickCore/histogram.c @@ -166,7 +166,7 @@ static inline size_t ColorToNodeId(const Image *image, ((ScaleQuantumToChar(ClampToQuantum(pixel->red)) >> index) & 0x01) | ((ScaleQuantumToChar(ClampToQuantum(pixel->green)) >> index) & 0x01) << 1 | ((ScaleQuantumToChar(ClampToQuantum(pixel->blue)) >> index) & 0x01) << 2); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) id|=((ScaleQuantumToChar(ClampToQuantum(pixel->alpha)) >> index) & 0x01) << 3; return(id); @@ -342,7 +342,7 @@ static void DefineImageHistogram(const Image *image,NodeInfo *node_info, /* Traverse any children. */ - number_children=image->alpha_trait != BlendPixelTrait ? 8UL : 16UL; + number_children=image->alpha_trait == UndefinedPixelTrait ? 8UL : 16UL; for (i=0; i < (ssize_t) number_children; i++) if (node_info->child[i] != (NodeInfo *) NULL) DefineImageHistogram(image,node_info->child[i],histogram); @@ -441,7 +441,7 @@ static void DestroyColorCube(const Image *image,NodeInfo *node_info) /* Traverse any children. */ - number_children=image->alpha_trait != BlendPixelTrait ? 8UL : 16UL; + number_children=image->alpha_trait == UndefinedPixelTrait ? 8UL : 16UL; for (i=0; i < (ssize_t) number_children; i++) if (node_info->child[i] != (NodeInfo *) NULL) DestroyColorCube(image,node_info->child[i]); @@ -1142,7 +1142,7 @@ MagickExport size_t GetNumberColors(const Image *image,FILE *file, ConcatenateColorComponent(&pixel,BlackPixelChannel,X11Compliance, tuple); } - if (pixel.alpha_trait == BlendPixelTrait) + if (pixel.alpha_trait != UndefinedPixelTrait) { (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&pixel,AlphaPixelChannel,X11Compliance, @@ -1215,7 +1215,7 @@ static void UniqueColorsToImage(Image *unique_image,CacheView *unique_view, /* Traverse any children. */ - number_children=unique_image->alpha_trait != BlendPixelTrait ? 8UL : 16UL; + number_children=unique_image->alpha_trait == UndefinedPixelTrait ? 8UL : 16UL; for (i=0; i < (ssize_t) number_children; i++) if (node_info->child[i] != (NodeInfo *) NULL) UniqueColorsToImage(unique_image,unique_view,cube_info, diff --git a/MagickCore/identify.c b/MagickCore/identify.c index 85523ee5e..ea03968ee 100644 --- a/MagickCore/identify.c +++ b/MagickCore/identify.c @@ -549,7 +549,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelLocations(file,image,AlphaPixelChannel,"Alpha", type,max_locations,channel_statistics); channel_statistics=(ChannelStatistics *) RelinquishMagickMemory( @@ -756,7 +756,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(file," Alpha: %.20g-bit\n",(double) channel_statistics[AlphaPixelChannel].depth); scale=1.0; @@ -801,7 +801,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelStatistics(file,AlphaPixelChannel,"Alpha",1.0/ scale,channel_statistics); if (colorspace != GRAYColorspace) @@ -849,7 +849,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelMoments(file,AlphaPixelChannel,"Alpha",scale, channel_moments); if (colorspace != GRAYColorspace) @@ -870,7 +870,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, channel_phash); (void) PrintChannelPerceptualHash(file,BluePixelChannel,"Blue, Luma", channel_phash); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelPerceptualHash(file,AlphaPixelChannel,"Alpha, Alpha", channel_phash); channel_phash=(ChannelPerceptualHash *) RelinquishMagickMemory( @@ -912,7 +912,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelFeatures(file,AlphaPixelChannel,"Alpha", channel_features); channel_features=(ChannelFeatures *) RelinquishMagickMemory( @@ -925,7 +925,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, GetMagickPrecision(),100.0*GetImageTotalInkDensity(image,exception)/ (double) QuantumRange); x=0; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { register const Quantum *p; @@ -1015,7 +1015,7 @@ MagickExport MagickBooleanType IdentifyImage(Image *image,FILE *file, ConcatenateColorComponent(&pixel,BlackPixelChannel, X11Compliance,tuple); } - if (pixel.alpha_trait == BlendPixelTrait) + if (pixel.alpha_trait != UndefinedPixelTrait) { (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&pixel,AlphaPixelChannel, diff --git a/MagickCore/image.c b/MagickCore/image.c index 90fc91d90..1f496bac6 100644 --- a/MagickCore/image.c +++ b/MagickCore/image.c @@ -489,7 +489,7 @@ MagickExport Image *AppendImages(const Image *images, next=GetNextImageInList(images); for ( ; next != (Image *) NULL; next=GetNextImageInList(next)) { - if (next->alpha_trait == BlendPixelTrait) + if (next->alpha_trait != UndefinedPixelTrait) alpha_trait=BlendPixelTrait; number_images++; if (stack != MagickFalse) @@ -3168,7 +3168,7 @@ MagickExport Image *SmushImages(const Image *images, next=GetNextImageInList(image); for ( ; next != (Image *) NULL; next=GetNextImageInList(next)) { - if (next->alpha_trait == BlendPixelTrait) + if (next->alpha_trait != UndefinedPixelTrait) alpha_trait=BlendPixelTrait; number_images++; if (stack != MagickFalse) diff --git a/MagickCore/layer.c b/MagickCore/layer.c index 9b5834926..8ae53a207 100644 --- a/MagickCore/layer.c +++ b/MagickCore/layer.c @@ -105,7 +105,7 @@ static void ClearBounds(Image *image,RectangleInfo *bounds, if (bounds->x < 0) return; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); for (y=0; y < (ssize_t) bounds->height; y++) { @@ -328,7 +328,7 @@ MagickExport Image *CoalesceImages(const Image *image,ExceptionInfo *exception) previous=coalesce_image; coalesce_image=GetNextImageInList(coalesce_image); (void) CompositeImage(coalesce_image,next, - next->alpha_trait == BlendPixelTrait ? OverCompositeOp : CopyCompositeOp, + next->alpha_trait != UndefinedPixelTrait ? OverCompositeOp : CopyCompositeOp, MagickTrue,next->page.x,next->page.y,exception); (void) CloneImageProfiles(coalesce_image,next); (void) CloneImageProperties(coalesce_image,next); @@ -423,7 +423,7 @@ MagickExport Image *DisposeImages(const Image *images,ExceptionInfo *exception) return((Image *) NULL); } (void) CompositeImage(current_image,next, - next->alpha_trait == BlendPixelTrait ? OverCompositeOp : CopyCompositeOp, + next->alpha_trait != UndefinedPixelTrait ? OverCompositeOp : CopyCompositeOp, MagickTrue,next->page.x,next->page.y,exception); /* Handle Background dispose: image is displayed for the delay period. @@ -531,8 +531,8 @@ static MagickBooleanType ComparePixels(const LayerMethod method, if (method == CompareAnyLayer) return((MagickBooleanType)(IsFuzzyEquivalencePixelInfo(p,q) == MagickFalse)); - o1 = (p->alpha_trait == BlendPixelTrait) ? p->alpha : OpaqueAlpha; - o2 = (q->alpha_trait == BlendPixelTrait) ? q->alpha : OpaqueAlpha; + o1 = (p->alpha_trait != UndefinedPixelTrait) ? p->alpha : OpaqueAlpha; + o2 = (q->alpha_trait != UndefinedPixelTrait) ? q->alpha : OpaqueAlpha; /* Pixel goes from opaque to transprency. */ @@ -1494,7 +1494,7 @@ MagickExport void OptimizeImageTransparency(const Image *image, dispose_image=DestroyImage(dispose_image); return; } - (void) CompositeImage(current_image,next,next->alpha_trait == BlendPixelTrait ? + (void) CompositeImage(current_image,next,next->alpha_trait != UndefinedPixelTrait ? OverCompositeOp : CopyCompositeOp,MagickTrue,next->page.x,next->page.y, exception); /* diff --git a/MagickCore/paint.c b/MagickCore/paint.c index b87686633..47a8c1ae2 100644 --- a/MagickCore/paint.c +++ b/MagickCore/paint.c @@ -178,8 +178,8 @@ MagickExport MagickBooleanType FloodfillPaintImage(Image *image, return(MagickFalse); if (IsGrayColorspace(image->colorspace) != MagickFalse) (void) SetImageColorspace(image,sRGBColorspace,exception); - if ((image->alpha_trait != BlendPixelTrait) && - (draw_info->fill.alpha_trait == BlendPixelTrait)) + if ((image->alpha_trait == UndefinedPixelTrait) && + (draw_info->fill.alpha_trait != UndefinedPixelTrait)) (void) SetImageAlpha(image,OpaqueAlpha,exception); /* Set floodfill state. @@ -913,7 +913,7 @@ MagickExport MagickBooleanType TransparentPaintImage(Image *image, (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); if (SetImageStorageClass(image,DirectClass,exception) == MagickFalse) return(MagickFalse); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); /* Make image color transparent. @@ -1041,7 +1041,7 @@ MagickExport MagickBooleanType TransparentPaintImageChroma(Image *image, (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); if (SetImageStorageClass(image,DirectClass,exception) == MagickFalse) return(MagickFalse); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); /* Make image color transparent. diff --git a/MagickCore/pixel-accessor.h b/MagickCore/pixel-accessor.h index 8a1d5a604..977b9c1b3 100644 --- a/MagickCore/pixel-accessor.h +++ b/MagickCore/pixel-accessor.h @@ -454,16 +454,16 @@ static inline MagickBooleanType IsPixelGray(const Image *restrict image, static inline MagickBooleanType IsPixelInfoEquivalent( const PixelInfo *restrict p,const PixelInfo *restrict q) { - if ((p->alpha_trait == BlendPixelTrait) && - (q->alpha_trait != BlendPixelTrait) && + if ((p->alpha_trait != UndefinedPixelTrait) && + (q->alpha_trait == UndefinedPixelTrait) && (AbsolutePixelValue(p->alpha-OpaqueAlpha) >= MagickEpsilon)) return(MagickFalse); - if ((q->alpha_trait == BlendPixelTrait) && - (p->alpha_trait != BlendPixelTrait) && + if ((q->alpha_trait != UndefinedPixelTrait) && + (p->alpha_trait == UndefinedPixelTrait) && (AbsolutePixelValue(q->alpha-OpaqueAlpha)) >= MagickEpsilon) return(MagickFalse); - if ((p->alpha_trait == BlendPixelTrait) && - (q->alpha_trait == BlendPixelTrait)) + if ((p->alpha_trait != UndefinedPixelTrait) && + (q->alpha_trait != UndefinedPixelTrait)) { if (AbsolutePixelValue(p->alpha-q->alpha) >= MagickEpsilon) return(MagickFalse); @@ -574,7 +574,7 @@ static inline void SetPixelBackgoundColor(const Image *restrict image, ClampToQuantum(image->background_color.black); if (image->channel_map[AlphaPixelChannel].traits != UndefinedPixelTrait) pixel[image->channel_map[AlphaPixelChannel].offset]= - image->background_color.alpha_trait != BlendPixelTrait ? OpaqueAlpha : + image->background_color.alpha_trait == UndefinedPixelTrait ? OpaqueAlpha : ClampToQuantum(image->background_color.alpha); } @@ -710,7 +710,7 @@ static inline void SetPixelInfoPixel(const Image *restrict image, ClampToQuantum(pixel_info->black); if (image->channel_map[AlphaPixelChannel].traits != UndefinedPixelTrait) pixel[image->channel_map[AlphaPixelChannel].offset]= - pixel_info->alpha_trait != BlendPixelTrait ? OpaqueAlpha : + pixel_info->alpha_trait == UndefinedPixelTrait ? OpaqueAlpha : ClampToQuantum(pixel_info->alpha); } diff --git a/MagickCore/pixel.c b/MagickCore/pixel.c index b6b3e2627..34c43bd26 100644 --- a/MagickCore/pixel.c +++ b/MagickCore/pixel.c @@ -237,8 +237,8 @@ MagickExport void ConformPixelInfo(Image *image,const PixelInfo *source, (IsGrayColorspace(image->colorspace) != MagickFalse)) (void) TransformImageColorspace(image,sRGBColorspace,exception); #endif - if ((destination->alpha_trait == BlendPixelTrait) && - (image->alpha_trait != BlendPixelTrait)) + if ((destination->alpha_trait != UndefinedPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlpha(image,OpaqueAlpha,exception); } @@ -4316,7 +4316,7 @@ MagickExport void InitializePixelChannelMap(Image *image) (void) ResetMagickMemory(image->channel_map,0,MaxPixelChannels* sizeof(*image->channel_map)); trait=UpdatePixelTrait; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) trait=(PixelTrait) (trait | BlendPixelTrait); n=0; if (image->colorspace == GRAYColorspace) @@ -5421,7 +5421,7 @@ MagickExport MagickBooleanType InterpolatePixelChannels(const Image *source, static inline void AlphaBlendPixelInfo(const Image *image, const Quantum *pixel,PixelInfo *pixel_info,double *alpha) { - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) { *alpha=1.0; pixel_info->red=(double) GetPixelRed(image,pixel); @@ -5931,7 +5931,7 @@ MagickExport MagickBooleanType IsFuzzyEquivalencePixel(const Image *source, destination->fuzz,(MagickRealType) MagickSQ1_2); scale=1.0; distance=0.0; - if (source->alpha_trait == BlendPixelTrait) + if (source->alpha_trait != UndefinedPixelTrait) { /* Transparencies are involved - set alpha distance @@ -6049,14 +6049,14 @@ MagickExport MagickBooleanType IsFuzzyEquivalencePixelInfo(const PixelInfo *p, MagickMax(q->fuzz,(MagickRealType) MagickSQ1_2); scale=1.0; distance=0.0; - if ((p->alpha_trait == BlendPixelTrait) || - (q->alpha_trait == BlendPixelTrait)) + if ((p->alpha_trait != UndefinedPixelTrait) || + (q->alpha_trait != UndefinedPixelTrait)) { /* Transparencies are involved - set alpha distance. */ - pixel=(p->alpha_trait == BlendPixelTrait ? p->alpha : OpaqueAlpha)- - (q->alpha_trait == BlendPixelTrait ? q->alpha : OpaqueAlpha); + pixel=(p->alpha_trait != UndefinedPixelTrait ? p->alpha : OpaqueAlpha)- + (q->alpha_trait != UndefinedPixelTrait ? q->alpha : OpaqueAlpha); distance=pixel*pixel; if (distance > fuzz) return(MagickFalse); @@ -6064,9 +6064,9 @@ MagickExport MagickBooleanType IsFuzzyEquivalencePixelInfo(const PixelInfo *p, Generate a alpha scaling factor to generate a 4D cone on colorspace. If one color is transparent, distance has no color component. */ - if (p->alpha_trait == BlendPixelTrait) + if (p->alpha_trait != UndefinedPixelTrait) scale=(QuantumScale*p->alpha); - if (q->alpha_trait == BlendPixelTrait) + if (q->alpha_trait != UndefinedPixelTrait) scale*=(QuantumScale*q->alpha); if (scale <= MagickEpsilon ) return(MagickTrue); @@ -6157,13 +6157,13 @@ MagickExport void SetPixelChannelMask(Image *image, PixelChannel channel=GetPixelChannelChannel(image,i); SetPixelChannelTraits(image,channel, GetChannelBit(channel_mask,channel) == 0 ? CopyPixelTrait : - (image->alpha_trait == BlendPixelTrait) && + (image->alpha_trait != UndefinedPixelTrait) && (channel != AlphaPixelChannel) ? (PixelTrait) (UpdatePixelTrait | BlendPixelTrait) : UpdatePixelTrait); } if (image->storage_class == PseudoClass) SetPixelChannelTraits(image,IndexPixelChannel,CopyPixelTrait); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) SetPixelChannelTraits(image,AlphaPixelChannel,image->alpha_trait); if (image->read_mask != MagickFalse) SetPixelChannelTraits(image,ReadMaskPixelChannel,CopyPixelTrait); diff --git a/MagickCore/profile.c b/MagickCore/profile.c index ef1a570fd..d73261a84 100644 --- a/MagickCore/profile.c +++ b/MagickCore/profile.c @@ -1236,19 +1236,19 @@ MagickExport MagickBooleanType ProfileImage(Image *image,const char *name, { case cmsSigRgbData: { - image->type=image->alpha_trait != BlendPixelTrait ? + image->type=image->alpha_trait == UndefinedPixelTrait ? TrueColorType : TrueColorMatteType; break; } case cmsSigCmykData: { - image->type=image->alpha_trait != BlendPixelTrait ? + image->type=image->alpha_trait == UndefinedPixelTrait ? ColorSeparationType : ColorSeparationMatteType; break; } case cmsSigGrayData: { - image->type=image->alpha_trait != BlendPixelTrait ? + image->type=image->alpha_trait == UndefinedPixelTrait ? GrayscaleType : GrayscaleMatteType; break; } diff --git a/MagickCore/property.c b/MagickCore/property.c index 046a8ccf3..0885e179e 100644 --- a/MagickCore/property.c +++ b/MagickCore/property.c @@ -2366,7 +2366,7 @@ static const char *GetMagickPropertyLetter(ImageInfo *image_info, (void) FormatLocaleString(value,MaxTextExtent,"%s %s %s", CommandOptionToMnemonic(MagickClassOptions,(ssize_t) image->storage_class), CommandOptionToMnemonic(MagickColorspaceOptions,(ssize_t) colorspace), - image->alpha_trait == BlendPixelTrait ? "Alpha" : ""); + image->alpha_trait != UndefinedPixelTrait ? "Alpha" : ""); break; } case 's': /* Image scene number */ @@ -2644,7 +2644,7 @@ MagickExport const char *GetMagickProperty(ImageInfo *image_info, CommandOptionToMnemonic(MagickColorspaceOptions,(ssize_t) image->colorspace)); LocaleLower(value); - if( image->alpha_trait == BlendPixelTrait ) + if( image->alpha_trait != UndefinedPixelTrait ) (void) ConcatenateMagickString(value,"a",MaxTextExtent); break; } diff --git a/MagickCore/quantize.c b/MagickCore/quantize.c index 03995fd84..c107113a8 100644 --- a/MagickCore/quantize.c +++ b/MagickCore/quantize.c @@ -755,7 +755,7 @@ static inline void SetAssociatedAlpha(const Image *image,CubeInfo *cube_info) MagickBooleanType associate_alpha; - associate_alpha=image->alpha_trait == BlendPixelTrait ? MagickTrue : + associate_alpha=image->alpha_trait != UndefinedPixelTrait ? MagickTrue : MagickFalse; if ((cube_info->quantize_info->number_colors == 2) && (cube_info->quantize_info->colorspace == GRAYColorspace)) @@ -2246,7 +2246,7 @@ MagickExport MagickBooleanType GetImageQuantizeError(Image *image, for (x=0; x < (ssize_t) image->columns; x++) { index=1UL*GetPixelIndex(image,p); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { alpha=(double) (QuantumScale*GetPixelAlpha(image,p)); beta=(double) (QuantumScale*image->colormap[index].alpha); @@ -2447,7 +2447,7 @@ MagickExport MagickBooleanType PosterizeImage(Image *image,const size_t levels, (image->colorspace == CMYKColorspace)) SetPixelBlack(image,PosterizePixel(GetPixelBlack(image,q)),q); if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) SetPixelAlpha(image,PosterizePixel(GetPixelAlpha(image,q)),q); q+=GetPixelChannels(image); } @@ -2750,7 +2750,7 @@ MagickExport MagickBooleanType QuantizeImage(const QuantizeInfo *quantize_info, maximum_colors=MaxColormapSize; if (maximum_colors > MaxColormapSize) maximum_colors=MaxColormapSize; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) { if ((image->columns*image->rows) <= maximum_colors) (void) DirectToColormapImage(image,exception); @@ -2774,7 +2774,7 @@ MagickExport MagickBooleanType QuantizeImage(const QuantizeInfo *quantize_info, colors>>=2; if ((quantize_info->dither_method != NoDitherMethod) && (depth > 2)) depth--; - if ((image->alpha_trait == BlendPixelTrait) && (depth > 5)) + if ((image->alpha_trait != UndefinedPixelTrait) && (depth > 5)) depth--; if (IsImageGray(image,exception) != MagickFalse) depth=MaxTreeDepth; diff --git a/MagickCore/quantum.c b/MagickCore/quantum.c index b1659fd5b..e8fd9dedc 100644 --- a/MagickCore/quantum.c +++ b/MagickCore/quantum.c @@ -514,24 +514,24 @@ MagickExport QuantumType GetQuantumType(Image *image,ExceptionInfo *exception) if (image->debug != MagickFalse) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=RGBAQuantum; if (image->colorspace == CMYKColorspace) { quantum_type=CMYKQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=CMYKAQuantum; } if (IsImageGray(image,exception) != MagickFalse) { quantum_type=GrayQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=GrayAlphaQuantum; } if (image->storage_class == PseudoClass) { quantum_type=IndexQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=IndexAlphaQuantum; } return(quantum_type); diff --git a/MagickCore/resample.c b/MagickCore/resample.c index 44eb2785b..04f4025ca 100644 --- a/MagickCore/resample.c +++ b/MagickCore/resample.c @@ -545,7 +545,7 @@ MagickExport MagickBooleanType ResamplePixelColor( pixel->red = pixel->green = pixel->blue = 0.0; if (pixel->colorspace == CMYKColorspace) pixel->black = 0.0; - if (pixel->alpha_trait == BlendPixelTrait) + if (pixel->alpha_trait != UndefinedPixelTrait) pixel->alpha = 0.0; /* @@ -610,7 +610,7 @@ MagickExport MagickBooleanType ResamplePixelColor( pixel->alpha += weight*GetPixelAlpha(resample_filter->image,pixels); divisor_m += weight; - if (pixel->alpha_trait == BlendPixelTrait) + if (pixel->alpha_trait != UndefinedPixelTrait) weight *= QuantumScale*((double) GetPixelAlpha(resample_filter->image,pixels)); pixel->red += weight*GetPixelRed(resample_filter->image,pixels); pixel->green += weight*GetPixelGreen(resample_filter->image,pixels); diff --git a/MagickCore/resize.c b/MagickCore/resize.c index 0ca83891c..e3be9b331 100644 --- a/MagickCore/resize.c +++ b/MagickCore/resize.c @@ -2892,7 +2892,7 @@ MagickExport Image *ResizeImage(const Image *image,const size_t columns, filter_type=PointFilter; else if ((image->storage_class == PseudoClass) || - (image->alpha_trait == BlendPixelTrait) || + (image->alpha_trait != UndefinedPixelTrait) || ((x_factor*y_factor) > 1.0)) filter_type=MitchellFilter; resize_filter=AcquireResizeFilter(image,filter_type,MagickFalse,exception); @@ -3697,7 +3697,7 @@ MagickExport Image *ThumbnailImage(const Image *image,const size_t columns, if (thumbnail_image == (Image *) NULL) return(thumbnail_image); (void) ParseAbsoluteGeometry("0x0+0+0",&thumbnail_image->page); - if (thumbnail_image->alpha_trait != BlendPixelTrait) + if (thumbnail_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(thumbnail_image,OpaqueAlphaChannel,exception); thumbnail_image->depth=8; thumbnail_image->interlace=NoInterlace; diff --git a/MagickCore/shear.c b/MagickCore/shear.c index 56e9ceaf9..e46d004d7 100644 --- a/MagickCore/shear.c +++ b/MagickCore/shear.c @@ -1624,7 +1624,7 @@ MagickExport Image *ShearImage(const Image *image,const double x_shear, integral_image=DestroyImage(integral_image); return(integral_image); } - if (integral_image->alpha_trait != BlendPixelTrait) + if (integral_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(integral_image,OpaqueAlphaChannel,exception); /* Compute image size. @@ -1648,7 +1648,7 @@ MagickExport Image *ShearImage(const Image *image,const double x_shear, /* Shear the image. */ - if (shear_image->alpha_trait != BlendPixelTrait) + if (shear_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(shear_image,OpaqueAlphaChannel,exception); status=XShearImage(shear_image,shear.x,image->columns,image->rows,bounds.x, (ssize_t) (shear_image->rows-image->rows)/2,exception); @@ -1769,7 +1769,7 @@ MagickExport Image *ShearRotateImage(const Image *image,const double degrees, integral_image=DestroyImage(integral_image); return(integral_image); } - if (integral_image->alpha_trait != BlendPixelTrait) + if (integral_image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(integral_image,OpaqueAlphaChannel,exception); /* Compute maximum bounds for 3 shear operations. diff --git a/MagickCore/transform.c b/MagickCore/transform.c index cab89da7e..eabb8ad33 100644 --- a/MagickCore/transform.c +++ b/MagickCore/transform.c @@ -1748,8 +1748,8 @@ MagickExport Image *SpliceImage(const Image *image, if ((IsPixelInfoGray(&splice_image->background_color) == MagickFalse) && (IsGrayColorspace(splice_image->colorspace) != MagickFalse)) (void) SetImageColorspace(splice_image,sRGBColorspace,exception); - if ((splice_image->background_color.alpha_trait == BlendPixelTrait) && - (splice_image->alpha_trait != BlendPixelTrait)) + if ((splice_image->background_color.alpha_trait != UndefinedPixelTrait) && + (splice_image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlpha(splice_image,OpaqueAlpha,exception); (void) SetImageBackgroundColor(splice_image,exception); /* diff --git a/MagickCore/xwindow.c b/MagickCore/xwindow.c index e877be875..27b2a4b30 100644 --- a/MagickCore/xwindow.c +++ b/MagickCore/xwindow.c @@ -697,7 +697,7 @@ MagickPrivate MagickBooleanType XAnnotateImage(Display *display, (void) XParseGeometry(annotate_info->geometry,&x,&y,&width,&height); alpha_trait=image->alpha_trait; (void) CompositeImage(image,annotate_image, - annotate_image->alpha_trait == BlendPixelTrait ? OverCompositeOp : + annotate_image->alpha_trait != UndefinedPixelTrait ? OverCompositeOp : CopyCompositeOp,MagickTrue,(ssize_t) x,(ssize_t) y,exception); image->alpha_trait=alpha_trait; annotate_image=DestroyImage(annotate_image); @@ -5728,7 +5728,7 @@ MagickPrivate MagickBooleanType XMakeImage(Display *display, window->ximage=ximage; matte_image=(XImage *) NULL; if ((window->shape != MagickFalse) && (window->image != (Image *) NULL)) - if ((window->image->alpha_trait == BlendPixelTrait) && + if ((window->image->alpha_trait != UndefinedPixelTrait) && ((int) width <= XDisplayWidth(display,window->screen)) && ((int) height <= XDisplayHeight(display,window->screen))) { @@ -5914,7 +5914,7 @@ static void XMakeImageLSBFirst(const XResourceInfo *resource_info, (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); canvas=image; if ((window->immutable == MagickFalse) && - (image->storage_class == DirectClass) && (image->alpha_trait == BlendPixelTrait)) + (image->storage_class == DirectClass) && (image->alpha_trait != UndefinedPixelTrait)) { char size[MaxTextExtent]; @@ -6530,7 +6530,7 @@ static void XMakeImageMSBFirst(const XResourceInfo *resource_info, (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); canvas=image; if ((window->immutable != MagickFalse) && - (image->storage_class == DirectClass) && (image->alpha_trait == BlendPixelTrait)) + (image->storage_class == DirectClass) && (image->alpha_trait != UndefinedPixelTrait)) { char size[MaxTextExtent]; @@ -7514,7 +7514,7 @@ MagickPrivate void XMakeMagnifyImage(Display *display,XWindows *windows, (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&pixel,BlackPixelChannel,X11Compliance,tuple); } - if (pixel.alpha_trait == BlendPixelTrait) + if (pixel.alpha_trait != UndefinedPixelTrait) { (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&pixel,AlphaPixelChannel,X11Compliance,tuple); @@ -7771,7 +7771,7 @@ MagickPrivate void XMakeStandardColormap(Display *display, number_colors=(unsigned int) (map_info->base_pixel+ (map_info->red_max+1)*(map_info->green_max+1)*(map_info->blue_max+1)); if ((map_info->red_max*map_info->green_max*map_info->blue_max) != 0) - if ((image->alpha_trait != BlendPixelTrait) && + if ((image->alpha_trait == UndefinedPixelTrait) && (resource_info->color_recovery == MagickFalse) && (resource_info->quantize_info->dither_method != NoDitherMethod) && (number_colors < MaxColormapSize)) diff --git a/MagickWand/compare.c b/MagickWand/compare.c index 4c48e430a..9a64b7ca1 100644 --- a/MagickWand/compare.c +++ b/MagickWand/compare.c @@ -1097,7 +1097,7 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, (void) FormatLocaleFile(stderr," blue: %g (%g)\n", QuantumRange*channel_distortion[BluePixelChannel], channel_distortion[BluePixelChannel]); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(stderr," alpha: %g (%g)\n", QuantumRange*channel_distortion[AlphaPixelChannel], channel_distortion[AlphaPixelChannel]); @@ -1117,7 +1117,7 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, (void) FormatLocaleFile(stderr," black: %g (%g)\n", QuantumRange*channel_distortion[BlackPixelChannel], channel_distortion[BlackPixelChannel]); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(stderr," alpha: %g (%g)\n", QuantumRange*channel_distortion[AlphaPixelChannel], channel_distortion[AlphaPixelChannel]); @@ -1128,7 +1128,7 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, (void) FormatLocaleFile(stderr," gray: %g (%g)\n", QuantumRange*channel_distortion[GrayPixelChannel], channel_distortion[GrayPixelChannel]); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(stderr," alpha: %g (%g)\n", QuantumRange*channel_distortion[AlphaPixelChannel], channel_distortion[AlphaPixelChannel]); @@ -1156,7 +1156,7 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, channel_distortion[GreenPixelChannel]); (void) FormatLocaleFile(stderr," blue: %g\n", channel_distortion[BluePixelChannel]); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(stderr," alpha: %g\n", channel_distortion[AlphaPixelChannel]); break; @@ -1171,7 +1171,7 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, channel_distortion[YellowPixelChannel]); (void) FormatLocaleFile(stderr," black: %g\n", channel_distortion[BlackPixelChannel]); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(stderr," alpha: %g\n", channel_distortion[AlphaPixelChannel]); break; @@ -1180,7 +1180,7 @@ WandExport MagickBooleanType CompareImagesCommand(ImageInfo *image_info, { (void) FormatLocaleFile(stderr," gray: %g\n", channel_distortion[GrayPixelChannel]); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(stderr," alpha: %g\n", channel_distortion[AlphaPixelChannel]); break; diff --git a/MagickWand/magick-image.c b/MagickWand/magick-image.c index 468678ea2..46780e08a 100644 --- a/MagickWand/magick-image.c +++ b/MagickWand/magick-image.c @@ -9851,7 +9851,7 @@ WandExport MagickBooleanType MagickSetImageMatte(MagickWand *wand, (void) LogMagickEvent(WandEvent,GetMagickModule(),"%s",wand->name); if (wand->images == (Image *) NULL) ThrowWandException(WandError,"ContainsNoImages",wand->name); - if ((wand->images->alpha_trait != BlendPixelTrait) && IsMagickTrue(matte)) + if ((wand->images->alpha_trait == UndefinedPixelTrait) && IsMagickTrue(matte)) (void) SetImageAlpha(wand->images,OpaqueAlpha,wand->exception); wand->images->alpha_trait=matte != MagickFalse ? BlendPixelTrait : UndefinedPixelTrait; diff --git a/MagickWand/mogrify.c b/MagickWand/mogrify.c index 13b582a8a..ef6c6828c 100644 --- a/MagickWand/mogrify.c +++ b/MagickWand/mogrify.c @@ -482,7 +482,7 @@ static Image *SparseColorOption(const Image *image, (image->colorspace == CMYKColorspace)) number_colors++; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) number_colors++; /* @@ -585,7 +585,7 @@ static Image *SparseColorOption(const Image *image, (image->colorspace == CMYKColorspace)) sparse_arguments[x++] = QuantumScale*color.black; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) sparse_arguments[x++] = QuantumScale*color.alpha; } else { @@ -625,7 +625,7 @@ static Image *SparseColorOption(const Image *image, token[0] = ','; /* used this token - get another */ } if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) { while ( token[0] == ',' ) GetMagickToken(p,&p,token); if ( token[0] == '\0' || isalpha((int)token[0]) || token[0] == '#' ) @@ -1114,7 +1114,7 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc, break; for (x=0; x < (ssize_t) mask_image->columns; x++) { - if (mask_image->alpha_trait != BlendPixelTrait) + if (mask_image->alpha_trait == UndefinedPixelTrait) SetPixelAlpha(mask_image,(Quantum) GetPixelIntensity(mask_image,q),q); SetPixelRed(mask_image,GetPixelAlpha(mask_image,q),q); @@ -2527,7 +2527,7 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc, Composite region. */ (void) CompositeImage(region_image,*image, - region_image->alpha_trait == BlendPixelTrait ? + region_image->alpha_trait != UndefinedPixelTrait ? CopyCompositeOp : OverCompositeOp,MagickTrue, region_geometry.x,region_geometry.y,exception); *image=DestroyImage(*image); @@ -3280,7 +3280,7 @@ WandExport MagickBooleanType MogrifyImage(ImageInfo *image_info,const int argc, */ (void) SyncImageSettings(mogrify_info,*image,exception); (void) CompositeImage(region_image,*image, - region_image->alpha_trait == BlendPixelTrait ? CopyCompositeOp : + region_image->alpha_trait != UndefinedPixelTrait ? CopyCompositeOp : OverCompositeOp,MagickTrue,region_geometry.x,region_geometry.y, exception); *image=DestroyImage(*image); diff --git a/MagickWand/operation.c b/MagickWand/operation.c index ba8e3c3b4..40be42a51 100644 --- a/MagickWand/operation.c +++ b/MagickWand/operation.c @@ -219,7 +219,7 @@ static Image *SparseColorOption(const Image *image, (image->colorspace == CMYKColorspace)) number_colors++; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - image->alpha_trait == BlendPixelTrait) + image->alpha_trait != UndefinedPixelTrait) number_colors++; /* @@ -298,7 +298,7 @@ static Image *SparseColorOption(const Image *image, (image->colorspace == CMYKColorspace)) sparse_arguments[x++] = QuantumScale*color.black; if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - image->alpha_trait == BlendPixelTrait) + image->alpha_trait != UndefinedPixelTrait) sparse_arguments[x++] = QuantumScale*color.alpha; } else { @@ -338,7 +338,7 @@ static Image *SparseColorOption(const Image *image, token[0] = ','; /* used this token - get another */ } if (((GetPixelAlphaTraits(image) & UpdatePixelTrait) != 0) && - image->alpha_trait == BlendPixelTrait) + image->alpha_trait != UndefinedPixelTrait) { while ( token[0] == ',' ) GetMagickToken(p,&p,token); if ( token[0] == '\0' || isalpha((int)token[0]) || token[0] == '#' ) @@ -2028,7 +2028,7 @@ static MagickBooleanType CLISimpleOperatorImage(MagickCLI *cli_wand, break; for (x=0; x < (ssize_t) mask_image->columns; x++) { - if (mask_image->alpha_trait != BlendPixelTrait) + if (mask_image->alpha_trait == UndefinedPixelTrait) SetPixelAlpha(mask_image,(Quantum) GetPixelIntensity(mask_image,q),q); SetPixelGray(mask_image,GetPixelAlpha(mask_image,q),q); diff --git a/MagickWand/pixel-wand.c b/MagickWand/pixel-wand.c index 7a1e520ed..99eb184ee 100644 --- a/MagickWand/pixel-wand.c +++ b/MagickWand/pixel-wand.c @@ -754,7 +754,7 @@ WandExport char *PixelGetColorAsNormalizedString(const PixelWand *wand) if (wand->pixel.colorspace == CMYKColorspace) (void) FormatLocaleString(color+strlen(color),MaxTextExtent,",%g", (double) (QuantumScale*wand->pixel.black)); - if (wand->pixel.alpha_trait == BlendPixelTrait) + if (wand->pixel.alpha_trait != UndefinedPixelTrait) (void) FormatLocaleString(color+strlen(color),MaxTextExtent,",%g", (double) (QuantumScale*wand->pixel.alpha)); return(ConstantString(color)); diff --git a/PerlMagick/Magick.xs b/PerlMagick/Magick.xs index c85e9a605..777fb31db 100644 --- a/PerlMagick/Magick.xs +++ b/PerlMagick/Magick.xs @@ -4202,7 +4202,7 @@ Features(ref,...) ChannelFeatures(BlueChannel,i); if (image->colorspace == CMYKColorspace) ChannelFeatures(BlackChannel,i); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) ChannelFeatures(AlphaChannel,i); } channel_features=(ChannelFeatures *) @@ -5324,7 +5324,7 @@ Get(ref,...) if (LocaleCompare(attribute,"matte") == 0) { if (image != (Image *) NULL) - s=newSViv((ssize_t) image->alpha_trait == BlendPixelTrait ? + s=newSViv((ssize_t) image->alpha_trait != UndefinedPixelTrait ? 1 : 0); PUSHs(s ? sv_2mortal(s) : &sv_undef); continue; @@ -6640,12 +6640,12 @@ GetPixels(ref,...) goto PerlException; } map="RGB"; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) map="RGBA"; if (image->colorspace == CMYKColorspace) { map="CMYK"; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) map="CMYKA"; } normalize=MagickFalse; @@ -8154,8 +8154,8 @@ Mogrify(ref,...) { QueryColorCompliance(argument_list[1].string_reference, AllCompliance,&image->background_color,exception); - if ((image->background_color.alpha_trait == BlendPixelTrait) && - (image->alpha_trait != BlendPixelTrait)) + if ((image->background_color.alpha_trait != UndefinedPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlpha(image,OpaqueAlpha,exception); } image=RotateImage(image,argument_list[0].real_reference,exception); @@ -8619,7 +8619,7 @@ Mogrify(ref,...) opacity=(Quantum) StringToDoubleInterval( argument_list[6].string_reference,(double) QuantumRange+ 1.0); - if (composite_image->alpha_trait == BlendPixelTrait) + if (composite_image->alpha_trait != UndefinedPixelTrait) (void) SetImageAlpha(composite_image,OpaqueAlpha,exception); composite_view=AcquireAuthenticCacheView(composite_image,exception); for (y=0; y < (ssize_t) composite_image->rows ; y++) @@ -9112,7 +9112,7 @@ Mogrify(ref,...) geometry.x=argument_list[1].integer_reference; if (attribute_flag[2] != 0) geometry.y=argument_list[2].integer_reference; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlpha(image,OpaqueAlpha,exception); (void) GetOneVirtualPixelInfo(image,UndefinedVirtualPixelMethod, geometry.x,geometry.y,&target,exception); @@ -12286,7 +12286,7 @@ QueryColor(ref,...) PUSHs(sv_2mortal(newSViv((size_t) floor(color.blue+0.5)))); if (color.colorspace == CMYKColorspace) PUSHs(sv_2mortal(newSViv((size_t) floor(color.black+0.5)))); - if (color.alpha_trait == BlendPixelTrait) + if (color.alpha_trait != UndefinedPixelTrait) PUSHs(sv_2mortal(newSViv((size_t) floor(color.alpha+0.5)))); } @@ -14280,7 +14280,7 @@ Statistics(ref,...) ChannelStatistics(BlueChannel); if (image->colorspace == CMYKColorspace) ChannelStatistics(BlackChannel); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) ChannelStatistics(AlphaChannel); channel_statistics=(ChannelStatistics *) RelinquishMagickMemory(channel_statistics); diff --git a/PerlMagick/quantum/quantum.xs.in b/PerlMagick/quantum/quantum.xs.in index 60f531f98..d74ab53b6 100644 --- a/PerlMagick/quantum/quantum.xs.in +++ b/PerlMagick/quantum/quantum.xs.in @@ -4202,7 +4202,7 @@ Features(ref,...) ChannelFeatures(BlueChannel,i); if (image->colorspace == CMYKColorspace) ChannelFeatures(BlackChannel,i); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) ChannelFeatures(AlphaChannel,i); } channel_features=(ChannelFeatures *) @@ -5324,7 +5324,7 @@ Get(ref,...) if (LocaleCompare(attribute,"matte") == 0) { if (image != (Image *) NULL) - s=newSViv((ssize_t) image->alpha_trait == BlendPixelTrait ? + s=newSViv((ssize_t) image->alpha_trait != UndefinedPixelTrait ? 1 : 0); PUSHs(s ? sv_2mortal(s) : &sv_undef); continue; @@ -6640,12 +6640,12 @@ GetPixels(ref,...) goto PerlException; } map="RGB"; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) map="RGBA"; if (image->colorspace == CMYKColorspace) { map="CMYK"; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) map="CMYKA"; } normalize=MagickFalse; @@ -8154,8 +8154,8 @@ Mogrify(ref,...) { QueryColorCompliance(argument_list[1].string_reference, AllCompliance,&image->background_color,exception); - if ((image->background_color.alpha_trait == BlendPixelTrait) && - (image->alpha_trait != BlendPixelTrait)) + if ((image->background_color.alpha_trait != UndefinedPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlpha(image,OpaqueAlpha,exception); } image=RotateImage(image,argument_list[0].real_reference,exception); @@ -8619,7 +8619,7 @@ Mogrify(ref,...) opacity=(Quantum) StringToDoubleInterval( argument_list[6].string_reference,(double) QuantumRange+ 1.0); - if (composite_image->alpha_trait == BlendPixelTrait) + if (composite_image->alpha_trait != UndefinedPixelTrait) (void) SetImageAlpha(composite_image,OpaqueAlpha,exception); composite_view=AcquireAuthenticCacheView(composite_image,exception); for (y=0; y < (ssize_t) composite_image->rows ; y++) @@ -9112,7 +9112,7 @@ Mogrify(ref,...) geometry.x=argument_list[1].integer_reference; if (attribute_flag[2] != 0) geometry.y=argument_list[2].integer_reference; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlpha(image,OpaqueAlpha,exception); (void) GetOneVirtualPixelInfo(image,UndefinedVirtualPixelMethod, geometry.x,geometry.y,&target,exception); @@ -12284,7 +12284,7 @@ QueryColor(ref,...) PUSHs(sv_2mortal(newSViv((size_t) floor(color.blue+0.5)))); if (color.colorspace == CMYKColorspace) PUSHs(sv_2mortal(newSViv((size_t) floor(color.black+0.5)))); - if (color.alpha_trait == BlendPixelTrait) + if (color.alpha_trait != UndefinedPixelTrait) PUSHs(sv_2mortal(newSViv((size_t) floor(color.alpha+0.5)))); } @@ -14278,7 +14278,7 @@ Statistics(ref,...) ChannelStatistics(BlueChannel); if (image->colorspace == CMYKColorspace) ChannelStatistics(BlackChannel); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) ChannelStatistics(AlphaChannel); channel_statistics=(ChannelStatistics *) RelinquishMagickMemory(channel_statistics); diff --git a/coders/aai.c b/coders/aai.c index 53d3de419..b761fc084 100644 --- a/coders/aai.c +++ b/coders/aai.c @@ -388,7 +388,7 @@ static MagickBooleanType WriteAAIImage(const ImageInfo *image_info,Image *image, *q++=ScaleQuantumToChar(GetPixelBlue(image,p)); *q++=ScaleQuantumToChar(GetPixelGreen(image,p)); *q++=ScaleQuantumToChar(GetPixelRed(image,p)); - *q=ScaleQuantumToChar((Quantum) (image->alpha_trait == BlendPixelTrait ? + *q=ScaleQuantumToChar((Quantum) (image->alpha_trait != UndefinedPixelTrait ? GetPixelAlpha(image,p) : OpaqueAlpha)); if (*q == 255) *q=254; diff --git a/coders/bgr.c b/coders/bgr.c index ce0b81c0c..4501f3f06 100644 --- a/coders/bgr.c +++ b/coders/bgr.c @@ -251,7 +251,7 @@ static Image *ReadBGRImage(const ImageInfo *image_info, SetPixelGreen(image,GetPixelGreen(canvas_image,p),q); SetPixelBlue(image,GetPixelBlue(canvas_image,p),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,GetPixelAlpha(canvas_image,p),q); p+=GetPixelChannels(canvas_image); q+=GetPixelChannels(image); @@ -306,7 +306,7 @@ static Image *ReadBGRImage(const ImageInfo *image_info, "UnexpectedEndOfFile",image->filename); break; } - for (i=0; i < (ssize_t) (image->alpha_trait == BlendPixelTrait ? 4 : 3); i++) + for (i=0; i < (ssize_t) (image->alpha_trait != UndefinedPixelTrait ? 4 : 3); i++) { quantum_type=quantum_types[i]; q=GetAuthenticPixels(canvas_image,0,0,canvas_image->columns,1, @@ -549,7 +549,7 @@ static Image *ReadBGRImage(const ImageInfo *image_info, if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { for (y=0; y < (ssize_t) image->extract_info.height; y++) { @@ -833,7 +833,7 @@ static Image *ReadBGRImage(const ImageInfo *image_info, if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { (void) CloseBlob(image); AppendImageFormat("A",image->filename); @@ -1108,7 +1108,7 @@ static MagickBooleanType WriteBGRImage(const ImageInfo *image_info,Image *image, */ (void) TransformImageColorspace(image,sRGBColorspace,exception); if ((LocaleCompare(image_info->magick,"BGRA") == 0) && - (image->alpha_trait != BlendPixelTrait)) + (image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); quantum_info=AcquireQuantumInfo(image_info,image); if (quantum_info == (QuantumInfo *) NULL) diff --git a/coders/bmp.c b/coders/bmp.c index 069f9c476..7993a4bbe 100644 --- a/coders/bmp.c +++ b/coders/bmp.c @@ -968,7 +968,7 @@ static Image *ReadBMPImage(const ImageInfo *image_info,ExceptionInfo *exception) */ if (bmp_info.compression == BI_RGB) { - bmp_info.alpha_mask=image->alpha_trait == BlendPixelTrait ? + bmp_info.alpha_mask=image->alpha_trait != UndefinedPixelTrait ? 0xff000000U : 0U; bmp_info.red_mask=0x00ff0000U; bmp_info.green_mask=0x0000ff00U; @@ -1194,7 +1194,7 @@ static Image *ReadBMPImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelGreen(image,ScaleShortToQuantum((unsigned short) green),q); SetPixelBlue(image,ScaleShortToQuantum((unsigned short) blue),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleShortToQuantum((unsigned short) opacity),q); q+=GetPixelChannels(image); @@ -1289,7 +1289,7 @@ static Image *ReadBMPImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelGreen(image,ScaleShortToQuantum((unsigned short) green),q); SetPixelBlue(image,ScaleShortToQuantum((unsigned short) blue),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleShortToQuantum((unsigned short) opacity),q); q+=GetPixelChannels(image); @@ -1594,7 +1594,7 @@ static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image, if (image_info->compression == RLECompression) bmp_info.bits_per_pixel=8; bmp_info.number_colors=1U << bmp_info.bits_per_pixel; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) SetImageStorageClass(image,DirectClass,exception); else if ((size_t) bmp_info.number_colors < image->colors) @@ -1617,9 +1617,9 @@ static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image, */ bmp_info.number_colors=0; bmp_info.bits_per_pixel=(unsigned short) - ((type > 3) && (image->alpha_trait == BlendPixelTrait) ? 32 : 24); + ((type > 3) && (image->alpha_trait != UndefinedPixelTrait) ? 32 : 24); bmp_info.compression=(unsigned int) ((type > 3) && - (image->alpha_trait == BlendPixelTrait) ? BI_BITFIELDS : BI_RGB); + (image->alpha_trait != UndefinedPixelTrait) ? BI_BITFIELDS : BI_RGB); } bytes_per_line=4*((image->columns*bmp_info.bits_per_pixel+31)/32); bmp_info.ba_offset=0; @@ -1630,7 +1630,7 @@ static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image, if (type == 2) bmp_info.size=12; else - if ((type == 3) || ((image->alpha_trait != BlendPixelTrait) && + if ((type == 3) || ((image->alpha_trait == UndefinedPixelTrait) && (have_color_info == MagickFalse))) { type=3; @@ -1918,7 +1918,7 @@ static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image, " Storage class=PseudoClass"); (void) LogMagickEvent(CoderEvent,GetMagickModule(), " Image depth=%.20g",(double) image->depth); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) LogMagickEvent(CoderEvent,GetMagickModule(), " Matte=True"); else @@ -1992,7 +1992,7 @@ static MagickBooleanType WriteBMPImage(const ImageInfo *image_info,Image *image, (void) WriteBlobLSBLong(image,bmp_info.number_colors); (void) WriteBlobLSBLong(image,bmp_info.colors_important); } - if ((type > 3) && ((image->alpha_trait == BlendPixelTrait) || + if ((type > 3) && ((image->alpha_trait != UndefinedPixelTrait) || (have_color_info != MagickFalse))) { /* diff --git a/coders/cmyk.c b/coders/cmyk.c index e06c4d404..325608736 100644 --- a/coders/cmyk.c +++ b/coders/cmyk.c @@ -253,7 +253,7 @@ static Image *ReadCMYKImage(const ImageInfo *image_info, SetPixelBlue(image,GetPixelBlue(canvas_image,p),q); SetPixelBlack(image,GetPixelBlack(canvas_image,p),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,GetPixelAlpha(canvas_image,p),q); p+=GetPixelChannels(canvas_image); q+=GetPixelChannels(image); @@ -309,7 +309,7 @@ static Image *ReadCMYKImage(const ImageInfo *image_info, "UnexpectedEndOfFile",image->filename); break; } - for (i=0; i < (image->alpha_trait == BlendPixelTrait ? 5 : 4); i++) + for (i=0; i < (image->alpha_trait != UndefinedPixelTrait ? 5 : 4); i++) { quantum_type=quantum_types[i]; q=GetAuthenticPixels(canvas_image,0,0,canvas_image->columns,1, @@ -598,7 +598,7 @@ static Image *ReadCMYKImage(const ImageInfo *image_info, if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { for (y=0; y < (ssize_t) image->extract_info.height; y++) { @@ -953,7 +953,7 @@ static Image *ReadCMYKImage(const ImageInfo *image_info, if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { (void) CloseBlob(image); AppendImageFormat("A",image->filename); @@ -1225,7 +1225,7 @@ static MagickBooleanType WriteCMYKImage(const ImageInfo *image_info, if (LocaleCompare(image_info->magick,"CMYKA") == 0) { quantum_type=CMYKAQuantum; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); } quantum_info=AcquireQuantumInfo(image_info,image); diff --git a/coders/dds.c b/coders/dds.c index 7109064a1..4e8ecaf6b 100644 --- a/coders/dds.c +++ b/coders/dds.c @@ -1963,7 +1963,7 @@ static MagickBooleanType ReadDXT1(Image *image, DDSInfo *dds_info, SetPixelGreen(image,ScaleCharToQuantum(colors.g[code]),q); SetPixelBlue(image,ScaleCharToQuantum(colors.b[code]),q); SetPixelAlpha(image,ScaleCharToQuantum(colors.a[code]),q); - if (colors.a[code] && (image->alpha_trait != BlendPixelTrait)) + if (colors.a[code] && (image->alpha_trait == UndefinedPixelTrait)) image->alpha_trait=BlendPixelTrait; /* Correct matte */ q+=GetPixelChannels(image); } @@ -2649,7 +2649,7 @@ static MagickBooleanType WriteDDSImage(const ImageInfo *image_info, pixelFormat=DDPF_FOURCC; compression=FOURCC_DXT5; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) compression=FOURCC_DXT1; if (LocaleCompare(image_info->magick,"dxt1") == 0) @@ -2742,7 +2742,7 @@ static void WriteDDSInfo(Image *image, const size_t pixelFormat, caps=caps | (unsigned int) (DDSCAPS_MIPMAP | DDSCAPS_COMPLEX); } - if (format != DDPF_FOURCC && image->alpha_trait == BlendPixelTrait) + if (format != DDPF_FOURCC && image->alpha_trait != UndefinedPixelTrait) format=format | DDPF_ALPHAPIXELS; (void) WriteBlob(image,4,(unsigned char *) "DDS "); @@ -2776,7 +2776,7 @@ static void WriteDDSInfo(Image *image, const size_t pixelFormat, else { (void) WriteBlobLSBLong(image,0x00); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { (void) WriteBlobLSBLong(image,32); (void) WriteBlobLSBLong(image,0xff0000); @@ -3096,7 +3096,7 @@ static void WriteUncompressed(Image *image, ExceptionInfo *exception) (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelBlue(image,p))); (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelGreen(image,p))); (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelRed(image,p))); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelAlpha(image,p))); p+=GetPixelChannels(image); } diff --git a/coders/debug.c b/coders/debug.c index 979cc2fc3..a897c4744 100644 --- a/coders/debug.c +++ b/coders/debug.c @@ -208,7 +208,7 @@ static MagickBooleanType WriteDEBUGImage(const ImageInfo *image_info, MagickColorspaceOptions,(ssize_t) image->colorspace),MaxTextExtent); LocaleLower(colorspace); image->depth=GetImageQuantumDepth(image,MagickTrue); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) ConcatenateMagickString(colorspace,"a",MaxTextExtent); (void) FormatLocaleString(buffer,MaxTextExtent, "# ImageMagick pixel debugging: %.20g,%.20g,%.20g,%s\n",(double) @@ -238,7 +238,7 @@ static MagickBooleanType WriteDEBUGImage(const ImageInfo *image_info, (double) pixel.black); (void) ConcatenateMagickString(tuple,black,MaxTextExtent); } - if (pixel.alpha_trait == BlendPixelTrait) + if (pixel.alpha_trait != UndefinedPixelTrait) { char alpha[MaxTextExtent]; diff --git a/coders/dib.c b/coders/dib.c index cd310498f..339bf7c43 100644 --- a/coders/dib.c +++ b/coders/dib.c @@ -833,7 +833,7 @@ static Image *ReadDIBImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelBlue(image,ScaleCharToQuantum(*p++),q); SetPixelGreen(image,ScaleCharToQuantum(*p++),q); SetPixelRed(image,ScaleCharToQuantum(*p++),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum(*p++),q); q+=GetPixelChannels(image); } @@ -1193,7 +1193,7 @@ static MagickBooleanType WriteDIBImage(const ImageInfo *image_info,Image *image, *q++=ScaleQuantumToChar(GetPixelBlue(image,p)); *q++=ScaleQuantumToChar(GetPixelGreen(image,p)); *q++=ScaleQuantumToChar(GetPixelRed(image,p)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) *q++=ScaleQuantumToChar(GetPixelAlpha(image,p)); p+=GetPixelChannels(image); } diff --git a/coders/dpx.c b/coders/dpx.c index 8a77f335e..abe8300f7 100644 --- a/coders/dpx.c +++ b/coders/dpx.c @@ -1611,17 +1611,17 @@ static MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image, case YCbCrColorspace: { dpx.image.image_element[i].descriptor=CbYCr444ComponentType; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) dpx.image.image_element[i].descriptor=CbYCrA4444ComponentType; break; } default: { dpx.image.image_element[i].descriptor=RGBComponentType; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) dpx.image.image_element[i].descriptor=RGBAComponentType; if ((image_info->type != TrueColorType) && - (image->alpha_trait != BlendPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait) && (IsImageGray(image,exception) != MagickFalse)) dpx.image.image_element[i].descriptor=LumaComponentType; break; @@ -1941,20 +1941,20 @@ static MagickBooleanType WriteDPXImage(const ImageInfo *image_info,Image *image, SetQuantumPack(quantum_info,dpx.image.image_element[0].packing == 0 ? MagickTrue : MagickFalse); quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=RGBAQuantum; if (image->colorspace == YCbCrColorspace) { quantum_type=CbYCrQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=CbYCrAQuantum; if ((horizontal_factor == 2) || (vertical_factor == 2)) quantum_type=CbYCrYQuantum; } - extent=GetBytesPerRow(image->columns,image->alpha_trait == BlendPixelTrait ? + extent=GetBytesPerRow(image->columns,image->alpha_trait != UndefinedPixelTrait ? 4UL : 3UL,image->depth,MagickTrue); if ((image_info->type != TrueColorType) && - (image->alpha_trait != BlendPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait) && (IsImageGray(image,exception) != MagickFalse)) { quantum_type=GrayQuantum; diff --git a/coders/exr.c b/coders/exr.c index e7ac4f48d..56e26d3ab 100644 --- a/coders/exr.c +++ b/coders/exr.c @@ -457,7 +457,7 @@ static MagickBooleanType WriteEXRImage(const ImageInfo *image_info,Image *image, scanline[x].g=half_quantum; ImfFloatToHalf(QuantumScale*GetPixelBlue(image,p),&half_quantum); scanline[x].b=half_quantum; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) ImfFloatToHalf(1.0,&half_quantum); else ImfFloatToHalf(QuantumScale*GetPixelAlpha(image,p),&half_quantum); diff --git a/coders/fpx.c b/coders/fpx.c index e3b25507c..e9c879573 100644 --- a/coders/fpx.c +++ b/coders/fpx.c @@ -439,7 +439,7 @@ static Image *ReadFPXImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelBlue(image,index,q); } SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum(*a),q); q+=GetPixelChannels(image); r+=red_component->columnStride; @@ -831,7 +831,7 @@ static MagickBooleanType WriteFPXImage(const ImageInfo *image_info,Image *image, tile_width=64; tile_height=64; colorspace.numberOfComponents=3; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) colorspace.numberOfComponents=4; if ((image_info->type != TrueColorType) && (IsImageGray(image,exception) != MagickFalse)) @@ -952,7 +952,7 @@ static MagickBooleanType WriteFPXImage(const ImageInfo *image_info,Image *image, Write image pixelss. */ quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=RGBAQuantum; if (fpx_info.numberOfComponents == 1) quantum_type=GrayQuantum; diff --git a/coders/gradient.c b/coders/gradient.c index 8773d9071..34c6529ee 100644 --- a/coders/gradient.c +++ b/coders/gradient.c @@ -169,8 +169,8 @@ static Image *ReadGRADIENTImage(const ImageInfo *image_info, image=DestroyImageList(image); return((Image *) NULL); } - if ((start_color.alpha_trait != BlendPixelTrait) && - (stop_color.alpha_trait != BlendPixelTrait)) + if ((start_color.alpha_trait == UndefinedPixelTrait) && + (stop_color.alpha_trait == UndefinedPixelTrait)) (void) SetImageAlphaChannel(image,DeactivateAlphaChannel,exception); return(GetFirstImageInList(image)); } diff --git a/coders/icon.c b/coders/icon.c index 2423409ec..9485ede57 100644 --- a/coders/icon.c +++ b/coders/icon.c @@ -1220,7 +1220,7 @@ static MagickBooleanType WriteICONImage(const ImageInfo *image_info, *q++=ScaleQuantumToChar(GetPixelBlue(next,p)); *q++=ScaleQuantumToChar(GetPixelGreen(next,p)); *q++=ScaleQuantumToChar(GetPixelRed(next,p)); - if (next->alpha_trait != BlendPixelTrait) + if (next->alpha_trait == UndefinedPixelTrait) *q++=ScaleQuantumToChar(QuantumRange); else *q++=ScaleQuantumToChar(GetPixelAlpha(next,p)); @@ -1314,7 +1314,7 @@ static MagickBooleanType WriteICONImage(const ImageInfo *image_info, for (x=0; x < (ssize_t) next->columns; x++) { byte<<=1; - if ((next->alpha_trait == BlendPixelTrait) && + if ((next->alpha_trait != UndefinedPixelTrait) && (GetPixelAlpha(next,p) == (Quantum) TransparentAlpha)) byte|=0x01; bit++; diff --git a/coders/jp2.c b/coders/jp2.c index 1d94bc246..c9cab4bc9 100644 --- a/coders/jp2.c +++ b/coders/jp2.c @@ -934,7 +934,7 @@ static MagickBooleanType WriteJP2Image(const ImageInfo *image_info,Image *image, channels=1; jp2_colorspace=OPJ_CLRSPC_GRAY; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channels++; } parameters.tcp_mct=channels == 3 ? 1 : 0; diff --git a/coders/json.c b/coders/json.c index 7984205c6..593c3533f 100644 --- a/coders/json.c +++ b/coders/json.c @@ -653,7 +653,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelLocations(file,image,AlphaPixelChannel,"Alpha", type,max_locations,channel_statistics); channel_statistics=(ChannelStatistics *) RelinquishMagickMemory( @@ -736,7 +736,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) FormatLocaleFile(file," alpha: %.20g-bit\n",(double) channel_statistics[AlphaPixelChannel].depth); scale=1; @@ -781,7 +781,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelStatistics(file,AlphaPixelChannel,"Alpha",1.0/ scale,channel_statistics); if (colorspace != GRAYColorspace) @@ -828,7 +828,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelMoments(file,AlphaPixelChannel,"Alpha", channel_moments); channel_moments=(ChannelMoments *) RelinquishMagickMemory( @@ -837,7 +837,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, if (channel_phash != (ChannelPerceptualHash *) NULL) { (void) FormatLocaleFile(file," \"channelPerceptualHash\": {\n"); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelPerceptualHash(file,AlphaChannel,"alphaAlpha", MagickTrue,channel_phash); (void) PrintChannelPerceptualHash(file,RedChannel,"redHue",MagickTrue, @@ -886,7 +886,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) PrintChannelFeatures(file,AlphaPixelChannel,"Alpha", channel_features); channel_features=(ChannelFeatures *) RelinquishMagickMemory( @@ -898,7 +898,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, (void) FormatLocaleFile(file," Total ink density: %.0f%%\n",100.0* GetImageTotalInkDensity(image,exception)/(double) QuantumRange); x=0; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { register const Quantum *p; @@ -974,7 +974,7 @@ static MagickBooleanType EncodeImageAttributes(Image *image,FILE *file, ConcatenateColorComponent(&pixel,BlackPixelChannel, X11Compliance,tuple); } - if (pixel.alpha_trait == BlendPixelTrait) + if (pixel.alpha_trait != UndefinedPixelTrait) { (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&pixel,AlphaPixelChannel, diff --git a/coders/matte.c b/coders/matte.c index f0e2e186f..edfc84779 100644 --- a/coders/matte.c +++ b/coders/matte.c @@ -175,7 +175,7 @@ static MagickBooleanType WriteMATTEImage(const ImageInfo *image_info, ssize_t y; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) ThrowWriterException(CoderError,"ImageDoesNotHaveAnAlphaChannel"); matte_image=CloneImage(image,image->columns,image->rows,MagickTrue,exception); if (matte_image == (Image *) NULL) diff --git a/coders/miff.c b/coders/miff.c index 61e432116..020d7ce35 100644 --- a/coders/miff.c +++ b/coders/miff.c @@ -243,7 +243,7 @@ static void PushRunlengthPacket(Image *image,const unsigned char *pixels, unsigned char quantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushCharPixel(p,&quantum); pixel->alpha=ScaleCharToQuantum(quantum); @@ -255,7 +255,7 @@ static void PushRunlengthPacket(Image *image,const unsigned char *pixels, unsigned short quantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushShortPixel(MSBEndian,p,&quantum); pixel->alpha=(Quantum) (quantum >> (image->depth- @@ -268,7 +268,7 @@ static void PushRunlengthPacket(Image *image,const unsigned char *pixels, unsigned int quantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushLongPixel(MSBEndian,p,&quantum); pixel->alpha=(Quantum) (quantum >> (image->depth- @@ -306,7 +306,7 @@ static void PushRunlengthPacket(Image *image,const unsigned char *pixels, p=PushCharPixel(p,&quantum); pixel->black=ScaleCharToQuantum(quantum); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushCharPixel(p,&quantum); pixel->alpha=ScaleCharToQuantum(quantum); @@ -334,7 +334,7 @@ static void PushRunlengthPacket(Image *image,const unsigned char *pixels, p=PushShortPixel(MSBEndian,p,&quantum); pixel->black=quantum >> (image->depth-MAGICKCORE_QUANTUM_DEPTH); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushShortPixel(MSBEndian,p,&quantum); pixel->alpha=quantum >> (image->depth-MAGICKCORE_QUANTUM_DEPTH); @@ -362,7 +362,7 @@ static void PushRunlengthPacket(Image *image,const unsigned char *pixels, p=PushLongPixel(MSBEndian,p,&quantum); pixel->black=quantum >> (image->depth-MAGICKCORE_QUANTUM_DEPTH); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushLongPixel(MSBEndian,p,&quantum); pixel->alpha=quantum >> (image->depth-MAGICKCORE_QUANTUM_DEPTH); @@ -1258,7 +1258,7 @@ static Image *ReadMIFFImage(const ImageInfo *image_info, packet_size=(size_t) (3*quantum_info->depth/8); if (IsGrayColorspace(image->colorspace) != MagickFalse) packet_size=quantum_info->depth/8; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) packet_size+=quantum_info->depth/8; if (image->colorspace == CMYKColorspace) packet_size+=quantum_info->depth/8; @@ -1276,24 +1276,24 @@ static Image *ReadMIFFImage(const ImageInfo *image_info, Read image pixels. */ quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=RGBAQuantum; if (image->colorspace == CMYKColorspace) { quantum_type=CMYKQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=CMYKAQuantum; } if (IsGrayColorspace(image->colorspace) != MagickFalse) { quantum_type=GrayQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=GrayAlphaQuantum; } if (image->storage_class == PseudoClass) { quantum_type=IndexQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=IndexAlphaQuantum; } status=MagickTrue; @@ -1479,7 +1479,7 @@ static Image *ReadMIFFImage(const ImageInfo *image_info, if (image->colorspace == CMYKColorspace) SetPixelBlack(image,ClampToQuantum(pixel.black),q); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ClampToQuantum(pixel.alpha),q); q+=GetPixelChannels(image); } @@ -1747,7 +1747,7 @@ static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels, unsigned int value; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { value=ScaleQuantumToLong(ClampToQuantum(pixel->alpha)); pixels=PopLongPixel(MSBEndian,value,pixels); @@ -1759,7 +1759,7 @@ static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels, unsigned short value; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { value=ScaleQuantumToShort(ClampToQuantum(pixel->alpha)); pixels=PopShortPixel(MSBEndian,value,pixels); @@ -1771,7 +1771,7 @@ static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels, unsigned char value; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { value=(unsigned char) ScaleQuantumToChar(ClampToQuantum( pixel->alpha)); @@ -1807,7 +1807,7 @@ static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels, value=ScaleQuantumToLong(ClampToQuantum(pixel->black)); pixels=PopLongPixel(MSBEndian,value,pixels); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { value=ScaleQuantumToLong(ClampToQuantum(pixel->alpha)); pixels=PopLongPixel(MSBEndian,value,pixels); @@ -1833,7 +1833,7 @@ static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels, value=ScaleQuantumToShort(ClampToQuantum(pixel->black)); pixels=PopShortPixel(MSBEndian,value,pixels); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { value=ScaleQuantumToShort(ClampToQuantum(pixel->alpha)); pixels=PopShortPixel(MSBEndian,value,pixels); @@ -1861,7 +1861,7 @@ static unsigned char *PopRunlengthPacket(Image *image,unsigned char *pixels, pixel->black)); pixels=PopCharPixel(value,pixels); } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { value=(unsigned char) ScaleQuantumToChar(ClampToQuantum( pixel->alpha)); @@ -2017,7 +2017,7 @@ static MagickBooleanType WriteMIFFImage(const ImageInfo *image_info, packet_size=(size_t) (3*quantum_info->depth/8); if (IsGrayColorspace(image->colorspace) != MagickFalse) packet_size=(size_t) (quantum_info->depth/8); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) packet_size+=quantum_info->depth/8; if (image->colorspace == CMYKColorspace) packet_size+=quantum_info->depth/8; diff --git a/coders/pcx.c b/coders/pcx.c index 06740b8d9..c06044af0 100644 --- a/coders/pcx.c +++ b/coders/pcx.c @@ -626,7 +626,7 @@ static Image *ReadPCXImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelRed(image,ScaleCharToQuantum(*r++),q); SetPixelGreen(image,ScaleCharToQuantum(*r++),q); SetPixelBlue(image,ScaleCharToQuantum(*r++),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum(*r++),q); } q+=GetPixelChannels(image); @@ -959,7 +959,7 @@ static MagickBooleanType WritePCXImage(const ImageInfo *image_info,Image *image, if ((image->storage_class == DirectClass) || (image->colors > 256)) { pcx_info.planes=3; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) pcx_info.planes++; } pcx_info.bytes_per_line=(unsigned short) (((size_t) image->columns* diff --git a/coders/pdf.c b/coders/pdf.c index 803558500..344c3a0e8 100644 --- a/coders/pdf.c +++ b/coders/pdf.c @@ -1190,7 +1190,7 @@ RestoreMSCWarning if (image_info->compression == JPEG2000Compression) version=(size_t) MagickMax(version,5); for (next=image; next != (Image *) NULL; next=GetNextImageInList(next)) - if (next->alpha_trait == BlendPixelTrait) + if (next->alpha_trait != UndefinedPixelTrait) version=(size_t) MagickMax(version,4); if (LocaleCompare(image_info->magick,"PDFA") == 0) version=(size_t) MagickMax(version,6); @@ -1326,7 +1326,7 @@ RestoreMSCWarning case Group4Compression: { if ((IsImageMonochrome(image,exception) == MagickFalse) || - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) compression=RLECompression; break; } @@ -1659,7 +1659,7 @@ RestoreMSCWarning (compression == FaxCompression) || (compression == Group4Compression) ? 1 : 8); (void) WriteBlobString(image,buffer); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { (void) FormatLocaleString(buffer,MaxTextExtent,"/SMask %.20g 0 R\n", (double) object+7); @@ -2522,7 +2522,7 @@ RestoreMSCWarning object); (void) WriteBlobString(image,buffer); (void) WriteBlobString(image,"<<\n"); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) (void) WriteBlobString(image,">>\n"); else { diff --git a/coders/pict.c b/coders/pict.c index 1c9ea4b6f..8a1a2360a 100644 --- a/coders/pict.c +++ b/coders/pict.c @@ -1104,7 +1104,7 @@ static Image *ReadPICTImage(const ImageInfo *image_info, tile_image->resolution.x=(double) pixmap.horizontal_resolution; tile_image->resolution.y=(double) pixmap.vertical_resolution; tile_image->units=PixelsPerInchResolution; - if (tile_image->alpha_trait == BlendPixelTrait) + if (tile_image->alpha_trait != UndefinedPixelTrait) image->alpha_trait=tile_image->alpha_trait; } if ((code != 0x9a) && (code != 0x9b)) @@ -1222,7 +1222,7 @@ static Image *ReadPICTImage(const ImageInfo *image_info, (unsigned char) ((j & 0x1f) << 3)),q); } else - if (tile_image->alpha_trait != BlendPixelTrait) + if (tile_image->alpha_trait == UndefinedPixelTrait) { if (p > (pixels+extent+2*image->columns)) ThrowReaderException(CorruptImageError, @@ -1676,7 +1676,7 @@ static MagickBooleanType WritePICTImage(const ImageInfo *image_info, storage_class=DirectClass; if (storage_class == DirectClass) { - pixmap.component_count=image->alpha_trait == BlendPixelTrait ? 4 : 3; + pixmap.component_count=image->alpha_trait != UndefinedPixelTrait ? 4 : 3; pixmap.pixel_type=16; pixmap.bits_per_pixel=32; pixmap.pack_type=0x04; @@ -1688,7 +1688,7 @@ static MagickBooleanType WritePICTImage(const ImageInfo *image_info, */ bytes_per_line=image->columns; if (storage_class == DirectClass) - bytes_per_line*=image->alpha_trait == BlendPixelTrait ? 4 : 3; + bytes_per_line*=image->alpha_trait != UndefinedPixelTrait ? 4 : 3; buffer=(unsigned char *) AcquireQuantumMemory(PictInfoSize,sizeof(*buffer)); packed_scanline=(unsigned char *) AcquireQuantumMemory((size_t) (row_bytes+MaxCount),sizeof(*packed_scanline)); @@ -1960,7 +1960,7 @@ static MagickBooleanType WritePICTImage(const ImageInfo *image_info, red=scanline; green=scanline+image->columns; blue=scanline+2*image->columns; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { opacity=scanline; red=scanline+image->columns; @@ -1972,7 +1972,7 @@ static MagickBooleanType WritePICTImage(const ImageInfo *image_info, *red++=ScaleQuantumToChar(GetPixelRed(image,p)); *green++=ScaleQuantumToChar(GetPixelGreen(image,p)); *blue++=ScaleQuantumToChar(GetPixelBlue(image,p)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) *opacity++=ScaleQuantumToChar((Quantum) (GetPixelAlpha(image,p))); p+=GetPixelChannels(image); } diff --git a/coders/png.c b/coders/png.c index 0ca008817..33b960f33 100644 --- a/coders/png.c +++ b/coders/png.c @@ -3776,7 +3776,7 @@ static Image *ReadOnePNGImage(MngInfo *mng_info, BlendPixelTrait : UndefinedPixelTrait; #if 0 /* I'm not sure what's wrong here but it does not work. */ - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { if (ping_color_type == PNG_COLOR_TYPE_GRAY_ALPHA) (void) SetImageType(image,GrayscaleMatteType,exception); @@ -4701,7 +4701,7 @@ static Image *ReadOneJNGImage(MngInfo *mng_info, exception); q=GetAuthenticPixels(image,0,y,image->columns,1,exception); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) for (x=(ssize_t) image->columns; x != 0; x--) { SetPixelAlpha(image,GetPixelRed(jng_image,s),q); @@ -6549,7 +6549,7 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) #define QM Quantum #endif - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) SetImageBackgroundColor(large_image,exception); else @@ -6688,7 +6688,7 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) ((ssize_t) (m*2)) +GetPixelBlue(image,pixels)))),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(large_image, ((QM) (((ssize_t) (2*i*(GetPixelAlpha(image,n) -GetPixelAlpha(image,pixels)+m)) @@ -6845,7 +6845,7 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) -GetPixelBlue(image,pixels))+m) /((ssize_t) (m*2))+ GetPixelBlue(image,pixels)),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,(QM) ((2*i*( GetPixelAlpha(image,n) -GetPixelAlpha(image,pixels))+m) @@ -8385,7 +8385,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, if (mng_info->write_png_colortype && (mng_info->write_png_colortype > 4 || (mng_info->write_png_depth >= 8 && mng_info->write_png_colortype < 4 && - image->alpha_trait != BlendPixelTrait))) + image->alpha_trait == UndefinedPixelTrait))) { /* Avoid the expensive BUILD_PALETTE operation if we're sure that we * are not going to need the result. @@ -8394,7 +8394,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, mng_info->write_png_colortype == 5) ping_have_color=MagickFalse; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { number_transparent = 2; number_semitransparent = 1; @@ -8530,7 +8530,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, for (x=0; x < (ssize_t) image->columns; x++) { - if (image->alpha_trait != BlendPixelTrait || + if (image->alpha_trait == UndefinedPixelTrait || GetPixelAlpha(image,q) == OpaqueAlpha) { if (number_opaque < 259) @@ -8834,7 +8834,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, { for (i=0; i< (ssize_t) image_colors; i++) { - if ((image->alpha_trait != BlendPixelTrait || + if ((image->alpha_trait == UndefinedPixelTrait || image->colormap[i].alpha == GetPixelAlpha(image,q)) && image->colormap[i].red == GetPixelRed(image,q) && image->colormap[i].green == GetPixelGreen(image,q) && @@ -9301,7 +9301,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, quantum_info = (QuantumInfo *) NULL; number_colors=0; image_colors=(int) image->colors; - image_matte=image->alpha_trait == BlendPixelTrait ? MagickTrue : MagickFalse; + image_matte=image->alpha_trait != UndefinedPixelTrait ? MagickTrue : MagickFalse; if (mng_info->write_png_colortype < 5) mng_info->IsPalette=image->storage_class == PseudoClass && @@ -9750,7 +9750,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, if (ping_color_type == PNG_COLOR_TYPE_GRAY) { - if (image->alpha_trait != BlendPixelTrait && ping_have_non_bw == MagickFalse) + if (image->alpha_trait == UndefinedPixelTrait && ping_have_non_bw == MagickFalse) ping_bit_depth=1; } @@ -10426,7 +10426,7 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, "Cannot write image with defined png:bit-depth or png:color-type."); } - if (image_matte != MagickFalse && image->alpha_trait != BlendPixelTrait) + if (image_matte != MagickFalse && image->alpha_trait == UndefinedPixelTrait) { /* Add an opaque matte channel */ image->alpha_trait = BlendPixelTrait; @@ -11613,7 +11613,7 @@ static MagickBooleanType WritePNGImage(const ImageInfo *image_info, mng_info->write_png_depth = 8; image->depth = 8; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) SetImageType(image,TrueColorMatteType,exception); else @@ -11639,7 +11639,7 @@ static MagickBooleanType WritePNGImage(const ImageInfo *image_info, mng_info->write_png_depth = 16; image->depth = 16; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) SetImageType(image,TrueColorMatteType,exception); else @@ -12184,7 +12184,7 @@ static MagickBooleanType WriteOneJNGImage(MngInfo *mng_info, status=MagickTrue; transparent=image_info->type==GrayscaleMatteType || - image_info->type==TrueColorMatteType || image->alpha_trait == BlendPixelTrait; + image_info->type==TrueColorMatteType || image->alpha_trait != UndefinedPixelTrait; jng_alpha_sample_depth = 0; @@ -12896,7 +12896,7 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image, " Scene: %.20g\n, Image depth: %.20g", (double) scene++, (double) p->depth); - if (p->alpha_trait == BlendPixelTrait) + if (p->alpha_trait != UndefinedPixelTrait) (void) LogMagickEvent(CoderEvent,GetMagickModule(), " Matte: True"); @@ -12990,11 +12990,11 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image, if (next_image->page.x || next_image->page.y) need_defi=MagickTrue; - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) need_matte=MagickTrue; if ((int) next_image->dispose >= BackgroundDispose) - if ((next_image->alpha_trait == BlendPixelTrait) || + if ((next_image->alpha_trait != UndefinedPixelTrait) || next_image->page.x || next_image->page.y || ((next_image->columns < mng_info->page.width) && (next_image->rows < mng_info->page.height))) @@ -13014,7 +13014,7 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image, /* check for global palette possibility. */ - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) need_local_plte=MagickTrue; if (need_local_plte == 0) @@ -13367,7 +13367,7 @@ static MagickBooleanType WriteMNGImage(const ImageInfo *image_info,Image *image, Write MNG BACK chunk and global bKGD chunk, if the image is transparent or does not cover the entire frame. */ - if (write_mng && ((image->alpha_trait == BlendPixelTrait) || + if (write_mng && ((image->alpha_trait != UndefinedPixelTrait) || image->page.x > 0 || image->page.y > 0 || (image->page.width && (image->page.width+image->page.x < mng_info->page.width)) || (image->page.height && (image->page.height+image->page.y diff --git a/coders/pnm.c b/coders/pnm.c index 35b40efc6..b7e325438 100644 --- a/coders/pnm.c +++ b/coders/pnm.c @@ -938,7 +938,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) channels++; if (image->depth <= 8) extent=channels*image->columns; @@ -1028,7 +1028,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushCharPixel(p,&pixel); SetPixelGray(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushCharPixel(p,&pixel); if (image->depth != 1) @@ -1053,7 +1053,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelGray(image,ScaleAnyToQuantum(pixel,max_value), q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushShortPixel(MSBEndian,p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel, @@ -1068,7 +1068,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushLongPixel(MSBEndian,p,&pixel); SetPixelGray(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushLongPixel(MSBEndian,p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel,max_value),q); @@ -1099,7 +1099,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushCharPixel(p,&pixel); SetPixelBlack(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushCharPixel(p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel, @@ -1125,7 +1125,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushShortPixel(MSBEndian,p,&pixel); SetPixelBlack(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushShortPixel(MSBEndian,p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel, @@ -1145,7 +1145,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushLongPixel(MSBEndian,p,&pixel); SetPixelBlack(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushLongPixel(MSBEndian,p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel,max_value),q); @@ -1173,7 +1173,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushCharPixel(p,&pixel); SetPixelBlue(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushCharPixel(p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel,max_value),q); @@ -1196,7 +1196,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushShortPixel(MSBEndian,p,&pixel); SetPixelBlue(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushShortPixel(MSBEndian,p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel, @@ -1215,7 +1215,7 @@ static Image *ReadPNMImage(const ImageInfo *image_info,ExceptionInfo *exception) p=PushLongPixel(MSBEndian,p,&pixel); SetPixelBlue(image,ScaleAnyToQuantum(pixel,max_value),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { p=PushLongPixel(MSBEndian,p,&pixel); SetPixelAlpha(image,ScaleAnyToQuantum(pixel,max_value),q); @@ -1681,14 +1681,14 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, default: { quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=RGBAQuantum; packet_size=3; (void) CopyMagickString(type,"RGB",MaxTextExtent); break; } } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { packet_size++; (void) ConcatenateMagickString(type,"_ALPHA",MaxTextExtent); @@ -2190,7 +2190,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(ClampToQuantum(GetPixelLuma( image,p)),max_value); q=PopCharPixel((unsigned char) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=(unsigned char) ScaleQuantumToAny( GetPixelAlpha(image,p),max_value); @@ -2207,7 +2207,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(ClampToQuantum(GetPixelLuma( image,p)),max_value); q=PopShortPixel(MSBEndian,(unsigned short) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=(unsigned char) ScaleQuantumToAny( GetPixelAlpha(image,p),max_value); @@ -2222,7 +2222,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(ClampToQuantum(GetPixelLuma(image, p)),max_value); q=PopLongPixel(MSBEndian,(unsigned int) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=(unsigned char) ScaleQuantumToAny( GetPixelAlpha(image,p),max_value); @@ -2250,7 +2250,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(GetPixelBlack(image,p), max_value); q=PopCharPixel((unsigned char) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=ScaleQuantumToAny(GetPixelAlpha(image,p), max_value); @@ -2275,7 +2275,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(GetPixelBlack(image,p), max_value); q=PopShortPixel(MSBEndian,(unsigned short) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=ScaleQuantumToAny(GetPixelAlpha(image,p), max_value); @@ -2295,7 +2295,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, q=PopLongPixel(MSBEndian,(unsigned int) pixel,q); pixel=ScaleQuantumToAny(GetPixelBlack(image,p),max_value); q=PopLongPixel(MSBEndian,(unsigned int) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=ScaleQuantumToAny(GetPixelAlpha(image,p), max_value); @@ -2319,7 +2319,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(GetPixelBlue(image,p), max_value); q=PopCharPixel((unsigned char) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=ScaleQuantumToAny(GetPixelAlpha(image,p), max_value); @@ -2341,7 +2341,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, pixel=ScaleQuantumToAny(GetPixelBlue(image,p), max_value); q=PopShortPixel(MSBEndian,(unsigned short) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=ScaleQuantumToAny(GetPixelAlpha(image,p), max_value); @@ -2359,7 +2359,7 @@ static MagickBooleanType WritePNMImage(const ImageInfo *image_info,Image *image, q=PopLongPixel(MSBEndian,(unsigned int) pixel,q); pixel=ScaleQuantumToAny(GetPixelBlue(image,p),max_value); q=PopLongPixel(MSBEndian,(unsigned int) pixel,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { pixel=ScaleQuantumToAny(GetPixelAlpha(image,p), max_value); diff --git a/coders/ps.c b/coders/ps.c index d94449569..d8c54a65f 100644 --- a/coders/ps.c +++ b/coders/ps.c @@ -1164,7 +1164,7 @@ static MagickBooleanType WritePSImage(const ImageInfo *image_info,Image *image, { #define WriteRunlengthPacket(image,pixel,length,p) \ { \ - if ((image->alpha_trait == BlendPixelTrait) && \ + if ((image->alpha_trait != UndefinedPixelTrait) && \ (GetPixelAlpha(image,p) == (Quantum) TransparentAlpha)) \ { \ q=PopHexPixel(hex_digits,0xff,q); \ @@ -2002,7 +2002,7 @@ RestoreMSCWarning } else if ((image->storage_class == DirectClass) || - (image->colors > 256) || (image->alpha_trait == BlendPixelTrait)) + (image->colors > 256) || (image->alpha_trait != UndefinedPixelTrait)) { /* Dump DirectClass image. @@ -2087,7 +2087,7 @@ RestoreMSCWarning break; for (x=0; x < (ssize_t) image->columns; x++) { - if ((image->alpha_trait == BlendPixelTrait) && + if ((image->alpha_trait != UndefinedPixelTrait) && (GetPixelAlpha(image,p) == (Quantum) TransparentAlpha)) { q=PopHexPixel(hex_digits,0xff,q); diff --git a/coders/ps2.c b/coders/ps2.c index 623af8c17..8e4e2cc39 100644 --- a/coders/ps2.c +++ b/coders/ps2.c @@ -849,7 +849,7 @@ static MagickBooleanType WritePS2Image(const ImageInfo *image_info,Image *image, } else if ((image->storage_class == DirectClass) || (image->colors > 256) || - (compression == JPEGCompression) || (image->alpha_trait == BlendPixelTrait)) + (compression == JPEGCompression) || (image->alpha_trait != UndefinedPixelTrait)) { (void) FormatLocaleString(buffer,MaxTextExtent,"%.20g %.20g\n0\n%d\n", (double) image->columns,(double) image->rows,(int) @@ -899,7 +899,7 @@ static MagickBooleanType WritePS2Image(const ImageInfo *image_info,Image *image, break; for (x=0; x < (ssize_t) image->columns; x++) { - if ((image->alpha_trait == BlendPixelTrait) && + if ((image->alpha_trait != UndefinedPixelTrait) && (GetPixelAlpha(image,p) == (Quantum) TransparentAlpha)) { *q++=ScaleQuantumToChar(QuantumRange); @@ -953,7 +953,7 @@ static MagickBooleanType WritePS2Image(const ImageInfo *image_info,Image *image, break; for (x=0; x < (ssize_t) image->columns; x++) { - if ((image->alpha_trait == BlendPixelTrait) && + if ((image->alpha_trait != UndefinedPixelTrait) && (GetPixelAlpha(image,p) == (Quantum) TransparentAlpha)) { Ascii85Encode(image,ScaleQuantumToChar((Quantum) diff --git a/coders/ps3.c b/coders/ps3.c index 0ed724474..e6fb0f42c 100644 --- a/coders/ps3.c +++ b/coders/ps3.c @@ -466,7 +466,7 @@ static MagickBooleanType WritePS3MaskImage(const ImageInfo *image_info, assert(image->signature == MagickSignature); if (image->debug != MagickFalse) (void) LogMagickEvent(TraceEvent,GetMagickModule(),"%s",image->filename); - assert(image->alpha_trait == BlendPixelTrait); + assert(image->alpha_trait != UndefinedPixelTrait); status=MagickTrue; /* Note BeginData DSC comment for update later. @@ -894,7 +894,7 @@ static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image, case Group4Compression: { if ((IsImageMonochrome(image,exception) == MagickFalse) || - (image->alpha_trait == BlendPixelTrait)) + (image->alpha_trait != UndefinedPixelTrait)) compression=RLECompression; break; } @@ -1166,7 +1166,7 @@ static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image, /* Image mask. */ - if ((image->alpha_trait == BlendPixelTrait) && + if ((image->alpha_trait != UndefinedPixelTrait) && (WritePS3MaskImage(image_info,image,compression,exception) == MagickFalse)) { (void) CloseBlob(image); @@ -1240,7 +1240,7 @@ static MagickBooleanType WritePS3Image(const ImageInfo *image_info,Image *image, /* Masked image? */ - (void) WriteBlobString(image,image->alpha_trait == BlendPixelTrait ? + (void) WriteBlobString(image,image->alpha_trait != UndefinedPixelTrait ? "true\n" : "false\n"); /* Render with imagemask operator? diff --git a/coders/psd.c b/coders/psd.c index 6b37a103c..f62f232a2 100644 --- a/coders/psd.c +++ b/coders/psd.c @@ -750,7 +750,7 @@ static MagickStatusType ReadPSDChannelPixels(Image *image, if (image->colorspace == CMYKColorspace) SetPixelBlack(image,pixel,q); else - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelOpacity(image,pixel,q); break; } @@ -759,7 +759,7 @@ static MagickStatusType ReadPSDChannelPixels(Image *image, if ((IssRGBCompatibleColorspace(image->colorspace) != MagickFalse) && (channels > 3)) break; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelOpacity(image,pixel,q); break; } @@ -2190,14 +2190,14 @@ static MagickBooleanType WriteImageChannels(const PSDInfo *psd_info, (void) WriteBlobMSBShort(image,1); WritePackbitsLength(psd_info,image_info,image,next_image, compact_pixels,GrayQuantum,exception); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) WritePackbitsLength(psd_info,image_info,image,next_image, compact_pixels,AlphaQuantum,exception); } WriteOneChannel(psd_info,image_info,image,next_image,compact_pixels, GrayQuantum,(i++ == 0) || (separate != MagickFalse) ? MagickTrue : MagickFalse,exception); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) WriteOneChannel(psd_info,image_info,image,next_image,compact_pixels, AlphaQuantum,(i++ == 0) || (separate != MagickFalse) ? MagickTrue : MagickFalse,exception); @@ -2214,14 +2214,14 @@ static MagickBooleanType WriteImageChannels(const PSDInfo *psd_info, (void) WriteBlobMSBShort(image,1); WritePackbitsLength(psd_info,image_info,image,next_image, compact_pixels,IndexQuantum,exception); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) WritePackbitsLength(psd_info,image_info,image,next_image, compact_pixels,AlphaQuantum,exception); } WriteOneChannel(psd_info,image_info,image,next_image,compact_pixels, IndexQuantum,(i++ == 0) || (separate != MagickFalse) ? MagickTrue : MagickFalse,exception); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) WriteOneChannel(psd_info,image_info,image,next_image,compact_pixels, AlphaQuantum,(i++ == 0) || (separate != MagickFalse) ? MagickTrue : MagickFalse,exception); @@ -2246,7 +2246,7 @@ static MagickBooleanType WriteImageChannels(const PSDInfo *psd_info, if (next_image->colorspace == CMYKColorspace) WritePackbitsLength(psd_info,image_info,image,next_image, compact_pixels,BlackQuantum,exception); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) WritePackbitsLength(psd_info,image_info,image,next_image, compact_pixels,AlphaQuantum,exception); } @@ -2268,7 +2268,7 @@ static MagickBooleanType WriteImageChannels(const PSDInfo *psd_info, BlackQuantum,(i++ == 0) || (separate != MagickFalse) ? MagickTrue : MagickFalse,exception); (void) SetImageProgress(image,SaveImagesTag,4,6); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) WriteOneChannel(psd_info,image_info,image,next_image,compact_pixels, AlphaQuantum,(i++ == 0) || (separate != MagickFalse) ? MagickTrue : MagickFalse,exception); @@ -2483,7 +2483,7 @@ static MagickBooleanType WritePSDImage(const ImageInfo *image_info,Image *image, if (status == MagickFalse) return(status); packet_size=(size_t) (image->depth > 8 ? 6 : 3); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) packet_size+=image->depth > 8 ? 2 : 1; psd_info.version=1; if ((LocaleCompare(image_info->magick,"PSB") == 0) || @@ -2494,16 +2494,16 @@ static MagickBooleanType WritePSDImage(const ImageInfo *image_info,Image *image, for (i=1; i <= 6; i++) (void) WriteBlobByte(image, 0); /* 6 bytes of reserved */ if (IsImageGray(image,exception) != MagickFalse) - num_channels=(image->alpha_trait == BlendPixelTrait ? 2UL : 1UL); + num_channels=(image->alpha_trait != UndefinedPixelTrait ? 2UL : 1UL); else if (image->storage_class == PseudoClass) - num_channels=(image->alpha_trait == BlendPixelTrait ? 2UL : 1UL); + num_channels=(image->alpha_trait != UndefinedPixelTrait ? 2UL : 1UL); else { if (image->colorspace != CMYKColorspace) - num_channels=(image->alpha_trait == BlendPixelTrait ? 4UL : 3UL); + num_channels=(image->alpha_trait != UndefinedPixelTrait ? 4UL : 3UL); else - num_channels=(image->alpha_trait == BlendPixelTrait ? 5UL : 4UL); + num_channels=(image->alpha_trait != UndefinedPixelTrait ? 5UL : 4UL); } (void) WriteBlobMSBShort(image,(unsigned short) num_channels); (void) WriteBlobMSBLong(image,(unsigned int) image->rows); @@ -2605,22 +2605,22 @@ static MagickBooleanType WritePSDImage(const ImageInfo *image_info,Image *image, layer_count=0; layer_info_size=2; base_image=GetNextImageInList(image); - if ((image->alpha_trait == BlendPixelTrait) && (base_image == (Image *) NULL)) + if ((image->alpha_trait != UndefinedPixelTrait) && (base_image == (Image *) NULL)) base_image=image; next_image=base_image; while ( next_image != NULL ) { packet_size=next_image->depth > 8 ? 2UL : 1UL; if (IsImageGray(next_image,exception) != MagickFalse) - num_channels=next_image->alpha_trait == BlendPixelTrait ? 2UL : 1UL; + num_channels=next_image->alpha_trait != UndefinedPixelTrait ? 2UL : 1UL; else if (next_image->storage_class == PseudoClass) - num_channels=next_image->alpha_trait == BlendPixelTrait ? 2UL : 1UL; + num_channels=next_image->alpha_trait != UndefinedPixelTrait ? 2UL : 1UL; else if (next_image->colorspace != CMYKColorspace) - num_channels=next_image->alpha_trait == BlendPixelTrait ? 4UL : 3UL; + num_channels=next_image->alpha_trait != UndefinedPixelTrait ? 4UL : 3UL; else - num_channels=next_image->alpha_trait == BlendPixelTrait ? 5UL : 4UL; + num_channels=next_image->alpha_trait != UndefinedPixelTrait ? 5UL : 4UL; channelLength=(size_t) (next_image->columns*next_image->rows*packet_size+2); layer_info_size+=(size_t) (4*4+2+num_channels*6+(psd_info.version == 1 ? 8 : 16)+4*1+4+num_channels*channelLength); @@ -2652,7 +2652,7 @@ static MagickBooleanType WritePSDImage(const ImageInfo *image_info,Image *image, else rounded_layer_info_size=layer_info_size; (void) SetPSDSize(&psd_info,image,rounded_layer_info_size); - if (base_image->alpha_trait == BlendPixelTrait) + if (base_image->alpha_trait != UndefinedPixelTrait) (void) WriteBlobMSBShort(image,-(unsigned short) layer_count); else (void) WriteBlobMSBShort(image,(unsigned short) layer_count); @@ -2674,10 +2674,10 @@ static MagickBooleanType WritePSDImage(const ImageInfo *image_info,Image *image, (next_image->storage_class == PseudoClass)) { (void) WriteBlobMSBShort(image,(unsigned short) - (next_image->alpha_trait == BlendPixelTrait ? 2 : 1)); + (next_image->alpha_trait != UndefinedPixelTrait ? 2 : 1)); (void) WriteBlobMSBShort(image,0); (void) SetPSDSize(&psd_info,image,channel_size); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) { (void) WriteBlobMSBShort(image,(unsigned short) -1); (void) SetPSDSize(&psd_info,image,channel_size); @@ -2687,14 +2687,14 @@ static MagickBooleanType WritePSDImage(const ImageInfo *image_info,Image *image, if (next_image->colorspace != CMYKColorspace) { (void) WriteBlobMSBShort(image,(unsigned short) - (next_image->alpha_trait == BlendPixelTrait ? 4 : 3)); + (next_image->alpha_trait != UndefinedPixelTrait ? 4 : 3)); (void) WriteBlobMSBShort(image,0); (void) SetPSDSize(&psd_info,image,channel_size); (void) WriteBlobMSBShort(image,1); (void) SetPSDSize(&psd_info,image,channel_size); (void) WriteBlobMSBShort(image,2); (void) SetPSDSize(&psd_info,image,channel_size); - if (next_image->alpha_trait == BlendPixelTrait) + if (next_image->alpha_trait != UndefinedPixelTrait) { (void) WriteBlobMSBShort(image,(unsigned short) -1); (void) SetPSDSize(&psd_info,image,channel_size); diff --git a/coders/rgb.c b/coders/rgb.c index 0b929ba47..91de5b417 100644 --- a/coders/rgb.c +++ b/coders/rgb.c @@ -255,7 +255,7 @@ static Image *ReadRGBImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelGreen(image,GetPixelGreen(canvas_image,p),q); SetPixelBlue(image,GetPixelBlue(canvas_image,p),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,GetPixelAlpha(canvas_image,p),q); p+=GetPixelChannels(canvas_image); q+=GetPixelChannels(image); @@ -312,7 +312,7 @@ static Image *ReadRGBImage(const ImageInfo *image_info,ExceptionInfo *exception) "UnexpectedEndOfFile",image->filename); break; } - for (i=0; i < (ssize_t) (image->alpha_trait == BlendPixelTrait ? 4 : 3); i++) + for (i=0; i < (ssize_t) (image->alpha_trait != UndefinedPixelTrait ? 4 : 3); i++) { quantum_type=quantum_types[i]; q=GetAuthenticPixels(canvas_image,0,0,canvas_image->columns,1, @@ -551,7 +551,7 @@ static Image *ReadRGBImage(const ImageInfo *image_info,ExceptionInfo *exception) if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { for (y=0; y < (ssize_t) image->extract_info.height; y++) { @@ -831,7 +831,7 @@ static Image *ReadRGBImage(const ImageInfo *image_info,ExceptionInfo *exception) if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { (void) CloseBlob(image); AppendImageFormat("A",image->filename); @@ -1111,7 +1111,7 @@ static MagickBooleanType WriteRGBImage(const ImageInfo *image_info, */ (void) TransformImageColorspace(image,sRGBColorspace,exception); if ((LocaleCompare(image_info->magick,"RGBA") == 0) && - (image->alpha_trait != BlendPixelTrait)) + (image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); quantum_info=AcquireQuantumInfo(image_info,image); if (quantum_info == (QuantumInfo *) NULL) diff --git a/coders/rle.c b/coders/rle.c index 24b44f00e..b1fd777ad 100644 --- a/coders/rle.c +++ b/coders/rle.c @@ -293,7 +293,7 @@ static Image *ReadRLEImage(const ImageInfo *image_info,ExceptionInfo *exception) /* Allocate RLE pixels. */ - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) number_planes++; number_pixels=(MagickSizeType) image->columns*image->rows; if ((number_pixels*number_planes) != (size_t) (number_pixels*number_planes)) @@ -314,7 +314,7 @@ static Image *ReadRLEImage(const ImageInfo *image_info,ExceptionInfo *exception) p=pixels; for (i=0; i < (ssize_t) number_pixels; i++) { - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) for (j=0; j < (ssize_t) number_planes; j++) *p++=background_color[j]; else @@ -452,7 +452,7 @@ static Image *ReadRLEImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelRed(image,ScaleCharToQuantum(*p++),q); SetPixelGreen(image,ScaleCharToQuantum(*p++),q); SetPixelBlue(image,ScaleCharToQuantum(*p++),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum(*p++),q); q+=GetPixelChannels(image); } @@ -497,7 +497,7 @@ static Image *ReadRLEImage(const ImageInfo *image_info,ExceptionInfo *exception) p++; } p=pixels; - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) { /* Convert raster image to PseudoClass pixel packets. diff --git a/coders/sgi.c b/coders/sgi.c index 8ece34cd5..c42f73fdc 100644 --- a/coders/sgi.c +++ b/coders/sgi.c @@ -575,7 +575,7 @@ static Image *ReadSGIImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelBlue(image,ScaleShortToQuantum((unsigned short) ((*(p+4) << 8) | (*(p+5)))),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleShortToQuantum((unsigned short) ((*(p+6) << 8) | (*(p+7)))),q); p+=8; @@ -605,7 +605,7 @@ static Image *ReadSGIImage(const ImageInfo *image_info,ExceptionInfo *exception) SetPixelGreen(image,ScaleCharToQuantum(*(p+1)),q); SetPixelBlue(image,ScaleCharToQuantum(*(p+2)),q); SetPixelAlpha(image,OpaqueAlpha,q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum(*(p+3)),q); p+=4; q+=GetPixelChannels(image); @@ -943,7 +943,7 @@ static MagickBooleanType WriteSGIImage(const ImageInfo *image_info,Image *image, iris_info.dimension=3; iris_info.columns=(unsigned short) image->columns; iris_info.rows=(unsigned short) image->rows; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) iris_info.depth=4; else { diff --git a/coders/sixel.c b/coders/sixel.c index a0225c6a9..50d3d743b 100644 --- a/coders/sixel.c +++ b/coders/sixel.c @@ -1211,7 +1211,7 @@ static MagickBooleanType WriteSIXELImage(const ImageInfo *image_info,Image *imag if (IssRGBCompatibleColorspace(image->colorspace) == MagickFalse) (void) TransformImageColorspace(image,sRGBColorspace,exception); opacity=(-1); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) { if ((image->storage_class == DirectClass) || (image->colors > 256)) (void) SetImageType(image,PaletteType,exception); diff --git a/coders/sun.c b/coders/sun.c index 4cdc1ea4d..52d7aec75 100644 --- a/coders/sun.c +++ b/coders/sun.c @@ -511,7 +511,7 @@ static Image *ReadSUNImage(const ImageInfo *image_info,ExceptionInfo *exception) bytes_per_pixel; bytes_per_pixel=3; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) bytes_per_pixel++; length=image->rows*((bytes_per_line*image->columns)+ image->columns % 2); @@ -526,7 +526,7 @@ static Image *ReadSUNImage(const ImageInfo *image_info,ExceptionInfo *exception) break; for (x=0; x < (ssize_t) image->columns; x++) { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum(*p++),q); if (sun_info.type == RT_STANDARD) { @@ -781,9 +781,9 @@ static MagickBooleanType WriteSUNImage(const ImageInfo *image_info,Image *image, /* Full color SUN raster. */ - sun_info.depth=(unsigned int) image->alpha_trait == BlendPixelTrait ? + sun_info.depth=(unsigned int) image->alpha_trait != UndefinedPixelTrait ? 32U : 24U; - sun_info.length=(unsigned int) ((image->alpha_trait == BlendPixelTrait ? + sun_info.length=(unsigned int) ((image->alpha_trait != UndefinedPixelTrait ? 4 : 3)*number_pixels); sun_info.length+=sun_info.length & 0x01 ? (unsigned int) image->rows : 0; @@ -844,7 +844,7 @@ static MagickBooleanType WriteSUNImage(const ImageInfo *image_info,Image *image, Allocate memory for pixels. */ bytes_per_pixel=3; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) bytes_per_pixel++; length=image->columns; pixels=(unsigned char *) AcquireQuantumMemory(length,4*sizeof(*pixels)); @@ -861,7 +861,7 @@ static MagickBooleanType WriteSUNImage(const ImageInfo *image_info,Image *image, q=pixels; for (x=0; x < (ssize_t) image->columns; x++) { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) *q++=ScaleQuantumToChar(GetPixelAlpha(image,p)); *q++=ScaleQuantumToChar(GetPixelRed(image,p)); *q++=ScaleQuantumToChar(GetPixelGreen(image,p)); diff --git a/coders/tga.c b/coders/tga.c index 308cfb267..22a509e39 100644 --- a/coders/tga.c +++ b/coders/tga.c @@ -463,7 +463,7 @@ static Image *ReadTGAImage(const ImageInfo *image_info, pixel.green=(MagickRealType) ScaleAnyToQuantum((1UL*(k & 0x03) << 3)+(1UL*(j & 0xe0) >> 5),range); pixel.blue=(MagickRealType) ScaleAnyToQuantum(1UL*(j & 0x1f),range); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) pixel.alpha=(MagickRealType) ((k & 0x80) == 0 ? (Quantum) OpaqueAlpha : (Quantum) TransparentAlpha); if (image->storage_class == PseudoClass) @@ -503,7 +503,7 @@ static Image *ReadTGAImage(const ImageInfo *image_info, SetPixelRed(image,ClampToQuantum(pixel.red),q); SetPixelGreen(image,ClampToQuantum(pixel.green),q); SetPixelBlue(image,ClampToQuantum(pixel.blue),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ClampToQuantum(pixel.alpha),q); q+=GetPixelChannels(image); } @@ -673,7 +673,7 @@ static inline void WriteTGAPixel(Image *image,TGAImageType image_type, (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelGreen(image, p))); (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelRed(image,p))); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) WriteBlobByte(image,ScaleQuantumToChar(GetPixelAlpha(image, p))); } @@ -754,7 +754,7 @@ static MagickBooleanType WriteTGAImage(const ImageInfo *image_info,Image *image, if ((image_info->type != TrueColorType) && (image_info->type != TrueColorMatteType) && (image_info->type != PaletteType) && - (image->alpha_trait != BlendPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait) && (IsImageGray(image,exception) != MagickFalse)) tga_info.image_type=compression == RLECompression ? TGARLEMonochrome : TGAMonochrome; @@ -767,7 +767,7 @@ static MagickBooleanType WriteTGAImage(const ImageInfo *image_info,Image *image, tga_info.image_type=compression == RLECompression ? TGARLERGB : TGARGB; tga_info.bits_per_pixel=24; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { tga_info.bits_per_pixel=32; tga_info.attributes=8; /* # of alpha bits */ @@ -865,7 +865,7 @@ static MagickBooleanType WriteTGAImage(const ImageInfo *image_info,Image *image, (GetPixelRed(image,p+(i*channels)) != GetPixelRed(image,p+((i-1)*channels)))) break; - if ((image->alpha_trait == BlendPixelTrait) && + if ((image->alpha_trait != UndefinedPixelTrait) && (GetPixelAlpha(image,p+(i*channels)) != GetPixelAlpha(image,p+(i-1)*channels))) break; diff --git a/coders/thumbnail.c b/coders/thumbnail.c index 58e7e11a2..9fb99929e 100644 --- a/coders/thumbnail.c +++ b/coders/thumbnail.c @@ -205,7 +205,7 @@ static MagickBooleanType WriteTHUMBNAILImage(const ImageInfo *image_info, length,exception); if (thumbnail_image == (Image *) NULL) return(MagickFalse); - (void) SetImageType(thumbnail_image,thumbnail_image->alpha_trait != BlendPixelTrait ? + (void) SetImageType(thumbnail_image,thumbnail_image->alpha_trait == UndefinedPixelTrait ? TrueColorType : TrueColorMatteType,exception); (void) CopyMagickString(thumbnail_image->filename,image->filename, MaxTextExtent); diff --git a/coders/tiff.c b/coders/tiff.c index 80834102d..1a4d57fa8 100644 --- a/coders/tiff.c +++ b/coders/tiff.c @@ -1496,7 +1496,7 @@ RestoreMSCWarning } quantum_type=IndexQuantum; pad=(size_t) MagickMax((size_t) samples_per_pixel-1,0); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { if (image->storage_class != PseudoClass) { @@ -1558,7 +1558,7 @@ RestoreMSCWarning */ pad=(size_t) MagickMax((size_t) samples_per_pixel-3,0); quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { quantum_type=RGBAQuantum; pad=(size_t) MagickMax((size_t) samples_per_pixel-4,0); @@ -1567,7 +1567,7 @@ RestoreMSCWarning { pad=(size_t) MagickMax((size_t) samples_per_pixel-4,0); quantum_type=CMYKQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { quantum_type=CMYKAQuantum; pad=(size_t) MagickMax((size_t) samples_per_pixel-5,0); @@ -1751,7 +1751,7 @@ RestoreMSCWarning (TIFFGetG(*p))),q); SetPixelBlue(image,ScaleCharToQuantum((unsigned char) (TIFFGetB(*p))),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum((unsigned char) (TIFFGetA(*p))),q); p++; @@ -1836,7 +1836,7 @@ RestoreMSCWarning x); for (row=rows_remaining; row > 0; row--) { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) for (column=columns_remaining; column > 0; column--) { SetPixelRed(image,ScaleCharToQuantum((unsigned char) @@ -1934,7 +1934,7 @@ RestoreMSCWarning TIFFGetG(*p)),q); SetPixelBlue(image,ScaleCharToQuantum((unsigned char) TIFFGetB(*p)), q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,ScaleCharToQuantum((unsigned char) TIFFGetA(*p)),q); p--; @@ -3228,7 +3228,7 @@ static MagickBooleanType WriteTIFFImage(const ImageInfo *image_info, PHOTOMETRIC_MINISBLACK); (void) TIFFSetField(tiff,TIFFTAG_SAMPLESPERPIXEL,1); if ((image_info->depth == 0) && - (image->alpha_trait != BlendPixelTrait) && + (image->alpha_trait == UndefinedPixelTrait) && (IsImageMonochrome(image,exception) != MagickFalse)) { status=SetQuantumDepth(image,quantum_info,1); @@ -3283,7 +3283,7 @@ static MagickBooleanType WriteTIFFImage(const ImageInfo *image_info, (void) TIFFSetField(tiff,TIFFTAG_COMPRESSION,compress_tag); (void) TIFFSetField(tiff,TIFFTAG_FILLORDER,endian); (void) TIFFSetField(tiff,TIFFTAG_BITSPERSAMPLE,quantum_info->depth); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { uint16 extra_samples, @@ -3562,7 +3562,7 @@ RestoreMSCWarning default: { quantum_type=RGBQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=RGBAQuantum; for (y=0; y < (ssize_t) image->rows; y++) { @@ -3650,7 +3650,7 @@ RestoreMSCWarning if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) for (y=0; y < (ssize_t) image->rows; y++) { register const Quantum @@ -3681,7 +3681,7 @@ RestoreMSCWarning CMYK TIFF image. */ quantum_type=CMYKQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) quantum_type=CMYKAQuantum; if (image->colorspace != CMYKColorspace) (void) TransformImageColorspace(image,CMYKColorspace,exception); @@ -3746,7 +3746,7 @@ RestoreMSCWarning Convert PseudoClass packets to contiguous grayscale scanlines. */ quantum_type=IndexQuantum; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { if (photometric != PHOTOMETRIC_PALETTE) quantum_type=GrayAlphaQuantum; diff --git a/coders/tile.c b/coders/tile.c index 6a9f6d5f2..81532bd50 100644 --- a/coders/tile.c +++ b/coders/tile.c @@ -118,7 +118,7 @@ static Image *ReadTILEImage(const ImageInfo *image_info, ThrowReaderException(OptionError,"MustSpecifyAnImageName"); image->colorspace=tile_image->colorspace; image->alpha_trait=tile_image->alpha_trait; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) SetImageBackgroundColor(image,exception); (void) CopyMagickString(image->filename,image_info->filename,MaxTextExtent); if (LocaleCompare(tile_image->magick,"PATTERN") == 0) diff --git a/coders/txt.c b/coders/txt.c index 0d23dd68d..11bfb5161 100644 --- a/coders/txt.c +++ b/coders/txt.c @@ -470,7 +470,7 @@ static Image *ReadTXTImage(const ImageInfo *image_info,ExceptionInfo *exception) { case GRAYColorspace: { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { count=(ssize_t) sscanf(text,"%ld,%ld: (%lf%*[%,]%lf%*[%,]", &x_offset,&y_offset,&red,&alpha); @@ -486,7 +486,7 @@ static Image *ReadTXTImage(const ImageInfo *image_info,ExceptionInfo *exception) } case CMYKColorspace: { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { count=(ssize_t) sscanf(text, "%ld,%ld: (%lf%*[%,]%lf%*[%,]%lf%*[%,]%lf%*[%,]%lf%*[%,]", @@ -500,7 +500,7 @@ static Image *ReadTXTImage(const ImageInfo *image_info,ExceptionInfo *exception) } default: { - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { count=(ssize_t) sscanf(text, "%ld,%ld: (%lf%*[%,]%lf%*[%,]%lf%*[%,]%lf%*[%,]", @@ -716,7 +716,7 @@ static MagickBooleanType WriteTXTImage(const ImageInfo *image_info,Image *image, MagickColorspaceOptions,(ssize_t) image->colorspace),MaxTextExtent); LocaleLower(colorspace); image->depth=GetImageQuantumDepth(image,MagickTrue); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) (void) ConcatenateMagickString(colorspace,"a",MaxTextExtent); compliance=NoCompliance; if (LocaleCompare(image_info->magick,"SPARSE-COLOR") != 0) @@ -781,7 +781,7 @@ static MagickBooleanType WriteTXTImage(const ImageInfo *image_info,Image *image, ConcatenateColorComponent(&pixel,BlackPixelChannel,compliance, tuple); } - if (pixel.alpha_trait == BlendPixelTrait) + if (pixel.alpha_trait != UndefinedPixelTrait) { (void) ConcatenateMagickString(tuple,",",MaxTextExtent); ConcatenateColorComponent(&pixel,AlphaPixelChannel,compliance, diff --git a/coders/uil.c b/coders/uil.c index 8496adee3..ee50aaaa4 100644 --- a/coders/uil.c +++ b/coders/uil.c @@ -229,7 +229,7 @@ static MagickBooleanType WriteUILImage(const ImageInfo *image_info,Image *image, Convert DirectClass to PseudoClass image. */ matte_image=(unsigned char *) NULL; - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { /* Map all the transparent pixels. diff --git a/coders/viff.c b/coders/viff.c index 7c5855a1a..70c7ccb70 100644 --- a/coders/viff.c +++ b/coders/viff.c @@ -704,7 +704,7 @@ static Image *ReadVIFFImage(const ImageInfo *image_info, SetPixelBlue(image,image->colormap[(ssize_t) GetPixelBlue(image,q)].blue,q); } - SetPixelAlpha(image,image->alpha_trait == BlendPixelTrait ? + SetPixelAlpha(image,image->alpha_trait != UndefinedPixelTrait ? ScaleCharToQuantum(*(p+number_pixels*3)) : OpaqueAlpha,q); p++; q+=GetPixelChannels(image); @@ -1105,7 +1105,7 @@ RestoreMSCWarning *q=ScaleQuantumToChar(GetPixelRed(image,p)); *(q+number_pixels)=ScaleQuantumToChar(GetPixelGreen(image,p)); *(q+number_pixels*2)=ScaleQuantumToChar(GetPixelBlue(image,p)); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) *(q+number_pixels*3)=ScaleQuantumToChar((Quantum) (GetPixelAlpha(image,p))); p+=GetPixelChannels(image); diff --git a/coders/vips.c b/coders/vips.c index da380e0d3..e736ddb46 100644 --- a/coders/vips.c +++ b/coders/vips.c @@ -648,11 +648,11 @@ static MagickBooleanType WriteVIPSImage(const ImageInfo *image_info, (void) WriteBlobLong(image,(unsigned int) image->columns); (void) WriteBlobLong(image,(unsigned int) image->rows); (void) SetImageStorageClass(image,DirectClass,exception); - channels=image->alpha_trait == BlendPixelTrait ? 4 : 3; + channels=image->alpha_trait != UndefinedPixelTrait ? 4 : 3; if (IsImageGray(image,exception) != MagickFalse) - channels=image->alpha_trait == BlendPixelTrait ? 2 : 1; + channels=image->alpha_trait != UndefinedPixelTrait ? 2 : 1; else if (image->colorspace == CMYKColorspace) - channels=image->alpha_trait == BlendPixelTrait ? 5 : 4; + channels=image->alpha_trait != UndefinedPixelTrait ? 5 : 4; (void) WriteBlobLong(image,channels); (void) WriteBlobLong(image,0); if (image->depth == 16) diff --git a/coders/webp.c b/coders/webp.c index f56453a39..2a93b145b 100644 --- a/coders/webp.c +++ b/coders/webp.c @@ -668,7 +668,7 @@ static MagickBooleanType WriteWEBPImage(const ImageInfo *image_info, break; for (x=0; x < (ssize_t) image->columns; x++) { - *q++=(uint32_t) (image->alpha_trait == BlendPixelTrait ? + *q++=(uint32_t) (image->alpha_trait != UndefinedPixelTrait ? ScaleQuantumToChar(GetPixelAlpha(image,p)) << 24 : 0xff000000) | (ScaleQuantumToChar(GetPixelRed(image,p)) << 16) | (ScaleQuantumToChar(GetPixelGreen(image,p)) << 8) | diff --git a/coders/xpm.c b/coders/xpm.c index 3c3e38eaf..983d571ce 100644 --- a/coders/xpm.c +++ b/coders/xpm.c @@ -684,7 +684,7 @@ static MagickBooleanType WritePICONImage(const ImageInfo *image_info, if (picon->storage_class == PseudoClass) { (void) CompressImageColormap(picon,exception); - if (picon->alpha_trait == BlendPixelTrait) + if (picon->alpha_trait != UndefinedPixelTrait) transparent=MagickTrue; } else @@ -692,7 +692,7 @@ static MagickBooleanType WritePICONImage(const ImageInfo *image_info, /* Convert DirectClass to PseudoClass picon. */ - if (picon->alpha_trait == BlendPixelTrait) + if (picon->alpha_trait != UndefinedPixelTrait) { /* Map all the transparent pixels. @@ -908,7 +908,7 @@ static MagickBooleanType WriteXPMImage(const ImageInfo *image_info,Image *image, if (IssRGBCompatibleColorspace(image->colorspace) == MagickFalse) (void) TransformImageColorspace(image,sRGBColorspace,exception); opacity=(-1); - if (image->alpha_trait != BlendPixelTrait) + if (image->alpha_trait == UndefinedPixelTrait) { if ((image->storage_class == DirectClass) || (image->colors > 256)) (void) SetImageType(image,PaletteType,exception); diff --git a/coders/ycbcr.c b/coders/ycbcr.c index fa1ad047c..061020b13 100644 --- a/coders/ycbcr.c +++ b/coders/ycbcr.c @@ -249,7 +249,7 @@ static Image *ReadYCBCRImage(const ImageInfo *image_info, SetPixelRed(image,GetPixelRed(canvas_image,p),q); SetPixelGreen(image,GetPixelGreen(canvas_image,p),q); SetPixelBlue(image,GetPixelBlue(canvas_image,p),q); - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) SetPixelAlpha(image,GetPixelAlpha(canvas_image,p),q); p+=GetPixelChannels(canvas_image); q+=GetPixelChannels(image); @@ -289,7 +289,7 @@ static Image *ReadYCBCRImage(const ImageInfo *image_info, } for (y=0; y < (ssize_t) image->extract_info.height; y++) { - for (i=0; i < (image->alpha_trait == BlendPixelTrait ? 4 : 3); i++) + for (i=0; i < (image->alpha_trait != UndefinedPixelTrait ? 4 : 3); i++) { if (count != (ssize_t) length) { @@ -500,7 +500,7 @@ static Image *ReadYCBCRImage(const ImageInfo *image_info, if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { for (y=0; y < (ssize_t) image->extract_info.height; y++) { @@ -748,7 +748,7 @@ static Image *ReadYCBCRImage(const ImageInfo *image_info, if (status == MagickFalse) break; } - if (image->alpha_trait == BlendPixelTrait) + if (image->alpha_trait != UndefinedPixelTrait) { (void) CloseBlob(image); AppendImageFormat("A",image->filename); @@ -1018,7 +1018,7 @@ static MagickBooleanType WriteYCBCRImage(const ImageInfo *image_info, if (image->colorspace != YCbCrColorspace) (void) TransformImageColorspace(image,YCbCrColorspace,exception); if ((LocaleCompare(image_info->magick,"YCbCrA") == 0) && - (image->alpha_trait != BlendPixelTrait)) + (image->alpha_trait == UndefinedPixelTrait)) (void) SetImageAlphaChannel(image,OpaqueAlphaChannel,exception); quantum_info=AcquireQuantumInfo(image_info,image); if (quantum_info == (QuantumInfo *) NULL) -- 2.50.1