[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[ft-devel] Improved handling of ascender and descender
From: |
Werner LEMBERG |
Subject: |
[ft-devel] Improved handling of ascender and descender |
Date: |
Sun, 03 Jul 2011 11:41:03 +0200 (CEST) |
Folks,
I'm going to apply the change below (in sfnt/sfobjs.c). Only if a
font has zero values for `hhea' table's ascender and descender,
FreeType tries harder to find reasonable values.
Any objections?
Werner
======================================================================
old code:
root->ascender = face->horizontal.Ascender;
root->descender = face->horizontal.Descender;
root->height = (FT_Short)( root->ascender - root->descender +
face->horizontal.Line_Gap );
======================================================================
new code:
root->ascender = face->horizontal.Ascender;
root->descender = face->horizontal.Descender;
root->height = (FT_Short)( root->ascender - root->descender +
face->horizontal.Line_Gap );
if ( !( root->ascender || root->descender ) )
{
if ( face->os2.version != 0xFFFFU )
{
if ( face->os2.sTypoAscender || face->os2.sTypoDescender )
{
root->ascender = face->os2.sTypoAscender;
root->descender = face->os2.sTypoDescender;
root->height = (FT_Short)( root->ascender - root->descender +
face->os2.sTypoLineGap );
}
else
{
root->ascender = (FT_Short)face->os2.usWinAscent;
root->descender = -(FT_Short)face->os2.usWinDescent;
root->height = (FT_UShort)( root->ascender - root->descender );
}
}
}
- [ft-devel] Improved handling of ascender and descender,
Werner LEMBERG <=