> Which font do you want to include? DejaVu - I guess it covers western languages.. (could be withouth bold/italics to save space) Another one could be for eastern chars (buy I don't know anything about them...)
> I gave you contributor access Thanks :) On Wed, May 1, 2013 at 12:22 AM, Mariano Reingart <reing...@gmail.com>wrote: > Which font do you want to include? > > The font pack is 15MB, I don't know if it could be included with web2py. > Also, the problem is that no one is complete (you need several fonts > to cover west / east languages) > > https://pyfpdf.googlecode.com/files/fpdf_unicode_font_pack.zip > > BTW, thanks for you comments, I gave you contributor access, so you > can change the docs directly in the wiki if you like so: > > https://code.google.com/p/pyfpdf/w/list > > If you have any patch, also I'll be happy to review and include it ;-) > > Best regards, > > Mariano Reingart > http://www.sistemasagiles.com.ar > http://reingart.blogspot.com > > > On Sun, Apr 28, 2013 at 7:40 AM, Jurgis Pralgauskis > <jurgis.pralgaus...@gmail.com> wrote: > > by the way -- would it be possible to pack at least one ttf with web2py, > > and in normalize_text , when it notices unicode, > > automatically add (and set) default ttf font (if such is not set) to > render > > ok ? > > > > > > > > On Sun, Apr 28, 2013 at 12:18 PM, Jurgis Pralgauskis > > <jurgis.pralgaus...@gmail.com> wrote: > >> > >> SOLVED - the problem was that I needed to reload web2py -- for changed > >> html.py to make effect ;) > >> > >> one more issue > >> that after write_html(..) it "forgets" the previously set font (should > >> be at least mentioned in docs.. :) > >> https://code.google.com/p/pyfpdf/issues/detail?id=54#c2 > >> > >> > >> > >> > >> On Sat, Apr 27, 2013 at 9:06 PM, Mariano Reingart <reing...@gmail.com> > >> wrote: > >>> > >>> Did you add the TTF unicode font with add_font? > >>> Can you post a complete example (ie a script.py just with the code to > >>> test), so I can reproduce it easily. > >>> > >>> Best regards, > >>> > >>> Mariano Reingart > >>> http://www.sistemasagiles.com.ar > >>> http://reingart.blogspot.com > >>> > >>> > >>> On Sat, Apr 27, 2013 at 7:30 AM, Jurgis Pralgauskis > >>> <jurgis.pralgaus...@gmail.com> wrote: > >>> > I see 2 lines were changed, the main > >>> > > >>> > - if 'face' in attrs and attrs['face'].lower() in self.font_list: > >>> > + if 'face' in attrs: > >>> > > >>> > but I still get > >>> > > >>> > > >>> > File > >>> > "/home/jurgis/web2py/applications/apskaitele/controllers/default.py", > >>> > line 61, in pdftest > >>> > > >>> > > >>> > pdf.write_html(u"<font face='DejaVu'>Ąžuolas</font>" > >>> > ) > >>> > > >>> > > >>> > File "/home/jurgis/web2py/gluon/contrib/fpdf/html.py", line 397, in > >>> > write_html > >>> > > >>> > File "/usr/local/lib/python2.7/HTMLParser.py", line 114, in feed > >>> > > >>> > self.goahead(0) > >>> > File "/usr/local/lib/python2.7/HTMLParser.py", line 152, in goahead > >>> > > >>> > if i < j: self.handle_data(rawdata[i:j]) > >>> > > >>> > File "/home/jurgis/web2py/gluon/contrib/fpdf/html.py", line 122, in > >>> > handle_data > >>> > > >>> > File "/home/jurgis/web2py/gluon/contrib/fpdf/fpdf.py", line 822, in > >>> > write > >>> > > >>> > txt = self.normalize_text(txt) > >>> > > >>> > File "/home/jurgis/web2py/gluon/contrib/fpdf/fpdf.py", line 1012, > in > >>> > normalize_text > >>> > > >>> > txt = txt.encode('latin1') > >>> > > >>> > UnicodeEncodeError: 'latin-1' codec can't encode characters in > position > >>> > 0-1: > >>> > ordinal not in range(256 > >>> > ) > >>> > > >>> > > >>> > > >>> > and if I > >>> > pdf.write_html(u"<font face='DejaVu'>Ąžuolas</font>".encode('utf8')) > >>> > > >>> > I get Ä„Å3⁄4uolas > >>> > > >>> > > >>> > > >>> > > >>> > On Sat, Apr 27, 2013 at 3:24 AM, Mariano Reingart < > reing...@gmail.com> > >>> > wrote: > >>> >> > >>> >> Sorry, I misread the email. > >>> >> > >>> >> Unicode fonts were not supported in html2pdf. > >>> >> > >>> >> I've made a change to allow them, please update html.py: > >>> >> > >>> >> https://pyfpdf.googlecode.com/hg/fpdf/html.py > >>> >> > >>> >> Then, you need to load a ttf unicode font, and then pass it in > <font> > >>> >> face attribute: > >>> >> > >>> >> pdf=MyFPDF() > >>> >> # add utf8 font > >>> >> pdf.add_font('DejaVu', '', 'DejaVuSansCondensed.ttf', uni=True) > >>> >> # first page: > >>> >> pdf.add_page() > >>> >> pdf.write_html(u"<font face='DejaVu'>Ąžuolas</font>") > >>> >> > >>> >> For more info and complete code, see: > >>> >> > >>> >> https://code.google.com/p/pyfpdf/wiki/Web2Py > >>> >> > >>> >> Let me know if that works so I can update the docs and web2py > contrib > >>> >> version > >>> >> > >>> >> Best regards > >>> >> Mariano Reingart > >>> >> http://www.sistemasagiles.com.ar > >>> >> http://reingart.blogspot.com > >>> >> > >>> >> > >>> >> On Fri, Apr 26, 2013 at 11:45 PM, Mariano Reingart > >>> >> <reing...@gmail.com> > >>> >> wrote: > >>> >> > On Fri, Apr 26, 2013 at 11:42 PM, Mariano Reingart > >>> >> > <reing...@gmail.com> > >>> >> > wrote: > >>> >> >> On Fri, Apr 26, 2013 at 6:34 PM, Jonathan Lundell > >>> >> >> <jlund...@pobox.com> > >>> >> >> wrote: > >>> >> >>> On 26 Apr 2013, at 1:17 PM, Jurgis Pralgauskis > >>> >> >>> <jurgis.pralgaus...@gmail.com> wrote: > >>> >> >>> > >>> >> >>> ok, SOLVED ttf issue for unicode example > >>> >> >>> http://code.google.com/p/pyfpdf/wiki/Unicode > >>> >> >>> just needed to create directory gluon > contrib > fpdf > font > >>> >> >>> and place needed ttf files insited it :) > >>> >> >>> then pdf.write(8, u"Ąžuolas") works fine > >>> >> >>> > >>> >> >>> > >>> >> >>> The fpdf logic uses utf8 for fonts it sees as UTF-based, > otherwise > >>> >> >>> latin-1. > >>> >> >>> It looks to me as though either it isn't recognizing your fonts > as > >>> >> >>> UTF, or > >>> >> >>> there's some overlooked case that it's making a mistake with. > Have > >>> >> >>> a > >>> >> >>> look at > >>> >> >>> FPDF.set_font: > >>> >> >>> > >>> >> >>> self.unifontsubset = (self.fonts[fontkey]['type'] == > >>> >> >>> 'TTF') > >>> >> >>> > >>> >> >>> ...and make sure it's getting set. > >>> >> >>> > >>> >> >> > >>> >> >> Yes, as Jhonatan saids, FPDF (and the PDF standard, BTW) only > >>> >> >> support > >>> >> >> latin1 characters for standard font. > >>> >> >> > >>> >> >> If you need utf8 characters, you need to embeed a T > >>> >> > > >>> >> > You need to embed a UTF8 TTF font, for example: > >>> >> > > >>> >> > # Add a DejaVu Unicode font (uses UTF-8) > >>> >> > # Supports more than 200 languages. For a coverage status see: > >>> >> > # > >>> >> > > >>> >> > > http://dejavu.svn.sourceforge.net/viewvc/dejavu/trunk/dejavu-fonts/langcover.txt > >>> >> > pdf.add_font('DejaVu', '', 'DejaVuSansCondensed.ttf', uni=True) > >>> >> > > >>> >> > (sorry, the previous message was sent incomplete) > >>> >> > > >>> >> > I'll try to enhance the docs about this, thank for reporting the > >>> >> > issue > >>> >> > > >>> >> > Best regards > >>> >> > > >>> >> > Mariano Reingart > >>> >> > http://www.sistemasagiles.com.ar > >>> >> > http://reingart.blogspot.com > >>> >> > >>> >> -- > >>> >> > >>> >> --- > >>> >> You received this message because you are subscribed to a topic in > the > >>> >> Google Groups "web2py-users" group. > >>> >> To unsubscribe from this topic, visit > >>> >> > >>> >> > https://groups.google.com/d/topic/web2py/KJDeQoLKw-M/unsubscribe?hl=en. > >>> >> To unsubscribe from this group and all its topics, send an email to > >>> >> web2py+unsubscr...@googlegroups.com. > >>> >> > >>> >> For more options, visit https://groups.google.com/groups/opt_out. > >>> >> > >>> >> > >>> > > >>> > > >>> > > >>> > -- > >>> > Jurgis Pralgauskis > >>> > tel: 8-616 77613; > >>> > Don't worry, be happy and make things better ;) > >>> > http://galvosukykla.lt > >>> > > >>> > -- > >>> > > >>> > --- > >>> > 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. > >>> > For more options, visit https://groups.google.com/groups/opt_out. > >>> > > >>> > > >>> > >>> -- > >>> > >>> --- > >>> You received this message because you are subscribed to a topic in the > >>> Google Groups "web2py-users" group. > >>> To unsubscribe from this topic, visit > >>> https://groups.google.com/d/topic/web2py/KJDeQoLKw-M/unsubscribe?hl=en > . > >>> To unsubscribe from this group and all its topics, send an email to > >>> web2py+unsubscr...@googlegroups.com. > >>> For more options, visit https://groups.google.com/groups/opt_out. > >>> > >>> > >> > >> > >> > >> -- > >> Jurgis Pralgauskis > >> tel: 8-616 77613; > >> Don't worry, be happy and make things better ;) > >> http://galvosukykla.lt > > > > > > > > > > -- > > Jurgis Pralgauskis > > tel: 8-616 77613; > > Don't worry, be happy and make things better ;) > > http://galvosukykla.lt > > > > -- > > > > --- > > 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. > > For more options, visit https://groups.google.com/groups/opt_out. > > > > > > -- > > --- > You received this message because you are subscribed to a topic in the > Google Groups "web2py-users" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/web2py/KJDeQoLKw-M/unsubscribe?hl=en. > To unsubscribe from this group and all its topics, send an email to > web2py+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/groups/opt_out. > > > -- Jurgis Pralgauskis tel: 8-616 77613; Don't worry, be happy and make things better ;) http://galvosukykla.lt -- --- 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. For more options, visit https://groups.google.com/groups/opt_out.