4.5.1 水平方向のスペースの概要

スペース エンジンは異なる演奏時間を異なる長さの可変距離 (‘スプリング’) に翻訳します。長い演奏時間はより多くのスペースをとり、短い演奏時間はより少ないスペースをとります。最短の演奏時間は固定量のスペース (これは SpacingSpanner オブジェクトの中にある shortest-duration-space によって制御されます) をとります。演奏時間が長くなるほど、より多くのスペースをとります: 演奏時間が倍になると、 spacing-increment 分のスペースがその音符に付け加えられます。

例えば、以下の楽曲には多くの 2 分音符、4 分音符、それに 8 分音符が含まれています。 8 分音符の後には符頭幅 (NHW) 1 つ分が挿入されます。4 分音符の後には 2 NHW が挿入され、2 分音符の後には 3 NHW が挿入されます。

\relative c' {
  c2 c4. c8
  c4. c8 c4. c8
  c8 c c4 c c
}

[image of music]

通常、spacing-increment は 1.2 譜スペースに設定されています。これは符頭の幅とだいたい同じです。さらに、shortest-duration-space は 2.0 に設定されています。つまり、最短の音符は 2.4 譜スペース (spacing-increment の 2 倍) の水平方向のスペースをとります。このスペースはシンボルの左端からカウントされます。そのため、最短の音符の後には一般に 1 NHW のスペースが挿入されます。

上記の手順に正確に従った場合、8 分音符や 16 分音符を含む楽譜に 32 分音符を 1 つ付け加えると、楽譜全体が大きく引き伸ばされます。最短の音符はもはや 16 分音符ではなく、32 分音符であり、それぞれの 16 分音符に 1 NHW が付け加えられます。このことを防ぐため、スペースをとるための最短の演奏時間を、その楽譜の中にある最短の音符ではなく、最も頻繁に出現する音符とします。

最も共通する最短演奏時間は以下のように決定されます: 各小節において、最短の演奏時間が決定されます。スペースの基本として、最も共通する最短演奏時間が選択されます。条件として、この最短演奏時間は常に 8 分音符以上の長さになります。

この演奏時間はカスタマイズすることもできます。SpacingSpanner の中にある common-shortest-duration を設定した場合、スペースのための基本演奏時間が設定されれます。この基本演奏時間の最大値 (通常、8 分音符) は、base-shortest-duration によって設定されます。

共通の最短音符よりも短い音符の後には、その音符の演奏時間と共通の最短音符の演奏時間の比を反映したスペースが付けられます。そのため、上記の例に 16 分音符を数個付け加えた場合、16 分音符の後には NHW の半分の幅のスペースが付けられます:

\relative { c''2 c4. c8 | c4. c16[ c] c4. c8 | c8 c c4 c c }

[image of music]

Essay on automated music engraving で説明したように、符幹の向きはスペーシングに影響し (Optical spacing を参照してください)、またそれは (Voice コンテキスト毎に生成される) NoteSpacing オブジェクトの stem-spacing-correction プロパティで調整することができます。

StaffSpacing オブジェクト (Staff コンテキストで生成されます) は、符幹や小節線のスペーシングと同じプロパティを持ちます。

次の例ではそのことを示しています。前者はデフォルトの設定で、後者は修正を誇張しています:

[image of music]

プロポーショナル ノーテーション (proportional notation) がサポートされます。プロポーショナル ノーテーション を参照してください。

参照

Essay on automated music engraving: Optical spacing

コード断片集: Spacing

内部リファレンス: SpacingSpanner, NoteSpacing, StaffSpacing, NonMusicalPaperColumn

既知の問題と警告

スペースを手動で上書きするための、手軽な仕組みはありません。余分なスペースを楽譜に挿入するために、以下の手段があります – 必要に応じて、パディングの値を調整しています。

 \override Score.NonMusicalPaperColumn.padding = #10

スペースを減らすための手段はありません。


LilyPond 記譜法リファレンス v2.25.22 (development-branch).