バックグラウンド
次の fontforge スクリプトを使用して、Google Noto Sans JPフォントを からに変換しようとしています。.otf
.ttf
#!/usr/bin/env fontforge
Open($1)
CIDFlatten()
Generate($1:r + ".ttf")
Close()
を呼び出すOpen
と.otf
、不足しているグリフがたくさんあるというエラーが大量に表示されます。
No glyph with unicode U+07d22 in font
No glyph with unicode U+07d2f in font
No glyph with unicode U+07da0 in font
...
私のスクリプトは を に変換し.otf
ます.ttf
が、確かに、フォントをロードすると、これらの文字はレンダリングされません (次のようになります: [X]
)。
そこで、ギャップを埋めて、欠落しているスロットに同一のグリフをコピーしたいと思います。
問題
そこで、次のスクリプトを実行して、欠落しているグリフの 1つ ( U+7d22 ) を同一のもの ( U+f96a )に置き換えてみます。
#!/usr/bin/env fontforge
Open($1)
CIDFlatten()
Select(0uf96a)
Copy()
Select(0u7d22)
Paste()
SelectNone()
Generate($1:r + ".ttf")
Close()
しかし、fontforge は存在しない文字 U+7d22 の選択に失敗します:
Select: Character not found: U+7D22
グリフを持たないコードポイントにグリフをコピーする方法を知っている人はいますか?
言い換えれば、このフォントのギャップを埋める方法を知っている人はいますか?