我正在尝试在一个盛大的上层员工之上添加一个ossia员工 员工。在this mailing list post工作,我有 构建了一个几乎做我想要的最小例子。该 问题是整个分数包含ossia的空白区域 工作人员,即使在没有ossia的系统中也是如此。
这是一个例子(真的,一个悠扬的构图):
\version "2.18.2"
ossia = \new Staff = "ossia" \with {
\remove "Time_signature_engraver"
fontSize = #-2
\override StaffSymbol #'staff-space = #(magstep -2)
\override Clef #'transparent = ##t
\override KeySignature #'stencil = ##f
} {
\key b \major
\override Staff.BarLine #'allow-span-bar = ##f
\stopStaff
s2.*100 % ???
}
treble = \new Staff = "treble" {
\clef treble
\key b \major
\relative c' {
\repeat unfold 10 { b8 cis dis fis dis cis }
b4 dis fis |
b4
<<
{ dis, fis }
\context Staff = "ossia" {
\startStaff \tuplet 3/2 { dis8 b dis } fis4 \stopStaff
}
>> |
b2. |
}
}
bass = \new Staff = "bass" {
\clef bass
\key b \major
\relative c {
\repeat unfold 12 { fis,4 fis4 fis4 | }
b2.
}
}
pianoStaff = \new PianoStaff {
\compressFullBarRests
\time 3/4
<<
\ossia
\treble
\bass
>>
}
\paper {
#(set-paper-size "letter")
indent = 25\mm
short-indent = 5\mm
}
\score {
<< \pianoStaff >>
% This changes nothing:
% \layout { \context { \Staff \RemoveEmptyStaves } }
}
Here is the output (PNG image, 85 KB).
需要注意一些有趣的事情:
如果我在第13行(标记为s2.*100
)删除% ???
,或更改
ossia工作人员提出的价值小于12
完全不正确。它出现在低音谱号下方,包括
谱号和时间签名,并且在C的键中(即,渲染的
笔记包括意外)。基本上,它似乎没有成功
注意ossia
员工存在并构建了一个全新的
一。我怀疑这是因为ossia工作人员应该这样做
延伸到使用它的每个点 - 即,当切换人员时
上下文,人们可以及时回归&#34;但没有前进。我不是真的
明白这一点,但我可以忍受它,因为它似乎没有
只要启用\compressFullBarRests
,就会产生内在效果。
我已将纸张尺寸包含在MWE中以强制保持一致 不同系统的尺寸。
正如我在分数中所述,添加\RemoveEmptyStaves
并未删除
空的五线谱。
我的问题是:如何让ossia员工保持原样 这个例子(小和高音谱号之上)没有添加 所有以前系统上的空白区域?
答案 0 :(得分:1)
\ RemoveEmptyStaves无效,因为谱表位于PianoStaff中,因此您必须将\remove "Keep_alive_together_engraver"
添加到\ layout块。这是一个略微修改的文档片段的最小示例:
\version "2.18.2"
\new PianoStaff
<<
\new Staff = "ossia" \with {
\remove "Time_signature_engraver"
\hide Clef
fontSize = #-3
\override StaffSymbol.staff-space = #(magstep -3)
\override StaffSymbol.thickness = #(magstep -3)
} \relative c'' {
R1*3
c4 e8 d c2
}
\new Staff \relative c' {
c4 b c2
e4 f e2
g4 a g2 \break
c4 b c2
g4 a g2
e4 d c2
}
>>
\layout {
\context {
\Staff \RemoveEmptyStaves
\override VerticalAxisGroup.remove-first = ##t
}
\context {
\PianoStaff
\remove "Keep_alive_together_engraver"
}
}
你的例子很大,不是真正的MWE。 s2.*100
对我没有任何意义。我建议你提交一个较小的例子。