hwid

文字幅

[2] 文字幅は、 全角文字半角文字です。

[3] 文字のレンダリングの問題だったり、 文字コード表現の問題だったり、 その他何だかよくわからない問題だったりします。

目次

  1. フォント機能
    1. fwid (OpenType)
  2. 関連
  3. メモ

フォント機能#

fwid (OpenType)#

[8] OpenTypeフォント機能 fwid は、 Full Widths (全幅) と説明されています。 >>7


[9] fwid は、グリフ集合中にあってその他の (width) に設定されているグリフを置換して、 全 (通常は em) 幅 (full (usually em) width) に設定されたグリフとします。 >>7

[10] CJKVフォントでは、 「lower ASCII」 ラテン文字や各種記号 (symbol) を含むかもしれません。 >>7

[12] ちょっと何言ってるのかわかりませんが、世にいう半角ASCII文字のことでしょうか。

[11] 欧州のフォント (European font) では、 可変幅 (proportionally-spaced) グリフ固定幅 (fixed-width) グリフ (通常 (generally) は 0.6 em 幅に設定) に置換します。 >>7

[13] fullwidth というのは普通は東洋全角文字 (1em 幅で表示) を指す用語ですが、 ここでは欧州の 0.6em 幅の固定幅の表示にも使えるとされています。 任意幅 → 固定幅、という点こそ共通しているものの、 両者はまったくの別物です。同時実装不能です。 東洋フォントと欧州フォントは別製品なので交わることはないという世界観なのでしょうか。 それとも言語系などで区別しろということなのでしょうか。

[14] AJ1 はじめ東洋のフォントでは fwid は実際に半角から全角への置換などで一般的に使われています。 欧州のフォントではどうなのでしょう。


[15] GSUB lookup 1グリフ前進幅 (full advance width) のものに置換することもできますし、 GPOS lookup 1xPlacementxAdvance で proportional グリフに全角 metrics を指定することもできます。 >>7 こうした実装方法が推奨 (recommended) されている >>7 ものの、その他の lookup 型が禁止されているわけではありません。

[16] 既定の状態では無効とするべき (should) で、 文書マーク付け利用者の制御やその他の応用の基準に応じてグリフ連なりに適用できるという形に実装できます。 >>7

[17] 他の水平グリフ幅機能 (chws, halt, hwid, palt, pkna, pwid, qwid, twid, pnum, tnum) とは互いに排他的であり、 fwid が適用されるときはこれらは無効とするべきです (should) >>7

[18] fwid が適用されるときは apknkern は無効とするべき (should) です。 >>7

[19] こうした排他的適用に関する推奨事項が誰に対するものなのか、フォント開発者なのか (仕様上難しそう)、 応用の実装者なのか、フォント応用利用者なのか、よくわかりません。

関連#

[6] 関連: 幅写像, AA

メモ#