lilypond-user
[Top][All Lists]

## Re: Vertical spacing on big systems

 From: Michael Käppler Subject: Re: Vertical spacing on big systems Date: Mon, 15 Sep 2008 11:47:21 +0200 User-agent: Thunderbird 2.0.0.12 (X11/20071114)

```Hi Nicolas,
```
```I've collected some raw data about estimated extents and real ones one
various scores. I still have to study them, maybe a more suitable amount
of reserved space will emerge.
```
that would be nice... Maybe it's also possible to cook a patch that makes lilypond collect that information on his own after rendering each score, storing in it a file. So many users could take part in finding a more suitable amount. But nevertheless: Would it be - theoretically, not considering the amount of time to implement this - possible to get completely rid of this "estimate algorithm" to base page spacing only on real Y-extents? However, I'm not sure at this moment that the issue I'm experiencing is really about this "security spacing amount". I wonder since my patch (Maybe any other can have a look at it) doesn't change the problem, though there is enough space.
```
Cheers,
Michael

[CC to lilypond-devel]
```
```\version "2.11.58"

#(set-global-staff-size 16)

\paper {
annotate-spacing = ##t
ragged-last-bottom = ##f
ragged-bottom = ##f
paper-height = 279\mm
paper-width = 209\mm
top-margin = 10\mm
bottom-margin = 10\mm
left-margin = 10\mm
foot-separation = 7\mm
between-system-space = #0.1
#(define line-width (- paper-width (* 20 mm)))
oddFooterMarkup = \markup \fontsize #1 \fill-line { " " \on-the-fly
#print-page-number-check-first \fromproperty #'page:page-number-string }
evenFooterMarkup = \markup \fontsize #1 \fill-line { \on-the-fly
#print-page-number-check-first \fromproperty #'page:page-number-string " " }
}

tagline = ##f
}

csI = \relative c'' {
\time 4/2
\key c \major
b1. d2
d1 d,2. d4
e1 r
R1*4/2*1
g1. g2
g g a b
a g a b
a g fis g
a b a4 \melisma g a b
c2. a2 gis4 \melismaEnd a2
}

cantusI = {
\clef treble
<<
\csI
>>
}

cantusIlyrics = \lyricmode {
Hes -- pe -- re Hes -- pe -- re
Hes -- pe -- re qui cae -- lo lu -- cet qui cae -- lo lu -- cet qui cae -- lo
lu -- cet
}

csII = \relative c'' {
\key c \major
R1*4/2*5
r1 %
r2 d1 b2
r d2. d8 d d4 d
d d d1 b2
r d c f
e a,8 [b c] \melisma a
}

cantusII = {
\clef treble
<<
\csII
>>
}

cantusIIlyrics = \lyricmode {
Hy -- men, o Hy -- me -- nae -- e hy -- men ad -- es
o Hy -- me -- nae -- e
}

asI = \relative c' {
\key c \major
d1. b2
a1 b2. b4
c\breve
R1*4/2*1
g1 g
g2. g'4 fis2 g
d \melisma g, d' \melismaEnd b
R1*4/2*1
r2 g' e f
g f r1
}

altusI = {
\clef treble
<<
\asI
>>
}

altusIlyrics = \lyricmode {
Hes -- pe -- re Hes -- pe -- re
Hes -- pe -- re qui cae -- lo lu -- cet qui cae -- lo lu -- cet
}

asII = \relative c'' {
\key c \major
g1. g2
fis1 g2. g4
g1 r2 c,1
d2 d1
e1. e2
d\breve
r2 g fis g
d g, a b
a g r1
R1*4/2*1
}

altusII = {
\clef treble
<<
\asII
>>
}

altusIIlyrics = \lyricmode {
Hes -- pe -- re Hes -- pe -- re
Hes -- pe -- re Hes -- pe -- re
qui cae-- lo lu -- cet cae -- lo lu -- cet
}

trI = \relative c' {
\key c \major
g1. g2
d\breve % kÃ¶nnte auch c sein
r2 g2. g4 a2
g b a2. \melisma b
c2 \melismaEnd c1 c2
b r2 g
a b a g
a b a g
d'1 r
r r2 e
}

tenorI = {
\clef "treble_8"
<<
\trI
>>
}

tenorIlyrics = \lyricmode {
Hes -- pe -- re Hes -- pe -- re Hes -- pe -- re Hes -- pe -- re
qui cae -- lo lu -- cet qui cae -- lo lu -- cet
}

tenorII = {
\clef "treble_8"
<<
\transpose c' c \csII
>>
}

bsI = \relative c {
\key c \major
R1*4/2*1
r1 g2. g4
c2 c2. c4 f,2
c' g d'1
c2. \melisma d4 \melismaEnd e2. \melisma c4 \melismaEnd
d1 r
r r2 g
fis g d g,
R1*4/2*2
}

bassusI = {
\clef bass
<<
\bsI
>>
}

bassusIlyrics = \lyricmode {
Hes -- pe -- re Hes -- pe -- re Hes -- pe -- re Hes -- pe -- re
qui cae -- lo lu -- cet qui cae -- lo lu -- cet
}

bsII = \relative c' {
\key c \major
R1*4/2*1
r1 g2. g4
g2 e2. e4 f2
e8 \melisma d \melismaEnd e \melisma c \melismaEnd g'2. \melisma f8 [e] f4 g
\melismaEnd
e1 c
g r2 g'
fis g d g,
r1 r2 g'
fis g a d,
R1*4/2*1
}

bassusII = {
\clef bass
<<
\bsII
>>
}

bassusIIlyrics = \lyricmode {
Hes -- pe -- re Hes -- pe -- re Hes -- pe -- re Hes -- pe -- re
qui cae -- lo lu -- cet qui cae -- lo lu -- cet
}

\score {
<<
\new Voice = "cantusII" \cantusII
\new Lyrics \lyricsto cantusII \cantusIIlyrics
\new Voice = "cantusI" \cantusI
\new Lyrics \lyricsto cantusI \cantusIlyrics
\new Voice = "altusII" \altusII
\new Lyrics \lyricsto altusII \altusIIlyrics
\new Voice = "altusI" \altusI
\new Lyrics \lyricsto altusI \altusIlyrics
\new Voice = "tenorII" \tenorII
\new Lyrics \lyricsto tenorII \cantusIIlyrics
\new Voice = "tenorI" \tenorI
\new Lyrics \lyricsto tenorI \tenorIlyrics
\new Voice = "bassusII" \bassusII
\new Lyrics \lyricsto bassusII \bassusIIlyrics
\new Voice = "bassusI" \bassusI
\new Lyrics \lyricsto bassusI \bassusIlyrics
>>
\layout {
\context {
\Score
autoBeaming = ##f
}
\context {
\Lyrics
\override LyricText #'font-size = #0
\override VerticalAxisGroup #'minimum-Y-extent = #'(-0.75 . 1.0)
}
\context {
\Staff
\override VerticalAxisGroup #'minimum-Y-extent = #'(-3 . 3)
}
}
}
```
```--- layout-page-layout.scm      2008-09-15 11:39:32.000000000 +0200
+++ layout-page-layout-new.scm  2008-09-15 11:40:36.000000000 +0200
@@ -85,10 +85,9 @@
; the system heights are estimated, we aren't using skyline distances
; yet, etc. If we overstretch because of underestimation, the result
; is very bad. So we stick in some extra space, just to be sure.
-        (buffer (/ height 10.0))
(total-system-height (+ (apply + (map height-estimate systems))