Extract spacing from XLFD atom

This commit is contained in:
Juliusz Chroboczek 2003-05-14 20:23:24 +00:00
parent 0b7a0da20b
commit ecb7c180d0
1 changed files with 14 additions and 0 deletions

View File

@ -934,6 +934,20 @@ FcFreeTypeQuery (const FcChar8 *file,
if (!cs)
goto bail1;
#ifdef USE_FTBDF
/* For PCF fonts, override the computed spacing with the one from
the property */
if(MY_Get_BDF_Property(face, "SPACING", &prop) == 0 &&
prop.type == BDF_PROPERTY_TYPE_ATOM) {
if(strcmp(prop.u.atom, "c") || strcmp(prop.u.atom, "C"))
spacing = FC_CHARCELL;
else if(strcmp(prop.u.atom, "m") || strcmp(prop.u.atom, "M"))
spacing = FC_MONO;
else if(strcmp(prop.u.atom, "p") || strcmp(prop.u.atom, "P"))
spacing = FC_PROPORTIONAL;
}
#endif
/*
* Skip over PCF fonts that have no encoded characters; they're
* usually just Unicode fonts transcoded to some legacy encoding