.\" DO NOT MODIFY THIS FILE! It was generated by help2man 1.48.1. .TH FONTMAKE "1" "February 2021" "fontmake 2.3.0" "User Commands" .SH NAME fontmake \- compile fonts from UFO or Glyphs to OTF/TTF .SH DESCRIPTION usage: fontmake [\-h] [\-\-version] .IP (\fB\-g\fR GLYPHS | \fB\-u\fR UFO [UFO ...] | \fB\-m\fR DESIGNSPACE) [\-o FORMAT [FORMAT ...]] [\-\-output\-path OUTPUT_PATH | \fB\-\-output\-dir\fR OUTPUT_DIR] [\-i [INSTANCE_NAME]] [\-\-use\-mutatormath] [\-M] [\-\-family\-name FAMILY_NAME] [\-\-round\-instances] [\-\-designspace\-path DESIGNSPACE_PATH] [\-\-master\-dir MASTER_DIR] [\-\-instance\-dir INSTANCE_DIR] [\-\-no\-write\-skipexportglyphs] [\-\-validate\-ufo] [\-\-expand\-features\-to\-instances] [\-\-keep\-overlaps] [\-\-overlaps\-backend BACKEND] [\-\-keep\-direction] [\-e ERROR] [\-f] [\-a [AUTOHINT]] [\-\-cff\-round\-tolerance FLOAT] [\-\-optimize\-cff OPTIMIZE_CFF] [\-\-subroutinizer {compreffor,cffsubr}] [\-\-no\-optimize\-gvar] [\-\-interpolate\-binary\-layout [MASTER_DIR]] [\-\-feature\-writer CLASS] [\-\-debug\-feature\-file FILE] [\-\-mti\-source MTI_SOURCE] [\-\-production\-names | \fB\-\-no\-production\-names]\fR [\-\-subset | \fB\-\-no\-subset]\fR [\-s | \fB\-S]\fR [\-\-timing] [\-\-verbose LEVEL] .SS "optional arguments:" .TP \fB\-h\fR, \fB\-\-help\fR show this help message and exit .TP \fB\-\-version\fR show program's version number and exit .TP \fB\-\-production\-names\fR Rename glyphs with production names if available otherwise use uninames. .HP \fB\-\-no\-production\-names\fR .TP \fB\-\-subset\fR Subset font using export flags set by glyphsLib .HP \fB\-\-no\-subset\fR .TP \fB\-s\fR, \fB\-\-subroutinize\fR Optimize CFF table using compreffor (default) [DEPRECATED: use \fB\-\-optimize\-cff\fR option instead] .HP \fB\-S\fR, \fB\-\-no\-subroutinize\fR .SS "Input arguments:" .IP The following arguments are mutually exclusive (pick only one): .TP \fB\-g\fR GLYPHS, \fB\-\-glyphs\-path\fR GLYPHS Path to .glyphs source file .TP \fB\-u\fR UFO [UFO ...], \fB\-\-ufo\-paths\fR UFO [UFO ...] One or more paths to UFO files .TP \fB\-m\fR DESIGNSPACE, \fB\-\-mm\-designspace\fR DESIGNSPACE Path to .designspace file .SS "Output arguments:" .TP \fB\-o\fR FORMAT [FORMAT ...], \fB\-\-output\fR FORMAT [FORMAT ...] Output font formats. Choose 1 or more from: ufo, otf, otf\-cff2, ttf, ttf\-interpolatable, otf\-interpolatable, variable, variable\-cff2. Default: otf, ttf. (No file paths). .TP \fB\-\-output\-path\fR OUTPUT_PATH Output font file path. Only valid when the output is a single file (e.g. input is a single UFO or output is variable font) .TP \fB\-\-output\-dir\fR OUTPUT_DIR Output folder. By default, output folders are created in the current working directory, grouping output fonts by format. .TP \fB\-i\fR [INSTANCE_NAME], \fB\-\-interpolate\fR [INSTANCE_NAME] Interpolate masters and generate all the instances defined. To only interpolate a specific instance (or instances) that match a given "name" attribute, you can pass as argument the full instance name or a regular expression. E.g.: \fB\-i\fR "Noto Sans Bold"; or \fB\-i\fR ".* UI Condensed". (for Glyphs or MutatorMath sources only). .TP \fB\-\-use\-mutatormath\fR Use MutatorMath to generate instances (supports extrapolation and anisotropic locations). .TP \fB\-M\fR, \fB\-\-masters\-as\-instances\fR Output masters as instances .TP \fB\-\-family\-name\fR FAMILY_NAME Family name to use for masters, and to filter output instances .TP \fB\-\-round\-instances\fR Apply integer rounding to all geometry when interpolating .TP \fB\-\-designspace\-path\fR DESIGNSPACE_PATH Path to output designspace file (for Glyphs sources only). .TP \fB\-\-master\-dir\fR MASTER_DIR Directory where to write master UFO. Default: "./master_ufo". If value is "{tmp}", a temporary directory is created and removed at the end (for Glyphs sources only). .TP \fB\-\-instance\-dir\fR INSTANCE_DIR Directory where to write instance UFOs. Default: "./instance_ufo". If value is "{tmp}", a temporary directory is created and removed at the end (for Glyphs sources only). .TP \fB\-\-no\-write\-skipexportglyphs\fR Do not store the glyph export flags in the \&'public.skipExportGlyphs' key of designspace/UFO lib, but use the old private glyph lib key \&'com.schriftgestaltung.Glyphs.Export' (for Glyphs sources only). .TP \fB\-\-validate\-ufo\fR Enable ufoLib validation on reading/writing UFO files. It is disabled by default .TP \fB\-\-expand\-features\-to\-instances\fR Resolves all include()s in the master feature file and writes the full feature file to all instance UFOs. Only valid when interpolating. Use if you share feature files of masters in external files, as instances can end up elsewhere. .SS "Handling of contours:" .TP \fB\-\-keep\-overlaps\fR Do not remove any overlap. .TP \fB\-\-overlaps\-backend\fR BACKEND Select library to remove overlaps. Choose between: booleanOperations, pathops (default: booleanOperations) .TP \fB\-\-keep\-direction\fR Do not reverse contour direction when output is ttf or ttf\-interpolatable .TP \fB\-e\fR ERROR, \fB\-\-conversion\-error\fR ERROR Maximum approximation error for cubic to quadratic conversion measured in EM .TP \fB\-f\fR, \fB\-\-flatten\-components\fR Flatten nested components to single level. .TP \fB\-a\fR [AUTOHINT], \fB\-\-autohint\fR [AUTOHINT] Run ttfautohint. Can provide arguments, quoted .TP \fB\-\-cff\-round\-tolerance\fR FLOAT Restrict rounding of point coordinates in CFF table to only those floats whose absolute difference from their integral part is less than or equal to the tolerance. By default, all floats are rounded to integer (tolerance 0.5); 0 disables rounding. .TP \fB\-\-optimize\-cff\fR OPTIMIZE_CFF 0 disables all optimizations; 1 specializes the CFF charstring operators; 2 (default) also enables subroutinization .TP \fB\-\-subroutinizer\fR {compreffor,cffsubr} name of the library to use for compressing CFF charstrings. Choose between: compreffor, cffsubr. By default compreffor is used for CFF 1, and cffsubr for CFF2. NOTE: compreffor doesn't support CFF2. .TP \fB\-\-no\-optimize\-gvar\fR Do not perform IUP optimization on variable font's \&'gvar' table. (only works with 'variable' TrueTypeflavored output) .SS "Handling of OpenType Layout:" .TP \fB\-\-interpolate\-binary\-layout\fR [MASTER_DIR] Interpolate layout tables from compiled master binaries. Requires Glyphs or MutatorMath source. .TP \fB\-\-feature\-writer\fR CLASS string specifying a feature writer class to load, either built\-in or from an external module, optionally initialized with the given keyword arguments. The class and module names are separated by '::'. The option can be repeated multiple times for each writer class. A special value of 'None' will disable all automatic feature generation. The option overrides both the default ufo2ft writers and those specified in the UFO lib. .TP \fB\-\-debug\-feature\-file\fR FILE Path were to dump OpenType features text to debug auto\-generated features (kern, mark, mkmk, etc.). .TP \fB\-\-mti\-source\fR MTI_SOURCE mtiLib feature definition .plist file path (use instead of FEA) .SS "Logging arguments:" .TP \fB\-\-timing\fR Print the elapsed time for each steps .TP \fB\-\-verbose\fR LEVEL Configure the logger verbosity level. Choose between: DEBUG, INFO, WARNING, ERROR, CRITICAL. Default: INFO