使用python导入FPDF字体时出现问题

2024-10-01 17:41:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试使用pdf.add_font()命令,将专业字体导入到带有Python的FPDF包的默认字体之外。下面的代码生成了一个未定义字体的错误,好像我没有使用pdf.add_font()。下面您可以找到我的代码示例,以及相关字体位于pdf.add_font()命令中指定的目录中的证明。我还尝试在C:\Windows\Fonts目录中安装相关字体

from fpdf import FPDF

# Makes new pdf
nbareport = FPDF('P', 'mm', 'Letter')

# Imports new fonts
nbareport.add_font('CMU Serif', '', r'C:\Users\gregd\PycharmProjects\pythonProject2\venv\Lib\site-packages\matplotlib\mpl-data\fonts\ttf\cmu.serif-roman.ttf', uni=True)
nbareport.add_font('CMU Serif', 'B', r'C:\Users\gregd\PycharmProjects\pythonProject2\venv\Lib\site-packages\matplotlib\mpl-data\fonts\ttf\cmunbx.ttf', uni=True)

# Create instance of FPDF class
# Letter size paper, use inches as unit of measure
nbareport = FPDF(format='letter', unit='in')

nbareport.set_font('CMU Serif', '', 10)
nbareport.cell('Hello World!')
nbareport.output('test.pdf', 'F')

相关错误消息:

Traceback (most recent call last):
  File "C:\Users\gregd\PycharmProjects\pythonProject2\NBA Data\FPDF tester.py", line 14, in <module>
    nbareport.set_font('CMU Serif', '', 10)
  File "C:\Users\gregd\PycharmProjects\pythonProject2\venv\lib\site-packages\fpdf\fpdf.py", line 603, in set_font
    self.error('Undefined font: '+family+' '+style)
  File "C:\Users\gregd\PycharmProjects\pythonProject2\venv\lib\site-packages\fpdf\fpdf.py", line 227, in error
    raise RuntimeError('FPDF error: '+msg)
RuntimeError: FPDF error: Undefined font: cmu serif

Proof of fonts in the correct directory

谢谢大家!


Tags: inaddpdf字体fontsusersfontfpdf

热门问题