FontForge as a Typeface Design Environment--Good Idea, Bad Idea

Steve Tiano's picture

I've been having a running conversation on the Design forum about my burgeoning interest in typeface design--I am a book designer and page layout artist. Initially, of course, FontLab Studio comes up as the software package of choice for professional typeface design. Some have said, Type Tool is also something to start with and then, as necessary, make the switch later to FontLab.

Some mention was made of the open source package FontForge. I'm on a dual processor G5 PowerMac running OS 10.4.10. After understanding what was necessary to get the X11 server package installed, it was an eay matter of installing and running FontForge, even though it is UNIX-based and I am not a techie.

But I was also told "given that there is a learning curve for any of the programs," I "risk wasting time by going with [FontForge]. ... some software people use it, but not the design community."

How do folks here feel about that? Is it accurate? Should I just stay away from FontForge, start with TypeTool if the investment is presently too much to get FontLab (but assume that professional typeface design will eventually mean moving to FontLab Studio)? Does anyone do viable, professional creative work in FontForge?

Thank you.

Thomas Phinney's picture

Urm, almost all of what Erik van Blokland ascribes to being the limitations of multiple master fonts are in fact limitations of the existing *font editing tools* implementation of multiple master fonts. Adobe actually shipped multiple master fonts with intermediate masters (Adobe Jenson), warped design spaces (Kepler MM) and transitional masters for specific glyphs (ITC Garamond MM). I've even seen an experimental 15-axis MM font with one master plus one master per axis - having masters at corners is not a requirement of the format.

I have no idea how obvious all this was in the published MM specs, but that's kind of a moot point, as the MM format is all but dead for end users. Apps can more easily implement whatever the heck they want as far as how they support design axes, if they don't worry about exporting the result in an MM font. I dearly wish FontLab would sprout more Superpolator-like features in version 6.



yuri's picture

I agree with Thomas. Technical implementation of MM technology in first spec of the CFF/T2 format (outline part of the OT/PS format) was really powerful and flexible, *technically* allowing most of the features you can now find in Superpolator.

However, Superpolator is not only a very good font blending machine, it also provides great UI to deal with masters. Highly recommended!

Tim Ahrens's picture

Erik, a case study would be very helpful. I would be more impressed to see what it has done rather than to hear what it could do.

Is there any type family out there where Superpolator has played a significant role in the design/production? If so, you could write a bit of text with images that demonstrates how Superpolator has saved time (or even improved the final result). For me, that would be more convincing than coloured diagrams.

[edit: just spotted the reference to Amalia. It would be interesting to know exactly how Superpolator was used in its making.]

ultrasparky's picture

Christian Schwartz was praising Superpolator when he spoke at TypoTechnica back in the Spring. I think he used it for the Guardian fonts.

dan_reynolds's picture

Christian Schwartz talked about Superpolator during his keynote address at TypoTechnica. I don't know how involved it is in his workflow, though.

Tim Ahrens's picture

Damn, looks like I missed something interesting there!

dan_reynolds's picture

Double Damn… Dan & Dan cross-post. Tim, I guess you could just e-mail him.

William Berkson's picture

>Christian Schwartz was praising Superpolator when he spoke at TypoTechnica back in the Spring. I think he used it for the Guardian fonts.

In his talk at the TDC in spring, in answer to a question Christian said he used RoboFab (or was it RoboFog?) for the many weights of the Guardian fonts, but would use this great new tool Superpolator in the future. So I assume he is using it on current projects.

mrschwartz's picture

Tim, Dan & Dan-

I wish we had been able to use Superpolator for the Guardian project, but I've only been working with it since December 2006, long after that project was delivered. I'm already at the point where I can't live without it, though. I use it for two main things: the first is rapid prototyping, i.e. taking Headline Regular, Headline Bold, and Text Regular, then extrapolating Text Bold. Not so glamorous, but this was the only way we could have met the almost-impossible deadline for the family we drew for Público in Portugal. The extrapolated Text Bold wasn't perfect, but it was certainly good enough for our clients to use in prototype pages and even a press test to determine if it worked for emphasis in running text. I will often set up separate axes for different aspects of a family - weight, ascender length, ball terminal size, whatever - and adjust the whole family as needed. If I have a Regular weight with long and short extenders, I can apply the axis to lighter and heavier weights as well. It's very handy. Besides Publico, I've used these tools for prototyping styles for the serif face that Paul Barnes started and we finished together for Condé Nast Portfolio magazine, plus the sans I drew for the same publication, the optical sizes of Giorgio, an additional style of Bosch Serif, and various other projects. It took some time to get used to drawing in a way that yields more usable extrapolations without making the poles bland or unattractive, but I'm slowly getting there.

The other thing I use Superpolator for is keeping track of intermediates as I work on a family. I never worked in MM because I tend to work from the middle out, as you've discussed a little bit here, so I would have to keep separate notes on all of the interpolation values and then reinterpolate each style by hand each time I made a round of corrections to one or more of the poles. This was fine for a small family, but a nightmare for a family like Amplitude, with 3 masters per width, all drawn in Robofog, where interpolating all of the intermediates could easily eat an entire afternoon. With Superpolator, any time I change a master, the change is seamlessly propagated through all intermediate styles. This was a huge help with Publico, Meta Serif, and some projects that I'm working on right now. I can also add intermediate masters late in the process, based on the interpolations, so I can fix specific characters (often sans 'a' 'e' 'g' and 's'), and these changes instantly affect the styles around them. This was a huge help with both of the families we drew for Portfolio, because they covered a lot of ground from light to heavy.

Superpolator's precision makes it a great tool for a production environment, but I also find it really fun to use - especially dragging sliders to make morbidly obese extrapolations.

Tim Ahrens's picture

Thanks for the detailed explanation, Christian!

It seems that essentially, Superpolator is taking FontLab's Make Master function (which is actually vector addition) to new levels. Sounds great, because Make Master is not very intuitive and not so convenient if you are working on more than one axis.

dezcom's picture

"Superpolator’s precision makes it a great tool for a production environment, but I also find it really fun to use - especially dragging sliders to make morbidly obese extrapolations."

Can I get one ofthose for Christmas?


speter's picture

morbidly obese extrapolations

It's glandular!

dezcom's picture

Like putting your thigh on roids, eh Steve? :-)


bxfl's picture

What does "extrema" refer to?

dezcom's picture

Extrema is the furthest protruding point of a curve which is ninety degrees from the vertical or horizontal.


bxfl's picture

Is there a visual you can post for this? Hard time grasping it from that description

dezcom's picture

The red arrows point to extrema points of this curve. The green dots are points on the curve but many do not coincide with extrema. A well drawn curve would have a point at each extrema of the curve--unlike this one.


speter's picture

Now, that's a morbidly obese blob.

dezcom's picture

It takes one to node one :-)


Quincunx's picture

Oh my - morbidly obese extrapolations - that's some funny stuff. :D

I like morbidly obese typefaces.

nyomdasz's picture

Does anyone know how to change to quadratic Béziers in font forge?

I think it is a closely-held secret.

cuttlefish's picture

You got your answer in the thread in General discussions, but here it is again for sake of completeness:

how to change to quadratic Béziers?

Element > Font Info... > General > Quadratic Splines

Eluard's picture

I think this information is clear in the on-line documentation btw.

anagnost's picture

This answer is a bit outdated, as FontForge now supports a concept of layers and the spline order is considered a per-layer property (thus it is now possible to store sources for TTF and T1/OTF versions of the same font in the same database). So in order to change to quadratic Béziers in most recent FontForge versions one should do the following:

- go to Element->Font Info->Layers;
- either select "All Layers Quadratic", or select "Mixed" and then adjust curve type individually for each layer.

Mike_U's picture


I just found this little gem of a forum, and must say, fascinating.

I am not a designer, but I'm interested in typography. I do a lot of web design, and, being an academic, have a special relationship to the written (printed) word.

So I just thought I say hello.

And, right after I stumbled across the site yesterday, I 'wasted' an evening to create my first font.

Looking forward to more typography!



vga's picture

Does any of the commercial software support editing the MATH OpenType tables? Support was added to fontforge like a year ago [].

Using this new fontforge feature, Apostolos Syropoulos wrote a free alternative to Cambria Math, called Asana Math [], officially in "beta" stage. It worked as well as Cambria Math in XeTeX (using unicode-math), but I haven't tried it in Office 2007. Asana is not entirely new; it is based on the TeX math fonts pxfonts, but with a lot of additions.

twardoch's picture

> Does any of the commercial software support
> editing the MATH OpenType tables?

As far as I can tell, FontForge and of course the Microsoft MATH table editing tool, available upon request, free of charge, from Microsoft Typography.


Bork Baxter's picture

I've been using FontForge (an old version of it incidentally) for about 2 years now, and, while I've never used any of the commercial options, I have to say that I've thoroughly enjoyed FontForge and never had any problems (I'm on a mac).

Three cheers for open source

trinzia's picture

About FontForge, I read about Cygwin but it says it will change my Windows, which doesn't appeal to me since I can barely remember where everything is in all my programs as it is now. So I tried to install andLinux instead, but it doesn't function on Win 64-bit.

If I draw all my glyphs in Illustrator, is there a free program that I can use just to create the OpenType, with kerning and ligatures?

(It's my first font.) Thanks!

trinzia's picture

Thanks so much!
I will read all the tutorials at fontforge site now. It's not pasting my imported SVG at baseline zero, so maybe I need to change something in my Illustrator file. Also some weird green arrows appeared, and I'm missing Extrema points, but I don't know why that's important.
Do you recommend any 3rd party tutorials?

nadavoid's picture

I got fontforge installed on Mac OS X Lion, and wrote up a blog post on how I did it.

Syrion's picture

A bit late to the party, but the easiest thing to do for non-technical users who want to try FontForge is the following guide. The process is really easy to undo (just check the bottom of this post).

The following process uses open source/free software only and is cross-platform, so both MacOS and Windows users can use this guide (things might be a bit different in MacOS, but it should be easy to find out yourself).


  • This guide is written with "absolute beginners" in mind, power-users can deviate if they know what they're doing.
  • The reason I recommend the Mint-DVD at step 1 is that it provides a similar experience to Windows and MacOS out of the box, without having to worry about additional libraries later on.
  • Both VirtualBox and Mint have 64-bits flavours.

The steps to take:

  1. Download the DVD of Linux Mint at (warning: 1 gigabyte!)
  2. Download VirtualBox at
  3. Install VirtualBox and run it
  4. Create a new Virtual Machine in the "Oracle VM VirtualBox Manager"
    • Hit the "New" button
    • Hit "Next" in the wizard
    • The name is up to you, the OS should be "Linux", the version "Ubuntu"
    • Since the defaults on the next pages are okay: keep hitting "Next" until you reach the "Create" button, which you hit as well to close the wizard.
  5. If it hasn't finished yet: wait for the DVD-download to finish. (No need to burn it!)
  6. Select the virtual machine you just created at the left and hit start. A new wizard should appear.
  7. Hit "Next" and click the folder-image next to the dropdown menu. Browse to the downloaded DVD-image and select it. If you did it right, the dropdown should display "linuxmint-*something*.iso". Hit "Next", then "Start" on the following page.
  8. Wait until things stop moving/counting down/polka-dancing and you see a desktop with the icons "Computer", "Home" & "Install Linux Mint"
  9. Install Linux. Tutorials on that have to be googled, even though it's a fairly straight-forward process, quite possibly in your own language as well.
  10. Once it's installed and running: in the top left corner you see a menu named "Applications". Click it and go to "Other" -> "Software Manager"
  11. Once the manager is usable (might take a bit, due to syncing with multiple archives on the net), type "FontForge" in the searchbox (upper right corner).
  12. Click "FontForge" once it shows up at the results, hit "Install" on it's information page and accept/confirm your action. It will probably give you a message that additional programs/libraries are needed, but by default they will be downloaded and installed as well.
  13. Once it's been installed (progress bar at the bottom, next to "X ongoing actions"), close the "Software Manager" and you should be able to find/launch FontForge at Applications -> Graphics

If you want to check out other open source graphic programs, search in the Software Manager for:
Inkscape (vector-creation/editing)
gimp (bitmap-creation/editing)

I hope this brings some of you to check it out.

Getting rid of it all is easy:

  1. If the virtual machine (the window with Linux Mint in it) is still running: shut it down (preferably by hitting your username in the top-right corner -> shut down -> shut down, otherwise close window -> power off the machine).
  2. Right click on your virtual machine in the "Oracle VM VirtualBox Manager" -> Remove -> Delete all files
  3. Uninstall VirtualBox
Thomas Phinney's picture

I think the above post really sums up why more people aren't using FontForge.

JanekZ's picture

OK, then once again
"... this package aims to distribute user friendly FontForge binaries for Windows as well as the underlying build system itself."
It couldn't be easier...

Dan Gayle's picture

Ha ha. Thomas, you're a cad, but an honest one. I think you're quite correct :)

Syrion's picture

@Thomas Phinney:
True ;)

In my opinion everything related to services consists of a combination of two from the following three options:
1. it's cheap
2. it's good
3. it's fast

You have to either invest time (1+2 combo) or money (2+3 combo). Although the latter can also be replaced by good karma, for those who take a less legal route to obtain propriety software.

@Janekz: nice to see that someone is still trying to keep up, maybe he should contact the projectlead of FF.

xy's picture

Is there some way to pass from FontLab to FontForge safely? Without creating an OTF file?
I want to use FontForge to convert fonts in TrueType before generating TTFs.
But I need to to keep all the components, and be sure nothing bad happens to my kerning and the classes.
Any info on that?

Té Rowan's picture

If your version of FL can save as UFO, that oughta do the trick.

twardoch's picture


FontForge, at least in theory, supports the RoboFab "Pen" object.

This is a macro which, when run in FontLab Studio, will open a font in FontForge and use the Pen object to transfer the glyph to FLS:

from FL import *
import fontforge
from import CurrentGlyph
flf = fl.font
fff =
ffg = fff["B"]
flg = CurrentGlyph()
flpen = flg.getPen()

Unfortunately, last time I checked it (some months ago), this code was crashing FontForge a lot, which means that the FontForge implementation of the Pen object was unstable. But, at least in theory, this process should work both ways.

We'd love to add support for reading and writing SFD and SFDIR files natively to our next-generation products. I'm a strong advocate for this within FontLab, and I'd like to see how many people would be interested in having such functionality.

Going through UFO or RoboFab is the safest method at this point, I'd say.


Karl Stange's picture

We'd love to add support for reading and writing SFD and SFDIR files natively to our next-generation products. I'm a strong advocate for this within FontLab, and I'd like to see how many people would be interested in having such functionality.

Yes, please. Is there somewhere in the FL forums to make this clear?

Adam, with a move away from your signature product are you looking at changing the company name as well?

twardoch's picture

> Is there somewhere in the FL forums to make this clear?

Good point. Hang on for a few days, I'll set up a new board for this next week.

> Adam, with a move away from your signature product are you looking
> at changing the company name as well?

We'll be keeping the company name (FontLab). Our signature product has been FontLab Studio. We haven't announced the new product naming and structure, but the name "FontLab" will certainly keep on living.

xy's picture

Hello Adam,

Thank you for the answer.
For sure more compatibility between font production tools can only be positive.
I personnaly have never used FontForge until recently, but my partner in font design uses it sometimes, particularly for its ability to convert TT curves and hinting.

Can the pen also copy hints in FontForge?
As far as I know, UFO left PS hints at its doors.
I guess it is possible to use the lib, although I have no idea how to do it.
But my partner might…

cuttlefish's picture

Wow, spambot joy46 isn't even trying.

But it seems it's as good a time as any to revive this thread. A lot of good things have been happening with FontForge in the past few months . There's even a build for Mac OS X that installs with just a drag and drop (after installing xQuartz, but we're working on that)!

markovlife's picture

I have to say; this thread is phenomenal. All it took was reading this and not only do I have a much better idea of the surface landscape of font development tools, but I have a good idea of some of the hidden limitations as well.

I have more to ask about in the coming days I'm excited to enter what seems to be a lively and delightfully helpful community.


Syndicate content Syndicate content