X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fmodules%2Fswffont.c;h=9a9c744a7c5019b7888c2890e367185b12e6652a;hb=bd3bb3eb65474943334258292344c567e29a9601;hp=876c139cb695a5c140c60923c55dd97424af4fe0;hpb=338fe5380bbfab8828826ae7b81b7bbbcc29cf50;p=swftools.git diff --git a/lib/modules/swffont.c b/lib/modules/swffont.c index 876c139..9a9c744 100644 --- a/lib/modules/swffont.c +++ b/lib/modules/swffont.c @@ -125,7 +125,7 @@ SWFFONT* swf_LoadTrueTypeFont(char*filename) FT_Size size; int max_unicode = 0; int charmap = -1; - + if(ftlibrary == 0) { if(FT_Init_FreeType(&ftlibrary)) { fprintf(stderr, "Couldn't init freetype library!\n"); @@ -133,12 +133,14 @@ SWFFONT* swf_LoadTrueTypeFont(char*filename) } } error = FT_New_Face(ftlibrary, filename, 0, &face); - FT_Set_Pixel_Sizes (face, 16*loadfont_scale, 16*loadfont_scale); - if(error) { + if(error || !face) { fprintf(stderr, "Couldn't load file %s- not a TTF file?\n", filename); return 0; } + + FT_Set_Pixel_Sizes (face, 16*loadfont_scale, 16*loadfont_scale); + if(face->num_glyphs <= 0) { fprintf(stderr, "File %s contains %d glyphs\n", face->num_glyphs); return 0; @@ -255,7 +257,8 @@ SWFFONT* swf_LoadTrueTypeFont(char*filename) } error = FT_Load_Glyph(face, t, FT_LOAD_NO_BITMAP); if(error) { - fprintf(stderr, "Couldn't load glyph %d, error:%d\n", t, error); + //tends to happen with some pdfs + fprintf(stderr, "Warning: Glyph %d has return code %d\n", t, error); glyph=0; if(skip_unused) continue; @@ -492,9 +495,7 @@ SWFFONT* swf_LoadT1Font(char*filename) } last = pos; outline = outline->link; - printf("t1lib: (%f,%f) ", pos.x, pos.y); } - printf("\n"); draw.finish(&draw);