Font family
A **font family** is composed of *font files, that share a single design, and differ ONLY in*:
Bold, Black…
Narrow, Condensed, Expanded…
Italic, Oblique
https://developer.microsoft.com/en-us/microsoft-edge/testdrive/demos/variable-fonts/#font-optical-sizing[Optical sizing]
Those parameters correspond to the https://docs.microsoft.com/en-us/typography/opentype/spec/dvaraxisreg#registered-axis-tags[default axes] of OpenType variable fonts. The variable fonts model is an extension of the **WWS** model described in the https://msdnshared.blob.core.windows.net/media/MSDNBlogsFS/prod.evol.blogs.msdn.com/CommunityServer.Components.PostAttachments/00/02/24/90/36/WPF%20Font%20Selection%20Model.pdf[WPF Font Selection Model] whitepaper (2007).
[x] Packagers MUST apply the definition provided in this section to determine font family boundaries,
it takes precedence over application support concerns, over upstream and packager habits and practices.
See also the <<Fontconfig>> section.
Font file formats
OpenType: one standard, five formats
https://en.wikipedia.org/wiki/OpenType[OpenType] uses an _SFNT_ container around bitmaps (`+*.otb+`) and outlines in _TT_ (`+*.ttf+`) or _CFF_ (`+*.otf+`) formats. Multiple fonts can be consolidated in a single collection (`+*.ttc+` or `+*.otc+`).
[x] Other font formats MUST be converted to OpenType,
except for fonts, intended to be used in the console (NOT a terminal emulator): see <<Bitmap console fonts>>.
[x] Font packages MUST NOT contain font files in non OpenType formats.