X-Git-Url: http://git.asbjorn.biz/?p=swftools.git;a=blobdiff_plain;f=lib%2Fpdf%2FInfoOutputDev.cc;h=a977970deed31c5972a7544789e7df1b20d6509e;hp=214814f5dfbb7b8c785519a124478c454c21c87c;hb=5244627ce001a4b2c49595fe38042628856be1d3;hpb=2f0ee9b97abeeb1a74722ccdfaa0ffa6b5427cd0 diff --git a/lib/pdf/InfoOutputDev.cc b/lib/pdf/InfoOutputDev.cc index 214814f..a977970 100644 --- a/lib/pdf/InfoOutputDev.cc +++ b/lib/pdf/InfoOutputDev.cc @@ -119,14 +119,9 @@ static int findSpace(gfxfont_t*font) gfxglyph_t*g = &font->glyphs[t]; if(GLYPH_IS_SPACE(g)) { if(g->unicode == 32) return t; - if(first_space<0) - first_space = t; } } - if(font->num_glyphs>32 && GLYPH_IS_SPACE(&font->glyphs[32])) { - return 32; - } - return first_space; + return -1; } static int addSpace(gfxfont_t*font) @@ -153,8 +148,7 @@ static int addSpace(gfxfont_t*font) static gfxfont_t* createGfxFont(FontInfo*src) { - gfxfont_t*font = (gfxfont_t*)malloc(sizeof(gfxfont_t)); - memset(font, 0, sizeof(gfxfont_t)); + gfxfont_t*font = (gfxfont_t*)rfx_calloc(sizeof(gfxfont_t)); font->glyphs = (gfxglyph_t*)malloc(sizeof(gfxglyph_t)*src->num_glyphs); memset(font->glyphs, 0, sizeof(gfxglyph_t)*src->num_glyphs); @@ -176,8 +170,6 @@ static gfxfont_t* createGfxFont(FontInfo*src) gfxglyph_t*glyph = &font->glyphs[font->num_glyphs]; src->glyphs[t]->glyphid = font->num_glyphs; glyph->unicode = src->glyphs[t]->unicode; - if(glyph->unicode >= font->max_unicode) - font->max_unicode = glyph->unicode+1; gfxdrawer_t drawer; gfxdrawer_target_gfxline(&drawer); int s; @@ -227,8 +219,6 @@ static gfxfont_t* createGfxFont(FontInfo*src) } } - gfxfont_fix_unicode(font); - int kerning_size = 0; for(t=0;tnum_glyphs;t++) { dict_t* d = src->kerning[t]; @@ -290,6 +280,7 @@ gfxfont_t* FontInfo::getGfxFont() this->space_char = addSpace(this->gfxfont); msg(" Appending space char to font %s, position %d, width %f", this->gfxfont->id, this->space_char, this->gfxfont->glyphs[this->space_char].advance); } + gfxfont_fix_unicode(this->gfxfont); } return this->gfxfont; }