Thank you, Boss and Robert, especially Boss for the full example. Given that Heirloom troff works well with EPS (level 3) images with transparency, and it's fairly simple, the limitation of not accepting PDF images now seems less restrictive.
Just for completeness, some details I found while testing: 1) Converting an image to EPS (must be language level 3) works well with either sam2p or bmpp (dktools). The two commands I tried: $ sam2p -ps:3 file.png file.eps $ bmpp -l eps.image file.png 2) For 8-bit grayscale images: /MaskColor [0] to [255] 3) Ghostscript with default settings will do some processing to images when creating PDF files. These changes are not normally visible, but even a tiny modification to masked pixels causes them to become visible (similarly, a few visible pixels can become transparent). This can be prevented with the following gs command-line options: -sDEVICE=pdfwrite -dColorConversionStrategy=/LeaveColorUnchanged -dDownsampleMonoImages=false -dDownsampleGrayImages=false -dDownsampleColorImages=false -dAutoFilterColorImages=false -dAutoFilterGrayImages=false -dColorImageFilter=/FlateEncode -dGrayImageFilter=/FlateEncode (Some of these options are already default). This is described nicely here : https://superuser.com/questions/360216/use-ghostscript-but-tell-it-to-not-reprocess-images