# HG changeset patch # User Matti Hamalainen # Date 1559654158 -10800 # Node ID 28b7a842181f1300237beb04329a204a298e1f10 # Parent 1c111bfc17d4ad9660ecb3003874b38bf62ba9ef Make PNG/PPM output a bit more sane with -P option and grayscale data. diff -r 1c111bfc17d4 -r 28b7a842181f tools/gfxconv.c --- a/tools/gfxconv.c Tue Jun 04 15:56:10 2019 +0300 +++ b/tools/gfxconv.c Tue Jun 04 16:15:58 2019 +0300 @@ -1463,11 +1463,17 @@ switch (fmt->fmtid) { case DM_IMGFMT_PNG: - spec->format = optUsePalette ? DM_COLFMT_PALETTE : DM_COLFMT_RGBA; + if (optUsePalette) + spec->format = (image->format == DM_COLFMT_GRAYSCALE) ? DM_COLFMT_GRAYSCALE : DM_COLFMT_PALETTE; + else + spec->format = DM_COLFMT_RGBA; break; case DM_IMGFMT_PPM: - spec->format = DM_COLFMT_RGB; + if (optUsePalette && image->format == DM_COLFMT_GRAYSCALE) + spec->format = DM_COLFMT_GRAYSCALE; + else + spec->format = DM_COLFMT_RGB; break; case DM_IMGFMT_RAW: