我正在尝试将我的数字导出为PDF格式。我遇到的问题是,当我想编辑它时(在本例中是由macOS上的Graphic)编辑器找不到该字体。我的问题是,我该如何解决这个问题?我可以安装' matplotlib使用的字体?
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([0,1], [0,1])
plt.savefig('test.pdf')
此PDF在预览中看起来很好:
但在编辑中,它给出了胡言乱语:
设置
matplotlib.rc("pdf", fonttype=42)
(见this answer)。
安装所有matplotlib的字体有什么作用。我跟着this answer找到了所有matplotlib的ttfs,并安装了它们。这有效并解决了这个问题。
但是...... 这确实解决了启用LaTeX时的问题,
import matplotlib
matplotlib.rcParams['text.usetex'] = True
如何安装matplotlib现在使用的字体?
这里的解决方案是导出为SVG。但是,由于某种原因,我的系统需要很长时间(参见this bug)。
答案 0 :(得分:0)
您正在使用什么pdf编辑器?我不知道如何检查尝试解决此问题的方法是否有效...但是我总是使用此代码将图像保存为pdf或png:
plt.savefig('test.pdf', edgecolor='none', bbox_inches="tight")
答案 1 :(得分:0)
我找到了解决方法。这是在编辑之前将所有字体转换为轮廓。一种实现方法是使用带有return begin() + size()
选项的GhostScript,如this answer中所述:
-dNoOutputFonts