> > I'm looking at the DejaVu fonts, specifically the condensed
> > variant, like DejaVuSansCondensed-BoldOblique.ttf. When I load it
> > with FreeType I see that the family_name as available in the
> > FT_FaceRec structure is "DejaVu Sans". From where does FreeType
> > get this info? If I try harder, i.e. load the FT_SfntName
> > structure, I see that TT_NAME_ID_FONT_FAMILY does contain the full
> > name, "DejaVu Sans Condensed"...
>
> OK, so FT_Face->family_name is set to the preferred Windows family
> of the TrueType "name" structure.

Yes, this is the `newer' interface -- `DejaVu Sans' is the real family
name, while `condensed' is an attribute.

> But I'm on OS/2, so I think I want the normal font family as listed
> in the font family field of the "name" structure.  (I would imagine
> that Linux users would want the same but I didn't check my test
> program on Linux how FreeType reacts there.)

No, Linux users want the better interface as given with the
`preferred' fields :-)

> Can I change some #ifdef in the FreeType code (where?) or do I need
> to do that by hand using FT_SfntName etc.?

The relevant code is in sfobjs.c, in function sfnt_load_face, but
using FT_SfntName is of course the correct way to access those fields.
However, it's not clear to me why you prefer the inferior scheme.  Can
you elaborate on that?


    Werner


_______________________________________________
Freetype mailing list
[email protected]
http://lists.nongnu.org/mailman/listinfo/freetype

Reply via email to