Skip to content

Releases: fonttools/ufoLib2

v0.8.0

03 Jun 10:20
v0.8.0
e9a5c5d
Compare
Choose a tag to compare
  • Added bounds and controlPointBounds properties to Layer and Font objects, like in defcon API.
    These return the union of the (xMin, yMin, xMax, yMax) bounding boxes of all the glyphs in a layer, or in the default layer for Font object.
    boundscomputes a tight bounding box at the curves' extrema, while controlPointBounds only takes into account the control points (#82).

v0.7.1

05 May 15:53
b5e5f0c
Compare
Choose a tag to compare

Font.guidelines setter should clear existing guidelines first (fixes #70)

v0.7.0

29 Apr 18:38
v0.7.0
b4a88ff
Compare
Choose a tag to compare
  • Added extensive type annotations throughout the codebase. These are also available to client code that uses static type checking, as long as they use mypy or a type checker that supports PEP 561 (#73).
  • Build API documentation from inline docstrings using Sphinx.
    This is uploaded automatically on ReadTheDocs at https://ufolib2.readthedocs.io/

v0.6.3a1

01 Apr 15:23
c6124d3
Compare
Choose a tag to compare

Testing new GitHub Actions...

v0.6.2

13 Mar 16:32
v0.6.2
7572a60
Compare
Choose a tag to compare
  • [LayerSet] load lazy layers from disk before renaming in renameLayer method, or returning them from get method. Fixed bug in LayerSet.renameGlyph.

v0.6.1

21 Feb 19:29
v0.6.1
9b69d21
Compare
Choose a tag to compare

Also added getBounds and getControlBounds methods to Contour and Component classes. They work the same way as with Glyph object (#54)
A layer parameter is required to compute the bounds of a component, to resolve references to the component's base glyphs.

v0.6.0

21 Feb 18:14
v0.6.0
83ffcf5
Compare
Choose a tag to compare
  • Support constructing a Font object from a path positional argument, like defcon.Font(path) does (#47).
    This is to ease up projects that wish to support both defcon and ufoLib2.
    If defcon compatibility is not a concern we strongly recommend to use the alternative Font.open @classmethod constructor, as we believe it's more idiomatic and better suits the overall data-classes approach in ufoLib2.
  • Support comparing for equality and deep-copying Font objects even when loaded with lazy=True (#47).
  • Added Glyph.appendContour, similarly for defcon compatibility (#48).
  • Make Glyph.name optional, like in defcon (#51).
  • Added methods to compute bounds and get/set left, right, top and bottom side-bearings (#22, #52, #53).
    This time we could not match defcon API, because our Glyph object does not (by design) hold a back-reference to its parent Layer; thus we cannot use @property getter/setter methods like defcon's leftMargin, etc. but need the caller to pass as a parameter the glyphset from which to resolve component references for computing bounding box of composite glyphs.

v0.5.1

22 Nov 11:49
v0.5.1
9bb31e1
Compare
Choose a tag to compare
  • Fixed GaspBehavior enumerated bits (#44).

v0.5.0

06 Nov 13:05
efdbbee
Compare
Choose a tag to compare

Added methods to copy Glyph objects (#39).

v0.4.1

22 Oct 14:29
85e5764
Compare
Choose a tag to compare

Made lxml an optional requirement.