From b381a2618e8bb9e1e76299676711d0ec1063feab Mon Sep 17 00:00:00 2001 From: glennrp Date: Sat, 11 Feb 2012 17:49:49 +0000 Subject: [PATCH] Implemented "-define png:format=png8|png24|png32" (from IM6) --- coders/png.c | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/coders/png.c b/coders/png.c index 0877d5db2..518dc760c 100644 --- a/coders/png.c +++ b/coders/png.c @@ -10997,6 +10997,31 @@ static MagickBooleanType WritePNGImage(const ImageInfo *image_info, mng_info->write_png24=LocaleCompare(image_info->magick,"PNG24") == 0; mng_info->write_png32=LocaleCompare(image_info->magick,"PNG32") == 0; + value=GetImageOption(image_info,"png:format"); + + if (value != (char *) NULL) + { + if (LocaleCompare(value,"png8") == 0) + { + mng_info->write_png8 = MagickTrue; + mng_info->write_png24 = MagickFalse; + mng_info->write_png32 = MagickFalse; + } + + else if (LocaleCompare(value,"png24") == 0) + { + mng_info->write_png8 = MagickFalse; + mng_info->write_png24 = MagickTrue; + mng_info->write_png32 = MagickFalse; + } + + else if (LocaleCompare(value,"png32") == 0) + { + mng_info->write_png8 = MagickFalse; + mng_info->write_png24 = MagickFalse; + mng_info->write_png32 = MagickTrue; + } + } if (mng_info->write_png8) { mng_info->write_png_colortype = /* 3 */ 4; -- 2.40.0