max-systems-per-page?

Begonnen von ingmar, Montag, 12. Oktober 2020, 16:48

« vorheriges - nächstes »

ingmar

Hallo Freunde,


ich hab Schwierigkeiten mit max-systems-per-page. Das folgende Beispiel erzeugt sechs Zeilen Musik; die müssten wegen des \paper-Statements gleichmäßig verteilt werden. Werden sie aber nicht.

Erhöhe ich den unfold-Wert "33" auf z.B. "44", dann funktioniert es. – Ich hab den Eindruck, das Statement wird nur berücksichtigt, wenn (später) ein Seitenwechsel vorkommt, sonst wird es ignoriert. Es sollte aber auch dann Wirkung zeigen, wenn meine Musik nur 6, 5 oder 2 Zeilen hat.

Was tun? : - )

Danke,
--ingmar


\version "2.20.0"

music = \repeat unfold 33 { c8 d e f g e f d}

\book {
\paper {
max-systems-per-page = 6 }
\bookpart {
\score {
\new Staff {
\new Voice {
\music
}
}
}
}
}

Sebastian

#1
Hallo Ingmar,

spendiere in der paper-Section noch ein ragged-last-bottom = ##f, dann geht's auch auf einer Seite. (Eigentlich: auf der letzten Seite.)

\version "2.20.0"

music = \repeat unfold 33 { c8 d e f g e f d}

\book {
\paper {
max-systems-per-page = 6
indent = 0 % nicht nötig...
ragged-last-bottom = ##f
}
\bookpart {
\score {
\new Staff {
\new Voice {
\music
}
}
}
}
}


Gruß,
Sebastian

ingmar

Zitat von: Sebastian
spendiere in der paper-Section noch ein ragged-last-bottom = ##f
upps -  stimmt. Darauf hätte ich eigentlich kommen können!

Danke!
--ingmar

ingmar

Halt! Das funktioniert aber nur, wenn die Anzahl der benötigten Systeme identisch ist mit der in max-systems-per-page angegebenen Zahl. Wenn sie geringer ist, werden alle Systeme auf die gesamte Seite verteilt (du siehst das, wenn du den unfold-Wert auf 11 setzt:

\version "2.20.0"

music = \repeat unfold 11 { c8 d e f g e f d}

\book {
\paper {
max-systems-per-page = 6
indent = 0 % nicht nötig...
ragged-last-bottom = ##f
}
\bookpart {
\score {
\new Staff {
\new Voice {
\music
}
}
}
}
}

)

Auch wenn ich nur 5 Zeilen Musik habe, sollten diese Zeilen soviel Platz zwischen einander haben, wie wenn die Musik alle sechs Zeilen nutzt.

Zweitens: Ich muss das in einer Situation einsetzen, wo ich vorher nicht probieren kann, wieviele Zeilen meine Musik lang werden wird. Ich kann also nicht probieren und bei jeder Änderung wieder anderen Code einsetzen.

Ideen? : - )

Danke!
--ingmar

Sebastian

Zitat von: ingmar am Montag, 12. Oktober 2020, 18:35
Auch wenn ich nur 5 Zeilen Musik habe, sollten diese Zeilen soviel Platz zwischen einander haben, wie wenn die Musik alle sechs Zeilen nutzt.
Ich versuche zu verstehen: Du möchtest, egal wie viele Zeilen n (n < 6) Noten durch den Satz entstehen, diese so gleichmäßig auf der Seite verteilen, dass sechs Zeilen Platz hätten.

Das ruft nach festen Systemabständen - aber dann bin ich raus....

ingmar

Zitat von: Sebastian am Montag, 12. Oktober 2020, 19:05
Du möchtest, egal wie viele Zeilen n (n < 6) Noten durch den Satz entstehen, diese so gleichmäßig auf der Seite verteilen, dass sechs Zeilen Platz hätten.
Jepp, exakt.

Wenn ich keine Zeilenzahl vorgebe, macht die Anzahl der tatsächlich gedruckten Zeilen ja auch keinen Unterschied in deren Bild.

Zitat
Das ruft nach festen Systemabständen - aber dann bin ich raus....
Ich möchte eigentlich keinen festen Zeilenabstand. Ich vermute, es gibt einen Wert pad oder sowas, der festlegt, wieviel Puffer die Zeile normalerweise um sich herum anlegt, ehe die nächste kommen kann. Oft sind mir die Zeilen per Default ein wenig eng, das lässt bei Einzelstimmen zu wenig Raum für Fingersätze und sowas. Das ist besonders blöd, wenn dann unten auf der Seite wieder fünf Zentimeter Platz sind! Diesen (von mir vermuteten) pad-Wert zwischen den Systemen einer Einzelstimme, den möchte ich ansprechen. In der Doku finde ich beispielsweise default-staff-staff-spacing, aber das hat – innerhalb von \paper – keinen in meinem Fall sichtbaren Effekt.

Gruß,
--ingmar

Manuela

Danke für eure Hilfe
viele Grüße
-- Manuela

Arnold

Hallo Ingmar,

was Du suchst ist anscheinend keine Festlegung wie viele Systeme auf eine Seite kommen dürfen,
sondern eine Festlegung der Mindestabstände zwischen den Notenzeilen.
Abstände zu anderen Objektzeilen (z. Bsp. Liedtext) klammere ich jetzt aus.

In Notations-Handbuch der Version 2.20.0 findet man im Kapitel 4.1.4 »Flexible vertical spacing in \paper variables«:
system-system-spacing.basic-distance
system-system-spacing.minimum-distance
system-system-spacing.padding
system-system-spacing.stretchability

Und im Kapitel 4.4.1 »Flexible vertical spacing within systems« dann:
staff-staff-spacing
default-staff-staff-spacing
(diese gelten nur zwischen den Notenzeilen innerhalb eines Systems, z. Bsp. bei einer Klavier-Doppelzeile)

Auch ich müßte mich durch Versuche an für den Verwendungszweck passende Werte herantasten.

Arnold

ingmar

Zitat von: Arnold am Dienstag, 13. Oktober 2020, 09:24
was Du suchst ist anscheinend keine Festlegung wie viele Systeme auf eine Seite kommen dürfen,
sondern eine Festlegung der Mindestabstände zwischen den Notenzeilen.
Meine Rede...

ZitatIn Notations-Handbuch der Version 2.20.0 findet man im Kapitel 4.1.4 »Flexible vertical spacing in \paper variables«
ja, ich hatte die erfolglos ausprobiert. Das ist aber schon einige Zeit her. Danke fürs Insistieren, ich werde die nochmal systematisch durchgehen.

max-systems-per-page schien geeignet (und funktioniert ja bei längeren Sätzen), da bin ich dran hängen geblieben.

Danke,
--ingmar