I have always been interested in calligraphy, especially the eccentricities of the swash and black letter capitals.
My father was deeply concerned with Renaissance printing, being a textual bibliographer of Shakespeare. His major concern was the errors printers were likely to make, nevertheless I grew up in an environment where the long-s appeared. My father used to brag that a great aunt of his still used the long-s in her hand-written notes.
In the early '80s I was working at JPL and I met my first bitmap display. The primary use of this display was to make movies of a simulated fly-by of Olympus Mons (on Mars). I used it to design my first bitmap font.
In the late '80s I bought my first computer, a Mac II. And with it a bought a little program called Fontastic which allowed people to design their own 'FONT' resources (mac bitmap fonts).
Then a friend recommended that I buy a copy of Fontographer and design PostScript fonts. I was leary initially. How could a rasterizer match the quality of a hand crafted bitmap? But eventually I succombed to the attractions of the cubic spline.
In the meantime I had studied calligraphy, and once I had Fontographer began designing fonts based on various (latin) calligraphic hands.
In the early '90s I was working at a little web start-up company, called NaviSoft, which was almost immediately bought by AOL. My product was an html-editor (best known as AOLpress). As I was working to convert it to handle Unicode I became concerned about the lack of Unicode fonts. I began working on my own Unicode font (just the alphabetics and symbols, I knew there was no way I'd be able to deal with all the CJK characters). I designed a font based on Caslon's work with Bold and Italic variants. And then I started working on monospaced and sans-serif families (I called the sans-serif design "Caliban" as a play on Arial).
Aldus (the makers of Fontographer) had been bought by MacroMedia, and MacroMedia seemed to have no interest in continuing Fontographer. So development on Fontographer ceased. It did not support OpenType, and its unicode support was minimal. I began to write little programs to decode Type1 fonts and fix them up in various ways.
AOL did not really know what to do with AOLpress. AOLpress had been designed with web designers in mind, not with Steve Case's mother (which was AOL's target audience). So development on AOLpress ceased and the Unicode/CSS version never was completed. I continued to work on my fonts however and continued to be dissatisfied with Fontographer. In 1998 my AOL options matured and I was able to retire.
I wanted to try to become a primatologist and had made arrangements to spend 4 months in Madagascar as a field assistant to Chia Tan studying the Greater Bamboo lemur. Sadly I found that I was not really cut out for that life. I had a hard time recognizing individual animals, and found that after a few months the leaches were more annoying than I had expected.
So I gave up on that.
Instead I set about working on an improved version of my html editor, and started by writing my own Unicode based widget set for it. When the widget set was usable I decided to write a small application to test it, and something to display the splines of a postscript font seemed just the thing. Having done that I figured I might as well allow people to edit those splines and save it back. And so was born the first version of PfaEdit.
Somehow the html-editor never got written.
I quickly discovered I was better at designing a font editor than I was at designing fonts, so I gave up on them too.
After a couple months of work I had something which worked, or so I thought, and I posted it to the web (my friend, Dan Kenan, very kindly gave me some space on his server, aptly named bibliofile) on 7 November of 2000. Within a month I had received my first bug report, and presumably my first user.
I continued working on PfaEdit, adding support for pfb fonts and then in December for truetype and bdf fonts. I learned about sourceforge and moved PfaEdit there in April of 2001.
In April of 2001 I added support for type2 fonts embedded in an sfnt wrapper (opentype fonts, but not the advanced typographic tables). In July of 2001 someone asked me if PfaEdit could support CID keyed fonts so I learned about those and added support for them in August.
Valek Filippov suggested that I make PfaEdit be internationalizable, so I provided a mechanism and he provided a Russian translation of the user interface in June of 2001. On December of 2005 I gave up on my own system and switched to GNU gettext.
Language | Translator | Initial version |
---|---|---|
English | ||
Russian | Valek Filippov | June 2001 |
Japanese | Kanou Hiroki | August 2002 |
French | Pierre Hanser | September 2002 |
Italian | Claudio Beccari | February 2003 |
Spanish | Walter Echarri | October 2004 |
Vietnamese | Clytie Siddall | July 2006 |
Greek | Apostolos Syropoulos | August 2006 |
Simplified Chinese | Lee Chenhwa | October 2006 |
German | Philipp Poll | October 2006 |
Polish | Michal Nowakowski | October 2006 |
I started working on support for simple aspects of the OpenType GSUB and GPOS tables in April of 2001 and finished the process (ignoring bugs of course) in August of 2003. Similarly I started adding support for the various equivalent Apple Advanced Typography tables (primarily 'morx') at about the same time.
In an early attempt to get PfaEdit to generate instructions to grid-fit truetype fonts, I set about to write a truetype instruction simulator so that I could debug the generated code. It didn't work very well on real fonts. Then, in early 2001, I discovered freetype and found that freetype already did this (and did it right). At first I examined their code to try and figure out what was wrong with mine, but eventually I gave that up and simply used freetype as an instruction simulator. As things got more complicated (with David Turner's permission, and many suggestions from Werner LEMBERG), I eventually wrote a visual front end for freetype's built-in debugger. For a while this lived in a separate program called mensis, but in March of 2003 I integrated it into PfaEdit.
Many people urged me to provide a scripting interface to PfaEdit. At first I could not understand the point -- font design needs a graphical interface after all. But I was only looking at a small fraction of the tasks that could potentially be done with such an interface, and in January of 2002 PfaEdit gained the ability to run scripts.
In 2003 Yannis Haralambous invited me to talk at EuroTex. I fear I rather disappointed him in my choice of subject matter -- I tried to do better the next year when Apostolos Syropoulos invited me to EuroTex 2004 (but I overreached myself then and made some incorrect assumptions). These conferences were the first time I had actually met any of my users and were quite stimulating, leading to many suggestions and requests. I learned about SVG fonts at EuroTex 2003 and implemented them soon thereafter.
Yannis was also working on a book, Fontes & codages in which FontForge figures. He spent a lot of time making suggestions and finding bugs. He encouraged me to support multi-master fonts and by Febuary of 2004 I had done so. Then I started working on Apple's distortable font technology (which has many similarities to Adobe's multi-master, but are rather badly documented) and, with help from Apple, had them working in April of 2004. I then extended freetype's support for multi-master fonts to support Apple's distortable fonts.
In early 2004 people complained that the name "PfaEdit" no longer reflected the abilities of the program and requested that I change it. Various people suggested names (including me), but the one I liked the best, FontForge, came from David Turner of freetype. And in March of 2004 PfaEdit changed its name to FontForge.
At about the same time I wanted to provide a somewhat more complete ability to handle PostScript Type3 fonts (or SVG fonts). So I implemented a multi-layered editing mode which provided a rather clumsy interface to some of the facilities of vector graphics programs.
The pace of change seems to have slowed recently as all of the large tasks have either been done or proved insurmountable. As more people use the program they find more bugs and I have less time to do development. There have also been large internal changes which (I hope) are practically invisible to users and cosmetic changes which make the dialogs look nicer and more comprehensible but which aren't functional.
I have received many suggestions from many people, too many to enumerate here, and FontForge is the better for their requests. Often I have reacted badly to these suggestions (because they always mean more work for me), and I appologize for that, but mostly I wish to thank those who have helped make FontForge what it is today.
Currently, probably the biggest complaint about FontForge is the choice of widget set. No one likes my widgets (except me). Unfortunately for the rest of the world I don't like the two choices of widget set available to me (gtk and qt). I will get started working on converting to one and then run into some problem I can't work around easily and give up and go back to my own.