GNOME Bugzilla – Bug 554740
Blurry fonts from xquartz back-end (subpixel rendering problem?)
Last modified: 2009-02-25 13:16:28 UTC
When I upgraded my pango from 1.20.5 (built against cairo-1.6.4) to 1.22.0 (built against cairo-1.8.0) under x11 on my OS X 10.4/poewrpc, some of my fonts became "blurry" on screen. It appears that my 1.20.5 build did not have the pango-basic-atsui module (not sure why, don't really care:), so maybe that module is the problem. If I delete that module from my machine running pango 1.20.5, the affected fonts become blank boxes. Further, if I deactivate the xquartz back-end while building 1.20.5 by forcing $have_atsui to be false, I return to having all fonts displayed cleanly. Another Mac user (10.5/intel) reported same results, and said it was related to "subpixel rendering". I completely don't understand font-handling, especially on OS X, but let me know what else I can try to solve or help debug.
Created attachment 119810 [details] Screenshot with atsui enabled Menu-bar is blurry, other fonts look fine. If I delete pango-basic-atsui, all of (and only) the menu-bar text becomes blank squares
Created attachment 119812 [details] Screenshot with atsui disabled during build All fonts (even menu-bar) are clear now
Font rendering with and without ATSUI will be quite different. What would be uesful to see would be the same text, in the same font, at the same size, rendered in: - A native OS X application - A GTK+ app (preferrably, not Emacs, which is it's own universe.) (Getting the size to match may be a little difficult.)
Created attachment 119996 [details] menubar and iconbox from 'meld' Here's a comparison of meld (a pygtk app) output with and without atsui. The prefpane says the font is "GNOME monospace", not sure how to figure out what font that actually is to try it from an Aqua app.
Very unlikely that this is a pango issue. Most probably cairo.
I can confirm that I have the same issue. I'm using the pango/cairo/gtk2 stack from MacPorts. Anti-aliasing is enabled, but sub-pixel rendering is not. Any suggestions for what the "real" fix is, or how I may be able to help debug it are welcomed.