Michael Droettboom <[EMAIL PROTECTED]> writes:
> All the magic happens in "convert_ttf_to_ps", which is C code, called 
> from backend_ps.py.  I'd start by seeing if that function is even 
> called, and if not, why...

One possible source of platform-specific issues is
cbook.get_realpath_and_stat, which is used on the font files to obtain
hash keys. Does stat do anything sensible on Windows?

Mark: Could you try applying the following patch to your installed
version of lib/matplotlib/backends/backend_ps.py? There should be no
need to recompile anything. If you don't have a patch utility, just make
a backup of the file, open it in a text editor, find the relevant parts,
and add each line prefixed with + below (omitting the + signs,
naturally). Then run your script and post the output. That should tell
us if the chi character is not even registered as used, or if the bug is
in the embedding code.

Index: backend_ps.py
===================================================================
--- backend_ps.py	(revision 5020)
+++ backend_ps.py	(working copy)
@@ -152,16 +152,22 @@
     def track_characters(self, font, s):
         """Keeps track of which characters are required from
         each font."""
+        print 'track_characters', font, repr(s)
         realpath, stat_key = get_realpath_and_stat(font.fname)
+        print ' *', realpath, stat_key
         used_characters = self.used_characters.setdefault(
             stat_key, (realpath, Set()))
         used_characters[1].update(s)
+        print ' *', used_characters
 
     def merge_used_characters(self, other):
+        print 'merge_used_characters'
         for stat_key, (realpath, set) in other.items():
+            print ' *', stat_key, realpath, set
             used_characters = self.used_characters.setdefault(
                 stat_key, (realpath, Set()))
             used_characters[1].update(set)
+            print ' *', used_characters
 
     def set_color(self, r, g, b, store=1):
         if (r,g,b) != self.color:
@@ -1144,7 +1150,9 @@
             for l in d.split('\n'):
                 print >>fh, l.strip()
         if not rcParams['ps.useafm']:
+            print '_print_figure', renderer.used_characters
             for font_filename, chars in renderer.used_characters.values():
+                print ' *', font_filename, chars
                 if len(chars):
                     font = FT2Font(font_filename)
                     cmap = font.get_charmap()
-- 
Jouni K. Seppänen
http://www.iki.fi/jks
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to