セレクトボックスに画像を挿入する

やさごろもです。

最近、ずっと作りたかった「楽譜演奏時間計算ツール」のページをようやく作りました。
テンポ、拍子、小節数を入力したら、演奏時間(◯分◯秒)が自動計算されるページです。どんな変拍子入れてもちゃんと計算されるはず!
ページはHTMLとjavascriptで作りました。

テンポのセレクトボックスに音符の画像を入れたくて方法を探してたら、jQueryのプラグインをつかったらいけました。

その前にちょっと音楽の話をします。
別に聞かなくていい人ははこちら(音楽の話をスキップ)

テンポ、拍子について

テンポ(速度記号)

テンポとは、1分間に何拍とるかを表しています。例として、表記は「四分音符= 60」「テンポ60」「60BPM(Beats Per Minute)」などで表されます。いずれも1分間に60拍をとるので、1拍1秒のスピードです。
テンポ120の場合は、その倍速なので、2拍1秒のスピードになります。

楽譜は4分の4拍子で書かれている事が多いので、テンポは「四分音符(四分音符)= ◯◯」といった表記が多いと思いますが、拍子記号によっては「八分音符(八分音符)= ◯◯」とか「付点四分音符(付点四分音符)= ◯◯」のような表記をすることもあります。

拍子(拍子記号)

拍子は楽譜の一番はじめに分数で書かれています。例えば「4分の4拍子」は、「1小節に四分音符(分母)が4つ(分子)」という見方をします。

「8分の6拍子」は「1小節に八分音符が6こ」ですが、この曲を6拍子で指揮するなら1拍を八分音符とするので「八分音符=◯◯」で表記する方が数えやすいし、3拍子で指揮するなら「四分音符(八分音符2つ分の長さ)= ◯◯」、2拍子なら「付点四分音符(八分音符3つ分の長さ)= ◯◯」の方が数えやすい場合があります。

演奏時間の計算方法

拍子記号「4分の4拍子」、速度記号「四分音符= 60」、小節数「10」の場合だったら、頭ですぐ4拍子 × 1秒 × 10 = 40秒って計算できるんですけどね。
公式にしてくださっている方がいました。

演奏時間は、以下の式により求めることができる。

 演奏時間(秒)=(B*C*60)/(D)

 ここで、各パラメータは以下の通りである。
 拍子記号:A分のB拍子
    C:小節数
    D:A分音符1個分のメトロノームの目盛り

引用元:演奏時間の計算方法、演奏時間からメトロノームの目盛りの計算方法

式を見ると、拍子記号の分母と速度記号の音符を揃えてから計算する必要がありますね。
楽譜演奏時間計算ツールは、「四分音符=1.0」として、速度記号の音符を変換して拍子記号の分母に揃える計算ができるようにしました。

参考 演奏時間の計算方法、演奏時間からメトロノームの目盛りの計算方法ヴァイオリンレッスン日記帳

セレクトボックスに画像を挿入

わたしがこのページを作るときにこだわっていたのが、絶対テンポを選択するとき「四分音符=120」って文字で出るより「四分音符= 120」って画像で見ることができた方が直感的にわかりやすいしそうしたい、と思っていました。

HTMLでは、セレクトボックスに画像を表示させることはできないのですが、jQueryのプラグイン「ms-Dropdown」を使用することで実現できました。

作ったページはこちらです。

楽譜演奏時間計算ツール

繰り返しを考えると、楽譜の小節数を数えるのは面倒くさい気もしますが…ぜひ使ってみてください!

ではまた。