PyFPDF 在 Google App Engine 中添加 Unicode 字体



如何使用 PyFPDF 在我的 GAE 应用程序中添加 unicode 字体?

我已经浏览了以下教程:https://pyfpdf.readthedocs.io/en/latest/Unicode/index.html#metric-files

FPDF 将尝试自动生成有关 TTF 字体文件的指标(即字符宽度(,以加快其处理速度。

此类指标使用 Python Pickle 格式(.pkl 扩展名(存储,默认存储在字体目录中(确保读写权限!有关缓存机制的其他信息在add_font参考中定义。

这里的问题是 PyFPDF 会在文件夹中创建指标文件 (.pkl(,它需要写入权限,GAE 不允许写入文件,我该怎么办?

谢谢!

乔尔

add_font(( 函数利用了FPDF_CACHE_MODE常量,该常量看起来像是指定是否写入 .pkl 文件的常量。此常量可能有三个值(0、1 或 2(。如果稳定为 1,则它不会写入 .pkl 文件。此常量在库的 fpdf.py 文件中定义。因此,在执行部署之前,需要修改此文件并将常量设置为 1。

虽然接受的解决方案有效,但它要求您将 fpdf 源文件包含在项目中,如果您只想使用 fpdf 包,这并不理想。

在不更改源文件的情况下也可以使用的解决方案是通过 set_global( ( 函数设置全局变量FPDF_CACHE_MODE,该函数在 FPDF 包中提供。

例:

import fpdf
fpdf.set_global("FPDF_CACHE_MODE", 1)

最新更新