fontforgeを使ってMiguフォントの濁点を巨大化してみたときのメモ
M+(1|2)(P|VM)+IPAG circleやその新バージョンMiguフォント(http://mix-mplus-ipa.sourceforge.jp/migu/)の特徴として、半濁点(゜)が大きめになっているという点がありますよね。
M+ と IPAフォントの合成フォント(旧バージョン)
M+とIPAの合成フォント(新バージョン)
M+ と IPAフォントの合成フォント配布 - きりんシステム ダイアリー(2006-03-15)(半濁点巨大化の手順)
で、それを真似?してfontforgeでMiguフォントの濁点(゙)の巨大化も試してみたのでその手順をメモしておく。かなり荒削りなメモ。
加工につかったフォントはMigu 1M。
Miguフォント : M+とIPAの合成フォント
1.fontforgeでMigu 1Mを開いて仮名グリフを探す
"表示>移動"(またはCtrl+Shift+>)からHiraganaと打つと楽
2.加工する前にいろいろ計測する
拡大後に元の文字と太さを一緒にするため。
平仮名の「が」でやってみる。↓の頂点1と頂点2の座標を、マウスで選択して右クリック>"情報を得る…"で調べる。ここでは1(643, 741), 2(703, 773)となった。
そこから2点間のx軸、y軸それぞれの方向の距離を求めておく。ここではx軸(マジェンタ)方向が|643-703|=60、y軸(シアン)方向が|741-773|=32となった。(|x|はxの絶対値を表す)
3.いよいよ濁点を拡大する
濁点を構成する制御点をすべて選択した状態で"エレメント>変形>変形"(又はCtrl+\)、そこから"一様に拡大縮小"、ここでは拡大率を130%に。
4.ここでまたしても計算
先ほどと同様に拡大後の頂点1, 2の座標を調べる。1(598.45, 754.5),2(676.45, 796.1)となった。
ここで1, 2間の直線距離は最初より30%分伸びてるはずなので濁点の部分だけ太さが130%になってる。この太さを最初の太さに戻したい。そのため、以下の計算をする。
|598.45-(676.45-60)|=18 |754.5-(796.1-32)|=9.6
一般化すると、最初の頂点1, 2の座標を(x1, y1)、(x2, y2)、拡大後の頂点1, 2の座標を(x1', y1')、(x2', y2')、絶対値を|x|で表すと
|x1'-(x2'-|x1-x2|)| |y1'-(y2'-|y1-y1|)|
この二つを求める。上二つをdx、dyとおく。この場合dx=18、dy=9.6である。
x1 < x2、y1 < y2、x1' < x2'、y1' < y2'なのでうまく字を入れ替えれば絶対値が外れるかもしれないけど符号間違えが面倒なので絶対値のままで。
5.太さを合わせる
↓の4点を選択した状態で先と同じように"エレメント>変形>変形"(又はCtrl+\)、今度は"移動"を選んでX、Yにはさっきのdx(=18)、dy(=9.6)をそれぞれ入れて実行。これで太さが揃う(揃ってるはず)。
6.必要と有らば濁点の位置を調整する
濁点全体を選択した状態でマウスなどで移動させる
7.これを残りの文字にもやる
一部「ぼ」「グ」「ゴ」「ダ」「ズ」「ヷ(ワ゛)」「ヹ(ヱ゛)」「ヺ(ヲ゛)」の文字が、濁点と他の画が合体していて上記の手が使えないので、その辺りの文字は手作業での調節も入れてそれっぽく仕上げる。