Noto Sans CJK JPで改行記号やルーラーがNo.08495
nightraven さん 14/12/06 14:23
 
Noto Sans CJK JPで改行記号やルーラーが倍の幅になる


V8.42で見つけた現象ですが、V8.50β17でも発生するので、こちらで報告します。

GoogleのフリーフォントNoto Sans CJK JP(https://www.google.com/get/noto/)を
12ポ以上で設定すると、改行記号やルーラーが倍の幅で表示されてしまいます。言葉
ではちょっと分かりにくいので、スクリーンショットをFlickrにアップしておきまし
た。

Noto Sans CJK JP
https://flic.kr/p/q2vchd

メイリオ
https://flic.kr/p/qgLUFs

2台のWindows 7 SP1マシン、VMware上のWindows 8.1で発生するので、環境依存では
ないと思います。文字描画のパラメーターをいじってみましたが、特に変化ありませ
んでした。

[ ]
RE:08495 Noto Sans CJK JPで改行記号やルNo.08496
秀丸担当 さん 14/12/08 10:18
 

バグ情報ありがとうございます。

Noto Sans CJK JPを入れてみて確認することができました。
原因もわかって、次のβ版で修正させていただきます。

ルーラーの幅などは、フォントの情報のうち、フォントの平均幅
(tmAveCharWidthという情報)を使っています。
これは一般的には'x'の幅とほぼ同じ幅になっていて、プロポーショナルフォン
トであっても半角1つ分の基準として使われたりしています。
HTMLでも「<textarea cols="10"・・・」で半角10個ぶんなど、半角の基準とし
て使われたりする情報です。

本来なら半角の基準として使えるのですが、メイリオは全角も含めた平均幅を返
しているという問題がありました。
そのため約2倍になって見えたりするという問題がメイリオにあり、秀丸エディ
タでは、ずっと以前のバージョンで、メイリオだけは特別な対処をしていました。
その後、V8.30の頃に未知のフォントであっても、平均幅が全角幅以上だったら
対策するようにしたのですが、Noto Sans CJK JPではその対策が不十分でした。
12ポイント以上では誤差があって、平均幅が全角幅を下回るようで、そういう場
合でも大丈夫なように修正させていただきます。

[ ]
RE:08496 Noto Sans CJK JPで改行記号やルNo.08497
nightraven さん 14/12/08 22:16
 
細かいバグへのご対応ありがとうございます。簡単ですが、お礼まで。


[ ]
RE:08495 Noto Sans CJK JPで改行記号やルNo.08506
nightraven さん 14/12/13 10:21
 
β18で修正を確認しました。どうもありがとうございました。

[ ]