らんだむな記憶

blogというものを体験してみようか!的なー

小さいフォント

手元にあるフォントから小さなフォント... というかなんちゃってサブセットを作りましょう的な。速度的には大して速くないので、実験用。
fontforgeとかを使って、フォントをufo形式にして、以下のような感じでドンドン。

#! /usr/bin/env python
# -*- coding: utf-8 -*-

import sys
from robofab.world import *

miniset = [ ".notdef", "space", "a", "b", "c", "d", "e" ]

f = OpenFont(sys.argv[1])

gnames = [g.name for g in f]
for gn in gnames:
    if not gn in miniset:
        f.removeGlyph(gn)

libkeys = [k for k in f.lib.keys()]
for k in libkeys:
    if k != "public.glyphOrder":
        del f.lib[k]
f.lib["public.glyphOrder"] = [gn for gn in f.lib["public.glyphOrder"] if gn in miniset]
f.save("shrinked.ufo")