Repository navigation
1.9.1
Stems join their noteheads cleanly.
A rendering fix. 1.9.0 drew each stem with its centreline on the notehead's edge, hung
flags from the stem's centreline, and stopped beams at the outer stems' centrelines, so
every join showed a step. No API changes.
Stems, flags and beams use the SMuFL anchors (#181)
Bravura says where a stem meets its notehead and where a flag meets its stem, in the
anchors of bravura_metadata.json. CeolKit parsed them but never read them. Now:
- A stem's outer corner sits on the notehead's
stemUpSE/stemDownNWanchor: its
centreline is half a stem inside the notehead's edge, and it starts 0.168 sp off the
notehead's centre. Stem tips do not move. - A flag is placed by its
stemUpNW/stemDownSWanchor against the stem's left edge at
its tip. - A beam, beam stub or grace beam runs from the outer edge of its first stem to the outer
edge of its last. - Grace notes follow the same anchors at grace scale, and grace stems are drawn at
grace-scaled thickness so they meet the grace flag's stem cap without a notch. The
acciaccatura slash is unchanged, and so is the width of a grace group.
Where a font lacks an anchor, the renderer falls back to the old bounding-box geometry.
What's Changed
- Fix #181 — stems, flags and beams attach at the SMuFL anchors by @sbeitzel in #182
- Release 1.9.1 by @sbeitzel in #183
Full Changelog: v1.9.0...v1.9.1
Upgrading
Source-compatible with 1.9.0.
Engraved output changes for every tune with stems: the stem and beam lines and the flag
positions move by fractions of a staff space. Note spacing is unchanged except after a
single flagged grace note, where the gap allowed for the flag's overhang is recomputed from
the flag's new position.