[Bug 23114] Wine renders the fonts differently from the rest of the system

wine-bugs at winehq.org wine-bugs at winehq.org
Tue Jun 22 02:31:51 CDT 2010


http://bugs.winehq.org/show_bug.cgi?id=23114


Alexey Loukianov <mooroon2 at mail.ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mooroon2 at mail.ru




--- Comment #4 from Alexey Loukianov <mooroon2 at mail.ru>  2010-06-22 02:31:50 ---
I can confirm that there are noticeable differences between hod does the fonts
rendered in wine-1.2-rc4 (actually in all 1.2-rcX except for 1.2-rc1 which
behaved differently) and in the rest of the system. The trouble is that at the
moment there is a pretty big mess in the ways fonts get rendered by
applications on a linux desktop.

First of all, there tends to be a lot of ways how the glyphs may be rendered
nowdays: using only FreeType library, using Xft/libXft, using Cairo, using
Pango, using some self-written native way and some more. 
Older versions of Gtk+ used pango for it's font renderings.
Pango may use cairo, but there are backends that use Xft, FreeType, libx11 and
some other.
Newer GTK+ versions use cairo, same applies to the linux port of XUL-written
apps (like Firefox).
cairo and Xft both use FreeType for rendering and fontconfig library for
determining correct font render properties to use.
To complicate things even more there are some Xft.* Xresources available that
might be used by Xft as a substitute/replacement to the fontconfig.
Qt3 used fontconfig+FreeType, just like cairo and Xft.
Qt4 partly switched away from fontconfig and implemented it's own LCD
antialiasing for fonts.
There were blog posts from Qt4.x developers stating that they are going to get
back to use of fontconfig in Qt4.5.
Some specific apps like OpenOffice use their own implementations of font
rendering libraries.
And another complications is that some users have got FreeType with (patented)
BCI interpretor compiled in while most are not.

Difficulties continue to stack when it comes to how were the font subpixel AA
implemented. There are a bunch of patches out there, some for FreeType and some
for cairo, each providing similar but a little bit different AA results. Most
known is "ubuntu patch" which adds "ClearType-like" functionality to cairo
independent from subpixel AA built-in in FreeType ("lcdfilter" settings in
~/.fonts.conf are handled by this patch).

If you're still not lost in all this complexity then you should know that the
library like GTK+ may use any other arbitary setting for fonts AA at the
programmers will. On the other hand it is well-known bug that cairo library
that should use fontconfig for configuration purposes sometimes silently
ignores the user-specified settings and instead uses the defaults set in the
Gnome Control Center. When it comes to Gnome applications it comes that the
fonts AA behavior would be totally different depending on is the
gnome-settings-daemon started or not. If it is then all Gnome apps will use
font AA settings from the gconf registry (those set from the Gnome Control
Center). If it is not - then the fontconfig defaults tend to be used but
intersected with the Xft.* resources values.

Taking all this to the bottom line: actually now there's no such thing on linux
desktop as a "default settings for the system font rendering". That's why I
don't think that the fact that Wine renders subpixel AA somewhat different
should be considered a bug.

Still, as now wine seems to be declaring that it will "Use the system desktop
setting for subpixel font smoothing" (bug #17148 marked as CLOSED FIXED) it
would be great to know two things:
1. What is the place this "system desktop setting" are taken from?
2. Are there any ways to set Wine to use other fonts AA settings than one
detected to be set for the "system desktop"?

If the answer for the question 2 is "no ways" then it is definitely a
regression in Wine functionality as before it was possible to have one settings
for Wine apps and another for other system. 

P.S. Side question is the current purpose of the
"FontSmoothing"/"FontSmoothingType" registry keys as it seems to me that the
fix to the bug #17148 made them obsolete.

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list