Generate FC_SIZE and FC_DPI for legacy bitmap fonts
This commit is contained in:
parent
d47c9d6efe
commit
0f362ad520
|
@ -978,6 +978,47 @@ FcFreeTypeQuery (const FcChar8 *file,
|
||||||
goto bail1;
|
goto bail1;
|
||||||
if (!FcPatternAddBool (pat, FC_ANTIALIAS, FcFalse))
|
if (!FcPatternAddBool (pat, FC_ANTIALIAS, FcFalse))
|
||||||
goto bail1;
|
goto bail1;
|
||||||
|
#ifdef USE_FTBDF
|
||||||
|
if(face->num_fixed_sizes == 1) {
|
||||||
|
int rc;
|
||||||
|
int value;
|
||||||
|
BDF_PropertyRec prop;
|
||||||
|
|
||||||
|
rc = MY_Get_BDF_Property(face, "PIXEL_SIZE", &prop);
|
||||||
|
if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_INTEGER)
|
||||||
|
value = prop.u.integer;
|
||||||
|
else if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_CARDINAL)
|
||||||
|
value = prop.u.cardinal;
|
||||||
|
else
|
||||||
|
goto nevermind;
|
||||||
|
if(value != face->available_sizes[0].height)
|
||||||
|
/* ``impossible'' */
|
||||||
|
goto nevermind;
|
||||||
|
|
||||||
|
rc = MY_Get_BDF_Property(face, "POINT_SIZE", &prop);
|
||||||
|
if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_INTEGER)
|
||||||
|
value = prop.u.integer;
|
||||||
|
else if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_CARDINAL)
|
||||||
|
value = prop.u.cardinal;
|
||||||
|
else
|
||||||
|
goto nevermind;
|
||||||
|
if(!FcPatternAddDouble(pat, FC_SIZE, value / 10.0))
|
||||||
|
goto nevermind;
|
||||||
|
|
||||||
|
rc = MY_Get_BDF_Property(face, "RESOLUTION_Y", &prop);
|
||||||
|
if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_INTEGER)
|
||||||
|
value = prop.u.integer;
|
||||||
|
else if(rc == 0 && prop.type == BDF_PROPERTY_TYPE_CARDINAL)
|
||||||
|
value = prop.u.cardinal;
|
||||||
|
else
|
||||||
|
goto nevermind;
|
||||||
|
if(!FcPatternAddDouble(pat, FC_DPI, (double)value))
|
||||||
|
goto nevermind;
|
||||||
|
|
||||||
|
}
|
||||||
|
nevermind:
|
||||||
|
;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue