[ << スペースの問題 ] | [Top][Contents][Index] | [ デフォルトを変更する >> ] |
[ < 改ページ ] | [ Up : 改ページ ] | [ 最適改ページ > ] |
手動改ページ
デフォルトの改ページは、\pageBreak
や \noPageBreak
を挿入することによって上書きすることができます。これらのコマンドは \break
と \noBreak
に似ています。
これらのコマンドは小節線のところに挿入すべきであり、その小節線での改ページを強制/禁止します。当然のことですが、\pageBreak
は強制的に改行も行います。
\pageBreak
コマンドと \noPageBreak
コマンドは最上位レベルに挿入することができ、score や最上位レベルのマークアップの間に挿入することができます。
楽譜の中で、\autoPageBreaksOff
と \autoPageBreaksOn
の間にある音楽は、自動改ページが抑制されます。手動改ページは、これらのコマンドに影響されません。
ragged-right
や ragged-last
と類似で、垂直方向のスペースに対して同じ効果を持つ設定があります。ragged-bottom
が #t
にセットされている場合、システムはページの垂直方向全体には広がりません。ragged-last-bottom
が #t
にセットされている場合
(これがデフォルトです)、最後のページ (あるいは各 \bookpart
の最後のページ) の下部に空きスペースが挿入することが許可されます。固定された垂直方向の \paper
スペース変数 を参照してください。
改ページは page-breaking
関数によって算出されます。LilyPond は改ページを算出するためにいくつかのアルゴリズムを提供します:
ly:optimal-breaking
, ly:page-turn-breaking
, それに
ly:minimal-breaking
などです。デフォルトは ly:optimal-breaking
ですが、\paper
ブロックの中で変更することができます:
\paper { page-breaking = #ly:page-turn-breaking }
1 つのブックが多くの楽譜とページを持つ場合、改ページを処理するのに多くの処理時間とメモリが必要になり、改ページの問題を解決することが困難になる可能性があります。改ページ処理を簡単にするために、\bookpart
ブロックを用いてブックをいくつかのパートに分割します:
改ページはパートごとに別々に処理されます。異なるブック パートには、異なる改ページ関数を使用することもできます。
\bookpart { \header { subtitle = "Preface" } \paper { %% ほとんどテキストしか保持していないパートでは %% ly:minimal-breaking が適しています page-breaking = #ly:minimal-breaking } \markup { … } … } \bookpart { %% このパートは音楽を保持しているので、デフォルトの %% ly:optimal-breaking を使用します \header { subtitle = "First movement" } \score { … } … }
定義済みコマンド
\pageBreak
,
\noPageBreak
,
\autoPageBreaksOn
,
\autoPageBreaksOff
参照
記譜法リファレンス:
改行のための \paper
変数
コード断片集: Spacing
既知の問題と警告
\once
接頭辞は、\autoPageBreaksOn
や \autoPageBreaksOff
には効果がありません。自動改ページがオフになっている時に、改ページを(一時的に) 許可するためにオンにする場合、オフにする前にその後何小節かはオンになっている必要があります (具体的な小節数は楽譜に依存します)。そうしなければ、改ページの機会が失われてしまいます。