A comprehensive CSS font-feature-settings demo for OpenType features.
"The Complete CSS Demo for OpenType Features," serves as a comprehensive demonstration of OpenType features accessed via the CSS font-feature-settings property.
The functionalities listed are the diverse typographic controls available within supporting fonts.
These features involve substituting one character form for another, often based on context or user preference:
Ligatures (liga, dlig, rlig): Replaces a sequence of glyphs with a single ligature glyph, which is generally preferred for typographic purposes. Required ligatures (rlig) are necessary for correct text display.
Access All Alternates (aalt): Presents the user with a choice of all available alternate forms of a character.
Stylistic Alternates (salt): Replaces default character glyphs with stylistic variants.
Swashes (swsh, cswh): Replaces default glyphs with corresponding swash glyphs. Contextual Swash (cswh) performs this replacement based on surrounding characters.
Contextual Alternates (calt): Substitutes default glyphs with alternate forms to provide better joining behavior and harmonize shapes with the surrounding context.
Historical Forms (hist, hlig): Applies obsolete forms of characters or obsolete ligatures at the user's discretion.
Localised Forms (locl): Enables localized variant forms of specific letters used by individual literary communities, such as those in the Bulgarian and Serbian alphabets.
Randomize (rand): Replaces characters with cyclical forms intended to simulate handwriting.
Titling Alternates (titl): Replaces characters with forms suited for large type, such as titles.
Ornaments (ornm): Provides user access to ornament glyphs like fleurons, dingbats, and border elements.
Stylistic Sets (ss01–ss20): Replaces sets of default character glyphs with specific, harmonizing stylistic variants.
These features control the appearance of letters, particularly relating to capital forms:
Small and Petite Caps (smcp, c2sc, pcap, c2pc): Features to convert lowercase characters (smcp) or uppercase characters (c2sc) into small capitals. Similar features convert letters to petite caps (pcap, c2pc).
Unicase (unic): Replaces both lowercase and uppercase letters with a set of single case glyphs.
Capital Spacing (cpsp): Adjusts spacing between letters specifically in all-capitals text.
Case Sensitive Forms (case): Replaces characters, especially punctuation, with forms better suited for all-capital text.
Ordinals (ordn): Replaces figures with superior forms used for ordinals (e.g., 1st, 2nd).
These features control the style, width, and positioning of figures and mathematical symbols:
Figure Style: Converts numerals to Lining Figures (lnum) or Oldstyle Figures (onum).
Figure Width: Switches between Proportional Figures (pnum) (glyph-specific widths) and Tabular Figures (tnum) (uniform widths).
Fractions (frac, afrc, numr, dnom): Replaces figures separated by a slash with common diagonal fractions (frac) or alternative stacked fraction forms (afrc). Dedicated features exist for Denominator (dnom) and Numerator (numr) forms.
Positional Figures: Includes Subscript (subs), Superscript (sups), and Scientific Inferiors (sinf).
Slashed Zero (zero): Replaces the standard '0' figure with a slashed zero.
Mathematical Greek (mgrk): Replaces Greek characters with special forms for use in mathematics.
These features manage the spacing and interaction between glyphs:
Kerning (kern): Adjusts the amount of space between glyphs to provide optically consistent spacing.
Mark Positioning (mark, mkmk): Fine positioning of a mark glyph relative to a base character (mark) or relative to another mark character (mkmk).
Glyph Composition/Decomposition (ccmp): Permits combining two characters into a single glyph or decomposing a character into two glyphs for better processing.
Optical Size (size): Provides information about the appearance and intent of the font to aid in font selection (Note: Demo not available on the web).
Required Variation Alternates (rvrn): Special variants required by variable fonts.
The tool supports complex script formatting, including:
East Asian (Chinese, Japanese, Korean): Supports forms like Simplified (smpl) and Traditional (trad), various JIS standard forms (jp78–jp04), and numerous features controlling character width, such as Full Widths (fwid), Half Widths (hwid), Third Widths (twid), and Quarter Widths (qwid). It also includes features for Proportional Kana (pkna) and Ruby Notation Forms (ruby).
West Asian (Semitic, Arabic): Supports contextual forms required by Arabic and Syriac, including Initial Forms (init), Medial Forms (medi), and Final Forms (fina).
South-Asian alphasyllabaries (Indic/Brahmic): Listed as "Coming soon".