YakuHanJP と NotoSansJP サブセットをマージして ./fonts/export/NotoSansJP-Merged-YakuHanJP-Bold.otf
を作成してみました。とりあえず 1 ウェイトのみ。1 ファイルで約物半角を適応した NotoSansJP が使えます。
現在はサブセットなので 1 ファイル 700KB と軽量ですが、ユーザー入力の多様性を考えるとフルセットの方が良いかもしれません。その場合は 1 ファイル 16MB 程度を想定する必要があります。
メリットはあらかじめフォントを用意するのでユーザー入力のたびに生成する必要がないこと。デメリットは容量の大きさ。
Google フォントの API で必要なテキストを指定してフォントをダウンロード。YakuHanJP を CDN からダウンロード。2 つを node.js 上でマージさせる...つもりでしたがマージする npm ライブラリが動いていません。node@18 と node@16 で試しましたがエラーを吐いています。未完成。
実際に動いた場合のメリットは最低限の容量で住むことと不足文字の心配をしなくて済むこと。デメリットは Google フォントの API を毎回叩いても大丈夫なのか不明なのと、マージ後ファイルの検証ができないこと。
- yakuhanjp-merge : MIT
- Yaku Han JP : SIL OFL 1.1
- Noto Sans JP サブセット : SIL OFL 1.1
- Noto Sans CJK JP licensed under the SIL OFL 1.1