arrowtype / shantell-sans

Shantell Sans, from Shantell Martin, is a marker-style font built for creative expression, typographic play, and animation.
https://shantellsans.com
SIL Open Font License 1.1
403 stars 6 forks source link

Kern bouncy letters? Figure out a way to do this without unnecessary kerns. #7

Closed arrowtype closed 3 years ago

arrowtype commented 4 years ago

I initially envisioned the flux & bounce axes as temporary, fun effects that could be played with for animation, interaction, and casual usage where spacing wasn’t as important as overall the fact that it was bouncy. I assumed that the build would be best if it randomized the fonts with each build, to create more variety.

However, users will inevitably want to use the maximum bounce & flux settings for something like a logo or storefront sign, and this would freeze an instance of bad spacing due to bounce as a bad look, permanently. Moreover, some uses would be extremely disrupted if bounce results are quite different between versions – making tiny "hot fixes" basically impossible to make. At the end of the day, this is still a typeface, and it needs to be possible to use and maintain in the long term.

Therefore, it is pretty important that:

The bounce-generation script, then, should:

The end result is that the build workflow should allow for randomization where desired (basically during the design phase), but also allow for improvements to be made over time, rather than be overridden.

arrowtype commented 3 years ago

In the end, to have alternating glyphs (a, b.alt1, c.alt2, a, b.alt1, c.alt2, etc) and to keep non-bouncy glyphs kerned, all alts had to be added to the kerning groups of the base glyphs.

I did end up recording bounce values to the UFO libs, to make builds reproducible and to allow for tweaks to bouncing, but kerning in bounced styles would blow up the scope, AND it would prevent duplexed bouncing animations, which are a core design goal for this axis. So, I’m closing this issue as complete.