ubuwaits / beautiful-web-type

In-depth guide to the best open-source typefaces: https://beautifulwebtype.com
MIT License
7.25k stars 277 forks source link

Suggestion/Question: Small Caps? #31

Closed bakert closed 5 years ago

bakert commented 5 years ago

My understanding is that even "open source" typefaces that support (things like) small caps don't ship with small caps in the Google Fonts version.

Is any attempt made to make that kind of information available on the site? Would a font page show it if it was available "elsewhere" even if not in the version served by Google? That would be important information for me.

(LOVE the design and the site in general btw. I will Patreon you when a space opens up in my Patreon budget!)

bakert commented 5 years ago

I see small caps being shown on https://beautifulwebtype.com/playfair-display/ so now I'm wondering if that's because you've delved deeper or if it's because Google is serving it with them included. My understanding is that the version of EB Garamond served doesn't include the small caps (and it's certainly a lot smaller than a full version).

You could definitely satisfy my curiosity here but I guess you should close the ticket as you're already following my suggestion!

ubuwaits commented 5 years ago

Thanks for the great feedback. These are good questions and something I've been thinking about.

On the pages for the individual typefaces, I'm always showing features of the non-Google hosted version that's available from the download link on each page.

Google offers the small cap variant (where available) as a separate file, but they also often strip some or all of the OpenType features. Additionally, the version offered from Google is often not the most recent version of the typeface. (I've seen comments from various type designers expressing frustration about this.) For instance, there is a massive discrepancy between the version of Source Serif Pro offered on Google versus the version for download. (Google only has 3 weights and no italics; the full version has 6 weights with matching italics.)

Originally, I had planned on noting the differences between the Google-hosted version and the full version for each typeface, but the more I think about it, the more it seems like that time would be better spent working on other features for the site. In some cases I would have to go glyph-by-glyph, noting which were available. And that information would likely change as Google updated the version they served.

So basically, if you want to be guaranteed to be using the latest version of a typeface, with all the OpenType features and other goodies, you should be downloading the files directly from the type designer and serving them yourself. If you want to optimize for speed at the expense of some of the details of the typography, then the Google-hosted versions are probably the way to go.

bakert commented 5 years ago

I think you are probably right. I wonder if there's open-enough-to-use code that will tell you what features a font has if you give it the file? Would be pretty sweet to pass each font through that even if it could only find unicode code points or some other subset of everything people might care about. Not just to see on the font's page if it supports the thing you need ("I'm making a music site - font must have a ♭ ("flat") symbol but also so you could support an "advanced search" for that kind of thing. I suppose if you're keeping the list of typefaces to a small number that's not such a high priority but it would be interesting to me and also folks supporting non-latin alphabets and so on. Let me know if you think any of that makes sense and if you're open to PRs and I'll maybe have a dig around unless you know the answer off the top of your head.

ubuwaits commented 5 years ago

opentype.js (https://github.com/opentypejs/opentype.js) might be the closest thing I know of to what you describe. I discovered it from this great project: https://getflourish.github.io/anatomy-of-typefaces/

I've been contemplating using opentype.js to show a full list of glyphs, or even a search feature like you mention.