UNITY* TextMeshPro 特集 * 第 4 部

* タイポグラフィによる美しいテキストレイアウト *

GlyphAdjustmentTable

設定テーブルへ直接カーニング値をセット

《 FontAsset ▷ Inspector ▷ GlyphAdjustmentTable 》



FontAssetCreator でカーニング情報は読み取れないことがわかった。

ダメだなぁ...

なので今回は直接カーニング値(ツメ値)を入力していく。

基本漢字はカーニング調整しないのでそれ以外適当にチョイス。 





作成した FontAsset を選択して、インスペクターを表示。

一番下の GlyphAdjustmentTable。

日本語では図形(グリフ)調整(アジャストメント)テーブル。かな。





GlyphAdjustmentTable


GlyphAdjustmentTable をクリックするとコンソールが出る。



2文字入力できる。




対象の文字を入力して、下の AX にカーニング値入力。

その下の AddNewKerningPair をクリックして登録。

コード順にどんどん積み重なっていく。

とりあえず適当に全部 -8 で。 




インスペクタのカーニングにチェックを入れる。




結果。



上がカーニングチェックを入れたもの。

やっとここで TextMeshPro のカーニングの恩恵を味わう。




ん?




んん...?





黄色箇所の文字、カーニングが反映されていない。



あと、青色箇所「1」のカーニングが反映されているものとそうでないのもがある... 





うーん...



時間をかけて調べてみた。 

まず黄色箇所。


・「ぁ」「っ」など小文字は全滅

・ていうかそれ以外も結構ある

・カーニング値が反映される、されない理由は結局不明  


青色箇所。


・その文字があるとその文字列のテキストのカーニングが反映されない 

・文字の組み合わせでカーニングの反映方法が変わる

・欧文、日本語、フォーマットなど関係なく同じ現象が起きる。


文字というよりコードの相性...? 




結論: 

TextMeshPro のカーニング設定は、

宙ぶらりん 




使い物にならない。 

いかんせん、UNITY のアセットはこういう不安定要素が多い。 

アプリバージョン替えると使えなくなるとか。 

でも、 




がんばる 




もうちょっと。

次回第 5 部、別の方法でカーニングを試す。         


▷ * 第 5 部 * へ




0コメント

  • 1000 / 1000