Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.
Using window.showmodaldialog(), populating HTML data as popup.
If you want a fully client-side solution, I would look into the jsPDF library. Apparently it can process HTML now.
Required, but never shown