Disposició personalitzada de capçaleres i peus de pàgina
Les ordres \markup
dins del bloc \header
són
d’utilitat per donar format al text d’una manera senzilla, però no
permeten un control precís sobre la col·locació de les capçaleres
i els peus de pàgina. Per personalitzar la col·locació dels camps
de text, useu una o més de les següents variables de \paper
:
-
oddHeaderMarkup
(marcatge d’encapçalament imparell) -
evenHeaderMarkup
(marcatge d’encapçalament parell) -
oddFooterMarkup
(marcatge de peu de pàgina imparell) -
evenFooterMarkup
(marcatge de peu de pàgina parell)
L’ordre de marcatge \on-the-fly
es pot utilitzar per afegir
elements de forma condicional al text d’encapçalament i peu de
pàgina definit dins del bloc \paper
, usant la sintaxi següent:
variable = \markup { … \on-the-fly \procediment marcatge … }
El procediment es crida cada cop que s’avalua l’ordre
\markup
en el qual apareix. El procediment hauria de
comprovar si es compleix una condició determinada i interpretar
(és a dir: gravar) l’argument marcatge si, i sols si, la
condició és vertadera.
Es proveeixen un cert nombre de procediments ja fets per a la comprovació de diverses condicions:
Nom del procediment Condició que es comprova print-page-number-check-first s’hauria d’imprimir aquest número de pàgina? create-page-number-stencil és print-page-numbers vertader? print-all-headers és print-all-headers vertader? first-page és la primera pàgina del llibre? not-first-page no es la primera pàgina del llibre? (on-page num) és el número de pàgina = num? last-page és l’última pàgina del llibre? part-first-page és la primera pàgina de la part de llibre? not-part-first-page no es la primera pàgina de la part de llibre? part-last-page és l’última pàgina de la part de llibre? not-single-page és el nombre de pàgines en la part de llibre més gran que 1?
L’exemple següent centra els números de pàgina en la part baixa de
les pàgines. En primer lloc, els ajustaments predeterminats per a
oddHeaderMarkup
i evenHeaderMarkup
s’eliminen
definint-los com un marcatge nul. Després d’això, es defineix
oddFooterMarkup
amb el número de pàgina centrat.
Finalment, evenFooterMarkup
rep la mateixa disposició
definint-la com \oddFooterMarkup
:
\book { \paper { print-page-number = ##t print-first-page-number = ##t oddHeaderMarkup = \markup \null evenHeaderMarkup = \markup \null oddFooterMarkup = \markup { \fill-line { \if \should-print-page-number \fromproperty #'page:page-number-string } } evenFooterMarkup = \oddFooterMarkup } \score { \new Staff { s1 \break s1 \break s1 } } }
Es poden combinar diverses condicions de \on-the-fly
amb un
operador ‘and’, per exemple:
\if \on-first-page
\if \on-last-page
{ \markup … \fromproperty #'header: … }
determina si la sortida és una sola pàgina.
Vegeu també
Referència de la notació: Explicació dels títols, Presentació predeterminada dels títols de parts de llibre i partitura.
Fitxers instal·lats: ../ly/titling-init.ly.