[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Reducing top margin for a single page in a score
From: |
Aaron Hill |
Subject: |
Re: Reducing top margin for a single page in a score |
Date: |
Mon, 04 Feb 2019 03:36:59 -0800 |
User-agent: |
Roundcube Webmail/1.3.8 |
On 2019-02-03 9:40 pm, Andrew Bernard wrote:
I am doing a long string quartet. The full score sits nicely in the
middle
of an A4 landscape page with a generous top margin. But there's a solo
viola part that's very dense and the staves fill out the whole page
very
tightly right to the bottom, and it looks clumsy because there is lots
of
space at the top margin not able to be utilised.
Is it possible to alter the top margin for just a single page in the
midst
of a score where it is otherwise OK?
It is my understanding that the \paper settings apply at the \book (or
\bookpart) level. You cannot set them per \score, much less set them
within a \score. Consider:
%%%%
\version "2.19.82"
\paper { #(set-paper-size "a7landscape") indent = 0 tagline = ##f }
%% This will not work. Only the second \paper setting will apply.
\paper { top-margin = 2.5\cm }
\score { \repeat unfold 8 { c'4 d e f } }
\paper { top-margin = 0.5\cm }
\score { \repeat unfold 8 { c'4 d e f } }
%% This will work, as each \bookpart can have unique \paper blocks.
\bookpart {
\paper { top-margin = 2.5\cm }
\score { \repeat unfold 8 { c'4 d e f } }
}
\bookpart {
\paper { top-margin = 0.5\cm }
\score { \repeat unfold 8 { c'4 d e f } }
}
%%%%
The way I would approach solving this is using the stretchability
feature to automatically divide the excess space on a page between the
top and bottom, effectively centering the content vertically.
%%%%
\version "2.19.82"
\paper {
#(set-paper-size "a6landscape")
indent = 0 tagline = ##f
top-markup-spacing.stretchability = 10
top-system-spacing.stretchability = 10
markup-system-spacing.stretchability = 1
system-system-spacing.stretchability = 1
last-bottom-spacing.stretchability = 10
}
\repeat unfold 8 { c'4 d' e' f' } \pageBreak
\repeat unfold 16 { c'4 d' e' f' } \pageBreak
\markup "Lorem ipsum dolor sit amet, consectetur adipiscing elit."
\repeat unfold 8 { c'4 d' e' f' }
%%%%
Note that when you have top-level markup at the beginning of a page, it
will be combination of top-markup-spacing and markup-system-spacing that
decides where the first system will fall. Otherwise, top-system-spacing
applies when the system is first.
-- Aaron Hill