W3C home > Mailing lists > Public > public-css-testsuite@w3.org > March 2012

Re: Test harness and test suite assumptions wrt anti-aliasing (font smoothing, clearType)

From: John Daggett <jdaggett@mozilla.com>
Date: Fri, 16 Mar 2012 21:22:54 -0700 (PDT)
To: css21testsuite@gtalbot.org
Cc: Public CSS test suite mailing list <public-css-testsuite@w3.org>
Message-ID: <915116245.12768472.1331958174197.JavaMail.root@zimbra1.shared.sjc1.mozilla.com>
GĂ©rard Talbot wrote:

> The test suite assumpions
> http://test.csswg.org/suites/css2.1/nightly-unstable/#uncommon
> 
> and the test harness entrance page
> http://test.csswg.org/harness/ [1]
> 
> should specifically invite testers to disable anti-aliasing (font
> smoothing, ClearType) in their operating system because this can and
> will affect rendered layout. I believe the ideal text of such
> recommendation would describe how to disable anti-aliasing in
> Windows, Mac and Linux.

No, I strongly disagree with this.  First, you're confusing a number
of separate but related issues.  Browsers typically render text with
subpixel antialiasing *and* with subpixel or integer-pixel
positioning. All browsers support subpixel anti-aliasing but only
Firefox/IE9 use subpixel positioning, Webkit/Opera use integer-pixel
positioning. Line metrics may be calculated with precise or rounded
metrics and where exactly the rounding occurs is not defined
precisely.  Under Windows, hinting will also affect these metrics for a
given font size, depending on the font.  All of these factors will affect the
precise placement.  Only disabling subpixel anti-aliasing will still
leave you with other factors that affect placement.

The other reason for not doing this is that it's not an environment
users typically use and so you won't be testing the main codepath that
browsers use, you'll be using a modified non-subpixel-AA path.

Basically, CSS does not specify pixel-precise layout, so we can't
always test assuming that it does.  But reftests are useful for just
this reason, you can write tests such that "A and B render the same"
does not rely on the precise alignment used, only that the two should
render identically using either subpixel AA or not.

Regards,

John Daggett
Received on Saturday, 17 March 2012 04:23:23 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Saturday, 17 March 2012 04:23:34 GMT