|
.Dd May 18, 2004 |
|
.\" ttx is not specific to any OS, but contrary to what groff_mdoc(7) |
|
.\" seems to imply, entirely omitting the .Os macro causes 'BSD' to |
|
.\" be used, so I give a zero-width space as its argument. |
|
.Os \& |
|
.\" The "FontTools Manual" argument apparently has no effect in |
|
.\" groff 1.18.1. I think it is a bug in the -mdoc groff package. |
|
.Dt TTX 1 "FontTools Manual" |
|
.Sh NAME |
|
.Nm ttx |
|
.Nd tool for manipulating TrueType and OpenType fonts |
|
.Sh SYNOPSIS |
|
.Nm |
|
.Bk |
|
.Op Ar option ... |
|
.Ek |
|
.Bk |
|
.Ar file ... |
|
.Ek |
|
.Sh DESCRIPTION |
|
.Nm |
|
is a tool for manipulating TrueType and OpenType fonts. It can convert |
|
TrueType and OpenType fonts to and from an |
|
.Tn XML Ns -based format called |
|
.Tn TTX . |
|
.Tn TTX |
|
files have a |
|
.Ql .ttx |
|
extension. |
|
.Pp |
|
For each |
|
.Ar file |
|
argument it is given, |
|
.Nm |
|
detects whether it is a |
|
.Ql .ttf , |
|
.Ql .otf |
|
or |
|
.Ql .ttx |
|
file and acts accordingly: if it is a |
|
.Ql .ttf |
|
or |
|
.Ql .otf |
|
file, it generates a |
|
.Ql .ttx |
|
file; if it is a |
|
.Ql .ttx |
|
file, it generates a |
|
.Ql .ttf |
|
or |
|
.Ql .otf |
|
file. |
|
.Pp |
|
By default, every output file is created in the same directory as the |
|
corresponding input file and with the same name except for the |
|
extension, which is substituted appropriately. |
|
.Nm |
|
never overwrites existing files; if necessary, it appends a suffix to |
|
the output file name before the extension, as in |
|
.Pa Arial#1.ttf . |
|
.Ss "General options" |
|
.Bl -tag -width ".Fl t Ar table" |
|
.It Fl h |
|
Display usage information. |
|
.It Fl d Ar dir |
|
Write the output files to directory |
|
.Ar dir |
|
instead of writing every output file to the same directory as the |
|
corresponding input file. |
|
.It Fl o Ar file |
|
Write the output to |
|
.Ar file |
|
instead of writing it to the same directory as the |
|
corresponding input file. |
|
.It Fl v |
|
Be verbose. Write more messages to the standard output describing what |
|
is being done. |
|
.It Fl a |
|
Allow virtual glyphs ID's on compile or decompile. |
|
.El |
|
.Ss "Dump options" |
|
The following options control the process of dumping font files |
|
(TrueType or OpenType) to |
|
.Tn TTX |
|
files. |
|
.Bl -tag -width ".Fl t Ar table" |
|
.It Fl l |
|
List table information. Instead of dumping the font to a |
|
.Tn TTX |
|
file, display minimal information about each table. |
|
.It Fl t Ar table |
|
Dump table |
|
.Ar table . |
|
This option may be given multiple times to dump several tables at |
|
once. When not specified, all tables are dumped. |
|
.It Fl x Ar table |
|
Exclude table |
|
.Ar table |
|
from the list of tables to dump. This option may be given multiple |
|
times to exclude several tables from the dump. The |
|
.Fl t |
|
and |
|
.Fl x |
|
options are mutually exclusive. |
|
.It Fl s |
|
Split tables. Dump each table to a separate |
|
.Tn TTX |
|
file and write (under the name that would have been used for the output |
|
file if the |
|
.Fl s |
|
option had not been given) one small |
|
.Tn TTX |
|
file containing references to the individual table dump files. This |
|
file can be used as input to |
|
.Nm |
|
as long as the referenced files can be found in the same directory. |
|
.It Fl i |
|
.\" XXX: I suppose OpenType programs (exist and) are also affected. |
|
Don't disassemble TrueType instructions. When this option is specified, |
|
all TrueType programs (glyph programs, the font program and the |
|
pre-program) are written to the |
|
.Tn TTX |
|
file as hexadecimal data instead of |
|
assembly. This saves some time and results in smaller |
|
.Tn TTX |
|
files. |
|
.It Fl y Ar n |
|
When decompiling a TrueType Collection (TTC) file, |
|
decompile font number |
|
.Ar n , |
|
starting from 0. |
|
.El |
|
.Ss "Compilation options" |
|
The following options control the process of compiling |
|
.Tn TTX |
|
files into font files (TrueType or OpenType): |
|
.Bl -tag -width ".Fl t Ar table" |
|
.It Fl m Ar fontfile |
|
Merge the input |
|
.Tn TTX |
|
file |
|
.Ar file |
|
with |
|
.Ar fontfile . |
|
No more than one |
|
.Ar file |
|
argument can be specified when this option is used. |
|
.It Fl b |
|
Don't recalculate glyph bounding boxes. Use the values in the |
|
.Tn TTX |
|
file as is. |
|
.El |
|
.Sh "THE TTX FILE FORMAT" |
|
You can find some information about the |
|
.Tn TTX |
|
file format in |
|
.Pa documentation.html . |
|
In particular, you will find in that file the list of tables understood by |
|
.Nm |
|
and the relations between TrueType GlyphIDs and the glyph names used in |
|
.Tn TTX |
|
files. |
|
.Sh EXAMPLES |
|
In the following examples, all files are read from and written to the |
|
current directory. Additionally, the name given for the output file |
|
assumes in every case that it did not exist before |
|
.Nm |
|
was invoked. |
|
.Pp |
|
Dump the TrueType font contained in |
|
.Pa FreeSans.ttf |
|
to |
|
.Pa FreeSans.ttx : |
|
.Pp |
|
.Dl ttx FreeSans.ttf |
|
.Pp |
|
Compile |
|
.Pa MyFont.ttx |
|
into a TrueType or OpenType font file: |
|
.Pp |
|
.Dl ttx MyFont.ttx |
|
.Pp |
|
List the tables in |
|
.Pa FreeSans.ttf |
|
along with some information: |
|
.Pp |
|
.Dl ttx -l FreeSans.ttf |
|
.Pp |
|
Dump the |
|
.Sq cmap |
|
table from |
|
.Pa FreeSans.ttf |
|
to |
|
.Pa FreeSans.ttx : |
|
.Pp |
|
.Dl ttx -t cmap FreeSans.ttf |
|
.Sh NOTES |
|
On MS\-Windows and MacOS, |
|
.Nm |
|
is available as a graphical application to which files can be dropped. |
|
.Sh SEE ALSO |
|
.Pa documentation.html |
|
.Pp |
|
.Xr fontforge 1 , |
|
.Xr ftinfo 1 , |
|
.Xr gfontview 1 , |
|
.Xr xmbdfed 1 , |
|
.Xr Font::TTF 3pm |
|
.Sh AUTHORS |
|
.Nm |
|
was written by |
|
.An -nosplit |
|
.An "Just van Rossum" Aq just@letterror.com . |
|
.Pp |
|
This manual page was written by |
|
.An "Florent Rougon" Aq f.rougon@free.fr |
|
for the Debian GNU/Linux system based on the existing FontTools |
|
documentation. It may be freely used, modified and distributed without |
|
restrictions. |
|
.\" For Emacs: |
|
.\" Local Variables: |
|
.\" fill-column: 72 |
|
.\" sentence-end: "[.?!][]\"')}]*\\($\\| $\\| \\| \\)[ \n]*" |
|
.\" sentence-end-double-space: t |
|
.\" End: |