load_resource 函数未找到作为 FPDF 的 class 方法

load_resource function not found as a class method of FPDF

我正在查看以下问题的答案:

此处建议的答案是覆盖现有的 load_resource 方法。

我做的是

class EnhancedPdf(FPDF):

    def load_resource(self, reason, filename):
        if reason == "image":
            if filename.startswith("data"):
                f = filename.split("base64,")[1]
                f = base64.b64decode(f)
                f = BytesIO(f)
                return f
            else:
                return super().load_resource(reason, filename)

但是,Pycharm 为 class "FPDF"

突出显示带有消息 "Unresolved attribute reference "load_resource" 的超级调用

在我的命令行中,我 运行 命令

from fpdf import FPDF
   dir(FPDF)

检查此列表,我发现 load_resource 函数确实不是列出的方法。因此我的问题是为什么 load_resource 函数不可见?

很可能您正在使用 Python 3.x where x >= 5 。

在 pypi 上它说该模块仅对 python 3.y 提供实验性支持,其中 y <= 4 .

用 python 2.7 试试看,它可能会起作用。

PS:最好尝试 https://pypi.org/project/fpdf2/, the updated version. For bugs or issues see https://github.com/alexanderankin/pyfpdf .

如果你真的想使用旧版本,你可以像这样从原始仓库安装你想要的任何版本

pip install git+https://github.com/reingart/pyfpdf@<branchname of tag or commit>