I *think* scaling of xpm images used to work (maybe back when ImageMagick did the scaling?) - but it doesn't now, e.g. if you go: (insert-image (create-image "/usr/src/emacs/etc/images/smilies/medium/wry.xpm" nil nil :scale 20.0)) a tiny 16x16 image is inserted. The expected result was a huge 320x320 image. If I convert the image to png: convert /usr/src/emacs/etc/images/smilies/medium/wry.xpm /tmp/wry.gif and insert it with: (insert-image (create-image "/tmp/wry.gif" nil nil :scale 20.0)) I do get a bug 320x320 pixel image in my buffer. (Interestingly, if I convert it to PNG and insert it, I get a 320x320 pixel image, with the original small 16x16 graphics inside it, so scaling seems to not work for PNG either, in a different way.) This is what it looks like in emacs -Q: