- From: John Daggett via cvs-syncmail <cvsmail@w3.org>
- Date: Tue, 04 Oct 2011 09:44:01 +0000
- To: public-css-commits@w3.org
Update of /sources/public/csswg/css3-fonts In directory hutz:/tmp/cvs-serv14401 Modified Files: Fonts.html Log Message: tweaking wording of @font-feature-values rule Index: Fonts.html =================================================================== RCS file: /sources/public/csswg/css3-fonts/Fonts.html,v retrieving revision 1.65 retrieving revision 1.66 diff -u -d -r1.65 -r1.66 --- Fonts.html 29 Sep 2011 02:27:24 -0000 1.65 +++ Fonts.html 4 Oct 2011 09:43:59 -0000 1.66 @@ -111,14 +111,14 @@ <h1>CSS Fonts Module Level 3</h1> - <h2 class="no-num no-toc" id=editors>Editor's Draft 29 September 2011</h2> + <h2 class="no-num no-toc" id=editors>Editor's Draft 4 October 2011</h2> <dl id=authors> <dt>This version: <dd><a href="http://dev.w3.org/csswg/css3-fonts/">http://dev.w3.org/csswg/css3-fonts/</a> - <!-- <dd><a href="http://www.w3.org/TR/2011/ED-css3-fonts-20110929/">http://www.w3.org/TR/2011/ED-css3-fonts-20110929/</a> --> + <!-- <dd><a href="http://www.w3.org/TR/2011/ED-css3-fonts-20111004/">http://www.w3.org/TR/2011/ED-css3-fonts-20111004/</a> --> <dt>Latest version: @@ -3077,7 +3077,7 @@ <p>Like other font properties, font feature properties apply independent of the font specified. In some cases, font feature settings are -font-specific, such as when specifying swash characters or stylistic +font specific, such as when specifying swash characters or stylistic alternates. In these situations, the ‘<code class=property>font-variant</code>’ descriptor of the @font-face rule described below can be used to specify font features that only apply to a given font and not to other fonts when fallback @@ -3967,8 +3967,8 @@ <pre> @font-feature-values <font-family> [, <font-family>]* { - <font-variant-value-definition>; - <font-variant-value-definition>; + <font-feature-values-declaration>; + <font-feature-values-declaration>; . . } @@ -3977,22 +3977,22 @@ <p>where: <pre - class=prod><dfn id=ltfont-variant-value-definitiongt><var><font-variant-value-definition></var></dfn> = @<font-variant-value> <feature-value-list> [, <feature-value-list>]*</pre> + class=prod><dfn id=ltfont-feature-values-declarationgt><var><font-feature-values-declaration></var></dfn> = @<font-variant-property-value> <feature-value-list> [, <feature-value-list>]*</pre> <pre - class=prod><dfn id=ltfont-familygt><var><font-family></var></dfn> = font family name, quoted or unquoted, using the same quoting rules that apply within style rules</pre> + class=prod><dfn id=ltfont-familygt><var><font-family></var></dfn> = font family name, same syntax as font-family property</pre> <pre - class=prod><dfn id=ltfont-variant-valuegt><var><font-variant-value></var></dfn> = the name of one of the font-specific font-variant values (e.g. swash, styleset, annotation)</pre> + class=prod><dfn id=ltfont-variant-property-valuegt><var><font-variant-property-value></var></dfn> = the name of one of the font specific font-variant property values (e.g. swash, styleset, annotation)</pre> <pre - class=prod><dfn id=ltfeature-value-listgt><var><feature-value-list></var></dfn> = <feature-value-name> <feature-index>+</pre> + class=prod><dfn id=ltfeature-value-listgt><var><feature-value-list></var></dfn> = <feature-value-name> <feature-index>+</pre> <pre - class=prod><dfn id=ltfeature-value-namegt><var><feature-value-name></var></dfn> = a user-defined identifier used to describe the index</pre> + class=prod><dfn id=ltfeature-value-namegt><var><feature-value-name></var></dfn> = a user-defined identifier used to describe the index</pre> <pre - class=prod><dfn id=ltfeature-indexgt><var><feature-index></var></dfn> = an integer value greater than 0 specific to a given font or set of fonts</pre> + class=prod><dfn id=ltfeature-indexgt><var><feature-index></var></dfn> = an integer value greater than 0 specific to a given font or set of fonts</pre> <p>These @font-feature-values rules can appear anywhere within a stylesheet and are exposed bidirectionally across @import boundaries. If multiple @@ -4023,20 +4023,21 @@ font-variant-alternates: styleset(stacked-g, geometric-m); }</pre> - <p>Only named font families are allowed for <font-family>, rules - defined for generic and system fonts must be ignored. However, if a user - agent defines a generic font to be a specific named font (e.g. Helvetica), - the settings associated with that family name will be used. + <p>Only named font families are allowed for <font-family>, rules that + include generic or system fonts in the list of font families are + considered syntax errors and ignored. However, if a user agent defines a + generic font to be a specific named font (e.g. Helvetica), the settings + associated with that family name will be used. - <p>For font-variant-value, only font-specific value names supported by the - ‘<code class=property><a + <p>For <font-variant-property-value>, only font specific property value + names supported by the ‘<code class=property><a href="#propdef-font-variant">font-variant</a></code>’ property are - recognized, definitions for other value names are a syntax error and - ignored. Each value that is font specific is clearly marked as such. - Feature value names follow the rules of CSS identifiers and are unique - only for a given set of font families and font variant value; the same - identifier used with a different font variant value is treated as a - distinct value. + recognized, definitions for other value names cause a syntax error and are + ignored. Each property value that is font specific is clearly marked as + such. Feature value names follow the rules of CSS identifiers and are case + insensitive. They are unique only for a given set of font families and + font-variant property value; the same identifier used with a different + font-variant property value is treated as a separate and distinct value. <p>Using a commonly named value allows authors to use a single style rule to cover a set of fonts for which the underlying selector is different for @@ -4057,18 +4058,23 @@ font-variant: annotation(circled); }</pre> - <p>Most font-specific font-variant values take a single value (e.g. swash). - If multiple values are assigned to a given name a syntax error occurs and - the entire <font-variant-value-definition> is ignored. For the - styleset value, multiple values can be assigned to a given name. Multiple - values indicate the style sets to be enabled. Values between 1 and 20 - enable OpenType features ‘<code class=css>ss01</code>’ through - ‘<code class=css>ss20</code>’. Values greater than 20 are ignored. + <p>Most font specific font-variant property values take a single value + (e.g. swash). The character-variant property value allows two values and + styleset allows an unlimited number. If a larger number of values are + assigned to a given name, a syntax error occurs and the entire + <font-feature-values-declaration> is ignored. + + <p>For the styleset property value, multiple values indicate the style sets + to be enabled. Values between 1 and 20 enable OpenType features ‘<code + class=css>ss01</code>’ through ‘<code class=css>ss20</code>’. For + OpenType fonts, values greater than 20 are ignored. <pre>@font-feature-values Mars Serif { @styleset alt-g 1, /* implies ss01 = 1 */ curly-quotes 3, /* implies ss03 = 1 */ code 4 5; /* implies ss04 = 1, ss05 = 1 */ + @styleset dumb 25; /* >20, ignored */ + @swash swishy 3 5; /* more than 1 value for swash, syntax error */ } p.codeblock { @@ -4078,23 +4084,36 @@ <p>For character-variant, a single value between 1 and 99 indicates the enabling of OpenType feature ‘<code class=css>cv01</code>’ through - ‘<code class=css>cv99</code>’. Values greater than 99 are ignored. - When two values are listed, the first value indicates the feature used and - the second the value passed for that feature. Values beyond the first two - are ignored. + ‘<code class=css>cv99</code>’. For OpenType fonts, values greater than + 99 are ignored. When two values are listed, the first value indicates the + feature used and the second the value passed for that feature. When two + value names imply different settings for the same underlying feature the + last setting is used. <pre>@font-feature-values MM Greek { - @character-variant alpha-2 1 2; /* implies cv01 = 2 */ - @character-variant beta-3 2 3; /* implies cv02 = 3 */ - @character-variant gamma 12; /* implies cv12 = 1 */ - @character-variant zeta 20 3 2; /* implies cv20 = 3, '2' is ignored */ - @character-variant silly 105; /* >99, ignored */ - @character-variant dumb 323 3; /* >99, ignored */ + @character-variant alpha-2 1 2; /* implies cv01 = 2 */ + @character-variant beta-3 2 3; /* implies cv02 = 3 */ + @character-variant epsilon 5 3 6; /* more than 2 values, syntax error, ignored */ + @character-variant gamma 12; /* implies cv12 = 1 */ + @character-variant zeta 20 3; /* implies cv20 = 3 */ + @character-variant zeta-2 20 2; /* implies cv20 = 2 */ + @character-variant silly 105; /* >99, ignored */ + @character-variant dumb 323 3; /* >99, ignored */ } #title { /* use the third alternate beta, first alternate gamma */ font-variant-alternates: character-variant(beta-3, gamma); +} + +p { + /* zeta-2 follows zeta, implies cv20 = 2 */ + font-variant-alternates: character-variant(zeta, zeta-2); +} + +.special { + /* zeta follows zeta-2, implies cv20 = 3 */ + font-variant-alternates: character-variant(zeta-2, zeta); }</pre> <p>See <a href="#font-feature-values-DOM">Appendix C</a> for a description @@ -4541,7 +4560,7 @@ <h2 id=rendering-considerations><span class=secno>7 </span>Resolving font feature settings</h2> - <p>General and font-specific font feature property settings are resolved in + <p>General and font specific font feature property settings are resolved in the order below, in low to high precedence. This ordering is used to construct a combined list of font features that affect a given text run. These features are applied on top of layout engine defaults. @@ -5264,6 +5283,10 @@ href="#propdef-font-feature-settings" title=font-feature-settings><strong>6.12</strong></a> + <li><var><font-feature-values-declaration></var>, <a + href="#ltfont-feature-values-declarationgt" + title="<font-feature-values-declaration>"><strong>6.9</strong></a> + <li>font-kerning, <a href="#propdef-font-kerning" title=font-kerning><strong>6.3</strong></a> @@ -5314,13 +5337,9 @@ <li>font-variant-position, <a href="#propdef-font-variant-position" title=font-variant-position><strong>6.4</strong></a> - <li><var><font-variant-value></var>, <a - href="#ltfont-variant-valuegt" - title="<font-variant-value>"><strong>6.9</strong></a> - - <li><var><font-variant-value-definition></var>, <a - href="#ltfont-variant-value-definitiongt" - title="<font-variant-value-definition>"><strong>6.9</strong></a> + <li><var><font-variant-property-value></var>, <a + href="#ltfont-variant-property-valuegt" + title="<font-variant-property-value>"><strong>6.9</strong></a> <li>font-weight, <a href="#descdef-font-weight" title=font-weight><strong>4.4</strong></a>, <a
Received on Tuesday, 4 October 2011 09:44:04 UTC