Red Hat Bugzilla – Bug 708525
hinting turned off even for large fonts
Last modified: 2015-01-26 04:32:25 EST
Created attachment 501397 [details]
Screen shot of office writer document with different size fonts in same families.
Description of problem:
On my fedora 15 system, the fonts all render terribly by default, being
completely thin and spindly. After much investigation, I find various
settings down in the /etc/fonts config files to do things like turn
off hinting for fonts smaller than 7.5 (what units 7.5 are in, I'm not
sure), but in fact hinting seems to be turned off for fonts up to
point size 13 as the attached screenshot of a libreoffice document
seems to show.
So many pieces are involved in font rendering, I don't know for sure
if pango is the right component for this, but it is my best guess.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1.See screenshot of office writer image
All fonts 13 points and under rendered incredibly spindly.
Better font rendering.
Created attachment 501423 [details]
Screenshot demonstrating poorly rendered fonts
I am seeing similar badly rendered fonts across all applications on my desktop. I have attached a screen shot of Emacs showing the problem.
Created attachment 501424 [details]
Same .odt file in Okular
This is interesting, the same document viewed in the Okular program looks quite good. No spindly rendering for size 12 fonts versus size 13. Perhaps this will provide a clue to someone who actually understands the twisty paths that font rendering goes through in different apps.
Though now that I look at it closer, Okular appears to be utterly ignoring the fonts from the .odt file and using some font of its own (which renders well :-).
I took a look at the attachment 501397 [details].
The DejaVu and Liberation examples there are rendered with hinting enabled.
Specifically native hinted grayscale rendering.
That is how those fonts were engineered to appear.
From the description, I suspect you are used to freetype’s autohinted rendering
and would like it back.
The easiest way is to enable the 10-autohint.conf fontconfig file.
In general, that would mean doing:
:; ln -s ../conf.avail/10-autohint.conf /etc/fonts/conf.d/
as root or adding:
to your ~/.fonts.conf if you do not want to change it for all users.
Fedora might have moved fontconfig’s /etc/fonts/conf.avail to /usr/share (there was talk of doing that; I do not know the outcome).
The DejaVu difference isn't too bad, but Liberation is really supposed to jump from barely visible spindly lines to bold confident looking text just from the jump 1 point size? Hard to believe. (Try several other sizes of Liberation in the same doc and the jump between 12 and 13 becomes even more dramatic.) I'll definitely try turning the autohint on and see what happens.
Created attachment 501427 [details]
autohinted version of same LibreOffice doc.
Oh yes! Autohinting is the very thing! I will no longer go blind, and 12 point Liberation now just looks like a healthy younger brother to 13 point Liberation instead of a malnourished distant cousin :-). Thanks for the pointer. (I can only assume the font designers never look at their fonts on anything except 300 DPI displays if the rendering without autohinting is the appearance they actually want).
Autohinting solved all issues for me too. All applications are now back to what I am used to. Thanks. :)
I have nothing more to add other than mentioning this issue affects me too. In fact, it has caused me too much eye-strain and I've switched to a different OS for the time being (the eye-strain lead to real headaches and a dizzy feeling). I was not aware of the ability to use auto-hinting until recently.
In any case, I find it hard to believe that the fonts rendered with BCI are really supposed to be so blurred and jagged. In a sense, this is my first time with a true accessibility issue.
Fonts are terrible in FC15.. Never seen nothing like this. I've tried every suggestions made.. the best alternative seems to be using droid fonts.. but it's not acceptable yet.. I've used Fedora since the beginning of the project, but now I'm thinking dump it
Maybe bug https://bugzilla.redhat.com/show_bug.cgi?id=547532 give some explanations.
Fonts are the worst I've seen in any distro. Especially in the web browsers.
In F15 there are two changes :
1. force Cantarell on everyone just because it's "new" and "not used elsewhere", despite the fact ils lacks coverage so you get mixed glyphs as soon as you use more than the most basic latin
2. activate BCI in fontconfig to get window-ish font appearance (it was patented it must be good, in the cigarettes are bad for your health let's be 'leet and smoke teen logic sense)
Both there changes were known to produce massive fallout and have been applied without concertation. There's no need to argue there (those changes are not bugs, they are deliberate setting changes by gnome3 fedora people), make some noise on mailing lists and irc if you want to change the maintainers minds
upgraded from F14 to F15, and all the fonts were Redhat-6.0 vintage ugly.
Could this get fixed at least for F16?
This package has changed ownership in the Fedora Package Database. Reassigning to the new owner of this component.
To make sure, what do you expect to see a fix in fontconfig on this? given that the summary says it all, globally turning off autohinter may affects everything. it would take a lot of time for testing etc. for a solution in Fedora, having a workaround to turn off autohinter in the fontconfig rules in the problematic font packages sounds realistic to me though. any comments?
As long as activating the magic symlink described above in comment 4 continues to work, I'm perfectly happy. Judging from practical results I have seen the autohinting for everything always works much better. Font rendering (or perhaps it is just the choice of default fonts) still always looks better on Ubuntu than on Fedora, but with autohinting, I can get Fedora close.
Well, enabling autohint by default may be risky for updates. moving to rawhide.
Akira, what is the status of this? Is it enabled by default in Fedora 18?
I have just upgraded from Fedora 17 to Fedora 18 Beta and I noticed _awful_ rendering of some fonts in Firefox. It happens just for some pages. Wikipedia is OK. But Google+/Google Reader etc look terrible. I have found out they ask for Arial, which is translated to Liberation Sans.
I have seen the feature page:
It doesn't say how to find out whether autohinting is on or off and how to change it.
In my /etc/fonts/conf.d/ there is no symlink for 10-autohint.conf, which indicates it could be off. But then I saw the pictures you rendered and that's exactly the problem I see. Look at this:
Everything is sharp and readable here. Then look at this:
This is blurry and unreadable. Compare word "jumps" in sizes 15-17, it's blurry as hell with autohint. Reading web pages with this font puts a lot of strain on my eyes.
How can I turn it off and verify whether this is the source of the problems or something else?
For Liberation fonts issue, see Bug#856239. no errors in fontconfig for that at all.
In case anyone has been trying to get this autohinting to work in fedora 18, I found that not only did the master location of the 10-autohint.conf file change (it now lives in /usr/share/fontconfig/conf.avail/10-autohint.conf), but the content changed as well. The f18 version has an "append" operation rather than an "assign" operation. The only way I found to make fonts look reasonable on my display was to copy rather than symlink the file and edit it to change "append" to "assign". At last, I can see again!
Tom Horsley's sugestion worked for me.
Yeah, in F-18 even symlinking the autohint config doesn't do the correct thing. Fonts like DejaVu just look too thin in FF and Evo's HTML renderer, for instance.
The change was actually upstram, in fontconfig sources.
(In reply to comment #22)
> In case anyone has been trying to get this autohinting to work in fedora 18,
> I found that not only did the master location of the 10-autohint.conf file
> change (it now lives in /usr/share/fontconfig/conf.avail/10-autohint.conf),
> but the content changed as well. The f18 version has an "append" operation
> rather than an "assign" operation. The only way I found to make fonts look
> reasonable on my display was to copy rather than symlink the file and edit
> it to change "append" to "assign". At last, I can see again!
That change was to respect the configuration in the desktops. if you are expecting to see that fix in fontconfig, I won't do that as I canceled the feature in f18. if this is DejaVu specific, I'll reassign this to it though, otherwise you may need to file a separate bug to the appropriate packages to collect/improve it.
What I don't understand is this: autohinting is supposed by be poor man's hinting. However, at least on my systems, autohinted fonts looks significantly better than anything hinting can do (using Deja Vu). If I turn autohinting off, some of the fonts actually look completely unreadable. Confusing...
(In reply to comment #26)
> What I don't understand is this: autohinting is supposed by be poor man's
This is FUD spread by proponents of windows-95-like font rendering
This bug appears to have been reported against 'rawhide' during the Fedora 19 development cycle.
Changing version to '19'.
(As we did not run this process for some time, it could affect also pre-Fedora 19 development
cycle bugs. We are very sorry. It will help us with cleanup during Fedora 19 End Of Life. Thank you.)
More information and reason for this action is here:
Looks like FC19beta has "assign" by default, metioned in comment #22.
Is this fixed?
No. no changes in even f19.
This message is a notice that Fedora 19 is now at end of life. Fedora
has stopped maintaining and issuing updates for Fedora 19. It is
Fedora's policy to close all bug reports from releases that are no
longer maintained. Approximately 4 (four) weeks from now this bug will
be closed as EOL if it remains open with a Fedora 'version' of '19'.
Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version'
to a later Fedora version.
Thank you for reporting this issue and we are sorry that we were not
able to fix it before Fedora 19 is end of life. If you would still like
to see this bug fixed and are able to reproduce it against a later version
of Fedora, you are encouraged change the 'version' to a later Fedora
version prior this bug is closed as described in the policy above.
Although we aim to fix as many bugs as possible during every release's
lifetime, sometimes those efforts are overtaken by events. Often a
more recent Fedora release includes newer upstream software that fixes
bugs or makes them obsolete.
As I tried and failed to make the autohinting default, this should be fixed in a font package. please file a bug against a font package you think it would be better enabling the autohinting. I won't fix this in fontconfig as a global change.