/*
- Copyright 1999-2012 ImageMagick Studio LLC, a non-profit organization
+ Copyright 1999-2014 ImageMagick Studio LLC, a non-profit organization
dedicated to making software imaging solutions freely available.
You may not use this file except in compliance with the License.
#ifndef _MAGICKCORE_COLORSPACE_PRIVATE_H
#define _MAGICKCORE_COLORSPACE_PRIVATE_H
+#include "MagickCore/image.h"
+#include "MagickCore/image-private.h"
+#include "MagickCore/pixel.h"
+#include "MagickCore/pixel-accessor.h"
+
#if defined(__cplusplus) || defined(c_plusplus)
extern "C" {
#endif
-#include <MagickCore/image.h>
-#include <MagickCore/image-private.h>
-#include <MagickCore/pixel.h>
-#include <MagickCore/pixel-accessor.h>
-
static inline void ConvertRGBToCMYK(PixelInfo *pixel)
{
MagickRealType
}
else
{
- red=QuantumRange*DecompandsRGB(QuantumScale*pixel->red);
- green=QuantumRange*DecompandsRGB(QuantumScale*pixel->green);
- blue=QuantumRange*DecompandsRGB(QuantumScale*pixel->blue);
+ red=DecodePixelGamma(pixel->red);
+ green=DecodePixelGamma(pixel->green);
+ blue=DecodePixelGamma(pixel->blue);
}
if ((fabs(red) < MagickEpsilon) && (fabs(green) < MagickEpsilon) &&
(fabs(blue) < MagickEpsilon))
static inline MagickBooleanType IsGrayColorspace(
const ColorspaceType colorspace)
{
- if ((colorspace == GRAYColorspace) || (colorspace == Rec601LumaColorspace) ||
- (colorspace == Rec709LumaColorspace))
+ if (colorspace == GRAYColorspace)
return(MagickTrue);
return(MagickFalse);
}
static inline MagickBooleanType IsRGBColorspace(const ColorspaceType colorspace)
{
- if (colorspace == RGBColorspace)
+ if ((colorspace == RGBColorspace) || (colorspace == scRGBColorspace))
return(MagickTrue);
return(MagickFalse);
}
static inline MagickBooleanType IssRGBCompatibleColorspace(
const ColorspaceType colorspace)
{
- if ((colorspace == sRGBColorspace) || (colorspace == TransparentColorspace) ||
- (colorspace == RGBColorspace) || (colorspace == GRAYColorspace))
+ if ((colorspace == sRGBColorspace) || (colorspace == RGBColorspace) ||
+ (colorspace == scRGBColorspace) ||
+ (IsGrayColorspace(colorspace) != MagickFalse))
return(MagickTrue);
return(MagickFalse);
}