20

How to find out available fonts on the system from within Mathematica? When I do

Style["foobar", FontFamily -> "Foobar"]

how do I know which font the displayed output is using/falling back to use?

user13253
  • 8,666
  • 2
  • 42
  • 65

1 Answers1

24

The relevant line from this SO post:

fontlist = FE`Evaluate[FEPrivate`GetPopupList["MenuListFonts"]];

Update: The content of the "MenuListFonts" list is system-dependent. In Windows Vista, I get a list that contains only FontFamily:

 Panel@Row[fontlist[[;; 60]] /.
 Rule[x_, y_] :> Style[ToString@x, 14, FontFamily -> y],  " \[FilledSquare] "]

enter image description here

On a Mac system, it appears that the list contains tuples of FontFamily, FontWeight and FontSlant. That is,

fontlist /. Rule[x_, y_] :> Style[x, 20, FontFamily -> y] 

gives

enter image description here

kglr
  • 394,356
  • 18
  • 477
  • 896
  • FWIW even though i did not accept your answer at the time back when I asked the question linked by Vitaly (I chose a different one) your answer is actually the one I am regularly now using. – Mike Honeychurch Aug 31 '12 at 09:06
  • Thank you @Mike. The problem in your question still waits for a more direct solution -- everytime I come accross a new CurrentValue argument I wonder if it can be used for that problem. – kglr Aug 31 '12 at 10:25