You are not logged in.
I'd really like to get on top of what is actually going on in the world of subpixel rendering now. I *had* been running with fontconfig-lcd, libxft-lcd, and cairo-lcd, and was very happy with the look. However, it would appear that cairo-lcd is no longer being maintained and has been dropped from AUR. I've seen it suggested that we switch to using the cairo-ubuntu package. However, on AUR the comments for cairo-ubuntu and fontconfig-ubuntu state that they don't really make any difference any more.
So what exactly should I be doing to get nice subpixel-rendered fonts? I prefer to have x-only hinting, and I was very pleased with the FIR5 filter that I got with the -lcd packages. If I could re-create that configuration, I'd be pretty pleased. Right now I have freetype2-ubuntu and fontconfig-ubuntu installed, and the stock libxft and cairo. Fonts look reasonably nice, but I don't think the filtering is as much to my taste as before: I can see a few occasional colour fringes, and fonts feel more spidery.
So what tweaks are best in /etc/fonts/conf.d? Should I have any other patched packages installed? Do I even need the patched freetype and fontconfig?
Offline
Offline
Yeah, I saw that and it didn't help. Neither did several other forums. I've been trying to read up on this all afternoon.
I think that the colour fringes and spindliness I'm seeing is just the Firefox issue that people have mentioned, although Firefox was fine before I updated to Cairo 1.10.0 today. Chromium looks fine, but by the looks of "pacman -Qi chromium" it, it doesn't use Cairo. Everything Qt looks good (I'm in KDE4).
Offline
is just a coincidence. from now own xulrunner is using internal cairo because it has bugs using external cairo
Last edited by wonder (2010-10-04 15:48:34)
Give what you have. To someone, it may be better than you dare to think.
Blog
Offline
I'd really like to get on top of what is actually going on in the world of subpixel rendering now.
Look in the huge Gentoo fonts thread. The current state-of-the-art is "Infinality".
Improve your desktop responsiveness and font rendering and ALSA sound and BusyBox init
Offline
The current state-of-the-art is "Infinality".
Thanks; I'm afraid I'm not too interested in Infinality's freetype patches, because as far as I can make out, the main focus is subpixel hinting, and I'm not keen on hinting, and more interested in getting good subpixel filtering. I'm still seeing spindly fonts in Inkscape and other GTK-based apps ![]()
As far as I can tell, I have no subpixel positioning right now, and I thought I had that before. Does anyone know if there are any patches around for this?
Offline
the main focus is subpixel hinting
No, the main focus is on making fonts look as good as possible. Why do you think otherwise? Read the blog.
subpixel positioning
AFAIK, only the Infinality patches provide that - which makes your dismissal of them doubly bizzare.
Improve your desktop responsiveness and font rendering and ALSA sound and BusyBox init
Offline
No, the main focus is on making fonts look as good as possible. Why do you think otherwise? Read the blog.
From the blog (emphasis is mine):
[...] this patch makes Freetype's Truetype interpreter perform Truetype hinting instructions in the Y direction [...]
However, subpixel positioning interests me greatly, as it improves the accuracy of letter positioning, and reduces letter clumping.
Offline
hinting instructions in the Y direction
And that's done because, surprise surprise, it looks good. What on Earth is your point?
Improve your desktop responsiveness and font rendering and ALSA sound and BusyBox init
Offline
And that's done because, surprise surprise, it looks good. What on Earth is your point?
I'm afraid it's not that simple. It's a matter of taste. Hinting vs Antialiasing is like Vim vs Emacs. You may find this article informative:
Offline
OK, so I think I'm finally sorted. Hopefully the following might save someone some time researching all this. I'm on a KDE 4 desktop.
FreeType: The stock freetype in [extra] works fine. If you're keen on hinting, you could try freetype-infinality, but subpixel hinting doesn't overly interest me: I prefer subpixel filtering and positioning.
FontConfig: Again, the stock fontconfig from [extra] is perfectly adequate; no need for patching. However, you will also need to install fontconfig-lcd from AUR, which simply adds a small configuration file that enables filtering. Without fontconfig-lcd, you will see those very distracting colour fringes.
LibXFT: You will need libxft-lcd from [community] for TK-based applications such as git-gui, and a minority of other applications that use libxft.
Cairo: Cairo 1.10.0 will do subpixel rendering, and observes fontconfig, so there's no need for patches.
I found that my fonts were more spindly (more heavily hinted) in Cairo-based applications such as gvim or Inkscape, despite having configured my system for "slight" hinting. I discovered that this was caused by FreeType's bytecode interpreter being used for hinting in those applications. Be sure to symlink 10-autohint.conf in /etc/fonts/conf.d to resolve this. I assume that Qt-based applications use the autohinter by default.
Qt and Cairo applications still don't have identical font rendering on my system: Qt applications have slightly heavier fonts, which I prefer. I'm guessing this is due to a slightly different process for filtering.
As for subpixel positioning, as far as I can make out, this is not yet supported in Qt, but is planned for Qt 4.8. (See http://labs.qt.nokia.com/2010/09/09/a-s … rization.) I don't think Cairo supports subpixel positioning as of 1.10.0, but haven't completely confirmed it.
If you're still getting ugly fonts in Firefox, you'll need to recompile Xulrunner from ABS to use the system Cairo:
sudo abs
cp -R /var/abs/extra/xulrunner ~
cp ~/xulrunner
edit mozconfig to uncomment "ac_add_options --enable-system-cairo"
makepkg (If you're on a KDE system, I found you can remove the libgnomeui dependency from the PKGBUILD without any ill effects)
Last edited by giddie (2010-10-04 10:22:24)
Offline
giddie, can you post screenshots of your current cairo and xft rendering?
ᶘ ᵒᴥᵒᶅ
Offline
Absolutely:
Qt4 (KWrite): 
Cairo (Nvidia-Settings): 
Xft (Git-Gui): 
Offline
Thanks giddie, interesting results. Here's my nvidia-settings with infinality for comparison:
For letter positioning, look at the word "information" for instance on the top right.
ᶘ ᵒᴥᵒᶅ
Offline
That does look pretty good. What exactly did you need to do? I've tried installing freetype2-infinality from AUR, but I get no difference in nvidia-settings.
Also, it looks to my eye as though the big difference is in filtering, rather than hinting. Even if the hinting is at a subpixel-level, I would expect the letters to feel thinner than in my configuration, but it feels a similar weight, if not a touch thicker. Have you performed any kind of tweaks to the filtering?
Offline
That does look pretty good. What exactly did you need to do? I've tried installing freetype2-infinality from AUR, but I get no difference in nvidia-settings.
Also, it looks to my eye as though the big difference is in filtering, rather than hinting. Even if the hinting is at a subpixel-level, I would expect the letters to feel thinner than in my configuration, but it feels a similar weight, if not a touch thicker. Have you performed any kind of tweaks to the filtering?
I basically followed Paul's instructions (link), which in practice means using the Ubuntu patched fontconfig, libxft and cairo (available in AUR), and from infinality his patched freetype2 (AUR) and fonts.conf (link). The only changes i made were switching to hintslight instead of hintfull and removing 53-monospace-lcd-filter.conf from /etc/fonts/conf.d (since i think it hints too strong).
ᶘ ᵒᴥᵒᶅ
Offline
actually, neither look good. At least not on LCD screen. I assume that these are free fonts so maybe there is an issue with font quality, but these are too soft, washed off. I don't know if the reason is low quality of generated screenshots (very possible) but with old cleartype patches (and commercial fonts) I have got better results (than examples of nvidia X Server Information). I am not sure why to introduce "enhancements" that still do not move linux font rendering closer to the level of windows/OS X. For some time now applied changes keeps low quality fonts at the same bad level so why to change one bad to another?
Last edited by broch (2010-10-04 13:00:08)
Offline
@broch => Please accept that not everyone agrees with you. If you want to contribute something to the discussion, please do some reading on the subject of hinting vs antialiasing (aka Windows vs Apple fonts), and learn to respect other people's preferences.
Offline
@broch => Please accept that not everyone agrees with you. If you want to contribute something to the discussion, please do some reading on the subject of hinting vs antialiasing (aka Windows vs Apple fonts), and learn to respect other people's preferences.
weird post. Have I offend you? I just stated that linux font rendering is far from quality product which is clear from your's and leightmotiv screenshots (though as i mentioned these may be low quality pngs that do not correspond to actual look). If you are happy that is great. However I believe that it would be nice if you would not try to teach me? I still hope that this (my opinion) is not offensive and as long as possible I will stay with cleartype patches. One reason I switched to commercial fonts is that at least font design is not at fault.
thank you
Offline
too soft, washed off
That too can be tweaked (although currently only by recompiling freetype2).
Last edited by brebs (2010-10-04 13:34:36)
Improve your desktop responsiveness and font rendering and ALSA sound and BusyBox init
Offline
giddie wrote:@broch => Please accept that not everyone agrees with you. If you want to contribute something to the discussion, please do some reading on the subject of hinting vs antialiasing (aka Windows vs Apple fonts), and learn to respect other people's preferences.
weird post. Have I offend you? I just stated that linux font rendering is far from quality product which is clear from your's and leightmotiv screenshots (though as i mentioned these may be low quality pngs that do not correspond to actual look). If you are happy that is great. However I believe that it would be nice if you would not try to teach me? I still hope that this (my opinion) is not offensive and as long as possible I will stay with cleartype patches. One reason I switched to commercial fonts is that at least font design is not at fault.
Your post was pretty close to trolling brolsch, if you want to provide constructive feedback you can post alternative configs, links and screenshots.
ᶘ ᵒᴥᵒᶅ
Offline
have you read my first post?
I stated that these (yours and the other one looks bad). I also stated that I don't know how to fix this (though cleartype seems to do best work). Stating obvious is not trolling. I wish I would know how to make fonts look better I don't.
Now using word "brolsch" is offensive.
Offline
I basically followed Paul's instructions (link), which in practice means using the Ubuntu patched fontconfig, libxft and cairo (available in AUR), and from infinality his patched freetype2 (AUR) and fonts.conf (link). The only changes i made were switching to hintslight instead of hintfull and removing 53-monospace-lcd-filter.conf from /etc/fonts/conf.d (since i think it hints too strong).
I have to say that this setup* is really good here, although the differences are very subtle over stock cairo and freetype-lcd (compared with, say, a year ago even between the various different lcd patches; some of them were barely worth the bother). Shaping and spacing are definitely improved though, especially on italics and obliques. The test for me is the uppercase "B": the autohinter never seems to get the upper loop right at 9pt on more or less any font (and bytecode's just too aggressive overall). This is the closest it's ever been. Impressive.
*Without fonts.conf, since I'd already hand-edited mine into more or less the same state.
0 Ok, 0:1
Offline
I also stated that I don't know how to fix this
Again, don't post if you have nothing constructive to add.
Now let's get back ontopic, this isn't helping anyone.
Last edited by litemotiv (2010-10-04 20:05:45)
ᶘ ᵒᴥᵒᶅ
Offline
FreeType: The stock freetype in [extra] works fine. If you're keen on hinting, you could try freetype-infinality, but subpixel hinting doesn't overly interest me: I prefer subpixel filtering and positioning.
It's called freetype2-infinality in AUR.
Maybe this should put in the ArchWiki? http://wiki.archlinux.org/index.php/Font_Configuration
Arch Linux i686(kernel: 3.1.7-ck, xfce) running on Toshiba s100 (Pentium M 1.73GHz, 1.5GB RAM, 40GB HD, Nvidia 6600/6200 TE 64MB)
Offline