2018/06/17

Mac に fontforge を直接入れずに Docker を使って Ricty を作成する

私は普段 Terminal で作業する時、フォントは Ricty を使っています。
Ricty は Inconsolata と Migu 1M の合成フォントで、生成スクリプトが公開されています。
合成には fontforge を使うのですが、 brew で入れると結構な数の依存パッケージが入ります。
fontforge  は普段使いしていないので、おそらく Ricty の生成以外に使わない。
なので Mac に直接 fontforge を入れず、コンテナに入れて合成してみます。


環境

  • OS: macOS Sierra 10.12.6
  • Docker for mac: 18.03.1-ce, build 9ee9f40
    • Distribution: CentOS Linux release 7.4.1708 (Core)
    • fontforge: 20120731
  • Ricty: 4.1.1
    • Inconsolata: v2.001
    • Migu 1M: 20150712


mac 側の事前準備(ダウンロード)

事前にダウンロードが必要なのはフォント2つ。
具体的には Inconsolata と Migu 1M の .ttf ファイルです。
加えて、Ricty の生成スクリプト ricty_generator.sh もダウンロードしておきます。
Migu 1M は unzip して、とりあえず全ファイルを ~/Downloads へ mv。

最終的な ~/Downloads はこんな感じになりました。
$ ls Downloads
Inconsolata-Bold.ttf  Inconsolata-Regular.ttf  ipag00303  migu-1m-bold.ttf  migu-1m-regular.ttf  migu-README.txt  mplus-TESTFLIGHT-060  ricty_generator.sh


Docker に ~/Downloads を mount して合成

さて、合成に必要なファイル群は ~/Downloads に集まりました。
これを mount したコンテナを立ち上げて合成します。

具体的なコマンドはこんな感じ。run に渡す用のスクリプトを書いた方がスマートかも。
  • $ docker run -v ~/Downloads/:/root/fonts -it centos:7
    • # yum install -y fontforge
    • # cd /root/fonts
    • # chmod u+x ricty_generator.sh
    • # ./ricty_generator.sh -n 4.1.1 Inconsolata-{Regular,Bold}.ttf migu-1m-{regular,bold}.ttf
生成されたフォントにバージョン番号を付けておきたいので、 "-n 4.1.1" オプションを指定しておきます。
実行した結果、~/Downloads はこんな感じになりました。
$ ls ~/Downloads
Inconsolata-Bold.ttf Inconsolata-Regular.ttf Ricty4.1.1-Bold.ttf Ricty4.1.1-BoldOblique.ttf
Ricty4.1.1-Oblique.ttf Ricty4.1.1-Regular.ttf Ricty4.1.1Discord-Bold.ttf
Ricty4.1.1Discord-BoldOblique.ttf Ricty4.1.1Discord-Oblique.ttf Ricty4.1.1Discord-Regular.ttf
ipag00303 migu-1m-bold.ttf migu-1m-regular.ttf migu-README.txt mplus-TESTFLIGHT-060
ricty_generator.sh
きちんと生成されていますね。良し良し。

0 件のコメント:

コメントを投稿