From: cristy Date: Sat, 15 Sep 2012 11:17:17 +0000 (+0000) Subject: (no commit message) X-Git-Tag: 7.0.1-0~4944 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=6a1f144d38330323d34839ffcc512d73fa46b4de;p=imagemagick --- diff --git a/MagickCore/colorspace.c b/MagickCore/colorspace.c index 76f1e4ee9..63922a2a0 100644 --- a/MagickCore/colorspace.c +++ b/MagickCore/colorspace.c @@ -1949,7 +1949,6 @@ static MagickBooleanType TransformsRGBImage(Image *image, { #define TransformsRGBImageTag "Transform/Image" -#if !defined(MAGICKCORE_HDRI_SUPPORT) static const float YCCMap[1389] = { @@ -2186,7 +2185,6 @@ static MagickBooleanType TransformsRGBImage(Image *image, 0.994236f, 0.994957f, 0.995677f, 0.996398f, 0.997118f, 0.997839f, 0.998559f, 0.999280f, 1.000000f }; -#endif CacheView *image_view; @@ -3499,23 +3497,24 @@ static MagickBooleanType TransformsRGBImage(Image *image, pixel.red=x_map[red].x+y_map[green].x+z_map[blue].x; pixel.green=x_map[red].y+y_map[green].y+z_map[blue].y; pixel.blue=x_map[red].z+y_map[green].z+z_map[blue].z; - if (colorspace == YCCColorspace) + if (image->colorspace == YCCColorspace) { -#if !defined(MAGICKCORE_HDRI_SUPPORT) pixel.red=QuantumRange*YCCMap[RoundToYCC(1024.0*QuantumScale* pixel.red)]; pixel.green=QuantumRange*YCCMap[RoundToYCC(1024.0*QuantumScale* pixel.green)]; pixel.blue=QuantumRange*YCCMap[RoundToYCC(1024.0*QuantumScale* pixel.blue)]; -#endif } - SetPixelRed(image,ClampToQuantum(sRGBCompandor((double) - ScaleMapToQuantum(pixel.red))),q); - SetPixelGreen(image,ClampToQuantum(sRGBCompandor((double) - ScaleMapToQuantum(pixel.green))),q); - SetPixelBlue(image,ClampToQuantum(sRGBCompandor((double) - ScaleMapToQuantum(pixel.blue))),q); + else + { + pixel.red=sRGBCompandor(pixel.red); + pixel.green=sRGBCompandor(pixel.green); + pixel.blue=sRGBCompandor(pixel.blue); + } + SetPixelRed(image,ClampToQuantum(ScaleMapToQuantum(pixel.red)),q); + SetPixelGreen(image,ClampToQuantum(ScaleMapToQuantum(pixel.green)),q); + SetPixelBlue(image,ClampToQuantum(ScaleMapToQuantum(pixel.blue)),q); q+=GetPixelChannels(image); } sync=SyncCacheViewAuthenticPixels(image_view,exception); @@ -3563,23 +3562,27 @@ static MagickBooleanType TransformsRGBImage(Image *image, pixel.red=x_map[red].x+y_map[green].x+z_map[blue].x; pixel.green=x_map[red].y+y_map[green].y+z_map[blue].y; pixel.blue=x_map[red].z+y_map[green].z+z_map[blue].z; - if (colorspace == YCCColorspace) + if (image->colorspace == YCCColorspace) { -#if !defined(MAGICKCORE_HDRI_SUPPORT) pixel.red=QuantumRange*YCCMap[RoundToYCC(1024.0*QuantumScale* pixel.red)]; pixel.green=QuantumRange*YCCMap[RoundToYCC(1024.0*QuantumScale* pixel.green)]; pixel.blue=QuantumRange*YCCMap[RoundToYCC(1024.0*QuantumScale* pixel.blue)]; -#endif + } + else + { + pixel.red=sRGBCompandor(pixel.red); + pixel.green=sRGBCompandor(pixel.green); + pixel.blue=sRGBCompandor(pixel.blue); } image->colormap[i].red=(double) ClampToQuantum( - sRGBCompandor((double) ScaleMapToQuantum(pixel.red))); + ScaleMapToQuantum(pixel.red)); image->colormap[i].green=(double) ClampToQuantum( - sRGBCompandor((double) ScaleMapToQuantum(pixel.green))); + ScaleMapToQuantum(pixel.green)); image->colormap[i].blue=(double) ClampToQuantum( - sRGBCompandor((double) ScaleMapToQuantum(pixel.blue))); + ScaleMapToQuantum(pixel.blue)); } (void) SyncImage(image,exception); break;