Notengröße und Schriftgröße separat ändern

Begonnen von kartoffel, Dienstag, 2. Januar 2018, 13:14

« vorheriges - nächstes »

kartoffel

Hallo,

ist es möglich global die Größe der Notensysteme (und alles was damit zusammenhängt) zu ändern ohne dabei die Größe sämtlicher anderer Texte (Lyrics, Titel, Inhaltsverzeichnis) zu ändern?

Was ich bisher gefunden habe:
* Mit %#(set-global-staff-size 12) kann ich die Größe der Notensysteme anpassen. Dabei werden auch sämtliche Schriftgrößen geändert.
* Mit \override LyricText.font-size = #2 kann ich die Schriftgröße der Lyrics anpassen

Allerdings fehlt mir eine Funktion um die anderen Schriften global anzupassen.

Bisher fällt mir nur ein die Schrift für jedes Element einzeln anzupassen, also alle Titel, Seitenzahlen, Copyright, Inhaltsverzeichnis, sonstige globale \markups usw.

Kennt jemand einen besseren Weg?

Kontext:
Ich versuche ein Notenheftchen mit Lilypond zu schreiben. Das Heft soll in DIN-A6 gedruckt werden, daher habe ich nicht viel Platz auf jeder Seite.
Es sollen eine Melodiestimme zusammen mit dem Text der ersten Strophe und darunter die restlichen Strophen als einfacher Text gedruckt werden.
Insgesammt wird das Heft ca 20-30 kurze Lieder enthalten.
In der Standarteinstellung (staff-size 20) sind mir die Notensysteme viel zu groß, es passen oft nur 1-2 Takte in eine Zeile. Da die Melodie eher nur zur Orientierung dient, kann diese klein gedruckt werden. Gleichzeitig soll der Text aber lesbar bleiben.

Minimal Beispiel:

\version "2.18.2"
#(set-global-staff-size 12)

\paper {
  #(set-paper-size "a6")
}

\layout {
  \override LyricText.font-size = #4
}


\book {
  \header {
    title = "Titel Beispiel"
    copyright = "Kartoffel 2018"
  }

  \markuplist \table-of-contents

  \pageBreak
 
 
  % NÄCHSTER
 
  \tocItem \markup "Nächster Titel"
  \score {
  <<
    {
    \key c \major
    \relative {
      c'4 c'4 c'4
    }
    }
   
    \addlyrics {
      do do do
    }
    >>
    \header {
      piece = "Nächster Titel"
    }
  }
  \markup {
    \line {
      \bold "2."
      \justify {
        re mi fa
      }
    }
  }
}



Malte

Hallo kartoffel,

willkommen im Forum!

Das einfachste wird vermutlich sein, nicht alle Texte anzupassen, sondern die Größe der Notensysteme. In LilyPond 2.19.xx gibts dafür den Befehl \magnifyStaff, aber auch in 2.18.2 läßt sich was machen. Packe den folgenden Code in den \layout-Block, dann wirkt sich die Verkleinerung auf alle Notensysteme (Staff) gleichzeitig aus.

  \context {
    \Staff
    %%% Für 2.19.80:
    % \magnifyStaff #(magstep -3)
    %%% Für 2.18.2:
    fontSize = -3
    \override StaffSymbol.staff-space = #(magstep -3)
    \override StaffSymbol.thickness = #(magstep -3)
  }

Manuela

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

kartoffel

Hallo,

ausgezeichnete Lösung! Vielen Dank für die schnelle Hilfe.

Für zukünftige Leser möchte ich noch hinzufügen, dass ich auch den Abstand der Systeme angepasst habe um eine ausgewogene Darstellung zu bekommen:

\paper {
  system-system-spacing =
    #'((basic-distance . 8)
       (minimum-distance . 5)
       (padding . 0.5)
       (stretchability . 60)) % defaults: 12, 8, 1, 60
}