RSSAmplifier

Blog

Font and Text Technology

Simon Cozens technical blog

simoncozens.github.ioRSS feed ↗10 posts

Latest posts

The State of AI Font Generation

Two disclaimers: First, this article was entirely human generated; no AI was involved in the writing. Second, I have spent a lot of time this year attempting to train a glyph generation model. I want to be up front about this because I know that for certain people, this will discredit me entirely, and I don’t want you to find out afterwards and feel betrayed. But then, would you rather read an…

Building VARC Fonts

The VARC table provides a way for fonts to define composite glyphs made up of other glyphs, where each component glyph can have its own private variation axes. This is sometimes known as “variable components” or “smart components”. However…

Measuring optical sizes

For the last year or so, Yanone has been working on a very interesting tool called Fontquant. The aim of the tool has been to help to quantify the technical quality of the font. It can tell you whether superior and inferior numerals are present; it can tell you which glyphs have small-caps. It determines information about the font’s appearance: it works out that Open Sans has a double-story g,…

Android Text Clipping

Recently I had to understand how Android interprets a font’s vertical metrics, and when there will be or will not be clipping in a text box. And the answer is: “it depends”.

Avoiding GSUB Overflows

Here’s some techniques adapted from an email I sent recently - a project with complicated contextual substitution rules was having problems with GSUB tables overflowing and refusing to compile. Follow me for a deep dive into contextual chaining rules, binary layout, and why compilers are stupid so we have to be clever…

FontOps: Font Development At Scale

Two years ago, I took over the development of (and later, the technical programme management) of the Noto project, a library of nearly 250 font families spanning over 150 writing systems. Noto provides “fallback” fonts for language support on Android, iOS, MacOS and Linux - billions of devices across the planet, and for many writing systems, Noto’s fonts are the only fonts available. How on earth…

Advanced Glyph Reordering

Yesterday I was re-engineering a font to solve some reported issues, and I ended up implementing an OpenType Layout technique which deserves to be better known. But first you’re going to have sit through a rant.

How to stop worrying and learn to love mark-to-base

If you’re doing any kind of work with Indic or Brahmic scripts, you’re going to love what I have to say today.

Semiautomated Handwriting Fonts

One of the things which really drives me is resourcing underserved languages, particularly in terms of digital inclusion. Some of the most exciting times of my missionary years was when I was working for the Asia Pacific Sign Language Development Association, delivering digital content for Deaf communities, and the most exciting part of my work now is knowing that what I do has the potential to…

COLRv1 and Rethinking Variations

OK, here’s the lead - you can do amazing things with COLRv1 fonts: