Typography is impossible (2016)
medium.engineering
medium.engineering
Excuse me?
It’s mainly used for added readings to words written using kanji.
https://en.wikipedia.org/wiki/Droid_fonts
https://fonts.google.com/specimen/Source+Code+Pro
and now
Well, Mac OS users lived with this serious rendering bug for more than a decade: https://www.lighterra.com/articles/macosxtextaabug/
I remember that look well, and even thought that was how text was supposed to look. I stopped using Mac OS before that bug was fixed, so I don't know what else may be going on over there. However, there was a period where a lot of websites looked terrible on non-Macs because Mac-using designers would set really light font weights, which apparently looked fine with Apple's font rendering. Were they right, while everyone else was wrong? I don't know.
Nowadays I run pretty-much-default Ubuntu linux with a 4k display, and I think fonts throughout my system and the web look great, both compared to my iPhone (which also looks great) and compared to my standard definition Windows setup at work (which looks anywhere from 'bad' to 'fine', depending on the program, font, scaling, etc).
Er, kinda kinda-not. A lot of this article discusses subpixel AA which has been disabled by default on high DPI displays since they were introduced, for all Macs for several years, and the setting hidden in UI and eventually fully removed.
Light on dark text still renders perceptually bolder regardless of measurement, and many dark mode guidelines rightly recommend using slightly lighter font variants in dark mode where that perception feels off. I made this choice with my site even where the system font is used for prose text, specifically because text in dark mode looked heavier for me. But there wasn’t a bug… this was consistent in Safari and rendering contexts that bypass macOS text rendering.
In contrast looking at text on my linux screen makes me consistently happy, retina or not. https://imgur.com/a/eXQ9YWR
For a long time linux was painful - but having bit the bullet and moved to wayland, I'm pretty thrilled at how nicely both standard res and hi-dpi screens look there.
I don't really mind windows either way - it's not the prettiest, but it remains fairly readable at most scales.
... wayland isn't supposed to change font rendering though ? It's just freetype + fontconfig + harfbuzz most of the time and AFAIK they don't operate differently under Wayland or X11 (or even if you build and use them on Win or Mac).
XWayland apps still have a few issues (or at least did, I've mostly moved over to native wayland everywhere now that chromium supports it)
Basically - it's not font related exactly, but it definitely impacts reading text.
This obviously doesn't work if there are non-ascii characters that (have to) use a different font and hence having different widths. Or if you prefer variable-width font, then a purely ascii document will break tab.
The developers reply on github that this (characters having different widths) is a frontend thing and they don't have enough API that can fix this. But of course since vscode is an open source project you can always fork it and fix it yourself.
I don't know any other editor that cannot handle tab.
Mark Dalgleish describes the technique in this video (around 9:45) https://m.youtube.com/watch?v=jnV1u67_yVg
It's made it a lot easier to reason about the layout of text compared to other elements on the page and achieve more consistent use of spacing.
Depending on how you're calculating the offset, this may also have problems with things like diacritics and non-Latin text, which may be taller (e.g Thai).
This isn't an inherent problem of the technique though. You should be giving things enough space so that this kind of thing doesn't happen. It should be pretty simple to check that the smallest unit of space used anywhere isn't smaller than the amount being trimmed from the top/bottom of the text box.
Here's an editable interface from that talk: https://seek-oss.github.io/braid-design-system/playroom/#?co...
You can see the issues when we write Hello World in Thai: https://i.imgur.com/MaHfPr3.png
It might be worth doing that, but note that there is still no guarantee of any reasonable upper bound on the vertical dimensions text will render within. Zalgo text is a famous example that very clearly illustrates this state of affairs [0]. The fact is that no current web design can guarantee that no text glyphs will overlap, short of using some non-standard font that prevents it, or perhaps by greatly restricting the usable Unicode characters.
I have given up "teaching typography".
Having said that, I believe that art (and design) requires intention and thus some amount of "reasoning".
So then, someone would post exactly your comment, but in reverse, "I have given up 'teaching typography'." Why? Because nobody cared about subpixel rendering, rotating screens, SVGs versus rasters, because everyone would be exploring kerning tables and spring space.
.capsizedText { font-size: 19.25px; line-height: 24px; }
.capsizedText::before { content: ""; margin-bottom: -0.2597em; display: table; }
.capsizedText::after { content: ""; margin-top: -0.2597em; display: table; }
For various reasons typography has become something everyone dabbles in, but few do well. It should not be a great surprise that something which is an art refuses to completely yield to science.
Personally I have never felt confident with it (for obvious reasons) and just hope to produce something acceptable.
As a design it's tempting to set up "a perfect grid" so your life will be easier and everything will look great. But it's often better to know how and why grids work, and then create more informal layouts intuitively.
My brother talks about setting whole pages by hand, and finding a word missing! Apparently it pays to leave a bit of extra space.
> Fearing it's use in shoddy printing and undesirable subject matter [Cobden-Sanderson] took the entire fund to Hammersmith Bridge and threw it in the Thames.
If after 100 years it is now for sale it feels a bit sad. I hope it is used well.
Whenever I start adjusting stuff by eye (or ask for it to be done), junior front-end devs freak out and accuse me of various sins such as "cheating" or "guessing".
I wish we could all save each other the time, by agreeing to use a single font in a dozen iterations (e.g. "Universal Serif" vs "Universal Sans" vs. "Universal Fixed Width", like Noto or whatever)
It should be a social imposition to use a different font.
Like: yes, you can do it and people do, but keep in mind you're exercising your right to be creative at the expense of everybody's comfort/convenience, in the same way as a busker on the subway.
If you're very good at what you're doing then you might be brightening everybody's day. But if you're even average at it, you're only annoying people and they will tolerate that annoyance out of social obligation, not because they like it.
That would save everybody the hours, days, and sometimes weeks of picking a font, a keming, a line-spacing, etc, not to mention the annoyance of having to read awkward fonts.
> But if you're even average at it, you're only annoying people and they will tolerate that annoyance out of social obligation, not because they like it.
I think this part is already implicitly understood, but everyone thinks that they're above average or that their app is special enough that it really needs a custom font.
The fact that licensing fees are even an obstacle here for adoption of a font designed over half a century ago highlights how broken the current intellectual property laws are. At some point of near-universal adoption, a functioning society should just release such a thing into the public domain and provide the original author a pension for his troubles, instead of worrying about rent-seeker from every amateur designer.
At the other end of the spectrum, we could continue to employ the same typography and UI primitives reusably and forever, getting rid of or repurposing design efforts and design people.
Both choices have trade offs.
The market selected our current methodology and practices, and not for a lack of alternatives, for better or worse.
Design is thought to distinguish your brand and elevate your experiences. Maybe not everything truly needs this, but I don't see enough compelling evidence showing how to compete without it. The market says design is important.
A font adds so much character to the text. Where one font may be appropriate, a different text would look stilted or silly. Fiction, fantasy, technical, non-technical non-fiction, etc. books all require different fonts, in my opinion, to capture the character of the words.
Noto is a fine font, but I don't want to use it for my blog. There are a bajillion fonts that are perfectly legible and for those of us who care, they make a difference.
What would help would be a little education and maybe some UX nudges: stop making Arial the default on stuff, (looking at you, Google Docs) encourage well-built fonts by making them the only default enabled options in your OS, etc. I don't think there is "one font to rule them all", however.
I think 99% of the population could agree on a "good enough" font, if reading comprehension is the goal. In fact, I think 99% of the population just reads the words. Our brains necessarily learn to ignore the fonts. Our brains necessarily learn to ignore even the characters themselves [1].
> There are a bajillion fonts that are perfectly legible and for those of us who care, they make a difference.
I think this demonstrates that the goal is not reading comprehension, which makes agreeing on some "good enough" difficult/impossible.
1: https://www.livescience.com/18392-reading-jumbled-words.html
The only sites with more daring typography seem to be artist portfolios or band websites. If there were still a culture of handmade amateur websites I guess we'd have more outsider art variety. But I don't really see it.
Thanks for the LOL moment. I had to look closely to see if you had typed kerning or keming
Or until it is switched to a different writing mode, which I would have loved this article to address since a lot of work is happening in the internationalization of layout design to acomódate that the left to right top to bottom is not the default for everyone across the globe