If you're just generating a regular html webpage to print, you're going to have a very hard time getting it consistent across multiple computers (or browsers, or printers). There are lots of browser settings that affect how the webpage is printed...like margins, header/footer text, etc. and these aren't things you can control from the html page.
You would need to generate a formatted file so there is less room for interpretation by the computer/browser/printer. Something like a PDF where you can create more consistent output.
I had a similar requirement for an app a while back. The requirements for that project were such that we generated a MS Word document prefilled with content (text, tables, etc.), then the user opens that generated file and prints it or saves it. I would think a PDF would be desirable in most cases though.