[gf, pk] Resolve *glyph jumping* error.

* src/gf/gfdrivr.c(GF_Load_Glyph): Modify glyph metric values
to resolve the *glyph jumping* error and make the glyphs to
properly sit on baseline.

* src/pk/pkdrivr.c(PK_Glyph_Load): Ditto.
This commit is contained in:
Parth Wazurkar 2018-08-07 19:38:26 +05:30
parent ad0453fd39
commit 5485407707
2 changed files with 4 additions and 8 deletions

View File

@ -369,7 +369,6 @@
FT_Bitmap* bitmap = &slot->bitmap;
GF_BitmapRec bm;
GF_Glyph go;
FT_Int ascent;
go = gf->gf_glyph;
@ -427,14 +426,13 @@
/* we can simply point to it */
ft_glyphslot_set_bitmap( slot, bm.bitmap );
ascent = (bm.bbx_height + bm.off_y);
slot->format = FT_GLYPH_FORMAT_BITMAP;
slot->bitmap_left = bm.off_x ;
slot->bitmap_top = ascent ;
slot->bitmap_top = bm.off_y ;
slot->metrics.horiAdvance = (FT_Pos) (bm.mv_x ) * 64;
slot->metrics.horiBearingX = (FT_Pos) (bm.off_x ) * 64;
slot->metrics.horiBearingY = (FT_Pos) ascent * 64;
slot->metrics.horiBearingY = (FT_Pos) (bm.bbx_height) * 64;
slot->metrics.width = (FT_Pos) ( bitmap->width * 64 );
slot->metrics.height = (FT_Pos) ( bitmap->rows * 64 );

View File

@ -365,7 +365,6 @@
FT_Bitmap* bitmap = &slot->bitmap;
PK_BitmapRec bm;
PK_Glyph go;
FT_Int ascent;
go = pk->pk_glyph;
@ -423,14 +422,13 @@
/* we can simply point to it */
ft_glyphslot_set_bitmap( slot, bm.bitmap );
ascent = (bm.bbx_height + bm.off_y);
slot->format = FT_GLYPH_FORMAT_BITMAP;
slot->bitmap_left = bm.off_x ;
slot->bitmap_top = ascent ;
slot->bitmap_top = bm.off_y ;
slot->metrics.horiAdvance = (FT_Pos) (bm.mv_x ) * 64;
slot->metrics.horiBearingX = (FT_Pos) (bm.off_x ) * 64;
slot->metrics.horiBearingY = (FT_Pos) ascent * 64;
slot->metrics.horiBearingY = (FT_Pos) (bm.bbx_height) * 64;
slot->metrics.width = (FT_Pos) ( bitmap->width * 64 );
slot->metrics.height = (FT_Pos) ( bitmap->rows * 64 );