smallpond

Unnamed repository; edit this file 'description' to name the repository.
git clone git://git.nihaljere.xyz/smallpond
Log | Files | Refs

commit 682b750f55ebb00edadf11a45574795189785651
parent 4432c14059881c8f0da83e435b46ba24be60e4e7
Author: Nihal Jere <nihal@nihaljere.xyz>
Date:   Sat,  1 Oct 2022 14:30:30 -0500

take glyph extents into account when calculating staff extents

Diffstat:
Msmallpond.lua | 14++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/smallpond.lua b/smallpond.lua @@ -489,8 +489,18 @@ for _, staff in pairs(stafforder) do extents[staff] = {xmin=0, ymin=0, xmax=0, ymax=0} for i, d in ipairs(items) do if d.kind == "glyph" then - -- TODO - local w, h = glyph_extents(glyph) + local w, h = glyph_extents(d.glyph) + if d.x - w < extents[staff].xmin then + extents[staff].xmin = d.x - w + elseif d.x + w > extents[staff].xmax then + extents[staff].xmax = d.x + w + end + + if d.y - h < extents[staff].ymin then + extents[staff].ymin = d.y - h + elseif d.y + h > extents[staff].ymax then + extents[staff].ymax = d.y + h + end elseif d.kind == "line" then if d.x1 < extents[staff].xmin then extents[staff].xmin = d.x1