Creating a Layered Color Font

by Rainer Erich Scheichelbauer
en fr zh

1 December 2016 Published on 16 September 2014

With Glyphs, creating layered color fonts is a snap. Find out how.

Layer fonts are fun for the user, but always have been a lot of work for the creator. Well, it has just gotten a lot easier: Glyphs has some major improvements for the layer type designers amongst you.

Create Masters and Instances

Masters are your layers. So you go into File > Font Info > Masters, and add as many font masters as you need layers. Make sure you give each of them a different Custom name and value, e.g., ‘Front’, ‘Side’, ‘Bottom’, and 1, 2, and 3.

And, while we are at it, you can assign different preview colors to your master layers. That is because layer fonts are no fun if all the layers have the same color. This is how you do it: Add a new custom parameter by clicking the little plus button just above the Custom Parameters section. In the Property pop-up, you pick Master Color, and in the Value field, a color swatch will appear. Click on the swatch to pick a different color:

Hint, hint: You can even choose a transparency, if you want to simulate an overprint effect.

When you are done, select the Master Color parameter, and copy it to the clipboard (Cmd-C). Then go into each of the other masters, and each time, click into the Custom Parameters section, and paste (Cmd-V). Then you can conveniently click on the swatch and change the color for each layer. The power users amongst you can Cmd-select more than one master in the sidebar, and add or paste the parameter for all master layers at once.

Now, in the Font Info window, switch to the Instances tab. There, you create instances with the exact same weight values we used before. To do that, click on the Plus button in the bottom left, and choose Add Instance for each Master from the menu that pops up.

Using the exact same values makes sure we are not interpolating. That is good because we do not want to interpolate, we just want to draw and export different layers.

Edit the Layer Glyphs

Once you close the Font Info window, you are taken back to the Font window. Let’s double click the uppercase I, an easy letter, ideal for experimenting and trying some editing.

Using the Master buttons at the top of the window, or the shortcuts Cmd-1, Cmd-2, and Cmd-3, you can switch between the layers. In the Layers section of the sidebar palette (Cmd-Opt-P), the custom names should pop up, along with an indication of the layer color. To the left of each layer name, there is a little eye symbol. Click on all closed eyes to open them. So, all master layers are displayed at once while you edit them.

Press Cmd-1 to go to the ‘Front’ layer, and draw a rectangle from the cap height to the baseline, for the uppercase I:

Then, while the rectangle is still selected, copy it to the clipboard (Cmd-C), switch to the ‘Side’ layer (Cmd-2), and paste (Cmd-V). Select the two leftmost nodes with the Select tool (V), and move them to the bottom right, like this:

Select all (Cmd-A), copy to the clipboard (Cmd-C), switch to the ‘Bottom’ layer (Cmd-3), and paste. Now move the two top nodes to the bottom left position, so that the top of the ‘Bottom’ layer aligns with the base of the ‘Front’ layer:

Now is a good time to hold down your Option key, and choose Correct Path Direction for All Masters (Cmd-Opt-Shift-R) from the Paths menu. Hold down the space bar to temporarily see a Preview, or simply switch to the Text tool (T), and you can see if everything works out as expected:

Congratulations, you have your first layered glyph.

Multiple-Layer Editing

Speaking of editing, there is a Select All Layers tool, which allows you to edit any points on any visible layer.

Some menu commands work for all layers at once. You can now Glyph > Update Metrics for All Masters (Cmd-Opt-Ctrl-M) and we have already used Paths > Correct Path Direction for All Masters (Cmd-Opt-Shift-R).

Keeping Metrics and Kerning in Sync

Another big issue: keeping all the widths the same in all masters. After all, if a width is changed in one color, all the other color layers must follow too. You could of course always go through all masters with Cmd-1, 2, 3 etc., and do the same metric change everywhere. But there is a smarter way.

In File > Font Info > Masters (Cmd-I), add the custom parameter Link Metrics With First Master to all masters. Now all width changes are kept in sync throughout all masters that have this parameter. And not only the width changes, but also all kerning changes are kept in sync between all masters. Cool.

Sometimes you do not want to link metrics and kerning with the first master, but with another master. In these cases, you can use the Link Metrics with Master parameter. As Value, it takes the name of the master:

Applying Layer Fonts in InDesign

You export the fonts just as you would in any other font project. As always, it is a good idea to use the Adobe Fonts folder.

Now, what you need to do in InDesign, is to have multiple text frames with the exact same content exactly on top of each other, each of them with a different font style. You can use InDesign’s place-and-link tool to achieve that.

Layering Fonts in Illustrator

There is one problem with aligning area type objects (i.e., text in text boxes) in Adobe Illustrator. By default, the app tries to be smart about finding a good offset for the first baseline in your text box. To do that, Illustrator measures your lowercase letter d, and uses its ascender height as offset for the first line. I am not kidding, AI really does that.

The problem is that, in the color layers, it is rather unlikely for all of them to happen to have the same vertical maximum in the lowercase d. So, as a consequence, the layers will not align, and you may receive a large number of support requests by e-mail from the people who bought your color font.

There are two things you can do. Firstly, you can try to educate your customers about how to change the baseline offset setting for all area type objects in Adobe Illustrator: Select all text boxes you want to align, go to Type > Area Type Options, and choose Fixed or Leading as the First Baseline option. Keep in mind though, that even experienced users often do not know about this setting. And you risk that they publish an angry Instagram posting about your font before they contact you.

Or, secondly, you can add a tiny square, maybe just one unit wide, at the top of all layers in your lowercase d. Copy and paste it at the same height in all color layers, and make sure it is the highest path object in this letter. Make sure you find a good spot in your design, so it does not show too much. Then, when Illustrator measures your lowercase d, it will find all of them to be of the same height, and align them all by default. And your inbox will not overfill with support requests.

And again, also for testing the font in AI, make sure you use the Adobe Fonts folder.

Sapperlot Sources

In any event, you can do pretty good stuff with this, like Thomas Maier (DrTypo) did with his font Sapperlot. Thomas open-sourced the .glyphs file, so head on over to his GitHub page and take a closer look:


Update 2014-12-24: Added the paragraphs about layering fonts in Illustrator.
Update 2016-11-30: Added the paragraphs about the Link Metrics with First Master parameter.
Update 2016-12-01: Fixed typos and modification date.
Update 2017-01-18: Added paragraph and screenshot for Link Metrics with Master