set latters in a string to different fontsizes with interpreter latex
14 views (last 30 days)
Show older comments
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',...
'string','$\fontsize{12}{xxx}\fontsize{8}{yyyy}$',...
'fontname','Times New Roman');
Thanks!
4 Comments
Daniel Shub
on 17 Jun 2013
@Tom, have you tried it using TeX and not LaTeX. What makes you think that using LaTeX macros (|\fontsize|) would work with the TeX interpreter?
Tom
on 17 Jun 2013
@Daniel - I have and it appears to work, besides the $ signs appearing as part of the text.
Accepted Answer
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$');
1 Comment
More Answers (0)
See Also
Categories
Find more on LaTeX in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!