[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

GSOC: change XY-extent to outer-XY-extent and inner-XY-extent (design -

From: Janek Warchoł
Subject: GSOC: change XY-extent to outer-XY-extent and inner-XY-extent (design - feedback requested)
Date: Mon, 18 Jun 2012 12:12:57 +0200

Hi all,

Summary: see attached explanation.png.

I've noticed problems with aligning grobs and markups correctly: issue
2451 (, issue
2452 (; there
are serious problems with markups (example attached) and other things.

The core of the problem is that XY-extents are currently related to
graphical size, not to the logical outlines.  I suggest that we change
this to have "outer" and "inner" extents; outer extents will contain
whole object and inner extents will contain only the part "which
matters".  This is a generalization of my idea for lyrics
(; see
attached explanation.png if you haven't already.

Implementing this will provide a solution to 2451, 2452, 2461, help
with 2456, allow good placement of custom dynamic signs ("subito p",
"p espressivo" etc), help with correct alignment of clef ottavation,
and allow some more interesting stuff.

My questions are:
1) what the names should be?  There are many combinations, for example
XY-extent for outer outline and XY-core-extent for inner outline.
Other possibilities include: outer-XY-extent, inner-XY-extent,
XY-extent-graphical, XY-extent-logical, etc.  I'd like the names to be
self-explanatory and easy to manipulate in scripts.

2) how to add this without interfering with existing codebase too
much?  "Migrating" everything to new system will take a lot of time;
i'd like to be able to use new possibilities fast to solve lyric
issues and finish the migration later.  Should i leave XY-extent alone
for a while and just add new properties, which will default to
XY-extents and be calculated separately only in the special cases when
i need them?

I'm looking forward to reading your suggestions,

Attachment: explanation.png
Description: PNG image

Description: Binary data

reply via email to

[Prev in Thread] Current Thread [Next in Thread]