- From: John Daggett <jdaggett@mozilla.com>
- Date: Wed, 9 May 2012 04:51:34 -0700 (PDT)
- To: www-style list <www-style@w3.org>
- Cc: www-font@w3.org
The current draft of the CSS3 Fonts spec contains this description of fallback for small-caps variants: For backwards compatibility with CSS 2.1, if ‘small-caps’ or ‘all-small-caps’ is specified but small-caps glyphs are not available for a given font, user agents should simulate a small-caps font, for example by taking a normal font and replacing the lowercase letters by scaled uppercase characters (and also uppercase letters in the case of ‘all-small-caps’). This makes the fallback decision based on whether a font supports the small-caps feature or not. It doesn't guarantee that the coverage in the font precisely matches the set of glyphs which would be synthesized if the font lacks the feature altogether. In general, I don't think this is a problem but I do want to point it out. Since OpenType fonts support features on a per-script basis, I want to tweak this a bit to allow user agents to make the fallback decision on a per-script basis so that if a font supports small caps glyphs for Latin but not for Cyrillic, it can fallback selectively. There's also no mention of the exact details of which characters are considered lowercase or uppercase, so I think we should just piggyback on the definition used in text-transform. Proposed additional wording: In the case of OpenType fonts, for which features are defined per-script, user agents may make the fallback decision on a per-script basis. When small-caps glyphs are synthesized, the set of characters affected match the set of characters that would be affected by the casing values of the 'text-transform' property. Regards, John Daggett
Received on Wednesday, 9 May 2012 11:52:15 UTC