Skip to content

Commit 9e963d9

Browse files
committed
[css-fonts-4] Move font-tech & font-format to new section
1 parent ff3ca5a commit 9e963d9

File tree

1 file changed

+115
-99
lines changed

1 file changed

+115
-99
lines changed

css-fonts-4/Overview.bs

Lines changed: 115 additions & 99 deletions
Original file line numberDiff line numberDiff line change
@@ -2176,105 +2176,12 @@ for user agents which don't support a particular font technology.
21762176
</pre>
21772177
</div>
21782178

2179-
<h5 id="font-face-src-format-types">''@font-face'' format types</h5>
2180-
2181-
Format strings defined by this specification are as follows.
2182-
The <<font-format>> values are synonyms for the formats below.
2183-
2184-
<table class="data" id="fontformats">
2185-
<thead>
2186-
<tr>
2187-
<th>String
2188-
<th>Font Format
2189-
<th>Common extensions
2190-
<tbody>
2191-
<tr>
2192-
<th>"woff"
2193-
<td><a href="https://www.w3.org/TR/WOFF/">WOFF (Web Open Font Format)</a>
2194-
<td>.woff
2195-
<tr>
2196-
<th>"truetype"
2197-
<td><a href="https://www.microsoft.com/typography/otspec/default.htm">TrueType</a>
2198-
<td>.ttf
2199-
<tr>
2200-
<th>"opentype"
2201-
<td><a href="https://www.microsoft.com/typography/otspec/default.htm">OpenType</a>
2202-
<td>.ttf, .otf
2203-
<tr>
2204-
<th>"woff2"
2205-
<td><a href="https://www.w3.org/TR/WOFF2/">WOFF File Format 2.0 (Web Open Font Format)</a>
2206-
<td>.woff2
2207-
<tr>
2208-
<th>"embedded-opentype"
2209-
<td><a href="https://www.w3.org/Submission/2008/SUBM-EOT-20080305/">Embedded OpenType</a>
2210-
<td>.eot
2211-
<tr>
2212-
<th>"collection"</th>
2213-
<td><a href="https://docs.microsoft.com/en-us/typography/opentype/spec/otff#collections">OpenType Collection</a></td>
2214-
<td>.otc,.ttc</td>
2215-
</tr>
2216-
<tr>
2217-
<th>"svg"
2218-
<td><a href="https://www.w3.org/TR/SVG11/fonts.html">SVG Font</a> (deprecated)
2219-
<td>.svg, .svgz
2220-
</table>
2221-
2222-
Given the overlap in common usage between TrueType and OpenType,
2223-
the format hints "truetype" and "opentype"
2224-
must be considered as synonymous;
2225-
a format hint of "opentype" does not imply
2226-
that the font contains Postscript CFF style glyph data
2227-
or that it contains OpenType layout information
2228-
(see <a href="#platform-props-to-css">Appendix A</a> for more background on this).
2229-
2230-
<h5 id="font-face-src-requirement-types">''@font-face'' requirements</h5>
2231-
2232-
The 'features' requirement refers to support for font features,
2233-
commonly implemented in [[!OPENTYPE]] with the <code>GSUB</code> and the <code>GPOS</code> tables,
2234-
as well as in [[!AAT-FEATURES]] using the <code>morx</code> and <code>kerx</code> tables
2235-
and [[!GRAPHITE]] with the <code>Silf</code>, <code>Glat </code>, <code>Gloc </code>,
2236-
<code>Feat </code> and <code>Sill </code> tables.
2237-
The section on [[#font-rend-props]] describes properties that interact with these facilities.
2238-
2239-
The 'variations' requirement refers to the support of font variations,
2240-
commonly implemented in [[!OPENTYPE]] with the
2241-
<code>avar</code>, <code>cvar</code>, <code>fvar</code>, <code>gvar</code>, <code>HVAR</code>, <code>MVAR</code>, <code>STAT</code>, and <code>VVAR</code> tables,
2242-
as well as in [[!AAT-FEATURES]] using the <code>avar</code>, <code>cvar</code>, <code>fvar</code>, and <code>gvar</code> tables.
2243-
The section on [[#basic-font-props]] as well as the section on [[#font-variation-props]]
2244-
describe properties that interact with these facilities.
2245-
2246-
The 'color' requirement lists various types of color font file technologies.
2247-
Each of the arguments to the 'color' function represents a table
2248-
inside [[!OPENTYPE]] or [[!AAT-FEATURES]] fonts which must be supported
2249-
to satisfy this requirement.
2250-
2251-
The 'palettes' requirement refers to support for font palettes,
2252-
commonly implemented in the [[!OPENTYPE]] and [[!AAT-FEATURES]]
2253-
with the <code>CPAL</code> table.
2254-
The section on [[#color-font-support]] describes properties that interact with these facilities.
2255-
2256-
The 'incremental' requirement refers to client support for
2257-
incremental font loading,
2258-
using either the range-request or the patch-subset method [[PFE-report]].
2259-
2260-
Web authors can specify the 'format' function
2261-
to indicate that support is
2262-
required for correct rendering of a font.
2263-
This mechanism can be used for gracefully falling back
2264-
to an ancillary font
2265-
when variation support is not present.
2266-
2267-
<div class="example">
2268-
This ''@font-face'' block shows how to use a color font if support is present on the user agent,
2269-
and falls back to a non-color-font if support is not present.
2270-
<pre>
2271-
@font-face {
2272-
font-family: "Trickster";
2273-
src: url("trickster-COLRv1.otf") format(opentype supports color(COLRv1)),
2274-
url("trickster-outline.otf") format(opentype);
2275-
}
2276-
</pre>
2277-
</div>
2179+
<!-- font formats and font requirements
2180+
moved from a minor section inside src
2181+
to a new section
2182+
so they can be more easily shared
2183+
with css-conditional-4
2184+
-->
22782185

22792186
<h5 id="local-font-fallback">Local font fallback</h5>
22802187

@@ -6753,6 +6660,115 @@ System Font</h3>
67536660

67546661
The System Font is the font which is used by the ''system-ui'' <a href="#system-ui-def">generic font family name</a>. It is an example of a Preinstalled Font.
67556662

6663+
<h2 id="font-technologies-formats">
6664+
Font Technologies and Formats
6665+
</h2>
6666+
6667+
<h3 id="font-technology-definitions">Font technologies</h3>
6668+
6669+
The 'features-opentype', 'features-aat' and 'features-graphite' technologies
6670+
refer to support for font features,
6671+
commonly implemented in [[!OPENTYPE]] with the <code>GSUB</code> and the <code>GPOS</code> tables,
6672+
as well as in [[!AAT-FEATURES]] using the <code>morx</code> and <code>kerx</code> tables
6673+
and [[!GRAPHITE]] with the <code>Silf</code>, <code>Glat </code>, <code>Gloc </code>,
6674+
<code>Feat </code> and <code>Sill </code> tables.
6675+
The section on [[#font-rend-props]] describes properties that interact with these facilities.
6676+
6677+
The 'variations' technology refers to the support of font variations,
6678+
commonly implemented in [[!OPENTYPE]] with the
6679+
<code>avar</code>, <code>cvar</code>, <code>fvar</code>, <code>gvar</code>, <code>HVAR</code>, <code>MVAR</code>, <code>STAT</code>, and <code>VVAR</code> tables,
6680+
as well as in [[!AAT-FEATURES]] using the <code>avar</code>, <code>cvar</code>, <code>fvar</code>, and <code>gvar</code> tables.
6681+
The section on [[#basic-font-props]] as well as the section on [[#font-variation-props]]
6682+
describe properties that interact with these facilities.
6683+
6684+
The 'color-colrv0', 'color-colrv1', 'color-svg', 'color-sbix' and 'color-cbdt'
6685+
technologies refers to various types of color font file technologies.
6686+
Each one represents a table
6687+
(<code>COLR</code>, <code>SVG</code> <code>sbix</code> or <code>cbdt</code>)
6688+
inside [[!OPENTYPE]] or [[!AAT-FEATURES]] fonts which must be supported
6689+
to satisfy this requirement.
6690+
6691+
The 'palettes' technology refers to support for font palettes,
6692+
commonly implemented in the [[!OPENTYPE]] and [[!AAT-FEATURES]]
6693+
with the <code>CPAL</code> table.
6694+
The section on [[#color-font-support]] describes properties that interact with these facilities.
6695+
6696+
The 'incremental' requirement refers to client support for
6697+
incremental font loading,
6698+
using either the range-request or the patch-subset method [[PFE-report]].
6699+
6700+
Web authors can specify the 'technology' function
6701+
inside an ''@font-face'' 'src' descriptor
6702+
to indicate that support is
6703+
required for correct rendering of a font.
6704+
This mechanism can be used for gracefully falling back
6705+
to an ancillary font
6706+
when requested support is not present.
6707+
6708+
<div class="example">
6709+
This ''@font-face'' block shows how to use a color font if support is present on the user agent,
6710+
and falls back to a non-color-font if support is not present.
6711+
<pre>
6712+
@font-face {
6713+
font-family: "Trickster";
6714+
src: url("trickster-COLRv1.otf") format(opentype supports color(COLRv1)),
6715+
url("trickster-outline.otf") format(opentype);
6716+
}
6717+
</pre>
6718+
</div>
6719+
6720+
<h3 id="font-formatdefinitions">Font formats</h3>
6721+
6722+
Format strings defined by this specification are as follows.
6723+
The <<font-format>> values are synonyms for the formats below.
6724+
6725+
<table class="data" id="fontformats">
6726+
<thead>
6727+
<tr>
6728+
<th>String
6729+
<th>Font Format
6730+
<th>Common extensions
6731+
<tbody>
6732+
<tr>
6733+
<th>"collection"</th>
6734+
<td><a href="https://docs.microsoft.com/en-us/typography/opentype/spec/otff#collections">OpenType Collection</a></td>
6735+
<td>.otc,.ttc</td>
6736+
<tr>
6737+
<th>"embedded-opentype"
6738+
<td><a href="https://www.w3.org/Submission/2008/SUBM-EOT-20080305/">Embedded OpenType</a>
6739+
<td>.eot
6740+
<tr>
6741+
<th>"opentype"
6742+
<td><a href="https://www.microsoft.com/typography/otspec/default.htm">OpenType</a>
6743+
<td>.ttf, .otf
6744+
<tr>
6745+
<th>"svg"
6746+
<td><a href="https://www.w3.org/TR/SVG11/fonts.html">SVG Font</a> (deprecated)
6747+
<td>.svg, .svgz
6748+
<tr>
6749+
<th>"truetype"
6750+
<td><a href="https://www.microsoft.com/typography/otspec/default.htm">TrueType</a>
6751+
<td>.ttf
6752+
<tr>
6753+
<th>"woff"
6754+
<td><a href="https://www.w3.org/TR/WOFF/">WOFF 1.0 (Web Open Font Format)</a>
6755+
<td>.woff
6756+
<tr>
6757+
<th>"woff2"
6758+
<td><a href="https://www.w3.org/TR/WOFF2/">WOFF 2.0 (Web Open Font Format)</a>
6759+
<td>.woff2
6760+
</table>
6761+
6762+
Given the overlap in common usage between TrueType and OpenType,
6763+
the format hints "truetype" and "opentype"
6764+
must be considered as synonymous;
6765+
a format hint of "opentype" does not imply
6766+
that the font contains Postscript CFF style glyph data
6767+
or that it contains OpenType layout information
6768+
(see <a href="#platform-props-to-css">Appendix A</a> for more background on this).
6769+
6770+
6771+
67566772
<!--
67576773
███████ ████████ ██ ████████ ██████ ████████ ██ ██ ███████ ████████ ████████ ██
67586774
██ ██ ██ ██ ██ ██ ██ ██ ██ ███ ███ ██ ██ ██ ██ ██ ██

0 commit comments

Comments
 (0)