notes文でのテキストの表示は音符を基準とした位置への歌詞やコード名の表示を主な目的としていますが、text文では、さらに自由度の高いテキスト表示が可能となります。
書式書式1 text :{duration},(\.{vpos},)*(\.font={font},)*{text}(,{text})*{bar} 書式2 text (\+\+,) (\.{vpos},)(\.font={font},)*:{duration},{text}(,{text})*{bar} {vpos} 10進整数 {duration} {duration} [w|h|q|1|2|4|8|(16)|(32)] {text} テキスト {bar} .|({barText}) {barText} 縦線位置に表示するテキスト {font} face.size.style形式のフォント名
{vpos}は楽譜の少し上を起点としたテキストラインの垂直方向の位置を意味し、省略時はゼロがセットされます。
{duration}の意味は、音符の長さで用いられる{duration}の意味と同じです。基本は音符の長さと同じ設定とします。
{text}は表示する文字を意味します。通常は複数の文字をカンマで区切って指定します。カンマで区切られたそれぞれのテキストは{duration}で設定したそれぞれの拍に表示されます。
書式1はデフォルトのテキストラインにテキストを表示します。複数行のテキストを表示する場合は、書式2を使って追加したテキストラインにテキストを表示します。
次のサンプルはそれぞれの音符に1拍、2拍..とテキストを表示する例です。
上の例ではテキストの上側が少し欠けているかも知れません。その解決方法の一つは、楽譜(tabstave文)の前にスペースを確保することです。次の例では楽譜の上にspace値10のスペースを確保しています。
上記の方法の他に、text文にはもっと上手い方法があります。{vpos}パラメータでテキストラインの垂直位置を指定する方法です。vpos値を1に設定すると文字の欠けはなくなりますが、この場合はvpos値2が違和感のない妥当な設定となります。
この方法では、楽譜中にテキストを配置することもできます。上のコードボックスでvpos値の2を5に書き換えてみてください。テキストは五線譜の第1線と第2線の間付近に表示されるはずです。vpos値を10に設定すると楽譜の下に表示されますが、上の例ではVexFlowのロゴに隠れて良く見えません。この問題は楽譜の下の余白を確保することで解決することができます。
下の例ではoptions space文でspace値8の余白を確保しています。
VexFlowのロゴが下に移動したことで楽譜下側のテキストが完全に読めるようになりました。
書式2を使ってテキストラインを追加すれば複数行のテキストを表示することができます。
次の例では、書式1でデフォルトのテキストラインに音名を表示し、書式2で追加した二つのテキストラインにタイトルと拍数を表示しています。
書式2を使ってテキストラインを追加すれば複数行のテキストを表示することができます。
次の例では、書式1でデフォルトのテキストラインに音名を表示し、書式2で追加した二つのテキストラインにタイトルと拍数を表示しています。
楽譜に縦線がある場合は、テキストのその位置に',|'を追加して楽譜上の縦線と同期させる必要があります。'|'の直後にはその楽譜の縦線位置に表示するテキストを定義することができます。
次の小節のテキストは次の行にtextキーワードから書きます。この場合、{duration}パラメータや{vpos}パラメータを省略すると、前の小節の設定が継承されます。
次の例では、書式1でデフォルトのテキストラインに音名を表示し、書式2で追加した二つのテキストラインにタイトルと拍数を表示しています。{vpos}パラメータは小節ごとに新しい値を設定することができます。
次の例ではデフォルトのテキストラインに音名を表示していますが、2小節目は表示位置を変えています。追加のテキストラインでは縦線の位置に'2小節目'と表示しています。
text文では音楽記号を表示することもできます。音楽記号はtext文のカンマで区切られた一つのテキスト領域を占有しますので、そのフィールド中では他のテキストを表示することは出来ません。現在のドキュメントでは、一部の音楽記号しか紹介されていませんが、ソースコードを確認したところ次のような音楽記号が使えるようです。
名前 | 説明 |
---|---|
#segno | セーニョ |
#turn | ターン |
#turn_inverted | 逆ターン |
#coda | コーダ |
#tr | トリル |
#f | フォルテ |
#p | ピアノ |
#m | m |
#s | s |
#z | z |
#pedal_open | ペダルオープン(ペダル) |
#pedal_close | ペダルクローズ(センツァ) |
#caesura_straight | - |
#caesura_curved | - |
#breath | 名前はブレスですが、一般的なブレス記号とは絵柄が違います |
#tick | MIDIの時間単位tick? |
#mordent | モデラート |
#mordent_upper | - |
#mordent_lower | - |
現時点(2017-01-16)では、まだ不足している感じもしますが、今後のバージョンアップで拡充されることを期待しています。
face.size.style形式のフォント名を使ってフォントを指定することができます。フォントは{vpos}オプションの後で指定します。