我正在使用matplotlib在Linux上使用名为FreeSans的ttf字体。创建我的身材为:如何在由matplotlib生成的PDF中嵌入字体?
from matplotlib import rc
plt.rcParams['ps.useafm'] = True
rc('font',**{'family':'sans-serif','sans-serif':['FreeSans']})
plt.rcParams['pdf.fonttype'] = 42
plt.figure()
# plot figure...
plt.savefig("myfig.pdf")
当我打开它在另一个程序(例如Mac OS X上的插画),则字体不出现以及默认的字体来代替,因为FreeSans不可用。
我该如何做到这一点,matplotlib嵌入在它生成的每个PDF中的字体?如果文件较大,我不介意。谢谢。
但是,当我在Illustrator中打开它,它试图找到FreeSans。它说该字体不存在,并提供给我“嵌入”它,在这种情况下,它使用Illustrator默认的Myriad Pro字体打开PDF。所以它似乎不像FreeSans嵌入,除非Illustrator搞砸了? – user248237dfsf 2012-01-29 17:29:07
最后要做的事情是从Xpdf获取pdffonts,然后在您的pdf上运行它。它会告诉你什么字体嵌入。 – 2012-01-29 17:32:06
@ user248237嵌入字体。但它不是一套完整的字体(只使用字符)。这就是Illustrator无法使用它的原因,因为它不作为系统字体存在,并且仅作为文件中的有限字符集存在。 – tiago 2012-10-18 01:46:15