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