[reportlab-users] RenderPMError when using TTF in bitmaps
Dinu Gherman
gherman at darwin.in-berlin.de
Sat Jan 13 04:34:54 EST 2018
Hello!
in a toy project I register a TrueType font, use it in a Drawing and save that as a PNG (see code below), but I’m getting a warning and traceback, that suggests I need PFB files for that font. I’ve reproduced this at least with one other TTF, too.
I believe I did that kind of thing without any trouble some years ago, or maybe I have false memories? Any ideas? This is on Python 3.6 and reportlab 3.4.0.
Cheers,
Dinu
from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfbase import pdfmetrics
from reportlab.graphics.shapes import Drawing, String
from reportlab.graphics import renderPM
ttf = TTFont('Code2000', 'fonts/Code2000.ttf')
pdfmetrics.registerFont(ttf)
d = Drawing(500, 500)
fn, fs = 'Code2000', 24
text = String(0, 0, "foo bar", fontName=fn, fontSize=fs)
d.add(text)
renderPM.drawToFile(d, "foo_bar.png", fmt="PNG", dpi=72)
Warn: Can't find .pfb for face 'b'Code2000‘'
[...]
[...]/lib/python3.6/site-packages/reportlab/graphics/renderPM.py in _setFont(gs, fontName, fontSize)
249 except:
250 s1, s2 = list(map(str,sys.exc_info()[:2]))
--> 251 raise RenderPMError("Can't setFont(%s) missing the T1 files?\nOriginally %s: %s" % (fontName,s1,s2))
252 gs.setFont(fontName,fontSize)
253
RenderPMError: Can't setFont(Code2000) missing the T1 files?
Originally <class 'AttributeError'>: 'TTEncoding' object has no attribute ‚v
ector'
More information about the reportlab-users
mailing list