From: SourceForge.net <no...@so...> - 2003-05-31 18:21:40
|
Patches item #535541, was opened at 2002-03-26 18:12 Message generated for change (Comment added) made by jenglish You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=312997&aid=535541&group_id=12997 Category: 46. Unix Fonts Group: None Status: Open Resolution: None Priority: 5 Submitted By: Jeffrey Hobbs (hobbs) Assigned to: Joe English (jenglish) Summary: XFree86 Anti-Aliased text patches Initial Comment: The following patches are what I received from Keith Packard ( http://www.xfree86.org/~keithp/) that added anti-aliased XFree86 text support to Tk on Unix. It did it by removing lots of other functionality though. From Keith: ---- It's entirely a hack at some level. When you deal with TrueType fonts, you can always get an ISO 10646 (UCS) encoding, so for languages well served using that as a glyph encoding things are really easy. It would be better if the hacks were fixed to manage the i18n aspects that tk has done in the past, but I don't understand them well enough to do a good job, nor have I figured out what Xft should do to help solve the problem. ---- I'm attaching his patch, which was likely against 8.3.x so it doesn't get lost again. It is a tgz with two files that belong in tk/unix/. ---------------------------------------------------------------------- >Comment By: Joe English (jenglish) Date: 2003-05-31 11:12 Message: Logged In: YES user_id=68433 I think this is ready to be comitted. Actually, not quite ready, but unfortunately I haven't been able to spend as much time on the patch as it deserves; getting it into CVS will let other people work on it more easily. Since Xft support is only enabled if requested at configure time, this shouldn't break anything. There are still a few problems that I'm aware of: + Reconfiguring named fonts with '''font configure''' does not have any effect if the font is in use + -underline and -overstrike are not supported (why are these font properties and not text tags?) + Cannot select non-XLFD native X fonts like "6x13" + I'm seeing some really strange display glitches with some fonts on my laptop (but they work fine on the other hosts). + Other problems that I'm not aware of. ---------------------------------------------------------------------- Comment By: Joe English (jenglish) Date: 2003-05-31 09:15 Message: Logged In: YES user_id=68433 Version 3 of the patch fixes a couple more problems: + If a font specification omits -size, or specifies -size 0, return the default size instead of 0 point fonts. + TkpGetNativeFont was overeager, and always succeeded even for font names like {Helvetica 12 bold} which should be handled by TkpGetFontFromAttributes instead. This also patches tkUnixDefault.h to use "sans-serif" and "monospace" instead of "Helvetica" and "Courier" for widget defaults if HAVE_XFT is defined. The latter are guaranteed by Tk to exist (even if they don't map to the real Helvetica and Courier), and the former are guaranteed by fontconfig to exist (and map to the preferred sans-serif (resp. fixed-width) fonts). This makes the defaults much nicer. ---------------------------------------------------------------------- Comment By: Joe English (jenglish) Date: 2003-05-07 14:42 Message: Logged In: YES user_id=68433 Here's a new rev of the patch which improves font selection; TkpGetNativeFont() was overly-eager and returned valid (but usually wrong) fonts for font names like {Times 18 bold}. ---------------------------------------------------------------------- Comment By: Joe English (jenglish) Date: 2003-05-07 13:44 Message: Logged In: YES user_id=68433 Keith Packard has a more recent version which includes full Unicode support . The attached patch tk-xft.patch is based on rev 1.4 of tkUnixRFont.c from the fontconfig.org CVS repository (see http://cvs.fontconfig.org/cgi-bin/cvsweb/tk/), plus a few fixes for problems encountered when running the test suite. I've also added autoconf support: use './configure --enable-xft' to enable Xft. This will use tkUnixRFont.c instead of tkUnixFont.c, and link with the appropriate libraries. There are still a few issues to be worked out, but on the whole this works _really_ well. Thanks, Keith! ---------------------------------------------------------------------- Comment By: Jeffrey Hobbs (hobbs) Date: 2003-04-21 10:27 Message: Logged In: YES user_id=72656 Yes, the i18n part was the major missing component. Keith's notes are above, and that is all I really know in detail, having never done Xft specific coding. ---------------------------------------------------------------------- Comment By: Joe English (jenglish) Date: 2003-04-20 14:23 Message: Logged In: YES user_id=68433 ... looks like i18n is also horked. The patch uses XftDrawString8 instead of XftDrawString16 (this looks easy to fix), not sure what to do about glyph coverage though. ---------------------------------------------------------------------- Comment By: Joe English (jenglish) Date: 2003-04-20 12:43 Message: Logged In: YES user_id=68433 I'll have a go at integrating this. Jeff, do you recall offhand what functionality was removed? (Tk_MeasureChars is definitely broken, don't know what else is missing.) ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=312997&aid=535541&group_id=12997 |