X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fpdf%2FInfoOutputDev.cc;h=9ee72167618a42e4832887c34fad23c1207e18e9;hp=ba151a1678fbce24780a4fe77b35a3d99d91e485;hb=a2d36e985ed73936126b8895aa396fa77a048ffe;hpb=62f28906ebae10fa325af43bf19315260c344303 diff --git a/lib/pdf/InfoOutputDev.cc b/lib/pdf/InfoOutputDev.cc index ba151a1..9ee7216 100644 --- a/lib/pdf/InfoOutputDev.cc +++ b/lib/pdf/InfoOutputDev.cc @@ -17,6 +17,7 @@ #include "../log.h" #include "../types.h" #include "../q.h" +#include "../gfxfont.h" #include #include @@ -103,6 +104,8 @@ FontInfo::~FontInfo() } dict_destroy(d); } + free(kerning); + kerning=0; } } @@ -204,7 +207,6 @@ static gfxfont_t* createGfxFont(FontInfo*src) if(src->glyphs[t]->advance>0) { glyph->advance = src->glyphs[t]->advance; } else { - msg(" Approximating advance value for glyph %d", t); glyph->advance = xmax*scale; } if(config_bigchar) { @@ -217,14 +219,8 @@ static gfxfont_t* createGfxFont(FontInfo*src) font->num_glyphs++; } } - font->unicode2glyph = (int*)malloc(sizeof(int)*font->max_unicode); - memset(font->unicode2glyph, -1, sizeof(int)*font->max_unicode); - for(t=0;tnum_glyphs;t++) { - if(font->glyphs[t].unicode>0 && font->glyphs[t].unicodemax_unicode) { - font->unicode2glyph[font->glyphs[t].unicode] = t; - } - } + gfxfont_fix_unicode(font); int kerning_size = 0; for(t=0;tnum_glyphs;t++) { @@ -247,10 +243,6 @@ static gfxfont_t* createGfxFont(FontInfo*src) font->kerning[pos].c1 = src->glyphs[t]->glyphid; font->kerning[pos].c2 = src->glyphs[(int)(ptroff_t)key]->glyphid; font->kerning[pos].advance = (int)(ptroff_t)m->first->key; - printf("kerning[%d] = (%d,%d,%d)\n", pos, - font->kerning[pos].c1, - font->kerning[pos].c2, - font->kerning[pos].advance); pos++; } }