2009-11-08 15:51:41 +00:00
|
|
|
TTX/FontTools
|
2002-09-10 13:13:25 +00:00
|
|
|
|
|
|
|
TTX/FontTools is a suite of tools for manipulating fonts. It is written in
|
|
|
|
Python and has a BSD-style, open-source licence -- see LICENSE.txt.
|
|
|
|
It's hosted at http://sourceforge.net/.
|
|
|
|
|
|
|
|
The flagship is TTX, a tool to convert OpenType and TrueType font files to
|
|
|
|
an XML-based format (also called TTX), and back. This lets you edit TTF or
|
|
|
|
OTF files with any text editor.
|
|
|
|
|
|
|
|
The FontTools library currently reads and writes TrueType font files, reads
|
|
|
|
PostScript Type 1 fonts and more.
|
|
|
|
|
|
|
|
|
|
|
|
Scope
|
|
|
|
|
|
|
|
TTX/FontTools' functionality is aimed towards font developers and font tool
|
|
|
|
developers. It can of course be used to just access fonts (outlines,
|
|
|
|
metrics, etc.) but it is not optimized for that. It will be further
|
|
|
|
developed so it can be the core of any font editor. And that's exactly
|
|
|
|
what it will be for our upcoming major rewrite of RoboFog, our (commercial)
|
|
|
|
PythonPowered font editor for MacOS.
|
|
|
|
|
|
|
|
|
|
|
|
Installation
|
|
|
|
|
|
|
|
For Windows and MacOS there are easy-to-use TTX installers. The rest if this
|
|
|
|
document is meant for people who want to use TTX/FontTools from the source.
|
|
|
|
|
|
|
|
You need the following software:
|
|
|
|
|
|
|
|
Python
|
|
|
|
The fresh versions as well as older versions (You need 2.0 or higher)
|
|
|
|
can be downloaded from
|
|
|
|
http://www.python.org/download/
|
|
|
|
or here
|
|
|
|
http://sourceforge.net/projects/python/
|
|
|
|
|
|
|
|
Windows: grab the Windows installer, run the full install.
|
|
|
|
Un*x: follow the build instructions.
|
|
|
|
MacOS: grab the installer, run "Easy Install"
|
|
|
|
|
2008-03-04 15:42:38 +00:00
|
|
|
The numpy extension
|
|
|
|
See http://numpy.scipy.org/
|
2002-09-10 13:13:25 +00:00
|
|
|
|
|
|
|
Now run the "setup.py" script from the FontTools archive. This will install
|
|
|
|
all the modules in the right places, as well as tries to compile the one
|
|
|
|
(optional) C extension contained in FontTools. On Unix it also installs the
|
|
|
|
"ttx" command line tool. This tool can also be used on Windows, but might
|
|
|
|
need some fiddling.
|
|
|
|
|
|
|
|
For instructions how to build a standalone Windows installer, see
|
|
|
|
Windows/README.TXT. Thanks a LOT to Adam Twardoch for this essential
|
|
|
|
contribution.
|
|
|
|
|
|
|
|
For TTX usage instructions, see the file "documentation.html".
|
|
|
|
|
|
|
|
|
|
|
|
Feedback
|
|
|
|
|
|
|
|
Please join the fonttools-discussion mailing list at SourceForge. Subscription
|
|
|
|
info can be found if you follow the "Mailing Lists" link at the SourceForge
|
|
|
|
project page:
|
|
|
|
http://sourceforge.net/projects/fonttools/
|
|
|
|
You can also email me directly at just@letterror.com.
|
|
|
|
|
|
|
|
If you want to follow the development of FontTools closely, or would like to
|
|
|
|
contribute, you can also subscribe to the fonttools-checkins mailing list.
|
|
|
|
|
|
|
|
|
2013-11-18 20:20:45 +01:00
|
|
|
Anonymous VCS access
|
2002-09-10 13:13:25 +00:00
|
|
|
|
2013-11-18 20:20:45 +01:00
|
|
|
The FontTools sources are also accessible here:
|
2002-09-10 13:13:25 +00:00
|
|
|
http://sourceforge.net/projects/fonttools/
|
|
|
|
Let me know if you'd like to become a co-developer.
|
|
|
|
|
|
|
|
|
|
|
|
Developer documentation
|
|
|
|
|
|
|
|
Sorry, documentation beyond doc strings in the source code is still on my to-do list...
|
|
|
|
Below follows a brief overview of what's there.
|
|
|
|
|
|
|
|
|
|
|
|
The library
|
|
|
|
|
|
|
|
Cross-platform
|
|
|
|
fontTools.t1Lib -- Provides a Type 1 font reader. Writing is a planned feature.
|
|
|
|
fontTools.ttLib -- Extensive TrueType tools. Reads and writes. This is the flagship
|
|
|
|
of FontTools, it's by far the most mature component. Contains a completely modular
|
|
|
|
TTF table converter architecture. See ttLib/tables/table_API_readme.txt.
|
|
|
|
fontTools.afmLib -- And AFM file reader/writer.
|
|
|
|
fontTools.cffLib -- Reads CFF fonts. Writing is a planned feature.
|
|
|
|
fontTools.unicode -- A simple (but large) module that translates
|
|
|
|
Unicode values to their descriptive names. Still Unicode 2.0.
|
|
|
|
fontTools.agl -- Interface to the Adobe Glyph List: maps unicode values
|
|
|
|
to glyph names and back.
|
|
|
|
|
|
|
|
Mac-specific
|
|
|
|
fontTools.fondLib -- A reader/writer class for Mac FOND resources.
|
|
|
|
fontTools.nfntLib -- Reads Mac NFNT bitmap font resources.
|
|
|
|
|
|
|
|
|
|
|
|
Thank-you's
|
|
|
|
|
|
|
|
(in alphabetical order)
|
|
|
|
Erik van Blokland, Petr van Blokland, Jelle Bosma, Vincent Connare,
|
|
|
|
Simon Daniels, Hannes Famira, Greg Hitchcock, John Hudson, Jack Jansen,
|
|
|
|
Antoine Leca, Werner Lemberg, Peter Lofting, Dave Opstad, Laurence Penney,
|
|
|
|
Guido van Rossum, Adam Twardoch.
|
|
|
|
|
|
|
|
Copyrights
|
|
|
|
|
|
|
|
FontTools/TTX -- 1999-2002 Just van Rossum; Letterror (just@letterror.com)
|
|
|
|
See LICENCE.txt for the full license.
|