[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Devel] Re: Mac fonts: getting multiple faces from FOND?

From: Leonard Rosenthol
Subject: [Devel] Re: Mac fonts: getting multiple faces from FOND?
Date: Wed, 12 Feb 2003 13:40:43 -0500

At 12:09 PM -0600 2/12/03, Dan Williams wrote:
How do you get access to all the rest of the 'sfnt' faces? From my reading of the code, you can _never_ get an aface back that contains _any_ of the other faces, like 20647, 5177, 1404, or 5669. parse_fond() contains code to deal with this:

    fond       = (FamRec*)fond_data;
    assoc      = (AsscEntry*)( fond_data + sizeof ( FamRec ) + 2 );
    base_assoc = assoc;
assoc += face_index; /* add on the face_index! */ <----- ALWAYS will be 0 by here

But by this point, FT_New_Face_From_dfont() has already set face_index to 0 before it passed face_index to FT_New_Face_From_FOND()!!

        Oh, that would indeed be an issue - I hadn't noticed that...

If this behavior of face_index always being 0 is intended, then why is this comment here (from Oct 2001)?

     Thanks to Paul Miller (address@hidden) for the fix
     to load a face OTHER than the first one in the FOND!

So it sounds like the dfont() method needs to do something similar to what we've done in the other methods to allow face_index to be correct.

Our problem with is that we use Freetype for font rendering, but do our own font management. So therefore, we have to get all 'sfnt' resources in a Mac font file, but we can't make Freetype see them at all.

If you've already got a Handle to the sfnt, why not just do what Joost suggested and call New_Face_From_SFNT()?? (once we export it)

Leonard Rosenthol                            <mailto:address@hidden>

reply via email to

[Prev in Thread] Current Thread [Next in Thread]