如果我尝试导入font_manager,则会出现此异常:
>>> from matplotlib import font_manager
Value error parsing header in AFM: ItalicAngle -11,31
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib64/python2.7/site-packages/matplotlib/font_manager.py", line 1325, in <module>
_rebuild()
File "/usr/lib64/python2.7/site-packages/matplotlib/font_manager.py", line 1312, in _rebuild
fontManager = FontManager()
File "/usr/lib64/python2.7/site-packages/matplotlib/font_manager.py", line 993, in __init__
self.afmlist = createFontList(self.afmfiles, fontext='afm')
File "/usr/lib64/python2.7/site-packages/matplotlib/font_manager.py", line 568, in createFontList
prop = afmFontProperty(fpath, font)
File "/usr/lib64/python2.7/site-packages/matplotlib/font_manager.py", line 485, in afmFontProperty
if font.get_angle() != 0 or name.lower().find('italic') >= 0:
File "/usr/lib64/python2.7/site-packages/matplotlib/afm.py", line 526, in get_angle
return self._header[b'ItalicAngle']
KeyError: 'ItalicAngle'
可能是什么错误?
答案 0 :(得分:0)
我找到了解决方案:有一个损坏的afm文件,该文件使用,
而不是.
我发现损坏的afm文件是这样的:
find /usr/share/fonts -iname '*afm' | xargs grep -i ItalicAngle | grep ,
/usr/share/fonts/Type1/Calibri-LightItalic.afm:ItalicAngle -11,31
文件Calibri-LightItalic.afm
已损坏。值-11,31
是错误的,它必须为-11.31
由于matplotlib使用缓存,因此您可能需要删除此文件.matplotlib / fontList.cache才能再次看到该异常。