M+ OUTLINE FONTS グリフの合成について
グリフを正しい位置で合成するためにはアンカーポイントの設定が必要です。
CVSにアンカーポイントに対応するためのスクリプトをコミットしました。
アンカーポイントについては、fontforgeに説明があります。
http://fontforge.sourceforge.net/ja/overview.html#Anchorsアンカーポイントのデータは、
Re: 結合文字対応スクリプト (M+ OUTLINE FONTS 612) - M+ FONTS - SourceForge.JP
mplus_outline_fonts/svg.d/latin_proportional1/anchors
mplus_outline_fonts/svg.d/latin_clear1/anchors
に置いてあります。現在のデータは数文字分だけですが、JIS X 0213の字のため
のデータが含まれています。
アンカーポイントをまだ設定していないグリフはただしく合成できません。
æ̀ ɔ̀ ɔ́ ʌ̀ ʌ́ ə̀ ə́ ɚ̀ ɚ́ OK: â ĉ ê NG: b̂ d̂
anchorsファイルは次のような、グリフ名とウェイトごとのアンカーポイントの座標が並んだファイルになっています。
@lookup marklookup1 \mark @lookupflag IgnoreLigatures @script DFLT @script latn @script grek @script cyrl @markClass @Top #########|---black--|---heavy--|---bold---|--medium--|--regular-|---light--|---thin---| #########| x | y | x | y | x | y | x | y | x | y | x | y | x | y | gravecomb 500 590 500 590 500 590 500 590 500 590 500 590 500 590 acutecomb 500 590 500 590 500 590 500 590 500 590 500 590 500 590 uni0302 500 590 500 590 500 590 500 590 500 590 500 590 500 590 tildecomb 500 590 500 590 500 590 500 590 500 590 500 590 500 590 uni0304 500 590 500 590 500 590 500 590 500 590 500 590 500 590 uni0306 500 590 500 590 500 590 500 590 500 590 500 590 500 590
FontForgeからアンカーポイントを確認できます。