From 74fa7e2f468f30accdb020a434899fb10f302457 Mon Sep 17 00:00:00 2001 From: Miguel Freitas Date: Mon, 17 Dec 2001 00:07:25 +0000 Subject: fixed font generation (special characters like latin accents were missing) CVS patchset: 1261 CVS date: 2001/12/17 00:07:25 --- misc/fonts/cetus-16.xinefont.gz | Bin 6401 -> 5995 bytes misc/fonts/cetus-20.xinefont.gz | Bin 8777 -> 8262 bytes misc/fonts/cetus-24.xinefont.gz | Bin 11739 -> 10938 bytes misc/fonts/cetus-32.xinefont.gz | Bin 16671 -> 15141 bytes misc/fonts/mono-16.xinefont.gz | Bin 6126 -> 4341 bytes misc/fonts/mono-20.xinefont.gz | Bin 8689 -> 6211 bytes misc/fonts/mono-24.xinefont.gz | Bin 11320 -> 7789 bytes misc/fonts/mono-32.xinefont.gz | Bin 16035 -> 11645 bytes misc/fonts/sans-16.xinefont.gz | Bin 5969 -> 4989 bytes misc/fonts/sans-20.xinefont.gz | Bin 8302 -> 7080 bytes misc/fonts/sans-24.xinefont.gz | Bin 10918 -> 8660 bytes misc/fonts/sans-32.xinefont.gz | Bin 15609 -> 13279 bytes misc/fonts/serif-16.xinefont.gz | Bin 6393 -> 4975 bytes misc/fonts/serif-20.xinefont.gz | Bin 8758 -> 7097 bytes misc/fonts/serif-24.xinefont.gz | Bin 11200 -> 9121 bytes misc/fonts/serif-32.xinefont.gz | Bin 17365 -> 13882 bytes misc/xine-fontconv.c | 29 ++++++++++++++++++----------- 17 files changed, 18 insertions(+), 11 deletions(-) diff --git a/misc/fonts/cetus-16.xinefont.gz b/misc/fonts/cetus-16.xinefont.gz index ffa62e443..fba19ca94 100644 Binary files a/misc/fonts/cetus-16.xinefont.gz and b/misc/fonts/cetus-16.xinefont.gz differ diff --git a/misc/fonts/cetus-20.xinefont.gz b/misc/fonts/cetus-20.xinefont.gz index f52fad39e..e6150285a 100644 Binary files a/misc/fonts/cetus-20.xinefont.gz and b/misc/fonts/cetus-20.xinefont.gz differ diff --git a/misc/fonts/cetus-24.xinefont.gz b/misc/fonts/cetus-24.xinefont.gz index ec48cb37c..10935f07b 100644 Binary files a/misc/fonts/cetus-24.xinefont.gz and b/misc/fonts/cetus-24.xinefont.gz differ diff --git a/misc/fonts/cetus-32.xinefont.gz b/misc/fonts/cetus-32.xinefont.gz index aa3122ab6..01a6888f7 100644 Binary files a/misc/fonts/cetus-32.xinefont.gz and b/misc/fonts/cetus-32.xinefont.gz differ diff --git a/misc/fonts/mono-16.xinefont.gz b/misc/fonts/mono-16.xinefont.gz index fe6033585..219c89156 100644 Binary files a/misc/fonts/mono-16.xinefont.gz and b/misc/fonts/mono-16.xinefont.gz differ diff --git a/misc/fonts/mono-20.xinefont.gz b/misc/fonts/mono-20.xinefont.gz index 51fc93ed6..f3ec154d7 100644 Binary files a/misc/fonts/mono-20.xinefont.gz and b/misc/fonts/mono-20.xinefont.gz differ diff --git a/misc/fonts/mono-24.xinefont.gz b/misc/fonts/mono-24.xinefont.gz index e096f22ef..7b02f4e61 100644 Binary files a/misc/fonts/mono-24.xinefont.gz and b/misc/fonts/mono-24.xinefont.gz differ diff --git a/misc/fonts/mono-32.xinefont.gz b/misc/fonts/mono-32.xinefont.gz index 3eb4ac0c2..2181016d7 100644 Binary files a/misc/fonts/mono-32.xinefont.gz and b/misc/fonts/mono-32.xinefont.gz differ diff --git a/misc/fonts/sans-16.xinefont.gz b/misc/fonts/sans-16.xinefont.gz index d1a97a63e..d713f57ab 100644 Binary files a/misc/fonts/sans-16.xinefont.gz and b/misc/fonts/sans-16.xinefont.gz differ diff --git a/misc/fonts/sans-20.xinefont.gz b/misc/fonts/sans-20.xinefont.gz index eccdfbba8..177dab1ec 100644 Binary files a/misc/fonts/sans-20.xinefont.gz and b/misc/fonts/sans-20.xinefont.gz differ diff --git a/misc/fonts/sans-24.xinefont.gz b/misc/fonts/sans-24.xinefont.gz index 69f9ac09b..c6c71a4b9 100644 Binary files a/misc/fonts/sans-24.xinefont.gz and b/misc/fonts/sans-24.xinefont.gz differ diff --git a/misc/fonts/sans-32.xinefont.gz b/misc/fonts/sans-32.xinefont.gz index f43fdcf26..d107d8007 100644 Binary files a/misc/fonts/sans-32.xinefont.gz and b/misc/fonts/sans-32.xinefont.gz differ diff --git a/misc/fonts/serif-16.xinefont.gz b/misc/fonts/serif-16.xinefont.gz index d190fc4f8..f2aef91c5 100644 Binary files a/misc/fonts/serif-16.xinefont.gz and b/misc/fonts/serif-16.xinefont.gz differ diff --git a/misc/fonts/serif-20.xinefont.gz b/misc/fonts/serif-20.xinefont.gz index 4465a3638..36a714c86 100644 Binary files a/misc/fonts/serif-20.xinefont.gz and b/misc/fonts/serif-20.xinefont.gz differ diff --git a/misc/fonts/serif-24.xinefont.gz b/misc/fonts/serif-24.xinefont.gz index bd157a082..699721d2a 100644 Binary files a/misc/fonts/serif-24.xinefont.gz and b/misc/fonts/serif-24.xinefont.gz differ diff --git a/misc/fonts/serif-32.xinefont.gz b/misc/fonts/serif-32.xinefont.gz index 83ce71a1a..912e22b62 100644 Binary files a/misc/fonts/serif-32.xinefont.gz and b/misc/fonts/serif-32.xinefont.gz differ diff --git a/misc/xine-fontconv.c b/misc/xine-fontconv.c index d3fe7ff3e..cfedab180 100644 --- a/misc/xine-fontconv.c +++ b/misc/xine-fontconv.c @@ -205,6 +205,7 @@ void render_font (FT_Face face, char *fontname, int size, int thickness) { FT_Vector origin; int max_bearing_y = 0; int c, i; + int converted; static int border_pos[9][2] = { {-1,0},{1,0},{0,-1},{0,1}, @@ -275,6 +276,8 @@ void render_font (FT_Face face, char *fontname, int size, int thickness) { gzwrite (fp, &font, 40+6); for (c = 32; c < 256; c++) { + converted = 0; + for( i=0; i < 9; i++ ) { glyph_index = FT_Get_Char_Index( face, c ); @@ -311,24 +314,28 @@ void render_font (FT_Face face, char *fontname, int size, int thickness) { else add_final_bitmap( out_bitmap, &glyph_bitmap->bitmap, glyph_bitmap->left, max_bearing_y - glyph_bitmap->top ); - + converted = 1; + FT_Done_Glyph( glyph ); } } } - printf("[%c:%d] bitmap width: %d height: %d\n", c, c, out_bitmap->width, out_bitmap->rows ); - /* - print_bitmap(out_bitmap); - */ - fontchar.code = c; - fontchar.width = out_bitmap->width; - fontchar.height = out_bitmap->rows; - gzwrite (fp, &fontchar,6); - gzwrite (fp, out_bitmap->buffer, out_bitmap->width*out_bitmap->rows); + + if( converted ) { + printf("[%c:%d] bitmap width: %d height: %d\n", c, c, out_bitmap->width, out_bitmap->rows ); + /* + print_bitmap(out_bitmap); + */ + fontchar.code = c; + fontchar.width = out_bitmap->width; + fontchar.height = out_bitmap->rows; + gzwrite (fp, &fontchar,6); + gzwrite (fp, out_bitmap->buffer, out_bitmap->width*out_bitmap->rows); + } } gzclose(fp); - printf ("generated %s\n", filename); + printf ("generated %s (%d)\n", filename, font.num_fontchars); } int main(int argc, char *argv[]) { -- cgit v1.2.3