This solution works well. You will need to make a minor correction and
remove the single quotes around 'txt' in the second line. The edited
version looks like this:

    txt = 'Hélló wórld'
    utxt = unicode(txt, 'utf-8')
    stxt = utxt.encode('iso-8859-1')
    pdf.cell(50,20, stxt, 0, 2, 'L')


Thanks for the hint Bernardo!

C.


---------- Forwarded message ----------
From: Bernardo <[email protected]>
Date: Sep 25 2010, 7:35 am
Subject: Solved -- Problems with special characters and pyfpdf
To: web2py-users


Hi all,

When usingpyfpdfwhich comes with web2py framework, there are some
issues withspecialcharacterssuch as accentedcharacters(á, é,
í, ...). After some research, I found out thatpyfpdfjust understands
'iso-8859-1', and web2py gives him the strings in 'utf-8' format.

So, as a solution, in your python code you just have to convert the
string before passing it topyfpdf, like this:

txt = 'Hélló wórld'
utxt = unicode('txt', 'utf-8')
stxt = utxt.encode('iso-8859-1')
pdf.cell(50,20, stxt, 0, 2, 'L')

If anyone has any doubts, just ask. I hope this can help someone...

kind regards,
Bernardo

Reply via email to