You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matlab图形窗口及导出PDF时如何保留LaTeX字体并指定尺寸?

解决Matlab图形LaTeX字体一致性及指定尺寸导出PDF问题

一、实现图形窗口/导出文件的LaTeX字体统一

直接指定字体名会因Live脚本与独立图形窗口的渲染机制差异导致字体异常,改用Matlab的LaTeX渲染模式可彻底解决这个问题,步骤如下:

  1. 全局启用LaTeX解释器
    让所有文本元素(标签、刻度、图例等)都通过LaTeX渲染,保证跨环境字体一致:
% 全局设置文本解释器为LaTeX
set(0, 'DefaultTextInterpreter', 'latex');
set(0, 'DefaultAxesTickLabelInterpreter', 'latex');
set(0, 'DefaultLegendInterpreter', 'latex');
  1. 指定Latin Modern Roman字体
    通过LaTeX预加载lmodern包,替换默认的Computer Modern字体为Latin Modern Roman:
set(groot, 'DefaultTextPreamble', '\usepackage{lmodern}');
  1. 简化绘图代码
    无需再手动给每个标签指定FontName,直接用LaTeX语法编写文本(如上标^2)即可:
sun = dataset.sun;
time = linspace(0,10,length(sun));

plot(time, sun, 'LineWidth',3);

xlabel('Time [d]', 'FontSize', 35); 
ylabel('Solar Irradiance [W/m^2]', 'FontSize', 35); 
set(gca, 'FontSize', 25);

这样设置后,无论是Live脚本右侧预览、独立图形窗口,还是导出的PDF/SVG文件,都会统一显示Latin Modern Roman字体。

二、直接导出指定尺寸的PDF文件

使用Matlab推荐的exportgraphics函数(比旧版print更稳定),可直接指定导出尺寸,单位支持厘米:

% 获取当前图形对象
fig = gcf;
% 开启自动纸张位置模式,确保尺寸精准
fig.PaperPositionMode = 'auto';
% 导出宽15cm、高10cm的PDF,分辨率设为300DPI(按需调整)
exportgraphics(fig, 'solar_irradiance.pdf', 'Width', 15, 'Height', 10, 'Resolution', 300);

注意事项

  • 确保你的系统已安装LaTeX发行版(如TeX Live、MikTeX),Matlab需能调用LaTeX环境(可通过ver命令检查是否包含LaTeX支持);
  • lmodern包是LaTeX标准包,无需额外安装,若需其他字体可修改预加载的包。

内容的提问来源于stack exchange,提问作者Diodendomme

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 19:40:20