Idea Summary
The question is not new! APEX is awesome but can't print an invoice!
There are several good third party tools but they are too expensive for many use cases (5k-15k EUR or USD software development). Sometimes an application needs ONLY ONE document type to print.
Furthermore, customers are disappointed when they learn that it is not "simple" to print a document and it is the first thing that needs to be told to them if they do not know APEX
Here an example of a small package that can create word document.
http://zt-tech.eu/download.html
Here a PDF
https://github.com/lee-lindley/PdfGen
with the famous as_pdf3 by Anton Scheffer