Inspired by my sister’s awesome PhD work in Medieval French, I have been playing around with designing a custom font. My latest experimentation is in this font-test GitHub repo and is published to an accompanying GitHub pages site, which you can see here:
Software
I am using Glyphs 3 for creating this font. Glyphs is a proprietary font design program for Mac that seems to be one of the most popular ones. They have student pricing and also a “mini” version that isn’t as expensive. I think you could do basically everything I have done so far with the mini version, except for the emojis.
I am using Flow for sketching glyphs.
Some references that helped me
Glyphs has some pretty good documentation, and there are also some good videos on YouTube to help you get started:
Steps
Getting started
- Create new font in Glyphs
- Set parameters under Font Info: Units per Em, Ascender, Descender, etc
Lower case letters
- Make new components to share between glyphs by creating new glyphs with names starting with _
- Draw the letters, and right click to add components
Upper case letters
- Set custom Exports parameters:
- Disable Subroutines (on): needed because the capitals are very complicated
- Copy sketches into glyph, and set size
- Use “Trace Image” plugin to trace the image
- Clean up
- Delete image
Emojis
- Set custom Font parameters:
- Use Typo Metrics (on)
- Set custom Masters parameters:
- hheaAscender, hheaDescender, hheaLineGap: needed to avoid clipping
- Set custom Export parameters:
- Export sbix Table: needed for emojis to render
- SBIX to SVG: needed to increase support for color font
- Create new glyph called “_emoji_origin”, set width to be the same as the UPM for the font, and put small path in the bottom left corner where the emoji’s bottom left corner will be anchored
- Create new glyph with the emoji needed (either generate from glyph list or add directly by using the exact name or unicode)
- Add component _emoji_origin to emoji and decompose
- Prepare image files for emoji:
- Original image should be square png with transparent background
- Create a copies of images with different resolutions. For example set first image as resolution 512, with a height and width that works when you paste image into the glyph. Next image should have half resolution (256) and half height and width
- Set names of files as all “glyphname resolution.png”, eg “slightlySmilingFace 512.png”
- Use script Add sbix Images to Font to batch-import your emoji images
- This is a mekkablue script that can be added from Plugin Manager -> Scripts
- If it doesn’t work, you can read error messages by opening the Macro Panel
Next steps
- Make the font more cohesive
- Draw better
- Make more emojis
- Figure out something cool to do with this