I'm using the Alegreya font family from Google Fonts in a website. It seems like Google strips out the small-caps font feature, so although Alegreya has small-caps (see below), they don't seem to work with Google Fonts. How can I get true small-caps in this scenario (font from Google Fonts)?
Alegreya has true small-caps (as OpenType feature) in it, and also has a sister small-caps-only family, Alegreya SC. I've downloaded the Regular font from both families (directly from Google Fonts) and compared Alegreya-with-small-caps with Alegreya SC. They are identical, e.g., Alegreya has the same small-caps as its sister. But when I try CSS below:
.variant-smcp {
font-family: Alegreya, serif; /* Alegreya from Google Fonts */
font-variant: small-caps; /* should use OpenType smcp feature */
}
I only get fake small-caps (e.g., capitals shrinked by the browser).
A workaround would be to import both Alegreya and Alegreya SC, using the latter without setting any font-variant
when needed. But this comes with a big problem for me: it doubles the number of requested fonts. And overall it seems a bit clumsy to import another font just for small-caps, if my font already has these baked in.
Edit: I've also tested using font-feature-settings: "smcp" on;
, with exactly same result: fake small-caps, from an smcp
-capable font (Alegreya). And I've tested all these things in Firefox 66 (for Windows and for Android), with exactly same result. (Thanks @Parapluie)