2017-07-06 10 views
1

特定の言語またはフォントの基本最小フォントサイズを決める方法はありますか?読みやすい最小フォントサイズと国際化

ブラウザのフォントとグリフのサイズが異なる言語で知覚的に等しいかどうかをプログラマティックに伝える方法を探してきましたか?たとえば、タイ語のフォントはラテン語や日本語に比べて痛いほど小さいことが分かりました。おそらく、タイの巨大なアセンダがすべてのグリフのバウンディングボックスに収まるようにすべてを強制するからです。そして、私はと多くの他の言語のがラテン語フォントからの "最小可読サイズ"の値が非常に異なっていると思います。

ここでは、問題の例を示しています。まず、わかりやすい英文テキスト(青いボタンの中に)があります。その下には同じタイ語のテキストがありますが、これは同じスタイリングを持っていても読みにくいものです。

Thai question with English answers English question with Thai answers

これは、タイ語とラテン語フォントを示しています。タイ語とラテン語のテキストにfont-sizeが適用されている場合、タイ語は知覚的に「小さすぎます」(これは小さいフォントサイズではより明白です)。私は形や要素の寸法を見つけるために、CSSオブジェクトモデルのelement.getBoundingClientRect()を使用することができますが、私は、フォント内で測定する方法を筆者は知りません

Thai and Latin with equal and adjusted font sizes

:15%、それを増やすと、実際のタイのプレゼンテーションに近い何かを与えます。現在、CanvasRenderingContext2D.measureText()にはwidthの情報しかありません。

ascendersとdescendersをおそらく割り引くか、または提案されたベースのフォントサイズを与える "基本フォントサイズ"の種類を決定するための(ブラウザ内またはそうでない)メソッド/ APIはありますか?

答えて

2

私の意見では、それはi18nの問題ではなく、a11y(それはアクセシビリティです)です。あなたは、あなたがフォントをあまりにも小さく設定すると、(私を含む)一部の人がそれを読むことができないことが分かります。
もちろん、繁体字中国語のように、12ポイントが絶対最小値の場合があります。そうしなければ、一部のストロークがはっきりと見えなくなるからです。しかし、実際のUIテストがなくても、すべての言語に正確な数値を与えるのは難しいです。

+0

ありがとうございました。それは実際に問題を見るより良い方法です。私はその質問にタグを付け直しました。私にとっては、問題は「文字セット間でのデザインのバランス」の1つですが、私が使用していたフォントサイズがタイを使用しているときには私の愚かな目には判りませんでした。これは確かに最初からアクセシビリティ上の問題でした。しかし、私は他の文字セットも同じ問題を抱えていると思われるが、それが何であるか分からないので、まだ国際化の問題である。そして私はまだこの問題を解決するためのリソースを探しています。 – Andrew