[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Forcing a DynamicText to appear inside the staff
From: |
Richard Shann |
Subject: |
Re: Forcing a DynamicText to appear inside the staff |
Date: |
Thu, 11 Aug 2016 12:12:35 +0100 |
On Thu, 2016-08-11 at 12:34 +0200, David Kastrup wrote:
> Richard Shann <address@hidden> writes:
>
[...]
> extra-offset is a last-minute measure after all positioning and
> collision avoidance has already been done. So whenever the positioned
> idea of \f is moved in order to avoid a collision due to new elements
> appearing, the extra-offsetted actual \f moves along. extra-offset is a
> blind brute-force control. It most reliably does what you ask of it,
> but it does not notice when the given task/offset stops making sense.
>
Thank you very much for this. It took me a while to understand what you
were saying, but I then could construct the following illustration
(which others might find useful).
In the first two scores the f is positioned by the two methods, in the
second two the note it is attached to is moved, and only the first
method leaves the f in the desired position.
8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><
\version "2.19.43"
{
\override Staff.DynamicLineSpanner #'outside-staff-priority = ##f
\override Staff.DynamicText #'X-offset = 4
\override Staff.DynamicLineSpanner #'Y-offset = 0
c'
\f d' e f
}
{
c'
-\tweak #'extra-offset #'(4 . 5)
\f d' e f
}
{
\override Staff.DynamicLineSpanner #'outside-staff-priority = ##f
\override Staff.DynamicText #'X-offset = 4
\override Staff.DynamicLineSpanner #'Y-offset = 0
c
\f d' e f
}
{
c
-\tweak #'extra-offset #'(4 . 5)
\f d' e f
}
8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><8><
Richard