case — Case-Sensitive Forms
case (Case-Sensitive Forms) shifts punctuation and switches oldstyle figures to lining figures, so they work better with an all-capital run of text or with lining figures.
Dashes, brackets, guillemets and similar punctuation sit at a default position tuned for lowercase text, which reads too low next to a run of capitals. case raises them to a height that matches the optical center of the capitals. At the same time, oldstyle figures switch to lining figures.
This “oldstyle to lining figures” effect is the same one lnum (Lining Figures) produces. The specification also states that case overrides the results of other figure-related features such as onum and tnum.
Example
Section titled “Example”Without case
(A-B)
With case
(A-B)
.fea source
Compiling…
Writing it in a feature file
Section titled “Writing it in a feature file”The rules are written with Lookup Type 1.
Without rules
(A-B)
With rules(A-B)
Compiling…