Closed
Bug 1165611
Opened 10 years ago
Closed 10 years ago
font smoothing thinner when using fontconfig platform fontlist
Categories
(Core :: Graphics: Text, defect)
Tracking
()
RESOLVED
FIXED
mozilla41
Tracking | Status | |
---|---|---|
firefox40 | --- | unaffected |
firefox41 | + | fixed |
People
(Reporter: yoasif, Assigned: jtd)
References
()
Details
(Keywords: regression, Whiteboard: [gfx-noted])
Attachments
(7 files)
User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/44.0.2391.0 Chrome/44.0.2391.0 Safari/537.36
Steps to reproduce:
On Firefox nightlies (Firefox/41.0) starting a few days ago, the font smoothing has become odd on my Ubuntu Linux machine.
The problem started appearing in the 20150514 build. Screenshots are attached.
1. Start nightly (using old or fresh profile makes no difference)
2. navigate to: http://www.alexvking.com/12_inch_macbook_and_windows_10.html (or really, any web page with text)
3. view text and compare to pre-20150514 builds.
Actual results:
Fonts appear thinner and looks almost as if I am using too much subpixel hinting.
Browser chrome is also affected.
Expected results:
Fonts should look like they did in build 20150513 and prior.
Reporter | ||
Comment 1•10 years ago
|
||
Reporter | ||
Updated•10 years ago
|
OS: Unspecified → Linux
Reporter | ||
Comment 2•10 years ago
|
||
Comment 3•10 years ago
|
||
[Tracking Requested - why for this release]: Regression
Good - 41.0a1 (2015-05-12)
Bad - 41.0a1 (2015-05-13)
pushlog:
https://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=62d9b117c688&tochange=0f1d42a6745a
Probably caused by:
Bug #1056479 - implement gfxPlatformFontList subclass for fontconfig
Severity: normal → major
Status: UNCONFIRMED → NEW
status-firefox40:
--- → unaffected
status-firefox41:
--- → affected
tracking-firefox41:
--- → ?
Ever confirmed: true
Flags: needinfo?(jdaggett)
Keywords: regression
Version: Trunk → 41 Branch
Comment 4•10 years ago
|
||
(In reply to Virtual_ManPL [:Virtual] from comment #3)
> Good - 41.0a1 (2015-05-13)
> Bad - 41.0a1 (2015-05-14)
fixed
Looks like text is rendered with broken subpixel antialiasing.
Comment 6•10 years ago
|
||
Comment 7•10 years ago
|
||
workaround |
WORKAROUND: Open the Dev Tool (Shift + F2), copy&paste this command, press enter and restart.
pref set gfx.font_rendering.fontconfig.fontlist.enabled false
Reporter | ||
Comment 8•10 years ago
|
||
(In reply to Ekanan Ketunuti from comment #7)
> WORKAROUND: Open the Dev Tool (Shift + F2), copy&paste this command, press
> enter and restart.
>
> pref set gfx.font_rendering.fontconfig.fontlist.enabled false
Thanks, this workaround works for me on the latest nightly.
Updated•10 years ago
|
Whiteboard: [gfx-noted]
Comment 9•10 years ago
|
||
I too hit this problem. I'm *not* a font snob, but the new fonts are bad enough that even I noticed and found them awful to read.
Setting gfx.font_rendering.fontconfig.fontlist.enabled to false fixes it.
Assignee | ||
Comment 10•10 years ago
|
||
(In reply to Asif Youssuff from comment #0)
> Actual results:
>
> Fonts appear thinner and looks almost as if I am using too much subpixel
> hinting.
>
> Browser chrome is also affected.
By "browser chrome is also affected" means you see the same fonts but different subpixel antialiasing?
Flags: needinfo?(jdaggett)
Assignee | ||
Updated•10 years ago
|
Assignee: nobody → jdaggett
Summary: Font smoothing thinner, uglier in Linux Firefox/41.0 → font smoothing thinner when using fontconfig platform fontlist
Assignee | ||
Updated•10 years ago
|
Comment 11•10 years ago
|
||
> 2. navigate to: http://www.alexvking.com/12_inch_macbook_and_windows_10.html (or really, any web page with text)
Note the "any web page with text". On my machine the change was highly evident pretty much everywhere. I'll attach a couple of screenshots from https://en.wikipedia.org/wiki/Rule_of_three_%28C%2B%2B_programming%29 which demonstrated it particularly well.
Comment 12•10 years ago
|
||
Comment 13•10 years ago
|
||
Comment 14•10 years ago
|
||
Looks like this may be a problem with picking up system lcdfilter fontconfig settings. That may be due to them being set when target="pattern" but only read with target="font".
The outputs from "FC_DEBUG=1 fc-match -v" and "xrdb -query | grep Xft" would help confirm.
Or see whether having this in ~/.fonts.conf helps:
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Use lcddefault as default for LCD filter -->
<match target="font">
<edit name="lcdfilter">
<const>lcddefault</const>
</edit>
</match>
</fontconfig>
Assignee | ||
Comment 16•10 years ago
|
||
This affects both system and webfonts.
Assignee | ||
Comment 17•10 years ago
|
||
Linux font waterfall testcase:
http://people.mozilla.org/~jdaggett/tests/linux-waterfall.html
Reporter | ||
Comment 18•10 years ago
|
||
(In reply to John Daggett (:jtd) from comment #10)
> (In reply to Asif Youssuff from comment #0)
>
> > Actual results:
> >
> > Fonts appear thinner and looks almost as if I am using too much subpixel
> > hinting.
> >
> > Browser chrome is also affected.
>
> By "browser chrome is also affected" means you see the same fonts but
> different subpixel antialiasing?
Same fonts, different subpixel aliasing.
Reporter | ||
Comment 19•10 years ago
|
||
(In reply to Karl Tomlinson (ni?:karlt) from comment #14)
> Looks like this may be a problem with picking up system lcdfilter fontconfig
> settings. That may be due to them being set when target="pattern" but only
> read with target="font".
>
> The outputs from "FC_DEBUG=1 fc-match -v" and "xrdb -query | grep Xft" would
> help confirm.
$ FC_DEBUG=1 fc-match -v
FC_DEBUG=1
Match Pattern has 23 elts (size 32)
family: "DejaVu Sans"(w) "DejaVu LGC Sans"(w) "DejaVu LGC Sans"(w) "DejaVu Sans"(w) "Bitstream Vera Sans"(w) "Verdana"(w) "Arial"(w) "Albany AMT"(w) "Luxi Sans"(w) "Nimbus Sans L"(w) "Helvetica"(w) "Lucida Sans Unicode"(w) "BPG Glaho International"(w) "Tahoma"(w) "Waree"(w) "Loma"(w) "Garuda"(w) "Umpush"(w) "Laksaman"(w) "Droid Sans Fallback"(w) "Khmer OS"(w) "Nachlieli"(w) "Lucida Sans Unicode"(w) "Yudit Unicode"(w) "Kerkis"(w) "ArmNet Helvetica"(w) "Artsounk"(w) "BPG UTF8 M"(w) "Waree"(w) "Loma"(w) "Garuda"(w) "Umpush"(w) "Saysettha Unicode"(w) "JG Lao Old Arial"(w) "GF Zemen Unicode"(w) "Pigiarniq"(w) "B Davat"(w) "B Compset"(w) "Kacst-Qr"(w) "Urdu Nastaliq Unicode"(w) "Raghindi"(w) "Mukti Narrow"(w) "malayalam"(w) "Sampige"(w) "padmaa"(w) "Hapax Berbère"(w) "MS Gothic"(w) "UmePlus P Gothic"(w) "SimSun"(w) "PMingLiu"(w) "WenQuanYi Zen Hei"(w) "WenQuanYi Bitmap Song"(w) "AR PL ShanHeiSun Uni"(w) "AR PL New Sung"(w) "MgOpen Modata"(w) "VL Gothic"(w) "IPAMonaGothic"(w) "IPAGothic"(w) "Sazanami Gothic"(w) "Kochi Gothic"(w) "AR PL KaitiM GB"(w) "AR PL KaitiM Big5"(w) "AR PL ShanHeiSun Uni"(w) "AR PL SungtiL GB"(w) "AR PL Mingti2L Big5"(w) "MS ゴシック"(w) "ZYSong18030"(w) "TSCu_Paranar"(w) "NanumGothic"(w) "DejaVu Sans"(w) "UnDotum"(w) "Baekmuk Dotum"(w) "Baekmuk Gulim"(w) "KacstQura"(w) "Lohit Bengali"(w) "Lohit Gujarati"(w) "Lohit Hindi"(w) "Lohit Marathi"(w) "Lohit Maithili"(w) "Lohit Kashmiri"(w) "Lohit Konkani"(w) "Lohit Nepali"(w) "Lohit Sindhi"(w) "Lohit Punjabi"(w) "Lohit Tamil"(w) "Meera"(w) "Lohit Malayalam"(w) "Lohit Kannada"(w) "Lohit Telugu"(w) "Lohit Oriya"(w) "LKLUG"(w) "WenQuanYi Micro Hei"(w) "FreeSans"(w) "Arial Unicode MS"(w) "Arial Unicode"(w) "Code2000"(w) "Code2001"(w) "Meera"(w) "sans-serif"(w) "Roya"(w) "Koodak"(w) "Terafik"(w) "sans-serif"(w) "sans-serif"(w)
familylang: "en"(s) "en-us"(w)
stylelang: "en"(s) "en-us"(w)
fullnamelang: "en"(s) "en-us"(w)
slant: 0(i)(s)
weight: 80(i)(s)
width: 100(i)(s)
size: 12(f)(s)
pixelsize: 12.5(f)(s)
hintstyle: 3(i)(s)
hinting: True(s)
verticallayout: False(s)
autohint: False(s)
globaladvance: True(s)
dpi: 75(f)(s)
scale: 1(f)(s)
lang: "en"(w)
fontversion: 2147483647(i)(s)
embeddedbitmap: True(s)
decorative: False(s)
lcdfilter: 1(i)(w)
namelang: "en"(s)
prgname: "fc-match"(s)
Best score 0 0 0 0 0 0 1e+99 0 1 1 0 0 0 0 1 1 1 1 0 0 0 2.14733e+12
Pattern has 22 elts (size 22)
family: "DejaVu Sans"(w)
familylang: "en"(w)
style: "Book"(w)
stylelang: "en"(w)
fullname: "DejaVu Sans"(w)
fullnamelang: "en"(w)
slant: 0(i)(w)
weight: 80(i)(w)
width: 100(i)(w)
foundry: "unknown"(w)
file: "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf"(w)
index: 0(i)(w)
outline: True(w)
scalable: True(w)
charset:
0000: 00000000 ffffffff ffffffff 7fffffff 00000000 ffffffff ffffffff ffffffff
0001: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0002: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 008873ff
0003: ffffffff ffffffff f58effff 7cff0007 ffffd7f0 fffffffb ffffffff ffffffff
0004: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0005: ffffffff fffe003f fe7fffff fffffffe 000006ff ffff0000 ffff00cf 001f07ff
0006: 882016c0 07fffffe 04bfffff fe11ffff ffffffff ffffffff 002159c0 03ff0000
0007: 00000000 00000000 00000000 00000000 00000000 00000000 ffffffff 073ff8ff
000e: 00000000 80000000 00000000 00000000 fef02596 3bffecae 33ff3f5f 00000000
0010: 00000000 00000000 00000000 00000000 00000000 ffffffff ffff003f 1fffffff
0014: effffefe ffbfffff fff7f7ff ffffffff ffffffff 3fffffff ffffffff fffff7ff
0015: ffff00ff 7fffffff fffdffff fff007ff 007ffc3f 0000ffff 40000000 00000002
0016: 00000000 00000000 000000c0 007fc000 1fffffff 00000000 00000000 00000000
001d: ffdfffff ffff7fcf efffffff 298007ff f8000020 ffffffff 000003f0 00000000
001e: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0fffffff
001f: 3f3fffff ffffffff aaff3f3f 3fffffff ffffffff ffdfffff efcfffdf 7fdcffff
0020: ffffffff ffffffff ffffffff fff3fc0f 1fff7fff 073fffff 18c30000 00000002
0021: fffffbff ffffffff ffff4bff ffffffff ffff023f ffffffff ffffffff ffffffff
0022: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0023: f303ffff 000019f3 00000000 24380000 f8100080 00007fff 0000c000 00000128
0024: 00000000 0000000c 00000000 000003ff 00000000 00000000 00000000 00000000
0025: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0026: ffffffff ffffffff ffffffff ffffffff 1fffffff 01ffffff 0000000f 00000004
0027: fffff3de fffffeff 7f47afff fffffffe ff1fffff 7ffeffff 00000060 ffff0fc1
0028: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0029: 00000cc0 00000000 00000003 00000000 00000018 00000000 003fc000 0c000800
002a: 1ffff007 00008000 00000000 e0000c00 ffffffff 07ffc001 00000000 06000000
002b: 87ffffff 0000001f 00180000 00000000 00000000 00000000 00000000 00000000
002c: 00000000 00000000 00000000 feffffff 00000000 00000000 00000000 00000000
002d: ffffffff ffff003f ffffffff 0000803f 00000000 00000000 00000000 00000000
002e: 41000000 0000403c 00000000 00000000 00000000 00000000 00000000 00000000
004d: 00000000 00000000 00000000 00000000 00000000 00000000 ffffffff ffffffff
00a4: 00000000 00000000 00000000 00000000 00000000 00000000 ffff0000 ffffffff
00a6: 00000000 00000000 00f330f0 00007ffc 00303c00 00000000 00000000 00000000
00a7: f87fff00 ffff0ffc 00cfcfc3 000000f0 00037e0f 000007ff 00000000 fc000000
00ef: 03ffffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00f0: 0000000f 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00f4: ffffffff ffffff7f 00000003 00000000 00000000 00000000 00000000 00000000
00f6: 00000000 00000000 00000000 00000000 00000000 00000000 00000020 00000000
00fb: e0f8007f 5f7fffff fffcffdb ffffffff ffffffff 00003c0f dff80000 f00003f0
00fe: 00000000 0000000f 00000000 ffdf0000 ffffffff ffffffff ffffffff 9fffffff
00ff: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 2e000000
0103: 7fffffff 0000000f 00000000 00000000 00000000 00000000 00000000 00000000
01d3: ffffffff ffffffff 007fffff 00000000 00000000 00000000 00000000 00000000
01d5: 00000000 7b000000 fffdfc5f 00000fff 00000000 ffffffff 000fffff 00000000
01d7: 00000000 00000000 00000000 00000000 00000000 00000000 ff000000 00000fff
01f0: 00000000 ffff0000 ffffffff ffffffff 000fffff 7ffe7fff fffefffe 00000000
01f4: 00000000 00226000 00000000 00000000 00000000 00000000 00000000 00000000
01f6: ffffffff ffffefef 00000001 00000000 00000000 00000000 00000000 00000000
(w)
lang: aa|ab|af|ar|ast|av|ay|az-az|az-ir|ba|bm|be|bg|bi|bin|br|bs|bua|ca|ce|ch|chm|co|cs|cu|cv|cy|da|de|el|en|eo|es|et|eu|fa|fi|fj|fo|fr|ff|fur|fy|ga|gd|gl|gn|gv|ha|haw|he|ho|hr|hu|hy|ia|ig|id|ie|ik|io|is|it|iu|ka|kaa|ki|kk|kl|ku-am|ku-ir|kum|kv|kw|ky|la|lb|lez|ln|lo|lt|lv|mg|mh|mi|mk|mo|mt|nb|nds|nl|nn|no|nr|nso|ny|oc|om|os|pl|pt|rm|ro|ru|sah|sco|se|sel|sh|shs|sk|sl|sm|sma|smj|smn|sms|so|sq|sr|ss|st|sv|sw|tg|tk|tl|tn|to|tr|ts|tt|tw|tyv|ug|uk|uz|ve|vi|vo|vot|wa|wen|wo|xh|yap|yi|yo|zu|ak|an|ber-dz|ber-ma|crh|csb|ee|fat|fil|hsb|ht|hz|jv|kab|kj|kr|ku-iq|ku-tr|kwm|lg|li|mn-mn|ms|na|ng|nv|ota|pap-an|pap-aw|qu|quz|rn|rw|sc|sd|sg|sn|su|ty|za(w)
fontversion: 153354(i)(w)
capability: "otlayout:DFLT otlayout:arab otlayout:armn otlayout:brai otlayout:cans otlayout:cher otlayout:cyrl otlayout:geor otlayout:grek otlayout:hani otlayout:hebr otlayout:kana otlayout:lao otlayout:latn otlayout:math otlayout:nko otlayout:ogam otlayout:runr otlayout:tfng otlayout:thai"(w)
fontformat: "TrueType"(w)
decorative: False(w)
hash: "sha256:42a6ee317989b6b61634b3304457bc25186abdc83113d93e8f4c0a25e02e9756"(w)
postscriptname: "DejaVuSans"(w)
Pattern has 36 elts (size 48)
family: "DejaVu Sans"(s)
familylang: "en"(s)
style: "Book"(w)
stylelang: "en"(w)
fullname: "DejaVu Sans"(w)
fullnamelang: "en"(w)
slant: 0(i)(s)
weight: 80(i)(s)
width: 100(i)(s)
size: 12(f)(s)
pixelsize: 12.5(f)(s)
foundry: "unknown"(w)
antialias: True(w)
hintstyle: 1(i)(w)
hinting: True(w)
verticallayout: False(s)
autohint: False(s)
globaladvance: True(s)
file: "/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf"(w)
index: 0(i)(w)
outline: True(w)
scalable: True(w)
dpi: 75(f)(s)
scale: 1(f)(s)
charset:
0000: 00000000 ffffffff ffffffff 7fffffff 00000000 ffffffff ffffffff ffffffff
0001: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0002: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 008873ff
0003: ffffffff ffffffff f58effff 7cff0007 ffffd7f0 fffffffb ffffffff ffffffff
0004: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0005: ffffffff fffe003f fe7fffff fffffffe 000006ff ffff0000 ffff00cf 001f07ff
0006: 882016c0 07fffffe 04bfffff fe11ffff ffffffff ffffffff 002159c0 03ff0000
0007: 00000000 00000000 00000000 00000000 00000000 00000000 ffffffff 073ff8ff
000e: 00000000 80000000 00000000 00000000 fef02596 3bffecae 33ff3f5f 00000000
0010: 00000000 00000000 00000000 00000000 00000000 ffffffff ffff003f 1fffffff
0014: effffefe ffbfffff fff7f7ff ffffffff ffffffff 3fffffff ffffffff fffff7ff
0015: ffff00ff 7fffffff fffdffff fff007ff 007ffc3f 0000ffff 40000000 00000002
0016: 00000000 00000000 000000c0 007fc000 1fffffff 00000000 00000000 00000000
001d: ffdfffff ffff7fcf efffffff 298007ff f8000020 ffffffff 000003f0 00000000
001e: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff 0fffffff
001f: 3f3fffff ffffffff aaff3f3f 3fffffff ffffffff ffdfffff efcfffdf 7fdcffff
0020: ffffffff ffffffff ffffffff fff3fc0f 1fff7fff 073fffff 18c30000 00000002
0021: fffffbff ffffffff ffff4bff ffffffff ffff023f ffffffff ffffffff ffffffff
0022: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0023: f303ffff 000019f3 00000000 24380000 f8100080 00007fff 0000c000 00000128
0024: 00000000 0000000c 00000000 000003ff 00000000 00000000 00000000 00000000
0025: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0026: ffffffff ffffffff ffffffff ffffffff 1fffffff 01ffffff 0000000f 00000004
0027: fffff3de fffffeff 7f47afff fffffffe ff1fffff 7ffeffff 00000060 ffff0fc1
0028: ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff ffffffff
0029: 00000cc0 00000000 00000003 00000000 00000018 00000000 003fc000 0c000800
002a: 1ffff007 00008000 00000000 e0000c00 ffffffff 07ffc001 00000000 06000000
002b: 87ffffff 0000001f 00180000 00000000 00000000 00000000 00000000 00000000
002c: 00000000 00000000 00000000 feffffff 00000000 00000000 00000000 00000000
002d: ffffffff ffff003f ffffffff 0000803f 00000000 00000000 00000000 00000000
002e: 41000000 0000403c 00000000 00000000 00000000 00000000 00000000 00000000
004d: 00000000 00000000 00000000 00000000 00000000 00000000 ffffffff ffffffff
00a4: 00000000 00000000 00000000 00000000 00000000 00000000 ffff0000 ffffffff
00a6: 00000000 00000000 00f330f0 00007ffc 00303c00 00000000 00000000 00000000
00a7: f87fff00 ffff0ffc 00cfcfc3 000000f0 00037e0f 000007ff 00000000 fc000000
00ef: 03ffffff 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00f0: 0000000f 00000000 00000000 00000000 00000000 00000000 00000000 00000000
00f4: ffffffff ffffff7f 00000003 00000000 00000000 00000000 00000000 00000000
00f6: 00000000 00000000 00000000 00000000 00000000 00000000 00000020 00000000
00fb: e0f8007f 5f7fffff fffcffdb ffffffff ffffffff 00003c0f dff80000 f00003f0
00fe: 00000000 0000000f 00000000 ffdf0000 ffffffff ffffffff ffffffff 9fffffff
00ff: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 2e000000
0103: 7fffffff 0000000f 00000000 00000000 00000000 00000000 00000000 00000000
01d3: ffffffff ffffffff 007fffff 00000000 00000000 00000000 00000000 00000000
01d5: 00000000 7b000000 fffdfc5f 00000fff 00000000 ffffffff 000fffff 00000000
01d7: 00000000 00000000 00000000 00000000 00000000 00000000 ff000000 00000fff
01f0: 00000000 ffff0000 ffffffff ffffffff 000fffff 7ffe7fff fffefffe 00000000
01f4: 00000000 00226000 00000000 00000000 00000000 00000000 00000000 00000000
01f6: ffffffff ffffefef 00000001 00000000 00000000 00000000 00000000 00000000
(w)
lang: aa|ab|af|ar|ast|av|ay|az-az|az-ir|ba|bm|be|bg|bi|bin|br|bs|bua|ca|ce|ch|chm|co|cs|cu|cv|cy|da|de|el|en|eo|es|et|eu|fa|fi|fj|fo|fr|ff|fur|fy|ga|gd|gl|gn|gv|ha|haw|he|ho|hr|hu|hy|ia|ig|id|ie|ik|io|is|it|iu|ka|kaa|ki|kk|kl|ku-am|ku-ir|kum|kv|kw|ky|la|lb|lez|ln|lo|lt|lv|mg|mh|mi|mk|mo|mt|nb|nds|nl|nn|no|nr|nso|ny|oc|om|os|pl|pt|rm|ro|ru|sah|sco|se|sel|sh|shs|sk|sl|sm|sma|smj|smn|sms|so|sq|sr|ss|st|sv|sw|tg|tk|tl|tn|to|tr|ts|tt|tw|tyv|ug|uk|uz|ve|vi|vo|vot|wa|wen|wo|xh|yap|yi|yo|zu|ak|an|ber-dz|ber-ma|crh|csb|ee|fat|fil|hsb|ht|hz|jv|kab|kj|kr|ku-iq|ku-tr|kwm|lg|li|mn-mn|ms|na|ng|nv|ota|pap-an|pap-aw|qu|quz|rn|rw|sc|sd|sg|sn|su|ty|za(s)
fontversion: 153354(i)(s)
capability: "otlayout:DFLT otlayout:arab otlayout:armn otlayout:brai otlayout:cans otlayout:cher otlayout:cyrl otlayout:geor otlayout:grek otlayout:hani otlayout:hebr otlayout:kana otlayout:lao otlayout:latn otlayout:math otlayout:nko otlayout:ogam otlayout:runr otlayout:tfng otlayout:thai"(w)
fontformat: "TrueType"(w)
embeddedbitmap: True(s)
decorative: False(s)
lcdfilter: 1(i)(w)
namelang: "en"(s)
prgname: "fc-match"(s)
hash: "sha256:42a6ee317989b6b61634b3304457bc25186abdc83113d93e8f4c0a25e02e9756"(w)
postscriptname: "DejaVuSans"(w)
$ xrdb -query | grep Xft
Xft.antialias: 1
Xft.dpi: 96
Xft.hinting: 1
Xft.hintstyle: hintslight
Xft.rgba: rgb
> Or see whether having this in ~/.fonts.conf helps:
>
> <?xml version="1.0"?>
> <!DOCTYPE fontconfig SYSTEM "fonts.dtd">
> <fontconfig>
> <!-- Use lcddefault as default for LCD filter -->
> <match target="font">
> <edit name="lcdfilter">
> <const>lcddefault</const>
> </edit>
> </match>
> </fontconfig>
Having this snippet in my .fonts.conf *does* help.
Comment 20•10 years ago
|
||
Thanks. lcdfilter set in the "Match Pattern" confirms that lcddefault is being set for FcConfigSubstitute with FcMatchPattern, but the new code is reading this setting only through FcConfigSubstitute with FcMatchFont.
Simply adding FcConfigSubstitute with FcMatchPattern to the start of PreparePattern() should resolve the problem. Perhaps that might be calling FcConfigSubstitute more often than necessary because the results would always be the same for all fonts in the gfxFontGroup. However, gfxFontCache may mean that PreparePattern() is not called too often. I don't know the performance impact.
gfxFontCache is global and expiration is after about 3 minutes without use, while nsDeviceContext::mFontCache (for gfxFontGroups) is not shared between device contexts and is flushed when zooming, but otherwise pretty much never expires.
Assignee | ||
Comment 21•10 years ago
|
||
As suggested by Karl, add FcConfigSubstitute to PreparePattern.
Attachment #8607281 -
Flags: review?(karlt)
Assignee | ||
Comment 22•10 years ago
|
||
From left to right, patched fontconfig fontlist code, gfxPangoFontGroup code, trunk fontconfig fontlist code. The patched rendering mimics the gfxPangoFontGroup code.
Assignee | ||
Comment 23•10 years ago
|
||
Assignee | ||
Comment 24•10 years ago
|
||
The tp5 numbers look similar to the numbers for current mozilla-inbound builds.
Assignee | ||
Comment 25•10 years ago
|
||
From the waterfall page in comment 17. From left to right, fontconfig fontlist code with fix, gfxPangoFontGroup code, trunk fontconfig fontlist code
Updated•10 years ago
|
Attachment #8607281 -
Flags: review?(karlt) → review+
Comment 26•10 years ago
|
||
Comment 27•10 years ago
|
||
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla41
Reporter | ||
Comment 28•10 years ago
|
||
Thanks guys, it's back to normal on the latest nightly.
Comment 30•9 years ago
|
||
Thanks you very much to fix Thai font not smoothing problem.
You need to log in
before you can comment on or make changes to this bug.
Description
•