# How to find out available fonts from within Mathematica?

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?

-
Is this relevant? stackoverflow.com/questions/8859424 –  Vitaliy Kaurov Aug 29 '12 at 22:57
If you want to know what font the output is, you can highlight the text and open the text window (Ctrl + T or Cmd + T). For my system, your command leads to text in 'Lucida Grand'. –  programming_historian Aug 29 '12 at 23:00
I think kguler's answer in vitaliy's link is exactly what you're looking for... He's active on this site, so he'll be around soon to answer it himself –  rm -rf Aug 29 '12 at 23:16
yep FEEvaluate[FEPrivateGetPopupList["MenuListFonts"]][[All, 2]] –  belisarius Aug 30 '12 at 0:33

The relevant line from this SO post:

fontlist = FEEvaluate[FEPrivateGetPopupList["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] "]


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

-
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 9: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. –  kguler Aug 31 '12 at 10:25