Closed
Bug 1434433
Opened 7 years ago
Closed 2 years ago
Cleartype fonts: changes between V51/V52 and between V57/V58
Categories
(Core :: Layout: Text and Fonts, defect, P3)
Tracking
()
RESOLVED
INCOMPLETE
People
(Reporter: soulmatt2002, Unassigned)
Details
(Whiteboard: gfx-noted)
Attachments
(1 file, 2 obsolete files)
549.20 KB,
image/jpeg
|
Details |
User Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:57.0) Gecko/20100101 Firefox/57.0
Build ID: 20180103231032
Steps to reproduce:
It is widely known that Mozilla changed the handling of fonts when they released V52. It is widely known that to fix this cleartype issue you had to change
gfx.canvas.azure.backends = direct2d1.1,skia,cairo
gfx.content.azure.backends = direct2d1.1,skia,cairo"
to
gfx.canvas.azure.backends = direct2d1.1,cairo,skia
gfx.content.azure.backends = direct2d1.1,cairo,skia"
BUG REPORT: This no longer works when you upgrade from V57 to V58. After days spent researching this problem I could NOT find a solution.
Is someone aware of this issue?
Reporter | ||
Comment 1•7 years ago
|
||
Oops. Let me be a little clearer.
I have cleartype OFF in as many places as possible on Windows 10. In Firefox about:preferences I have "Allow pages to choose their own fonts, instead of your selections above" unchecked & serif and sans-serif both set to Arial. Basically, I only want to see Arial fonts that are not cleartyped, with the emphasis being on 'not cleartyped'. Everything was fine all the way up to Firefox v52. The changes shown above for gfx.*.azure.backends was the hack I did to fix the cleartype characters that were appearing in v52. This hack has been working up until v57 ... but now v58 is all messed up with some sites showing cleartype, noticeably facebook.com.
I hope this makes the issue clearer.
Is there a setting I can affect that will give me no cleartype fonts.
Thanks.
Reporter | ||
Comment 2•7 years ago
|
||
To help further, I have created a blogspot site and posted an entry for your reference:
https://firefoxtrivia.blogspot.co.nz/2018/01/cleartype-issue.html
Thanks.
Comment 3•7 years ago
|
||
Does it make any difference to flip "layers.omtp.enabled"?
Reporter | ||
Comment 4•7 years ago
|
||
I flipped layers.omtp.enabled = false (was [default] = true). I noticed the default in 57.0.4 is false and thought you might be on to something :)
Unfortunately, no difference.
I have 3 sites as test pages:
#1 http://peanuts.wikia.com/wiki/Andy
#2 https://www.nytimes.com/2018/01/28/technology/europe-data-privacy-rules.html?smid=tw-share
#3 https://www.facebook.com/
On Firefox 57.0.4 these are all showing what I want.
On Firefox 58.0.1 #1 and #2 are good, but #3 facebook is showing the fuzzy cleartype.
Comment 5•7 years ago
|
||
So the fundamental issue here is that in some cases, Firefox is using subpixel antialiasing (ClearType) even when the Windows preferences have been set to disable it. That sounds like it's simply a bug (in moz2d?) whereby it's not consistently respecting the system antialiasing mode.
Moving this to gfx:text, as I think it's an issue on the graphics side of things.
Component: Layout: Text → Graphics: Text
Reporter | ||
Comment 6•7 years ago
|
||
Yeah. Something happened between 57 and 58 where, without any changes to my OS's ClearType settings, sites that showed no ClearType fonts are now either using a mixture of ClearType and non-ClearType, or totally using all ClearType (https://www.facebook.com is the worst offender).
In order that I don't get stuck using 57.0.4 for ever, I needed to make a compromise so I have set all the following back to their defaults:
gfx.canvas.azure.backends = direct2d1.1,skia,cairo
gfx.content.azure.backends = direct2d1.1,skia,cairo
layers.omtp.enabled = true
The 2 settings
gfx.canvas.azure.backends = direct2d1.1,cairo,skia (skia & cairo flipped positions from default)
gfx.content.azure.backends = direct2d1.1,cairo,skia (skia & cairo flipped positions from default)
were working from 52.0 up to Firefox 57.0.4 and seemed to completely get rid of all ClearType on all webpages, as desired.
Comment 7•7 years ago
|
||
I confirm this issue. Something has happened with fonts after transition to 58 from 57.
I have cleartype disabled anywhere in Windows, Arial as substitute font in FF on many sites (via Stylus add-on) and gfx.canvas.azure.backends = direct2d1.1,cairo (skia is deleted).
Font smoothing even flickers for me on some webpages: http://telegra.ph/file/5c2608eeb0d4861a9a91d.mp4
Also have font flickering on scroll: https://imgur.com/a/48NsO
Windows 10 (x64). Cleartype enabled.
Firefox 58.0.1 (x86). Hardware acceleration enabled.
gfx.canvas.azure.backends = direct2d1.1,cairo,skia
gfx.content.azure.backends = direct2d1.1,cairo,skia
gfx.direct2d.disabled = true
Windows 7 (x64) Cleartype OFF
>> Firefox 58 with default settings
gfx.canvas.azure.backends = direct2d1.1,skia,cairo
gfx.content.azure.backends = direct2d1.1,skia,cairo
gfx.direct2d.disabled = false
##Problem
Firefox UI show fonts with Cleartype OFF and website content with Cleartype ON
>> Firefox 58 with setting in about:config to disbale cleartype that worked before
gfx.canvas.azure.backends = direct2d1.1,cairo,skia
gfx.content.azure.backends = direct2d1.1,cairo,skia
gfx.direct2d.disabled = true
So between Firefox 57 and 58 the UI Cleartype setting got separated from content
##Problem
Firefox UI show fonts with Cleartype ON and website content with Cleartype OFF
Comment 10•7 years ago
|
||
Reporter | ||
Comment 11•7 years ago
|
||
BUMP
This issue clearly affects a lot of Firefox users. I have been updating Nightly every day and still this issue is prevalent.
Here's a solution: Whoever changed the code that caused this needs to revert the section of code. PROBLEM SOLVED! The chunk of code is in the 'handling of cleartype' logic section. Put it back and this issue disappears.
Updated•7 years ago
|
Priority: -- → P3
Comment 13•7 years ago
|
||
(In reply to soulmatt2002 from comment #11)
> BUMP
>
> This issue clearly affects a lot of Firefox users. I have been updating
> Nightly every day and still this issue is prevalent.
>
> Here's a solution: Whoever changed the code that caused this needs to revert
> the section of code. PROBLEM SOLVED! The chunk of code is in the 'handling
> of cleartype' logic section. Put it back and this issue disappears.
So the hack probably stopped working because cairo was killed off completely, but that's somewhat of a guess, that's not something that can, or should be undone.
(In reply to Jonathan Kew (:jfkthame) from comment #5)
> So the fundamental issue here is that in some cases, Firefox is using
> subpixel antialiasing (ClearType) even when the Windows preferences have
> been set to disable it. That sounds like it's simply a bug (in moz2d?)
> whereby it's not consistently respecting the system antialiasing mode.
>
> Moving this to gfx:text, as I think it's an issue on the graphics side of
> things.
So, I looked at this, this seems to be a problem with the user report, with cleartype off, I can't see us ever using -cleartype- what I can see is that a lot of places use grayscale AA, where the user would prefer -no- AA whatsoever. (See also his blogpost at: https://firefoxtrivia.blogspot.co.nz/2018/01/cleartype-issue.html, where the page on the right does -not- have cleartype. It just still has grayscale AA.
When disabling ClearType, some fonts will be rendered without AA and some with grayscale AA, depending on their font metadata, this is expected behavior.
We enable Grayscale AA because that is what Windows tells us, as listed here: http://www.thewindowsclub.com/disable-font-smoothing-windows if you want Grayscale AA disabled as well, you can just turn off Font smoothing completely through Control Panel > Performance Options Visual Effects.
As far as I can tell, Moz2D rasterization respects both these settings individually and correctly. I'm not sure I'm a huge fan we do at the job of hinting here, which may have changed, but that would be a layout issue.
Let me know if I missed something Jonathan.
I would ask the user to disable font smoothing on their system completely and see if that gets them the behavior they want and had before, if it does, this is probably a worksforme, otherwise, something may have changed in our decision making to make it more correct, but possibly our hinting hasn't adjusted along, or something.
Component: Graphics: Text → Layout: Text
Flags: needinfo?(soulmatt2002)
Flags: needinfo?(jfkthame)
Flags: needinfo?(bas)
Comment 14•7 years ago
|
||
Added another screenshot to better describe the problem.
The Firefox 58 UX Font cleartype settings are detached from content font cleartype settings.
Using settings from other comments :
gfx.canvas.azure.backends = direct2d1.1,cairo,skia
gfx.content.azure.backends = direct2d1.1,cairo,skia
gfx.direct2d.disabled = true
disable cleartype for websites fonts and behave like in Firefox 57 BUT it activates cleartype on the Firefox 58 UX font.
Default Firefox 58 has UX font without cleartype and content font with cleartype.
Default Firefox 57 hax UX font with cleartype and content font with cleartype.
Attachment #8948339 -
Attachment is obsolete: true
Attachment #8948340 -
Attachment is obsolete: true
Comment 15•3 years ago
|
||
Clear a needinfo that is pending on an inactive user.
Inactive users most likely will not respond; if the missing information is essential and cannot be collected another way, the bug maybe should be closed as INCOMPLETE
.
For more information, please visit auto_nag documentation.
Flags: needinfo?(soulmatt2002)
Updated•3 years ago
|
Severity: normal → S3
Comment 16•2 years ago
|
||
Looks like we should probably call this INCOMPLETE at this point, per comment 15. Lots has changed in our graphics stack over the time since this bug was last touched (~6 years ago), so if there are still any issues here, it'd probably be simplest to start fresh with a new bug anyway.
Status: UNCONFIRMED → RESOLVED
Closed: 2 years ago
Flags: needinfo?(jfkthame)
Resolution: --- → INCOMPLETE
You need to log in
before you can comment on or make changes to this bug.
Description
•