Skip to content

Commit c13ba71

Browse files
committed
[css-fonts-3] finish removing CSSFontFeatureValuesRule interface
1 parent 20ce0ef commit c13ba71

3 files changed

Lines changed: 68 additions & 188 deletions

File tree

css-fonts-3/Fonts.html

Lines changed: 33 additions & 93 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
rel=dcterms.rights>
1414
<meta content="CSS Fonts Module Level 3" name=dcterms.title>
1515
<meta content=text name=dcterms.type>
16-
<meta content=2018-03-05 name=dcterms.date>
16+
<meta content=2018-03-06 name=dcterms.date>
1717
<meta content="John Daggett" name=dcterms.creator>
1818
<meta content="Myles C. Maxfield" name=dcterms.creator>
1919
<meta content="Chris Lilley" name=dcterms.creator>
@@ -125,14 +125,14 @@
125125

126126
<h1>CSS Fonts Module Level 3</h1>
127127

128-
<h2 class="no-num no-toc">Editor's Draft 5 March 2018</h2>
128+
<h2 class="no-num no-toc">Editor's Draft 6 March 2018</h2>
129129

130130
<dl id=authors>
131131
<dt>This version:
132132

133133
<dd><a
134134
href="https://drafts.csswg.org/css-fonts/">https://drafts.csswg.org/css-fonts/</a>
135-
<!-- <dd><a href="https://www.w3.org/TR/2018/ED-css-fonts-3-20180305/">https://www.w3.org/TR/2018/ED-css-fonts-3-20180305/</a> -->
135+
<!-- <dd><a href="https://www.w3.org/TR/2018/ED-css-fonts-3-20180306/">https://www.w3.org/TR/2018/ED-css-fonts-3-20180306/</a> -->
136136

137137
<dt>Latest version:
138138

@@ -462,9 +462,6 @@ <h2 class="no-num no-toc" id=contents>Table of contents</h2>
462462
<ul class=toc>
463463
<li><a href="#om-fontface"><span class=secno>8.1. </span>The
464464
<code>CSSFontFaceRule</code> interface</a>
465-
466-
<li><a href="#om-fontfeaturevalues"><span class=secno>8.2. </span>The
467-
<code>CSSFontFeatureValuesRule</code> interface</a>
468465
</ul>
469466

470467
<li class=no-num><a href="#platform-props-to-css">Appendix A: Mapping
@@ -3676,7 +3673,10 @@ <h3 id=glyph-selection-positioning><span class=secno>6.1. </span>Glyph
36763673
be stylistic features meant to be used under author control. The point at
36773674
which font selection and positioning happens in the overall order of text
36783675
processing operations (such as text transformation, text orientation and
3679-
text alignment) is described in [[css-text-3#order]].
3676+
text alignment) is described in <a href="#ref-CSS-TEXT-3"
3677+
rel=biblioentry>[CSS-TEXT-3]<!--{{CSS-TEXT-3}}--></a>, <a
3678+
href="https://drafts.csswg.org/css-text-3/#order">§ Text Processing Order
3679+
of Operations</a>.
36803680

36813681
<p>For a good visual overview of these features, see the <a
36823682
href="#ref-OPENTYPE-FONT-GUIDE"
@@ -5886,10 +5886,7 @@ <h3 id=feature-precedence-examples><span class=secno>7.3. </span>Feature
58865886
<h2 id=object-model><span class=secno>8. </span>Object Model</h2>
58875887

58885888
<p>The contents of <a href="#at-font-face-rule"><code>@font-face</code></a>
5889-
and <a
5890-
href="#at-font-feature-values-rule"><code>@font-feature-values</code></a>
5891-
rules can be accessed via the following extensions to the CSS Object
5892-
Model.
5889+
rules can be accessed via the following extension to the CSS Object Model.
58935890

58945891
<h3 id=om-fontface><span class=secno>8.1. </span>The <a
58955892
href="#cssfontfacerule"><code>CSSFontFaceRule</code></a> interface</h3>
@@ -5902,83 +5899,6 @@ <h3 id=om-fontface><span class=secno>8.1. </span>The <a
59025899
readonly attribute CSSStyleDeclaration style;
59035900
}</pre>
59045901

5905-
<h3 id=om-fontfeaturevalues><span class=secno>8.2. </span>The <a
5906-
href="#cssfontfeaturevaluesrule"><code>CSSFontFeatureValuesRule</code></a>
5907-
interface</h3>
5908-
5909-
<p>The <code>CSSRule</code> interface is extended as follows:
5910-
5911-
<pre class=idl>partial interface CSSRule {
5912-
const unsigned short FONT_FEATURE_VALUES_RULE = 14;
5913-
}</pre>
5914-
5915-
<p>The <dfn id=cssfontfeaturevaluesrule>CSSFontFeatureValuesRule</dfn>
5916-
interface represents a <a
5917-
href="#at-font-feature-values-rule"><code>@font-feature-values</code></a>
5918-
rule.
5919-
5920-
<pre class=idl>interface CSSFontFeatureValuesRule : CSSRule {
5921-
attribute CSSOMString fontFamily;
5922-
readonly attribute CSSFontFeatureValuesMap annotation;
5923-
readonly attribute CSSFontFeatureValuesMap ornaments;
5924-
readonly attribute CSSFontFeatureValuesMap stylistic;
5925-
readonly attribute CSSFontFeatureValuesMap swash;
5926-
readonly attribute CSSFontFeatureValuesMap characterVariant;
5927-
readonly attribute CSSFontFeatureValuesMap styleset;
5928-
}
5929-
5930-
[MapClass(CSSOMString, sequence&lt;unsigned long&gt;)]
5931-
interface CSSFontFeatureValuesMap {
5932-
void set(CSSOMString featureValueName,
5933-
(unsigned long or sequence&lt;unsigned long&gt;) values);
5934-
}</pre>
5935-
5936-
<dl class=idl-attributes>
5937-
<dt><var>fontFamily</var> of type <code>CSSOMString</code>
5938-
5939-
<dd>The list of one or more font families for which a given set of feature
5940-
values is defined.
5941-
5942-
<dt>value maps of type <code>CSSFontFeatureValuesMap</code>, readonly
5943-
5944-
<dd>Maps of feature values associated with feature value names for a given
5945-
<a href="#propdef-font-variant-alternates"><code
5946-
class=property>font-variant-alternates</code></a>’ value type
5947-
</dl>
5948-
5949-
<p>Each value map attribute of <a
5950-
href="#cssfontfeaturevaluesrule"><code>CSSFontFeatureValuesRule</code></a>
5951-
reflects the values defined via a corresponding <a
5952-
href="#feature_value_block"><i title="feature_value_block">feature value
5953-
block</i></a>. Thus, the <var
5954-
title="annotation attribute">annotation</var> attribute contains the
5955-
values contained within a <code title="@annotation">@annotation</code> <a
5956-
href="#feature_value_block"><i title="feature_value_block">feature value
5957-
block</i></a>, the <var title="ornaments attribute">ornaments</var>
5958-
attribute contains the values contained with a <code
5959-
title="@ornaments">@ornaments</code> <a href="#feature_value_block"><i
5960-
title="feature_value_block">feature value block</i></a> and so forth.
5961-
5962-
<p>The <code>CSSFontFeatureValuesMap</code> interface uses the <a
5963-
href="https://dev.w3.org/2006/webapi/WebIDL/#es-map-members">default map
5964-
class methods</a> but the <code>set</code> method has different behavior.
5965-
It takes a sequence of unsigned integers and associates it with a given
5966-
<code>featureValueName</code>. The method behaves the same as the default
5967-
map class method except that a single unsigned long value is treated as a
5968-
sequence of a single value. The method throws an exception if an invalid
5969-
number of values is passed in. If the associated <a
5970-
href="#feature_value_block"><i title="feature_value_block">feature value
5971-
block</i></a> only allows a limited number of values, the <code>set</code>
5972-
method throws an <code>InvalidAccessError</code> exception when the input
5973-
sequence to <code>set</code> contains more than the limited number of
5974-
values. See the description of <a
5975-
href="#multi-valued-feature-value-definitions">multi-valued feature value
5976-
definitions</a> for details on the maximum number of values allowed for a
5977-
given type of <a href="#feature_value_block"><i
5978-
title="feature_value_block">feature value block</i></a>. The
5979-
<code>get</code> method always returns a sequence of values, even if the
5980-
sequence only contains a single value.
5981-
59825902
<h2 class=no-num id=platform-props-to-css>Appendix A: Mapping platform font
59835903
properties to CSS properties</h2>
59845904

@@ -6065,15 +5985,37 @@ <h3 class=no-num id=recent-changes> Changes from the <a
60655985
<li><code class=property>font-language-override</code>’ property
60665986
moved to Fonts 4
60675987

6068-
<li>add omitted ‘<a href="#propdef-font-variant-position"><code
5988+
<li>CSSFontFeatureValuesRule interface moved to Fonts 4
5989+
5990+
<li>CSSFontFaceRule interface reverted to the widely implemented one from
5991+
DOM Level 2 style
5992+
5993+
<li>clarified how small-caps synthesis interacts with ‘<code
5994+
class=property>font-feature-settings</code>
5995+
5996+
<li>all CSS keywords marked as invalid font family names
5997+
5998+
<li>clarified that ‘<a href="#propdef-font-synthesis"><code
5999+
class=property>font-synthesis</code></a>’ is not reset by the ‘<a
6000+
href="#propdef-font"><code class=property>font</code></a>’ shorthand.
6001+
6002+
<li>use the phrase "installed fonts" rather than "system fonts"
6003+
6004+
<li>clarified that malformed @font-face rules which lack font-family: or
6005+
src: still show up in the DOM, but don't affect font selection
6006+
6007+
<li>clarified conventional ratio range for the relative sizes when they're
6008+
not modifying an absolute keyword size
6009+
6010+
<li>added omitted ‘<a href="#propdef-font-variant-position"><code
60696011
class=property>font-variant-position</code></a>’ values to <a
60706012
href="#propdef-font-variant" title="font-variant!!property"><code
60716013
class=property>font-variant</code></a> shorthand
60726014

60736015
<li>made negative values for font-size-adjust invalid, along with negative
60746016
percentage font-size values
60756017

6076-
<li>remove the requirement that user agents use OS/2 table
6018+
<li>removed the requirement that user agents use OS/2 table
60776019
subscript/superscript metrics
60786020

60796021
<li>minor editorial cleanups
@@ -6366,6 +6308,7 @@ <h3 class=no-num id=normative-references>Normative References</h3>
63666308
</dd>
63676309
<!---->
63686310

6311+
63696312
<dt id="ref-rfc8081">[RFC8081]
63706313
</dt><dd>C. Lilley. <a href="https://tools.ietf.org/html/rfc8081">The "font" Top-Level Media Type</a>. February 2017. Proposed Standard. URL: <a href="https://tools.ietf.org/html/rfc8081">https://tools.ietf.org/html/rfc8081</a>
63716314
</dd>
@@ -6605,9 +6548,6 @@ <h2 class=no-num id=index>Index</h2>
66056548
<li>CSSFontFaceRule, <a href="#cssfontfacerule"
66066549
title="section 8.1."><strong>8.1.</strong></a>
66076550

6608-
<li>CSSFontFeatureValuesRule, <a href="#cssfontfeaturevaluesrule"
6609-
title="section 8.2."><strong>8.2.</strong></a>
6610-
66116551
<li>cursive, definition of, <a href="#cursive0"
66126552
title="section ??"><strong>??</strong></a>
66136553

css-fonts-3/Fonts.src.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4384,8 +4384,8 @@ <h3 id="feature-precedence-examples">Feature precedence examples</h3>
43844384

43854385
<h2 id="object-model">Object Model</h2>
43864386

4387-
<p>The contents of <code>@font-face</code> and <code>@font-feature-values</code> rules can be accessed via
4388-
the following extensions to the CSS Object Model.</p>
4387+
<p>The contents of <code>@font-face</code> rules can be accessed via
4388+
the following extension to the CSS Object Model.</p>
43894389

43904390
<h3 id="om-fontface">The <code>CSSFontFaceRule</code> interface</h3>
43914391

0 commit comments

Comments
 (0)