Under Linux, the Eclipse print implementation is so bad that I run the "enscript" printing program as an external tool instead.
Then again, there were quite a few Eclipse releases where the print menu didn't do anything at all.
Printing has never been a concept that Eclipse was comfortable with. At the OS level, not only are there significant differences between printing subsystems, but I believe that they actually had issues with which desktop manager you used in Linux. In theory, stuff as mundane as what Eclipse needs to do can be done "write once/run anywhere" using the Java printing facility, but for whatever reason, they didn't go that route.
So, your choices are to either do like me and dump the job on an external application or to write a plugin. If you opt for the plugin, let me know. I'd be interested in helping make a viable replacement for the mess that they have now.
An IDE is no substitute for an Intelligent Developer.
author & internet detective