"Dynamic Typography" tips?

Hello, I discovered OpenType features in Glyphs last week and it inspired me to design a retro graffiti/bubblegum typeface where the letters shape changes depending on the letter before them.

But I have to create multiple versions of each letter and it takes a lot of time because components don’t work with masks. Do you have any tips to work more efficiently?

I created different classes where I ordered glyphs by their shapes, and every letter has a different version and my Standard Ligature code like “sub @lowercasea a’ by a.amask;” Will I have to do that for every character ?

Thank you!

There is an easy way to make the “bitten” glyphs, assuming you’re in Glyphs 3. Let’s take “am” case for example, the goal is to make an alternate of m that’s bitten by a.

You draw the bite shape of ‘a’ and have it as a part for combining (name it ‘a.offset’ or something, and set them to not export since you want them only for design). Then, you make a new m; let’s call it ‘m.froma’ for example. You place the m component, then the a.offset component. This is the key trick: you can set the latter component to mask (select a component and pay attention to the bottom right of the window where you can Mask or Reverse). By simply placing two components, you can make bitten glyphs. Of course you need to disable component alignment and be clever about positioning/spacing.

I advise you to reduce the pattern that you need to make in order for easier glyph management. Otherwise, the glyph set can get out of control pretty fast.

1 Like

Thank you so much!

I think my explanation might have been a bit too much to digest only through reading. I have made a sample file that demonstrates this. I’ve made four alternates, a following a and m, and m following a and m. I’ve made .offset glyphs to automatically mask the bitten glyphs.

It’s a neat idea, but for only two glyphs it’s already asking for a handful of alternates, and this can get quickly out of hand. Be careful, and be smart about reducing the glyph set :slight_smile:

ContextualOffsetTest.glyphs (5.0 KB) Open in Glyphs 3.

1 Like

Oh thank you! This is what I did but I had to decompose the components because masks didn’t work (I wasn’t using the latest version of Glyphs 3). I updated it and your example works perfectly.

About reducing the glyph set some of the letters will have the same .offset because their ending shape is similar, like the m, n and o in the “amenoid” example.

But what do you mean by getting out of hand? Having too many glyphs can be a problem when I will have to export?

What I meant is, with two glyphs you already have four alternates in total. If all bite shapes are unique and you need to make all variations, that’s 26*26=676 glyphs which is only lowercase. You add 676 for uppercase, and another 676 for upper-lower pairs and we are talking about 2028 possible maximum number of glyphs (and that’s only English with no accent support). That’s my warning :slight_smile: