From: Araki K. <j00...@ip...> - 2002-01-15 17:00:06
|
荒木です:-) Subject: Re: [Mlterm-dev-ja] mlterm anti alias + DynaFont From: Takumi ASAKI <as...@os...> Message-ID: <200...@os...> Date: Wed, 16 Jan 2002 00:31:03 +0900 > 朝木卓見です。 > > # Reply-to が欲しい…。 すみません、sourceforge がそういう方針のようでして... > 問題の現象のscreenshotです。 > http://www.kde.gr.jp/~asaki/mlterm-DynaFont.png > http://www.kde.gr.jp/~asaki/mlterm-KochiGothic.png > (表示内容をちょっと変更しました) ありがとうございます。 実は、mlterm 内部では、文字幅決定の際に、"W"の幅を調べております。 (ml_font.c:get_xft_col_width) 多分そのときに、計算結果が全角幅になっているのだと思います。 添付の patch-1 を cvs current にあてると、どういう結果になるか、試して みていただけませんか? もし、それが、 W width 6 for fontsize 12 のようにならず、 W width 12 for fontsize 12 となるようでしたら、多分原因はこれだと思います。 そもそも、"W" の幅を調べているのは、XFT_CHARCELL で、XftFontOpen()した ときに、幅の大き目な一部文字の右端が切られてしまう問題への対処として実 装したものなのですが、もし、DynaFont で、それが裏目にでるようでしたら、 この部分さっくり削除して、添付の patch-2 のようにしてしまおうかと思いま すが、どうしましょうか ? > 久保田さん では -- kiken j00...@ip... -- patch-1 Index: src/ml_font.c =================================================================== RCS file: /home/ken/cvsroot/mlterm/src/ml_font.c,v retrieving revision 1.94 diff -u -r1.94 ml_font.c --- src/ml_font.c 2002/01/15 13:08:47 1.94 +++ src/ml_font.c 2002/01/15 15:30:50 @@ -392,6 +392,8 @@ w_width = xft_calculate_char_width( font->display , xfont , "W" , 1) ; + kik_debug_printf( "W width %d for fontsize %d\n" , w_width , fontsize) ; + XftFontClose( font->display , xfont) ; if( w_width > 0) -- patch-2 Index: src/ml_font.c =================================================================== RCS file: /home/ken/cvsroot/mlterm/src/ml_font.c,v retrieving revision 1.94 diff -u -r1.94 ml_font.c --- src/ml_font.c 2002/01/15 13:08:47 1.94 +++ src/ml_font.c 2002/01/15 15:50:43 @@ -377,6 +377,7 @@ u_int fontsize ) { +#if 0 XftFont * xfont ; /* @@ -399,6 +400,7 @@ return w_width ; } } +#endif /* XXX this may be inaccurate. */ return fontsize / 2 ; |