Here's a simple example, creating a PDF invoice in web2py app:
This is the controller code:
def show_pdf_invoice(invoice_number, invoice):
from fpdf import FPDF
pdf = FPDF()
pdf.add_page()
pdf.set_font('Arial', 'B', 10)
pdf.cell(25, 5, 'My company name', )
pdf.set_font('Arial', '', 10)
pdf.cell(60, 5, 'My company address', ln=1)
pdf.cell(40, 5, 'My company additional data', ln=1)
pdf.line(10, 20, 180, 20)
pdf.set_xy(140, 25)
pdf.cell(25, 5, 'Date issued: {0}'.format(invoice[0].date))
pdf.set_xy(140, 30)
pdf.cell(25, 5, 'Invoice Number: {0}'.format(str(invoice_number)))
pdf.line(10, 40, 180, 40)
pdf.set_xy(10, 41)
pdf.cell(30, 5, 'Description')
pdf.cell(30, 5, 'Starts')
pdf.cell(30, 5, 'End')
pdf.cell(30, 5, 'Amount')
pdf.line(10, 46, 180, 46)
pdf.set_xy(10, 47)
pdf.cell(30, 5, invoice[0].invoice_item_name)
pdf.cell(30, 5, '')
pdf.cell(30, 5, '')
pdf.cell(30, 5, '{0} {1}'.format(invoice[0].total, invoice[0].currency)
pdf.line(10, 51, 180, 51)
pdf.set_xy(150, 52)
pdf.cell(30, 5, 'Total: {0} {1}'.format(invoice[0].total, invoice[0].
currency)
pdf.set_xy(10, 60)
pdf.cell(30, 5, 'Bill To:', 0, 1)
pdf.cell(30, 5, invoice[0].invoice_address_name, 0, 1)
pdf.cell(30, 5, invoice[0].invoice_address_street, 0, 1)
pdf.cell(30, 5, invoice[0].invoice_address_city)
pdf.cell(30, 5, invoice[0].invoice_address_zip, 0, 1)
pdf.cell(30, 5, invoice[0].invoice_address_country)
pdf.output('invoice.pdf', 'F')
response.headers['Content-Type'] = 'application/pdf'
return XML(pdf.output('', 'S'))
And that's it, your view named "show_pdf_invoice.html" should be empty.
On Monday, May 16, 2016 at 12:19:08 PM UTC+2, prashant joshi wrote:
>
> i also try this but i could not understad....please anybody send a simple
> example that i will understd
>
> On Wed, May 11, 2016 at 1:57 AM, Carlos Cesar Caballero Díaz <
> [email protected] <javascript:>> wrote:
>
>> Take a look to jsPDF (https://parall.ax/products/jspdf) if you are more
>> familiar with javascript.
>>
>>
>>
>> El 10/05/16 a las 15:52, Jim S escribió:
>>
>> I use ReportLab...
>>
>> -Jim
>>
>> On Tuesday, May 10, 2016 at 1:40:42 PM UTC-5, José L. wrote:
>>>
>>> Latest fpdf code is in the contrib section of gluon libraries, and works
>>> correctly. If your report is not too complicated I'd recommend you this
>>> way. The demo from the above link is easy to follow.
>>>
>>> 2016-05-10 20:26 GMT+02:00 Dave S <[email protected]>:
>>>
>>>> On Tuesday, May 10, 2016 at 9:59:47 AM UTC-7, prashant joshi wrote:
>>>>>
>>>>> how to create pdf report in web2py? i saw video on vimeo but this
>>>>> plugin not found..
>>>>>
>>>>
>>>>
>>>> There are multiple ways to do it, but one way (which is briefly
>>>> mentioned in the web2py book, and the pieces are in contrib)
>>>> is shown at
>>>> <URL:https://groups.google.com/d/msg/web2py/fio15y9n2EU/95223fifCgAJ>
>>>>
>>>> The fpdf link shown in the book appears to be out of date; try
>>>> <URL:https://github.com/reingart/pyfpdf/blob/master/docs/Tutorial.md>
>>>> (Mariano has additional credits in contrib)
>>>>
>>>> /dps
>>>>
>>>> --
>>>> 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 [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>> --
>> 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 [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>>
>> --
>> 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 [email protected] <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
--
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 [email protected].
For more options, visit https://groups.google.com/d/optout.