5

根据 MA​​TLAB 手册,当您使用print或 通过选择保存图形时file|save,如果您选择painters渲染器并保存为 PDF 或 EPS 矢量格式,所有字体都会被替换。有没有办法绕过这个限制?

每当我输出一个图形时,无论我使用print还是export_fig,字体都会被替换,因此它们不再与我计划将图形放入的文档中的字体匹配。我更愿意将它们保持为矢量格式,因为我使用 LaTeX,所以我希望能够在我的文档中使用与我的beamer演示文稿中相同的数字,并让它们很好地缩放而不会使文件大小膨胀。

4

2 回答 2

4

如果我正确阅读了该链接,则并非所有字体都会被替换。从“选择打印机驱动程序”

下表列出了使用 Painters 渲染器生成时 MATLAB PostScript 和 Ghostscript 驱动程序支持的字体(完全矢量化输出)。Windows 和 UNIX 都支持同一组字体:

AvantGarde
Helvetica-Narrow
Times-Roman
Bookman
NewCenturySchlbk
ZapfChancery
Courier
Palatino
ZapfDingbats
Helvetica
Symbol

因此,如果您使用上述字体之一,则输出的矢量格式图形应保持正确的字体。参见例如:

list_fonts = listfonts
figure('renderer','painters'),
plot(peaks),
xlabel('this font is Helvetica','fontname','Helvetica','fontsize',24)
set(gcf,'paperpositionmode','auto')
print(gcf,'-depsc2','test1.eps')

产生:

示例输出

因此,从上面的列表中选择一种字体,字体将正确输出。否则,请更改演示文稿中的字体以匹配上述字体之一。

于 2013-05-30T23:41:45.613 回答
0

我也遇到过很多次这个问题,我有一个简单但有效的方法,永远不会让我失败(在Windows上,需要GSview)。

1)将无花果另存为PDF

2)将PDF另存为ps

3)用GSview打开ps,然后点击“File->PS to EPS”,指定文件名,完成。

希望这可以帮助。

于 2014-02-24T03:46:44.023 回答