On Tue, Mar 25, 2008 at 12:02 PM, Michael Droettboom <[EMAIL PROTECTED]> wrote:
> The *intention* is that the fonts *should* be included (with the > exception of ps.useafm == True). That was definitely not a deliberate > change. > > However, as one of the ones who hasn't been able to reproduce this > problem, I'm afraid I'm not of much help. From reading the code, I'm > still completely stumped as to why the font is not embedded. Someone > will have to step through with a debugger on one of the broken systems > to figure this out, I'm afraid. I was able to replicate the bug and find the source of the problem. I am not 100% sure how to fix it, but someone who knows os.stat better might. The problem is that matplotlib.cbook.get_realpath_and_stat class GetRealpathAndStat: def __init__(self): self._cache = {} def __call__(self, path): result = self._cache.get(path) if result is None: realpath = os.path.realpath(path) stat = os.stat(realpath) stat_key = (stat.st_ino, stat.st_dev) result = realpath, stat_key self._cache[path] = result return result get_realpath_and_stat = GetRealpathAndStat() is returning the same stat ino and dev for all the font files, and thus the renderer.used_characters dictionary is getting improper keys -- always (0,0). So the first font in the gate, in this case Vera, is getting a place in the dict and subsequent fonts (the cm* ones) are not. The basic problem is that the inode and dev appear to be unix only. Michael: if you let me know better what this key is supposed to be doing (can we not simply use the filename for windows?) then I can attempt or test some fixes. JDH ------------------------------------------------------------------------- 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