[ << スペースの問題 ] | [トップ][目次][インデックス][ ? ] | [ デフォルトを変更する >> ] | ||
[ < 最適改ページ ] | [ 上へ : 改行/改ページ ] | [ 最小改ページ > ] |
4.3.4 最適ページめくり
しばしば、2 枚目のページ (横書きの本を開いたときの右側のページ) の終わりに休符を置くための改ページ構成が必要になります。こうすることで、演奏者は音符を見失うことなくページをめくることができます。ly:page-turn-breaking
関数はページの混み合いや広がりすぎを最小にする改ページを見つけ出そうと試みますが、ページめくりを特定の場所だけに置くための制約を受けます。
この改ページ関数を使うには、2 つのステップがあります。最初に、改ページ で説明されているように、\paper
ブロックの中でこの関数を有効にする必要があります。次に、この関数に改ページを許可したい場所を教える必要があります。
2 番目のステップを達成するには、2 つの方法があります。1 つ目の方法では、入力ファイルの適当な場所に \allowPageTurn
を挿入することによって、潜在的なページめくりを手動で指定します。
この方法では手間がかかりすぎる場合は、Page_turn_engraver
を
Staff
あるいは Voice
コンテキストに追加します。Page_turn_engraver
はコンテキストをスキャンして音符の無いセクションを探します
(休符を探すわけではなく、音符の無い部分を探すということに注意してください。単一譜の多声で、ボイスの 1 つが休符を持つ場合に、Page_turn_engraver
に渡されないようにするためです。)
Page_turn_engraver
は音符を持たない十分に長いセクションを見つけると、‘特殊な’ 小節線 (2 重小節線など) がないかぎりは、そのセクションの最後の小節線のところに \allowPageTurn
を挿入します。
Page_turn_engraver
はコンテキスト プロパティ minimumPageTurnLength
を読み込んで、どれくらい音符が無いセクションが続いたらページめくりを考慮するかを決定します。minimumPageTurnLength
のデフォルト値は
(ly:make-moment 1/1)
です。ページめくりを不可にしたいのならば、minimumPageTurnLength
に非常に大きな値をセットします。
\new Staff \with { \consists "Page_turn_engraver" } { a4 b c d | R1 | % ここでページめくりが許可されます a4 b c d | \set Staff.minimumPageTurnLength = #(ly:make-moment 5/2) R1 | % ここではページめくりは許可されません a4 b r2 | R1*2 | % ここでページめくりが許可されます a1 }
Page_turn_engraver
は volta 繰り返しを検出します。繰り返しの開始と終わりにページめくりを行うのに十分な時間がある場合にのみ、その繰り返しの最中でのページめくりが許可されます。繰り返しが非常に短い場合、Page_turn_engraver
はページめくりを不可にする可能性があります。コンテキスト プロパティ minimumRepeatLengthForPageTurn
に値を設定した場合、その値よりも長い演奏時間を持つ繰り返しに対してのみ、Page_turn_engraver
は繰り返しの最中でページめくりを許可します。
ページめくりコマンド \pageTurn
, \noPageTurn
それに \allowPageTurn
は、最上位レベル、score や最上位のマークアップの間で使用される可能性もあります。
定義済みコマンド
\pageTurn
,
\noPageTurn
,
\allowPageTurn
参照
コード断片集: Spacing
既知の問題と警告
score の中に配置する Page_turn_engraver
は 1 つだけにするべきです。複数の Page_turn_engraver
がある場合、互いに干渉し合います。
[ << スペースの問題 ] | [トップ][目次][インデックス][ ? ] | [ デフォルトを変更する >> ] | ||
[ < 最適改ページ ] | [ 上へ : 改行/改ページ ] | [ 最小改ページ > ] |
他の言語: deutsch
About automatic language selection.