From TrueType to XML and Back

TTX decompiles TrueType and OpenType fonts to an XML-based text format (also called "TTX") and back, enabling you to edit fonts with a plain text editor. Currently, TTX supports all of the core TrueType tables, the CFF table, the OpenType Layout tables, a few Windows-specific tables, and additionally the VTT (Visual TrueType) private tables, which contain the source code of the instructions.

How much?

TTX is free. It is copyrighted, but it's distributed as open source, meaning anyone can access the source code and make alterations.

Download

You can download TTX and the TTX sources at the SourceForge download page. There's a source archive, an executable for MacOS(X) and a Windows installer.

TTX vs. TTLib vs. FontTools

TTX is just a cute name for a thin wrapper around TTLib, my TrueType library, which does all of the hard work. In turn, TTLib is part of FontTools, a more general purpose set of font utility modules.

FontTools is written in our favorite language, Python, a very nice high-level, cross-platform, object-oriented programming language. I tried to make the library as cross-platform as possible, avoiding system-specific calls and working around system dependencies (such as endianness).

If you'd like to contribute to the project, or just browse through the sources, please have a look at the FontTools page at SourceForge. I'm especially looking for help to make the library more complete (eg. support for more TT tables or subtable formats) and help to make a solid TTX installer for Windows.

It should be noted that there is nothing in TTLib or FontTools that binds it exclusively to XML. Its main functionality are TT to Python objects converters: once that worked, implementing XML export and import turned out to be almost trivial (but it is also the slowest part of TTLib!). So TTLib could be the core for any TrueType tool. It could be part of your font tool, too! It is already being distributed as part of Adobe's Font Development Kit.

Unsolicited endorsements

Rich Roat (House Industries):
"You ain't kidding, man. That thing musta been a shitload of work. It's really cool and works like a champ..."

Dave Opstad (Apple Computer Inc.):
"Waaaaaaaaaaay cool!"

Cyrus Highsmith (The Font Bureau Inc.):
"Excellent new tool!"

Antoine Leca (Renault France):
"This is the first tool I encountered that is able to deal with a 51,113 glyph font without problems... Keep working!"

David Berlow (The Font Bureau Inc.):
"I did more than EIGHTEEN HOURS of work in TEN MINUTES the first time I used TTX!" "It's the Greatest!"

Tal Leming (TypeSupply.com):
"This thing is absolutely _A_M_A_Z_I_N_G_! Thanks for letting the rest of us in on it. Now, if you'll excuse me, I have to go browse through the new CFF lib..."