Bug 708525

Summary: hinting turned off even for large fonts
Product: [Fedora] Fedora Reporter: Tom Horsley <horsley1953>
Component: fontconfigAssignee: Akira TAGOH <tagoh>
Status: CLOSED WONTFIX QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: antonio.montagnani, behdad, bojan, cloos, cwickert, emrecio, eriksnds, fatkasuvayu, fonts-bugs, kmf, kparal, marius.andreiana, miguel, mihai, mishu, netllama, pnemade, tbzatek, tuxr99, zejdl
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-01-26 04:32:25 EST Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Attachments:
Description Flags
Screen shot of office writer document with different size fonts in same families.
none
Screenshot demonstrating poorly rendered fonts
none
Same .odt file in Okular
none
autohinted version of same LibreOffice doc. none

Description Tom Horsley 2011-05-27 17:04:30 EDT
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):
pango-1.28.4-1.fc15.x86_64
cairo-1.10.2-3.fc15.x86_64
fontconfig-2.8.0-3.fc15.x86_64


How reproducible:

100%

Steps to Reproduce:
1.See screenshot of office writer image
2.
3.
  
Actual results:
All fonts 13 points and under rendered incredibly spindly.

Expected results:
Better font rendering.

Additional info:
Comment 1 Suvayu 2011-05-27 18:57:21 EDT
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.
Comment 2 Tom Horsley 2011-05-27 18:58:36 EDT
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.
Comment 3 Tom Horsley 2011-05-27 19:03:34 EDT
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 :-).
Comment 4 James Cloos 2011-05-27 19:17:32 EDT
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:

 <include>/etc/fonts/conf.avail/10-autohint.conf</include>

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).
Comment 5 Tom Horsley 2011-05-27 19:31:41 EDT
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.
Comment 6 Tom Horsley 2011-05-27 19:55:33 EDT
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).
Comment 7 Suvayu 2011-05-28 14:16:30 EDT
Autohinting solved all issues for me too. All applications are now back to what I am used to. Thanks. :)
Comment 8 Erik Sands 2011-06-03 20:05:45 EDT
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.
Comment 9 Miguel 2011-06-06 06:46:04 EDT
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
Comment 10 Mihai Harpau 2011-06-06 07:36:09 EDT
Maybe bug https://bugzilla.redhat.com/show_bug.cgi?id=547532 give some explanations.
Comment 11 ed briggs 2011-06-06 23:39:32 EDT
Fonts are the worst I've seen in any distro. Especially in the web browsers.
Comment 12 Nicolas Mailhot 2011-06-07 03:40:02 EDT
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
Comment 13 Lonni J Friedman 2011-08-02 12:26:59 EDT
/me too

upgraded from F14 to F15, and all the fonts were Redhat-6.0 vintage ugly.
Comment 14 Marius Andreiana 2011-08-18 14:07:05 EDT
Could this get fixed at least for F16?
Comment 15 Fedora Admin XMLRPC Client 2012-01-10 10:41:59 EST
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.
Comment 16 Fedora Admin XMLRPC Client 2012-03-21 21:38:10 EDT
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.
Comment 17 Akira TAGOH 2012-04-05 05:44:02 EDT
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?
Comment 18 Tom Horsley 2012-04-09 05:23:56 EDT
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.
Comment 19 Akira TAGOH 2012-06-27 23:41:06 EDT
Well, enabling autohint by default may be risky for updates. moving to rawhide.
Comment 20 Kamil Páral 2012-12-02 15:26:13 EST
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:
https://fedoraproject.org/wiki/Features/FontconfigEnableAutohinting
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:
http://tagoh.fedorapeople.org/tmp/hints/liberationsans-hinting.png
Everything is sharp and readable here. Then look at this:
http://tagoh.fedorapeople.org/tmp/hints/liberationsans-autohinting.png
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?
Comment 21 Akira TAGOH 2012-12-02 21:32:08 EST
For Liberation fonts issue, see Bug#856239. no errors in fontconfig for that at all.
Comment 22 Tom Horsley 2012-12-22 10:14:06 EST
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!
Comment 23 Karl Fischer 2013-01-18 01:04:49 EST
Tom Horsley's sugestion worked for me.
https://bugzilla.redhat.com/show_bug.cgi?id=708525#c22
Comment 24 Bojan Smojver 2013-01-29 21:31:11 EST
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.
Comment 25 Akira TAGOH 2013-01-31 22:02:25 EST
(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.
Comment 26 Bojan Smojver 2013-01-31 22:11:18 EST
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...

Just FYI.
Comment 27 Nicolas Mailhot 2013-02-01 02:19:39 EST
(In reply to comment #26)
> What I don't understand is this: autohinting is supposed by be poor man's
> hinting. 

This is FUD spread by proponents of windows-95-like font rendering
Comment 28 Fedora End Of Life 2013-04-03 13:45:54 EDT
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:
https://fedoraproject.org/wiki/BugZappers/HouseKeeping/Fedora19
Comment 29 Marius Andreiana 2013-06-05 15:16:07 EDT
Looks like FC19beta has "assign" by default, metioned in comment #22.

Is this fixed?
Comment 30 Akira TAGOH 2013-06-05 23:00:33 EDT
No. no changes in even f19.
Comment 31 Fedora End Of Life 2015-01-09 11:40:59 EST
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.
Comment 32 Akira TAGOH 2015-01-26 04:32:25 EST
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.