使用 print() 时保持自定义图形字体大小

Keeping custom figure font size when using print()

我是 运行 一个自己编写的脚本,它绘制并保存了大量(超过 100 个)图表,我使用

将轴文本设置为 18pt

set(0,'defaultAxesFontSize',18);

使用savefig()命令将数字保存为.fig,字体大小正确。但是当我使用 print(name, '-djpeg') 将它们另存为 .jpg (将包含在 LaTeX 报告中)时,字体大小是常规的默认大小(猜测大约 10pt)。如果我打开其中一个 .fig 文件并执行文件 > 另存为,生成的 .jpg 文件具有所需的字体大小。

如何在命令行中解决这个问题?

编辑:

我也试过使用saveas(gcf, name, 'jpg'),但结果是一样的。

编辑 2:

这是一个最小的例子

set(0,'defaultAxesFontSize',18);

x = linspace(0, 2*pi);

plot(x, sin(x))
title('Sine')
xlabel('x')
ylabel('y')
legend('y = sin(x)')

fig = strcat('Sine')
savefig(fig)
print(fig, '-djpeg')

坦克 卡莎

我需要将纸张定位模式设置为自动以使打印的尺寸与屏幕上的图形相同。

这对所有数字都是如此

set(0,'defaultAxesFontSize',18);
set(0,'DefaultFigurePaperPositionMode','auto')

x = linspace(0, 2*pi);

figure(1)
plot(x, sin(x))
title('Sine')
xlabel('x')
ylabel('y')
legend('y = sin(x)')

fig = strcat('Sine')
savefig(fig)
print(fig, '-djpeg')

效果很好。