From 897f2bf470519e93fb7135e5755850de2e27d507 Mon Sep 17 00:00:00 2001 From: cristy Date: Thu, 5 Jan 2012 02:03:44 +0000 Subject: [PATCH] --- coders/png.c | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/coders/png.c b/coders/png.c index cf926929c..e601a4fbb 100644 --- a/coders/png.c +++ b/coders/png.c @@ -2699,6 +2699,9 @@ static Image *ReadOnePNGImage(MngInfo *mng_info, image->compression=ZipCompression; image->columns=ping_width; image->rows=ping_height; + if (((int) ping_color_type == PNG_COLOR_TYPE_GRAY) || + ((int) ping_color_type == PNG_COLOR_TYPE_GRAY_ALPHA)) + image->colorspace=GRAYColorspace; if (((int) ping_color_type == PNG_COLOR_TYPE_PALETTE) || ((int) ping_color_type == PNG_COLOR_TYPE_GRAY)) { @@ -6745,19 +6748,13 @@ static Image *ReadMNGImage(const ImageInfo *image_info,ExceptionInfo *exception) #if (MAGICKCORE_QUANTUM_DEPTH > 16) /* PNG does not handle depths greater than 16 so reduce it even - * if lossy. + * if lossy */ if (image->depth > 16) image->depth=16; #endif #if (MAGICKCORE_QUANTUM_DEPTH > 8) - if (image->depth > 8) - { - /* To do: fill low byte properly */ - image->depth=16; - } - if (LosslessReduceDepthOK(image,exception) != MagickFalse) image->depth = 8; #endif @@ -7971,12 +7968,6 @@ static MagickBooleanType WriteOnePNGImage(MngInfo *mng_info, #endif #if (MAGICKCORE_QUANTUM_DEPTH > 8) - if (image->depth > 8) - { - /* To do: fill low byte properly */ - image->depth=16; - } - if (image->depth == 16 && mng_info->write_png_depth != 16) if (mng_info->write_png8 || LosslessReduceDepthOK(image,exception) != MagickFalse) image->depth = 8; @@ -11751,9 +11742,6 @@ static MagickBooleanType WriteOneJNGImage(MngInfo *mng_info, (void) CopyMagickString(jpeg_image->magick,"PNG",MaxTextExtent); jpeg_image_info->interlace=NoInterlace; - /* Exclude all ancillary chunks */ - (void) SetImageArtifact(jpeg_image,"png:exclude-chunks","all"); - blob=ImageToBlob(jpeg_image_info,jpeg_image,&length, exception); -- 2.40.0