This question already has an answer here:
I edited the form for a list item in InfoPath, and when I print, I just want to print the form itself.
It seems when I use the browser's print function, it still pulls up some elements from the page and it cuts off the content if it's longer than the popup window. Also, some of the elements of the form are hidden when I print, so that is not a good option.
I have read that others have attempted to create a custom action that resides in the InfoPath Ribbon, but I have yet to find one that works?