我想知道在reportlab中注册字体的最佳时间是什么。我将以下行添加到我的settings.py中:
pdfmetrics.registerFont(TTFont('Calibri', FONT_DIR + '/fonts/Calibri.ttf'))
此调用后,该字体可用于生成pdf。但是几天之后字体就不再可用了,我必须重新启动django应用程序,这会导致重新注册字体。
我已经尝试过的一种方法是在每次pdf生成调用之前注册字体,因为每次调用3-5次调用都没有用。
我只是想知道settings.py是否是为reportlab注册字体的正确位置,如果是,那么几天之后该字体不可用的原因可能是什么??
- 编辑 -
实际上我们发现reportlab和mod-wsgi存在一些问题。我们切换到fast-cgi,再也没有看到过这个问题。
答案 0 :(得分:1)
我不知道reportlabs是如何工作的,但我可以说django。
Django不保证设置将被导入一次(可能是,还有其他任何问题)并且它不适合这样的事情。通常,urls.py用于对象注册(例如,admin.autodiscover)。