exportgraphics function output has incorrect font and spacing between characters

15 次查看(过去 30 天)
I'm exporting a figure of a plot using the exportgraphics function. For both vector .pdf and raster .png files, the sans serif LaTeX font is not shown correctly in both cases.
Snippet:
exportgraphics(fig, ...
'output.png', ...
'Resolution', 300)
exportgraphics(fig, ...
'output.pdf', ...
'ContentType', 'vector')
Where 'fig' is the figure object in question. Also, MATLAB shows the following warning:
% Error updating Text.
% Font cmss10 is not supported.
Below is a comparison of what I see in MATLAB and what the exported .png looks like.
MATLAB:
PNG output:
The vector output in PDF looks just like the PNG.

回答(1 个)

Avni
Avni 2023-10-19
Hi Johann,
I understand that facing some problem while exporting the plotted graph with Sans Serif Latex font.
To achieve this, please refer to the following code as example:
fig = figure;
plot(magic(5));
xlabel("testing (X)", "FontName","SansSerif", "Interpreter","latex")
ylabel("testing (Y)", "FontName","SansSerif", "Interpreter","latex")
ax = gca;
exportgraphics(ax, 'output.png','Resolution', 300)
exportgraphics(ax,'output.pdf', 'ContentType', 'vector')
By following these steps, you should be able to export a figure with labels in sans serif LaTeX font in both JPG and PDF formats using “exportgraphicsfunction in MATLAB.
You can refer to these MATLAB documentations for more information:
I hope this helps.
  2 个评论
Johann
Johann 2023-10-22
编辑:Johann 2023-10-22
Thanks for your help, Avni.
Unfortunately, if you look closely in the image you uploaded yourself, you will notice that the font family of the labels is LaTeX's Serif font, and not the Sans Serif one. That is even stranger since the ticks are the correct Sans Serif font. I tested your code and got the same result.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Printing and Saving 的更多信息

产品


版本

R2023b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by