From a22d9897afbabdd07f13d2bc5c7c5b9c5865ab53 Mon Sep 17 00:00:00 2001 From: Taco Hoekwater Date: Sat, 15 Mar 2014 12:21:15 +0000 Subject: here is luatex 0.79.0 git-svn-id: svn://tug.org/texlive/trunk@33180 c570f23f-e606-0410-a88d-b1316a301751 --- .../luafontloader/fontforge/fontforge/parsettf.c | 25 +++++++++++++++------- .../luafontloader/fontforge/fontforge/splinefont.h | 4 ++-- 2 files changed, 19 insertions(+), 10 deletions(-) (limited to 'Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge') diff --git a/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/parsettf.c b/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/parsettf.c index 339f99ffc29..92efbc7800f 100644 --- a/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/parsettf.c +++ b/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/parsettf.c @@ -4001,14 +4001,7 @@ static void readttfvwidths(FILE *ttf,struct ttfinfo *info) { tsb = getushort(ttf); if ( info->chars[i]!=NULL ) { /* can happen in ttc files */ info->chars[i]->vwidth = lastvwidth; -#if 0 /* this used to mean something once */ - /* At one point I stored the ymax of loading the glyph in lsidebearing*/ - /* I've removed that as it now seems pointless */ - if ( info->cff_start==0 ) { - voff += tsb + info->chars[i]->lsidebearing /* actually maxy */; - ++cnt; - } -#endif + info->chars[i]->tsb = tsb; } } if ( i==0 ) { @@ -5657,6 +5650,17 @@ static void PsuedoEncodeUnencoded(EncMap *map,struct ttfinfo *info) { if ( info->chars[i]!=NULL && !info->chars[i]->ticked ) ++extras; if ( extras!=0 ) { + /* UnicodeBmp has its own Private Use Areas */ + /* if (strcmp(map->enc_name","UnicodeBmp")==0) { */ + /* if ( (info->glyph_cnt < 0x18FF) && (map->enccount<0xE000)) */ + /* base = 0xE000 */ + /* else if ( map->enccount<0xF0000 ) */ + /* base = 0xF0000; */ + /* else if ( map->enccount<0x100000 ) */ + /* base = 0x100000; */ + /* else */ + /* base = map->enccount; */ + /* } else { */ if ( map->enccount<=256 ) base = 256; else if ( map->enccount<=65536 ) @@ -6050,6 +6054,11 @@ static SplineFont *SFFillFromTTFInfo(struct ttfinfo *info) { sf->units_per_em = info->emsize ; sf->pfminfo = info->pfminfo ; + free(info->savetab); + if ( sf->copyright==NULL ) + sf->copyright = info->copyright; + else + free( info->copyright ); return( sf ); } diff --git a/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/splinefont.h b/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/splinefont.h index 6dc6cec2b8a..edb726e0657 100644 --- a/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/splinefont.h +++ b/Build/source/texk/web2c/luatexdir/luafontloader/fontforge/fontforge/splinefont.h @@ -1130,9 +1130,9 @@ typedef struct splinechar { char *name; int unicodeenc; int orig_pos; /* Original position in the glyph list */ - int16 width, vwidth; + int16 width, vwidth, tsb; int16 xmin, ymin, xmax, ymax; - int16 lsidebearing; /* only used when reading in a type1 font */ + int16 lsidebearing; /* only used when reading in a type1 font */ /* Or an otf font where it is the subr number of a refered character */ /* or a ttf font without bit 1 of head.flags set */ /* or (once upon a time, but no longer) a ttf font with vert metrics where it is the ymax value when we had a font-wide vertical offset */ -- cgit v1.2.3