I think report.pdf required reportlab? Massimo had an application for creating forms that used markmin and latex.
This web2py app includes a plugin that implements an assortment of pdf stuff (mostly your implementation of pyfpdf and the report.pdf, was that a Google thing?. Anyway the plugin is handy for testing and experimenting and includes some other PDF examples, one with a different font. http://code.google.com/p/uc-pyfpdf/ If you need some testing let me know, I love PDF's Cheers, Chris On May 26, 3:48 pm, Mariano Reingart <reing...@gmail.com> wrote: > Putting the following code in generic.pdf and getting report.pdf does not > work? > (also, per default there is a generic.pdf made by massimo that uses > markmin and latex if I remember it correctly) > > from gluon.contrib.pyfpdf import FPDF, HTMLMixin > from gluon.sanitizer import sanitize > > class MyFPDF(FPDF, HTMLMixin): > pass > > pdf=MyFPDF() > pdf.add_page() > html=response.render('%s/%s.html' % > (request.controller,request.function)) > html = sanitize(html, escape=False) > pdf.write_html(html) > response.headers['Content-Type']='application/pdf' > response.write(pdf.output(dest='S'), escape=False) > > Mariano > Reingarthttp://www.sistemasagiles.com.arhttp://reingart.blogspot.comOn Thu, > May 26, 2011 at 4:30 PM, luifran <lbernalhernan...@yahoo.es> wrote: > > if I have a view , for example report.html, how I render this view in > > pdf with the generic pdf? > > > On 4 oct 2010, 17:08, Mariano Reingart <reing...@gmail.com> wrote: > >> On Sun, Oct 3, 2010 at 1:10 AM, mdipierro <mdipie...@cs.depaul.edu> wrote: > > >> > I am sure this can also be done and better with pyfpdf but I have not > >> > tried. Perhaps Mariano can help us > > >> Having latest web2py versions (including pyfpdf), write in a > >> views/generic.pdf: > > >> ---- begin file ---- > >> {{ > > >> from gluon.contrib.pyfpdf import FPDF, HTMLMixin > >> from gluon.sanitizer import sanitize > > >> class MyFPDF(FPDF, HTMLMixin): > >> pass > > >> pdf=MyFPDF()pdf.add_page() > >> html=response.render('%s/%s.html' % > >> (request.controller,request.function)) > >> html = sanitize(html, escape=False)pdf.write_html(html) > >> response.headers['Content-Type']='application/pdf' > >> response.write(pdf.output(dest='S'), escape=False) > > >> }} > > >> ---- end file--- > > >> At MyFPDF class you can add headers and footers. > > >> The sanitize part is to strip some HTML tags that cannot be rendered > >> (ie. javascript). > > >> As some DIVs contents and similar may still pass (like menus), a > >> better alternative may be render only certains portions of the page in > >> a custom view: > > >> pdf.write_html(str(XML(CENTER(section), sanitize=False))) > > >> Best regards, > > >> Mariano > >> Reingarthttp://www.sistemasagiles.com.arhttp://reingart.blogspot.com > >