サブセットフォントを作成する方法

最初はサブセットフォントメーカー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 にはサブセットフォントの保存場所(ファイル名)を指定する。ここも ~/ は通らないのでフルパスで記述する。

  • ブックマーク
  • Feedly

この記事を書いた人

キタジマタカシ

長崎在住、フリーランスのWordPress テーマ / プラグインデベロッパー。 多数のプロダクトをオープンソースで開発・公開しています。現在は WordPress 有料テーマ Snow Monkey を開発・販売しています。