目的

源ノ明朝をウェブフォントとして利用したいけどハイパー重いので、ひらがな・カタカナ・よく使う英数記号・常用漢字だけを抜き取って書き出したい。

下準備

あらかじめPythonがインストールされている環境で(MacだとHomebrewで入れるのが良さそう)、fonttools と brotli をインストール。

> pip install fonttools brotli

作業

以下の例は源ノ明朝のサブセットを作る流れです。

  1. 最新フォントデータをダウンロードする
    https://github.com/adobe-fonts/source-han-serif/tree/release/OTF/Japanese
  2. 収録する文字を用意する。例) subset_joyo.txt
  3. 各ファイルを適当なディレクトリにまとめて、pyftsubsetに投下。
    (以下は SourceHanSerif-Medium を SHS-M-joyo として書き出す例)

    > pyftsubset ./SourceHanSerif-Medium.otf --text-file=./subset_joyo.txt --layout-features='*' --flavor=woff --output-file=./SHS-M-joyo.woff
    > pyftsubset ./SourceHanSerif-Medium.otf --text-file=./subset_joyo.txt --layout-features='*' --flavor=woff2 --output-file=./SHS-M-joyo.woff2

結果

概ね現実的なサイズまで小さくなりました。

  • woff : 1.7MB
  • woff2 : 1.4MB

この記事の続きを見る »