1.Dd May 18, 2004 2.\" ttx is not specific to any OS, but contrary to what groff_mdoc(7) 3.\" seems to imply, entirely omitting the .Os macro causes 'BSD' to 4.\" be used, so I give a zero-width space as its argument. 5.Os \& 6.\" The "FontTools Manual" argument apparently has no effect in 7.\" groff 1.18.1. I think it is a bug in the -mdoc groff package. 8.Dt TTX 1 "FontTools Manual" 9.Sh NAME 10.Nm ttx 11.Nd tool for manipulating TrueType and OpenType fonts 12.Sh SYNOPSIS 13.Nm 14.Bk 15.Op Ar option ... 16.Ek 17.Bk 18.Ar file ... 19.Ek 20.Sh DESCRIPTION 21.Nm 22is a tool for manipulating TrueType and OpenType fonts. It can convert 23TrueType and OpenType fonts to and from an 24.Tn XML Ns -based format called 25.Tn TTX . 26.Tn TTX 27files have a 28.Ql .ttx 29extension. 30.Pp 31For each 32.Ar file 33argument it is given, 34.Nm 35detects whether it is a 36.Ql .ttf , 37.Ql .otf 38or 39.Ql .ttx 40file and acts accordingly: if it is a 41.Ql .ttf 42or 43.Ql .otf 44file, it generates a 45.Ql .ttx 46file; if it is a 47.Ql .ttx 48file, it generates a 49.Ql .ttf 50or 51.Ql .otf 52file. 53.Pp 54By default, every output file is created in the same directory as the 55corresponding input file and with the same name except for the 56extension, which is substituted appropriately. 57.Nm 58never overwrites existing files; if necessary, it appends a suffix to 59the output file name before the extension, as in 60.Pa Arial#1.ttf . 61.Ss "General options" 62.Bl -tag -width ".Fl t Ar table" 63.It Fl h 64Display usage information. 65.It Fl d Ar dir 66Write the output files to directory 67.Ar dir 68instead of writing every output file to the same directory as the 69corresponding input file. 70.It Fl o Ar file 71Write the output to 72.Ar file 73instead of writing it to the same directory as the 74corresponding input file. 75.It Fl v 76Be verbose. Write more messages to the standard output describing what 77is being done. 78.It Fl a 79Allow virtual glyphs ID's on compile or decompile. 80.El 81.Ss "Dump options" 82The following options control the process of dumping font files 83(TrueType or OpenType) to 84.Tn TTX 85files. 86.Bl -tag -width ".Fl t Ar table" 87.It Fl l 88List table information. Instead of dumping the font to a 89.Tn TTX 90file, display minimal information about each table. 91.It Fl t Ar table 92Dump table 93.Ar table . 94This option may be given multiple times to dump several tables at 95once. When not specified, all tables are dumped. 96.It Fl x Ar table 97Exclude table 98.Ar table 99from the list of tables to dump. This option may be given multiple 100times to exclude several tables from the dump. The 101.Fl t 102and 103.Fl x 104options are mutually exclusive. 105.It Fl s 106Split tables. Dump each table to a separate 107.Tn TTX 108file and write (under the name that would have been used for the output 109file if the 110.Fl s 111option had not been given) one small 112.Tn TTX 113file containing references to the individual table dump files. This 114file can be used as input to 115.Nm 116as long as the referenced files can be found in the same directory. 117.It Fl i 118.\" XXX: I suppose OpenType programs (exist and) are also affected. 119Don't disassemble TrueType instructions. When this option is specified, 120all TrueType programs (glyph programs, the font program and the 121pre-program) are written to the 122.Tn TTX 123file as hexadecimal data instead of 124assembly. This saves some time and results in smaller 125.Tn TTX 126files. 127.It Fl y Ar n 128When decompiling a TrueType Collection (TTC) file, 129decompile font number 130.Ar n , 131starting from 0. 132.El 133.Ss "Compilation options" 134The following options control the process of compiling 135.Tn TTX 136files into font files (TrueType or OpenType): 137.Bl -tag -width ".Fl t Ar table" 138.It Fl m Ar fontfile 139Merge the input 140.Tn TTX 141file 142.Ar file 143with 144.Ar fontfile . 145No more than one 146.Ar file 147argument can be specified when this option is used. 148.It Fl b 149Don't recalculate glyph bounding boxes. Use the values in the 150.Tn TTX 151file as is. 152.El 153.Sh "THE TTX FILE FORMAT" 154You can find some information about the 155.Tn TTX 156file format in 157.Pa documentation.html . 158In particular, you will find in that file the list of tables understood by 159.Nm 160and the relations between TrueType GlyphIDs and the glyph names used in 161.Tn TTX 162files. 163.Sh EXAMPLES 164In the following examples, all files are read from and written to the 165current directory. Additionally, the name given for the output file 166assumes in every case that it did not exist before 167.Nm 168was invoked. 169.Pp 170Dump the TrueType font contained in 171.Pa FreeSans.ttf 172to 173.Pa FreeSans.ttx : 174.Pp 175.Dl ttx FreeSans.ttf 176.Pp 177Compile 178.Pa MyFont.ttx 179into a TrueType or OpenType font file: 180.Pp 181.Dl ttx MyFont.ttx 182.Pp 183List the tables in 184.Pa FreeSans.ttf 185along with some information: 186.Pp 187.Dl ttx -l FreeSans.ttf 188.Pp 189Dump the 190.Sq cmap 191table from 192.Pa FreeSans.ttf 193to 194.Pa FreeSans.ttx : 195.Pp 196.Dl ttx -t cmap FreeSans.ttf 197.Sh NOTES 198On MS\-Windows and MacOS, 199.Nm 200is available as a graphical application to which files can be dropped. 201.Sh SEE ALSO 202.Pa documentation.html 203.Pp 204.Xr fontforge 1 , 205.Xr ftinfo 1 , 206.Xr gfontview 1 , 207.Xr xmbdfed 1 , 208.Xr Font::TTF 3pm 209.Sh AUTHORS 210.Nm 211was written by 212.An -nosplit 213.An "Just van Rossum" Aq just@letterror.com . 214.Pp 215This manual page was written by 216.An "Florent Rougon" Aq f.rougon@free.fr 217for the Debian GNU/Linux system based on the existing FontTools 218documentation. It may be freely used, modified and distributed without 219restrictions. 220.\" For Emacs: 221.\" Local Variables: 222.\" fill-column: 72 223.\" sentence-end: "[.?!][]\"')}]*\\($\\| $\\| \\| \\)[ \n]*" 224.\" sentence-end-double-space: t 225.\" End: 226