• Willkommen im Forum „Archiviertes Lilypond Forum (2017)“.
 

Dies ist das Archiv des alten Forums (bis März 2017). Das aktuelle Forum ist unter lilypondforum.de zu finden.
This is the archive of the old forum (until March 2017). You can find the current forum at lilypondforum.de.

Hauptmenü

Absolute Angabe für vspace

Begonnen von Pondus, Mittwoch, 23. November 2016, 11:34

Vorheriges Thema - Nächstes Thema

Pondus

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

Manuela

Hi,

ich denke, ohne ein kompilierbares Minimalbeispiel wirst du hier keine Antwort bekommen  ;)

Pondus

Zitat von: Manuela am Mittwoch, 23. November 2016, 15:19
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!

harm6

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

Pondus

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

harm6

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

Pondus

Sehr praktisch! Danke Dir nochmals, Harm.

Grüße
Pondus