I need to be able to convert HTML email messages saved as text files (.eml or .msg) to PDF documents, one PDF per email, retaining formatting and images.

Are there any Linux tools that will allow me to do this from the command line (so it can be scripted)?


.eml files are just text files, so you can print them using standard methods.

The easiest utility for text conversion is arguably Pandoc. This utility should cover any html email as well, although you'll want to specify the format manually since .eml isn't very standard when it comes to text data.

pandoc -f html -o outputfile.pdf inputfile.eml

  • Pandoc didn't work for me, I encountered pandoc: Error producing PDF from TeX source even after installing 1GB of dependencies. I instead used MHonArc which was easy to use too and available in most all package installers. apt-get install mhonarc' and then you can convert an entire mailbox/folder or even a single file like mhonarc -single somemailfile > converted.html` Nov 4 '15 at 20:08

Not the answer you're looking for? Browse other questions tagged or ask your own question.