GNU bug report logs -
#50904
TODO: Deprecate and remove XPM icons (replacing them with PPM)
Previous Next
Reported by: Stefan Kangas <stefan <at> marxist.se>
Date: Wed, 29 Sep 2021 21:49:02 UTC
Severity: wishlist
Done: Stefan Kangas <stefan <at> marxist.se>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
Severity: wishlist
In etc/TODO we have the following item:
** Deprecate and remove XPM icons
Convert the XPM bitmaps to PPM, replace the PBMs with them and scrap
the XPMs so that the color versions work generally. (Requires care
with the color used for the transparent regions.)
Here's what I've gathered so far, posting it here to save someone else
the trouble:
PPM (Portable PixelMap) is the color version of PBM (Portable BitMap)
and has as good support.[1] XPM is an older format.
There are previous discussions on emacs-devel, but I have only been able
to track some of them down. The TODO itself dates back to February 2003
(bf6394a6bed2).
I have tried to convert the images with netpbm using this:
cd etc/images
xpmtoppm --alphaout=attach.alpha attach.xpm | \
pnmcomp -alpha=attach.alpha - > attach.ppm
pnmcomp: bad magic number 0x0 - not a PAM, PPM, PGM, or PBM file
But then I don't get any further.
I have also tried with the newer pamcomp (that replaces pnmcomp):
cd etc/images
xpmtoppm --alphaout=attach.alpha attach.xpm | \
pamcomp attach.alpha - atach.ppm
That just leads to an image that looks wrong.
With GraphicsMagick, I used "gc convert attach.xpm attach.ppm" but the
results looked all wrong.
With GIMP it seems like I can produce images that preserve the alpha
channels correctly, but perhaps not in all cases. It also seems like
different files produce different results, maybe? But on balance,
perhaps a combination of GIMP and GraphicsMagick would be best.
---
Be aware that Debian has an old forked version of netpbm from 2002, so
if you want to use xpmtoppm, you need to install netpbm from
SourceForge. Luckily, there are .deb packages available (as well as
source tarballs).
Footnotes:
[1] https://lists.gnu.org/r/emacs-devel/2002-09/msg00949.html
This bug report was last modified 3 years and 289 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.