True Type Font to Postscript Type 1 Converter

Background | What Is TTF2PT1 | History | Download | CVS | Credits | Todo
This Page is also Mirrored here SourceForge Logo (old)
After installing GIMP, I was dissapointed that all the fonts kept appearing blocky and jaggered (I hadn't set up X properly)
Fortunately X11 can use Adobe Type 1 fonts (both .pfb and .pfa). There are a large amount of Type 1 fonts available on the Net, but never the font you want, which is always in another format... It seems that every man and his dog have True Type (.ttf) Fonts but very few have Type 1. So I went looking for a converter. I searched the Web, I searched Deja-News. But every hit pointed to a commercial peice of software (for Mac or Windows).
I did find a program called ttf2pfa (by Andrew Weeks) which will convert a True Type Font to an Adobe Type 3 font, but X doesn't like type 3 fonts. So I continued searching for either ttf to pfa or type 3 to type 1.
I spoke to Andrew Weeks and asked if he was writing a program to produce type 1 fonts. Andrew pointed me to the type 1 specification and the True Type specification, and I started learning about the Type 1 fonts.
Unfortunately the Type 1 specification was full of references to the Postscript Language Reference Manual, which was only available in book format. The chapter on creating the Type 1 outline was full of references: rlineto behaves the same as the rlineto postscript command or

dx1 dy1 dx2 dy2 dx3 dy3 rrcurveto

behaves the same as

dx1 dy1 (dx1+dx2)(dy1+dy2) (dx1+dx2+dx3) (dy1+dy2+dy3) rcurveto

I needed more help.

Just browsing around News one day I noticed a signature which said: * NeXTSTEP, IRIX, Linux, BeOS & PostScript Guy So I asked Frank M. Siegert (owner of the signature) about converting type 3 fonts to type 1, then swapped a number of emails regarding the type 1 commands compared with the type 3 commands that ttf2pfa produced. And Eventually I got a valid type 1 font.

What is it?
TTF2PT1 is a modification of Andrew Weeks TTF2PFA True Type to Postscript Type 3 converter. Which will convert Most True Type Fonts to an Adobe Type 1 .pfa file. And also the other font formats supported by the FreeType library to an Adobe Type 1 .pfa file. And the BDF fonts to an Adobe Type 1 .pfa file. Yet another use is as a hinting engine: feed it an unhinted or poorly hinted Adobe Type 1 font through the FreeType library and get it back with freshly generated hints. If you want .pfb files, don't despair: they can be produced too. The files produced by default are in human readable form, which further needs to be encoded with the t1utilities, to work with most software requiring type 1 fonts. But for the lazy people ttf2pt1 includes a built-in portion of t1utilities as well.
Andrew Weeks Author of the original ttf2pfa, TTF 2 PFA Readme.
Frank Siegert<>Postscript Assistance.
Mark Heath<>Author of ttf2pt1.
Thomas Henlich Bug Fixes.
Sergey Babkin<> Major Feature and Bug Upgrades.
On a separate matter, read Sergey's book on parallel programming:

The t1utilities Homepage
Looking for volunteers!
Are you good with TTF and Poscript type 1 fonts?
Are you a proficient C coder?
Are you interested in helping maintain the ttf2pt1 archive? Are you interested in working on the following features?
  • Improve hinting.
  • Improve the auto-tracing of bitmaps.
  • Implement the family-level hints.
  • Add generation of CID-fonts.
  • Handle the composite glyphs with relative base points.
  • Preserve the relative width of stems during scaling to 1000x1000 matrix.
  • Add support for bitmap TTF fonts.
  • Implement better support of Asian encodings.
  • Implement automatic creation of ligatures.
TTF 2 PT1 Modification by Mark Heath <>
Background | What Is TTF2PT1 | History | Download | CVS | Credits | Todo