Closed Bug 581715 Opened 16 years ago Closed 16 years ago

font rendering/smoothing breaks (becomes 'grainy') @ FF ver > ~ 3.6.8

Categories

(Core :: Layout: Text and Fonts, defect)

1.9.2 Branch
All
Linux
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 404637

People

(Reporter: rb.bugs.mozilla, Unassigned)

Details

(Keywords: fonts, regression)

User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.6) Gecko/20100626 SUSE/3.6.6-1.2 Firefox/3.6.6 Build Identifier: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.2.6) Gecko/20100626 SUSE/3.6.6-1.2 Firefox/3.6.6 i'm running Opensuse 11.3/x86_64. my DE is KDE (kdebase4-runtime-4.4.95-222.1.x86_64) i've installed FF from Opensuse RELEASE repo (MozillaFirefox-3.6.6-1.2.x86_64). i've installed freetype2 with subpixel support, rpm -qa | egrep -i "freetype2|cairo-" cairo-32bit-1.8.10-3.1.x86_64 freetype2-feature-subpixel-hinting-2.4.1-1005.1.x86_64 cairo-1.8.10-12.1.x86_64 freetype2-devel-2.4.1-1005.1.x86_64 with config, as above, font hinting/smoothing/aliasing *in* FF is great, as expected. at upgrade to any/all of the following versions of FF: from REPOS: http://download.opensuse.org/repositories/mozilla/openSUSE_11.3/x86_64/MozillaFirefox-3.6.8-1.1.x86_64.rpm http://download.opensuse.org/repositories/mozilla:/beta/openSUSE_11.3/x86_64/MozillaFirefox4-4.0b-1.1.x86_64.rpm http://download.opensuse.org/repositories/mozilla:/alpha/openSUSE_11.3/x86_64/MozillaFirefox4-4.0b-6.2.x86_64.rpm from MOZILLA: ftp://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.8/linux-i686/en-US/firefox-3.6.8.tar.bz2 http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/latest-mozilla-1.9.2/firefox-3.6.9pre.en-US.linux-x86_64.tar.bz2 http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/2010-07-02-03-mozilla-1.9.2/firefox-3.6.8pre.en-US.linux-x86_64.tar.bz2 here's an example image (atm, 3.6.6 vs 4.0b) of the 'grainy' vs 'clear' font display: ############################################################ ## http://img401.imageshack.us/img401/289/fontcompare.png ## ############################################################ these, otoh, are OK -- i.e., 'clean' fonts are displayed, ftp://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.7/linux-i686/en-US/firefox-3.6.7.tar.bz2 http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/3.6.7-candidates/build2/linux-i686/en-US/firefox-3.6.7.tar.bz2 the 'grainy' fonts issue survives, and is fully reproducible across: safemode, clean profile, new user, multiple machines. Just in case 'something' other than in FF changed, I checked font appearance in "usual suspects" -- Konquereor, Chrome, OpenOffice, KDE & GNOME Desktops. All's ok, jut not in FF 3.6.8 ... it looks like the regression window is somewhere between: (A) http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/3.6.7-candidates/build2/linux-i686/en-US/firefox-3.6.7.tar.bz2 & (B) http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/2010-07-02-03-mozilla-1.9.2/firefox-3.6.8pre.en-US.linux-x86_64.tar.bz2 also of note, using (A), when I display a visited ftp:// dir, the dir is displayed in-browser with sans-serif fonts. at switch to (B), the same dir is displayed with SERIF font. something's clearly changed at that point ... dropping back to any 3.6.6/3.6.7 version -- from distro or mozilla -- cures the problem. i.e., fonts are 'clean'. Reproducible: Always
fyi, cat ~/.fonts.conf <?xml version='1.0'?> <!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> <fontconfig> <match target="font"> <edit mode="assign" name="rgba"> <const>rgb</const> </edit> </match> <match target="font"> <edit mode="assign" name="hinting"> <bool>true</bool> </edit> </match> <match target="font"> <edit mode="assign" name="hintstyle"> <const>hintslight</const> </edit> </match> <match target="font"> <edit mode="assign" name="autohint"> <bool>false</bool> </edit> </match> <dir>~/.fonts</dir> <dir>/home/rb/.Fontmatrix/Activated</dir> <match target="font"> <edit mode="assign" name="antialias"> <bool>true</bool> </edit> </match> </fontconfig>
Keywords: fonts
Version: unspecified → 3.6 Branch
Keywords: regression
Component: General → Layout: Text
Product: Firefox → Core
QA Contact: general → layout.fonts-and-text
Version: 3.6 Branch → 1.9.2 Branch
rb, can you perhaps pin down the two 1.9.2 branch nightly builds (so builds from http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/YYYY-MM-DD-HH-mozilla-1.9.2/ ) that come before and after the regression? Comment 0 seems to have one regression range from a nightly to a ship candidate, but two nightlies would be ideal. Then put the http://hg.mozilla.org URIs that appear in about:buildconfig for the two nightlies in question in this bug?
Watch out, also, that i686 and x86_64 builds will use different system libraries and so are likely to look quite different.
I grabbed a 2nd monitor, and worked more systematically thru the available options. After a closer look, I suspect the problem's 'cairo' -- and whether or not the FF build properly links to a system-installed version. Whether that qualifies as a bug ... ?? ALL of these NIGHTLIES showed the problem, BAD firefox-3.6.6pre.en-US.linux-x86_64.2010062403.tar.bz2 BAD firefox-3.6.6pre.en-US.linux-x86_64.2010062503.tar.bz2 BAD firefox-3.6.7pre.en-US.linux-x86_64.2010062603.tar.bz2 BAD firefox-3.6.7pre.en-US.linux-x86_64.2010062703.tar.bz2 BAD firefox-3.6.7pre.en-US.linux-x86_64.2010062803.tar.bz2 BAD firefox-3.6.7pre.en-US.linux-x86_64.2010062903.tar.bz2 BAD firefox-3.6.7pre.en-US.linux-x86_64.2010063003.tar.bz2 BAD firefox-3.6.7pre.en-US.linux-x86_64.2010070103.tar.bz2 BAD firefox-3.6.8pre.en-US.linux-x86_64.2010070203.tar.bz2 BAD firefox-3.6.8pre.en-US.linux-x86_64.2010070303.tar.bz2 afaict, @ http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/, there are no other nightlies. also, these RELEASES are problematic, (A) BAD http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.6/linux-i686/en-US/firefox-3.6.6.tar.bz2 BAD http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.7/linux-i686/en-US/firefox-3.6.7.tar.bz2 BAD http://releases.mozilla.org/pub/mozilla.org/firefox/releases/3.6.8/linux-i686/en-US/firefox-3.6.8.tar.bz2 but, from my distro's repos, (B) GOOD MozillaFirefox-3.6.6-1.2.x86_64 (C) BAD MozillaFirefox-3.6.8-1.1.x86_64 (D) BAD MozillaFirefox4-4.0b-1.2.x86_64 ??? I took a look at config info @ about:buildconfig, (A) BAD --enable-application=browser --enable-optimize --enable-update-channel=release --enable-update-packaging --disable-debug --enable-tests --enable-official-branding (B) GOOD --enable-application=xulrunner --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --mandir=/usr/share/man --includedir=/usr/include --enable-optimize --enable-extensions=default --with-system-jpeg --with-system-zlib --with-l10n-base=../l10n --enable-xft --disable-freetype2 --enable-svg --enable-canvas --disable-tests --disable-mochitest --disable-installer --disable-updater --disable-javaxpcom --enable-startup-notification --enable-url-classifier --with-system-nspr --with-system-nss --enable-system-cairo --enable-system-hunspell --enable-libproxy (C) BAD --enable-application=xulrunner --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --mandir=/usr/share/man --includedir=/usr/include --enable-optimize --enable-extensions=default --with-system-jpeg --with-system-zlib --with-l10n-base=../l10n --enable-xft --disable-freetype2 --enable-svg --enable-canvas --disable-tests --disable-mochitest --disable-installer --disable-updater --disable-javaxpcom --enable-startup-notification --enable-url-classifier --with-system-nspr --with-system-nss --enable-system-hunspell --enable-libproxy (D) BAD --enable-application=xulrunner --prefix=/usr --libdir=/usr/lib64 --sysconfdir=/etc --mandir=/usr/share/man --includedir=/usr/include --enable-optimize --enable-extensions=default --with-system-jpeg --with-system-zlib --with-l10n-base=../l10n --enable-xft --disable-freetype2 --enable-svg --enable-canvas --disable-tests --disable-mochitest --disable-installer --disable-updater --disable-javaxpcom --enable-startup-notification --enable-url-classifier --enable-system-hunspell --with-system-nspr --with-system-nss --enable-libproxy Note that in the ONE "good" case above, there's "--enable-system-cairo" included in the system config. And, iiuc at least on OpenSuse, it's the installation from repos of a non-standard (until just recently patent encumbered?) freetype2/cairo, build with subpixel hinting support, that does the font smoothing/hinting 'magic'. Discussion here: http://forums.opensuse.org/english/get-help-here/applications/442295-subpixel-hinting-packages-ubuntu-lucid-patches-now-available-11-3-a-2.html, Repo here: http://download.opensuse.org/repositories/home:/anshuljain:/ubuntu_patch_11.3_backport/openSUSE_11.3 I'm guessing that all the builds with "BAD" font-behavior builds use an included/linked cairo lib that is NOT subpixel enabled ... and, as they don't include the use-system-config option, fail to pick up the system-installed one. Atm, without that system-installed subpixel-enabled cairo (available for now ONLY in the RELEASE distro build), it's grainy fonts in Firefox ... Now, whether FF *should* check for, and link to, an available system cairo as default, I'm unsure.
The latest Firefox packages built for openSUSE do use the internal cairo indeed. This was done to avoid any risk of bad rendering caused by older versions of cairo.
for reference, I've also opened: https://bugzilla.novell.com/show_bug.cgi?id=625441 again, where the subpixel support _should_ be included -- upstream/here, or in-distro, is unclear
I think this is probably the same issue as bug 404637. There is a link there (in See Also) to the cairo bug report. Getting this upstreamed to cairo is probably the direction to aim.
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.