Deutsches Lilypond Forum (Archiv)
Allgemein => Fragen zu Funktionen => Thema gestartet von: Pondus am Mittwoch, 23. November 2016, 11:34
-
Liebe LilyPonder!
Gerade habe ich eine Partitur mit Stimmenauszügen fertig gesetzt.
Für Stimmen benutze ich
#(set-global-staff-size 18)
für die Partitur
#(set-global-staff-size 15)
Nun gibt es folgendes Problem bei der Titelseite: Um diese einheitlich zu gestalten, verwende ich
\abs-fontsize
, so dass die Schriftgröße unabhängig von der globalen Systemgröße ist.
Wie aber ist es möglich, dass der vertikale Abstand
\vspace #20
in Partitur und Stimmen identisch ist?
(Natürlich könnte man set-global-staff-size zweimal in die globale Datei einfügen. Hieraus resultieren aber zwei PDF-Dateien. Wenn möglich, wäre es schön, dies zu umgehen.)
Danke Euch
Pondus
-
Hi,
ich denke, ohne ein kompilierbares Minimalbeispiel wirst du hier keine Antwort bekommen ;)
-
Hi,
ich denke, ohne ein kompilierbares Minimalbeispiel wirst du hier keine Antwort bekommen ;)
Stimmt! Daran soll es nicht scheitern :D
\version "2.18.2"
\include "deutsch.ly"
#(set-global-staff-size 20)
\book {
\bookpart {
\markup \fill-line {
\center-column {
\abs-fontsize #20 { "Test" }
\vspace #20
\abs-fontsize #20 { "Test" }
}
}
}
}
\version "2.18.2"
\include "deutsch.ly"
#(set-global-staff-size 10)
\book {
\bookpart {
\markup \fill-line {
\center-column {
\abs-fontsize #20 { "Test" }
\vspace #20
\abs-fontsize #20 { "Test" }
}
}
}
}
Im Beispiel also zwei Titelseiten. Trotz unterschiedlicher globaler Systemgrößen soll vspace absolut identisch sein, analog zu den absoluten Schriftgrößen von abs-fontsize.
Danke Euch im Voraus!
-
Hallo,
schau mal, ob es hilft vspace durch mm-vspace zu ersetzen.
#(define-markup-command (mm-vspace layout props amount)
(number?)
(let* ((amount (* amount 3.0)))
(ly:make-stencil
""
empty-interval
(cons 0 (* amount (ly:output-def-lookup layout 'mm))))))
Gruß,
Harm
-
Super, Harm! Obwohl ich schon seit einigen Jahren mit LilyPond arbeite, habe ich mich noch nicht mit eigenen commands beschäftigt.
Danke für Eure Hilfe!
Viele Grüße
Pondus
-
Hier noch ein code von Robin Bannister, der nicht mm als Hilfskrücke verwendet:
% By Robin Bannister. Replacement for vspace with absolute dimensions.
#(define-markup-command (mm-feed layout props amount) (number?)
(let ((o-s (ly:output-def-lookup layout 'output-scale)))
(ly:make-stencil "" '(0 . 0) (cons 0 (abs (/ amount o-s))))))
Ich hatte noch vage in Erinnerung, daß es ihn gibt und bin jetzt zufällig in anderem Zusammenhang drüber gestolpert.
Gruß,
Harm
-
Sehr praktisch! Danke Dir nochmals, Harm.
Grüße
Pondus