Fontmake

Latest version: v3.9.0

Safety actively analyzes 629678 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 26 of 30

1.7.0

- Added new option `--overlaps-backend` that allows to optionally specify "pathops" instead of the default "booleanOperations" as the backend for the ufo2ft RemoveOverlapsFilter.
Install fontmake as `fontmake[pathops]` to enable support for this, or install skia-pathops separately if you prefer.
- Added new option `--validate-ufo` to enable ufoLib validation upon reading and writing UFOs. It is disabled by default for marginally better speed.
- You can install as `fontmake[lxml]` (or install lxml yourself) to enable faster UFO reading/writing using the latest ufoLib.
- NOTE: You can specify multiple extras at the same time within the square brackets, e.g. `pip install --upgrade fontmake[pathops,lxml]`
- Updated minimum installation requirements:

* glyphsLib >= 3.0.3
* ufo2ft >= 2.2.0
* defcon >= 0.5.2

1.6.7

- glyphsLib >= 5.1.6

1.6.1

Fixed a regression whereby `--keep-overlaps`, `--keep-direction` and `--conversion-error` options were being ignored instead of passed on to the ufo2ft compiler (7eb44b48).

1.6.0

- Support new lib key for the "Keep Glyphs" custom parameter introduced since glyphsLib 2.3 (446).
- Don't generate default kern/mark/mkmk feaures when `--interpolate-layout` option is passed, as they will be overwritten by the interpolated GPOS.
- Bumped minimum requirements:
* fonttools >= 3.28.0
+ Fixed an issue in varLib's model resolution algorithm
+ It now uses a new rounding function better suited for visual data such as coordinates, advances, deltas, etc.
* ufo2ft >= 2.1.0
+ Fixed issue when hhea/vhea metrics contain float values which need to be rounded to integers
* glyphsLib >= 2.4.0
+ Fixed regression in the generated `designspace.filename` when a custom `--family-name` is provided that could lead to fontmake outputs overwriting each other
+ Added support for "Reencode Glyphs" instance custom parameter.

Please consult the respective changelogs for the full list of changes.

1.5.1

- Correctly handle "Keep Glyphs" custom parameter when subsetting the font: the global list always has priority over individual glyph export flags (381).
- Fixed incorrect subsetting when the UFO glyphOrder and the built TTFont objects's glyph order don't align (e.g. ".notdef" glyph not in the first position) (443, 444).
- In `FDKFeatureCompiler`, check makeotf exit code to determine whether build was successful.

1.5.0

Features

- It is now possible to build a specific instance or instances with the `-i/--interpolate` option. This takes an optional regular expression that is matched against the instance "name" attribute in the designspace document.
E.g.: `-I "Noto Sans Bold"`; or `-I ".* UI Condensed"` (410).
- Added `--designspace-path` option to tell fontmake where to save the designspace file generated by glyphsLib (410).
- Added `--master-dir` and `--instance-dir` options to control where to save the UFOs generated when the input is a .glyphs file. These options also accept a special string `{tmp}` which to save the UFOs in a temporary directory, cleaned up automatically after the binary fonts are built (423).
- Added two new mutually exclusive options: `--output-path`, for when the output is a single file (e.g. a variable font, or a single static font), and `--output-dir`, which can be used for any sorts of outputs. The folder is created if it doesn't already exist (422).
- The `--interpolate-binary-layout` option now takes an optional argument to customize the location of the binary masters used to interpolate the GPOS table using varLib (422).
- Decomposing glyphs, removing overlaps, and converting curves to quadratic are now performed by ufo2ft preprocessor filters. The output produced is the same. The `FontProject` class methods `decompose_glyphs`, `remove_overlaps` and `conver_curves` are deprecated and will be dropped later (440).
- Added `--cff-round-tolerance` option to control rounding of float coordinates in CFF table (440).
- The `--kern-writer-class` and `--mark-writer-class` options were removed, and replaced with a generic `--feature-writer` option, which allows to load any ufo2ft (or compatible) feature writer class. Note that ufo2ft now also allows to store these feature writers' specifications inside the UFO lib. The fontmake command-line option overrides both the default ufo2ft writers and those stored in the UFO lib.
- `fontTools.designspaceLib` is now used to parse the input designspace file. The current version removes any kind of guessing about the axes and requires the presence of an explicit `<axes>` element, containing a list of `<axis>` sub-elements, each defining the axis name, tag, minimum, default and maximum location, and optional `<map>` sub-elements. The default master is expected at the intersection of all default values for each axis.
- fontmake's internal UFO to OTF compiler `ufo2ft` was updated to version 2.0, and includes a long list of new features and bugfixes, which transitively benefit fontmake as well. Read the full changelog here:

Page 26 of 30

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.