Revision: 8432
          http://matplotlib.svn.sourceforge.net/matplotlib/?rev=8432&view=rev
Author:   efiring
Date:     2010-06-14 02:33:37 +0000 (Mon, 14 Jun 2010)

Log Message:
-----------
[3015614] give examples/api/font_file.py a fighting chance on Linux and Win

Modified Paths:
--------------
    trunk/matplotlib/examples/api/font_file.py

Modified: trunk/matplotlib/examples/api/font_file.py
===================================================================
--- trunk/matplotlib/examples/api/font_file.py  2010-06-14 01:49:12 UTC (rev 
8431)
+++ trunk/matplotlib/examples/api/font_file.py  2010-06-14 02:33:37 UTC (rev 
8432)
@@ -1,19 +1,40 @@
-# -*- noplot -*-
-"""
-Although it is usually not a good idea to explicitly point to a single
-ttf file for a font instance, you can do so using the
-font_manager.FontProperties fname argument (for a more flexible
-solution, see the font_fmaily_rc.py and fonts_demo.py examples).
-"""
-import matplotlib.font_manager as fm
-
-import matplotlib.pyplot as plt
-
-fig = plt.figure()
-ax = fig.add_subplot(111)
-ax.plot([1,2,3])
-
-prop = fm.FontProperties(fname='/Library/Fonts/Tahoma.ttf')
-ax.set_title('this is a special font', fontproperties=prop)
-plt.show()
-
+# -*- noplot -*-
+"""
+Although it is usually not a good idea to explicitly point to a single
+ttf file for a font instance, you can do so using the
+font_manager.FontProperties fname argument (for a more flexible
+solution, see the font_fmaily_rc.py and fonts_demo.py examples).
+"""
+import sys
+import os
+import matplotlib.font_manager as fm
+
+import matplotlib.pyplot as plt
+
+fig = plt.figure()
+ax = fig.add_subplot(111)
+ax.plot([1,2,3])
+
+if sys.platform == 'win32':
+    fpath = 'C:\\Windows\\Fonts\\Tahoma.ttf'
+elif sys.platform == 'linux2':
+    fonts = ['/usr/share/fonts/truetype/freefont/FreeSansBoldOblique.ttf',
+      '/usr/share/fonts/truetype/ttf-liberation/LiberationSans-BoldItalic.ttf',
+      '/usr/share/fonts/truetype/msttcorefonts/Comic_Sans_MS.ttf',
+      ]
+    for fpath in fonts:
+        if os.path.exists(fpath):
+            break
+else:
+    fpath = '/Library/Fonts/Tahoma.ttf'
+
+if os.path.exists(fpath):
+    prop = fm.FontProperties(fname=fpath)
+    fname = os.path.split(fpath)[1]
+    ax.set_title('this is a special font: %s' % fname, fontproperties=prop)
+else:
+    ax.set_title('Demo fails--cannot find a demo font')
+ax.set_xlabel('This is the default font')
+
+plt.show()
+


This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.

------------------------------------------------------------------------------
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
_______________________________________________
Matplotlib-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-checkins

Reply via email to