最初はサブセットフォントメーカーと WOFF コンバーターを使ってサブセットフォントを作成しました。どちらもソフトをインストールして、元のフォントファイルをドラッグすれば良いだけだったので楽勝〜と思ってたんだけど、諸々のフォント情報も削除してしまうために縦書き表示が一部おかしくなってしまうということがわかったので、python を使ってコマンドラインから作成することにしました。
基本的には下記の記事の通りなんだけども、僕の環境ではそのままなぞっただけだとちゃんと動かなかったのでメモ。
Python のインストール
$ brew update
$ brew install python
$ which python3
/usr/local/bin/python3
パスを通す
$ vi ~/.zshrc
export PATH="$PATH:$HOME/Library/Python/3.9"
pip のアップデート
$ pip install --upgrade pip
fontTools のインストール
$ pip install fonttools
$ which fonttools
/Users/xxxxx/Library/Python/3.9/bin/fonttools
brotli のインストール
$ pip install brotli
$ which brotli
brotli not found ← よくわからんけど not found になる。でもちゃんと動く
サブセットフォントの作成
$ pyftsubset ~/Desktop/Noto_Serif_JP/NotoSerifJP-SemiBold.otf --text-file="/Users/xxxxx/Desktop/subset.txt" --layout-features="*" --flavor=woff2 --output-file=/Users/xxxxx/Desktop/subset/NotoSerifJP-SemiBold.woff2
--text-file
には、サブセットに含める文字を記述したテキストファイルのパスを指定する。なぜか ~/
は通らないのでフルパスで指定する。--output-file
にはサブセットフォントの保存場所(ファイル名)を指定する。ここも ~/
は通らないのでフルパスで記述する。