Correct order of events for creating a font?

dmolanphy's picture

Hello all,

I'm in the process of designing/building a font and It occurred to me that I don't know what best practices I should be following, if any. I'm sure everyone has their own preferences, but in general...what does your process look like? For example, here's what I have done so far:

  1. Sketched key font glyphs
  2. Scanned and drew glyphs in Illustrator (didn't have a font program yet)
  3. Bought a copy of Glyphs (love it) and imported all glyphs into the app.
  4. Added extended Latin characters, punctuation, and numerals. Printed, tweaked, printed, etc.
  5. Set side bearings (LSB and RSB) to 50 units on every glyph. A few glyphs have different side bearings, but 99% of the font is set at 50.
  6. Set kerning classes on all upper/lowercase letters. Didn't do it on numerals or punctuation.
  7. Kerned all characters using multiple methods: and ebensorkin's brute force test:
  8. Set some long text, printed and reviewed on screen
  9. …and…hated it. Deleted all kerning pairs – started over.

So at this point, I'm feeling pretty stuck. I want to design multiple weights for the font, but I don't know if I should do that first, or kern the font before working on the other weights? What kerning method should I use? Should I set up kerning groups for punctuation and numerals? What is your process?

Thanks in advance!

sko's picture

This is something that I would be interested in seeing too. Because I've been reading this forum, I got the urge to buy typetool so I've been drawing in that (I heard it's like the baby FontLab Studio so the drawing tools should hopefully be similar if I ever upgrade). One thing I appreciate is the 'snapping' to units that you won't get in Illustrator by default, and I think I prefer it for drawing outlines than in Illustrator now (which I was more used to before).

hrant's picture

When I read #5, I heard the sound of screeching tires in my head. Any font where 99% of the glyphs "work" with some fixed sidebearing value is probably not a usable font. Especially if your #2 involves auto-tracing, since that only really makes sense for letterforms with very organic/irregular outlines.


dmolanphy's picture

Thanks hrant - perhaps you misunderstood. I didn't say it "works" with RSB and LSB at 50 (it doesn't). I just used 50 as a default. But your concern brings up a good question: Should I be setting the font's main spacing through side bearings or kerning pairs? I think the answer is to set spacing with side bearings wherever possible, and use kerning pairs only for specific issues (like AV). Is that right?

Also - no, I'm not auto-tracing the font. I've actually spent an inordinate amount of time tweaking, correcting, and perfecting the shapes in Glyphs. I used Illustrator at first because I hadn't bought Glyphs yet.

Thanks - dm

hrant's picture

Yes, I did misunderstand - sorry.

The relationship between "base spacing" and kerning is more complex than it seems. The old maxim of "space first, then kern" isn't useless, in fact it might be a great way for a beginner to get a handle on spacing, but in the end it's limiting. All these steps in type design that seem discrete are in fact highly interdependent, but since they do have to be performed discretely they end up being highly iterative, with experience helping you save much iteration.

Situations where kerning will be off are pretty much the same situations where users won't notice -and if they notice they won't much mind- if the spacing isn't just right. So there's a benefit to accounting for the eventual kicking-in of kerning when you're doing the spacing. And then there's the hidden truth that even the "black bodies" should be affected by spacing... and hence even kerning! For example one can't make a good lowercase /r in a space-less vacuum.


dmolanphy's picture

oh good. that makes me feel better then because my instinct is to space and kern almost simultaneously. I was afraid I may be doing things out of sequence by doing that, so I kept resetting all the spacing/kerning and starting over.

So is there a 'best practice' for base spacing?
For kerning: is it better to kern using brute-force or kern king?
If I use one method (brute-force), should I not use the other (kern king)? Or is it a case of the more the merrier?

What other 'best practices' should I be following?

dmolanphy's picture


eliason's picture

See and related how-to pages of the typo wiki.

dmolanphy's picture

Thanks eliason. That was very helpful.

Everyone: if you have a minute or two, could you take a look at my font and provide some feedback?



Syndicate content Syndicate content