Additional to the Save button there should be a Save and Print button which saves the xform and also creates a new windows with a PDF of the data that was just submitted in the form.
The requirements are
1. Add a global property to the XForms module xforms.showSavePrintButton which should have the description "Enter the form ID for the forms where you would like to show the Save & Print button. If empty will not show in any form"
2. For the form whose form ID is entered in that global property, an Save & Print button should be displayed additional to the current Save and Cancel buttons.
3. If the user clicks this button in the current window it should save the form and display the patient page as is currently done by Xforms. In a new tab, it should open the previously designed pdf template with the values entered in that form.
What still needs to be defined is how to create the pdf template for each form and have that available in the xforms module for when each form needs to be displayed. Daniel's suggestion was to use iText, which I agree with, but more research needs to be done on how to upload the pdf template for each form and how a System Developer user of OpenMRS can create and upload pdf templates for each form.