Bug 1389683 - Blurred rendering
Summary: Blurred rendering
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: gnome-desktop3
Version: 25
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Richard Hughes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2016-10-28 08:57 UTC by Remi Collet
Modified: 2017-12-12 10:46 UTC (History)
11 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2017-12-12 10:46:30 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Zoomed screen shot (3.49 MB, image/png)
2016-10-28 08:57 UTC, Remi Collet
no flags Details
Ftview screen shot (208.79 KB, image/png)
2016-11-02 07:43 UTC, Remi Collet
no flags Details

Description Remi Collet 2016-10-28 08:57:18 UTC
Created attachment 1214870 [details]
Zoomed screen shot

Description of problem:
Since update to F25, font are blurred.

Version-Release number of selected component (if applicable):
freetype-2.6.5-1.fc25.x86_64

How reproducible:
Always


Notice: with F24, I solved the problem switching from Cantarell to Liberation, but no success on F25.

Comment 1 Remi Collet 2016-10-28 08:58:11 UTC
On the attached image, left part is Fedora 24, right is Fedora 25.

Comment 2 Marek Kašík 2016-11-01 12:25:48 UTC
Hi,

I can not reproduce this on my Fedora 25. Could you install freetype-demos and run ftview on the font? Btw, in which application do you experience the problem?

Could you provide screenshot of the window shown by this command?:

ftview 14 /usr/share/fonts/liberation/LiberationSans-Regular.ttf

Comment 3 Remi Collet 2016-11-02 07:43:49 UTC
Created attachment 1216380 [details]
Ftview screen shot

ftview screeenshot from various fonts (Liberation, DejaVu, Cantarell)

Comment 4 Remi Collet 2016-11-02 07:45:08 UTC
(In reply to Marek Kašík from comment #2)
> Btw, in which application do you experience the problem?

Mostly Firefox (all web sites) and Thunderbird (folder and message list panel)

Comment 5 Marek Kašík 2016-11-02 12:39:10 UTC
I can reproduce it now. The change happened in fontconfig. It has "slight" hinting as default now. When I remove "/etc/fonts/conf.d/10-hinting-slight.conf", the thunderbird looks the same as in Fedora 24 (if the settings are the same).

Comment 6 Remi Collet 2016-11-02 13:28:28 UTC
Indeed removing /etc/fonts/conf.d/10-hinting-slight.conf content solves this issue.

Thanks for the "workaround".

Comment 7 Akira TAGOH 2016-11-04 08:55:15 UTC
It was reasoned to keep the consistency to the desktop's default value.

Comment 8 Bojan Smojver 2016-11-13 23:53:14 UTC
(In reply to Remi Collet from comment #6)
> Indeed removing /etc/fonts/conf.d/10-hinting-slight.conf content solves this
> issue.

The workaround works here as well.

My question is, when fontconfig gets updated, that symlink will come back and screw up the rendering again, right? That sucks, especially given the fact that it somehow actually overrides what is set in dconf.

Can we have that symlink whacked in the package, please? Desktop default is slight, so that should cover that, right?

Comment 9 Akira TAGOH 2016-11-14 02:48:05 UTC
As long as the applications support reading something via dconf or using APIs doing that in a library, it does. otherwise not. that's why fontconfig followed it up that way. ideally the configuration tools in desktops should update $HOME/.config/fontconfig/conf.d for non-desktop-native apps as well. I'm tired to hear an complaint about the sort of this causing inconsistency configurations between fontconfig and desktops. please request desktops to improve.

For the permanent solution in user configuration, you can put this in $HOME/.config/fontconfig/conf.d

<fontconfig>
  <match>
    <edit name="hintstyle" mode="prepend"><const>choose from hintnone, hintslight, hintmedium, or hintfull what you prefer</const></edit>
    <!-- e.g. <edit name="hintstyle mode="prepend"><const>hintfull</const></edit>
  </match>
</fontconfig>

or do the similar thing with fonts-tweak-tool for particular fonts

Comment 10 Bojan Smojver 2016-11-14 03:18:11 UTC
(In reply to Akira TAGOH from comment #9)
 
> For the permanent solution in user configuration, you can put this in
> $HOME/.config/fontconfig/conf.d
> 
> <fontconfig>
>   <match>
>     <edit name="hintstyle" mode="prepend"><const>choose from hintnone,
> hintslight, hintmedium, or hintfull what you prefer</const></edit>
>     <!-- e.g. <edit name="hintstyle
> mode="prepend"><const>hintfull</const></edit>
>   </match>
> </fontconfig>

This does not work for me in Gnome. I actually have to set hinting to full using Gnome Tweak Tool (or dconf) to get full hinting going.

That is the confusing bit for me. If I set full hinting in Gnome, but fontconfig has slight (i.e. the symlink in /etc/fonts/conf.d), the fonts are not rendered clearly. I tried symlinking the fontconfig's 10-hinting-full into /etc/fonts/conf.d, but that didn't work either. Neither did suggestion above.

PS. Note that I also use autohinting, by symlinking 10-autohint. Without that, all the fonts look way to thin for me.

Comment 11 Akira TAGOH 2016-11-14 03:35:08 UTC
(In reply to Bojan Smojver from comment #10)
> This does not work for me in Gnome. I actually have to set hinting to full
> using Gnome Tweak Tool (or dconf) to get full hinting going.

You have to do. if you want to override the desktop's anyway, mode="assign" instead of "prepend" or "append" would do the job. though it may give you another confusion in the future. I wouldn't recommend to do that.

> That is the confusing bit for me. If I set full hinting in Gnome, but
> fontconfig has slight (i.e. the symlink in /etc/fonts/conf.d), the fonts are
> not rendered clearly. I tried symlinking the fontconfig's 10-hinting-full
> into /etc/fonts/conf.d, but that didn't work either. Neither did suggestion
> above.

Well, those configuration in /etc/fonts/conf.d doesn't override the desktop configuration if they have. the point is, there are applications doesn't follow the desktop's. they simply read the font configurations from fontconfig. both configurations should has consistency in that sense. but fontconfig as a lower layer library to desktops can't do that and desktops should be responsible IMHO.

Anyway, good to check with fc-match -v | grep hint if you doubt some hinting configuration isn't applied.

> PS. Note that I also use autohinting, by symlinking 10-autohint. Without
> that, all the fonts look way to thin for me.

That is your preference. then changing hintstyle wouldn't help. that's it.

Comment 12 Bojan Smojver 2016-11-14 04:01:44 UTC
(In reply to Akira TAGOH from comment #11)
> (In reply to Bojan Smojver from comment #10)
> > This does not work for me in Gnome. I actually have to set hinting to full
> > using Gnome Tweak Tool (or dconf) to get full hinting going.
> 
> You have to do. if you want to override the desktop's anyway, mode="assign"
> instead of "prepend" or "append" would do the job. though it may give you
> another confusion in the future. I wouldn't recommend to do that.

Tried that. Doesn't work for Gnome, although I get:

$ fc-match -v | grep hint
	hintstyle: 3(i)(w)
	hinting: True(s)
	autohint: True(w)

Gnome uses slight, because that its default, it seems.

So, here is what I don't understand. If I have that symlink to 10-hinting-slight in /etc/fonts/conf.d, Gnome will revert to slight, although I have it set to full explicitly. So, somehow slight is "stronger" and fonts get blurred.

> > PS. Note that I also use autohinting, by symlinking 10-autohint. Without
> > that, all the fonts look way to thin for me.
> 
> That is your preference. then changing hintstyle wouldn't help. that's it.

Autohinting is affected by hintstyle as well, as far as I can see. Autohinted fonts look a lot better with full (or at least medium) hinting on.

Anyhow, never mind. I can cut my own RPM that always removes that symlink on fontconfig upgrade.

Comment 13 Akira TAGOH 2016-11-14 04:24:24 UTC
(In reply to Bojan Smojver from comment #12)
> (In reply to Akira TAGOH from comment #11)
> > (In reply to Bojan Smojver from comment #10)
> > > This does not work for me in Gnome. I actually have to set hinting to full
> > > using Gnome Tweak Tool (or dconf) to get full hinting going.
> > 
> > You have to do. if you want to override the desktop's anyway, mode="assign"
> > instead of "prepend" or "append" would do the job. though it may give you
> > another confusion in the future. I wouldn't recommend to do that.
> 
> Tried that. Doesn't work for Gnome, although I get:
> 
> $ fc-match -v | grep hint
> 	hintstyle: 3(i)(w)
> 	hinting: True(s)
> 	autohint: True(w)
> 
> Gnome uses slight, because that its default, it seems.
> 
> So, here is what I don't understand. If I have that symlink to
> 10-hinting-slight in /etc/fonts/conf.d, Gnome will revert to slight,
> although I have it set to full explicitly. So, somehow slight is "stronger"
> and fonts get blurred.

To clarify, fc-match doesn't read the GNOME's configuration. if you see it "revert" to slight from that result, that isn't correct. assuming that you don't modify 10-hinting-slight and contains mode="append".
If you want to see the actual font properties on GNOME applications, run your apps with FC_DEBUG=1.

Comment 14 Bojan Smojver 2016-11-14 04:42:08 UTC
(In reply to Akira TAGOH from comment #13)
 
> To clarify, fc-match doesn't read the GNOME's configuration.

Yeah, I get that.

Comment 15 Bojan Smojver 2016-11-14 08:39:18 UTC
Maybe this bug should actually be assigned to Gnome?

Comment 16 Akira TAGOH 2016-11-14 09:48:52 UTC
If you want to take an effect on the font configuration in dconf to the non-GNOME applications as well, it should be.

Comment 17 Bojan Smojver 2016-11-14 09:57:20 UTC
(In reply to Akira TAGOH from comment #16)
> If you want to take an effect on the font configuration in dconf to the
> non-GNOME applications as well, it should be.

What I'm saying is that I set hinting to full in Gnome, but it has no effect on Grome apps (e.g. terminal, evolution) if fontconfig has it set to slight. That looks like a Gnome bug to me. Surely a user using Tweak Tool should choose hinting properly.

Comment 18 Akira TAGOH 2016-11-14 10:23:18 UTC
Sure. I suppose something has been changed in GNOME. I thought it worked before. not yet checking what version of Fedora it has been changed since.

Comment 19 Bojan Smojver 2016-11-14 12:42:15 UTC
(In reply to Akira TAGOH from comment #18)
> Sure. I suppose something has been changed in GNOME. I thought it worked
> before. not yet checking what version of Fedora it has been changed since.

I don't really know whether something was changed in Gnome, but if I understand things correctly, that symlink is new in fontconfig. So, maybe Gnome font support never had to deal with the situation where fontconfig sets slight and Gnome sets full.

BTW, I've seen what appear to be very similar bugs in other distros.

Comment 20 Bojan Smojver 2016-11-14 23:27:25 UTC
Assigning to Gnome Desktop to find out what Gnome devs think about this.

Comment 21 Akira TAGOH 2016-11-15 02:26:24 UTC
Well, the basic workflow to use fontconfig is, 1) set the query to FcPattern to get better fonts according to it, 2) and collect with FcConfigSubstitute() and FcDefaultSubstitute(), at this time, FcPattern will be modified/filled out other properties according to the font configurations in /etc/fonts/conf.d and $HOME/.config/fontconfig/conf.d. 3) then FcFontMatch() and FcFontSort().

target="pattern" rules will be applied at 2) and target="font" will be applied at 3). apparently GNOME doesn't add their own hintstyle in dconf at 2) stage.

Comment 22 Remi Collet 2017-08-11 09:31:26 UTC
Fedora 26 also affected

Comment 23 Fedora End Of Life 2017-11-16 18:40:48 UTC
This message is a reminder that Fedora 25 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 25. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '25'.

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 25 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 24 Fedora End Of Life 2017-12-12 10:46:30 UTC
Fedora 25 changed to end-of-life (EOL) status on 2017-12-12. Fedora 25 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.