http://bugs.winehq.org/show_bug.cgi?id=10342
--- Comment #23 from BlackStar BurnSpamAddress@gmail.com 2008-11-25 08:35:42 --- I no longer have the patch (it never worked, so I deleted it along with the working directory), but I can describe what I tried to do:
In dlls/winex11.drv/xrender.c, there is an enumeration called "AA_type", which contains all available antialiasing values. Out of those, it seems only AA_None and AA_Grey are ever used.
Using AA_type as a starting point, I modified the function UploadGlyph (around line 602) to acknowledge more AA types (switches on line 614 and 690).
That's about the extent of what I tried to do. From my understanding of the code, we will need to add functions in the spirit of SharpGlyphMono/SharpGlyphGray (what do these do?), enable them in X11DRV_XRender_ExtTextOut (line 1314). We will also need to change GetCacheEntry (line 452) to accept the new AA formats.
It's almost certain that there's a lot more work involved than what I outlined here. Unfortunately, I'm not familiar with Xrender or Wine's internals - anyone familiar with Wine's font rendering code care to share his knowledge?