La propietat stencil
(segell)
Aquesta propietat controla l’aparença de les barres de compàs
mitjançant l’especificació del símbol (o «glif») que s’ha
d’imprimir. Igual que com altres moltes propietats, es pot
establir de forma que no imprimeixi res ajustant el seu valor a
#f
. El provarem, com abans, ometent el Context implícit,
pVoice
:
\relative { \time 12/16 \override BarLine.stencil = ##f c''4 b8 c d16 c d8 | g,8 a16 b8 c d4 e16 | e8 }
Les barres de compàs encara s’imprimeixen. Què és el que està
malament? Torneu al RFI i mireu un altre cop la pàgina que
ofereix les propietats de l’objecte Barline. Al principi de la
pàgina diu “Barline objects are created by the following engraver(s): Bar_engraver” (els
objectes Barline es creen pel gravador Bar_engraver). Aneu a la
pàgina del gravador Bar_engraver
seguint l’enllaç. Al
final dóna una llista de contextos en els quals el gravador de
línies divisòries opera. Tots ells són del tipus Staff
, i
així la raó que l’ordre \override
no funcionés com
esperàvem, és perquè Barline
no es troba en el context
predeterminat Voice
. Si el context no s’especifica
correctament, l’ordre simplement no funciona. No es produeix cap
missatge d’error, i no es registra res al fitxer log de registre.
Intentarem corregir-lo escrivint el context correcte:
\relative { \time 12/16 \override Staff.BarLine.stencil = ##f c''4 b8 c d16 c d8 | g,8 a16 b8 c d4 e16 | e8 }
Ara les barres de compàs han desaparegut. L’operació d’establir la
propietat stencil
al valor #f
és tan freqüent que hi
ha una abreviatura per a ella, anomenada \omit
(ometre):
\relative { \time 12/16 \omit Staff.BarLine c''4 b8 c d16 c d8 | g,8 a16 b8 c d4 e16 | e8 }
Malgrat això, observeu que l’establiment de la propietat
stencil
al valor #f
produeix error quan es
requereixen les dimensions de l’objecte per un processament
correcte. Per exemple, es generen errors si la propietat
stencil
de l’objecte NoteHead
s’estableix al valor
#f
. Si és el cas, podem en comptes d’això utilitzar la
funció point-stencil
, que estableix el segell a un objecte
amb mida nul·la:
\relative { c''4 c \once \override NoteHead.stencil = #point-stencil c4 c }