blob: f2f3b0cb9be33d57506889ac60a9de5df3804140 [file] [log] [blame]
pabs3b86bf222009-11-08 15:51:41 +00001TTX/FontTools
jvr15174d02002-09-10 13:13:25 +00002
3TTX/FontTools is a suite of tools for manipulating fonts. It is written in
4Python and has a BSD-style, open-source licence -- see LICENSE.txt.
5It's hosted at http://sourceforge.net/.
6
7The flagship is TTX, a tool to convert OpenType and TrueType font files to
8an XML-based format (also called TTX), and back. This lets you edit TTF or
9OTF files with any text editor.
10
11The FontTools library currently reads and writes TrueType font files, reads
12PostScript Type 1 fonts and more.
13
14
15Scope
16
17TTX/FontTools' functionality is aimed towards font developers and font tool
18developers. It can of course be used to just access fonts (outlines,
19metrics, etc.) but it is not optimized for that. It will be further
20developed so it can be the core of any font editor. And that's exactly
21what it will be for our upcoming major rewrite of RoboFog, our (commercial)
22PythonPowered font editor for MacOS.
23
24
25Installation
26
27For Windows and MacOS there are easy-to-use TTX installers. The rest if this
28document is meant for people who want to use TTX/FontTools from the source.
29
30You need the following software:
31
32Python
33 The fresh versions as well as older versions (You need 2.0 or higher)
34 can be downloaded from
35 http://www.python.org/download/
36 or here
37 http://sourceforge.net/projects/python/
38
39 Windows: grab the Windows installer, run the full install.
40 Un*x: follow the build instructions.
41 MacOS: grab the installer, run "Easy Install"
42
jvr3afe3812008-03-04 15:42:38 +000043The numpy extension
44 See http://numpy.scipy.org/
jvr15174d02002-09-10 13:13:25 +000045
46Now run the "setup.py" script from the FontTools archive. This will install
47all the modules in the right places, as well as tries to compile the one
48(optional) C extension contained in FontTools. On Unix it also installs the
49"ttx" command line tool. This tool can also be used on Windows, but might
50need some fiddling.
51
52For instructions how to build a standalone Windows installer, see
53Windows/README.TXT. Thanks a LOT to Adam Twardoch for this essential
54contribution.
55
56For TTX usage instructions, see the file "documentation.html".
57
58
59Feedback
60
61Please join the fonttools-discussion mailing list at SourceForge. Subscription
62info can be found if you follow the "Mailing Lists" link at the SourceForge
63project page:
64 http://sourceforge.net/projects/fonttools/
65You can also email me directly at just@letterror.com.
66
67If you want to follow the development of FontTools closely, or would like to
68contribute, you can also subscribe to the fonttools-checkins mailing list.
69
70
Paul Wise0fff29a2013-11-18 20:20:45 +010071Anonymous VCS access
jvr15174d02002-09-10 13:13:25 +000072
Paul Wise0fff29a2013-11-18 20:20:45 +010073The FontTools sources are also accessible here:
jvr15174d02002-09-10 13:13:25 +000074 http://sourceforge.net/projects/fonttools/
75Let me know if you'd like to become a co-developer.
76
77
78Developer documentation
79
80Sorry, documentation beyond doc strings in the source code is still on my to-do list...
81Below follows a brief overview of what's there.
82
83
84The library
85
86 Cross-platform
87 fontTools.t1Lib -- Provides a Type 1 font reader. Writing is a planned feature.
88 fontTools.ttLib -- Extensive TrueType tools. Reads and writes. This is the flagship
89 of FontTools, it's by far the most mature component. Contains a completely modular
90 TTF table converter architecture. See ttLib/tables/table_API_readme.txt.
91 fontTools.afmLib -- And AFM file reader/writer.
92 fontTools.cffLib -- Reads CFF fonts. Writing is a planned feature.
93 fontTools.unicode -- A simple (but large) module that translates
94 Unicode values to their descriptive names. Still Unicode 2.0.
95 fontTools.agl -- Interface to the Adobe Glyph List: maps unicode values
96 to glyph names and back.
97
98 Mac-specific
99 fontTools.fondLib -- A reader/writer class for Mac FOND resources.
100 fontTools.nfntLib -- Reads Mac NFNT bitmap font resources.
101
102
103Thank-you's
104
105(in alphabetical order)
106Erik van Blokland, Petr van Blokland, Jelle Bosma, Vincent Connare,
107Simon Daniels, Hannes Famira, Greg Hitchcock, John Hudson, Jack Jansen,
108Antoine Leca, Werner Lemberg, Peter Lofting, Dave Opstad, Laurence Penney,
109Guido van Rossum, Adam Twardoch.
110
111Copyrights
112
113FontTools/TTX -- 1999-2002 Just van Rossum; Letterror (just@letterror.com)
114See LICENCE.txt for the full license.