Undocumented style of changing matlab font
4 views (last 30 days)
Show older comments
I'm reading "Undocumented Secrets of matlab-java programming" by Yair Altman and try to change editor's font by means which are described in this book, but it has explicit examples only for color. Anyway, I managed to change font in matlab.prf by the following code:
FontName = "Consolas";
javaLangString = java.lang.String(FontName);
javaAwtFont = java.awt.Font(javaLangString,0,10);
com.mathworks.services.Prefs.setFontPref('Desktop.Font.Code2',javaAwtFont);
It does change font in preferences but doesn't press "apply" button. In other words it doesn't refresh environment font but change it in configuration file (matlab.prf). In case of color it was solved by this:
com.mathworks.services.ColorPrefs.notifyColorListeners('ColorsBackground');
It there any way to do this for font?
1 Comment
Accepted Answer
Yair Altman
on 10 Jan 2018
com.mathworks.services.FontPrefs.setCodeFont(javaAwtFont)
The FontPrefs class contains other useful static methods to set/get the text and code fonts, and to convert from the display font to the [larger] Java font (note: only the font-size changes) or vice-versa. Use my checkClass or uiinspect utilities (on the File Exchange) to investigate what this class offers.
Yair Altman
2 Comments
Yair Altman
on 10 Jan 2018
My pleasure - please be kind enough to place a positive review about the book on Amazon: http://amazon.com/Undocumented-Secrets-MATLAB-Java-Programming-Altman/product-reviews/1439869030/ref=cm_cr_dp_see_all_summary
More Answers (1)
Adam Danz
on 1 Apr 2021
Edited: Adam Danz
on 1 Apr 2021
This change will be maintained until the Matlab session ends:
S = setting;
S.matlab.fonts.codefont.Name.TemporaryValue = 'Consolas';
This change will be persistent across Matlab sessions for an individual user:
S = setting;
S.matlab.fonts.codefont.Name.PersonalValue = 'Consolas';
For Live Script font sizes, see S.matlab.fonts.editor
0 Comments
See Also
Categories
Find more on Environment and Settings 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!