如何使用PyFPDF在我的GAE应用程序中添加unicode字体?
我已经阅读了以下教程: https://pyfpdf.readthedocs.io/en/latest/Unicode/index.html#metric-files
FPDF将尝试自动生成有关TTF字体文件的指标(即字符宽度),以加快处理速度。
此类指标使用 Python Pickle格式(.pkl扩展名)存储,默认情况下位于字体目录中( 确保读写权限! )。有关缓存机制的其他信息在add_font引用中定义。
这里的问题是PyFPDF会在文件夹中创建指标文件(.pkl),它需要写权限,GAE不允许写文件,我应该怎么做?
谢谢!
乔尔
答案 0 :(得分:2)
add_font()函数使用FPDF_CACHE_MODE常量,该常量看起来是指定是否写入.pkl文件的常量。该常量可以具有三个值(0,1或2)。如果设置为1则不会写入.pkl文件。此常量在库的fpdf.py文件中定义。因此,在进行部署之前,需要修改此文件并将常量设置为1.
答案 1 :(得分:0)
虽然可接受的解决方案有效,但要求您将fpdf源文件包含到您的项目中,如果您只想使用fpdf软件包,这是不理想的。
一种在不更改源文件的情况下也有效的解决方案是通过FPDF_CACHE_MODE
)函数设置全局变量set_global(
,该函数在FPDF软件包中提供。
示例:
import fpdf
fpdf.set_global("FPDF_CACHE_MODE", 1)