TTFEdit - TrueTypes tables editor



TTFEdit is a GPL editor for TrueType fonts. TrueType is a standard used by modern operating systems like Mac OS X, Windows XP and Linux. There are two different TrueType specifications: from Apple (original author of this technology) and from Microsoft. Mac OS X and Windows XP use own font rendering engines, there is also FreeType library used by Linux. On these three systems the same font will generally look different. TTFEdit tries to produce TTF files compatible with all mentioned systems.

Loading and saving files

You can edit existing fonts (including these delivered with your operating system) and create fonts from templates. If you use Mac OS X then fonts are located in folders /System/Libraty/Fonts, /Library/Fonts and User's Home/Library/Fonts. If you are Windows user you can find system fonts usually at C:/WINDOWS/Fonts. Linux stores fonts in /usr/share/fonts directory. As a templates there are used original Bitstrem fonts - they are free even for commercial use provided that you do not use Bitstream trademarks in modified files.

While saving fonts TTFEdit modifies hinting instructions (these instructions tell operating system how to change font shape in different sizes, they are especially usefull in range below 12pt). As a result saved font may not have the same look as original font.

With TTFEdit you can also check all fonts within a directory if it is possible to load and save them.


Tabs as a representation of TTF Tables

TTFEdit uses tabs for representation of each TrueType table (table is a structure of TTF file containing font data - information about character shapes, information for operating system how to display font etc.). If a table can be represented in a user-friendy way it is shown in a tab after loading the font. After selecting option "View"->"Show advanced" more tabs should appear. If you want to see all tables available in the font file you can add command-line parameter "-extview" to run this program.

The most common tabs are "cmap" (for viewing and adding some national characters), "glyf" (for editing shapes of characters) and "name" (for editing text informations inside the font).


Using glyphs editor

After clicking a character (technically called a glyph) in "glyf" tab, editor window will pop up. There are two kinds of glyphs: simple (built from points) and compound (built from simple glyphs). Editing of simple and compound glyphs differs.

Simple glyphs

In the editor window you see points connected into contours. Points are labeled with scheme "[number of contour].[number of point]". Black points are beginnings/ends of lines and curvers. Grey points are so called control points and they are parts of curves.

If you move a mouse and locate it over some point of a contour, the selected point should change color to red. You can then change location of this point. If you press and hold Alt key, then all points which follow the selected point will also be moved.
You can add new points and delete existing.

The third button of the toolbar puts editor into mode when new points can be added to existing contours. If you want to add new point you should first select preceding point of insertion - you can do it with right-clicking of a point, its colour should change to green. Then you can click in a place where you want new point to be added. If you press and hold Ctrl key while adding new point, then it will lay on a curve, otherwise it will belong to straight line.

Next button of the toolbar allows you to put the editor into mode when new contous are being created. If you click mouse while holding Ctrl key a new point will belong to curve. If you want to add next new contour you should once again press 4th button of the toolbar with Ctrl key hold. If you want to escape to normal mode (when points can be moved) you should click 4th button of the toolbar without any keyboard key pressed.

When 5th button of the toolbar is in pressed state, then clicking on points deletes them.

Compound glyphs

In the editor window you see shapes of single glyphs inside rectangles (sides are draw with dashed lines). You can move shapes, add new ones (with pressed 3rd button of the toolbar) or delete existing (5th button). While adding a new shape you should know the id of a glyph (id is a number visible next to glyph image in "glyf" tab e.g. "0171").


You can undo last editor action with Ctrl+Z keys, for redo there is Ctrl+Y.


Command-line parameters




Legal notes

Usage of source files and binaries and redistribution of this program are covered by GPL License.