Hey thanks a lot will try it out!!
From: web2py@googlegroups.com [mailto:web2py@googlegroups.com] On Behalf Of mostwanted Sent: 27 January 2020 15:47 To: web2py-users Subject: [web2py] Re: Saving a view as an file/image Hey John, I dont know if this will help you but there was a time when i needed to convert a view to PDF & I used 2 l js libraries, html2canvas & jsPDF, they enabled me to achieve my goal that time, you can find the jsPDF package here: https://github.com/MrRio/jsPDF <https://github.com/MrRio/jsPDF> and the html2canvas package here: https://github.com/niklasvh/html2canvas/releases After extracting all the files from the compressed folders look for these 2 js files in jsPDF; jspdf.debug.js, jspdf.min.js, and the html2canvas.js in the html2pdf folder, upload them into your application's static/js directory, from there call them in your application's layout page like this: <script src="{{=URL('static','js/jspdf.debug.js')}}"></script> <script src="{{=URL('static','js/jspdf.min.js')}}"></script> <script src="{{=URL('static','js/html2canvas.js')}}"></script> <script src="{{=URL('static', 'js/moments.js')}}"></script> In the view that you want to convert to PDF have this javascript code: <script type="text/javascript"> function genPDF() { let pdfName = "licencia"; var doc = new jsPDF({ format: "a4" }); html2canvas(document.getElementById("invoicing"), { scale: "5" }).then(canvas => { console.log("Capturando"); this.imgFile = canvas; doc.addImage(this.imgFile, "JPEG", 5, 5, 200, 250); doc.save('filename.pdf'); }); } </script> In the same view have a link that when clicked calls the above js function like this: <div id="pdf"><a href="javascript:genPDF()">Click to Download as PDF</a></div> This should convert you view into PDF or Image as per the usage of both liraries. I hope the maintainers of the jsPDF & html2pdf libraries have not made adjustmets that may cause this not to work; Regards Mostwanted On Sunday, January 26, 2020 at 4:25:47 PM UTC+2, John Bannister wrote: Hi All, I have hit a bit of a stumbling block and would like to know if anyone else has come across this and how to resolve it. Situation is as follows:- I am generating tickets/coupons for users once they have entered all the appropriate info which I am doing via normal controller/view using html for styling. Coupon consists of 2 images plus some text (nothing really fancy at all). Everything looks okay and as it should in the view with all the correct information etc. I now what to email the coupon to the user. This is where I am a bit stumped. I am assuming that I will need to save the rendered view as an image/file/.pdf if I want the styling, logos, qrcodes etc to be in the email that I will send as well as for all the formatting to be as per the view. Is there any easy way or any way at all to do this? In the controller I can use the response.render(view, args) but still cant see how to create a pdf file from the actual view before sending the email. Hopefilly I ma missing something simple Thanks in advance -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/web2py/7643b84a-9fa5-490a-9a47-d5775f859b27%40googlegroups.com <https://groups.google.com/d/msgid/web2py/7643b84a-9fa5-490a-9a47-d5775f859b27%40googlegroups.com?utm_medium=email&utm_source=footer> . -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/web2py/00b701d5d5b8%2491584e80%24b408eb80%24%40gmail.com.