MATLAB Answers

set latters in a string to different fontsizes with interpreter latex

87 views (last 30 days)
yang yang
yang yang on 17 Jun 2013
Commented: Elias de Korte on 16 Feb 2019
I want to set latters in a string to different fontsizes with interpreter latex, but the following commond doesn't work. Why?
text('position',[0.8 0.9 0],'interpreter','latex',...
'fontname','Times New Roman');
Tom on 17 Jun 2013
@Daniel - I have and it appears to work, besides the $ signs appearing as part of the text.

Sign in to comment.

Accepted Answer

Daniel Shub
Daniel Shub on 17 Jun 2013
Presumably by "doesn't work" you mean there is not a difference in the font size. The reason there is no difference in the font size is that your example has a number of different problems. The first problem is you are trying to set the font size within a math environment, but LaTeX doesn't allow you to do this. The second problem is that for whatever reason TMW have disabled the traditional LaTeX font size commands (e.g., \large) in MATLAB forcing us to use the lower level \fontsize macro. The problem is you are using this macro incorrectly. The \fontsize macro takes two arguments. The first argument is the font size, which you appear to be providing correctly. The second argument is the baselineskip, but you appear to be providing the text you want to increase the font size of. This argument doesn't really matter in MATLAB since for whatever reason TMW have disabled the ability to to put in line breaks. The final problem is that the \fontsize macro does not actually change the font. To do that you need to use the \selectfont macro.
On a somewhat unrelated note, choosing a font in LaTeX is very tricky. It is not clear what you hope to accomplish with the fontname PV that you are providing, but it is not going to change the font. There was a recent blog post on Undocumented Matlab about it.
Putting it all together gives:
text('position',[0.8 0.9 0],'interpreter','latex','string','\fontsize{12}{0}\selectfont$xxx$\fontsize{8}{0}\selectfont$yyyy$');

More Answers (0)


Community Treasure Hunt

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

Start Hunting!

Translated by