観え方(グリフ)が同じでも文字列中のコードが同じとは限らない & Variation Selector が曲者
(もちろん別の意味で使われているが VS と言っても Variation Selector だったり Variation Sequence だったり)
- 文字列中のコードが同じでも観え方(グリフ)が同じとは限らない
- 観え方(グリフ)が同じでも文字列中のコードが同じとは限らない
※ここで言っている「観え方」とは glyph index (FT_Face_GetCharVariantIndex や FT_Get_Char_Index の戻り値から render 後の字形まで) のことを指す (同一ファイル内の glyph index であっても対応するコードが複数存在する場合がある)
- 異体字とは前者(1)だと思っていたが後者(2)と前者(1)どちらも存在する
つまりフォントの選択や表示するソフトウェアの選択が全て正しくても逆変換が元の文字と一致するとは限らないということ(いわゆるunicode自身の正規化等とは無関係)
(IVS は対応出来た SVS は多分まだ)
- OpenCV 用
- console (test) 用
異体字「祇󠄀(u7947 ue0100) 祇󠄁(u7947 ue0101)」
異体字 | unicode | utf-16 (BE) | 実際の表示 |
---|---|---|---|
祇󠄀 | u7947 + ue0100 | 79 47 db 40 dd 00 | 祇󠄀 (選択フォントによっては祇󠄁) |
祇󠄁 | u7947 + ue0101 | 79 47 db 40 dd 01 | 祇󠄁 (選択フォントによっては祇󠄀) |
祇 | u7947 | 79 47 | 祇󠄁 (選択フォントによっては祇󠄀) |
別の字「祗(u7957)」 別の字「衹(u8879)」 等の表示について
別の字 | unicode | utf-16 (BE) | 実際の表示 |
---|---|---|---|
祗 | u7957 | 79 57 | 祗 |
別の字 | unicode | utf-16 (BE) | 実際の表示 |
---|---|---|---|
衹 | u8879 | 88 79 | 衹 (選択フォントによっては豆腐) |
テストしたフォント
-
IPAex IPA font https://moji.or.jp/ipafont/
ipaexm.ttf
ipaexg.ttf -
Migu font https://mix-mplus-ipa.osdn.jp/migu/
migu-1m-regular.ttf
migmix-1m-regular.ttf
バージョンによって結果が変わります
特に JIS2004漢字字形 https://mix-mplus-ipa.osdn.jp/migu/#jis2004 -
MS 標準
msgothic.ttc